/* PBM Category Filter - minimal, theme-friendly. Drawer rules are added inline from the settings breakpoint. */
.pcf-layout{--pcf-accent:var(--wc-primary,#0a58ca);--pcf-border:#e2e4e7;--pcf-muted:#6b7280;display:grid;grid-template-columns:minmax(220px,260px) minmax(0,1fr);gap:28px;align-items:start;margin:0 0 24px}
.pcf-layout.pcf-manual{display:block}
.pcf-main{min-width:0;transition:opacity .15s}
.pcf-main.pcf-loading{opacity:.45;pointer-events:none}
.pcf-sidebar{font-size:.95em}
.pcf-form{margin:0}
.pcf-group{border:0;border-top:1px solid var(--pcf-border);margin:0;padding:14px 0}
.pcf-group:first-child{border-top:0;padding-top:0}
.pcf-group legend{font-weight:600;padding:0 0 8px;float:left;width:100%}
.pcf-group legend+*{clear:both}
.pcf-tree,.pcf-options{list-style:none;margin:0;padding:0}
.pcf-tree .pcf-tree{padding-left:6px}
.pcf-node{position:relative;margin:0;padding:2px 0 2px 22px}
.pcf-row{display:flex;align-items:center;gap:8px;cursor:pointer;min-height:28px}
.pcf-row input{margin:0;flex:none}
.pcf-node>details>summary{position:absolute;left:0;top:3px;width:22px;height:24px;list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:center}
.pcf-node>details>summary::-webkit-details-marker{display:none}
.pcf-node>details>summary::before{content:"\25B8";color:var(--pcf-muted);transition:transform .15s}
.pcf-node>details[open]>summary::before{transform:rotate(90deg)}
.pcf-count{color:var(--pcf-muted);font-size:.9em}
.pcf-options li{margin:0;padding:3px 0}
.pcf-options label{display:flex;align-items:center;gap:8px;cursor:pointer;min-height:28px}
.pcf-options input{margin:0;flex:none}
.pcf-more summary{cursor:pointer;color:var(--pcf-accent);padding:4px 0}
.pcf-range{display:none;position:relative;height:28px;margin:4px 8px 0}
.pcf-js .pcf-range{display:block}
.pcf-range-track{position:absolute;left:0;right:0;top:12px;height:4px;border-radius:2px;background:var(--pcf-border)}
.pcf-range-fill{position:absolute;top:0;bottom:0;border-radius:2px;background:var(--pcf-slider,var(--pcf-accent))}
.pcf-range input[type=range]{position:absolute;left:-9px;top:0;width:calc(100% + 18px);height:28px;margin:0;padding:0;background:none;pointer-events:none;-webkit-appearance:none;appearance:none;outline:0}
.pcf-range input[type=range]::-webkit-slider-runnable-track{height:28px;background:transparent;border:0}
.pcf-range input[type=range]::-moz-range-track{height:28px;background:transparent;border:0}
.pcf-range input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;pointer-events:auto;width:18px;height:18px;margin-top:5px;border-radius:50%;border:2px solid var(--pcf-slider,var(--pcf-accent));background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);cursor:grab}
.pcf-range input[type=range]::-moz-range-thumb{pointer-events:auto;width:14px;height:14px;border-radius:50%;border:2px solid var(--pcf-slider,var(--pcf-accent));background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);cursor:grab}
.pcf-range input[type=range]:active::-webkit-slider-thumb{cursor:grabbing}
.pcf-range input[type=range]:focus-visible::-webkit-slider-thumb{outline:2px solid var(--pcf-accent);outline-offset:2px}
.pcf-range-labels{display:none;justify-content:space-between;margin:2px 0 10px;font-size:.9em;font-weight:600}
.pcf-js .pcf-range-labels{display:flex}
.pcf-price{display:flex;align-items:center;gap:8px}
.pcf-price input{width:100%;min-width:0;padding:6px 8px;box-sizing:border-box}
.pcf-actions{display:flex;align-items:center;gap:14px;padding:12px 0 0;background:inherit}
.pcf-apply{display:none}
html:not(.pcf-js) .pcf-apply{display:inline-block}
.pcf-clear-all{font-size:.9em}
.pcf-toggle,.pcf-overlay,.pcf-drawer-head{display:none}
.pcf-toggle{align-items:center;gap:6px;margin:0 0 12px;padding:10px 16px;border:1px solid var(--pcf-border);border-radius:4px;background:#fff;color:inherit;font:inherit;cursor:pointer}
.pcf-badge{display:inline-block;min-width:1.4em;padding:0 5px;border-radius:99px;background:var(--pcf-accent);color:#fff;font-size:.8em;text-align:center}
.pcf-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:100000}
.pcf-drawer-head{align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--pcf-border)}
.pcf-close{border:0;background:none;font-size:1.6em;line-height:1;cursor:pointer;padding:4px 8px;color:inherit}
.pcf-head:empty{display:none}
.pcf-back{margin:0 0 12px}
.pcf-active{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 16px}
.pcf-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--pcf-border);border-radius:99px;background:#f6f7f8;color:inherit;text-decoration:none;font-size:.9em}
.pcf-chip:hover,.pcf-chip:focus{border-color:var(--pcf-accent);color:var(--pcf-accent)}
.pcf-clear{font-size:.9em}
.pcf-sku{display:block;color:var(--pcf-muted);font-size:.8em;margin:2px 0 4px}
@media (max-width:1024px){.pcf-layout{grid-template-columns:minmax(200px,230px) minmax(0,1fr);gap:20px}}
.pcf-legend{font-weight:700;font-size:1.05em;padding:0 0 6px}
.pcf-back-link{display:inline-block;margin:0 0 8px;font-size:.9em;text-decoration:none}
.pcf-catlist{list-style:none;margin:0;padding:0}
.pcf-catitem{margin:0;padding:0;border-top:1px solid var(--pcf-border)}
.pcf-catitem a{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 2px;color:inherit;text-decoration:none}
.pcf-catitem a:hover,.pcf-catitem a:focus{color:var(--pcf-accent)}
.pcf-catitem.is-current a{font-weight:700;color:var(--pcf-accent)}
.pcf-cards{list-style:none;margin:0 0 18px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px}
.pcf-card{margin:0;padding:0}
.pcf-card a{display:flex;flex-direction:column;height:100%;border:1px solid var(--pcf-border);border-radius:6px;overflow:hidden;text-decoration:none;color:inherit;background:#fff;transition:box-shadow .15s,border-color .15s}
.pcf-card a:hover,.pcf-card a:focus{border-color:var(--pcf-accent);box-shadow:0 2px 10px rgba(0,0,0,.08)}
.pcf-card-img{display:block;aspect-ratio:1/1;background:#f6f7f8;overflow:hidden}
.pcf-card-img img{display:block;width:100%;height:100%;object-fit:cover}
.pcf-card-name{display:block;padding:10px 10px 2px;font-weight:600;line-height:1.3}
.pcf-card-count{display:block;padding:0 10px 10px;color:var(--pcf-muted);font-size:.85em}
.pcf-dot{display:inline-block;flex:none;width:18px;height:18px;border-radius:50%;border:1px solid rgba(0,0,0,.25);box-shadow:inset 0 0 0 2px #fff}
.pcf-dot-none{background:#fff;border-style:dashed;box-shadow:none}
.pcf-group-swatch input:checked+.pcf-dot{outline:2px solid var(--pcf-accent);outline-offset:2px}
