.products-layout{display:grid;grid-template-columns:280px 1fr;gap:3rem;max-width:1800px;margin:0 auto;padding:2rem}@media (max-width:968px){.products-layout{grid-template-columns:1fr}}.products-sidebar{position:sticky;top:120px;height:fit-content;max-height:calc(100vh - 140px);overflow-y:auto}@media (max-width:968px){.products-sidebar{position:relative;top:0;max-height:none}}.sidebar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid #e0e0e0}.sidebar-header h3{font-size:1.1rem;font-weight:500;color:#1a1a1a;text-transform:uppercase;letter-spacing:.1em}.clear-filters-btn{font-size:.75rem;color:#f53e16;background:none;border:none;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;transition:opacity .3s ease}.clear-filters-btn:hover{opacity:.7}.filter-group{margin-bottom:2rem}.filter-title{font-size:.85rem;font-weight:600;color:#1a1a1a;text-transform:uppercase;letter-spacing:.1em;margin-bottom:1rem}.filter-options{display:flex;flex-direction:column;gap:.75rem}.filter-checkbox{display:flex;align-items:center;gap:.75rem;cursor:pointer;transition:all .2s ease}.filter-checkbox:hover{padding-left:.25rem}.filter-checkbox input[type=checkbox],.filter-checkbox input[type=radio]{width:16px;height:16px;cursor:pointer;accent-color:#f53e16}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#333;flex:1}.color-swatch{width:20px;height:20px;border-radius:50%;border:1px solid #ddd;flex-shrink:0}.tone-kelvin{font-size:.75rem;color:#999;font-family:monospace;margin-left:auto}.products-main-content{min-width:0}.products-search-bar{display:flex;gap:1rem;margin-bottom:1.5rem}.products-search-input{flex:1;padding:.75rem 1.5rem;border:1px solid #e0e0e0;border-radius:2px;font-size:.9rem;transition:all .3s ease;outline:none}.products-search-input:focus{border-color:#1a1a1a}.products-search-clear{padding:.75rem 1.5rem;background:#1a1a1a;color:#fff;border:none;border-radius:2px;font-size:.9rem;cursor:pointer;transition:all .3s ease;white-space:nowrap}.products-search-clear:hover{background:#f53e16}.products-count{font-size:.9rem;color:#666;margin-bottom:2rem;text-transform:uppercase;letter-spacing:.05em}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem}@media (max-width:1200px){.products-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.products-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}}@media (max-width:480px){.products-grid{grid-template-columns:1fr}}.product-grid-item{background:#fff;border-radius:6px;overflow:hidden;cursor:pointer;transition:box-shadow .3s ease,transform .3s ease;display:flex;flex-direction:column;border:1px solid #ebebeb}.product-grid-item:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,.1)}.product-grid-image{position:relative;width:100%;aspect-ratio:1;background:#f4f4f4;overflow:hidden}.product-grid-image img{transition:transform .5s cubic-bezier(.2,1,.3,1)}.product-grid-item:hover .product-grid-image img{transform:scale(1.04)}.product-grid-info{padding:.875rem 1rem;border-top:1px solid #f0f0f0}.product-grid-name{font-size:.9rem;font-weight:400;color:#1a1a1a;margin-bottom:.2rem;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-grid-code{font-size:.7rem;color:#999;font-family:monospace;text-transform:uppercase;letter-spacing:.05em}.product-variants-count{font-size:.7rem;color:hsla(0,0%,100%,.6);margin-top:.25rem;font-style:italic}.image-indicators{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);display:flex;gap:6px;z-index:5;opacity:0;transition:opacity .3s ease}.product-grid-item:hover .image-indicators{opacity:1}.indicator-dot{width:6px;height:6px;border-radius:50%;background:hsla(0,0%,100%,.5);transition:all .3s ease}.indicator-dot.active{background:#f53e16;transform:scale(1.3)}.empty-state-container{width:100%;min-height:60vh;display:flex;align-items:center;justify-content:center;padding:2rem}.empty-state-content{text-align:center;max-width:500px}.empty-state-title{font-size:clamp(1.5rem,4vw,2.5rem);font-weight:300;color:#1a1a1a;margin-bottom:1rem}.empty-state-description{font-size:1.1rem;color:#666;line-height:1.6}