:root{--bg:#08070d;--bg-2:#0e0c17;--glass:#ffffff0b;--glass-2:#ffffff14;--line:#ffffff1a;--text:#f7f5ff;--muted:#8f87ad;--coral:#ff5a3c;--cyan:#22e0ff;--lime:#b4ff3a;--amber:#ffc44d;--fuchsia:#ff4d9d;--violet:#8b7cff;--ok:var(--lime);--bad:#ff5470;--accent:var(--coral);--radius:18px;--glow:0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(900px 600px at 15% -10%, #8b7cff2e, transparent 60%), radial-gradient(800px 500px at 85% 0%, #ff5a3c1f, transparent 60%), linear-gradient(180deg, var(--bg-2), var(--bg) 60%);min-height:100vh;color:var(--text);-webkit-tap-highlight-color:transparent;background-attachment:fixed;margin:0}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}input,textarea,select{font:inherit;color:inherit;border:1px solid var(--line);background:#00000059;border-radius:12px;width:100%;padding:12px 14px;transition:border-color .15s,box-shadow .15s}input:focus,textarea:focus,select:focus{border-color:#ff5a3c99;outline:none;box-shadow:0 0 0 3px #ff5a3c1f}input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}::selection{background:#ff5a3c59}.wrap{max-width:1000px;margin:0 auto;padding:24px 16px 72px}.stage{flex-direction:column;min-height:100vh;padding:28px 40px;display:flex;position:relative;overflow:hidden}.stage:after{content:"";pointer-events:none;background:radial-gradient(120% 100% at 50% 100%, rgba(255, 90, 60, calc(.06 + .5 * var(--glow))), transparent 70%);z-index:0;height:45vh;transition:background .45s;position:fixed;inset:auto 0 0}.stage>*{z-index:1;position:relative}.card{background:var(--glass);border:1px solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:22px}.row{align-items:center;gap:12px;display:flex}.row-wrap{flex-wrap:wrap}.spread{justify-content:space-between}.col{flex-direction:column;gap:12px;display:flex}.grow{flex:1;min-width:0}.muted{color:var(--muted)}.tiny{font-size:13px}.center{text-align:center}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:700}.btn{background:var(--glass-2);border:1px solid var(--line);border-radius:14px;padding:13px 20px;font-weight:650;transition:transform 80ms,background .18s,border-color .18s,box-shadow .18s}.btn:hover:not(:disabled){background:#ffffff21;border-color:#fff3}.btn:active:not(:disabled){transform:translateY(1px)scale(.99)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg, var(--coral), #ff8f4d);color:#1a0b06;border-color:#0000;box-shadow:0 8px 30px #ff5a3c59}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#ff6f52,#ffa268);box-shadow:0 10px 38px #ff5a3c80}.btn-ghost{background:0 0}.btn-big{border-radius:16px;padding:18px 26px;font-size:18px}.btn-danger{color:#ffc2cc;border-color:#ff547059}.btn-danger:hover:not(:disabled){background:#ff54701f}.link-button{text-align:left;border-bottom:1px dashed var(--line);padding:0}.brand{letter-spacing:-.045em;color:var(--text);align-items:baseline;font-size:24px;font-weight:850;text-decoration:none;display:inline-flex}.brand span{color:var(--coral);filter:drop-shadow(0 0 14px #ff5a3c99)}.code-pill{letter-spacing:.24em;border:1px solid var(--line);background:#0006;border-radius:12px;padding:8px 14px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-weight:700}.live-dot{letter-spacing:.16em;text-transform:uppercase;color:var(--coral);align-items:center;gap:9px;font-size:12px;font-weight:800;display:inline-flex}.live-dot:before{content:"";background:var(--coral);border-radius:50%;width:9px;height:9px;animation:2s ease-out infinite pulse;box-shadow:0 0 #ff5a3cb3}@keyframes pulse{0%{box-shadow:0 0 #ff5a3cb3}70%{box-shadow:0 0 0 12px #ff5a3c00}to{box-shadow:0 0 #ff5a3c00}}.badge{text-transform:uppercase;letter-spacing:.12em;border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:6px 12px;font-size:11px;font-weight:800}.badge-open{color:#0c1f05;background:var(--lime);border-color:#0000;box-shadow:0 0 24px #b4ff3a59}.badge-live{color:#251503;background:var(--amber);border-color:#0000;box-shadow:0 0 24px #ffc44d4d}.stat{font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-weight:850;line-height:1}.stat-lg{font-size:clamp(30px,3.2vw,52px)}.timer-ring{place-items:center;width:84px;height:84px;display:grid;position:relative}.timer-ring svg{position:absolute;inset:0;transform:rotate(-90deg)}.timer-ring circle{fill:none;stroke-width:6px;stroke-linecap:round}.timer-ring .track{stroke:#ffffff1a}.timer-ring .value{stroke:var(--amber);filter:drop-shadow(0 0 8px #ffc44d8c);transition:stroke-dashoffset .25s linear,stroke .3s}.timer-ring.hot .value{stroke:var(--coral);filter:drop-shadow(0 0 12px #ff5a3cb3)}.timer{font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-size:26px;font-weight:850}.timer-ring.hot .timer{color:var(--coral);animation:1s ease-in-out infinite tick}@keyframes tick{50%{transform:scale(1.12)}}.options{gap:12px;display:grid}.option{background:var(--glass);border:2px solid var(--line);text-align:left;border-radius:16px;align-items:center;gap:14px;padding:18px 20px;font-size:17px;font-weight:550;transition:border-color .15s,background .15s,box-shadow .2s,transform 80ms;display:flex}.option:hover:not(:disabled):not(.option-picked):not(.option-correct):not(.option-wrong){background:var(--glass-2);border-color:#ffffff38}.option:active:not(:disabled){transform:scale(.99)}.option-picked{border-color:var(--coral);background:#ff5a3c24;box-shadow:0 0 34px #ff5a3c47}.option-correct{border-color:var(--lime);background:#b4ff3a24;box-shadow:0 0 34px #b4ff3a4d}.option-wrong{border-color:var(--bad);background:#ff54701f}.option-mark{border:2px solid var(--line);border-radius:999px;flex:none;place-items:center;width:28px;height:28px;font-size:15px;font-weight:800;display:grid}.option-picked .option-mark{border-color:var(--coral);color:var(--coral)}.option-correct .option-mark{border-color:var(--lime);color:var(--lime)}.option-wrong .option-mark{border-color:var(--bad);color:var(--bad)}.bars{gap:16px;display:grid}.bar-label{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;font-size:17px;font-weight:600;display:flex}.bar-share{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-weight:850}.bar-track{border:1px solid var(--line);background:#ffffff0d;border-radius:12px;height:34px;overflow:hidden}.bar-fill{background:linear-gradient(90deg, var(--bar-from,var(--violet)), var(--bar-to,var(--fuchsia)));height:100%;box-shadow:0 0 28px var(--bar-glow,#8b7cff73);border-radius:11px;min-width:3px;transition:width .6s cubic-bezier(.22,1,.36,1)}.bar-fill-correct{--bar-from:#7de03a;--bar-to:var(--lime);--bar-glow:#b4ff3a80}.bar-fill-wrong{opacity:.35;box-shadow:none}.cloud{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 24px;padding:14px;display:flex}.cloud-item{letter-spacing:-.025em;font-weight:800;line-height:1.05;animation:.4s cubic-bezier(.34,1.56,.64,1) pop}.cloud-pending{opacity:.45;border-bottom:2px dashed var(--amber)}@keyframes pop{0%{opacity:0;transform:scale(.65)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.emoji-pad{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:12px;display:grid}.emoji-key{aspect-ratio:1;background:var(--glass);border:2px solid var(--line);border-radius:22px;place-items:center;font-size:clamp(38px,12vw,58px);transition:transform 70ms,border-color .15s,box-shadow .15s;display:grid;position:relative}.emoji-key:active:not(:disabled){border-color:var(--coral);transform:scale(.9);box-shadow:0 0 40px #ff5a3c73}.emoji-key:disabled{opacity:.35}.emoji-key-hit{border-color:var(--coral);box-shadow:0 0 44px #ff5a3c80}.emoji-spark{pointer-events:none;font-size:.5em;animation:.75s ease-out forwards spark;position:absolute;top:50%;left:50%}@keyframes spark{0%{opacity:1;transform:translate(-50%,-50%)scale(.6)}to{opacity:0;transform:translate(calc(-50% + var(--sx,0px)), calc(-50% - 90px)) scale(1.25)}}.emoji-flow{flex:1;min-height:260px;position:relative;overflow:hidden}.emoji-fly{will-change:transform, opacity;animation:fly var(--dur,3s) linear forwards;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:44px;position:absolute;bottom:-70px}@keyframes fly{0%{opacity:0;transform:translateY(0)scale(.55)rotate(0)}12%{opacity:1;transform:translateY(-12vh)scale(1)rotate(6deg)}to{opacity:0;transform:translateY(-98vh) translateX(var(--drift,0px)) scale(1.15) rotate(var(--spin,20deg))}}.emoji-totals{font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:center;gap:28px;display:flex}.emoji-total{letter-spacing:-.03em;background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:999px;align-items:center;gap:10px;padding:10px 18px;font-size:28px;font-weight:850;display:flex}.stage-title{letter-spacing:-.045em;background:linear-gradient(175deg,#fff 20%,#cfc4ff 75%,#a79bff);color:#0000;filter:drop-shadow(0 6px 40px #8b7cff4d);text-wrap:balance;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(34px,6.4vw,104px);font-weight:850;line-height:.98}.stage-body{flex-direction:column;flex:1;justify-content:center;gap:28px;padding:28px 0;display:flex}.stage-body .bars{gap:22px;font-size:clamp(19px,2.3vw,30px)}.stage-body .bar-track{height:clamp(38px,4.4vw,62px)}.stage .emoji-fly{font-size:clamp(52px,5vw,96px)}.stage .emoji-total{font-size:clamp(30px,3vw,48px)}.stage .cloud{gap:16px 32px}.join-card{background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:22px;align-items:center;gap:24px;padding:18px 24px;display:flex}.join-card .qr{background:#fff;border-radius:14px;padding:10px;line-height:0;box-shadow:0 0 40px #ffffff1f}.join-url{letter-spacing:-.02em;font-size:clamp(19px,2vw,28px);font-weight:750}.big-code{letter-spacing:.16em;background:linear-gradient(180deg, var(--amber), var(--coral));color:#0000;filter:drop-shadow(0 0 26px #ffc44d73);-webkit-background-clip:text;background-clip:text;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:clamp(36px,5.2vw,72px);font-weight:850}.waiting-code{letter-spacing:.1em;background:linear-gradient(180deg, #fff, var(--amber) 60%, var(--coral));color:#0000;filter:drop-shadow(0 0 60px #ff8c4659);-webkit-background-clip:text;background-clip:text;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:clamp(64px,14vw,200px);font-weight:850;line-height:1}.leaders{gap:10px;display:grid}.leader{background:var(--glass);border:1px solid var(--line);border-radius:14px;grid-template-columns:40px 1fr auto;align-items:center;gap:14px;padding:13px 16px;font-weight:600;display:grid}.leader-1{background:linear-gradient(90deg,#ffc44d24,#ffc44d08);border-color:#ffc44d73;box-shadow:0 0 34px #ffc44d2e}.leader-place{text-align:center;font-size:22px}.leader-score{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-weight:850}.podium{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:18px;max-width:900px;margin:0 auto;display:grid}.podium-step{background:var(--glass);border:1px solid var(--line);text-align:center;border-bottom:0;border-radius:20px 20px 0 0;flex-direction:column;justify-content:flex-end;align-items:center;gap:10px;padding:20px 14px;animation:.6s cubic-bezier(.22,1,.36,1) backwards rise;display:flex}.podium-step-1{background:linear-gradient(#ffc44d33,#ffc44d05);border-color:#ffc44d80;height:240px;animation-delay:.3s;box-shadow:0 0 60px #ffc44d33}.podium-step-2{height:180px;animation-delay:.15s}.podium-step-3{height:145px;animation-delay:0s}.podium-name{letter-spacing:-.02em;font-size:clamp(16px,1.6vw,24px);font-weight:750}.podium-score{font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-size:clamp(22px,2.4vw,38px);font-weight:850}.podium-medal{font-size:clamp(30px,3.4vw,52px);line-height:1}@keyframes rise{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.admin-grid{grid-template-columns:350px 1fr;align-items:start;gap:22px;display:grid}.slide-list{flex-direction:column;gap:8px;display:flex}.slide-chip{background:var(--glass);border:1px solid var(--line);text-align:left;border-radius:14px;align-items:center;gap:12px;width:100%;padding:13px 15px;transition:border-color .15s,background .15s;display:flex}.slide-chip:hover:not(.slide-chip-active){background:var(--glass-2)}.slide-chip-active{border-color:var(--coral);background:#ff5a3c1f;box-shadow:0 0 26px #ff5a3c2e}.slide-chip-num{border:1px solid var(--line);background:#0006;border-radius:9px;flex:none;place-items:center;width:28px;height:28px;font-size:13px;font-weight:800;display:grid}.people{flex-wrap:wrap;gap:8px;display:flex}.person{border:1px solid var(--line);background:#0000004d;border-radius:999px;padding:7px 12px;font-size:13px}.toast{color:#ffd9e0;z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#3c0e1ae6;border:1px solid #ff547066;border-radius:14px;max-width:90vw;padding:14px 20px;animation:.25s ease-out pop;position:fixed;bottom:30px;left:50%;transform:translate(-50%);box-shadow:0 10px 40px #00000080}.offline{text-align:center;background:var(--amber);color:#2a1206;letter-spacing:.02em;z-index:60;padding:9px;font-weight:800;position:fixed;top:0;left:0;right:0}.hero-title{letter-spacing:-.045em;background:linear-gradient(170deg,#fff 25%,#d6ccff 70%,#ffb199);color:#0000;text-wrap:balance;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(34px,7vw,68px);font-weight:850;line-height:.98}.hero-emoji{gap:10px;font-size:clamp(30px,5vw,44px);display:flex}.hero-emoji span{animation:2.6s ease-in-out infinite bob}.hero-emoji span:nth-child(2){animation-delay:.3s}.hero-emoji span:nth-child(3){animation-delay:.6s}.hero-emoji span:nth-child(4){animation-delay:.9s}@keyframes bob{50%{transform:translateY(-10px)rotate(-6deg)}}@media (width<=760px){.admin-grid{grid-template-columns:1fr}.stage{padding:16px}.join-card{text-align:center;flex-direction:column}.podium{gap:8px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
