@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&family=Space+Grotesk:wght@500;700&display=swap";
:root{--font-main:"Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-display:"Space Grotesk", var(--font-main);--bg-app:#090d16;--bg-surface:#0f172a;--bg-surface-elevated:#1e293b;--bg-card:#0f172abf;--bg-card-hover:#1e293bd9;--bg-glass:#0f172aa6;--border-subtle:#ffffff14;--border-focus:#6366f180;--text-main:#f8fafc;--text-muted:#94a3b8;--text-subtle:#64748b;--accent-primary:#6366f1;--accent-primary-hover:#4f46e5;--accent-gradient:none;--accent-glow:#6366f140;--price-bar-bg:#090d16eb;--price-bar-text:#fff;--sale-badge-bg:#ef4444;--whatsapp-color:#22c55e;--whatsapp-hover:#16a34a;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-full:9999px;--shadow-sm:0 2px 8px #0000004d;--shadow-card:0 10px 30px -10px #00000080;--shadow-glow:0 0 25px #0003;--transition-fast:.18s cubic-bezier(.4, 0, .2, 1);--transition-smooth:.28s cubic-bezier(.4, 0, .2, 1)}[data-theme=light]{--bg-app:#f8fafc;--bg-surface:#fff;--bg-surface-elevated:#f1f5f9;--bg-card:#fff;--bg-card-hover:#fff;--bg-glass:#ffffffe6;--border-subtle:#00000014;--border-focus:#6366f166;--text-main:#0f172a;--text-muted:#475569;--text-subtle:#94a3b8;--price-bar-bg:#fffffff5;--price-bar-text:#0f172a;--shadow-card:0 10px 25px -5px #00000012, 0 8px 10px -6px #00000008}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-main);background-color:var(--bg-app);color:var(--text-main);scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{flex-direction:column;min-height:100vh;display:flex;overflow-x:hidden}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;outline:none;font-family:inherit}input,select,textarea{color:inherit;outline:none;font-family:inherit}img{max-width:100%;height:auto;display:block}.app-container{width:100%;max-width:1320px;margin:0 auto;padding:0 16px}@media (min-width:768px){.app-container{padding:0 24px}}.app-header{z-index:50;background:var(--bg-glass);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border-subtle);transition:var(--transition-fast);position:sticky;top:0}.app-header-inner{justify-content:space-between;align-items:center;height:68px;display:flex}.brand-logo{font-family:var(--font-display);letter-spacing:-.5px;color:var(--text-main);align-items:center;gap:12px;text-decoration:none;display:flex}.brand-text-block{flex-direction:column;gap:1px;display:flex}.brand-name{color:#fff;letter-spacing:-.4px;font-size:1.18rem;font-weight:800;line-height:1.15}[data-theme=light] .brand-name{color:#000}.brand-slogan{text-transform:uppercase;letter-spacing:.8px;color:#fff;opacity:.75;font-size:.68rem;font-weight:600;line-height:1}[data-theme=light] .brand-slogan{color:#000;opacity:.75}.brand-logo span{background:0 0!important;-webkit-background-clip:unset!important;background-clip:unset!important;-webkit-text-fill-color:currentColor!important;color:currentColor!important}.brand-icon-wrapper{border-radius:var(--radius-md);width:38px;height:38px;transition:transform var(--transition-fast);border:1px solid #fff3;justify-content:center;align-items:center;display:flex;box-shadow:0 2px 8px #00000040;color:#000!important;background:#fff!important}[data-theme=light] .brand-icon-wrapper{border:1px solid #0003;box-shadow:0 2px 8px #0000001f;color:#fff!important;background:#000!important}.brand-logo:hover .brand-icon-wrapper{transform:scale(1.05)}.catalog-toolbar{flex-direction:column;gap:16px;margin:20px 0 28px;display:flex}.search-input-wrapper{width:100%;position:relative}.search-icon{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-input{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);width:100%;height:48px;color:var(--text-main);transition:var(--transition-fast);padding:0 42px 0 46px;font-size:.95rem}.search-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-glow);background:var(--bg-surface-elevated)}.search-clear-btn{color:var(--text-muted);border-radius:var(--radius-full);justify-content:center;align-items:center;padding:6px;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.search-clear-btn:hover{color:var(--text-main)}.toolbar-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.results-counter{color:var(--text-muted);font-size:.9rem;font-weight:600}.results-counter strong{color:var(--text-main)}.toolbar-actions{align-items:center;gap:10px;display:flex}.filter-toggle-btn,.sort-select{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);height:40px;color:var(--text-main);transition:var(--transition-fast);align-items:center;gap:8px;padding:0 14px;font-size:.875rem;font-weight:500;display:flex}.filter-toggle-btn:hover,.sort-select:hover{background:var(--bg-surface-elevated);border-color:var(--accent-primary)}.filter-toggle-btn.has-filters{border-color:var(--accent-primary);color:var(--accent-primary);background:#6366f11f}.filter-badge-count{background:var(--accent-primary);color:#fff;border-radius:var(--radius-full);padding:2px 6px;font-size:.75rem;font-weight:700}.active-filters-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:-6px;display:flex}.filter-pill{background:var(--bg-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-full);color:var(--text-muted);align-items:center;gap:6px;padding:4px 10px;font-size:.8rem;display:inline-flex}.filter-pill button{color:var(--text-subtle);align-items:center;display:flex}.filter-pill button:hover{color:var(--text-main)}.clear-all-pill{color:var(--accent-primary);padding:4px 6px;font-size:.8rem;font-weight:600;text-decoration:underline}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:40px;display:grid}@media (min-width:640px){.product-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px}}@media (min-width:1024px){.product-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:24px}}.product-card{background:var(--bg-card);border:1px solid var(--border-subtle);transition:transform var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast), filter var(--transition-smooth);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:32px;flex-direction:column;padding:10px;display:flex;position:relative;overflow:hidden}.product-card:hover{box-shadow:var(--shadow-card);border-color:#6366f166;transform:translateY(-4px)}.product-card.state-available{filter:none}.product-card.state-incoming{filter:saturate(.5)opacity(.92)}.product-card.state-incoming:hover{filter:saturate(.65)opacity(.98)}.product-card.state-out-of-stock{filter:saturate(0)opacity(.72)}.product-card.state-out-of-stock:hover{filter:saturate(.2)opacity(.85)}.product-card.dimmed:not(.state-incoming){filter:saturate(0)opacity(.72)}.product-card-visual{aspect-ratio:1;-webkit-mask-image:-webkit-radial-gradient(#fff,#000);isolation:isolate;background:radial-gradient(circle at 50% 40%,#1e293bb3 0%,#0f172af2 100%);border:1px solid #ffffff0f;border-radius:26px;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden;mask-image:radial-gradient(#fff,#000)}[data-theme=light] .product-card-visual{background:radial-gradient(circle at 50% 35%,#fff 0%,#f1f5f9 100%);border:1px solid #00000014}.product-card-image-link{border-radius:26px;justify-content:center;align-items:center;width:100%;height:100%;display:flex;overflow:hidden}.product-card-image{object-fit:contain;width:100%;height:100%;transition:transform var(--transition-smooth);border-radius:26px;padding:12px}@media (min-width:769px){.product-card-visual{aspect-ratio:500/520}.product-card-image{padding:10px 12px 20px}.product-card:hover .product-card-image{transform:scale(1.12)}}@media (max-width:768px){.product-card{border-radius:26px;padding:8px}.product-card:hover{box-shadow:none;border-color:var(--border-subtle);transform:none}.product-card-visual{aspect-ratio:1;border-radius:20px}.product-card-image-link{border-radius:20px}.product-card-image{border-radius:20px;padding:2px;transition:none!important;transform:none!important}.product-card:hover .product-card-image{transform:none!important}.card-price-bar-desktop{display:none!important}.card-price-bar-mobile{gap:1px;width:100%;margin-top:4px;margin-bottom:2px;padding:0 2px;flex-direction:column!important;align-items:flex-start!important;display:flex!important}.card-price-bar-mobile .price-main{font-family:var(--font-display);color:var(--text-main);letter-spacing:-.3px;font-size:1.05rem;font-weight:800;line-height:1.15}[data-theme=light] .card-price-bar-mobile .price-main{color:#0f172a}.card-price-bar-mobile .price-offer-group{align-items:center;gap:5px;margin-top:1px;display:flex}.card-price-bar-mobile .price-original-striked{color:var(--text-subtle);font-size:.74rem;font-weight:500;text-decoration:line-through}[data-theme=light] .card-price-bar-mobile .price-original-striked{color:#64748b}.card-price-bar-mobile .price-discount-tag{background:var(--sale-badge-bg);color:#fff;border-radius:4px;padding:1px 4px;font-size:.64rem;font-weight:800}.product-card-body{gap:3px;padding:6px 4px 2px}.card-stock-badge{gap:2px!important;padding:1.5px 5px!important;font-size:.58rem!important;bottom:8px!important;right:8px!important}}.card-color-circles{z-index:10;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;background:0 0;border:none;align-items:center;gap:6px;padding:0;display:flex;position:absolute;top:12px;left:12px}[data-theme=light] .card-color-circles{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:none}.color-dot{border-radius:var(--radius-full);width:14px;height:14px;transition:transform var(--transition-fast), opacity var(--transition-fast);cursor:pointer;border:1px solid #ffffff4d}[data-theme=light] .color-dot{border:1px solid #00000038}.color-dot:hover{transform:scale(1.25)}.color-dot.active{box-shadow:0 0 0 2px var(--accent-primary);border-color:#fff;transform:scale(1.25)}.color-dot.out-of-stock{opacity:.28}.card-top-badges{z-index:10;flex-direction:column;align-items:flex-end;gap:4px;display:flex;position:absolute;top:10px;right:10px}.badge-pill{text-transform:uppercase;letter-spacing:.5px;border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:3px 7px;font-size:.68rem;font-weight:700}.badge-featured{color:#fff;background:linear-gradient(135deg,#f59e0b,#d97706)}.badge-new{color:#fff;background:linear-gradient(135deg,#06b6d4,#0284c7)}.card-stock-badge{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#f8fafc;border-radius:var(--radius-full);background:#090d16d9;border:1px solid #ffffff26;align-items:center;gap:3px;padding:2px 6px;font-size:.62rem;font-weight:700;line-height:1.2;display:flex;position:absolute;bottom:8px;right:8px;box-shadow:0 2px 5px #0003}@media (min-width:769px){.card-stock-badge{bottom:40px}}[data-theme=light] .card-stock-badge{color:#0f172a;background:#fffffff0;border:1px solid #0000001a;box-shadow:0 2px 6px #0000000f}.card-dimmed-overlay-badge{z-index:15;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.dimmed-badge-label{color:#fff;font-family:var(--font-display);letter-spacing:1.5px;border-radius:var(--radius-sm);background:#090d16e0;border:1px solid #fff3;padding:6px 14px;font-size:.85rem;font-weight:800}[data-theme=light] .dimmed-badge-label{color:#0f172a;background:#fffffff5;border:1px solid #00000026;box-shadow:0 4px 16px #0000001a}.card-price-bar{z-index:12;background:var(--price-bar-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background-color var(--transition-fast), border-color var(--transition-fast);border-top:1px solid #ffffff14;border-bottom-right-radius:26px;border-bottom-left-radius:26px;justify-content:space-between;align-items:center;padding:8px 12px;display:flex;position:absolute;bottom:0;left:0;right:0}@media (min-width:769px){.card-price-bar-mobile{display:none!important}}[data-theme=light] .card-price-bar{background:#fffffff5;border-top:1px solid #00000014;border-bottom-right-radius:26px;border-bottom-left-radius:26px;box-shadow:0 -2px 10px #00000008}.price-main{font-family:var(--font-display);color:var(--price-bar-text);letter-spacing:-.3px;font-size:1.05rem;font-weight:800}[data-theme=light] .price-main{color:#0f172a}.price-offer-group{align-items:center;gap:6px;display:flex}.price-original-striked{color:var(--text-subtle);font-size:.78rem;text-decoration:line-through}[data-theme=light] .price-original-striked{color:#64748b}.price-discount-tag{background:var(--sale-badge-bg);color:#fff;border-radius:4px;padding:2px 5px;font-size:.68rem;font-weight:800}.product-card-body{flex-direction:column;flex-grow:1;gap:4px;padding:10px 4px 4px;display:flex}.product-card-title{color:var(--text-main);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:.95rem;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}[data-theme=light] .product-card-title{color:#0f172a}[data-theme=light] .product-card-meta{color:#475569}.product-card-meta{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;overflow:hidden}.infinite-scroll-status{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:30px 0 50px;font-size:.9rem;display:flex}.spinner{border:3px solid #6366f133;border-top-color:var(--accent-primary);border-radius:var(--radius-full);width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.whatsapp-floating-btn{z-index:40;background:var(--whatsapp-color);color:#fff;border-radius:var(--radius-full);transition:var(--transition-fast);align-items:center;gap:10px;padding:12px 18px;font-size:.95rem;font-weight:700;display:flex;position:fixed;bottom:24px;right:20px;box-shadow:0 8px 24px #22c55e59}.whatsapp-floating-btn:hover{background:var(--whatsapp-hover);transform:translateY(-3px)scale(1.02);box-shadow:0 12px 30px #22c55e80}@media (max-width:640px){.whatsapp-floating-btn span{display:none}.whatsapp-floating-btn{padding:14px;bottom:18px;right:16px}}.product-detail-layout{grid-template-columns:1fr;gap:28px;margin:24px 0 60px;display:grid}@media (min-width:900px){.product-detail-layout{grid-template-columns:1.1fr 1fr;gap:48px}}.gallery-main-view{aspect-ratio:1;border:1px solid var(--border-subtle);-webkit-mask-image:-webkit-radial-gradient(#fff,#000);isolation:isolate;background:radial-gradient(circle at 50% 40%,#1e293bcc 0%,#0f172afa 100%);border-radius:30px;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden;mask-image:radial-gradient(#fff,#000)}[data-theme=light] .gallery-main-view{background:radial-gradient(circle at 50% 35%,#fff 0%,#f1f5f9 100%);border:1px solid #00000014;box-shadow:0 8px 24px #0000000a}[data-theme=light] .gallery-thumb{background:#fff;border:2px solid #00000014}[data-theme=light] .gallery-thumb.active{border-color:var(--accent-primary)}.gallery-main-view img{object-fit:contain;border-radius:28px;width:100%;height:100%;padding:24px}@media (max-width:768px){.gallery-main-view{border-radius:24px}.gallery-main-view img{border-radius:24px;padding:16px}}.gallery-thumbs{gap:10px;margin-top:12px;padding-bottom:6px;display:flex;overflow-x:auto}.gallery-thumb{background:var(--bg-surface);cursor:pointer;width:64px;height:64px;transition:var(--transition-fast);border:2px solid #0000;border-radius:14px;flex-shrink:0;overflow:hidden}.gallery-thumb.active{border-color:var(--accent-primary)}.gallery-thumb img{object-fit:contain;border-radius:12px;width:100%;height:100%;padding:4px}.modal-overlay{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000000bf;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);width:100%;max-width:520px;padding:24px;position:relative;box-shadow:0 25px 50px -12px #0009}.modal-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.modal-title{color:var(--text-main);font-size:1.25rem;font-weight:700}.modal-close-btn{color:var(--text-muted);border-radius:var(--radius-full);padding:6px}.modal-close-btn:hover{color:var(--text-main);background:var(--bg-surface-elevated)}.form-group{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.form-label{color:var(--text-muted);font-size:.85rem;font-weight:600}.form-input,.form-select,.form-textarea{background:var(--bg-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);width:100%;color:var(--text-main);padding:10px 14px;font-size:.9rem}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-glow)}.btn-primary{background:var(--accent-primary);color:#fff;border-radius:var(--radius-sm);transition:var(--transition-fast);justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-size:.95rem;font-weight:600;display:inline-flex}.btn-primary:hover{background:var(--accent-primary-hover)}.btn-secondary{background:var(--bg-surface-elevated);border:1px solid var(--border-subtle);color:var(--text-main);border-radius:var(--radius-sm);transition:var(--transition-fast);justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:.9rem;font-weight:500;display:inline-flex}.btn-secondary:hover{background:#ffffff1a}.btn-danger{color:#fff;border-radius:var(--radius-sm);background:#dc2626;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:.9rem;font-weight:600;display:inline-flex}.btn-danger:hover{background:#b91c1c}.app-footer{border-top:1px solid var(--border-subtle);background:var(--bg-surface);margin-top:auto;padding:32px 0 24px}.app-footer-inner{text-align:center;color:var(--text-subtle);flex-direction:column;justify-content:space-between;align-items:center;gap:16px;font-size:.85rem;display:flex}@media (min-width:640px){.app-footer-inner{text-align:left;flex-direction:row}}
