*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary: #070d1c;--bg-secondary: #0d1628;--bg-card: rgba(13, 22, 40, .85);--bg-card-hover: rgba(17, 28, 50, .9);--accent: #3b8bff;--accent-bright: #5fa0ff;--accent-glow: rgba(59, 139, 255, .35);--accent-dim: rgba(59, 139, 255, .12);--accent-border: rgba(59, 139, 255, .25);--text-primary: #ffffff;--text-secondary: rgba(255, 255, 255, .55);--text-muted: rgba(255, 255, 255, .3);--border: rgba(255, 255, 255, .08);--border-accent: rgba(59, 139, 255, .3);--success: #10b981;--success-dim: rgba(16, 185, 129, .15);--error: #ef4444;--error-dim: rgba(239, 68, 68, .15);--radius: 12px;--radius-sm: 8px;--radius-lg: 16px;--shadow: 0 4px 24px rgba(0, 0, 0, .4);--shadow-accent: 0 0 40px rgba(59, 139, 255, .1);--font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}html,body,#root{height:100%;width:100%}body{font-family:var(--font);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}.dot-bg{position:relative;background-color:var(--bg-primary);background-image:radial-gradient(rgba(59,139,255,.13) 1px,transparent 1px);background-size:24px 24px}.dot-bg:before{content:"";position:fixed;top:0;left:50%;transform:translate(-50%);width:800px;height:400px;background:radial-gradient(ellipse at center top,rgba(59,139,255,.08) 0%,transparent 70%);pointer-events:none;z-index:0}button{font-family:var(--font);cursor:pointer;border:none;outline:none}input{font-family:var(--font);outline:none}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--accent-border);border-radius:3px}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px #3b8bff33}50%{box-shadow:0 0 40px #3b8bff66}}@keyframes count-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes ticker-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes winner-reveal{0%{opacity:0;transform:translateY(30px) scale(.9)}60%{transform:translateY(-4px) scale(1.02)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}
