:root{--primary-color: #2563eb;--bg-color: #f8fafc;--text-main: #1e293b;--text-secondary: #64748b;--card-bg: #ffffff;--border-radius: 12px;--transition: all .3s ease}body{margin:0;padding:0;font-family:Inter,system-ui,-apple-system,sans-serif;background-color:var(--bg-color);color:var(--text-main)}.app-container{max-width:1200px;margin:0 auto;padding:20px}.header{margin-bottom:2rem;text-align:center}.header h1{font-size:2.5rem;margin-bottom:1.5rem;font-weight:800;background:linear-gradient(135deg,#1e293b,#334155);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.category-list{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.category-btn{background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:8px 16px;cursor:pointer;font-size:.9rem;font-weight:500;color:var(--text-secondary);transition:var(--transition);text-transform:capitalize}.category-btn:hover{background:#f1f5f9;transform:translateY(-1px)}.category-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color);box-shadow:0 4px 6px -1px #2563eb33}.product-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:20px}@media(min-width:640px){.product-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.product-grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:1280px){.product-grid{grid-template-columns:repeat(4,1fr)}}.product-card{background:var(--card-bg);border-radius:var(--border-radius);overflow:hidden;box-shadow:0 1px 3px #0000001a;transition:var(--transition);display:flex;flex-direction:column;height:100%}.product-card:hover{transform:translateY(-4px);box-shadow:0 10px 15px -3px #0000001a}.image-container{height:200px;padding:20px;display:flex;align-items:center;justify-content:center;background:#fff;border-bottom:1px solid #f1f5f9}.image-container img{max-width:100%;max-height:100%;object-fit:contain}.product-details{padding:16px;display:flex;flex-direction:column;flex-grow:1}.product-details h3{margin:0 0 8px;font-size:1rem;font-weight:600;line-height:1.4;display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--text-main)}.category{font-size:.8rem;color:var(--text-secondary);text-transform:capitalize;margin:0 0 12px}.price-rating{margin-top:auto;display:flex;justify-content:space-between;align-items:center}.price{font-size:1.25rem;font-weight:700;color:var(--primary-color)}.rating{font-size:.875rem;color:#fbbf24;font-weight:500}
