:root{--ink-900:#1b1446;--ink-800:#261c5c;--ink-700:#3a2d7d;--spark:#ffd23f;--spark-2:#ff8a1f;--ok:#16a34a;--bad:#dc2626;--partial:#d97706;--c0:#e5484d;--c1:#0e9384;--c2:#c2610c;--c3:#7c3aed;--c4:#2563eb;--c5:#db2777;--bg:#f6f5fb;--surface:#fff;--text:#1c1934;--muted:#6b6788;--border:#e3e0f0;--primary:#4f3cc9;--primary-hover:#412fb0;--radius:14px;--shadow:0 1px 2px #140a3c0f, 0 6px 20px #140a3c0f;--font:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#121022;--surface:#1c1934;--text:#ecebf7;--muted:#a39fc2;--border:#2f2a52;--primary:#7c6cf0;--primary-hover:#8f81f5;--shadow:0 1px 2px #0000004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;line-height:1.45}h1,h2,h3{margin:0 0 .5em;line-height:1.15}a{color:var(--primary)}button{font:inherit}input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--spark);outline-offset:2px}.muted{color:var(--muted)}.small{font-size:.85rem}.row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.num{text-align:right;font-variant-numeric:tabular-nums}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.btn{cursor:pointer;white-space:nowrap;border:0;border-radius:999px;justify-content:center;align-items:center;gap:.4rem;padding:.65rem 1.2rem;font-weight:700;text-decoration:none;transition:transform 80ms,background .15s,opacity .15s;display:inline-flex}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled,.btn.disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.btn-sm{padding:.4rem .8rem;font-size:.88rem}.btn-lg{padding:.9rem 1.8rem;font-size:1.15rem}.btn-block{width:100%}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover)}.btn-spark{background:linear-gradient(135deg, var(--spark), var(--spark-2));color:var(--ink-900);box-shadow:0 4px #0000002e}.btn-spark:hover{filter:brightness(1.05)}.btn-ghost{color:var(--text);border:1.5px solid var(--border);background:0 0}.btn-ghost:hover{background:color-mix(in srgb, var(--primary) 8%, transparent)}.btn-ghost-light{color:#fff;background:#ffffff1a;border:1.5px solid #ffffff40}.btn-ghost-light:hover{background:#ffffff2e}.btn-link{color:var(--primary);background:0 0;padding:.4rem}.btn-link.light{color:#d9d4ff}.danger{color:var(--bad)!important}.icon-btn{color:#fff;cursor:pointer;background:#ffffff1a;border:0;border-radius:10px;place-items:center;width:40px;height:40px;font-size:1.1rem;display:inline-grid}.icon-btn-dark{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 .4rem;font-size:1.4rem}.stage{color:#fff;background:radial-gradient(1200px 600px at 10% -10%, #7c3aed73, transparent 60%), radial-gradient(900px 500px at 110% 110%, #ff8a1f40, transparent 60%), var(--ink-900);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;min-height:100dvh}.stage.center{place-items:center;padding:1rem;display:grid}.center-col{text-align:center;flex-direction:column;align-items:center;gap:1rem;display:flex}.lead{color:#e4e0ff;margin:0;font-size:1.2rem}.muted-light{color:#bdb6ea}.hint{color:var(--muted);margin:0;font-size:.85rem}.hint.light{color:#bdb6ea;text-align:center}.chip{background:#ffffff1f;border-radius:999px;align-items:center;gap:.35rem;padding:.3rem .8rem;font-size:.9rem;font-weight:700;display:inline-flex}.chip-lg{padding:.45rem 1rem;font-size:1.05rem}.chip-score{background:var(--spark);color:var(--ink-900)}.chip-type{color:var(--spark);background:#ffd23f2e}.logo{color:inherit;letter-spacing:-.02em;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:900;text-decoration:none;display:inline-flex}.logo svg{width:32px;height:32px}.logo-lg{font-size:1.8rem}.logo-lg svg{width:44px;height:44px}.stage .logo{color:#fff}.home{flex-direction:column;gap:2rem;padding:1rem clamp(1rem,4vw,3rem) 3rem;display:flex}.home-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.home-hero{text-align:center;justify-items:center;gap:1.5rem;margin-top:4vh;display:grid}.home-hero h1{letter-spacing:-.03em;max-width:16ch;font-size:clamp(2rem,5.5vw,3.6rem)}.home-features{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;width:100%;max-width:1100px;margin:2rem auto 0;display:grid}.home-features article{border-radius:var(--radius);background:#ffffff0f;border:1px solid #ffffff1a;padding:1.2rem}.home-features h2{color:var(--spark);font-size:1.05rem}.home-features p{color:#d9d4ff;margin:0}.pin-card{width:min(380px,100%);color:var(--ink-900);background:#fff;border-radius:22px;flex-direction:column;gap:.6rem;padding:1.5rem;display:flex;box-shadow:0 20px 60px #00000059}.pin-card .logo{color:var(--ink-900);align-self:center;margin-bottom:.5rem}.pin-card label{font-size:.9rem;font-weight:700}.pin-card input{text-align:center;color:var(--ink-900);background:#fff;border:2px solid #d8d3ef;border-radius:12px;padding:.8rem 1rem;font-size:1.3rem;font-weight:800}.pin-card input#pin{letter-spacing:.3em;font-size:1.8rem}.pin-card input:focus{border-color:var(--primary);outline:none}.pin-card .btn-link.light{color:var(--primary)}.notice{color:#7a4b00;background:#fff4d6;border-radius:10px;margin:0;padding:.6rem .8rem;font-size:.92rem}.player{flex-direction:column;display:flex}.player-top{justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.player-main{flex-direction:column;flex:1;justify-content:center;width:100%;max-width:720px;margin:0 auto;padding:1rem;display:flex}.offline{background:var(--bad);text-align:center;padding:.35rem;font-weight:700}.q-text{max-width:24ch;font-size:clamp(1.4rem,5vw,2.2rem)}.q-text-small{text-align:center;margin:.5rem 0 1rem;font-size:1.1rem;font-weight:700}.q-wrap{flex-direction:column;gap:.9rem;display:flex}.countdown-big{color:var(--spark);font-size:4rem;font-weight:900}.rank-big{color:var(--spark);font-size:clamp(4rem,20vw,7rem);font-weight:900;line-height:1}.tiles{grid-template-columns:1fr 1fr;gap:.7rem;display:grid}.tiles-2{grid-template-columns:1fr 1fr}.tiles-3,.tiles-5{grid-template-columns:1fr}.tile{border-radius:var(--radius);color:#fff;text-align:left;cursor:pointer;border:0;align-items:center;gap:.8rem;min-height:96px;padding:1rem;font-size:1.05rem;font-weight:800;display:flex;position:relative;box-shadow:inset 0 -5px #00000038}button.tile:active{transform:translateY(2px);box-shadow:inset 0 -2px #00000038}.tile .shape{flex:none}.tile-picked{outline-offset:-4px;outline:4px solid #fff}.tile .tick{font-size:1.3rem;position:absolute;top:.4rem;right:.6rem}.tile-dim{opacity:.3}.c0{background:var(--c0)}.c1{background:var(--c1)}.c2{background:var(--c2)}.c3{background:var(--c3)}.c4{background:var(--c4)}.c5{background:var(--c5)}.type-answer{flex-direction:column;gap:.8rem;display:flex}.type-answer input{border-radius:var(--radius);text-align:center;color:var(--ink-900);background:#fff;border:0;padding:1.1rem;font-size:1.3rem;font-weight:700}.slider-answer{flex-direction:column;gap:.8rem;display:flex}.slider-value{text-align:center;color:var(--spark);font-size:3rem;font-weight:900}.slider-answer input[type=range]{width:100%;accent-color:var(--spark);height:2.2rem}.slider-scale{color:#bdb6ea;justify-content:space-between;font-weight:700;display:flex}.order-answer ol{gap:.5rem;margin:0 0 .8rem;padding:0;list-style:none;display:grid}.order-item{border-radius:12px;align-items:center;gap:.6rem;padding:.5rem .6rem;font-weight:800;display:flex}.order-pos{background:#00000040;border-radius:50%;flex:none;place-items:center;width:1.8rem;height:1.8rem;display:grid}.order-text{flex:1}.order-item button{color:#fff;cursor:pointer;background:#00000040;border:0;border-radius:10px;width:44px;height:40px}.order-item button:disabled{opacity:.3}.order-answer .btn{width:100%}.btn-double{color:var(--spark);border:2px dashed var(--spark);background:#ffd23f1f;align-self:center}.btn-double small{opacity:.8;font-weight:500}.double-on{color:var(--spark);text-align:center;font-weight:800}.result{text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:.6rem;padding:1.5rem 1.2rem;display:flex}.result-ok{background:linear-gradient(160deg,#16a34a,#0e7a37)}.result-partial{background:linear-gradient(160deg,#d97706,#a85a04)}.result-bad{background:linear-gradient(160deg,#dc2626,#9f1b1b)}.result-none{background:#ffffff1a}.result-icon{background:#fff3;border-radius:50%;place-items:center;width:72px;height:72px;font-size:2.4rem;font-weight:900;display:grid}.result h1{margin:0;font-size:2rem}.result-points{background:#0003;border-radius:999px;padding:.2rem 1rem;font-size:1.8rem;font-weight:900}.result-extras{flex-wrap:wrap;justify-content:center;gap:.4rem;display:flex}.solution{margin:.2rem 0}.why{color:#3b2f00;border-radius:var(--radius);text-align:left;border-left:6px solid var(--spark);background:#fffbea;width:100%;padding:1rem 1.2rem}.why h2{color:#8a5a00;margin-bottom:.3rem;font-size:1rem}.why h2:before{content:"💡 "}.why p{margin:0}.mini-podium{gap:.4rem;min-width:240px;margin:0;padding:0;list-style:none;display:grid}.mini-podium li{background:#ffffff1a;border-radius:10px;gap:.5rem;padding:.5rem .8rem;display:flex}.mini-podium em{color:var(--spark);margin-left:auto;font-style:normal;font-weight:800}.spinner{border:5px solid #fff3;border-top-color:var(--spark);border-radius:50%;width:56px;height:56px;animation:.9s linear infinite spin}.pulse-dot{background:var(--spark);border-radius:50%;width:18px;height:18px;animation:1.4s ease-in-out infinite pulse}.host{flex-direction:column;display:flex}.host-top{flex-wrap:wrap;align-items:center;gap:1rem;padding:.8rem 1.4rem;display:flex}.host-title{color:#d9d4ff;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:700;overflow:hidden}.host-tools{align-items:center;gap:.5rem;display:flex}.host-error{padding:0 1.4rem}.host-main{flex-direction:column;flex:1;padding:1rem clamp(1rem,3vw,2.5rem) 2rem;display:flex}.lobby{gap:1.5rem;display:grid}.join-panel{color:var(--ink-900);background:#fff;border-radius:24px;flex-wrap:wrap;justify-content:center;align-items:center;gap:2rem;padding:1.2rem 2rem;display:flex}.join-text p{margin:0;font-size:1.3rem}.pin-big{letter-spacing:.06em;font-size:clamp(3rem,9vw,6rem);font-weight:900;line-height:1}.qr{width:150px;height:150px}.qr svg{width:100%;height:100%;display:block}.lobby-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.switch{cursor:pointer;align-items:center;gap:.5rem;font-weight:700;display:inline-flex}.switch input{width:20px;height:20px;accent-color:var(--spark)}.waiting{text-align:center;color:#bdb6ea;margin:3rem 0;font-size:1.4rem;animation:2s ease-in-out infinite pulse}.player-chips{flex-wrap:wrap;justify-content:center;gap:.6rem;margin:0 0 1rem;padding:0;list-style:none;display:flex}.player-chip{color:#fff;cursor:pointer;background:#ffffff24;border:0;border-radius:12px;padding:.6rem 1.1rem;font-size:1.15rem;font-weight:800;animation:.35s ease-out pop}.player-chip:hover{background:var(--bad);text-decoration:line-through}.offline-chip{opacity:.45}.preview-screen{flex:1;justify-content:center}.q-text-host{color:var(--ink-900);text-align:center;background:#fff;border-radius:18px;margin:0;padding:.8rem 1.4rem;font-size:clamp(1.8rem,4vw,3.2rem)}.countdown-bar{background:#ffffff26;border-radius:999px;width:min(600px,90%);height:12px;overflow:hidden}.countdown-bar div{background:var(--spark);transform-origin:0;height:100%;animation:linear forwards shrink}.question-screen{flex-direction:column;flex:1;gap:1.2rem;display:flex}.question-mid{flex:1;grid-template-columns:auto 1fr auto;align-items:center;gap:1.5rem;min-height:160px;display:grid}.q-image{object-fit:contain;border-radius:14px;justify-self:center;max-width:100%;max-height:36vh}.q-image-placeholder{min-height:1px}.answer-count{flex-direction:column;align-items:center;gap:.3rem;display:flex}.answer-count strong{font-size:3.4rem;line-height:1}.answer-count span{color:#d9d4ff}.tiles-host{gap:1rem}.tiles-host.tiles-3,.tiles-host.tiles-5,.tiles-host.tiles-6{grid-template-columns:repeat(3,1fr)}.tiles-host .tile{cursor:default;min-height:110px;font-size:clamp(1.1rem,2vw,1.6rem)}.tile-count{text-align:right;min-width:3.5rem;margin-left:auto;font-size:1.6rem;font-weight:900;position:relative}.tile-count i{transform-origin:100%;background:#fff;border-radius:3px;height:5px;position:absolute;bottom:-.4rem;left:0;right:0}.order-host{align-self:center;gap:.7rem;width:100%;max-width:800px;margin:0;padding:0;list-style:none;display:grid}.order-host li{border-radius:14px;align-items:center;gap:1rem;padding:1rem 1.2rem;font-size:1.5rem;font-weight:800;display:flex}.order-host b{background:#00000040;border-radius:50%;place-items:center;width:2.2rem;height:2.2rem;display:grid}.slider-host{align-items:center;gap:1rem;margin:4rem 0 3.5rem;font-size:1.3rem;font-weight:800;display:flex}.slider-track{background:linear-gradient(90deg, var(--c4), var(--c3), var(--c0));border-radius:999px;flex:1;height:14px;position:relative}.slider-marker{background:var(--spark);color:var(--ink-900);white-space:nowrap;border-radius:10px;padding:.3rem .8rem;position:absolute;top:-3.2rem;transform:translate(-50%)}.slider-marker:after{content:"";border:8px solid #0000;border-bottom:0;border-top-color:var(--spark);position:absolute;bottom:-8px;left:50%;transform:translate(-50%)}.slider-avg{background:#fff;font-size:1rem;top:auto;bottom:-3.2rem}.slider-avg:after{border:8px solid #0000;border-top:0;border-bottom-color:#fff;top:-8px;bottom:auto}.type-host{text-align:center;color:#d9d4ff;font-size:1.8rem}.solution-host{text-align:center;font-size:1.8rem}.reveal-head{justify-content:space-between;align-items:center;gap:1rem;width:100%;display:flex}.reveal-head .q-text-host{flex:1;font-size:clamp(1.4rem,3vw,2.2rem)}.reveal-stats{flex-wrap:wrap;justify-content:center;gap:.6rem;display:flex}.why-host{align-self:center;max-width:1100px;font-size:clamp(1.05rem,1.8vw,1.35rem)}.leaderboard{width:100%;max-width:900px;margin:0 auto}.board{gap:.6rem;width:100%;margin:0;padding:0;list-style:none;display:grid}.board-row{color:var(--ink-900);background:#fff;border-radius:14px;align-items:center;gap:1rem;padding:.8rem 1.2rem;font-size:1.4rem;font-weight:800;animation:.4s ease-out both slide-in;display:flex}.board-rank{background:var(--ink-900);width:2.4rem;height:2.4rem;color:var(--spark);border-radius:50%;flex:none;place-items:center;display:grid}.board-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.board-delta.up{color:var(--ok);font-size:1rem}.board-score{font-variant-numeric:tabular-nums}.board-compact .board-row{padding:.5rem 1rem;font-size:1.05rem}.board-compact .board-rank{width:1.9rem;height:1.9rem}.podium-screen{flex-direction:column;flex:1;align-items:center;gap:1.5rem;display:flex;position:relative;overflow:hidden}.podium-screen h1{color:var(--spark);font-size:3rem}.podium{align-items:flex-end;gap:1rem;display:flex}.podium-col{flex-direction:column;align-items:center;gap:.3rem;width:clamp(110px,18vw,220px);animation:.8s ease-out both rise;display:flex}.podium-1{animation-delay:.9s}.podium-2{animation-delay:.45s}.podium-3{animation-delay:0s}.podium-name{text-align:center;overflow-wrap:anywhere;font-size:1.5rem;font-weight:900}.podium-score{color:var(--spark);font-weight:800}.podium-block{width:100%;color:var(--ink-900);border-radius:14px 14px 0 0;place-items:center;font-size:3rem;font-weight:900;display:grid}.podium-1 .podium-block{background:linear-gradient(var(--spark), var(--spark-2));height:220px}.podium-2 .podium-block{background:#e5e7f2;height:160px}.podium-3 .podium-block{background:#e9b48a;height:110px}.podium-actions{flex-wrap:wrap;justify-content:center;gap:.8rem;display:flex}.board-compact{max-width:520px}.confetti{pointer-events:none;position:absolute;inset:0}.confetti i{top:-20px;left:calc(var(--i) * 2.5%);background:var(--c0);width:10px;height:16px;animation:fall 3.5s linear calc(var(--i) * -.17s) infinite;opacity:.9;position:absolute}.confetti i:nth-child(6n+1){background:var(--c1)}.confetti i:nth-child(6n+2){background:var(--spark)}.confetti i:nth-child(6n+3){background:var(--c3)}.confetti i:nth-child(6n+4){background:var(--c4)}.confetti i:nth-child(6n+5){background:var(--c5)}.timer{place-items:center;display:grid;position:relative}.timer svg{position:absolute;inset:0;transform:rotate(-90deg)}.timer-track{fill:#ffffff1a;stroke:#ffffff26;stroke-width:8px}.timer-bar{fill:none;stroke:var(--spark);stroke-width:8px;stroke-linecap:round;transition:stroke-dashoffset .1s linear}.timer span{font-size:2.4rem;font-weight:900;position:relative}.timer-low .timer-bar{stroke:var(--c0)}.timer-low span{color:#ffb4b6}.progress{background:#ffffff26;border-radius:999px;height:8px;overflow:hidden}.progress div{background:var(--spark);transform-origin:0;height:100%;transition:transform .1s linear}.app{min-height:100vh}.app-header{background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:1.5rem;padding:.8rem clamp(1rem,3vw,2rem);display:flex}.app-header .logo svg rect{fill:var(--ink-900)}.app-header nav{flex:1;gap:1rem;display:flex}.app-header nav a{color:var(--text);font-weight:600;text-decoration:none}.app-header nav a:hover{color:var(--primary)}.app-header-user{color:var(--muted);align-items:center;gap:.6rem;display:flex}.app-main{max-width:1100px;margin:0 auto;padding:1.5rem clamp(1rem,3vw,2rem) 3rem}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin:.5rem 0 1.2rem;display:flex}.page-head h1{margin:0;font-size:1.8rem}.page-loading{place-items:center;min-height:40vh;display:grid}.page-loading:after{content:"";border:4px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:36px;height:36px;animation:.9s linear infinite spin}.card{background:var(--surface);color:var(--text);box-shadow:var(--shadow);border-radius:20px;padding:1.6rem}.auth-card{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;flex-direction:column;gap:.8rem;width:min(400px,100%);display:flex}@media (prefers-color-scheme:dark){.auth-card{--lightningcss-light: ;--lightningcss-dark:initial}}.auth-card .logo{color:var(--text)}.auth-card h1{margin:.5rem 0 0}.auth-card p{margin:0}.empty{text-align:center;background:var(--surface);border-radius:var(--radius);border:1.5px dashed var(--border);padding:3rem 1rem}.error-note{background:color-mix(in srgb, var(--bad) 12%, var(--surface));color:var(--bad);border-radius:10px;margin:.4rem 0;padding:.6rem .8rem;font-weight:600}.stage .error-note{background:#fff}.field{border:0;flex-direction:column;gap:.3rem;min-width:0;margin:0 0 1rem;padding:0;display:flex}.field>span,.field>legend{margin-bottom:.2rem;padding:0;font-size:.88rem;font-weight:700}.field input,.field select,.field textarea,.row>input{border:1.5px solid var(--border);background:var(--surface);border-radius:10px;width:100%;padding:.6rem .75rem}.field input:focus,.field select:focus,.field textarea:focus,.row>input:focus{border-color:var(--primary);outline:none}.row>input{flex:1;margin-bottom:.4rem}.grid-3{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:0 1rem;display:grid}.quiz-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.quiz-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;display:flex;overflow:hidden}.quiz-card-body{border-top:6px solid var(--primary);flex:1;padding:1.1rem 1.2rem .6rem}.quiz-card:nth-child(6n+2) .quiz-card-body{border-top-color:var(--c1)}.quiz-card:nth-child(6n+3) .quiz-card-body{border-top-color:var(--c2)}.quiz-card:nth-child(6n+4) .quiz-card-body{border-top-color:var(--c0)}.quiz-card:nth-child(6n+5) .quiz-card-body{border-top-color:var(--c4)}.quiz-card:nth-child(6n) .quiz-card-body{border-top-color:var(--c5)}.quiz-card h2{font-size:1.15rem}.quiz-card h2 a{color:var(--text);text-decoration:none}.clamp{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 .4rem;display:-webkit-box;overflow:hidden}.meta{color:var(--muted);margin:0;font-size:.85rem}.quiz-card-actions{flex-wrap:wrap;align-items:center;gap:.3rem;padding:.8rem 1rem 1rem;display:flex}.quiz-card-actions .btn-spark{margin-right:auto}.editor-bar{background:var(--surface);border-bottom:1px solid var(--border);z-index:5;flex-wrap:wrap;align-items:center;gap:.6rem;padding:.7rem clamp(1rem,3vw,2rem);display:flex;position:sticky;top:0}.title-input{background:0 0;border:0;border-radius:8px;flex:1;min-width:200px;padding:.3rem .5rem;font-size:1.3rem;font-weight:800}.title-input:focus{outline:2px solid var(--primary)}.save-state{font-size:.85rem}.editor-error{padding:.5rem clamp(1rem,3vw,2rem) 0}.editor{grid-template-columns:300px 1fr;align-items:start;gap:1.5rem;max-width:1300px;margin:0 auto;padding:1.2rem clamp(1rem,3vw,2rem) 3rem;display:grid}.q-list{flex-direction:column;gap:.8rem;display:flex;position:sticky;top:76px}.q-list ol{gap:.4rem;max-height:55vh;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.q-list-item{text-align:left;background:var(--surface);border:1.5px solid var(--border);cursor:pointer;width:100%;color:var(--text);border-radius:12px;align-items:flex-start;gap:.6rem;padding:.6rem;display:flex}.q-list-item.active{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 20%, transparent)}.q-list-text{flex-direction:column;min-width:0;font-size:.92rem;display:flex;overflow:hidden}.q-list-text small{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:700}.q-num{background:var(--ink-900);width:1.7rem;height:1.7rem;color:var(--spark);border-radius:50%;flex:none;place-items:center;font-size:.85rem;font-weight:800;display:grid}.add-menu{position:relative}.add-menu summary{list-style:none}.add-menu summary::-webkit-details-marker{display:none}.add-menu>div{z-index:10;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:12px;padding:.3rem;display:grid;position:absolute;top:calc(100% + .3rem);left:0;right:0}.add-menu>div button{text-align:left;cursor:pointer;color:var(--text);background:0 0;border:0;border-radius:8px;padding:.6rem .8rem}.add-menu>div button:hover{background:color-mix(in srgb, var(--primary) 10%, transparent)}.q-editor{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:18px;padding:1.4rem}.q-editor.empty{text-align:center;padding:4rem}.q-editor-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.q-editor-top h2{margin:0}.q-text-input{font-size:1.2rem;font-weight:700}.option-grid{grid-template-columns:1fr 1fr;gap:.6rem;margin-bottom:.6rem;display:grid}.option-edit{color:#fff;border-radius:12px;align-items:center;gap:.5rem;padding:.45rem .6rem;display:flex}.option-edit input:not([type]){min-width:0;color:var(--ink-900);background:#ffffffeb;border:0;border-radius:8px;flex:1;padding:.5rem;font-weight:600}.correct-toggle{cursor:pointer;align-items:center;gap:.25rem;font-size:.8rem;font-weight:700;display:inline-flex}.correct-toggle input{accent-color:#fff;width:18px;height:18px}.option-edit .icon-btn-dark{color:#fff}.why-field textarea{background:color-mix(in srgb, var(--spark) 10%, var(--surface))}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;background:var(--surface);border-radius:var(--radius);width:100%;box-shadow:var(--shadow);overflow:hidden}.table th,.table td{border-bottom:1px solid var(--border);text-align:left;padding:.7rem 1rem}.table th{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:.8rem}.table th.num,.table td.num{text-align:right}.table tr:last-child td{border-bottom:0}.kpis{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:.2rem;padding:1rem 1.2rem;display:flex}.kpi span{color:var(--muted);font-size:.85rem;font-weight:600}.kpi strong{font-variant-numeric:tabular-nums;font-size:2rem}.kpi-wide{grid-column:span 2}.kpi .kpi-text{font-size:1rem}.q-stats{gap:.6rem;margin:0 0 2rem;padding:0;list-style:none;display:grid}.q-stats li{background:var(--surface);border:1px solid var(--border);border-radius:12px;gap:.8rem;padding:.8rem 1rem;display:flex}.q-stats-body{flex:1;min-width:0}.q-stats-body p{margin:0 0 .4rem;font-weight:600}.bar-row{grid-template-columns:1fr auto 4rem;align-items:center;gap:.8rem;display:grid}.bar{background:var(--border);border-radius:999px;height:10px;overflow:hidden}.bar div{background:var(--ok);border-radius:999px;height:100%}.modal{border:1px solid var(--border);background:var(--surface);width:min(440px,100% - 2rem);color:var(--text);border-radius:20px;padding:1.5rem;box-shadow:0 20px 60px #0000004d}.modal::backdrop{background:#140a3c73}.modal h2{font-size:1.3rem}.modal p{margin:0 0 1rem}.modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:.5rem;display:flex}.kpi small{font-size:.85rem}.admin-setting{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;padding:1rem 1.2rem;display:flex}.admin-setting h2{margin:0 0 .2rem;font-size:1.05rem}.admin-setting p{margin:0}.toggle{background:var(--border);cursor:pointer;border:0;border-radius:999px;flex:none;width:52px;height:30px;transition:background .15s;position:relative}.toggle span{background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000004d}.toggle[aria-checked=true]{background:var(--ok)}.toggle[aria-checked=true] span{transform:translate(22px)}.toggle:disabled{opacity:.6;cursor:wait}.admin-users{min-width:960px}.admin-users th,.admin-users td{vertical-align:middle;padding:.6rem .5rem}.cell-email{overflow-wrap:anywhere;min-width:10rem}.row-disabled td:not(:last-child){color:var(--muted)}.table-actions{grid-template-columns:auto auto;justify-content:end;gap:.3rem;display:grid}.table-actions .btn{padding:.3rem .65rem;font-size:.82rem}.badge{white-space:nowrap;background:color-mix(in srgb, var(--muted) 15%, transparent);color:var(--muted);border-radius:999px;padding:.15rem .6rem;font-size:.78rem;font-weight:700;display:inline-block}.badge-admin{background:color-mix(in srgb, var(--primary) 16%, transparent);color:var(--primary)}.badge-on{background:color-mix(in srgb, var(--ok) 15%, transparent);color:var(--ok)}.badge-off{background:color-mix(in srgb, var(--bad) 14%, transparent);color:var(--bad)}.temp-password{align-items:center;gap:.6rem;margin-bottom:1rem;display:flex}.temp-password code{letter-spacing:.06em;background:var(--bg);border:1.5px dashed var(--border);-webkit-user-select:all;user-select:all;overflow-wrap:anywhere;border-radius:10px;flex:1;padding:.6rem .8rem;font-size:1.3rem;font-weight:700}.pop{animation:.35s ease-out pop}@keyframes pop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.35;transform:scale(.85)}}@keyframes shrink{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes slide-in{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;transform:translateY(80px)}to{opacity:1;transform:none}}@keyframes fall{to{transform:translateY(110vh)rotate(720deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.confetti{display:none}}@media (width<=860px){.editor{grid-template-columns:1fr}.q-list{position:static}.q-list ol{max-height:none}.question-mid{grid-template-columns:auto 1fr}.question-mid .q-image-placeholder{display:none}.tiles-host.tiles-3,.tiles-host.tiles-5,.tiles-host.tiles-6{grid-template-columns:1fr 1fr}.reveal-head{flex-direction:column;align-items:stretch}.kpi-wide{grid-column:auto}}@media (width<=560px){.option-grid{grid-template-columns:1fr}.tiles-4,.tiles-6{grid-template-columns:1fr 1fr}.tile{min-height:84px;font-size:.98rem}.app-header nav{flex-basis:100%;order:3}.join-panel{gap:1rem;padding:1rem}.qr{width:120px;height:120px}.bar-row{grid-template-columns:1fr auto}.bar-row .muted{display:none}}.media{place-items:center;gap:.6rem;width:100%;display:grid;position:relative}.media img,.media video{background:#000;border-radius:14px;max-width:100%;max-height:42vh;display:block}.media-image img{object-fit:contain;background:0 0}.media-video iframe{aspect-ratio:16/9;background:#000;border:0;border-radius:14px;width:min(100%,74.6667vh)}.media audio{width:min(520px,100%)}.media-play{z-index:2;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.media-error{color:#ffb4b6;margin:0;font-weight:700}.audio-visual{align-items:flex-end;gap:8px;height:110px;display:flex}.audio-visual i{background:linear-gradient(var(--spark), var(--spark-2));border-radius:7px;width:14px;height:18%;transition:height .3s}.is-playing .audio-visual i{animation:eq 1s ease-in-out calc(var(--i) * -.13s) infinite alternate}@keyframes eq{0%{height:15%}50%{height:95%}to{height:35%}}.q-media{justify-self:center}.media-screen{align-items:center}.media-screen .q-text-host{width:100%}.media-hint{color:#e4e0ff;text-align:center;margin:0;font-size:1.2rem}.media-stage img,.media-stage video{max-height:58vh}.media-stage.media-video iframe{width:min(100%,103.111vh)}.media-stage .audio-visual{height:200px}.media-stage .audio-visual i{width:22px}.media-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;display:flex}.media-icon{color:var(--spark);animation:1.6s ease-in-out infinite pulse}.media-editor .segmented{border:1.5px solid var(--border);border-radius:999px;flex-wrap:wrap;align-self:flex-start;gap:2px;margin-bottom:.8rem;padding:3px;display:inline-flex}.segmented button{color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:.4rem .9rem;font-weight:600}.segmented button.active{background:var(--primary);color:#fff}.media-source{flex-wrap:nowrap;margin-bottom:.8rem}.media-source>input{margin-bottom:0}.check{cursor:pointer;align-items:flex-start;gap:.6rem;margin-bottom:.8rem;display:flex}.check input{width:18px;height:18px;accent-color:var(--primary);flex:none;margin-top:.15rem}.media-preview{background:var(--ink-900);color:#fff;border-radius:14px;padding:1rem}.media-preview img,.media-preview video{max-height:240px}.media-preview.media-video iframe{width:min(100%,427px)}.media-preview .audio-visual{height:60px}@media (width<=560px){.media-source{flex-wrap:wrap}}.ai-dialog{border:1px solid var(--border);background:var(--surface);width:min(680px,100vw - 2rem);max-height:calc(100dvh - 2rem);color:var(--text);box-shadow:var(--shadow);border-radius:20px;padding:1.4rem;overflow:auto}.ai-dialog::backdrop{background:#0f0a288c}.ai-dialog-head{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.ai-dialog-head h2{margin:0}.ai-fields{border:0;min-width:0;margin:0;padding:0}.ai-note{background:color-mix(in srgb, var(--spark) 14%, var(--surface));border-radius:10px;margin:-.4rem 0 1rem;padding:.6rem .8rem;font-size:.88rem;font-weight:600}.ai-types{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:0 1rem;display:grid}.ai-types .check{margin-bottom:.4rem}.ai-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.6rem;margin-top:1rem;display:flex}.ai-progress{align-items:center;gap:.5rem;margin-right:auto;font-size:.9rem;display:inline-flex}.ai-progress:before{content:"";border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:16px;height:16px;animation:.9s linear infinite spin}.ai-review{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.ai-review li{border:1.5px solid var(--border);border-radius:12px;padding:.7rem .8rem .1rem}.ai-review li:has(input:checked){border-color:var(--primary)}.ai-review .check>span{flex-direction:column;gap:.15rem;min-width:0;display:flex}.ai-review small{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:700}.ai-answer{color:var(--ok);overflow-wrap:anywhere;font-size:.88rem;font-weight:600}.team-chip{color:#fff}.team-dot{vertical-align:baseline;border-radius:50%;flex:none;width:.8em;height:.8em;margin-right:.35em;display:inline-block;box-shadow:0 0 0 2px #ffffffb3}.mode-bar{flex-wrap:wrap;justify-content:center;align-items:center;gap:.8rem;margin-bottom:1rem;display:flex}.segmented-dark{border:1.5px solid #ffffff40;border-radius:999px;gap:2px;padding:3px;display:inline-flex}.segmented-dark button{color:#fff}.segmented-dark button.active{background:var(--spark);color:var(--ink-900)}.team-columns{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:1rem;display:grid}.team-col{background:#ffffff0f;border-radius:18px;padding:.8rem}.team-col .player-chips{justify-content:flex-start;margin:0}.team-head{border-radius:12px;justify-content:space-between;align-items:center;margin:0 0 .7rem;padding:.5rem .9rem;font-size:1.3rem;display:flex}.team-head span{background:#00000038;border-radius:999px;padding:0 .6rem;font-size:1rem}.board-subtitle{color:#d9d4ff;margin:1.2rem 0 .6rem;font-size:1.2rem}.board-size{color:var(--muted);font-size:.9rem;font-weight:600}.board-row .team-dot{box-shadow:none;width:1rem;height:1rem;margin:0}.mvp{border:2px solid var(--spark);background:#ffffff1a;border-radius:18px;flex-wrap:wrap;justify-content:center;align-items:center;gap:.8rem;padding:.7rem 1.4rem;font-size:1.3rem;display:flex}.mvp-label{color:var(--spark);font-weight:900}.team-standing{border-radius:18px;flex-direction:column;align-items:center;gap:.1rem;padding:.7rem 1.4rem;display:flex;box-shadow:inset 0 -4px #0003}.team-standing strong{font-size:2.4rem;line-height:1.1}.team-standing small{opacity:.9}.mini-podium .team-dot{margin:.3em 0 0}.tag{background:color-mix(in srgb, var(--muted) 18%, transparent);color:var(--muted);vertical-align:middle;border-radius:999px;margin-left:.5rem;padding:.1rem .55rem;font-size:.75rem;font-weight:700;display:inline-block}.section-gap{margin-bottom:2rem}.tag-ok{background:color-mix(in srgb, var(--ok) 16%, transparent);color:var(--ok);margin-left:0}.modal-backdrop{z-index:50;background:#0a061e8c;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal{width:min(520px,100%);max-height:calc(100dvh - 2rem);overflow:auto}.modal-head{justify-content:space-between;align-items:center;gap:1rem;display:flex}.modal-head h2{margin:0}.modal-actions{margin-top:.8rem}.challenge-share{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:1.2rem;margin:.8rem 0 1.5rem;padding:1rem;display:flex}.qr-light{background:#fff;border-radius:10px;padding:4px}.challenge-share-link{flex-direction:column;flex:1;gap:.6rem;min-width:0;display:flex}.challenge-share-link code{word-break:break-all;background:color-mix(in srgb, var(--primary) 8%, transparent);border-radius:8px;padding:.5rem .7rem;font-size:.95rem}.chip-challenge{background:var(--ink-900);color:var(--spark);align-self:center}.challenge-title{text-align:center;margin:0;font-size:1.4rem}.pin-card .hint{text-align:center}.challenge-media img,.challenge-media video{max-height:34vh}.challenge-media.media-video iframe{width:min(100%,60.4444vh)}.challenge-media .audio-visual{height:80px}.challenge-board li.me{outline:2px solid var(--spark)}.auto-toggle{color:#fff;cursor:pointer;background:#ffffff1a;border:1.5px solid #ffffff40;border-radius:999px;align-items:center;gap:.5rem;height:40px;padding:0 .9rem 0 .5rem;font-weight:700;display:inline-flex}.auto-toggle .auto-knob{background:#ffffff40;border-radius:999px;width:34px;height:20px;transition:background .2s;position:relative}.auto-toggle .auto-knob:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .2s;position:absolute;top:3px;left:3px}.auto-toggle.on{border-color:var(--spark)}.auto-toggle.on .auto-knob{background:var(--spark)}.auto-toggle.on .auto-knob:after{background:var(--ink-900);transform:translate(14px)}.next-btn{position:relative;overflow:hidden}.next-btn .next-count{font-variant-numeric:tabular-nums;opacity:.75;text-align:right;min-width:2.6em;font-size:.9em}.next-btn .next-fill{background:var(--ink-900);opacity:.35;transform-origin:0;height:4px;transition:transform .1s linear;position:absolute;bottom:0;left:0;right:0}@media (width<=560px){.auto-toggle{padding:0 .6rem 0 .4rem;font-size:.85rem}}.catalog-banner{border-radius:var(--radius);color:var(--text);background:color-mix(in srgb, var(--spark) 16%, var(--surface));border:1px solid color-mix(in srgb, var(--spark) 40%, var(--border));align-items:center;gap:.8rem;margin:0 0 1.2rem;padding:.8rem 1.1rem;text-decoration:none;display:flex}.catalog-banner:hover{border-color:var(--spark-2)}.catalog-banner>span:first-child{font-size:1.4rem}.catalog-banner-go{color:var(--primary);white-space:nowrap;margin-left:auto;font-weight:800}.catalog-search{border:1.5px solid var(--border);background:var(--surface);border-radius:999px;min-width:min(280px,100%);padding:.55rem 1rem}.catalog-search:focus{border-color:var(--primary);outline:none}.catalog-filters{flex-wrap:wrap;gap:.4rem;margin-bottom:1.2rem;display:flex}.chip-filter{border:1.5px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:999px;padding:.35rem .8rem;font-weight:600}.chip-filter small{color:var(--muted);margin-left:.2rem}.chip-filter.active{background:var(--primary);border-color:var(--primary);color:#fff}.chip-filter.active small{color:#fffc}.catalog-tags{gap:.35rem;margin-bottom:.5rem}.media-badges{gap:.2rem;font-size:.95rem;display:inline-flex}.catalog-questions{gap:.5rem;max-height:50vh;margin:0 0 1rem;padding-left:1.4rem;display:grid;overflow:auto}.catalog-questions li span{display:block}.catalog-pending{gap:.5rem;margin:0 0 1rem;padding:0;list-style:none;display:grid}.catalog-pending li{background:color-mix(in srgb, var(--spark) 12%, var(--surface));border:1px solid var(--border);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 1rem;display:flex}.catalog-pending p{margin:.1rem 0 0}.catalog-all{margin-bottom:2rem}.catalog-all summary{cursor:pointer;margin-bottom:.8rem;font-weight:700}.link-inline{text-align:left;padding:0;font-weight:600}dialog.modal:has(.catalog-questions){width:min(640px,100% - 2rem)}
