.page-hero-shop{padding-block:20px}.page-hero-shop h1{font-size:clamp(1.5rem,3vw,2.2rem)}
.shop-filter-panel{max-height:calc(100dvh - 150px);overflow-y:auto;scrollbar-width:thin}
.shop-filter-panel summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-weight:800;font-size:.85rem;list-style:none;gap:8px}
.shop-filter-panel summary::-webkit-details-marker{display:none}.shop-filter-panel summary::after{content:'+';font-size:1.2rem;color:var(--muted)}.shop-filter-panel details[open]>summary::after{content:'−'}
.shop-filter-panel summary small{font-weight:400;color:var(--muted)}.shop-filter-values{margin-top:14px;max-height:220px;overflow-y:auto;scrollbar-width:thin;padding-inline-end:4px}
.shop-filter-values label{align-items:flex-start}.shop-filter-values label span{overflow-wrap:anywhere;line-height:1.8}.shop-filter-values label input{margin-top:5px;flex-shrink:0}
.shop-filter-label{display:block;font-weight:800;font-size:.85rem;margin-bottom:12px}.shop-filter-section-title{padding:12px 20px;margin:0;background:var(--surface);font-size:.8rem;color:var(--primary)}
.shop-price-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.shop-price-fields label{display:grid;gap:6px;font-size:.8rem;color:var(--muted)}
.shop-price-fields input,.shop-value-search{width:100%;min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:9px;font:inherit}.shop-price-fields input{direction:ltr;text-align:right}.shop-value-search{margin-top:12px}
.shop-filter-submit{position:sticky;bottom:0;padding:14px;background:var(--surface-raised);border-top:1px solid var(--border);z-index:1}.shop-filter-submit button{width:100%}
.shop-active-filters a{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;background:var(--primary-soft,#edf4ff);border:1px solid var(--border);border-radius:999px;font-size:.75rem;max-width:100%;overflow-wrap:anywhere}
.shop-result-range{text-align:center;font-size:.8rem;color:var(--muted);margin-block:24px 12px}.shop-pagination{flex-wrap:wrap}.shop-pagination a,.shop-pagination span{display:grid;place-items:center;min-width:36px;min-height:36px;padding:5px 9px;border-radius:9px;border:1px solid var(--border);font-size:.8rem}.shop-pagination .is-active{background:var(--primary);color:white}.shop-pagination [aria-disabled]{opacity:.4}
.catalog-toolbar .view-toggle a{width:36px;height:36px;display:grid;place-items:center;border-radius:8px}.catalog-toolbar .view-toggle a.is-active{background:var(--primary);color:#fff}
[data-shop-content][aria-busy=true] .catalog-main{opacity:.5;pointer-events:none}.shop-feedback{border:1px solid #fed7aa;background:#fff7ed;color:#9a3412;border-radius:12px;padding:14px;margin-bottom:20px;line-height:1.9}.shop-feedback:empty{display:none}
.shop-filter-panel input:focus-visible,.shop-filter-panel summary:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.shop-filter-panel .check-list small{margin-inline-start:auto}
@media(max-width:980px){.shop-filter-panel{max-height:100dvh}.shop-filter-submit{padding-bottom:calc(14px + env(safe-area-inset-bottom))}}
@media(max-width:600px){.page-hero-shop .page-hero-art{display:none}.page-hero-shop{padding-block:18px}.catalog-toolbar{gap:14px}.catalog-toolbar-end{justify-content:space-between;width:100%}.catalog-toolbar-start{width:100%;justify-content:space-between}.shop-active-filters{gap:7px}.shop-active-filters a{font-size:.7rem}.catalog-grid .product-body{padding:12px}.catalog-grid .product-price strong{font-size:.88rem}}
@media(prefers-reduced-motion:reduce){.shop-filter-panel{transition:none}}
.shop-card-variant{font-size:.75rem;color:var(--muted);margin-block:4px 12px}
@media(max-width:980px){.shop-filter-panel{z-index:2100}[data-shop-overlay].is-open{z-index:2099}}

/* Compact shop header and filter groups; other page headers stay independent. */
.page-hero-shop .page-hero-inner{min-height:150px;gap:24px}
.page-hero-shop .page-hero-art{width:260px;height:150px}
.page-hero-shop .page-hero-art i:nth-child(1){width:94px;height:94px;inset:28px 78px;font-size:2.3rem}
.page-hero-shop .page-hero-art i:nth-child(2){width:58px;height:58px;inset:4px auto auto 10px;font-size:1.3rem}
.page-hero-shop .page-hero-art i:nth-child(3){width:54px;height:54px;inset:auto 8px 6px auto;font-size:1.15rem}
.page-hero-shop h1{margin-block:6px 8px}
.shop-filter-panel .filter-group{padding:12px 14px}
.shop-filter-panel .filter-head{min-height:52px;padding:10px 14px}
.shop-filter-panel summary,.shop-filter-panel .shop-filter-label{font-size:.78rem}
.shop-filter-panel .shop-filter-label{margin-bottom:8px}
.shop-filter-panel .shop-filter-values{margin-top:9px;max-height:190px}
.shop-filter-panel .check-list{gap:6px}
.shop-filter-panel .check-list label{font-size:.72rem;gap:7px;min-height:24px}
.shop-filter-panel .shop-price-fields{gap:8px;margin-top:9px}
.shop-filter-panel .shop-price-fields input,.shop-filter-panel .shop-value-search{padding:7px 8px;font-size:.75rem}
.shop-filter-panel .shop-value-search{margin-top:8px}
.shop-filter-panel .shop-filter-section-title{padding:9px 14px}
.shop-filter-panel .filter-group .switch-row+.switch-row{margin-top:9px}
.shop-filter-panel .shop-filter-submit{padding:10px 12px}
@media(max-width:980px){.shop-filter-panel .check-list label{min-height:32px}.shop-filter-panel summary{min-height:32px}.shop-filter-panel .shop-filter-submit{padding-bottom:calc(12px + env(safe-area-inset-bottom))}}
@media(max-width:600px){.page-hero-shop .page-hero-inner{min-height:0}.page-hero-shop p{font-size:.82rem}}

/* Keep filter content within its column; retain native, keyboard-accessible scrolling. */
.filter-panel.shop-filter-panel,
.shop-filter-panel .shop-filter-values {
    min-width:0;
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior-y:contain;
    scrollbar-width:thin;
    scrollbar-color:#bacbe3 transparent;
}
.filter-panel.shop-filter-panel { scrollbar-gutter:stable; }
.shop-filter-panel .filter-group,
.shop-filter-panel .shop-price-fields > label,
.shop-filter-panel summary > span,
.shop-filter-panel .check-list label,
.shop-filter-panel .check-list label > span { min-width:0; max-width:100%; }
.shop-filter-panel summary { overflow-wrap:anywhere; }
.shop-filter-panel summary::after,
.shop-filter-panel .check-list small { flex-shrink:0; }
.shop-filter-panel::-webkit-scrollbar,
.shop-filter-panel .shop-filter-values::-webkit-scrollbar { width:6px; height:0; }
.shop-filter-panel::-webkit-scrollbar-track,
.shop-filter-panel .shop-filter-values::-webkit-scrollbar-track { background:transparent; margin-block:12px; }
.shop-filter-panel::-webkit-scrollbar-thumb,
.shop-filter-panel .shop-filter-values::-webkit-scrollbar-thumb { background:#bacbe3; border-radius:20px; border:1px solid #fff; }
.shop-filter-panel::-webkit-scrollbar-thumb:hover,
.shop-filter-panel .shop-filter-values::-webkit-scrollbar-thumb:hover { background:#819fc9; }
.shop-filter-panel:hover,
.shop-filter-panel .shop-filter-values:hover { scrollbar-color:#95afd2 transparent; }