html,body,#root{background-color:#f8fafc;width:100%;min-height:100vh;margin:0;padding:0}*{box-sizing:border-box}:root{--primary:#2563eb;--primary-hover:#1d4ed8;--success:#10b981;--danger:#ef4444;--background:#f8fafc;--card-bg:#fff;--text-dark:#0f172a;--text-light:#64748b}body{background-color:var(--background);color:var(--text-dark);margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;overflow-x:hidden}.navbar{background-color:var(--card-bg);z-index:1000;justify-content:space-between;align-items:center;padding:15px 5%;display:flex;position:sticky;top:0;box-shadow:0 4px 15px -3px #0000001a}.navbar-brand{color:var(--text-dark);letter-spacing:-.02em;font-size:1.5rem;font-weight:900}.navbar-brand span{color:var(--primary)}.navbar-cart-btn{background-color:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:9999px;align-items:center;gap:10px;padding:12px 24px;font-size:1rem;font-weight:600;transition:all .2s;display:flex;box-shadow:0 4px 12px #2563eb33}.navbar-cart-btn:hover{background-color:var(--primary-hover);transform:translateY(-2px)}.cart-badge{background-color:var(--danger);border-radius:12px;padding:2px 8px;font-size:14px}.hero-banner{background-color:#0f172a;justify-content:center;align-items:center;width:100%;height:450px;margin:0;display:flex;position:relative;overflow:hidden}.carousel-slide{opacity:0;z-index:1;background-position:50%;background-size:cover;width:100%;height:100%;transition:opacity 1.5s ease-in-out;position:absolute;top:0;left:0}.carousel-slide.active{opacity:1;z-index:2}.hero-content{z-index:3;text-align:center;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a99;border-radius:20px;max-width:800px;padding:40px 60px;position:relative}.hero-title{letter-spacing:-.02em;margin:0 0 20px;font-size:3rem;font-weight:900}.hero-subtitle{opacity:.95;margin:0;font-size:1.25rem;font-weight:400}.catalog-container{box-sizing:border-box;width:100%;max-width:1600px;margin:0 auto;padding:40px 5%}.category-section{margin-bottom:60px}.category-title{color:var(--primary);text-transform:uppercase;letter-spacing:.05em;border-bottom:3px solid #e2e8f0;align-items:center;gap:10px;margin-bottom:25px;padding-bottom:12px;font-size:1.8rem;font-weight:800;display:flex}.products-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;display:grid}.product-card{background-color:var(--card-bg);border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;justify-content:space-between;padding:24px;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}.product-card:hover{border-color:#cbd5e1;transform:translateY(-5px);box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.product-sku{color:var(--text-light);margin:0 0 8px;font-size:.75rem}.product-name{margin:0 0 4px;font-size:1.125rem;font-weight:600;line-height:1.4}.product-brand{color:var(--text-light);text-transform:uppercase;letter-spacing:.05em;margin:0 0 16px;font-size:.875rem}.product-price{color:var(--success);margin:0 0 12px;font-size:1.75rem;font-weight:700}.stock-badge{border-radius:9999px;margin-bottom:20px;padding:4px 12px;font-size:.75rem;font-weight:700;display:inline-block}.stock-ok{color:#065f46;background-color:#d1fae5}.stock-out{color:#991b1b;background-color:#fee2e2}.btn-add{cursor:pointer;border:none;border-radius:10px;width:100%;padding:14px;font-size:1rem;font-weight:600;transition:all .2s}.btn-active{background-color:var(--primary);color:#fff}.btn-active:hover{background-color:var(--primary-hover)}.btn-disabled{color:#94a3b8;cursor:not-allowed;background-color:#e2e8f0}.footer{color:#94a3b8;text-align:center;background-color:#0f172a;margin-top:40px;padding:60px 20px}.footer h2{color:#fff;margin:0 0 10px}.cart-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9998;background-color:#0f172a66;width:100vw;height:100vh;position:fixed;top:0;left:0}.cart-panel{background-color:var(--card-bg);z-index:9999;flex-direction:column;width:100%;max-width:420px;height:100vh;display:flex;position:fixed;top:0;right:0;box-shadow:-10px 0 25px #0000001a}
