@import"https://fonts.googleapis.com/css2?family=Syne:wght@700;800;900&family=Space+Grotesk:wght@400;500;600;700&family=JetBrains+Mono:wght@500;700&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #07071A;--surface: #0E0E26;--surface2: #14142E;--border: rgba(130,100,255,.1);--border2: rgba(130,100,255,.22);--primary: #7B3FFF;--accent: #00CFFF;--success: #00E698;--danger: #FF3366;--warn: #FFB800;--text: #F0EEFF;--muted: rgba(240,238,255,.4);--font: "Space Grotesk", sans-serif;--display: "Syne", sans-serif;--mono: "JetBrains Mono", monospace;--radius: 18px;--radius-sm: 12px;--a0: #3B5BDB;--a1: #9B0CA8;--a2: #087F5B;--a3: #D4500E}html,body,#root{height:100%;font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}body{background-image:radial-gradient(ellipse 80% 50% at 50% -10%,rgba(123,63,255,.14) 0%,transparent 70%),linear-gradient(rgba(123,63,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(123,63,255,.04) 1px,transparent 1px);background-size:100% 100%,52px 52px,52px 52px;animation:gridDrift 25s linear infinite}@keyframes gridDrift{0%{background-position:50% -10%,0 0,0 0}to{background-position:50% -10%,52px 52px,52px 52px}}input,select,textarea{font-family:var(--font);background:var(--surface2);border:1.5px solid var(--border);border-radius:var(--radius-sm);color:var(--text);padding:12px 16px;width:100%;font-size:15px;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}input:focus,select:focus,textarea:focus{border-color:var(--primary);background:rgba(20,20,46,.9);box-shadow:0 0 0 3px #7b3fff26,0 0 24px #7b3fff14}select option{background:var(--surface)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 26px;border:none;border-radius:var(--radius-sm);font-family:var(--font);font-size:15px;font-weight:700;cursor:pointer;transition:all .2s cubic-bezier(.34,1.56,.64,1);text-decoration:none;letter-spacing:.01em;position:relative;overflow:hidden}.btn:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:radial-gradient(circle at center,rgba(255,255,255,.2) 0%,transparent 70%);opacity:0;transition:opacity .3s}.btn:hover:after{opacity:1}.btn-primary{background:linear-gradient(135deg,#7B3FFF,#9B62FF);color:#fff;box-shadow:0 4px 24px #7b3fff66}.btn-primary:hover:not(:disabled){transform:translateY(-2px) scale(1.02);box-shadow:0 8px 36px #7b3fff8c}.btn-primary:active:not(:disabled){transform:translateY(0) scale(.98)}.btn-outline{background:transparent;border:1.5px solid var(--primary);color:var(--primary)}.btn-outline:hover:not(:disabled){background:rgba(123,63,255,.1);transform:translateY(-2px);box-shadow:0 4px 16px #7b3fff33}.btn-ghost{background:transparent;border:1.5px solid var(--border);color:var(--muted)}.btn-ghost:hover:not(:disabled){border-color:var(--primary);color:var(--primary);transform:translateY(-1px)}.btn-danger{background:var(--danger);color:#fff;box-shadow:0 4px 16px #ff336640}.btn-danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 24px #f366}.btn-sm{padding:8px 16px;font-size:13px;border-radius:8px}.btn-lg{padding:16px 40px;font-size:17px;border-radius:var(--radius)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-full{width:100%}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:22px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s,border-color .25s}.card:hover{transform:translateY(-4px);box-shadow:0 16px 48px #7b3fff24;border-color:#7b3fff4d}.input-group{display:flex;flex-direction:column;gap:6px}.input-label{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.badge{display:inline-flex;align-items:center;font-size:11px;font-weight:700;padding:3px 9px;border-radius:5px;letter-spacing:.04em}.room-code{font-family:var(--mono);font-size:44px;font-weight:700;letter-spacing:.15em;color:var(--accent);text-shadow:0 0 30px rgba(0,207,255,.6),0 0 60px rgba(0,207,255,.2);animation:roomGlow 3s ease-in-out infinite}@keyframes roomGlow{0%,to{text-shadow:0 0 20px rgba(0,207,255,.5),0 0 40px rgba(0,207,255,.2)}50%{text-shadow:0 0 40px rgba(0,207,255,.9),0 0 80px rgba(0,207,255,.35)}}.timer-bar{height:6px;border-radius:99px;background:var(--surface2);overflow:hidden}.timer-bar__fill{height:100%;border-radius:99px;background:linear-gradient(90deg,var(--primary),var(--accent),#b47eff);background-size:200% 100%;animation:barShimmer 2s linear infinite;transition:width 1s linear}.timer-bar__fill.urgent{background:linear-gradient(90deg,var(--danger),var(--warn));animation:none}@keyframes barShimmer{0%{background-position:0% 0}to{background-position:200% 0}}.pulse-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--success);position:relative}.pulse-dot:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;background:var(--success);opacity:.4;animation:sonar 1.4s ease-out infinite}@keyframes sonar{0%{transform:scale(1);opacity:.4}to{transform:scale(2.5);opacity:0}}.logo-glow{animation:logoGlow 4s ease-in-out infinite}@keyframes logoGlow{0%,to{filter:drop-shadow(0 0 8px rgba(123,63,255,.4))}50%{filter:drop-shadow(0 0 24px rgba(123,63,255,.8)) drop-shadow(0 0 48px rgba(0,207,255,.3))}}.mono{font-family:var(--mono)}.text-accent{color:var(--accent)}.text-muted{color:var(--muted)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.text-warn{color:var(--warn)}.text-center{text-align:center}.text-primary{color:var(--primary)}@keyframes fadeUp{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes slideRight{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes countUp{0%{transform:scale(.5) translateY(12px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}@keyframes trophyBounce{0%{transform:scale(0) rotate(-20deg)}60%{transform:scale(1.25) rotate(5deg)}to{transform:scale(1) rotate(0)}}@keyframes podiumIn{0%{opacity:0;transform:translateY(40px) scale(.88)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes glowPulse{0%,to{box-shadow:0 0 20px #7b3fff4d}50%{box-shadow:0 0 40px #7b3fff99,0 0 80px #00cfff33}}@keyframes borderGlow{0%,to{border-color:#8264ff33}50%{border-color:#8264ff80}}.anim-fade{animation:fadeUp .45s cubic-bezier(.22,1,.36,1) both}.anim-scale{animation:scaleIn .4s cubic-bezier(.22,1,.36,1) both}.spinner{width:36px;height:36px;border-radius:50%;border:3px solid var(--surface2);border-top-color:var(--primary);animation:spin .75s linear infinite}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-thumb{background:rgba(123,63,255,.3);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:rgba(123,63,255,.5)}.admin-sidebar-wrap{width:224px;background:var(--surface);border-right:1px solid var(--border2);display:flex;flex-direction:column;flex-shrink:0;position:fixed;top:0;left:0;bottom:0;z-index:130;transition:transform .22s cubic-bezier(.4,0,.2,1)}.admin-main{margin-left:224px;margin-top:0;flex:1}.admin-topbar,.admin-overlay,.admin-hamburger{display:none}@media (max-width: 760px){.admin-sidebar-wrap{transform:translate(-100%);top:56px;z-index:135}.admin-sidebar-wrap.open{transform:translate(0)}.admin-main{margin-left:0;margin-top:56px;padding:20px 16px!important}.admin-topbar{display:flex!important}.admin-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.6);z-index:125;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.admin-hamburger{display:flex!important}}@keyframes rocketLaunch{0%{transform:translateY(0) rotate(-5deg)}to{transform:translateY(-12px) rotate(5deg)}}@keyframes questionIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes answerIn{0%{opacity:0;transform:scale(.9) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes correctIn{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes slideIn{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRow{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes urgentPulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}
