:root{--ink:#090510;--panel:#160522;--violet:#2b0b55;--pink:#ff087b;--blue:#46d9ff;--white:#fff;--muted:#bdb4cf;--ok:#5df2a2;--danger:#ff526d;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--white);background:var(--ink)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 20% 0,#441067 0,transparent 38%),radial-gradient(circle at 100% 80%,#006d8a55 0,transparent 35%),var(--ink);overflow-x:hidden}body.overlay-transparent{background:transparent}.overlay-transparent .grain{display:none}.grain{position:fixed;inset:0;opacity:.08;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.45'/%3E%3C/svg%3E")}.shell{width:min(1180px,calc(100% - 32px));margin:auto;padding:28px 0 56px}.brand{display:flex;align-items:center;gap:12px;text-transform:uppercase;font-weight:1000;letter-spacing:-.04em}.brand-mark{color:var(--pink);font-size:2rem}.brand small{display:block;color:var(--blue);font-size:.62rem;letter-spacing:.18em}.card{background:linear-gradient(145deg,#210832ee,#100419ee);border:1px solid #ff087b66;box-shadow:0 24px 70px #0008,inset 0 1px #fff1;padding:clamp(20px,4vw,38px);clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px))}.stack{display:grid;gap:16px}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}h1,h2,h3,p{margin:0}h1{font-size:clamp(2.3rem,8vw,5.5rem);line-height:.88;text-transform:uppercase;letter-spacing:-.065em}h2{font-size:clamp(1.7rem,4vw,3rem);line-height:1}.eyebrow{color:var(--pink);font-weight:900;letter-spacing:.12em;text-transform:uppercase}.muted{color:var(--muted)}label{display:grid;gap:7px;font-weight:800}input,select,textarea{width:100%;border:1px solid #ffffff30;background:#08030d;color:#fff;padding:15px 16px;font:inherit;border-radius:0;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #46d9ff25}button,.button{border:0;background:linear-gradient(100deg,var(--pink),#a516ff);color:#fff;padding:15px 21px;font:900 .92rem/1 inherit;text-transform:uppercase;letter-spacing:.045em;cursor:pointer;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;min-height:48px;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px))}button.secondary,.button.secondary{background:#251233;border:1px solid #ffffff33}button.danger{background:var(--danger)}button:disabled{opacity:.38;cursor:not-allowed}.status{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-weight:800}.status::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--danger);box-shadow:0 0 12px currentColor}.status.connected::before{background:var(--ok)}.pill{padding:7px 10px;border:1px solid #ffffff2b;background:#fff1;font-weight:900;font-size:.76rem;text-transform:uppercase}.timer{font-size:clamp(2rem,6vw,5rem);font-weight:1000;font-variant-numeric:tabular-nums;color:var(--blue)}.options{display:grid;gap:10px}.option{background:#fff;color:#13051d;text-transform:none;text-align:left;justify-content:flex-start;font-size:1.03rem;line-height:1.25}.option:disabled{background:#5c5262;color:#ccc}.people{display:flex;flex-wrap:wrap;gap:8px}.person{background:#fff1;border:1px solid #ffffff20;padding:9px 12px;font-weight:800}.toast{position:fixed;right:16px;bottom:16px;max-width:360px;background:#fff;color:#160522;padding:15px 18px;font-weight:800;z-index:20;transform:translateY(140%);transition:.25s}.toast.show{transform:none}.hidden{display:none!important}
.stage{width:100vw;height:100vh;overflow:hidden;padding:3.3vh 4vw;display:grid;grid-template-rows:auto 1fr auto;gap:2vh}.stage.transparent{background:transparent}.stage-head{display:flex;justify-content:space-between;align-items:center}.stage-main{display:grid;place-items:center;text-align:center;min-height:0}.stage-card{width:min(1450px,92vw);display:grid;gap:2.4vh;justify-items:center}.room-code{font-size:clamp(4rem,11vw,9rem);font-weight:1000;letter-spacing:.12em;color:var(--blue);text-shadow:0 0 35px #46d9ff70}.qr{width:min(23vh,260px);background:#fff;padding:9px}.stage-question{font-size:clamp(2.5rem,5vw,5.7rem);line-height:1.02;font-weight:1000;max-width:1500px}.stage-answer{font-size:clamp(3rem,7vw,8rem);font-weight:1000;color:var(--white);text-shadow:0 0 36px #ff087b99}.stage-foot{display:flex;justify-content:space-between;align-items:end;gap:20px}.leaderboard{width:min(1100px,90vw);display:grid;gap:10px}.rank{display:grid;grid-template-columns:70px 1fr auto;align-items:center;text-align:left;background:#160522df;border-left:7px solid var(--pink);padding:14px 22px;font-size:clamp(1.1rem,2vw,2rem);font-weight:900}.rank:first-child{border-color:#ffd34f;transform:scale(1.035)}.rank-score{color:var(--blue)}.flash{animation:flash .75s ease-out}.enter{animation:enter .38s cubic-bezier(.2,.8,.2,1)}@keyframes enter{from{opacity:0;transform:translateY(25px) scale(.97)}}@keyframes flash{0%{filter:brightness(3);background:#fff}100%{filter:none}}body[data-page=play] .shell{max-width:640px}.mobile-logo{font-size:clamp(2rem,10vw,4rem);font-weight:1000;line-height:.82;text-transform:uppercase}.mobile-logo span{color:var(--pink)}.mobile-actions{display:grid;gap:12px}.score{font-size:2rem;font-weight:1000;color:var(--blue)}.admin-layout{display:grid;grid-template-columns:340px 1fr;gap:22px}.admin-sticky{position:sticky;top:20px;align-self:start}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.metric{background:#fff1;padding:14px}.metric strong{display:block;font-size:1.7rem}.controls{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:9px}.cue{border-left:5px solid var(--blue);padding:15px;background:#46d9ff13}.danger-zone{border-color:#ff526d55}@media(max-width:850px){.admin-layout{grid-template-columns:1fr}.admin-sticky{position:static}.metrics{grid-template-columns:repeat(2,1fr)}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
