@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Outfit:wght@400;500;600;700;800&display=swap";@import "https://fonts.googleapis.com/icon?family=Material+Icons";.app-header{height:var(--header-height);z-index:var(--z-header);background:var(--bg-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border-default);transition:all var(--transition-base);position:fixed;top:0;left:0;right:0}.app-header.scrolled{background:var(--bg-glass-strong);box-shadow:var(--shadow-md)}.header-inner{align-items:center;gap:var(--space-4);height:100%;padding:0 var(--space-4);max-width:var(--content-max-width);margin:0 auto;display:flex}.header-logo{transition:transform var(--transition-spring);flex-shrink:0;align-items:center;gap:8px;text-decoration:none;display:flex}.header-logo:hover{transform:scale(1.03)}.header-logo-img{width:auto;height:42px;display:block}.logo-icon{color:var(--clr-accent);filter:drop-shadow(0 0 8px var(--clr-accent-glow));font-size:22px;animation:4s ease-in-out infinite float}.logo-text{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--fw-extrabold);letter-spacing:-.5px}.logo-gen{background:var(--gradient-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.logo-gifts{color:var(--text-primary)}.header-search-wrap{max-width:440px;margin-left:var(--space-3);z-index:calc(var(--z-header) + 2);flex:1;position:relative}@media (width>=768px){.header-search-wrap{margin-left:var(--space-6)}}.header-search-bar{align-items:center;width:100%;display:flex;position:relative}.suggestions-backdrop{z-index:calc(var(--z-header) + 1);background:0 0;position:fixed;inset:0}.search-suggestions-dropdown{background:var(--bg-glass-strong);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border:1px solid var(--border-strong);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl);z-index:calc(var(--z-header) + 2);flex-direction:column;gap:4px;max-height:320px;padding:8px;display:flex;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow-y:auto}.suggestion-item{align-items:center;gap:var(--space-3);border-radius:var(--border-radius);cursor:pointer;transition:all var(--transition-fast);padding:10px 14px;display:flex}.suggestion-item:hover{background:var(--bg-elevated)}.suggestion-emoji{flex-shrink:0;font-size:20px}.suggestion-details{flex-direction:column;min-width:0;display:flex}.suggestion-name{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.suggestion-cat{font-size:var(--text-xs);color:var(--text-muted);text-transform:capitalize}.search-icon-static{color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast);flex-shrink:0;position:absolute;left:14px}.header-search-input{background:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--border-radius-full);width:100%;color:var(--text-primary);font-size:var(--text-sm);transition:all var(--transition-base);min-height:2.75rem;padding:.625rem 1rem .625rem 2.375rem}.header-search-input::placeholder{color:var(--text-muted)}.header-search-input:focus{border-color:var(--clr-primary);background:var(--bg-input-focus);box-shadow:0 0 0 3px var(--clr-primary-glow);outline:none}.header-search-bar:focus-within .search-icon-static{color:var(--clr-primary)}.header-actions{align-items:center;gap:var(--space-3);margin-left:auto;display:flex}.icon-btn{border-radius:var(--border-radius-full);width:44px;height:44px;color:var(--text-secondary);background:var(--bg-glass);border:1px solid var(--border-default);transition:all var(--transition-base);box-shadow:var(--shadow-sm);flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.icon-btn:hover{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border-strong);transform:translateY(-1px)}.icon-btn:active{transform:scale(.94)}.cart-badge,.wishlist-badge{background:var(--gradient-primary);color:#fff;min-width:20px;height:20px;font-size:10px;font-weight:var(--fw-bold);border-radius:var(--border-radius-full);animation:badgePop var(--transition-spring) forwards;box-shadow:0 4px 12px var(--clr-primary-glow);border:2px solid var(--bg-surface);justify-content:center;align-items:center;padding:0 4px;display:flex;position:absolute;top:-2px;right:-2px}.wishlist-badge{background:var(--gradient-accent);box-shadow:0 4px 12px var(--clr-accent-glow)}.user-menu-wrap{position:relative}.user-avatar-btn{border-radius:var(--border-radius-full);border:1px solid var(--border-default);background:var(--bg-input);transition:all var(--transition-base);cursor:pointer;align-items:center;gap:8px;min-height:44px;padding:4px 12px 4px 4px;display:flex}.user-avatar-btn:hover{border-color:var(--clr-primary);background:var(--bg-input-focus);box-shadow:var(--shadow-md)}.user-avatar{background:var(--gradient-primary);color:#fff;width:34px;height:34px;font-size:var(--text-xs);font-weight:var(--fw-bold);box-shadow:0 2px 8px var(--clr-primary-glow);border-radius:50%;justify-content:center;align-items:center;display:flex}.chevron{color:var(--text-muted);transition:transform var(--transition-fast)}.chevron.open{transform:rotate(180deg)}.user-dropdown{background:var(--bg-glass-strong);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border:1px solid var(--border-default);border-radius:var(--border-radius-lg);min-width:240px;box-shadow:var(--shadow-xl);z-index:var(--z-dropdown);animation:.22s cubic-bezier(.16,1,.3,1) forwards scaleIn;position:absolute;top:calc(100% + 12px);right:0;overflow:hidden}.user-dropdown-header{padding:var(--space-4);border-bottom:1px solid var(--border-subtle);background:#ffffff05}.user-dropdown-name{font-weight:var(--fw-semibold);font-size:var(--text-base);color:var(--text-primary);display:block}.user-dropdown-email{font-size:var(--text-xs);color:var(--text-muted);margin-top:2px;display:block}.dropdown-item{align-items:center;gap:var(--space-3);padding:10px var(--space-4);font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--text-secondary);width:100%;transition:all var(--transition-fast);text-decoration:none;display:flex}.dropdown-item:hover{background:var(--bg-elevated);color:var(--text-primary)}.dropdown-item.danger{color:var(--clr-error)}.dropdown-item.danger:hover{background:var(--clr-error-bg)}.user-dropdown .divider{background:var(--border-subtle)!important;border:none!important;height:1px!important;margin:6px 0!important}.mobile-search-overlay{z-index:calc(var(--z-header) + 10);background:var(--bg-glass-strong);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:var(--space-3) var(--space-4);align-items:center;gap:var(--space-3);animation:.2s forwards fadeIn;display:flex;position:fixed;inset:0}.mobile-search-form{align-items:center;gap:var(--space-3);width:100%;display:flex}.mobile-search-input-wrap{align-items:center;gap:var(--space-2);background:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--border-radius-full);padding:0 var(--space-3);flex:1;min-height:46px;display:flex;position:relative}.mobile-search-input-wrap:focus-within{border-color:var(--clr-primary);box-shadow:0 0 0 3px var(--clr-primary-glow)}.mobile-search-input{color:var(--text-primary);font-size:var(--text-base);background:0 0;border:none;flex:1;padding:10px 0}.mobile-search-input::placeholder{color:var(--text-muted)}.mobile-only{display:flex}.desktop-only{display:none}@media (width>=768px){.mobile-only{display:none}.desktop-only{display:flex}}.wishlist-btn{color:var(--text-primary)}.divider{border:0;border-top:1px solid var(--border-subtle);margin:4px 0}.header-backdrop{z-index:90;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0003;position:fixed;inset:0}@media (width<=480px){.user-dropdown{min-width:200px!important}.user-dropdown .dropdown-item{padding:8px var(--space-3)!important;font-size:var(--text-xs)!important;gap:var(--space-2)!important}.user-dropdown-header{padding:var(--space-3)!important}.user-dropdown-name{font-size:var(--text-sm)!important}}.bottom-nav{z-index:var(--z-bottom-nav);height:calc(var(--bottom-nav-height) + var(--safe-bottom));padding-bottom:var(--safe-bottom);background:var(--bg-glass-strong);-webkit-backdrop-filter:blur(24px);border-top:1px solid var(--border-subtle);align-items:stretch;display:flex;position:fixed;bottom:0;left:0;right:0}@media (width>=768px){.bottom-nav{display:none}}.bottom-nav-item{color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--fw-medium);transition:color var(--transition-fast);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;padding:8px 4px;text-decoration:none;display:flex;position:relative}.bottom-nav-item:active{transform:scale(.92)}.bottom-nav-item.active{color:var(--clr-primary-light)}.bottom-nav-icon-wrap{justify-content:center;align-items:center;width:26px;height:26px;display:flex;position:relative}.bottom-nav-item.active .bottom-nav-icon-wrap:before{content:"";border-radius:var(--border-radius-full);background:var(--clr-primary-glow);animation:scaleIn var(--transition-spring) forwards;position:absolute;inset:-6px}.bottom-nav-label{font-size:10px;line-height:1}.bottom-nav-badge{background:var(--clr-primary);color:#fff;min-width:16px;height:16px;font-size:9px;font-weight:var(--fw-bold);border-radius:var(--border-radius-full);justify-content:center;align-items:center;padding:0 3px;display:flex;position:absolute;top:-6px;right:-8px}.cart-drawer{background:var(--bg-glass-strong);-webkit-backdrop-filter:blur(24px);border-left:1px solid var(--border-default);width:min(100vw,420px);z-index:var(--z-modal);box-shadow:var(--shadow-xl);flex-direction:column;animation:.35s cubic-bezier(.16,1,.3,1) forwards slideInRight;display:flex;position:fixed;top:0;bottom:0;right:0}.cart-drawer-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-subtle);background:#ffffff03;flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.cart-header-title{align-items:center;gap:var(--space-2);font-size:var(--text-lg);font-weight:var(--fw-bold);color:var(--text-primary);display:flex}.cart-header-actions{align-items:center;gap:var(--space-2);display:flex}.clear-btn{font-size:var(--text-xs);color:var(--clr-error);font-weight:var(--fw-semibold);border-radius:var(--border-radius-full);background:var(--clr-error-bg);cursor:pointer;transition:all var(--transition-base);border:1px solid #f43f5e33;padding:.375rem .75rem}.clear-btn:hover{background:#f43f5e26;transform:scale(1.02)}.cart-savings-banner{align-items:center;gap:var(--space-2);padding:.625rem var(--space-5);font-size:var(--text-sm);color:var(--clr-success);background:#10b9810f;border-bottom:1px solid #10b9811f;flex-shrink:0;display:flex}.cart-savings-banner strong{font-weight:var(--fw-bold)}.cart-items{padding:var(--space-4) var(--space-5);gap:var(--space-4);flex-direction:column;flex:1;display:flex;overflow-y:auto}.cart-item{gap:var(--space-3);padding:var(--space-4);background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--border-radius-lg);transition:all var(--transition-base);animation:.25s forwards fadeInUp;display:flex}.cart-item:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.cart-item-logo{border-radius:var(--border-radius);background:var(--bg-elevated);border:1px solid var(--border-subtle);flex-shrink:0;justify-content:center;align-items:center;width:54px;height:54px;font-size:26px;display:flex;overflow:hidden}.cart-item-logo img{object-fit:contain;width:100%;height:100%;padding:4px}.cart-item-details{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.cart-item-name{font-weight:var(--fw-semibold);font-size:var(--text-base);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cart-item-meta{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.cart-item-price{font-weight:var(--fw-bold);color:var(--text-primary);font-size:var(--text-md)}.cart-item-gift{font-size:var(--text-xs);color:var(--text-accent);font-weight:var(--fw-medium);align-items:center;gap:4px;display:flex}.cart-item-controls{justify-content:space-between;align-items:center;margin-top:4px;display:flex}.qty-control{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--border-radius-full);align-items:center;gap:2px;padding:.1875rem;display:flex}.qty-btn{width:1.75rem;height:1.75rem;color:var(--text-secondary);transition:all var(--transition-fast);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.qty-btn:hover{background:var(--bg-card-hover);color:var(--text-primary)}.qty-btn:active{transform:scale(.88)}.qty-value{text-align:center;min-width:28px;font-weight:var(--fw-bold);font-size:var(--text-sm);color:var(--text-primary)}.remove-btn{width:2rem;height:2rem;color:var(--text-muted);transition:all var(--transition-fast);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.remove-btn:hover{background:var(--clr-error-bg);color:var(--clr-error)}.cart-drawer-footer{padding:var(--space-5);border-top:1px solid var(--border-default);background:var(--bg-card);gap:var(--space-4);flex-direction:column;flex-shrink:0;display:flex}.cart-totals{flex-direction:column;gap:8px;display:flex}.cart-total-row{font-size:var(--text-sm);color:var(--text-secondary);justify-content:space-between;align-items:center;display:flex}.cart-original-total{color:var(--text-muted);text-decoration:line-through}.cart-total-row.discount{color:var(--clr-success)}.cart-total-row.total{font-size:var(--text-base);font-weight:var(--fw-semibold);color:var(--text-primary);border-top:1px solid var(--border-default);margin-top:4px;padding-top:.625rem}.cart-total-row.total strong{font-size:var(--text-xl);color:var(--clr-primary)}.confirm-overlay{background:var(--bg-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:100%;height:100%;z-index:var(--z-modal);padding:var(--space-4);justify-content:center;align-items:center;animation:.2s ease-out forwards confirmFadeIn;display:flex;position:fixed;top:0;left:0}.confirm-card{background:var(--bg-glass-strong);border:1px solid var(--border-default);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl);padding:var(--space-6);gap:var(--space-4);width:100%;max-width:440px;color:var(--text-primary);font-family:var(--font-sans);flex-direction:column;display:flex;position:relative}.confirm-close{top:var(--space-4);right:var(--space-4);color:var(--text-muted);cursor:pointer;border-radius:var(--border-radius-sm);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex;position:absolute}.confirm-close:hover{color:var(--text-primary);background:#ffffff0d}.confirm-header{align-items:center;gap:var(--space-4);display:flex}.confirm-icon-wrap{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.confirm-icon-wrap.destructive{background:var(--clr-error-bg);color:var(--clr-error)}.confirm-icon-wrap.info{color:var(--clr-info);background:#3b82f61a}.confirm-title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--fw-bold);margin:0}.confirm-message{font-size:var(--text-base);color:var(--text-secondary);line-height:var(--lh-snug);margin:0}.confirm-actions{justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-2);display:flex}@keyframes confirmFadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.app-footer{background:var(--bg-surface);border-top:1px solid var(--border-default);color:var(--text-secondary);padding:var(--space-12) 0 var(--space-6);margin-top:var(--space-10);box-shadow:var(--shadow-sm);position:relative}.footer-grid{gap:var(--space-8);margin-bottom:var(--space-10);grid-template-columns:1.5fr 1fr 1.5fr;display:grid}@media (width<=960px){.footer-grid{gap:var(--space-8);grid-template-columns:1fr}}.footer-brand{gap:var(--space-4);flex-direction:column;display:flex}.footer-logo{transition:transform var(--transition-spring);align-items:center;gap:8px;text-decoration:none;display:flex}.footer-logo:hover{transform:scale(1.03)}.footer-logo-img{width:auto;height:44px;display:block}.footer-logo .logo-icon{color:var(--clr-accent);filter:drop-shadow(0 0 8px var(--clr-accent-glow));font-size:22px;animation:4s ease-in-out infinite float}.footer-logo .logo-text{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--fw-extrabold);letter-spacing:-.5px}.footer-logo .logo-nx{color:var(--text-primary)}.footer-logo .logo-gen{background:var(--gradient-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.footer-logo .logo-gifts{color:var(--text-primary)}.footer-brand .tagline{font-size:var(--text-sm);color:var(--text-muted);line-height:1.6}.footer-socials{gap:var(--space-4);margin-top:var(--space-2);display:flex}.social-link{background:var(--bg-input);border:1px solid var(--border-default);width:44px;height:44px;color:var(--text-secondary);transition:all var(--transition-base);border-radius:50%;justify-content:center;align-items:center;display:flex}.social-link:hover{background:var(--clr-primary-glow);border-color:var(--clr-primary);color:var(--clr-primary);transform:translateY(-3px)scale(1.05)}.footer-links h3,.footer-contact h3{color:var(--text-primary);font-size:var(--text-base);font-weight:var(--fw-bold);margin-bottom:var(--space-5);font-family:var(--font-display);letter-spacing:.05em;text-transform:uppercase}.footer-links ul{gap:var(--space-3);flex-direction:column;list-style:none;display:flex}.footer-links a{color:var(--text-secondary);font-size:var(--text-sm);transition:color var(--transition-fast);min-height:28px;padding:4px 0;text-decoration:none;display:inline-block}.footer-links a:hover{color:var(--clr-primary)}.contact-list{gap:var(--space-4);flex-direction:column;list-style:none;display:flex}.contact-item{align-items:flex-start;gap:var(--space-3);font-size:var(--text-sm);display:flex}.contact-item .contact-icon{color:var(--clr-primary);flex-shrink:0;margin-top:2px}.contact-item span{color:var(--text-secondary);line-height:1.5}.footer-bottom{border-top:1px solid var(--border-default);padding-top:var(--space-6);font-size:var(--text-sm);color:var(--text-muted);justify-content:space-between;align-items:center;display:flex}@media (width<=768px){.footer-bottom{gap:var(--space-4);text-align:center;flex-direction:column}}.footer-legal{align-items:center;gap:var(--space-2);display:flex}.footer-legal a{color:var(--text-muted);transition:color var(--transition-fast);padding:4px;text-decoration:none}.footer-legal a:hover{color:var(--text-primary)}.footer-legal .dot{color:var(--border-strong)}:root{--clr-primary:#047857;--clr-primary-light:#10b981;--clr-primary-dark:#064e3b;--clr-primary-glow:#04785726;--clr-accent:#b45309;--clr-accent-light:#d97706;--clr-accent-dark:#78350f;--clr-accent-glow:#b4530926;--clr-success:#047857;--clr-success-bg:#04785714;--clr-error:#be123c;--clr-error-bg:#be123c14;--clr-warning:#b45309;--clr-info:#0369a1;--clr-info-bg:#0369a114;--clr-focus-ring:#04785773;--gradient-primary:linear-gradient(135deg, #047857 0%, #10b981 100%);--gradient-accent:linear-gradient(135deg, #b45309 0%, #d97706 100%);--gradient-glass:linear-gradient(135deg, #fffc 0%, #ffffff73 100%);--gradient-dark:linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);--gradient-glow:linear-gradient(135deg, #0478571a 0%, #b453091a 100%);--bg-base:#f6f8fa;--bg-surface:#fff;--bg-elevated:#eff2f5;--bg-card:#fff;--bg-card-hover:#f8fafc;--bg-overlay:#0f172a80;--bg-glass:#ffffffbf;--bg-glass-strong:#ffffffe6;--bg-input:#eff2f5;--bg-input-focus:#5811e008;--text-primary:#0f172a;--text-secondary:#334155;--text-muted:#5f6c80;--text-disabled:#8e9ba8;--text-inverse:#fff;--text-accent:#ea580c;--text-link:#5811e0;--border-subtle:#eff2f5;--border-default:#e2e8f0;--border-strong:#cbd5e1;--border-accent:#5811e033;--border-radius-sm:6px;--border-radius:12px;--border-radius-lg:18px;--border-radius-xl:24px;--border-radius-2xl:32px;--border-radius-full:9999px;--space-1:clamp(.2rem, .5vw, .25rem);--space-2:clamp(.4rem, 1vw, .5rem);--space-3:clamp(.6rem, 1.5vw, .75rem);--space-4:clamp(.8rem, 2vw, 1rem);--space-5:clamp(1rem, 2.5vw, 1.25rem);--space-6:clamp(1.2rem, 3vw, 1.5rem);--space-8:clamp(1.6rem, 4vw, 2rem);--space-10:clamp(2rem, 5vw, 2.5rem);--space-12:clamp(2.4rem, 6vw, 3rem);--space-16:clamp(3.2rem, 8vw, 4rem);--space-20:clamp(4rem, 10vw, 5rem);--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display:"Outfit", "Inter", sans-serif;--text-xs:clamp(.65rem, 1vw, .7rem);--text-sm:clamp(.75rem, 1.2vw, .8rem);--text-base:clamp(.85rem, 1.4vw, .9rem);--text-md:clamp(.9rem, 1.6vw, 1rem);--text-lg:clamp(1rem, 1.8vw, 1.1rem);--text-xl:clamp(1.1rem, 2.1vw, 1.25rem);--text-2xl:clamp(1.25rem, 2.5vw, 1.5rem);--text-3xl:clamp(1.5rem, 3.2vw, 1.9rem);--text-4xl:clamp(1.9rem, 4vw, 2.5rem);--fw-normal:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-extrabold:800;--lh-tight:1.2;--lh-snug:1.4;--lh-normal:1.6;--shadow-sm:0 1px 3px 0 #0000000d;--shadow-md:0 4px 12px -2px #0f172a0f, 0 2px 6px -1px #0f172a0a;--shadow-lg:0 10px 25px -5px #0f172a14, 0 8px 16px -6px #0f172a0a;--shadow-xl:0 25px 50px -12px #0f172a1f, 0 12px 24px -8px #0f172a14;--shadow-glow:0 8px 24px -4px #5811e026;--header-height:4.5rem;--bottom-nav-height:3.75rem;--content-max-width:1280px;--safe-bottom:env(safe-area-inset-bottom,0px);--z-back:-10;--z-base:1;--z-raised:10;--z-header:100;--z-bottom-nav:110;--z-dropdown:200;--z-overlay:900;--z-modal:1000;--z-toast:9999;--transition-fast:.15s ease;--transition-base:.25s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s cubic-bezier(.4, 0, .2, 1);--transition-spring:.35s cubic-bezier(.34, 1.56, .64, 1)}@media (prefers-color-scheme:dark){:root{--clr-primary:#10b981;--clr-primary-light:#34d399;--clr-primary-dark:#047857;--clr-primary-glow:#10b98133;--clr-accent:#f59e0b;--clr-accent-light:#fbbf24;--clr-accent-dark:#b45309;--clr-accent-glow:#f59e0b33;--clr-success:#10b981;--clr-success-bg:#10b9811f;--clr-error:#f43f5e;--clr-error-bg:#f43f5e1f;--clr-warning:#f59e0b;--clr-info:#38bdf8;--clr-info-bg:#38bdf81f;--clr-focus-ring:#10b9818c;--gradient-primary:linear-gradient(135deg, #10b981 0%, #34d399 100%);--gradient-accent:linear-gradient(135deg, #f59e0b 0%, #fbbf24 100%);--gradient-glass:linear-gradient(135deg, #14151ccc 0%, #1e1f2873 100%);--gradient-dark:linear-gradient(180deg, #0d0e12 0%, #16171d 100%);--gradient-glow:linear-gradient(135deg, #10b9811f 0%, #f59e0b1f 100%);--bg-base:#0a0b0d;--bg-surface:#121318;--bg-elevated:#1c1e24;--bg-card:#121318;--bg-card-hover:#1a1c22;--bg-overlay:#020408b3;--bg-glass:#121318bf;--bg-glass-strong:#121318eb;--bg-input:#1c1e24;--bg-input-focus:#8b5cf60d;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#8291a6;--text-disabled:#526073;--text-inverse:#0a0b0d;--text-accent:#f97316;--text-link:#a78bfa;--border-subtle:#181a20;--border-default:#272935;--border-strong:#3e4153;--border-accent:#8b5cf659;--shadow-sm:0 1px 2px 0 #0000004d;--shadow-md:0 4px 12px -2px #0006, 0 2px 6px -1px #0000004d;--shadow-lg:0 12px 30px -5px #00000080, 0 8px 16px -6px #0006;--shadow-xl:0 30px 60px -15px #000000b3, 0 15px 30px -10px #00000080;--shadow-glow:0 8px 24px -4px #8b5cf64d}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes pulse{0%{transform:scale(1);box-shadow:0 0 #f43f5e66}70%{transform:scale(1.05);box-shadow:0 0 0 10px #f43f5e00}to{transform:scale(1);box-shadow:0 0 #f43f5e00}}@keyframes bounceIn{0%{opacity:0;transform:scale(.8)}60%{opacity:1;transform:scale(1.05)}80%{transform:scale(.97)}to{transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes gradientShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes badgePop{0%{transform:scale(0)}70%{transform:scale(1.3)}to{transform:scale(1)}}@keyframes checkmark{0%{stroke-dashoffset:100px}to{stroke-dashoffset:0}}@keyframes ripple{to{opacity:0;transform:scale(4)}}.anim-fade-in{animation:fadeIn var(--transition-base) forwards}.anim-fade-in-up{animation:.35s forwards fadeInUp}.anim-scale-in{animation:scaleIn var(--transition-spring) forwards}.anim-slide-in-right{animation:slideInRight var(--transition-slow) ease forwards}.anim-slide-in-up{animation:slideInUp var(--transition-slow) ease forwards}.anim-float{animation:3s ease-in-out infinite float}.anim-spin{animation:.7s linear infinite spin}.anim-bounce-in{animation:bounceIn var(--transition-spring) forwards}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}:focus-visible{box-shadow:0 0 0 3px var(--clr-focus-ring);outline:none}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;font-size:14px}body{font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--fw-normal);line-height:var(--lh-normal);color:var(--text-primary);background-color:var(--bg-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh;overflow-x:hidden}#root{flex-direction:column;min-height:100dvh;display:flex}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--fw-bold);line-height:var(--lh-tight);color:var(--text-primary)}a{color:var(--text-link);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--clr-primary-light)}img,video{max-width:100%;display:block}button{font-family:var(--font-sans);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:0 0;border:none;outline:none}input,textarea,select{font-family:var(--font-sans);font-size:var(--text-base);outline:none}input[type=password]::-ms-reveal{display:none}input[type=password]::-ms-clear{display:none}.app-shell{flex-direction:column;min-height:100dvh;display:flex}.page-content{padding-top:var(--header-height);padding-bottom:calc(var(--bottom-nav-height) + var(--safe-bottom));flex:1}@media (width>=768px){.page-content{padding-bottom:0}}.container{width:100%;max-width:var(--content-max-width);padding:0 var(--space-4);margin:0 auto}.skeleton{background:linear-gradient(90deg, var(--bg-card) 25%, var(--bg-card-hover) 50%, var(--bg-card) 75%);border-radius:var(--border-radius);background-size:200% 100%;animation:1.4s infinite shimmer}.glass-card{background:var(--bg-glass);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-subtle);border-radius:var(--border-radius-lg)}.gradient-text{background:linear-gradient(135deg, var(--clr-primary-light), var(--clr-accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:.75rem var(--space-6);border-radius:var(--border-radius-full);font-size:var(--text-base);font-weight:var(--fw-semibold);transition:all var(--transition-base);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;min-height:2.75rem;box-shadow:var(--shadow-sm);line-height:1;display:inline-flex;position:relative;overflow:hidden}.btn:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-glow)}.btn-primary:hover{transform:translateY(-2px)scale(1.02);box-shadow:0 12px 28px -4px #5811e040}.btn-primary:active{transform:translateY(0)scale(1)}.btn-accent{background:var(--gradient-accent);color:#000;box-shadow:0 4px 16px #ea580c33}.btn-accent:hover{transform:translateY(-2px)scale(1.02);box-shadow:0 12px 28px -4px #ea580c59}.btn-accent:active{transform:translateY(0)scale(1)}.btn-ghost{background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border-default)}.btn-ghost:hover{background:var(--bg-surface);border-color:var(--border-strong);transform:translateY(-1px)}.btn-ghost:active{transform:translateY(0)}.btn-danger{background:var(--clr-error-bg);color:var(--clr-error);border:1px solid #be123c4d}.btn-danger:hover{border-color:var(--clr-error);background:#be123c26;transform:translateY(-1px)}.btn-sm{padding:.5rem var(--space-4);font-size:var(--text-sm);min-height:2.25rem}.btn-lg{padding:1rem var(--space-8);font-size:var(--text-lg);min-height:3.25rem}.btn-full{width:100%}.form-group{gap:var(--space-2);flex-direction:column;display:flex}.form-label{font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--text-secondary)}.form-input{background:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--border-radius);width:100%;color:var(--text-primary);padding:.75rem var(--space-4);font-size:var(--text-base);transition:all var(--transition-base);min-height:2.75rem}.form-input::placeholder{color:var(--text-muted)}.form-input:focus{border-color:var(--clr-primary);background:var(--bg-input-focus);box-shadow:0 0 0 3px var(--clr-primary-glow)}.form-input.error{border-color:var(--clr-error)}select.form-input{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;cursor:pointer}select.form-input option{background-color:var(--bg-surface);color:var(--text-primary)}.form-error{font-size:var(--text-xs);color:var(--clr-error)}.badge{border-radius:var(--border-radius-full);font-size:var(--text-xs);font-weight:var(--fw-semibold);white-space:nowrap;align-items:center;padding:3px 10px;line-height:1;display:inline-flex}.badge-primary{background:var(--clr-primary-glow);color:var(--clr-primary-light);border:1px solid var(--border-accent)}.badge-accent{color:var(--clr-accent);background:#f59e0b26;border:1px solid #f59e0b4d}.badge-success{background:var(--clr-success-bg);color:var(--clr-success)}.badge-error{background:var(--clr-error-bg);color:var(--clr-error)}.badge-muted{color:var(--text-muted);background:#ffffff0f}.divider{background:var(--border-subtle);height:1px;margin:var(--space-4) 0;border:none}.backdrop{background:var(--bg-overlay);z-index:var(--z-overlay);animation:fadeIn var(--transition-base) forwards;position:fixed;inset:0}.empty-state{justify-content:center;align-items:center;gap:var(--space-4);padding:var(--space-16) var(--space-6);text-align:center;color:var(--text-muted);flex-direction:column;display:flex}.empty-state .empty-icon{opacity:.5;font-size:48px}.empty-state-img{object-fit:contain;width:180px;height:180px;margin-bottom:var(--space-2);filter:drop-shadow(0 8px 16px #00000026)}.empty-state h3{font-size:var(--text-xl);color:var(--text-secondary)}.empty-state p{font-size:var(--text-sm);max-width:280px}.interactive{cursor:pointer;transition:transform var(--transition-fast), box-shadow var(--transition-fast);-webkit-tap-highlight-color:transparent;touch-action:manipulation}.interactive:active{transform:scale(.97)}.scroll-x{-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;margin-top:-6px;margin-bottom:-6px;padding-top:6px;padding-bottom:6px;overflow-x:auto}.scroll-x::-webkit-scrollbar{display:none}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.flex-1{flex:1}.section{padding:var(--space-6) 0}.page-header{padding:var(--space-5) var(--space-4) var(--space-3)}.page-header h1{font-size:var(--text-2xl);font-weight:var(--fw-extrabold)}.page-header p{font-size:var(--text-sm);color:var(--text-secondary);margin-top:var(--space-1)}.price{font-weight:var(--fw-bold);color:var(--text-primary)}.price-original{font-size:var(--text-xs);color:var(--text-muted);text-decoration:line-through}.price-discount{font-size:var(--text-xs);color:var(--clr-success);font-weight:var(--fw-semibold)}.skip-link{top:-100px;left:var(--space-4);z-index:9999;padding:var(--space-3) var(--space-5);background:var(--clr-primary);color:#fff;font-weight:var(--fw-semibold);border-radius:0 0 var(--border-radius) var(--border-radius);transition:top var(--transition-fast);text-decoration:none;position:absolute}.skip-link:focus{outline:3px solid var(--clr-accent);outline-offset:2px;top:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.required-mark:after{content:" *";color:var(--clr-error);font-weight:var(--fw-bold)}.page-breadcrumb{padding:var(--space-2) var(--space-4) 0 var(--space-4);max-width:var(--content-max-width);margin:0 auto}.page-breadcrumb ol{align-items:center;gap:var(--space-1);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.page-breadcrumb li{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--text-muted);display:flex}.page-breadcrumb li:last-child{color:var(--text-secondary);font-weight:var(--fw-medium);pointer-events:none}.page-breadcrumb a{color:var(--text-muted);transition:color var(--transition-fast);border-radius:4px;padding:2px 4px;text-decoration:none}.page-breadcrumb a:hover{color:var(--clr-primary-light)}.page-breadcrumb a:focus-visible{outline:2px solid var(--clr-primary);outline-offset:2px}.page-breadcrumb .crumb-sep{color:var(--border-strong);-webkit-user-select:none;user-select:none;font-size:10px}.status-badge{border-radius:var(--border-radius-full);font-size:var(--text-xs);font-weight:var(--fw-semibold);white-space:nowrap;align-items:center;gap:4px;padding:4px 10px;display:inline-flex}.status-info{background:var(--clr-info-bg);color:var(--clr-info)}.status-warning{color:var(--clr-warning);background:#f59e0b1f}.status-primary{background:var(--clr-primary-glow);color:var(--clr-primary-light)}.status-success{background:var(--clr-success-bg);color:var(--clr-success)}.status-error{background:var(--clr-error-bg);color:var(--clr-error)}.status-muted{color:var(--text-muted);background:#ffffff0f}.form-error[role=alert]{font-size:var(--text-xs);color:var(--clr-error);align-items:center;gap:4px;margin-top:4px;display:flex}.input-help-text{font-size:var(--text-xs);color:var(--text-muted);margin-top:4px}[aria-live]{outline:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.logo-text-stacked{flex-direction:column;line-height:.95;display:flex}.logo-brand{font-family:var(--font-display);font-size:23px;font-weight:var(--fw-extrabold);letter-spacing:-.5px}.logo-nx{color:var(--text-primary)}.logo-gen{background:var(--gradient-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.logo-tagline{font-family:var(--font-sans);font-size:9px;font-weight:var(--fw-bold);letter-spacing:.25em;color:var(--clr-primary-light);text-transform:uppercase;margin-top:1px}@media (width<=768px){input,textarea,select,.form-input,.mobile-search-input{font-size:16px!important}}select.form-input{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.error-boundary-container{min-height:80vh;padding:var(--space-6);background:var(--bg-base);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.error-boundary-bg-orbs{pointer-events:none;z-index:0;position:absolute;inset:0}.error-boundary-bg-orbs .orb{border-radius:var(--border-radius-full);filter:blur(120px);opacity:.15;position:absolute}.error-boundary-bg-orbs .orb-1{background:var(--clr-primary);width:400px;height:400px;top:10%;left:15%}.error-boundary-bg-orbs .orb-2{background:var(--clr-error);width:350px;height:350px;bottom:15%;right:15%}.error-boundary-card{z-index:1;background:var(--bg-glass-strong);border:1px solid var(--border-default);border-radius:var(--border-radius-lg);width:100%;max-width:550px;padding:var(--space-8) var(--space-6);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);text-align:center;position:relative}.error-icon-wrapper{border-radius:var(--border-radius-full);background:var(--clr-error-bg);width:80px;height:80px;color:var(--clr-error);margin-bottom:var(--space-5);border:1px solid #f43f5e33;justify-content:center;align-items:center;animation:2s infinite pulse;display:inline-flex}.error-title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--fw-bold);color:var(--text-primary);margin:0 0 var(--space-3);letter-spacing:-.5px}.error-desc{font-size:var(--text-base);color:var(--text-secondary);line-height:var(--lh-normal);margin-bottom:var(--space-6)}.error-details{border:1px solid var(--border-subtle);border-radius:var(--border-radius-sm);padding:var(--space-4);margin-bottom:var(--space-6);text-align:left;background:#0003}.error-summary-title{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none}.error-details-content{margin-top:var(--space-3)}.error-message-text{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--clr-error);margin:0 0 var(--space-2);word-break:break-all}.error-stack{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);white-space:pre-wrap;word-break:break-all;max-height:150px;padding:var(--space-2);background:#0000004d;border-radius:4px;margin:0;overflow-y:auto}.error-actions{gap:var(--space-4);flex-wrap:wrap;justify-content:center;display:flex}.btn-retry,.btn-home{align-items:center;gap:var(--space-2);display:inline-flex}
