/* Catalogue facets; deliberately scoped away from product and checkout controls. */
.shop-sidebar .zk-facet{border-bottom:1px solid #dcd9d2;padding:18px 0}
.shop-sidebar .zk-facet summary{display:flex;align-items:center;gap:8px;cursor:pointer;list-style:none;font-size:16px;font-weight:750;color:#20251f}
.shop-sidebar .zk-facet summary::-webkit-details-marker{display:none}
.shop-sidebar .zk-facet summary::after{content:'+';margin-left:auto;font-size:22px;line-height:1;font-weight:400}
.shop-sidebar .zk-facet[open] summary::after{content:'−'}
.shop-sidebar .zk-filter-categories{border-bottom:1px solid #dcd9d2;padding:0 0 18px;margin-bottom:22px}
.shop-sidebar .zk-filter-categories summary{display:flex;align-items:center;cursor:pointer;list-style:none;font-size:16px;font-weight:750;color:#20251f}
.shop-sidebar .zk-filter-categories summary::-webkit-details-marker{display:none}
.shop-sidebar .zk-filter-categories summary::after{content:'+';margin-left:auto;font-size:22px;line-height:1;font-weight:400}
.shop-sidebar .zk-filter-categories[open] summary::after{content:'−'}
.shop-sidebar .zk-facet summary>span{font-size:11px;font-weight:550;color:#656a60}
.zk-facet-body,.zk-facet-options{margin-top:14px}
.shop-sidebar .zk-facet-options{max-height:204px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding-right:4px;display:grid;gap:3px}
.shop-sidebar .zk-facet-choice{display:flex;align-items:center;gap:9px;min-height:37px;padding:5px 7px;border-radius:5px;font-size:14px;line-height:1.3;color:#30372c;cursor:pointer;transition:background .15s}
.shop-sidebar .zk-facet-choice:hover,.shop-sidebar .zk-facet-choice:has(input:checked){background:#e8ece4}
.shop-sidebar .zk-facet-choice input{width:17px;height:17px;margin:0;accent-color:#30432e;flex-shrink:0;cursor:pointer}
.shop-sidebar .zk-facet-choice:has(input:focus-visible){outline:2px solid #40593d;outline-offset:1px}
.zk-color-dot{width:17px;height:17px;border:1px solid #0002;background:var(--zk-swatch);border-radius:50%;flex-shrink:0}
.zk-facet-note{margin:10px 0 0;color:#676d61;font-size:12px;line-height:1.5}
.shop-sidebar .zk-facet .price-inputs input{min-width:0;width:100%;background:#fff;border:1px solid #c9cec2;border-radius:5px;padding:11px;font-size:14px}
.shop-sidebar .filter-apply{margin-top:22px;width:100%;justify-content:center}
.shop-sidebar .filter-reset{display:block;text-align:center;margin-top:12px;text-decoration:underline;text-underline-offset:3px}
.zk-active-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 22px}
.zk-active-filters a{display:inline-flex;align-items:center;gap:10px;background:#e7ece1;border:1px solid #cfd8c7;color:#2f422c;padding:8px 11px;border-radius:4px;font-size:12px;line-height:1.3;font-weight:650;text-decoration:none}
.zk-active-filters a:hover{background:#d8e3cf}
.zk-active-filters a span{font-size:18px;line-height:1}
.zk-active-filters .zk-clear-all{background:none;border-color:transparent;text-decoration:underline;text-underline-offset:3px;font-weight:500}
.shop-results .empty-state .button{margin:8px}
@media(max-width:800px){.shop-sidebar.is-open{padding:20px;border:1px solid #d5d9cf;border-radius:8px;margin-bottom:22px;background:#f7f8f3}.shop-sidebar .zk-facet-options{max-height:180px}.shop-sidebar .zk-facet-choice{min-height:42px}.shop-sidebar .filter-apply{min-height:48px}.zk-active-filters{gap:6px;margin-bottom:16px}.zk-active-filters a{font-size:11px;padding:8px}}
