.store-filter-layout { display:grid; grid-template-columns:250px minmax(0,1fr); gap:28px; align-items:start; }
.store-filter-sidebar { background:#fff; border:1px solid #dbe7e1; border-radius:16px; padding:20px; min-width:0; }
.store-filter-heading { display:flex; justify-content:space-between; align-items:center; }
.store-filter-heading h2 { margin:0 0 16px; font-size:1.25rem; }
.store-filter-group { border-bottom:1px solid #e4ece7; padding:16px 0; }
.store-filter-group summary { font-weight:750; cursor:pointer; }
.store-filter-group > div { display:grid; gap:10px; margin-top:14px; max-height:260px; overflow-y:auto; }
.store-filter-choice { display:flex; align-items:start; gap:10px; cursor:pointer; font-size:.9rem; overflow-wrap:anywhere; }
.store-filter-sidebar input[type=checkbox] { width:18px; height:18px; min-height:18px; flex:0 0 18px; accent-color:#087a46; margin:2px 0; }
.store-filter-sidebar input:not([type=checkbox]) { width:100%; min-width:0; padding:10px; border:1px solid #bacec2; border-radius:8px; margin-top:6px; font:inherit; box-sizing:border-box; }
.store-price-range { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
.store-filter-search { display:block; font-size:.9rem; font-weight:650; }
.store-filter-actions { display:grid; gap:16px; padding-top:20px; }
.store-filter-results { min-width:0; }
.store-filter-results .store-product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.store-filter-results .store-catalog-toolbar { display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin-bottom:18px; }
.store-filter-results .store-catalog-toolbar select { max-width:100%; padding:10px; border:1px solid #bacec2; border-radius:8px; font:inherit; }
.store-filter-chips { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:20px; }
.store-filter-chip { display:inline-flex; align-items:center; gap:8px; border:1px solid #b5d6c3; border-radius:999px; padding:6px 12px; background:#f0f8f3; color:#075c37; font-size:.85rem; overflow-wrap:anywhere; max-width:100%; }
.store-filter-pagination { display:flex; gap:24px; align-items:center; justify-content:center; padding:28px 0; }
.store-mobile-filter-toggle,.store-drawer-close,.store-filter-backdrop { display:none; }
.store-specification-groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.store-specification-group { background:#fff; padding:24px; border:1px solid #dbe7e1; border-radius:16px; min-width:0; }
.store-specification-group dl { margin:0; }
.store-specification-group dl > div { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:12px; border-bottom:1px solid #e4ece7; padding:12px 0; }
.store-specification-group dd { margin:0; font-weight:650; overflow-wrap:anywhere; }
@media(max-width:1200px) { .store-filter-results .store-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:1023px) {
 .store-filter-layout { grid-template-columns:minmax(0,1fr); }
 .store-filters-ready .store-filter-sidebar { display:none; position:fixed; inset:0 auto 0 0; z-index:1002; width:min(360px,92vw); border-radius:0; overflow-y:auto; box-sizing:border-box; padding-bottom:24px; }
 .store-filters-ready .store-mobile-filter-toggle { display:inline-flex; }
 .store-filters-open { overflow:hidden; }
 .store-filters-open .store-filter-sidebar { display:block; }
 .store-filters-open .store-filter-backdrop { display:block; position:fixed; inset:0; z-index:1001; background:rgba(4,30,18,.48); border:0; width:100%; }
 .store-drawer-close { display:inline-flex; font-size:1.7rem; background:none; border:0; padding:6px; cursor:pointer; }
 .store-filter-actions { position:sticky; bottom:-24px; background:#fff; padding:16px 0; }
}
@media(max-width:600px) {
 .store-filter-results .store-product-grid,.store-specification-groups { grid-template-columns:minmax(0,1fr); }
 .store-filter-results .store-catalog-toolbar > div { flex:1 1 100%; }
 .store-filter-results .store-catalog-toolbar label { display:inline-block; margin-right:10px; }
}
