:root{--background:#f8fafc;--foreground:#0f172a;--surface:#fff;--surface-hover:#f1f5f9;--border:#e2e8f0;--border-hover:#cbd5e1;--muted:#64748b;--strawberry:#ef4444;--strawberry-light:#fef2f2;--strawberry-dark:#b91c1c;--mango:#f59e0b;--mango-light:#fffbeb;--lime:#10b981;--lime-light:#ecfdf5;--lime-dark:#047857;--blueberry:#3b82f6;--blueberry-light:#eff6ff;--blueberry-dark:#1d4ed8;--grape:#8b5cf6;--grape-light:#f5f3ff;--accent:var(--blueberry);--gradient-hero:linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-brand:linear-gradient(135deg, var(--blueberry) 0%, var(--grape) 100%);--gradient-warm:linear-gradient(135deg, var(--strawberry) 0%, var(--mango) 100%);--gradient-cool:linear-gradient(135deg, var(--lime) 0%, var(--blueberry) 100%);--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 4px 12px #0000000f;--shadow-lg:0 12px 40px #00000014;--shadow-xl:0 20px 60px #0000001a;--shadow-card-hover:0 16px 48px #0000001f;--shadow-glow-blue:0 0 30px #3b82f626;--shadow-glow-grape:0 0 30px #8b5cf626;--radius-xs:6px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-2xl:32px;--radius-full:9999px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--duration-fast:.15s;--duration-normal:.25s;--duration-slow:.4s;--glass-bg:#ffffffb8;--glass-border:#ffffff4d;--glass-blur:20px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}@keyframes confettiBurst{0%{opacity:1;transform:scale(0)}50%{opacity:.8;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}@keyframes progressFill{0%{width:0%}}@keyframes gradientShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes spinSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.05)}70%{transform:scale(.95)}to{opacity:1;transform:scale(1)}}html{scroll-behavior:smooth;height:100%}html,body{max-width:100vw;overflow-x:hidden}body{min-height:100%;color:var(--foreground);background:var(--background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.01em;flex-direction:column;font-family:Product Sans,Google Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;display:flex}*{box-sizing:border-box;margin:0;padding:0}::selection{background:var(--blueberry);color:#fff}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}:focus-visible{outline:2px solid var(--blueberry);outline-offset:2px;border-radius:var(--radius-xs)}a{color:inherit;transition:color var(--duration-fast) ease;text-decoration:none}button{cursor:pointer;transition:all var(--duration-normal) var(--ease-out);background:0 0;border:none;font-family:inherit}button:active:not(:disabled){transform:scale(.97)}button:disabled{cursor:not-allowed;opacity:.5}.animate-fade-in{animation:fadeIn var(--duration-slow) var(--ease-out) forwards}.animate-fade-in-up{animation:fadeInUp var(--duration-slow) var(--ease-out) forwards}.animate-scale-in{animation:scaleIn var(--duration-normal) var(--ease-spring) forwards}.animate-shake{animation:.5s forwards shake}.animate-bounce-in{animation:bounceIn .6s var(--ease-spring) forwards}.stagger-children>*{opacity:0;animation:fadeInUp var(--duration-slow) var(--ease-out) forwards}.stagger-children>:first-child{animation-delay:0s}.stagger-children>:nth-child(2){animation-delay:60ms}.stagger-children>:nth-child(3){animation-delay:.12s}.stagger-children>:nth-child(4){animation-delay:.18s}.stagger-children>:nth-child(5){animation-delay:.24s}.stagger-children>:nth-child(6){animation-delay:.3s}.stagger-children>:nth-child(7){animation-delay:.36s}.stagger-children>:nth-child(8){animation-delay:.42s}.skeleton{background:linear-gradient(90deg, var(--surface) 25%, var(--surface-hover) 50%, var(--surface) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.5s infinite shimmer}.glass{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border)}.gradient-text{background:var(--gradient-brand);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.gradient-bg-animated{background:linear-gradient(-45deg, #667eea, #764ba2, var(--blueberry), var(--grape));background-size:400% 400%;animation:8s infinite gradientShift}@keyframes float-hero{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-15px)rotate(1deg)}}@keyframes spin-3d-1{0%{transform:rotate(0)rotateX(70deg)rotate(0)}to{transform:rotate(0)rotateX(70deg)rotate(360deg)}}@keyframes spin-3d-2{0%{transform:rotate(60deg)rotateX(70deg)rotate(0)}to{transform:rotate(60deg)rotateX(70deg)rotate(360deg)}}@keyframes spin-3d-3{0%{transform:rotate(120deg)rotateX(70deg)rotate(0)}to{transform:rotate(120deg)rotateX(70deg)rotate(360deg)}}@keyframes cursor-move{0%{transform:translate(100px,100px)}25%{transform:translate(0)}35%{transform:translate(0)scale(.8)}45%{transform:translate(0)scale(1)}75%{transform:translate(-80px,-50px)}85%{transform:translate(-80px,-50px)scale(.8)}95%{transform:translate(-80px,-50px)scale(1)}to{transform:translate(100px,100px)}}@keyframes graph-line-draw{0%,35%{opacity:0;width:0}36%{opacity:1;width:0}75%,to{opacity:1;width:100px}}@keyframes block-shift{0%,20%{transform:translateY(0)}30%,80%{transform:translateY(-60px)}90%,to{transform:translateY(0)}}@keyframes slider-fill{0%,to{width:50%}30%,40%{width:80%}70%,80%{width:20%}}@keyframes slider-thumb{0%,to{left:50%}30%,40%{left:80%}70%,80%{left:20%}}@media (max-width:768px){.hide-mobile{display:none!important}}@media (min-width:769px){.hide-desktop{display:none!important}}
