:root{--filter-sidebar-w: 280px}.shop-header{position:relative;padding:var(--space-8) 0 var(--space-7);border-bottom:1px solid var(--border-subtle);overflow:hidden}.shop-header-inner{position:relative;max-width:var(--content-max);margin:0 auto;padding:0 var(--gutter);display:flex;flex-direction:column;gap:var(--space-4);z-index:1}.shop-header-row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-5)}.shop-title{font-family:var(--ff-display);font-size:var(--fs-display-l);font-weight:700;line-height:.95;letter-spacing:-.02em;text-transform:uppercase;color:var(--text-primary)}.shop-supporting{color:var(--text-secondary);font-size:var(--fs-body-l);max-width:52ch}.shop-stats{display:flex;align-items:center;gap:var(--space-5);font-family:var(--ff-mono);font-size:var(--fs-eyebrow);letter-spacing:.16em;text-transform:uppercase;color:var(--text-tertiary)}.shop-stats strong{color:var(--text-primary);font-weight:600}.shop-stats .dot{width:4px;height:4px;background:var(--border-emphasis);border-radius:var(--radius-full)}.shop-header:after{content:"SHOP";position:absolute;right:-2vw;top:50%;transform:translateY(-50%) skew(-8deg);font-family:var(--ff-display);font-size:clamp(8rem,22vw,18rem);font-weight:700;line-height:1;letter-spacing:-.03em;color:transparent;-webkit-text-stroke:1px var(--border-subtle);pointer-events:none;z-index:0}.tabs-bar{position:sticky;top:108px;z-index:80;background:var(--bg);border-bottom:1px solid var(--border-subtle)}.tabs-bar-inner{max-width:var(--content-max);margin:0 auto;padding:0 var(--gutter);display:flex;align-items:center;gap:var(--space-6);overflow-x:auto;scrollbar-width:none}.tabs-bar-inner::-webkit-scrollbar{display:none}.tabs-bar .tab{position:relative;padding:var(--space-4) 0;font-family:var(--ff-mono);font-size:var(--fs-body-s);font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);white-space:nowrap;cursor:pointer;transition:color var(--duration-fast) var(--ease-out)}.tabs-bar .tab:hover,.tabs-bar .tab.is-active{color:var(--text-primary)}.tabs-bar .tab.is-active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--accent)}.tabs-bar .tab .count{display:inline-block;margin-left:var(--space-2);font-size:10px;color:var(--text-tertiary)}.sub-tabs{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-5) 0;border-bottom:1px solid var(--border-subtle)}.sub-tab{display:inline-flex;align-items:center;gap:var(--space-2);padding:6px var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-full);background:transparent;font-family:var(--ff-mono);font-size:var(--fs-eyebrow);font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:border-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.sub-tab:hover{color:var(--text-primary);border-color:var(--border-emphasis)}.sub-tab.is-active{color:var(--text-primary);border-color:var(--accent);background:#1bb3f214}.sub-tab .count{font-size:10px;color:var(--text-tertiary)}.shop-layout{display:grid;grid-template-columns:1fr;gap:var(--space-7);padding:var(--space-7) 0 var(--space-9)}@media(min-width:1024px){.shop-layout{grid-template-columns:var(--filter-sidebar-w) 1fr;gap:var(--space-8)}}.filters{display:none;flex-direction:column;gap:0}@media(min-width:1024px){.filters{display:flex;position:sticky;top:168px;align-self:start;max-height:calc(100vh - 200px);overflow-y:auto;padding-right:var(--space-4);scrollbar-width:thin;scrollbar-color:var(--border-emphasis) transparent}}.filters-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--space-4);margin-bottom:var(--space-4);border-bottom:1px solid var(--border-subtle)}.filters-header h3{font-family:var(--ff-mono);font-size:var(--fs-eyebrow);font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--text-tertiary)}.filters-clear{font-family:var(--ff-body);font-size:var(--fs-body-s);font-weight:500;color:var(--accent);background:none;border:none;cursor:pointer;padding:0}.filters-clear:hover{text-decoration:underline;text-underline-offset:3px}.filter-group{padding:var(--space-5) 0;border-bottom:1px solid var(--border-subtle)}.filter-group:last-child{border-bottom:none}.filter-group-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:0;margin-bottom:var(--space-4);background:none;border:none;cursor:pointer}.filter-group-trigger h4{font-family:var(--ff-mono);font-size:var(--fs-caption);font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--text-primary)}.filter-group-trigger .lucide{width:16px;height:16px;color:var(--text-tertiary);transition:transform var(--duration-fast) var(--ease-out)}.filter-group.is-collapsed .filter-group-trigger .lucide{transform:rotate(-90deg)}.filter-group.is-collapsed .filter-group-body{display:none}.filter-group-body{display:flex;flex-direction:column;gap:var(--space-3)}.filter-search{position:relative;margin-bottom:var(--space-2)}.filter-search input{width:100%;height:36px;padding:0 var(--space-3) 0 32px;background:var(--surface-3);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--ff-body);font-size:var(--fs-body-s)}.filter-search input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #1bb3f240}.filter-search .lucide{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:14px;height:14px;color:var(--text-tertiary);pointer-events:none}.filter-check{display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-size:var(--fs-body-s);color:var(--text-secondary);transition:color var(--duration-fast) var(--ease-out);padding:4px 0}.filter-check:hover{color:var(--text-primary)}.filter-check input{display:none}.filter-check-label{display:flex;align-items:center;gap:var(--space-3)}.filter-check-box{width:16px;height:16px;border:1px solid var(--border-emphasis);border-radius:3px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.filter-check-box .lucide{width:12px;height:12px;color:#07212b;opacity:0}.filter-check input:checked+.filter-check-label .filter-check-box{background:var(--accent);border-color:var(--accent)}.filter-check input:checked+.filter-check-label .filter-check-box .lucide{opacity:1}.filter-check input:checked+.filter-check-label{color:var(--text-primary)}.filter-check-count{font-family:var(--ff-mono);font-size:var(--fs-caption);color:var(--text-tertiary)}.filter-view-all{margin-top:var(--space-2);font-size:var(--fs-body-s);color:var(--accent);background:none;border:none;cursor:pointer;padding:0}.filter-view-all:hover{text-decoration:underline;text-underline-offset:3px}.range-row{display:grid;grid-template-columns:1fr auto 1fr;gap:var(--space-2);align-items:center}.range-row .dash{color:var(--text-tertiary)}.range-row input{width:100%;height:36px;padding:0 var(--space-3);background:var(--surface-3);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--ff-mono);font-size:var(--fs-body-s)}.range-row input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #1bb3f240}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);cursor:pointer}.toggle-row-label{font-size:var(--fs-body-s);color:var(--text-secondary)}.toggle{position:relative;width:40px;height:22px;background:var(--surface-3);border:1px solid var(--border-emphasis);border-radius:var(--radius-full);flex-shrink:0;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:var(--text-secondary);border-radius:var(--radius-full);transition:transform var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.toggle.is-on{background:#1bb3f226;border-color:var(--accent)}.toggle.is-on:after{transform:translate(18px);background:var(--accent)}.shop-main{display:flex;flex-direction:column;gap:var(--space-5);min-width:0}.shop-toolbar{display:grid;grid-template-columns:1fr auto;gap:var(--space-3);align-items:center;padding-bottom:var(--space-2)}@media(min-width:700px){.shop-toolbar{grid-template-columns:1fr auto auto}}.shop-search{position:relative;width:100%}.shop-search input{width:100%;height:44px;padding:0 var(--space-4) 0 40px;background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--ff-body);font-size:var(--fs-body)}.shop-search input::placeholder{color:var(--text-tertiary)}.shop-search input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #1bb3f240}.shop-search .lucide{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--text-tertiary);pointer-events:none}.shop-toolbar-sort{display:inline-flex;align-items:center;gap:var(--space-2);height:44px;padding:0 var(--space-4);background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-family:var(--ff-mono);font-size:var(--fs-body-s);font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-primary);cursor:pointer}.shop-toolbar-sort:hover{border-color:var(--border-emphasis)}.shop-toolbar-sort .label{color:var(--text-tertiary);font-weight:400}.shop-toolbar-filter-trigger{display:inline-flex;align-items:center;gap:var(--space-2);height:44px;padding:0 var(--space-4);background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-family:var(--ff-mono);font-size:var(--fs-body-s);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-primary);cursor:pointer}.shop-toolbar-filter-trigger:hover{border-color:var(--border-emphasis)}@media(min-width:1024px){.shop-toolbar-filter-trigger{display:none}}.shop-result-meta{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-2) 0;font-family:var(--ff-mono);font-size:var(--fs-eyebrow);letter-spacing:.16em;text-transform:uppercase;color:var(--text-tertiary)}.shop-result-meta strong{color:var(--text-primary);font-weight:600}.filter-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-2) 0}.chip{display:inline-flex;align-items:center;gap:var(--space-2);height:28px;padding:0 var(--space-2) 0 var(--space-3);background:var(--surface-1);border:1px solid rgba(27,179,242,.4);border-radius:var(--radius-full);font-family:var(--ff-mono);font-size:var(--fs-eyebrow);font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--text-primary)}.chip .label{color:var(--accent);margin-right:2px}.chip-remove{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:none;border:none;color:var(--text-tertiary);border-radius:var(--radius-full);cursor:pointer;transition:color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.chip-remove:hover{color:var(--text-primary);background:var(--surface-3)}.chip-remove .lucide{width:12px;height:12px}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}@media(min-width:700px){.product-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-5)}}@media(min-width:1024px){.product-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1200px){.product-grid{grid-template-columns:repeat(3,1fr)}}.product-grid .product-card-link{display:contents}.product-grid .product-card{flex:1 1 auto;scroll-snap-align:none;cursor:pointer}@media(max-width:500px){.product-grid .product-card-body{padding:var(--space-3) var(--space-4) var(--space-4);gap:var(--space-2)}.product-grid .product-card-title{font-size:1.5rem}.product-grid .product-card-price{font-size:var(--fs-body-l)}}.pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin-top:var(--space-7);padding-top:var(--space-6);border-top:1px solid var(--border-subtle)}.page-btn{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 var(--space-3);background:transparent;border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-family:var(--ff-mono);font-size:var(--fs-body-s);font-weight:600;color:var(--text-secondary);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.page-btn:hover{border-color:var(--border-emphasis);color:var(--text-primary)}.page-btn.is-active{border-color:var(--accent);color:var(--accent);background:#1bb3f214}.page-btn.is-disabled{opacity:.4;pointer-events:none}.page-btn .lucide{width:16px;height:16px}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-9) var(--space-5);text-align:center;border:1px dashed var(--border-subtle);border-radius:var(--radius-lg)}.empty-icon{width:64px;height:64px;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);opacity:.5}.empty-icon .lucide{width:48px;height:48px;stroke-width:1}.empty-title{font-family:var(--ff-display);font-size:var(--fs-display-s);font-weight:700;line-height:1;letter-spacing:-.01em;text-transform:uppercase;color:var(--text-primary)}.empty-supporting{color:var(--text-secondary);font-size:var(--fs-body);max-width:40ch}.filter-drawer-backdrop{position:fixed;inset:0;background:#0a0a0bb3;backdrop-filter:blur(8px);z-index:130;opacity:0;visibility:hidden;transition:opacity var(--duration-base) var(--ease-out),visibility var(--duration-base) var(--ease-out)}.filter-drawer-backdrop.is-open{opacity:1;visibility:visible}.filter-drawer{position:fixed;top:0;left:0;bottom:0;width:min(360px,90vw);background:var(--surface-2);border-right:1px solid var(--border-subtle);transform:translate(-100%);transition:transform var(--duration-base) var(--ease-out);z-index:135;display:flex;flex-direction:column}.filter-drawer.is-open{transform:translate(0)}.filter-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5);border-bottom:1px solid var(--border-subtle)}.filter-drawer-header h3{font-family:var(--ff-display);font-size:var(--fs-display-s);font-weight:700;line-height:1;letter-spacing:-.01em;text-transform:uppercase;color:var(--text-primary)}.filter-drawer-body{flex:1;overflow-y:auto;padding:var(--space-5)}.filter-drawer-footer{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);padding:var(--space-5);border-top:1px solid var(--border-subtle);background:var(--surface-2)}
