.product-catalog{background:0 0;margin:0;padding:0;position:relative}.catalog-container{width:100%;max-width:100%;margin:0;padding:0}.catalog-error{text-align:center;background-color:var(--surface);border-radius:var(--radius-plate);min-height:400px;margin:var(--space-8) auto;padding:var(--space-12);border:var(--public-hairline);flex-direction:column;justify-content:center;align-items:center;display:flex}.catalog-error button,.catalog-error-inline button{background:var(--dark-900);min-height:44px;color:var(--white);border:1px solid var(--dark-900);border-radius:var(--radius-sharp);cursor:pointer;font-size:.8125rem;font-weight:700;transition:background-color .15s,border-color .15s}.catalog-error button{padding:var(--space-3) var(--space-8);margin-top:var(--space-6)}.catalog-error button:hover,.catalog-error-inline button:hover{border-color:var(--dark-800);background:var(--dark-800)}.catalog-error button:focus-visible,.catalog-error-inline button:focus-visible{outline:2px solid var(--public-accent-strong);outline-offset:2px}.catalog-error-inline{background:var(--surface);border:var(--public-hairline);border-left:2px solid var(--status-error-accent);border-radius:var(--radius-sharp);padding:var(--space-5);margin-bottom:var(--space-4);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.catalog-error-inline p{color:var(--public-text);font-weight:var(--font-semibold);margin:0}.catalog-error-inline button{padding:var(--space-2) var(--space-6)}.catalog-header{margin:0 0 var(--space-8);flex-direction:column;align-items:flex-start;display:flex;position:relative}.catalog-title-section{align-items:flex-start;gap:var(--space-2);flex-direction:column;display:flex;position:relative}.catalog-eyebrow{color:var(--public-text-muted);font-size:var(--text-sm);font-weight:var(--font-bold);margin:0}.catalog-title{color:var(--public-heading);font-family:var(--font-display);font-size:var(--text-h2);font-weight:var(--font-black);letter-spacing:-.03em;text-wrap:balance;margin:0;line-height:.98}.catalog-subtitle{margin:var(--space-1) 0 0;color:var(--public-text-muted);font-size:var(--text-sm);font-weight:var(--font-bold);font-variant-numeric:tabular-nums}.catalog-controls{display:none}.filters-toggle{align-items:center;gap:var(--space-2);background:var(--white);border:1px solid var(--dark-900);padding:var(--space-3) var(--space-5);border-radius:var(--radius-sharp);font-weight:var(--font-bold);color:var(--dark-900);cursor:pointer;transition:background-color .15s,color .15s;display:none;position:relative}.filters-toggle:hover{color:var(--white);background:var(--dark-900)}.mobile-filter-fab{bottom:16px;bottom:calc(16px + env(safe-area-inset-bottom));right:16px;right:calc(16px + env(safe-area-inset-right));z-index:999;background:var(--dark-900);min-height:44px;color:var(--white);border:1px solid var(--dark-900);border-radius:var(--radius-sharp);cursor:pointer;box-shadow:var(--shadow-overlay);align-items:center;gap:8px;padding:12px 18px;font-size:13px;font-weight:700;transition:background-color .15s,border-color .15s;display:none;position:fixed}.mobile-filter-fab:hover{border-color:var(--dark-800);background:var(--dark-800)}.mobile-filter-fab:focus-visible{outline:2px solid var(--public-accent-strong);outline-offset:2px}.mobile-filter-fab svg{width:18px;height:18px}.filter-fab-text{font-size:13px}.filter-fab-count{background:var(--public-accent-strong);color:var(--white);font-variant-numeric:tabular-nums;border-radius:var(--radius-pill);border:2px solid var(--white);justify-content:center;align-items:center;min-width:20px;height:20px;padding:2px 6px;font-size:11px;font-weight:700;display:flex;position:absolute;top:-8px;right:-8px}.active-filters-count{background:var(--public-accent-strong);color:var(--white);font-size:var(--text-xs);font-weight:var(--font-bold);font-variant-numeric:tabular-nums;border-radius:var(--radius-pill);justify-content:center;align-items:center;min-width:20px;height:20px;padding:2px 8px;display:flex}.catalog-content{grid-template-columns:260px 1fr;align-items:start;gap:28px;margin-left:0;padding-left:0;display:grid;position:relative}.catalog-scroll-anchor{scroll-margin-top:calc(var(--header-height,72px) + 16px)}.filters-sidebar{top:calc(var(--header-height) + 16px);background:var(--surface);border-radius:var(--radius-plate);height:calc(100vh - var(--header-height) - 32px);max-height:calc(100vh - var(--header-height) - 32px);margin-left:0;margin-right:0;padding:0;position:sticky;overflow:hidden}.filters-overlay{background:rgb(var(--public-text-rgb) / .5);z-index:900;opacity:0;visibility:hidden;transition:opacity var(--transition-normal), visibility var(--transition-normal);pointer-events:none;display:none;position:fixed;inset:0}.filters-overlay.visible{opacity:1;visibility:visible;pointer-events:auto}@media (max-width:1024px){.filters-overlay{display:block}}.mobile-overlay-header{display:none}.overlay-title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--font-extrabold);letter-spacing:-.01em;margin:0;line-height:1.1}.overlay-header-buttons{align-items:center;gap:var(--space-2);display:flex}.clear-filters-header-btn,.close-overlay-btn{border:1px solid rgb(var(--public-white-rgb) / .4);min-height:40px;color:var(--white);border-radius:var(--radius-sharp);cursor:pointer;background:0 0;justify-content:center;align-items:center;transition:background-color .15s,border-color .15s,color .15s;display:flex}.clear-filters-header-btn{padding:var(--space-2) var(--space-3);gap:var(--space-1);font-size:var(--text-sm);font-weight:var(--font-semibold)}.close-overlay-btn{min-width:40px;padding:var(--space-2)}.clear-filters-header-btn:hover,.close-overlay-btn:hover{border-color:var(--white);background:var(--white);color:var(--dark-900)}.clear-filters-header-btn:focus-visible,.close-overlay-btn:focus-visible{outline:2px solid var(--public-accent-light);outline-offset:2px}.clear-filters-header-btn span{font-size:var(--text-xs)}.products-main{width:100%;min-width:0;position:relative;overflow:visible}.unified-controls-section{background:var(--surface);border-radius:var(--radius-plate);z-index:40;margin-bottom:24px;padding:16px 20px;position:relative;overflow:visible}.controls-top-row{z-index:45;justify-content:space-between;align-items:center;gap:24px;display:flex;position:relative;overflow:visible}.search-controls{z-index:60;flex-wrap:wrap;flex:1;align-items:center;gap:10px;min-width:0;display:flex;position:relative;overflow:visible}.search-container{z-index:60;flex:1;max-width:560px;position:relative;overflow:visible}.catalog-clear-filters-btn{border:var(--public-hairline-strong);background:var(--white);min-height:44px;color:var(--public-text);border-radius:var(--radius-sharp);font-size:var(--text-sm);font-weight:var(--font-bold);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;padding:10px 12px;line-height:1;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.catalog-clear-filters-btn:hover:not(:disabled){border-color:var(--dark-900);background:var(--dark-900);color:var(--white)}.catalog-clear-filters-btn:focus-visible{outline:2px solid var(--public-accent-strong);outline-offset:2px}.catalog-clear-filters-btn:disabled{opacity:.55;cursor:not-allowed}.catalog-clear-filters-count{border-radius:var(--radius-pill);background:var(--public-accent-strong);min-width:18px;height:18px;color:var(--white);font-variant-numeric:tabular-nums;letter-spacing:0;justify-content:center;align-items:center;padding:0 5px;font-size:10px;font-weight:700;display:inline-flex}.controls-right{z-index:50;flex-shrink:0;align-items:center;gap:20px;display:flex;position:relative}.inline-filter-btn{background:var(--dark-900);min-height:44px;color:var(--white);border:1px solid var(--dark-900);border-radius:var(--radius-sharp);cursor:pointer;white-space:nowrap;align-items:center;gap:8px;padding:10px 14px;font-size:12px;font-weight:700;transition:background-color .15s,border-color .15s;display:none}.inline-filter-btn:hover{border-color:var(--dark-800);background:var(--dark-800)}.inline-filter-btn:focus-visible{outline:2px solid var(--public-accent-strong);outline-offset:2px}.inline-filter-btn svg{width:16px;height:16px}.clear-filters-btn{background:var(--white);border:var(--public-hairline-strong);color:var(--public-text);cursor:pointer;border-radius:var(--radius-sharp);white-space:nowrap;padding:8px 14px;font-size:13px;font-weight:600;transition:background-color .15s,border-color .15s,color .15s}.clear-filters-btn:hover{border-color:var(--dark-900);background:var(--dark-900);color:var(--white)}.sort-container{z-index:60;flex-shrink:0;min-width:180px;position:relative}.active-filters-bar{background:var(--white);border:var(--public-hairline);border-radius:var(--radius-plate);flex-direction:column;max-width:100%;margin-bottom:16px;padding:10px 14px;display:inline-flex}.active-filters-header{align-items:center;gap:12px;margin-bottom:8px;display:flex}.active-filters-label{color:var(--public-accent-strong);align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex}.active-filters-label svg{stroke:currentColor;width:14px;height:14px}.clear-all-filters-btn{color:var(--public-text);border:var(--public-hairline-strong);border-radius:var(--radius-sharp);cursor:pointer;background:0 0;align-items:center;gap:4px;margin-left:auto;padding:4px 10px;font-size:11px;font-weight:700;transition:background-color .15s,border-color .15s,color .15s;display:flex}.clear-all-filters-btn svg{width:12px;height:12px}.clear-all-filters-btn:hover{border-color:var(--dark-900);background:var(--dark-900);color:var(--white)}.active-filters-chips{flex-wrap:wrap;gap:6px;display:flex}.filter-chip{background:var(--surface);border:var(--public-hairline-strong);border-radius:var(--radius-sharp);color:var(--public-text);cursor:pointer;align-items:center;gap:5px;padding:4px 8px;font-size:12px;font-weight:500;transition:background-color .15s,border-color .15s,color .15s;display:flex}.filter-chip:hover{border-color:var(--dark-900);color:var(--dark-900)}.filter-chip:hover .filter-chip-remove{stroke:var(--dark-900)}.filter-chip-label{text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}.filter-chip-remove{width:12px;height:12px;stroke:var(--public-text-muted);flex-shrink:0;transition:stroke .15s}.filter-chip-category,.filter-chip-brand,.filter-chip-price,.filter-chip-stock,.filter-chip-rating,.filter-chip-search{border-left:2px solid var(--public-accent)}.filter-chip-discount{border-left:2px solid var(--status-error-accent)}@media (min-width:1025px){.mobile-filter-fab{display:none}.product-catalog--static-filters .filters-sidebar{align-self:start;height:auto;max-height:none;position:static;top:auto;overflow:visible}}@media (max-width:1200px) and (min-width:1025px){.catalog-container{max-width:100%;padding:0}.catalog-content{gap:var(--space-6);grid-template-columns:240px 1fr}.unified-controls-section{padding:18px 22px}.controls-top-row{gap:20px}.controls-right{gap:16px}.sort-container{min-width:160px}}@media (max-width:1024px) and (min-width:769px){.unified-controls-section{padding:18px 22px}.controls-top-row{gap:18px}.search-container{max-width:400px}.search-controls{gap:8px}.controls-right{gap:16px}.sort-container{min-width:160px}}@media (max-width:1024px){.catalog-content{display:block;position:relative}.products-main{width:100%;display:block;position:relative}.mobile-filter-fab{display:flex}.filters-toggle{display:none}.filters-sidebar{z-index:1001;background:var(--surface);border:var(--public-hairline);border-radius:0 var(--radius-sharp) var(--radius-sharp) 0;width:380px;height:100dvh;min-height:0;max-height:100dvh;box-shadow:var(--shadow-overlay);overscroll-behavior:contain;transition:left var(--transition-normal) ease-in-out;visibility:hidden;pointer-events:none;scrollbar-width:none;-ms-overflow-style:none;flex-direction:column;margin:0;padding:0;display:none;position:fixed;top:0;bottom:auto;left:-100%;overflow:hidden}.filters-sidebar::-webkit-scrollbar{display:none}.filters-sidebar--open{visibility:visible;pointer-events:auto;display:flex;left:0}.mobile-overlay-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--dark-900);color:var(--white);margin-bottom:var(--space-4);border-radius:0;display:flex}.overlay-title{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.overlay-header-buttons{flex:none;min-width:0}.filters-sidebar .search-input{font-size:16px}.catalog-container{max-width:100%;margin:0;padding:0}}@media (max-width:768px){.product-catalog{background:0 0;padding:0}.catalog-container{max-width:100%;margin:0 auto;padding:0}.catalog-header{align-items:flex-start;gap:var(--space-2);margin:0 0 var(--space-6);flex-direction:column;padding:0}.catalog-controls{justify-content:center;gap:var(--space-3);display:none}.filters-sidebar{width:60vw;display:flex;position:fixed}.filters-sidebar--open{display:flex}.active-filters-bar{margin:0 var(--space-2) var(--space-3) var(--space-2);padding:8px 10px}.active-filters-header{gap:8px;margin-bottom:6px}.active-filters-label{font-size:10px}.clear-all-filters-btn{padding:3px 8px;font-size:10px}.filter-chip{padding:3px 6px;font-size:11px}.filter-chip-label{max-width:80px}.filter-chip-remove{width:10px;height:10px}.unified-controls-section{margin:0 var(--space-2) var(--space-3) var(--space-2);padding:12px 14px}.controls-top-row{flex-direction:column;align-items:stretch;gap:10px}.search-container{max-width:100%}.search-controls{flex-wrap:wrap;gap:8px;width:100%}.catalog-clear-filters-btn{padding:8px 10px;font-size:11px}.controls-right{flex-shrink:0;justify-content:flex-start;align-items:center;gap:8px;width:auto}.inline-filter-btn{display:inline-flex}.sort-container{flex-shrink:0;min-width:150px;margin-left:0}.clear-filters-btn{white-space:nowrap;padding:4px 8px;font-size:11px}}@media (max-width:480px){.mobile-overlay-header{padding:var(--space-3) var(--space-4)}.overlay-title{font-size:var(--text-lg)}.clear-filters-header-btn{padding:6px 10px}.product-catalog{padding:var(--space-3) 0}.catalog-container{max-width:100%;margin:0 auto;padding:0}.catalog-header{margin:0 0 var(--space-6);gap:var(--space-2);padding:0}.catalog-title{margin-bottom:0;font-size:clamp(2rem,10.5vw,2.7rem)}.mobile-filter-fab{bottom:12px;bottom:calc(12px + env(safe-area-inset-bottom));right:12px;right:calc(12px + env(safe-area-inset-right));padding:10px 16px}.mobile-filter-fab svg{width:16px;height:16px}.filter-fab-text{font-size:12px}.filter-fab-count{min-width:18px;height:18px;padding:1px 5px;font-size:10px;top:-6px;right:-6px}.unified-controls-section{margin:0 var(--space-1) var(--space-2) var(--space-1);padding:8px 10px}.controls-top-row{gap:8px}.search-controls{gap:6px}.search-container{flex-basis:100%}.catalog-clear-filters-btn{justify-content:center;min-width:40px;padding:8px}.catalog-clear-filters-btn>span:first-of-type{display:none}.controls-right{justify-content:flex-start;align-items:center;gap:6px}.sort-container{min-width:140px}.clear-filters-btn{white-space:nowrap;padding:3px 6px;font-size:10px}.filters-sidebar{width:60vw;display:flex;position:fixed}.filters-sidebar--open{display:flex}}@media (max-width:400px){.unified-controls-section{margin:0 8px 12px;padding:6px 10px}.controls-top-row,.controls-right{gap:6px}.clear-filters-btn{padding:2px 5px;font-size:9px}}@media (max-width:360px){.inline-filter-btn span,.clear-filters-header-btn span{display:none}.catalog-title{font-size:var(--text-2xl)}.mobile-filter-fab{bottom:12px;bottom:calc(12px + env(safe-area-inset-bottom));right:12px;right:calc(12px + env(safe-area-inset-right));padding:8px 14px}.mobile-filter-fab svg{width:14px;height:14px}.filter-fab-text{font-size:11px}.filters-sidebar{width:60vw;display:flex;position:fixed}.filters-sidebar--open{display:flex}.catalog-container{max-width:100%;margin:0 auto;padding:0}}.pagination-container{border-radius:var(--radius-control);background:0 0;flex-direction:column;align-items:center;gap:16px;margin-top:32px;padding:24px 16px;transition:opacity .15s;display:flex}.pagination-container.pagination-loading{opacity:.5;pointer-events:none}.pagination-controls{background:var(--white);border-radius:var(--radius-control);border:var(--public-hairline);justify-content:center;align-items:center;gap:4px;padding:6px;display:flex}.page-btn{color:var(--public-text-soft);border-radius:var(--radius-sharp);cursor:pointer;font-variant-numeric:tabular-nums;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;min-width:40px;height:40px;padding:0;font-size:14px;font-weight:600;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.page-btn:hover:not(:disabled):not([aria-disabled=true]){color:var(--dark-900);border-color:var(--public-border-strong)}.page-btn:focus-visible{outline:2px solid var(--public-accent-strong);outline-offset:2px}.page-btn:disabled,.page-btn[aria-disabled=true]{opacity:.3;cursor:not-allowed;pointer-events:none}.page-btn svg{flex-shrink:0}.page-btn-nav{color:var(--public-text-muted);background:0 0}.page-btn-nav:hover:not(:disabled):not([aria-disabled=true]){color:var(--public-accent-strong);border-color:var(--public-border-strong)}.page-btn-number{color:var(--public-text-soft);font-weight:700}.page-btn-number:hover:not(:disabled):not([aria-disabled=true]):not(.page-btn-number--active){color:var(--dark-900);border-color:var(--public-border-strong)}.page-btn-number--active,.page-btn-number--active:hover{background:var(--dark-900);color:var(--white);border-color:var(--dark-900);cursor:default}.page-numbers{align-items:center;gap:4px;margin:0 6px;display:flex}.page-ellipsis{width:40px;height:40px;color:var(--public-text-muted);letter-spacing:2px;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:inline-flex}.pagination-meta{color:var(--public-text-muted);font-variant-numeric:tabular-nums;align-items:center;gap:12px;font-size:13px;font-weight:500;display:flex}.pagination-meta strong{color:var(--dark-900);font-weight:700}.pagination-divider{color:var(--sand-muted);font-size:12px}.pagination-total{color:var(--public-text-muted)}@media (max-width:640px){.pagination-container{margin-top:var(--space-6);padding:var(--space-4) var(--space-2)}.pagination-controls{flex-wrap:wrap;gap:2px;padding:4px}.page-btn{min-width:36px;height:36px;font-size:.8125rem}.page-btn svg{width:14px;height:14px}.page-numbers{flex-wrap:wrap;justify-content:center;gap:2px;margin:0 2px}.page-ellipsis{width:28px;height:36px;font-size:.625rem}.pagination-meta{gap:var(--space-1);flex-direction:column;font-size:.75rem}.pagination-divider{display:none}}@media (max-width:400px){.page-btn-nav:first-child,.page-btn-nav:last-child{display:none}}@media (prefers-reduced-motion:reduce){.mobile-filter-fab,.filters-overlay,.filters-sidebar,.page-btn{transition:none}}
