:root{--bg:#10202e;--bg-2:#142838;--surface:#1b3245;--surface-2:#244057;--line:#ffffff1a;--text:#f5f1e8;--muted:#9fb0bf;--accent:#f2b53a;--accent-ink:#1d1404;--ok:#37c084;--bad:#ef5d5d;--opt-A:#17998f;--opt-B:#e0702f;--opt-C:#6a5fd6;--opt-D:#d2447a;--radius:18px;--font:ui-rounded, "SF Pro Rounded", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;background-image:radial-gradient(1200px 600px at 85% -10%,#f2b53a17,#0000 60%),radial-gradient(900px 600px at -10% 110%,#17998f1f,#0000 60%);background-attachment:fixed}h1,h2,h3{letter-spacing:-.01em;margin:0;line-height:1.15}p{margin:0}code{background:#ffffff14;border-radius:6px;padding:.05em .35em;font-size:.9em}.muted{color:var(--muted)}.error{color:#ffb4b4;background:#ef5d5d26;border:1px solid #ef5d5d59;border-radius:12px;padding:.6rem .8rem}.pill{border:1px solid var(--line);background:#ffffff14;border-radius:999px;padding:.35em .9em;font-weight:600;display:inline-block}.eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.08em;font-size:.9em;font-weight:700}.pulse{animation:1.6s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.45}}.spinner{border:4px solid #ffffff26;border-top-color:var(--accent);border-radius:50%;width:42px;height:42px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.btn{appearance:none;background:var(--accent);color:var(--accent-ink);font:inherit;cursor:pointer;border:0;border-radius:14px;padding:.8rem 1.3rem;font-weight:800;transition:transform 80ms,filter .15s,opacity .15s;box-shadow:0 3px #00000040}.btn:hover:not(:disabled){filter:brightness(1.06)}.btn:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px #00000040}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-big{width:100%;padding:1rem 1.4rem;font-size:1.15rem}.btn-huge{width:100%;padding:1.3rem;font-size:1.4rem}.btn-ghost{color:var(--text);border:1px solid var(--line);box-shadow:none;background:#ffffff14}.btn-danger{color:#ffc9c9;box-shadow:none;background:#ef5d5d26;border:1px solid #ef5d5d66}.btn-small{padding:.5rem .8rem;font-size:.9rem;font-weight:700}.btn-primary{font-size:1.05rem}.link{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}label{color:var(--muted);gap:.4rem;font-size:.95rem;font-weight:600;display:grid}input{font:inherit;color:var(--text);background:var(--bg-2);border:2px solid var(--line);border-radius:12px;outline:none;width:100%;padding:.8rem .9rem;font-size:1.1rem}input:focus{border-color:var(--accent)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.2rem}.logo-mark{background:var(--accent);width:64px;height:64px;color:var(--bg);border-radius:18px;place-items:center;margin:0 auto .4rem;font-size:42px;font-weight:900;display:grid;transform:rotate(-6deg);box-shadow:0 6px #00000040}.banner{z-index:50;color:#fff;text-align:center;padding:.6rem calc(1rem + env(safe-area-inset-left));padding-bottom:calc(.6rem + env(safe-area-inset-bottom));background:#7a2a2a;font-weight:600;position:fixed;bottom:0;left:0;right:0}.banner-top{top:0;bottom:auto}.toast{z-index:60;color:#ffd2d2;background:#2d1a1a;border:1px solid #ef5d5d80;border-radius:12px;max-width:calc(100vw - 2rem);padding:.7rem 1.1rem;font-weight:600;position:fixed;top:1rem;left:50%;transform:translate(-50%)}.opt-A{--opt:var(--opt-A)}.opt-B{--opt:var(--opt-B)}.opt-C{--opt:var(--opt-C)}.opt-D{--opt:var(--opt-D)}.answer-chip{background:var(--opt);border-radius:22px;place-items:center;width:84px;height:84px;font-size:44px;font-weight:900;display:inline-grid;box-shadow:0 5px #00000040}.answer-chip.small{width:30px;height:30px;box-shadow:none;vertical-align:middle;border-radius:9px;font-size:16px}.phone{height:100dvh;min-height:100%;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);flex-direction:column;display:flex}.phone-head{border-bottom:1px solid var(--line);background:#00000026;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 1rem;display:flex}.phone-name{text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.phone-score{color:var(--accent);white-space:nowrap;font-weight:800}.phone-main{flex-direction:column;flex:1;min-height:0;padding:1rem;display:flex}.center{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.9rem;padding:1rem;display:flex}.center h2{font-size:1.7rem}.join{text-align:center;gap:1rem;width:100%;max-width:420px;margin:auto;display:grid}.join h1{margin-bottom:.4rem;font-size:1.8rem}.join label{text-align:left}.big-check{background:var(--ok);border-radius:50%;place-items:center;width:88px;height:88px;font-size:48px;font-weight:900;display:grid}.q-count{color:var(--accent);letter-spacing:.04em;font-weight:800}.phone-q-title{font-size:1.6rem}.answer-screen{flex-direction:column;flex:1;gap:.8rem;min-height:0;display:flex}.phone-q-small{color:var(--muted);text-align:center;font-size:.95rem;font-weight:700}.answer-grid{flex:1;grid-template-columns:1fr 1fr;gap:.7rem;min-height:0;display:grid}.answer-grid.n2{grid-template-columns:1fr}.answer-grid.n3>:last-child{grid-column:1/-1}.answer-btn{appearance:none;background:var(--opt);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;min-height:0;padding:.8rem;transition:transform 80ms,opacity .2s,filter .2s;display:flex;box-shadow:0 6px #00000047}.answer-btn:active:not(:disabled){transform:translateY(4px);box-shadow:0 2px #00000047}.answer-btn.dim{opacity:.3;filter:grayscale(.6)}.answer-btn.chosen{outline-offset:-4px;outline:4px solid #fff}.answer-letter{font-size:clamp(2.2rem,11vw,3.6rem);font-weight:900;line-height:1}.answer-text{overflow-wrap:anywhere;font-size:1.05rem;font-weight:700;line-height:1.2}.cd-bar{background:#ffffff14;border-radius:999px;flex-shrink:0;height:34px;position:relative;overflow:hidden}.cd-bar-fill{background:var(--accent);transform-origin:0;transition:transform .1s linear;position:absolute;inset:0}.cd-bar.urgent .cd-bar-fill{background:var(--bad)}.cd-bar-num{text-align:center;color:#fff;text-shadow:0 1px 2px #00000080;font-weight:900;line-height:34px;display:block;position:relative}.result-icon{border-radius:50%;place-items:center;width:110px;height:110px;font-size:64px;font-weight:900;animation:.35s cubic-bezier(.2,1.6,.4,1) pop;display:grid}.result-icon.ok{background:var(--ok)}.result-icon.bad{background:var(--bad)}@keyframes pop{0%{opacity:0;transform:scale(.4)}}.points{color:var(--accent);font-size:2.4rem;font-weight:900}.rank-big{color:var(--accent);font-size:6rem;font-weight:900;line-height:1}.remote-scroll{gap:1rem;overflow-y:auto}.remote-card{gap:.6rem;display:grid}.remote-card h2{font-size:1.3rem}.remote-options,.remote-players{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.remote-options li.correct{font-weight:800}.tick{color:var(--ok);font-weight:900}.remote-players li{grid-template-columns:2rem 1fr auto auto;align-items:center;gap:.6rem;display:grid}.remote-players li.offline .remote-player-name{opacity:.5}.remote-player-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.remote-link{text-align:center;padding:1rem;display:block}.stage{flex-direction:column;width:100%;height:100dvh;padding:clamp(1rem,3vw,3rem);font-size:clamp(16px,1.4vw,28px);display:flex;overflow:hidden}.stage-center{justify-content:center;align-items:center;gap:1rem}.stage-scroll{overflow-y:auto}.controls{z-index:40;opacity:.92;align-items:center;gap:.5rem;display:flex;position:fixed;bottom:clamp(.8rem,2vw,2rem);right:clamp(.8rem,2vw,2rem)}.controls .btn-ghost{opacity:.55}.controls:hover .btn-ghost{opacity:1}.picker{gap:1.2rem;width:100%;max-width:1000px;margin:0 auto;padding-bottom:5rem;font-size:16px;display:grid}.picker-head{justify-content:space-between;align-items:center;gap:1rem;display:flex}.picker-head h1{font-size:2rem}.picker-list{gap:1rem;display:grid}.quiz-card{grid-template-columns:1fr minmax(200px,280px);align-items:start;gap:1.2rem;display:grid}.quiz-card h2{margin-bottom:.3rem;font-size:1.4rem}.quiz-card.has-errors{border-color:#ef5d5d73}.quiz-card-actions{gap:.7rem;display:grid}.msg-list{gap:.25rem;margin:.7rem 0 0;padding-left:1.2rem;font-size:.92rem;display:grid}.msg-list.errors{color:#ffb4b4}.msg-list.warnings{color:#f6d48f}@media (width<=640px){.quiz-card{grid-template-columns:1fr}}.lobby{flex-direction:row;gap:clamp(1.5rem,4vw,4rem)}.lobby-join{text-align:center;flex-direction:column;flex:0 0 38%;justify-content:center;align-items:center;gap:1rem;display:flex}.lobby-join h1{font-size:3.4em}.qr{aspect-ratio:1;background:#fff;border-radius:24px;width:min(100%,46vh);padding:14px;box-shadow:0 10px #00000040}.qr svg{width:100%;height:100%;display:block}.join-url{letter-spacing:.01em;font-size:2.2em;font-weight:900}.join-pw{flex-direction:column;gap:.2rem;display:flex}.join-pw strong{color:var(--accent);background:#f2b53a1f;border:2px dashed #f2b53a80;border-radius:14px;padding:.1em .8em;font-size:2.2em}.lobby-players{border:1px solid var(--line);background:#0000002e;border-radius:28px;flex-direction:column;flex:1;gap:1.2rem;min-width:0;padding:clamp(1rem,2.5vw,2.5rem);display:flex;overflow-y:auto}.lobby-players h2{font-size:2em}.player-chips{flex-wrap:wrap;gap:.7rem;margin:0;padding:0;list-style:none;display:flex}.chip{appearance:none;font:inherit;color:var(--text);background:var(--surface-2);cursor:pointer;border:0;border-radius:14px;padding:.45em .9em;font-size:1.35em;font-weight:800;animation:.3s cubic-bezier(.2,1.6,.4,1) pop}.chip:hover{background:#ef5d5d59;text-decoration:line-through}.chip.offline{opacity:.45}.question{gap:clamp(.6rem,1.5vh,1.4rem)}.q-head{grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;display:grid}.q-head .q-count{font-size:1.2em}.q-quiz{text-align:center;font-weight:600}.q-status{justify-self:end}.q-title{text-align:center;text-wrap:balance;padding:0 3vw;font-size:clamp(1.8em,3.4vw,3.2em);font-weight:900}.q-title-solo{padding:0 11vw;font-size:clamp(2.2em,4.4vw,4.4em)}.q-middle{flex:1;justify-content:center;align-items:center;min-height:0;display:flex;position:relative}.q-body-wrap{justify-content:center;align-items:center;width:100%;height:100%;min-height:0;display:flex;position:relative}.q-body{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.6em;width:100%;height:100%;min-height:0;font-size:1.4em;display:flex}.q-body p{max-width:60ch;margin:0;line-height:1.35}.q-body p:has(>.q-media){flex:1;justify-content:center;align-items:center;max-width:none;min-height:0;display:flex}.q-media{object-fit:contain;background:#000;border-radius:18px;max-width:100%;min-height:0;max-height:100%;box-shadow:0 10px 30px #00000059}img.q-media{background:0 0}audio.q-media{width:min(600px,80%);box-shadow:none;background:0 0}.play-overlay{font:inherit;background:var(--accent);color:var(--accent-ink);cursor:pointer;border:0;border-radius:20px;padding:.8em 1.4em;font-size:1.6em;font-weight:900;position:absolute;inset:auto}.q-timer{position:absolute;top:50%;left:0;transform:translateY(-50%)}.cd-ring{aspect-ratio:1;width:clamp(90px,9vw,170px);position:relative}.cd-ring svg{width:100%;height:100%}.cd-ring-track{fill:#00000059;stroke:#ffffff1a;stroke-width:8px}.cd-ring-fill{fill:none;stroke:var(--accent);stroke-width:8px;stroke-linecap:round;transition:stroke-dashoffset .1s linear}.cd-ring.urgent .cd-ring-fill{stroke:var(--bad)}.cd-ring span{place-items:center;font-size:clamp(2rem,3.2vw,4rem);font-weight:900;display:grid;position:absolute;inset:0}.intro-foot{justify-content:center;align-items:center;min-height:2.5em;margin-bottom:4em;display:flex}.read-bar{background:#ffffff1a;border-radius:999px;width:min(700px,70%);height:12px;overflow:hidden}.read-bar-fill{background:var(--accent);transform-origin:0;height:100%;transition:transform .1s linear}.options{grid-template-columns:1fr 1fr;gap:clamp(.5rem,1.2vw,1.2rem);margin-bottom:4em;display:grid}.option{background:var(--opt);border-radius:20px;align-items:center;gap:.8em;min-height:clamp(64px,10vh,130px);padding:clamp(.6rem,1.6vh,1.4rem) 1.2em;transition:opacity .3s,filter .3s,transform .3s;animation:.35s ease-out backwards rise;display:flex;position:relative;overflow:hidden;box-shadow:0 6px #00000047}.option:nth-child(2){animation-delay:60ms}.option:nth-child(3){animation-delay:.12s}.option:nth-child(4){animation-delay:.18s}@keyframes rise{0%{opacity:0;transform:translateY(20px)}}.option-letter{background:#00000038;border-radius:12px;flex:none;place-items:center;width:1.8em;height:1.8em;font-size:1.5em;font-weight:900;display:grid}.option-text{z-index:1;flex:1;font-size:1.55em;font-weight:800;line-height:1.15;position:relative}.option-count{z-index:1;align-items:center;gap:.3em;font-size:1.6em;font-weight:900;display:flex;position:relative}.option-bar{transform-origin:0;background:#ffffff8c;width:100%;height:8px;transition:transform .6s ease-out;position:absolute;bottom:0;left:0}.option.wrong{opacity:.35;filter:grayscale(.7)}.option.correct{outline-offset:-5px;outline:5px solid #fff;transform:scale(1.015)}.option.correct .tick{color:#fff;background:var(--ok);border-radius:50%;place-items:center;width:1.3em;height:1.3em;font-size:.8em;display:inline-grid}.options.n3>:last-child{grid-column:1/-1}.board,.final{align-items:center;gap:1.2rem}.board h1,.final h1{font-size:3.4em}.board-list{gap:.8rem;width:min(1000px,90%);margin:1rem 0 0;padding:0;list-style:none;display:grid}.board-list li{background:var(--surface);border:1px solid var(--line);border-radius:18px;grid-template-columns:2.4em 1fr auto auto;align-items:center;gap:1em;padding:.7em 1.2em;font-size:1.6em;font-weight:800;animation:.4s ease-out backwards rise;display:grid}.board-list li:first-child{background:linear-gradient(90deg, #f2b53a59, var(--surface));border-color:#f2b53a99}.board-rank{color:var(--accent);font-weight:900}.board-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.board-gain{color:var(--ok);font-size:.75em}.board-score{font-variant-numeric:tabular-nums}.podium{flex:1;justify-content:center;align-items:flex-end;gap:clamp(.6rem,2vw,2rem);width:min(1000px,92%);min-height:0;display:flex}.podium-col{text-align:center;flex-direction:column;flex:1;align-items:center;gap:.3em;animation:.6s ease-out backwards rise;display:flex}.podium-col.place-1{animation-delay:.6s}.podium-col.place-2{animation-delay:.3s}.podium-name{overflow-wrap:anywhere;font-size:1.7em;font-weight:900}.podium-score{color:var(--muted);font-size:1.2em;font-weight:700}.podium-block{color:#00000073;border-radius:20px 20px 0 0;place-items:start center;width:100%;padding-top:.3em;font-size:3.4em;font-weight:900;display:grid}.place-1 .podium-block{background:var(--accent);height:34vh}.place-2 .podium-block{background:#c9d3dc;height:24vh}.place-3 .podium-block{background:#d19563;height:17vh}.final-rest{flex-wrap:wrap;justify-content:center;gap:.6rem 1.6rem;max-width:90%;margin:0;padding:0;font-size:1.15em;font-weight:700;list-style:none;display:flex}.final-csv{position:fixed;bottom:clamp(.8rem,2vw,2rem);left:clamp(.8rem,2vw,2rem)}@media (aspect-ratio<=1){.lobby{flex-direction:column;overflow-y:auto}.lobby-join{flex:none}.qr{width:min(70vw,320px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
