@import"https://fonts.googleapis.com/css2?family=Syne:wght@400;500;600;700;800&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;1,9..40,300&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth}body{background:#04080f;color:#e2e8f0;font-family:DM Sans,system-ui,sans-serif;font-size:15px;line-height:1.5;min-height:100vh}button{font-family:inherit;cursor:pointer}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}:root{--bg-base: #04080f;--bg-surface: #080f1e;--bg-raised: #0c1526;--bg-card: #0a1220;--bg-card-hover: #0e1829;--text-primary: #f1f5f9;--text-secondary: #cbd5e1;--text-soft: #94a3b8;--text-muted: #475569;--border-subtle: rgba(255,255,255,.055);--border-soft: rgba(255,255,255,.1);--border-hover: rgba(255,255,255,.18);--r-sm: 8px;--r-md: 12px;--r-lg: 18px;--r-xl: 24px;--r-2xl: 32px;--r-pill: 999px;--shadow-card: 0 1px 3px rgba(0,0,0,.4), 0 4px 16px rgba(0,0,0,.25);--shadow-card-hover: 0 4px 24px rgba(0,0,0,.5), 0 12px 48px rgba(0,0,0,.3);--shadow-float: 0 8px 40px rgba(0,0,0,.6), 0 2px 8px rgba(0,0,0,.4);--font-display: "Syne", sans-serif;--font-body: "DM Sans", sans-serif;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--dur-fast: .15s;--dur-base: .22s;--dur-slow: .38s;--z-topbar: 100;--z-catnav: 90;--z-cartbar: 200;--z-toast: 300}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#ffffff2e}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{scrollbar-width:none;-ms-overflow-style:none}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes scaleIn{0%{transform:scale(.88);opacity:0}to{transform:scale(1);opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulseRing{0%{transform:scale(1);opacity:.5}to{transform:scale(1.6);opacity:0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes addPop{0%{transform:scale(1)}40%{transform:scale(1.18)}to{transform:scale(1)}}@keyframes glowPulse{0%,to{opacity:.4}50%{opacity:.8}}.animate-fade-up{animation:fadeUp .38s cubic-bezier(.22,1,.36,1) both}.animate-fade-in{animation:fadeIn .22s ease both}.animate-scale-in{animation:scaleIn .22s cubic-bezier(.34,1.56,.64,1) both}.animate-float{animation:float 4s ease-in-out infinite}article:hover .card-hover-overlay{opacity:1!important}article:hover .card-img{transform:scale(1.04)}.bundle-shimmer{background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.04) 50%,transparent 60%);background-size:200% auto;animation:shimmer 3s linear infinite}.add-pop{animation:addPop .32s cubic-bezier(.34,1.56,.64,1) both}@media (max-width: 640px){button{min-height:44px}}
