:root{--bg:#202428;--bg2:#2a2f34;--card:#272c31;--line:#3a4047;--fg:#e8e9eb;--muted:#a4abb3;--accent:#89ff00;--ink:#121a00;
 --c0:#e74c3c;--c1:#2f80ed;--c2:#f2c94c;--c3:#27ae60}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;min-height:100svh}
a{color:var(--accent)}.wrap{width:min(100% - 32px,1100px);margin:0 auto;padding:20px 0}
h1{font-size:clamp(1.6rem,4vw,2.6rem);margin:0 0 8px;letter-spacing:-.02em}h2{margin:0 0 10px}.muted{color:var(--muted)}
.btn{display:inline-block;padding:12px 22px;border-radius:999px;background:var(--accent);color:var(--ink);font-weight:800;text-decoration:none;border:0;cursor:pointer;font-size:1rem}
.btn.ghost{background:transparent;color:var(--fg);border:1px solid var(--line)}.btn:disabled{opacity:.5;cursor:default}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px}.grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
input{padding:14px;border-radius:12px;border:1px solid var(--line);background:var(--bg);color:var(--fg);font-size:1.4rem;letter-spacing:.2em;text-align:center;width:100%}
.top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.pin{font-size:clamp(2.5rem,8vw,6rem);font-weight:900;letter-spacing:.1em;color:var(--accent);line-height:1}
.q{font-size:clamp(1.4rem,3.5vw,2.6rem);font-weight:800;margin:14px 0 18px;text-align:center}
.timer{height:10px;background:var(--bg2);border-radius:999px;overflow:hidden;margin:10px 0 18px}.timer i{display:block;height:100%;background:var(--accent);transition:width .25s linear}
.choices{display:grid;gap:12px;grid-template-columns:1fr 1fr}
.choice{border:0;border-radius:16px;padding:22px 16px;color:#fff;font-size:1.15rem;font-weight:700;text-align:left;cursor:pointer;display:flex;gap:12px;align-items:center;min-height:90px;transition:transform .08s}
.choice:active{transform:scale(.97)}.choice .sh{font-size:1.6rem}.choice.c0{background:var(--c0)}.choice.c1{background:var(--c1)}.choice.c2{background:var(--c2);color:#1a1a1a}.choice.c3{background:var(--c3)}
.choice.dim{opacity:.25}.choice.right{outline:4px solid #fff}
.big{font-size:clamp(2rem,6vw,4rem);font-weight:900;text-align:center}.center{text-align:center}
.bars{display:grid;gap:10px;grid-template-columns:repeat(4,1fr);align-items:end;height:200px;margin:16px 0}.bars div{border-radius:10px 10px 0 0;display:grid;place-items:end center;color:#fff;font-weight:800;padding-bottom:6px;min-height:28px}
.board{list-style:none;margin:0;padding:0;display:grid;gap:8px}.board li{display:grid;grid-template-columns:40px 1fr auto;gap:12px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px 14px}
.board .rk{font-weight:900;color:var(--muted)}.board li:nth-child(1) .rk{color:#f2c94c}.board li:nth-child(2) .rk{color:#cfd3d8}.board li:nth-child(3) .rk{color:#cd7f32}.board .pt{font-weight:800;color:var(--accent)}.board li.me{border-color:var(--accent)}
.players{display:flex;gap:8px;flex-wrap:wrap}.players span{background:var(--bg2);border:1px solid var(--line);border-radius:999px;padding:6px 12px;animation:pop .3s}
@keyframes pop{from{transform:scale(.6);opacity:0}}
.streak{color:#ff9f1c;font-weight:800}.react{position:fixed;bottom:80px;font-size:2rem;animation:fly 2.2s ease-out forwards;pointer-events:none}@keyframes fly{to{transform:translateY(-70vh) scale(1.6);opacity:0}}
.reactbar{position:fixed;bottom:14px;left:50%;transform:translateX(-50%);display:flex;gap:8px;background:rgba(32,36,40,.9);border:1px solid var(--line);border-radius:999px;padding:8px}
.reactbar button{background:transparent;border:0;font-size:1.5rem;cursor:pointer}
.podium{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;align-items:end;margin:20px 0}.podium div{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px;text-align:center}.podium .p1{order:2;padding-top:40px;border-color:#f2c94c}.podium .p2{order:1;padding-top:24px}.podium .p3{order:3}
.confetti{position:fixed;top:-10px;width:10px;height:14px;animation:drop 3s linear forwards;pointer-events:none}@keyframes drop{to{transform:translateY(110vh) rotate(720deg)}}
.hidden{display:none!important}
