.products-header{background:var(--bg);padding:8px var(--space-4);position:sticky;top:0;z-index:30;border-bottom:1px solid var(--border)}.products-header .header-top{display:flex;align-items:center;justify-content:space-between;height:44px}.back-button,.filter-button{background:none;border:none;color:var(--accent);cursor:pointer;padding:8px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:background var(--dur-fast)}.products-header .header-center{text-align:center;flex:1}.page-title{font-size:var(--fs-lg);font-weight:var(--fw-semibold)}.product-count{font-size:var(--fs-sm);color:var(--text-muted);margin-top:2px;display:block}.products-content{padding:var(--space-4)}.product-type-filter{display:flex;background:var(--card);border-radius:var(--radius-md);padding:4px;margin-bottom:var(--space-4)}.type-button{flex:1;padding:10px 16px;border:none;background:transparent;color:var(--text-muted);font-size:var(--fs-sm);font-weight:var(--fw-medium);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--dur-fast)}.type-button.active{background:var(--accent);color:var(--accent-contrast)}.category-filter{margin-bottom:var(--space-4)}.category-scroll{display:flex;gap:var(--space-2);overflow-x:auto;padding:4px 0;scrollbar-width:none}.category-scroll::-webkit-scrollbar{display:none}.category-chip{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-pill);padding:8px 16px;font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text);cursor:pointer;white-space:nowrap;flex:none;transition:all var(--dur-fast)}.category-chip.active{background:var(--accent);color:var(--accent-contrast);border-color:var(--accent)}.subcategory-filter{margin-bottom:var(--space-5);padding:var(--space-3) 0;border-top:1px solid var(--border)}.subcategory-title{font-size:var(--fs-sm);font-weight:var(--fw-semibold);margin-bottom:var(--space-2)}.subcategory-scroll{display:flex;gap:6px;overflow-x:auto;padding:4px 0;scrollbar-width:none}.subcategory-scroll::-webkit-scrollbar{display:none}.subcategory-chip{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:6px 12px;font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--text-muted);white-space:nowrap;flex:none;transition:all var(--dur-fast)}.subcategory-chip.active{background:var(--accent);color:var(--accent-contrast);border-color:var(--accent)}.sort-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:1px solid var(--border)}.results-count{font-size:var(--fs-sm);color:var(--text-muted)}.sort-select{background:var(--card);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 12px;font-size:var(--fs-sm)}.products-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);margin-bottom:var(--space-6)}.product-card{background:var(--card);border-radius:var(--radius-md);overflow:hidden;cursor:pointer;border:1px solid var(--border);transition:all var(--dur-fast) var(--ease)}.product-image-container{position:relative;width:100%;aspect-ratio:1;overflow:hidden}.product-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform var(--dur-med) var(--ease)}.discount-badge{left:8px;background:var(--danger)}.digital-badge,.discount-badge{position:absolute;top:8px;color:#fff;padding:3px 7px;border-radius:var(--radius-lg);font-size:10px;font-weight:var(--fw-semibold)}.digital-badge{right:8px;background:var(--info)}.out-of-stock-overlay{position:absolute;inset:0;background:var(--overlay);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:var(--fw-semibold);font-size:var(--fs-sm)}.product-info{padding:var(--space-3)}.product-name{font-size:var(--fs-sm);font-weight:var(--fw-medium);margin-bottom:6px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em}.product-rating{display:flex;align-items:center;gap:var(--space-1);margin-bottom:6px}.rating-stars{display:flex;gap:1px}.rating-stars .star{color:var(--border);font-size:12px}.rating-stars .star.filled{color:var(--warning)}.rating-text{font-size:var(--fs-xs);color:var(--text-muted)}.product-price{display:flex;align-items:baseline;gap:var(--space-2);margin-bottom:6px;flex-wrap:wrap}.current-price{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--accent)}.original-price{font-size:var(--fs-xs);color:var(--text-muted);text-decoration:line-through}.product-availability{display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-xs);flex-wrap:wrap}.in-stock{color:var(--accent)}.in-stock,.out-of-stock{font-weight:var(--fw-medium)}.out-of-stock{color:var(--danger)}.instant-delivery{color:var(--info);font-weight:var(--fw-medium)}.empty-products,.stock-count{color:var(--text-muted)}.empty-products{text-align:center;padding:var(--space-8) var(--space-5)}.empty-products .empty-icon{font-size:44px}.empty-products .empty-title{font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--text);margin:var(--space-2) 0}@media (hover:hover) and (pointer:fine){.back-button:hover,.filter-button:hover{background:var(--surface)}.type-button:hover:not(.active){background:var(--surface);color:var(--text)}.category-chip:hover:not(.active),.subcategory-chip:hover:not(.active){background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.product-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--accent)}.product-card:hover .product-image{transform:scale(1.05)}}