@font-face{font-family:"Baloo 2";font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/baloo2-800-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--stage-bg:#14181f;--stage-bg-2:#1c232e;--stage-ink:#f4f7fb;--stage-ink-dim:#9aa6b6;--stage-line:#b4c3d724;--pad-bg:#f5f7fb;--pad-card:#fff;--pad-ink:#151b24;--pad-ink-dim:#5d6675;--pad-line:#141e2d1f;--tile-a:#d55e00;--tile-a-ink:#fff;--tile-b:#0072b2;--tile-b-ink:#fff;--tile-c:#009e73;--tile-c-ink:#fff;--tile-d:#e69f00;--tile-d-ink:#161b22;--answer-ink:#161b22;--ok:#2ecc71;--no:#ff7a7a;--ok-ink:#15a34a;--ok-tint:#f0fbf4;--no-ink:#e0494a;--no-tint:#fff3f3;--font-sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Inter, Helvetica, Arial, sans-serif;--font-display:"Baloo 2", var(--font-sans);--motion-ui:.16s;--motion-ui-slow:.28s;--motion-reveal:.95s;--motion-scoreboard-flip:1.2s;--ease:cubic-bezier(.2, .7, .2, 1);--space-1:8px;--space-2:16px;--space-3:24px;--space-4:40px;--space-5:64px;--radius:16px}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-sans);color:#e2e8f0;background:radial-gradient(1200px 600px at 50% -10%,#1e293b,#0f172a);min-height:100vh}.hello{place-items:center;width:100%;min-height:100vh;padding:24px;display:grid}.card{text-align:center;background:#94a3b814;border:1px solid #94a3b82e;border-radius:20px;max-width:560px;margin:0 auto;padding:40px}.kicker{letter-spacing:.12em;text-transform:uppercase;color:#94a3b8;margin:0 0 12px;font-size:12px}h1{margin:0 0 12px;font-size:34px}.sub{margin:0 0 8px;font-size:17px}.muted{color:#94a3b8;margin:8px 0 0;font-size:14px}.cta{background:var(--ws-accent);color:#fff;font:inherit;letter-spacing:.01em;cursor:pointer;transition:background var(--t-color) ease, box-shadow var(--t-color) ease, border-color var(--t-color) ease, color var(--t-color) ease, transform var(--t-press) var(--ws-ease);border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;margin:16px 0 4px;padding:12px 20px;font-size:14px;font-weight:600;line-height:1;text-decoration:none;display:inline-flex;box-shadow:0 1px 2px #7c3aed47,0 5px 14px #7c3aed2e}.cta:hover{background:var(--ws-accent-hover);box-shadow:0 2px 4px #7c3aed42,0 7px 18px #7c3aed38}.cta:active{background:var(--ws-accent-press);transform:translateY(1px);box-shadow:0 1px 2px #7c3aed4d}.cta:focus-visible{box-shadow:0 1px 2px #7c3aed47, 0 5px 14px #7c3aed2e, 0 0 0 2px var(--ws-bg), 0 0 0 4px var(--ws-accent);outline:none}.cta.finish{background:var(--ws-danger);box-shadow:0 1px 2px #c0392b40,0 5px 14px #c0392b26}.cta.finish:hover{background:var(--ws-danger-hover);box-shadow:0 2px 4px #c0392b3d,0 7px 18px #c0392b33}.cta.finish:active{background:var(--ws-danger-hover);transform:translateY(1px);box-shadow:0 1px 2px #c0392b4d}.cta.finish:focus-visible{box-shadow:0 1px 2px #c0392b40, 0 5px 14px #c0392b26, 0 0 0 2px var(--ws-bg), 0 0 0 4px var(--ws-danger);outline:none}.cta:disabled,.cta[disabled],.btn-ghost:disabled,.btn-ghost[disabled]{background:var(--ws-bg-2);color:var(--ws-ink-dim);border-color:var(--ws-line-soft);box-shadow:none;cursor:not-allowed;transform:none}.big-emoji{margin:16px 0 8px;font-size:96px;line-height:1.1}.lobby{background:radial-gradient(120% 90% at 50% -12%, var(--stage-bg-2), var(--stage-bg));width:100%;min-height:100dvh;color:var(--stage-ink);flex-direction:column;gap:clamp(14px,2.4vh,28px);padding:clamp(18px,3vh,36px) clamp(22px,4vw,60px) clamp(20px,3vh,40px);display:flex}.lobby-brand-band{justify-content:space-between;align-items:center;gap:16px;display:flex}.lobby-brand{align-items:center;gap:11px;display:flex}.lobby-shapes{gap:6px;display:flex}.lobby-shapes svg{width:clamp(18px,1.8vw,24px);height:clamp(18px,1.8vw,24px)}.lobby-wordmark{letter-spacing:-.01em;color:var(--stage-ink);font-size:clamp(20px,2.3vw,30px);font-weight:800}.sound-toggle-labeled{border:1px solid var(--stage-line);color:var(--stage-ink);font:inherit;cursor:pointer;background:#ffffff0f;border-radius:999px;align-items:center;gap:8px;padding:8px 15px;font-size:clamp(13px,1.3vw,15px);font-weight:600;display:inline-flex}.sound-toggle-labeled:hover{border-color:var(--stage-ink-dim);background:#ffffff1a}.sound-toggle-labeled:focus-visible{box-shadow:0 0 0 2px var(--stage-bg), 0 0 0 4px var(--ws-accent-lift);outline:none}.lobby-hero{flex-flow:wrap;flex:1;justify-content:center;align-items:center;gap:clamp(28px,5vw,84px);display:flex}.lobby-code-block{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.lobby-join-line{align-items:center;gap:8px;display:flex}.lobby-join-at{color:var(--stage-ink-dim);margin:0;font-size:clamp(15px,1.6vw,22px);font-weight:500}.lobby-join-at strong{color:var(--stage-ink);font-weight:800}.lobby-code-label{letter-spacing:.3em;text-transform:uppercase;color:var(--stage-ink-dim);margin:clamp(8px,1.6vh,18px) 0 0;font-size:clamp(12px,1.1vw,16px);font-weight:700}.lobby-code{letter-spacing:.06em;color:var(--stage-ink);margin:clamp(2px,.6vh,8px) 0 0;font-size:clamp(76px,13vw,196px);font-weight:800;line-height:.9}.lobby-hero.is-filling .lobby-code{font-size:clamp(66px,11vw,164px)}.lobby-qr-card{background:#fff;border-radius:18px;flex-direction:column;flex-shrink:0;align-items:center;gap:clamp(6px,1vh,10px);padding:clamp(14px,1.8vh,22px) clamp(14px,1.8vh,22px) clamp(10px,1.4vh,16px);display:flex;position:relative;box-shadow:0 22px 70px #00000073}.lobby-qr-card>svg{width:clamp(128px,15vw,200px);height:clamp(128px,15vw,200px);display:block}.lobby-qr-cap{color:#46505f;margin:0;font-size:clamp(12px,1.1vw,15px);font-weight:600}.lobby-roster-row{flex:none;grid-template-columns:1fr auto 1fr;align-items:center;gap:clamp(12px,2vw,28px);min-height:clamp(52px,9vh,84px);display:grid}.lobby-roster-count{color:var(--stage-ink-dim);white-space:nowrap;justify-self:start;margin:0;font-size:clamp(15px,1.6vw,21px);font-weight:600}.lobby-roster-count .count-bump{color:var(--stage-ink);font-size:1.55em;font-weight:800}.lobby-chips{flex-wrap:wrap;justify-content:center;gap:clamp(8px,1.2vw,14px);display:flex}.lobby-roster-row .lobby-waiting{justify-self:end;margin:0}.lobby-controls{border-top:1px solid var(--stage-line);background:#1c232e8c;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin:0 calc(-1*clamp(22px,4vw,60px)) calc(-1*clamp(20px,3vh,40px));padding:clamp(16px,2.6vh,30px) clamp(24px,4vw,64px);display:grid}.lobby-controls-spacer{width:1px}.lobby-controls-main{flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(12px,1.8vw,22px);display:flex}.lobby.voice-mode .lobby-controls{margin-top:clamp(210px,30vh,260px)}.lobby-controls .cta{background:var(--ws-accent);color:#fff;border:2px solid #0000;align-items:center;gap:9px;padding:15px 34px;font-size:16px;font-weight:700;display:inline-flex;box-shadow:0 10px 32px #7c3aed6b}.lobby-controls .cta:hover{background:var(--ws-accent-hover);box-shadow:0 12px 34px #7c3aed75}.lobby-controls .cta:active{background:var(--ws-accent-press);transform:translateY(1px);box-shadow:0 4px 14px #7c3aed61}.lobby .live-toggle{color:var(--stage-ink);transition:background var(--t-color) ease, border-color var(--t-color) ease, transform var(--t-press) var(--ws-ease);background:#ffffff0f;border:1px solid #b4c3d724;border-radius:999px;align-items:center;gap:16px;padding:clamp(12px,1.7vh,17px) clamp(24px,3vw,38px);font-size:clamp(16px,1.9vw,23px);font-weight:500;display:inline-flex}.lobby .live-toggle:hover{border-color:var(--stage-ink-dim);background:#ffffff1a}.lobby .live-toggle:active{transform:translateY(1px)}.lobby .live-toggle svg *{stroke:currentColor}.lobby .live-toggle svg{transform:scale(2)}.lobby-controls .leave-link{color:var(--stage-ink-dim);justify-self:end}.lobby-expand-btn{color:#46505f;cursor:pointer;background:#14181f0a;border:1px solid #14181f24;border-radius:8px;place-items:center;width:34px;height:34px;display:inline-grid;position:absolute;top:10px;right:10px}.lobby-expand-btn:hover{color:#14181f;background:#14181f14}.lobby-waiting{color:var(--stage-ink-dim);align-items:center;gap:8px;margin:0;font-size:clamp(15px,1.6vw,19px);font-weight:600;display:inline-flex}.lobby-waiting-dots{color:var(--ws-accent-lift)}.lobby-copy{justify-content:center;align-items:center;min-width:38px;min-height:32px;display:inline-flex}.lobby-expand-overlay{z-index:120;cursor:pointer;background:radial-gradient(120% 90% at 50% -10%, var(--stage-bg-2), var(--stage-bg));color:var(--stage-ink);flex-direction:column;justify-content:center;align-items:center;gap:clamp(14px,3vh,30px);padding:24px;display:flex;position:fixed;inset:0}.lobby-expand-at{color:var(--stage-ink-dim);margin:0;font-size:clamp(20px,3vw,34px);font-weight:500}.lobby-expand-at strong{color:var(--stage-ink);font-weight:800}.lobby-expand-code{letter-spacing:.1em;color:var(--stage-ink);margin:0;font-size:clamp(80px,18vw,240px);font-weight:800;line-height:1}.lobby-expand-qr{background:#fff;border-radius:16px;padding:clamp(12px,2vh,22px);line-height:0}.lobby-expand-close{color:var(--stage-ink-dim);margin:0;font-size:14px}@media (max-width:720px){.lobby-hero{flex-direction:column;gap:18px}.lobby-code-block{text-align:center;align-items:center}.lobby-roster-row{grid-template-columns:1fr;justify-items:center;gap:8px}.lobby-roster-count,.lobby-roster-row .lobby-waiting{justify-self:center}}.loading-dots{align-items:center;gap:5px;display:inline-flex}.loading-dots span{opacity:.25;background:currentColor;border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite loading-dots}.loading-dots span:nth-child(2){animation-delay:.2s}.loading-dots span:nth-child(3){animation-delay:.4s}@keyframes loading-dots{0%,70%,to{opacity:.2;transform:scale(.82)}35%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.loading-dots span{opacity:.5;animation:none}}.lobby-head{text-align:center}.count{margin:4px 0 0;font-size:48px}.join-panel{text-align:center}.qr-box{background:#fff;border-radius:16px;padding:16px;line-height:0;display:inline-block}.join-url{color:#cbd5e1;word-break:break-all;margin:6px 0 0;font-size:14px}.join-url-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin:6px 0 0;display:flex}.join-url-row .join-url{margin:0}.join-copy{color:var(--stage-ink);border:1px solid var(--stage-line);font:inherit;cursor:pointer;background:#ffffff0f;border-radius:8px;flex-shrink:0;padding:6px 12px;font-size:13px;font-weight:600}.join-copy:hover{border-color:var(--stage-ink-dim);background:#ffffff1a}.join-copy:disabled{opacity:.5;cursor:default}.join-copy:focus-visible{box-shadow:0 0 0 2px var(--stage-bg), 0 0 0 4px var(--ws-accent-lift);outline:none}.emoji-wall{flex-wrap:wrap;place-content:flex-start center;gap:14px;width:100%;max-width:960px;display:flex}.player-emoji{font-size:44px;line-height:1;animation:.22s ease-out pop}.player-chip{flex-direction:column;align-items:center;gap:2px;display:flex}.player-name{color:#cbd5e1;font-size:13px}.lb-name{color:#e2e8f0;font-size:16px}.celebrate-name{color:#e2e8f0;font-size:20px;font-weight:700}@keyframes pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}.stage{background:radial-gradient(1100px 520px at 50% -8%, var(--stage-bg-2), var(--stage-bg));width:100%;max-width:none;min-height:100dvh;color:var(--stage-ink);flex-direction:column;align-items:center;gap:22px;margin:0;padding:32px 24px 48px;display:flex}.stage .stage-head,.stage .lb-actions,.stage .leaderboard,.stage .celebrate{width:100%;max-width:900px}.stage-head{justify-content:space-between;align-items:center;width:100%;display:flex}.timer{background:var(--stage-bg-2);border:2px solid var(--stage-line);width:72px;height:72px;color:var(--stage-ink);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;font-size:30px;font-weight:700;display:grid}.stem{text-align:center;letter-spacing:-.01em;max-width:1000px;margin:var(--space-2) 0;color:var(--stage-ink);font-size:clamp(22px,min(4.4vw,5.4vh),46px);font-weight:700;line-height:1.18}.tiles{gap:var(--space-2);grid-template-columns:1fr 1fr;width:100%;max-width:980px;display:grid}.tile{align-items:center;gap:var(--space-2);border-radius:var(--radius);min-height:clamp(66px,11vh,96px);padding:clamp(14px,min(3vw,2.4vh),34px) clamp(18px,2.4vw,28px);font-size:clamp(20px,min(2.8vw,3.2vh),36px);font-weight:700;display:flex}.dist-chart{justify-content:center;align-items:flex-end;gap:clamp(16px,4vw,48px);width:100%;max-width:720px;display:flex}.dist-col{flex-direction:column;align-items:center;gap:10px;display:flex}.dist-col-track{align-items:flex-end;width:clamp(44px,6vw,84px);height:25vh;min-height:140px;display:flex}.dist-col-bar{transform-origin:bottom;width:100%;animation:dist-grow-up var(--motion-reveal) cubic-bezier(.34, 1.4, .64, 1) both;border-radius:10px 10px 4px 4px}.dist-pill{color:var(--stage-ink);background:#b4c3d724;border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:clamp(14px,1.5vw,18px);font-weight:700;display:inline-flex}.dist-pill-count{font-variant-numeric:tabular-nums}.dist-pill-mark{color:var(--ok);font-weight:800}.dist-col.dist-correct .dist-col-bar{box-shadow:0 0 0 3px var(--ok), 0 0 26px #2ecc7180}.dist-col.dist-correct .dist-pill{background:#2ecc712e}.dist-col.dist-wrong .dist-col-bar{opacity:.5;filter:saturate(.6)}@keyframes dist-grow-up{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@media (prefers-reduced-motion:reduce){.dist-col-bar{animation:none}}.leaderboard{flex-direction:column;gap:10px;width:100%;max-width:460px;margin:0;padding:0;list-style:none;display:flex}.lb-row{background:#94a3b81a;border:1px solid #94a3b82e;border-radius:12px;align-items:center;gap:16px;padding:12px 18px;display:flex}.lb-rank{color:#94a3b8;width:24px;font-size:20px;font-weight:700}.lb-emoji{font-size:32px}.lb-score{margin-left:auto;font-size:22px;font-weight:700}.lb-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.scoreboard-head{text-align:left}.scoreboard-title{letter-spacing:-.01em;color:var(--stage-ink);margin:2px 0 0;font-size:clamp(28px,4vw,46px);font-weight:800}.scoreboard{--lb-row-h:clamp(58px, 8.5vh, 80px);--lb-gap:12px;gap:var(--lb-gap)}.scoreboard .lb-row{height:var(--lb-row-h);background:var(--stage-bg-2);border:1px solid var(--stage-line);transform:translateY(calc(var(--from-rows,0) * (var(--lb-row-h) + var(--lb-gap))));border-radius:16px;gap:clamp(12px,1.6vw,22px);padding:0 clamp(16px,2.2vw,30px);animation:none}.scoreboard .lb-rank{text-align:center;width:auto;min-width:1.7em;color:var(--stage-ink-dim);font-variant-numeric:tabular-nums;font-size:clamp(20px,2.4vw,30px);font-weight:800}.scoreboard .lb-emoji{font-size:clamp(30px,3.4vw,44px)}.scoreboard .lb-name{min-width:0;color:var(--stage-ink);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:clamp(18px,2vw,26px);font-weight:700;overflow:hidden}.scoreboard .lb-anon{color:var(--stage-ink-dim);font-weight:600}.scoreboard .lb-score{color:var(--stage-ink);font-variant-numeric:tabular-nums;margin-left:auto;font-size:clamp(22px,2.8vw,36px);font-weight:800}.scoreboard .lb-move{text-align:center;width:1.3em;margin-left:4px;font-size:clamp(15px,1.8vw,22px)}.scoreboard .lb-up{color:var(--ok)}.scoreboard .lb-down{color:var(--stage-ink-dim)}.scoreboard .lb-leader{background:linear-gradient(180deg, #e69f0038, var(--stage-bg-2));border-color:#e69f0080;box-shadow:0 6px 26px #e69f0024}.scoreboard .lb-leader .lb-name{color:#fff}.scoreboard .lb-leader .lb-score{color:#ffe6ad}@keyframes scoreboard-flip{0%{transform:translateY(calc(var(--from-rows,0) * (var(--lb-row-h) + var(--lb-gap))))}to{transform:translateY(0)}}.scoreboard.lb-flip .lb-row{animation:scoreboard-flip var(--motion-scoreboard-flip) cubic-bezier(.65, 0, .35, 1) both}@media (prefers-reduced-motion:reduce){.scoreboard .lb-row,.scoreboard.lb-flip .lb-row{animation:none;transform:none}}.celebrate{text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.celebrate-trophy{font-size:72px;line-height:1}.celebrate-emoji{font-size:64px;line-height:1;animation:.22s ease-out pop}.celebrate-score{font-size:28px;font-weight:800}.auth-card{text-align:center;flex-direction:column;gap:12px;display:flex}.field{color:#e2e8f0;background:#0f172a80;border:1px solid #94a3b84d;border-radius:10px;width:100%;padding:11px 14px;font-size:16px}.role-row{justify-content:center;gap:18px;font-size:15px;display:flex}.emoji-pick{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.emoji-opt{cursor:pointer;background:0 0;border:2px solid #0000;border-radius:10px;padding:4px 6px;font-size:24px}.emoji-opt.sel{border-color:var(--ws-accent-lift);background:#a78bfa29}.auth-error{color:#f87171;margin:0;font-size:14px}.role-badge{color:#cbd5e1;font-size:15px}.auth-tests{background:#94a3b814;border-radius:12px;flex-direction:column;gap:8px;margin:8px 0;padding:12px;display:flex}.auth-links a,.muted a{color:#c4b5fd}.google-btn{color:#1f2937;background:#fff}.google-btn:hover{background:#e5e7eb}.auth-or{text-transform:uppercase;letter-spacing:.08em;margin:4px 0;font-size:12px}.consent{text-align:left;color:#cbd5e1;background:#94a3b814;border-radius:12px;align-items:flex-start;gap:10px;padding:12px;font-size:13px;display:flex}.consent input{flex-shrink:0;margin-top:3px}.front-door{background:radial-gradient(1100px 600px at 50% -12%, var(--stage-bg-2), var(--stage-bg));color:var(--stage-ink)}.front-door .card{background:var(--stage-bg-2);border:1px solid var(--stage-line);color:var(--stage-ink);animation:stage-fade-in .34s var(--ease) both;box-shadow:0 24px 70px #00000061}.front-door h1{color:var(--stage-ink);letter-spacing:-.02em}.front-door .kicker,.front-door .sub,.front-door .muted{color:var(--stage-ink-dim)}.front-door .muted a,.front-door .auth-links a,.front-door a{color:#c4b5fd}.fd-brand{flex-direction:column;align-items:center;gap:8px;margin:0 0 6px;display:flex}.fd-shapes{flex-flow:row;justify-content:center;align-items:center;gap:14px;font-size:22px;line-height:1;display:flex}.fd-shape{line-height:1}.fd-mark-a{color:var(--tile-a)}.fd-mark-b{color:var(--tile-b)}.fd-mark-c{color:var(--tile-c)}.fd-mark-d{color:var(--tile-d)}.fd-wordmark{letter-spacing:-.02em;color:var(--stage-ink);font-size:clamp(26px,4vw,34px);font-weight:800}.fd-tagline{color:var(--stage-ink-dim);text-align:center;margin:2px 0 0;font-size:14px}.front-door .field{border-color:var(--stage-line);color:var(--stage-ink);background:#080b1080}.front-door .field::placeholder{color:var(--stage-ink-dim)}.front-door .field:focus-visible{border-color:var(--ws-accent-lift);box-shadow:0 0 0 2px var(--stage-bg), 0 0 0 4px var(--ws-accent-lift);outline:none}.front-door .google-btn{color:#1f2937;background:#fff}.front-door .google-btn:hover{background:#eef0f3}.front-door .auth-or{color:var(--stage-ink-dim)}.front-door .auth-error{color:#ffb4b4;text-align:left;background:#ff7a7a1f;border:1px solid #ff7a7a52;border-radius:10px;margin:2px 0;padding:10px 14px;font-size:14px}.front-door .role-row{color:var(--stage-ink)}.front-door .role-badge{color:var(--stage-ink-dim)}.front-door .emoji-opt.sel{border-color:var(--ws-accent-lift);background:#a78bfa29}.front-door .consent{color:var(--stage-ink-dim);border:1px solid var(--stage-line);background:#080b1066}.front-door .consent strong{color:var(--stage-ink)}.fd-role{border:1px solid var(--ws-accent-lift);letter-spacing:.02em;color:#ddd6fe;background:#7c3aed33;border-radius:999px;margin:6px 0 0;padding:4px 14px;font-size:13px;font-weight:600;display:inline-block}.fd-divider{background:var(--stage-line);border:0;width:100%;height:1px;margin:18px 0}.fd-signout{border:1px solid var(--stage-line);color:var(--stage-ink-dim);cursor:pointer;background:0 0;border-radius:999px;margin-top:6px;padding:10px 22px;font-size:15px;font-weight:600}.fd-signout:hover{border-color:var(--stage-ink-dim);color:var(--stage-ink)}.fd-signout:focus-visible{box-shadow:0 0 0 2px var(--stage-bg), 0 0 0 4px var(--ws-accent-lift);outline:none}.fd-code-form{gap:10px;width:100%;margin:8px 0 2px;display:flex}.fd-code-input{text-align:center;letter-spacing:.18em;text-transform:uppercase;flex:1;min-width:0;font-size:22px;font-weight:700}.fd-code-input::placeholder{letter-spacing:.04em;text-transform:none;font-weight:500}.fd-code-form .cta{white-space:nowrap;margin:0}.fd-host-cta{border:1.5px solid var(--stage-ink-dim);color:var(--stage-ink);background:#ffffff12;border-radius:999px;margin-top:4px;padding:12px 26px;font-size:16px;font-weight:600;text-decoration:none;display:inline-block}.fd-host-cta:hover{border-color:var(--stage-ink);background:#ffffff21}.fd-host-cta:focus-visible{box-shadow:0 0 0 2px var(--stage-bg), 0 0 0 4px var(--ws-accent-lift);outline:none}.fd-rolepick{flex-direction:column;gap:10px;width:100%;margin:6px 0 2px;display:flex}.fd-role-pick{border:1px solid var(--stage-line);width:100%;color:var(--stage-ink);font:inherit;text-align:center;cursor:pointer;transition:border-color var(--motion-ui) var(--ease), background var(--motion-ui) var(--ease);background:#080b1080;border-radius:12px;padding:15px 16px;font-size:16px;font-weight:600}.fd-role-pick:hover{border-color:var(--ws-accent-lift);background:#a78bfa29}.fd-role-pick:focus-visible{box-shadow:0 0 0 2px var(--stage-bg), 0 0 0 4px var(--ws-accent-lift);outline:none}.fd-back{color:var(--stage-ink-dim);font:inherit;cursor:pointer;background:0 0;border:none;align-self:flex-start;margin:-4px 0 0;padding:6px 10px 6px 0;font-size:14px;font-weight:600}.fd-back:hover{color:var(--stage-ink)}.fd-back:focus-visible{box-shadow:0 0 0 2px var(--stage-bg), 0 0 0 4px var(--ws-accent-lift);border-radius:8px;outline:none}.fd-instructor-note{text-align:left;font-size:13px}.fd-instructor-entry{border:1px solid var(--stage-line);width:100%;color:var(--stage-ink);background:#080b1066;border-radius:12px;margin:4px 0 0;padding:12px 16px;font-size:14px}.fd-instructor-entry a{color:#c4b5fd;font-weight:600}.host-picker-card{width:100%;max-width:580px}.host-picker-loading{margin:8px 0}.host-picker-list{flex-direction:column;gap:12px;width:100%;max-height:clamp(200px,40vh,400px);margin:18px 0 6px;padding:0 4px 0 0;list-style:none;display:flex;overflow-y:auto}.host-picker-set{border:1px solid var(--stage-line);text-align:left;background:#ffffff0a;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.host-picker-set-info{flex-direction:column;min-width:0;display:flex}.host-picker-set-name{color:var(--stage-ink);font-size:18px;font-weight:700}.host-picker-set-meta{color:var(--stage-ink-dim);margin-top:2px;font-size:13px}.host-picker-set-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.host-picker-host{margin:0;padding:9px 18px;font-size:14px}.host-picker-host:disabled{opacity:.45;cursor:not-allowed}.host-picker-empty{flex-direction:column;align-items:center;gap:8px;padding:14px 0 6px;display:flex}.host-picker-empty-title{color:var(--stage-ink);margin:0;font-size:20px;font-weight:700}.host-picker-manage{text-align:center;margin:16px 0 0}.host-picker-manage-btn{color:var(--stage-ink);cursor:pointer;transition:background var(--t-color) ease, border-color var(--t-color) ease;background:#ffffff0f;border:1px solid #b4c3d729;border-radius:999px;padding:8px 18px;font-size:14px;font-weight:600;text-decoration:none;display:inline-block}.host-picker-manage-btn:hover{border-color:var(--stage-ink-dim);background:#ffffff1a}.host-picker-live{flex-direction:column;align-items:center;gap:10px;margin-top:18px;display:flex}.host-picker-or{width:100%;color:var(--stage-ink-dim);align-items:center;gap:12px;font-size:13px;display:flex}.host-picker-or:before,.host-picker-or:after{content:"";background:var(--stage-line);flex:1;height:1px}.host-picker-live-btn{color:var(--stage-ink);cursor:pointer;transition:background var(--t-color) ease, border-color var(--t-color) ease, box-shadow var(--t-color) ease, transform var(--t-press) var(--ws-ease);background:#8a6bf224;border:2px solid #8a6bf2;border-radius:999px;padding:12px 26px;font-size:16px;font-weight:700;box-shadow:0 6px 22px #5a3ad64d}.host-picker-live-btn:hover:not(:disabled){background:#8a6bf23d;border-color:#9d82ff;box-shadow:0 8px 26px #5a3ad66b}.host-picker-live-btn:active:not(:disabled){transform:translateY(1px)}.host-picker-live-btn:disabled{opacity:.5;cursor:not-allowed}.host-picker-live-note{color:var(--stage-ink-dim);text-align:center;margin:0;font-size:13px}.lobby-livefire-hint{text-align:center;color:var(--stage-ink-dim);margin:0;font-size:clamp(14px,1.5vw,18px)}.host-picker-menu{flex-shrink:0;position:relative}.host-picker-dots{border:1px solid var(--stage-line);width:40px;height:40px;color:var(--stage-ink);cursor:pointer;background:#ffffff0a;border-radius:10px;place-items:center;display:inline-grid}.host-picker-dots:hover{border-color:var(--stage-ink-dim);background:#ffffff1a}.host-picker-dropdown{z-index:130;background:var(--stage-bg-2);border:1px solid var(--stage-line);border-radius:12px;flex-direction:column;min-width:184px;padding:6px;display:flex;position:fixed;box-shadow:0 18px 50px #0000008c}.host-picker-dropdown button{text-align:left;color:var(--stage-ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:9px 11px;font-size:13.5px;font-weight:500}.host-picker-dropdown button:hover:not(:disabled){background:#ffffff14}.host-picker-dropdown button:disabled{opacity:.4;cursor:not-allowed}.host-picker-dd-sep{background:var(--stage-line);height:1px;margin:5px 4px}.host-picker-dd-danger{color:var(--ws-danger)}.host-picker-dd-danger:hover:not(:disabled){background:var(--ws-danger-soft)}.host-picker-dd-hint{color:var(--stage-ink);opacity:.55;cursor:default;padding:10px 12px;font-size:12.5px;line-height:1.35}.host-picker-modal-overlay{z-index:140;background:#080b10a8;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.host-picker-modal{background:var(--stage-bg-2);border:1px solid var(--stage-line);border-radius:16px;flex-direction:column;gap:12px;width:100%;max-width:380px;padding:22px;display:flex;box-shadow:0 26px 80px #0009}.host-picker-modal-title{color:var(--stage-ink);margin:0;font-size:18px;font-weight:700}.host-picker-modal .muted{margin:0}.host-picker-rename-input{width:100%}.host-picker-modal-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.host-picker-modal-actions .cta,.host-picker-modal-actions .btn-ghost{margin:0}.manual-add-btn{align-items:center;gap:6px;margin:6px 0 10px;font-weight:600;display:inline-flex}.manual-quiz-form{margin:6px 0 12px}.manual-opt{align-items:center;gap:10px;margin:6px 0;display:flex}.manual-opt input[type=radio]{width:18px;height:18px;accent-color:var(--ws-accent);cursor:pointer;flex-shrink:0}.manual-opt .field{flex:1;min-width:0}.create-flow{max-width:720px}.create-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.create-head h1{margin:0}.create-secondary{border:1px solid var(--ws-line);color:var(--ws-ink-dim);font:inherit;cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:8px 16px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.create-secondary:hover{border-color:var(--ws-ink-dim);color:var(--ws-ink)}.create-sub{margin:6px 0 18px}.create-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.create-tile{text-align:left;background:var(--ws-card);border:1px solid var(--ws-line);cursor:pointer;font:inherit;border-radius:14px;flex-direction:column;align-items:flex-start;padding:20px 18px;display:flex}.create-tile:hover:not(:disabled){border-color:var(--ws-accent);background:var(--ws-accent-soft)}.create-tile:disabled{opacity:.6;cursor:default}.create-tile-ico{border-radius:12px;place-items:center;width:44px;height:44px;margin-bottom:10px;display:inline-grid}.create-ico-ai{color:#0072b2;background:#0072b21f}.create-ico-manual{color:#d55e00;background:#d55e001f}.create-ico-live{color:#009e73;background:#009e731f}.create-tile-title{color:var(--ws-ink);font-size:15px;font-weight:700}.create-tile-sub{color:var(--ws-ink-dim);margin-top:3px;font-size:13px;line-height:1.5}.create-foot{margin:18px 0 0;font-size:13px}.create-course-pick{flex-direction:column;gap:10px;margin-top:8px;display:flex}.create-course-row{background:var(--ws-card);border:1px solid var(--ws-line);cursor:pointer;font:inherit;text-align:left;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.create-course-row:hover:not(:disabled){border-color:var(--ws-accent)}.create-course-name{color:var(--ws-ink);font-size:15px;font-weight:600}.create-course-go{color:var(--ws-accent);flex-shrink:0;align-items:center;gap:6px;font-size:14px;font-weight:600;display:inline-flex}.create-course-new{align-items:center;gap:6px;margin-top:4px;display:inline-flex}.quizzes-home{text-align:left}.quizzes-home-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.quizzes-home-head h1{margin:0}.home{text-align:left}.home-banner{border:1px solid var(--ws-line);box-shadow:var(--e1);background:linear-gradient(135deg,#f3edff 0%,#eef7f5 100%);border-radius:22px;grid-template-columns:1fr 300px;align-items:center;gap:20px;padding:40px 44px;display:grid;overflow:hidden}.home-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--ws-accent);margin:0 0 10px;font-size:12.5px;font-weight:700}.home-title{letter-spacing:-.02em;max-width:15ch;color:var(--ws-ink);margin:0;font-size:clamp(26px,3.2vw,40px);font-weight:800;line-height:1.08}.home-sub{color:var(--ws-ink-dim);max-width:42ch;margin:12px 0 24px;font-size:16px;line-height:1.5}.home-actions{flex-wrap:wrap;gap:12px;display:flex}.home-actions .cta{margin:0}.home-host{align-items:center;gap:8px;text-decoration:none;display:inline-flex}.home-banner-art{object-fit:cover;border-radius:14px;width:300px;height:190px}.home-recent-head{justify-content:space-between;align-items:baseline;margin:26px 2px 12px;display:flex}.home-recent-head h2{margin:0;font-size:16px;font-weight:700}.home-recent-head a{color:var(--ws-accent);font-size:13.5px;font-weight:600;text-decoration:none}.home-carousel{position:relative}.home-strip{scrollbar-width:none;-ms-overflow-style:none;gap:14px;padding:4px 2px 14px;scroll-padding-inline:8px;display:flex;overflow:auto hidden}.home-strip::-webkit-scrollbar{display:none}.home-carousel:before,.home-carousel:after{content:"";z-index:1;pointer-events:none;opacity:0;width:56px;transition:opacity .15s;position:absolute;top:0;bottom:0}.home-carousel:before{background:linear-gradient(90deg, var(--ws-bg), #f6f3ec00);left:0}.home-carousel:after{background:linear-gradient(270deg, var(--ws-bg), #f6f3ec00);right:0}.home-carousel.has-left:before,.home-carousel.has-right:after{opacity:1}.home-arrow{z-index:2;background:var(--ws-card);width:40px;height:40px;color:var(--ws-ink);border:1px solid var(--ws-line-ctrl);box-shadow:var(--e2,var(--e1));cursor:pointer;transition:background var(--t-color) ease, border-color var(--t-color) ease, transform var(--t-press) var(--ws-ease);border-radius:999px;place-items:center;display:inline-grid;position:absolute;top:50%;transform:translateY(-50%)}.home-arrow:hover{border-color:var(--ws-ink-dim)}.home-arrow:active{transform:translateY(-50%)scale(.94)}.home-arrow:focus-visible{box-shadow:0 0 0 2px var(--ws-bg), 0 0 0 4px var(--ws-accent);outline:none}.home-arrow-left{left:2px}.home-arrow-right{right:2px}.home-qz{background:var(--ws-card);border:1px solid var(--ws-line);box-shadow:var(--e1);color:inherit;transition:border-color var(--t-color) ease, box-shadow var(--t-color) ease;border-radius:14px;flex:0 0 230px;padding:16px 18px;text-decoration:none}.home-qz:hover{border-color:var(--ws-line-ctrl)}.home-qz-name{color:var(--ws-ink);margin:0 0 6px;font-size:15px;font-weight:700}.home-qz-meta{color:var(--ws-ink-dim);align-items:center;gap:8px;font-size:13px;display:flex}.home-qz-chip{background:var(--ws-accent-2-soft);color:var(--ws-accent-2);border:1px solid #115e594d;border-radius:999px;align-items:center;gap:4px;padding:1px 8px;font-size:12px;font-weight:600;display:inline-flex}.home-firstrun{background:var(--ws-accent-soft);border:1px dashed var(--ws-accent-lift);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:16px;margin-top:28px;padding:20px 24px;display:flex}.home-firstrun-line{color:var(--ws-ink);margin:0;font-size:15px;font-weight:600}.home-firstrun .cta{margin:0}@media (max-width:820px){.home-banner{grid-template-columns:1fr;padding:30px 28px}.home-banner-art{display:none}}.story-banner{--sb-h:clamp(430px, 100dvh - 96px, 560px);width:100%;height:var(--sb-h);font-family:var(--font-sans);box-shadow:var(--e1);background:#0b0f1c;border-radius:22px;position:relative;overflow:hidden}.sb-stage{width:max(100%, calc(var(--sb-h) * 1024 / 577));aspect-ratio:1024/577;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.story-banner.is-paused *{animation-play-state:paused!important}.story-banner.is-static *{transition:none!important;animation:none!important}.sb-controls{z-index:60;gap:8px;display:flex;position:absolute;bottom:12px;right:14px}.sb-control{color:#edeff6;cursor:pointer;width:34px;height:34px;transition:background var(--t-color,.16s) ease, color var(--t-color,.16s) ease, border-color var(--t-color,.16s) ease;background:#0b0f1c8c;border:1px solid #27314e;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex}.sb-control:hover{background:#0b0f1ccc}.sb-control:focus-visible{outline-offset:2px;outline:2px solid #5eead4}.sb-control.is-on{color:#5eead4;background:#5eead42e;border-color:#5eead499}.sb-control.is-on:hover{background:#5eead447}.sb-fitwrap{aspect-ratio:1660/935;width:100%;box-shadow:var(--e1);border-radius:22px;position:relative;overflow:hidden}.sb-fitwrap .story-banner{transform-origin:0 0;box-shadow:none;border-radius:0;position:absolute;top:0;left:0}.home-top-banner{border:1px solid var(--ws-line);box-shadow:var(--e1);background:linear-gradient(120deg,#f1effb 0%,#fbfbfe 55%,#f7f5fd 100%);border-radius:22px;grid-template-columns:minmax(240px,400px) minmax(260px,1fr) minmax(170px,250px);align-items:center;gap:clamp(20px,3.5vw,48px);padding:32px 44px;display:grid}.htb-copy{flex-direction:column;gap:12px;display:flex}.htb-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--ws-accent);margin:0;font-size:12.5px;font-weight:700}.htb-title{letter-spacing:-.02em;color:var(--ws-ink);text-wrap:pretty;margin:0;font-size:clamp(24px,2.2vw,32px);font-weight:800;line-height:1.15}.htb-sub{color:var(--ws-ink-dim);text-wrap:pretty;max-width:42ch;margin:0;font-size:15px;line-height:1.55}.htb-headline{justify-self:center;max-width:520px;overflow:visible}.htb-celebrate{aspect-ratio:710/728;justify-self:end;width:100%;max-width:250px;position:relative;overflow:hidden}.htb-cup{width:100%;height:100%;display:block;position:absolute;inset:0}.htb-balloons-bob{animation:6.6s ease-in-out infinite alternate llBalloonBob;position:absolute;inset:0}.htb-balloons{transform-origin:71.5% 52%;width:100%;height:100%;animation:4.4s ease-in-out infinite alternate llBalloonSway;display:block;position:absolute;inset:0}.htb-confetti{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.home-top-banner.is-paused *,.home-top-banner.is-paused{animation-play-state:paused!important}.home-top-banner.is-static *{transition:none!important;animation:none!important}@keyframes llWordCycle{0%{opacity:0;animation-timing-function:cubic-bezier(.3,1.6,.4,1);transform:translateY(.5em)scale(.72)}8%{opacity:1;transform:translateY(0)scale(1)}44%{opacity:1;animation-timing-function:ease;transform:translateY(0)scale(1)}51%{opacity:0;transform:translateY(.4em)scale(.8)}to{opacity:0;transform:translateY(.5em)scale(.72)}}@keyframes llBalloonBob{0%{transform:translateY(-5px)}to{transform:translateY(7px)}}@keyframes llBalloonSway{0%{transform:rotate(-3.6deg)}to{transform:rotate(3.8deg)}}@media (max-width:900px){.home-top-banner{grid-template-columns:1fr;gap:20px;padding:28px 26px}.htb-headline{justify-self:stretch;max-width:none}.htb-celebrate{justify-self:center}}.home-story-row{align-items:center;gap:32px;margin-top:24px;display:flex}.home-story-col{flex:none;width:min(62%,clamp(400px,177.54dvh - 749.219px,1040px))}.home-story-txt{flex:1;min-width:0}.home-story-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--ws-accent);margin:0 0 16px;font-size:13px;font-weight:700}.home-cap{flex-direction:column;gap:15px;margin:0;padding:0;list-style:none;display:flex}.home-cap li{color:var(--ws-ink-dim);padding-left:18px;font-size:clamp(18px,1.2vw,22px);line-height:1.4;position:relative}.home-cap li:before{content:"";background:var(--ws-line);border-radius:2px;width:3px;position:absolute;top:.28em;bottom:.28em;left:0}.home-cap li.is-active{color:var(--ws-ink);font-weight:700}.home-cap li.is-active:before{background:var(--ws-accent)}@media (prefers-reduced-motion:no-preference){.home-cap li{transition:color .35s}.home-cap li:before{transition:background .35s}}@media (max-width:820px){.home-story-row{flex-direction:column;align-items:stretch}.home-story-col{width:100%}}@keyframes llPulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes llDot{0%,60%,to{opacity:.2;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}@keyframes llJump{0%,to{transform:translate(-50%,-22px)}30%{transform:translate(-50%,-34px)}}@keyframes llSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes llSpinFast{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes llDoc{0%{opacity:0;transform:translateY(24px)}30%{opacity:1}70%{opacity:1;transform:translateY(-2px)}to{opacity:0;transform:translateY(-10px)}}@keyframes llBar{0%{width:6%}85%{width:100%}to{width:100%}}@keyframes llRing{0%{stroke-dashoffset:0}to{stroke-dashoffset:100.5px}}@keyframes llFly{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)}15%{opacity:1;transform:translate(-50%,-50%)scale(1)}80%{opacity:1}to{left:var(--tx);top:var(--ty);opacity:0;transform:translate(-50%,-50%)scale(.55)}}@keyframes llPaper{0%{opacity:0;transform:translate(-50%,-50%)rotate(0)rotateX(0)}8%{opacity:1}25%{transform:translate(calc(-50% + var(--sw)), calc(-50% + var(--dy) * .25)) rotate(120deg) rotateX(140deg)}50%{transform:translate(calc(-50% - var(--sw)), calc(-50% + var(--dy) * .5)) rotate(210deg) rotateX(280deg)}75%{transform:translate(calc(-50% + var(--sw)), calc(-50% + var(--dy) * .75)) rotate(320deg) rotateX(420deg)}92%{opacity:1}to{opacity:0;transform:translate(calc(-50% - var(--sw)), calc(-50% + var(--dy))) rotate(400deg) rotateX(560deg)}}.quizzes-create-btn{align-items:center;gap:6px;margin:0;text-decoration:none;display:inline-flex}.quizzes-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;display:grid}.quiz-set-card{background:var(--ws-card);border:1px solid var(--ws-line);box-shadow:var(--e1);border-radius:14px;padding:16px 18px;text-decoration:none;display:block}.quiz-set-name{color:var(--ws-ink);margin:0 0 8px;font-size:16px;font-weight:700}.qz-card{position:relative}.qz-card-body{color:inherit;text-decoration:none;display:block}.qz-card-body .quiz-set-name{padding-right:26px}.qz-card>.dots-wrap{position:absolute;top:12px;right:12px}.qz-card.is-menu-open{z-index:5}.quiz-set-meta{color:var(--ws-ink-dim);flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;display:flex}.quiz-set-chip{background:var(--ws-accent-soft);color:var(--ws-accent-hover);border-radius:999px;align-items:center;gap:4px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-flex}@media (prefers-reduced-motion:reduce){.front-door .card{animation:none}.fd-role-pick{transition:none}}.course-card{text-align:center;background:#94a3b814;border:1px solid #94a3b82e;border-radius:14px;width:100%;margin:10px 0;padding:16px;position:relative}.course-card.is-menu-open{z-index:5}.course-name{margin:0 0 8px;font-size:22px}.create-course{background:var(--ws-accent-soft);text-align:left;border:1px solid #94a3b82e;border-radius:12px;margin:8px 0 18px;padding:12px}.course-header{cursor:pointer;width:100%;color:inherit;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:10px;padding:4px 0;display:flex}.course-header .course-name{margin:0}.course-toggle{color:#a5b4fc;white-space:nowrap;font-size:13px}.course-body{border-top:1px solid #94a3b82e;margin-top:12px;padding-top:12px}.set-add-panel{background:#0f172a80;border:1px solid #94a3b82e;border-radius:10px;max-height:220px;margin:8px 0;padding:8px;overflow:auto}.set-edit-panel{background:#0f172a66;border:1px solid #94a3b838;border-radius:10px;margin:8px 0;padding:10px}.set-edit-head{margin:0 0 8px;font-size:13px}.set-add-row{color:#cbd5e1;cursor:pointer;align-items:center;gap:8px;padding:4px 2px;font-size:14px;display:flex}.set-add-row.in-set{opacity:.5}.leave-link{color:#94a3b8;margin-top:14px;font-size:14px;text-decoration:none;display:inline-block}.leave-link:hover{color:#cbd5e1}.courses-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.courses-head-right{align-items:center;gap:12px;display:inline-flex}.courses-new-btn{align-items:center;gap:6px;display:inline-flex}.plus-btn{background:var(--ws-accent);color:#fff;cursor:pointer;border:none;border-radius:999px;flex:none;justify-content:center;align-items:center;width:36px;height:36px;font-size:22px;line-height:1;display:inline-flex}.plus-btn:hover{background:var(--ws-accent-hover)}.plus-btn:disabled{opacity:.6;cursor:default}.course-title-btn{cursor:pointer;color:inherit;text-align:left;font:inherit;background:0 0;border:none;flex:1;justify-content:space-between;align-items:center;gap:10px;padding:4px 0;display:flex}.materials-head-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.materials-head-row .plus-btn{width:28px;height:28px;font-size:18px}.dots-wrap{flex:none;position:relative}.dots-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:8px;place-items:center;width:32px;height:32px;font-size:20px;display:inline-grid}.dots-btn:hover{color:#e2e8f0;background:#94a3b826}.dots-menu{z-index:20;background:#1e293b;border:1px solid #94a3b84d;border-radius:10px;flex-direction:column;min-width:130px;padding:4px;display:flex;position:absolute;top:100%;right:0;box-shadow:0 8px 24px #0006}.dots-menu button{color:#e2e8f0;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:9px 11px;font-size:13.5px;font-weight:500}.dots-menu button:focus-visible,.se-hostmenu-item:focus-visible{box-shadow:0 0 0 2px var(--ws-bg), 0 0 0 4px var(--ws-accent);outline:none}.dots-menu button:hover{background:#7c3aed40}.dots-menu button.danger{color:#f87171}.dots-menu button:disabled{color:#64748b;cursor:not-allowed}.dots-menu button:disabled:hover{background:0 0}.dots-sep{background:#94a3b840;height:1px;margin:4px 2px}.dots-hint{color:#94a3b8;cursor:default;padding:7px 10px;font-size:12px;line-height:1.35}.toast{color:#fff;z-index:50;background:#16a34a;border-radius:999px;padding:10px 18px;font-size:14px;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000059}.code{letter-spacing:.08em;word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.mic-panel{text-align:center;background:#0f172a66;border:1px solid #94a3b840;border-radius:14px;padding:20px 20px 16px}.mic-stop{display:inline-block}.live-entry{align-items:center;gap:clamp(10px,1.4vw,18px);display:inline-flex}.live-toggle{border:1px solid var(--stage-line);color:var(--stage-ink-dim);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:600;display:inline-flex}.live-toggle:hover{color:var(--stage-ink);background:#94a3b81f}.mic-overlay{z-index:80;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#090c119e;place-items:center;padding:clamp(16px,4vh,40px);display:grid;position:fixed;inset:0}.mic-overlay .mic-panel{background:#111827f7;width:min(520px,100%);max-height:calc(100dvh - clamp(32px,8vh,80px));overflow:auto;box-shadow:0 30px 90px #0000008c}.mic-cancel{color:var(--stage-ink-dim)}.mic-cancel:hover{color:var(--stage-ink)}.zana-summon{border:1px solid var(--stage-line);width:clamp(44px,5vh,56px);height:clamp(44px,5vh,56px);color:var(--stage-ink-dim);cursor:pointer;transition:color var(--t-color) ease, border-color var(--t-color) ease, background var(--t-color) ease, box-shadow var(--t-color) ease, transform var(--t-press) var(--ws-ease);background:0 0;border-radius:999px;place-items:center;display:inline-grid}.zana-summon:hover{color:var(--stage-ink);border-color:var(--stage-ink-dim);background:#ffffff14}.zana-summon:active{transform:translateY(1px)}.zvoice{pointer-events:none}.zvoice-x{z-index:1;pointer-events:auto;width:26px;height:26px;color:var(--stage-ink-dim);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;padding:0;display:inline-grid;position:absolute;top:4px;right:6px}.zvoice-x:hover{color:var(--stage-ink);background:#ffffff14}.zvoice-x:focus-visible{color:var(--stage-ink);box-shadow:0 0 0 2px #111420e6, 0 0 0 4px var(--ws-accent-lift);outline:none}.zvoice-dock{--zvoice-gap:clamp(3px, .45vw, 6px);--zvoice-inset:.22;--zvoice-breathe:.9s;z-index:93;pointer-events:none;align-items:center;gap:var(--zvoice-gap);flex-direction:row;max-width:min(760px,94vw);display:flex;position:fixed;bottom:clamp(120px,17.5vh,156px);left:50%;transform:translate(-50%)}.zvoice-orb{pointer-events:none;filter:drop-shadow(0 10px 26px #00000073);flex:none}.zvoice-tail{margin-left:calc(var(--zvoice-orb-size,173px) * var(--zvoice-inset,.22) * -1);flex:none;align-items:center;gap:clamp(3px,.5vw,6px);display:flex}.zvoice-tail span{animation:zvoice-tail-breathe var(--zvoice-breathe,.9s) ease-in-out infinite;background:#9f8be899;border-radius:50%;display:block}.zvoice-tail span:first-child{width:5px;height:5px;animation-delay:0s}.zvoice-tail span:nth-child(2){width:8px;height:8px;animation-delay:90ms}.zvoice-tail span:nth-child(3){width:11px;height:11px;animation-delay:.18s}.zvoice-tail span:nth-child(4){width:14px;height:14px;animation-delay:.27s}@keyframes zvoice-tail-breathe{0%,to{transform:scale(.92)}50%{transform:scale(1.1)}}@media (prefers-reduced-motion:reduce){.zvoice-tail span{animation:none;transform:none}}.zvoice-callout{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#111420b8;border:1px solid #9f8be86b;border-radius:16px;flex:0 auto;max-width:min(440px,52vw);padding:11px 38px 11px 16px;position:relative;box-shadow:0 14px 40px #0000006b}.zvoice-say{color:#ede9fb;white-space:pre-wrap;align-items:center;min-height:clamp(24px,3.4vh,34px);font-size:clamp(15px,1.4vw,21px);font-weight:600;line-height:1.35;display:flex}.zvoice-hint{color:var(--stage-ink-dim);font-weight:500}.zvoice-plain,.zvoice-cascade{display:inline}.zvoice-dots{color:#b9a9ee}.zvoice-dots span{width:10px;height:10px}.zvoice-dots,.zvoice-hint,.zvoice-plain{animation:.4s both zvoice-fade}@keyframes zvoice-fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.zvoice-dots,.zvoice-hint,.zvoice-plain{animation:none}}.zvoice-status{flex-wrap:wrap;align-items:center;gap:8px;margin-top:9px;display:flex}.zvoice-chip{color:#cdb8ff;background:#9f8be82e;border:1px solid #9f8be873;border-radius:999px;padding:3px 12px;font-size:13px;display:inline-block}.zvoice-err{color:#ffb4b4;font-size:13px;font-weight:600}.zvoice-orb{pointer-events:none;filter:drop-shadow(0 10px 26px #00000073)}.zvoice-errbar{z-index:93;pointer-events:none;color:#ffc9d2;text-align:center;background:#3a1d24eb;border:1px solid #7a3a49;border-radius:8px;max-width:min(560px,90vw);padding:6px 12px;font-size:12.5px;position:fixed;bottom:clamp(10px,2vh,22px);left:50%;transform:translate(-50%)}.zana-paused{z-index:90;pointer-events:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#cbd5e1;letter-spacing:.01em;background:#090c11a8;border:1px solid #94a3b847;border-radius:999px;align-items:center;gap:8px;padding:6px 13px;font-size:clamp(11px,1.3vw,14px);font-weight:600;display:inline-flex;position:fixed;bottom:clamp(12px,2vh,24px);right:clamp(12px,2vw,24px)}.zana-paused-dot{background:#94a3b8;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 3px #94a3b82e}.zvoice-scrim{z-index:92;pointer-events:auto;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#090c11b8;place-items:center;padding:clamp(16px,4vh,44px);display:grid;position:fixed;inset:0}.zvoice-scrim-soft{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#090c116b}.zvoice-fire{background:#111420fa;border:1px solid #9f8be880;border-radius:18px;width:min(560px,92vw);padding:clamp(18px,3vh,26px);position:relative;box-shadow:0 30px 90px #0009,0 0 60px #9f8be82e}.zvoice-fire-head{color:#cdb8ff;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:13px;font-weight:600}.zvoice-fire-stem{color:var(--stage-ink);margin-bottom:14px;font-size:clamp(18px,2.2vw,24px);font-weight:700}.zvoice-fire-opts{gap:8px;margin:0 0 16px;padding:0;list-style:none;display:grid}.zvoice-fire-opts li{color:#dbe2f0;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;align-items:center;gap:10px;padding:9px 12px;display:flex}.zvoice-fire-opts li.correct{background:#8fd5c81f;border-color:#8fd5c880}.zvoice-fire-opts .lt{color:#cdb8ff;background:#9f8be838;border-radius:6px;flex:none;place-items:center;width:22px;height:22px;font-size:13px;font-weight:700;display:grid}.zvoice-fire-opts li.correct .lt{color:#d7f4ec;background:#8fd5c847}.zvoice-fire-opts .tick{color:#8fd5c8;margin-left:auto;font-weight:800}.zvoice-fire-actions{gap:12px;display:flex}.zvoice-confirm{cursor:pointer;color:#fff;background:linear-gradient(#8f7be6,#6e5bd6);border:1px solid #6e5bd6;border-radius:12px;flex:1;padding:12px 18px;font-size:16px;font-weight:700}.zvoice-confirm:hover{filter:brightness(1.06)}.zvoice-cancel{border:1px solid var(--stage-line);color:var(--stage-ink-dim);cursor:pointer;background:0 0;border-radius:12px;padding:12px 18px;font-size:15px}.zvoice-cancel:hover{color:var(--stage-ink);border-color:var(--stage-ink-dim)}.zvoice-fire-note{color:var(--stage-ink-dim);text-align:center;margin:12px 0 0;font-size:13px}.zvoice-source{pointer-events:auto;flex:none;display:inline-flex;position:relative}.zvoice-source-chip{font:inherit;cursor:pointer;color:#ede9fb;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#111420b8;border:1px solid #9f8be86b;border-radius:999px;align-items:center;gap:8px;padding:7px 13px;font-size:13px;line-height:1;display:inline-flex}.zvoice-source-chip:hover{border-color:#9f8be8b3}.zvoice-source-key{color:#9fcbff;text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:700}.zvoice-source-chip.is-auto .zvoice-source-key{color:#b9a9ee}.zvoice-source-val{color:#ede9fb;text-overflow:ellipsis;white-space:nowrap;max-width:240px;font-weight:600;overflow:hidden}.zvoice-source-val.is-none{color:var(--stage-ink-dim);font-weight:500}.zvoice-source-menu{z-index:95;background:var(--stage-bg-2);border:1px solid var(--stage-line);border-radius:14px;flex-direction:column;min-width:250px;max-width:360px;padding:0;display:flex;position:absolute;overflow:hidden;box-shadow:0 18px 48px #0000008c}.zvoice-source-head{align-items:flex-start;gap:8px;padding:12px 10px 10px 14px;display:flex}.zvoice-source-title{color:var(--stage-ink);flex:auto;margin:0;font-size:14px;font-weight:700}.zvoice-source-x{width:26px;height:26px;color:var(--stage-ink-dim);cursor:pointer;background:0 0;border:0;border-radius:999px;flex:none;place-items:center;margin-top:-2px;padding:0;display:inline-grid}.zvoice-source-x:hover{color:var(--stage-ink);background:#ffffff14}.zvoice-source-x:focus-visible{color:var(--stage-ink);box-shadow:0 0 0 2px var(--stage-bg-2), 0 0 0 4px var(--ws-accent-lift);outline:none}.zvoice-source-search{padding:0 14px 10px;display:block}.zvoice-source-search input{width:100%;font:inherit;color:var(--stage-ink);background:var(--stage-bg);border:1px solid var(--stage-line);border-radius:10px;padding:8px 11px;font-size:13px}.zvoice-source-search input::placeholder{color:var(--stage-ink-dim)}.zvoice-source-search input:focus-visible{border-color:var(--ws-accent-lift);box-shadow:0 0 0 2px var(--stage-bg-2), 0 0 0 4px var(--ws-accent-lift);outline:none}.zvoice-source-free{text-align:left;width:100%;font:inherit;border:0;border-top:1px solid var(--stage-line);cursor:pointer;color:var(--stage-ink);background:0 0;align-items:center;gap:10px;padding:10px 14px;display:flex}.zvoice-source-free:hover{background:#ffffff0d}.zvoice-source-free-name{min-width:0;color:var(--stage-ink);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:13.5px;font-weight:600;overflow:hidden}.zvoice-source-free.is-selected{background:#a78bfa29}.zvoice-source-eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--stage-ink-dim);border-top:1px solid var(--stage-line);margin:0;padding:10px 14px 4px;font-size:10.5px;font-weight:700}.zvoice-source-scroll{flex:auto;min-height:0;padding:0 6px 8px;overflow-y:auto}.zvoice-source-group+.zvoice-source-group{margin-top:3px}.zvoice-source-course{text-align:left;width:100%;font:inherit;cursor:pointer;color:var(--stage-ink);background:#ffffff0e;border:0;border-radius:9px;align-items:center;gap:9px;padding:9px 11px;display:flex}.zvoice-source-course:hover{background:#ffffff17}.zvoice-source-course-ico{color:var(--ws-accent-lift);flex:none}.zvoice-source-course-name{min-width:0;color:var(--stage-ink);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:13.5px;font-weight:600;overflow:hidden}.zvoice-source-count{color:var(--stage-ink);background:#a78bfa2e;border-radius:999px;flex:none;padding:2px 7px;font-size:11px;font-weight:700;line-height:1.5}.zvoice-source-chev{color:var(--stage-ink-dim);transition:transform var(--t-color) var(--ws-ease);flex:none}.zvoice-source-chev.is-open{transform:rotate(180deg)}.zvoice-source-mats{border-left:1px solid var(--stage-line);margin:2px 0 2px 20px;padding-left:9px}.zvoice-source-item{text-align:left;width:100%;font:inherit;color:var(--stage-ink);cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:7px 9px;font-size:13px;display:flex}.zvoice-source-item:hover{background:#ffffff0d}.zvoice-source-item-ico{color:var(--stage-ink-dim);flex:none}.zvoice-source-item-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.zvoice-source-kind{color:var(--stage-ink-dim);flex:none;font-size:10.5px;font-weight:600}.zvoice-source-tick{color:var(--ws-accent-lift);flex:none}.zvoice-source-item.is-selected{background:#a78bfa29;font-weight:600}.zvoice-source-free:focus-visible,.zvoice-source-course:focus-visible,.zvoice-source-item:focus-visible{box-shadow:0 0 0 2px var(--stage-bg-2), 0 0 0 4px var(--ws-accent-lift);outline:none}.zvoice-source-empty{color:var(--stage-ink-dim);margin:0;padding:10px 12px;font-size:12.5px}@media (prefers-reduced-motion:reduce){.zvoice-source-chev{transition:none}}.zvoice-source--chip .zvoice-source-menu{max-width:min(360px,50vw - 388px);max-height:min(440px,62vh);inset:50% calc(100% + 8px) auto auto;transform:translateY(-50%)}.me-header{text-align:center;border-bottom:1px solid #94a3b82e;margin-bottom:14px;padding:14px 0 18px}.me-zana{font-size:34px;line-height:1}.me-name{margin:6px 0 2px}.me-level{color:#a5b4fc;font-size:22px;font-weight:700}.me-xp{color:#94a3b8;margin-bottom:8px;font-size:13px}.badge-shelf{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.badge{background:var(--ws-accent-soft);color:var(--ws-ink);border:1px solid #7c3aed4d;border-radius:999px;padding:4px 10px;font-size:13px;display:inline-block}.badge-new{background:#22c55e26;border-color:#22c55e66}.me-section{text-align:left;border-top:1px solid #94a3b82e;margin-top:18px;padding-top:14px}.me-section-head{justify-content:space-between;align-items:baseline;display:flex}.me-recap{background:#0f172a59;border:1px solid #94a3b833;border-radius:12px;padding:12px 14px}.me-newbadges{flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0 10px;display:flex}.me-lb{margin:8px 0}.me-rank{margin-top:6px;font-size:14px}.me-tips{margin-top:8px}.me-tip{background:var(--ws-bg-2);border:1px solid var(--ws-line);border-left:3px solid var(--ws-accent-2);color:var(--ws-ink);border-radius:8px;margin:6px 0;padding:8px 10px;font-size:14px}.me-course-stats{margin:2px 0 0 2px;font-size:13px}.me-sub{margin:12px 0 4px;font-size:15px}.me-session-row{border-bottom:1px solid #94a3b81f;flex-wrap:wrap;align-items:center;gap:8px;padding:5px 0;font-size:13px;display:flex}.me-session-date{color:#94a3b8;min-width:78px}.me-toggle{align-items:center;gap:8px;margin:8px 0;font-size:14px;display:flex}.me-review-q{border-left:3px solid #94a3b866;border-radius:8px;margin:8px 0;padding:8px 10px}.rq-correct{border-left-color:#22c55e}.rq-wrong{border-left-color:#ef4444}.rq-skip{border-left-color:#94a3b8}.me-review-stem{margin-bottom:4px;font-weight:600}.rq-yours{color:#f87171}.rep-table{border-collapse:collapse;width:100%;max-width:880px;margin-top:6px;font-size:13px}.rep-table th,.rep-table td{text-align:left;border-bottom:1px solid #94a3b826;padding:5px 8px}.rep-table th{color:#94a3b8;font-weight:600}.rep-flag-note{max-width:62ch;font-size:12px;font-style:italic}.rep-flag{background:var(--ws-bg-2);border-left:3px solid var(--ws-accent-2);border-radius:8px;margin:6px 0;padding:8px 10px}.rep-flag-name{font-size:15px;font-weight:600}.rep-flag-reasons{color:#cbd5e1;margin:4px 0 0 18px;font-size:13px}.lb-name{text-align:left;flex:1}.rep-q{border-left:3px solid #94a3b84d;border-radius:8px;margin:6px 0;padding:7px 9px}.rep-q-struggled{border-left-color:var(--ws-danger);background:#c0392b14}.rep-q-stem{font-weight:600}.rep-struggled{color:var(--ws-danger);margin-left:6px;font-size:12px;font-weight:700}.rep-q-skipped{opacity:.85;background:#94a3b812;border-left-color:#94a3b880}.rep-skipped{color:#94a3b8;margin-left:6px;font-size:12px;font-weight:700}.rq-skipped-tag{color:#94a3b8;margin-left:6px;font-size:12px;font-weight:600}.mic-note{margin-top:6px;font-size:13px}.mic-recording{color:#f87171;justify-content:center;align-items:center;gap:8px;font-weight:600;display:flex}.mic-dot{background:#ef4444;border-radius:50%;width:12px;height:12px;animation:1s ease-in-out infinite mic-pulse}@keyframes mic-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.8)}}.mic-heard{background:#22c55e1f;border:1px solid #22c55e59;border-radius:10px;margin-top:12px;padding:10px 12px}.mic-timer-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:10px;display:flex}.mic-timer-row .gen-field{min-width:110px}.mic-actions{justify-content:center;align-items:center;gap:14px;margin-top:10px;display:flex}.mic-fire{background:#ef4444}.mic-fire:hover{background:#dc2626}.mic-error{margin-top:10px}.materials{text-align:left;border-top:1px solid #94a3b82e;margin-top:14px;padding-top:12px}.materials-head{text-transform:uppercase;letter-spacing:.08em;margin:0 0 8px;font-size:12px}.material-upload{cursor:pointer;display:inline-block}.material-row{flex-wrap:wrap;align-items:center;gap:10px;padding:6px 0;font-size:14px;display:flex}.material-name{word-break:break-all;color:#e2e8f0;flex:1}.link-btn{color:var(--ws-accent);cursor:pointer;transition:color var(--t-color) ease;background:0 0;border:none;padding:2px 4px;font-size:13px;font-weight:500}.link-btn:hover{color:var(--ws-accent-hover);text-underline-offset:3px;text-decoration:underline}.link-btn:focus-visible{box-shadow:0 0 0 2px var(--ws-bg), 0 0 0 4px var(--ws-accent);border-radius:8px;outline:none}.link-btn.danger{color:var(--ws-danger)}.link-btn.danger:hover{color:var(--ws-danger);background:var(--ws-danger-soft);border-radius:8px;text-decoration:none}.material-text{margin-top:8px}.material-pre{white-space:pre-wrap;word-break:break-word;color:#cbd5e1;background:#0f172a99;border:1px solid #94a3b82e;border-radius:10px;max-height:220px;padding:10px;font-size:12px;overflow:auto}.gen-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.gen-field{flex:1;width:auto;min-width:110px;padding:8px 10px;font-size:14px}.repo-filter{margin-top:10px}.fast-path{background:#22c55e1a;border:1px solid #34d39959;border-radius:12px;margin:12px 0;padding:12px}.quiz-card{background:#0f172a66;border:1px solid #94a3b82e;border-radius:12px;margin:10px 0;padding:12px}.quiz-stem{color:#e2e8f0;margin-bottom:6px;font-weight:600}.quiz-badge{text-transform:uppercase;letter-spacing:.06em;color:#b45309;border:1px solid #b4530966;border-radius:999px;margin-left:8px;padding:1px 8px;font-size:11px}.quiz-options{color:#cbd5e1;margin:0 0 6px;padding-left:20px;font-size:14px}.quiz-options li.quiz-correct{color:#34d399;font-weight:600}.quiz-meta{flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.quiz-actions{flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;display:flex}.quiz-revert{margin-left:auto}.quiz-edit-label{color:#94a3b8;margin:8px 0 4px;font-size:12px;display:block}.quiz-edit-stem{resize:vertical;font-size:14px}.quiz-edit-opt{align-items:center;gap:8px;margin:4px 0;display:flex}.quiz-edit-opt .field{padding:8px 10px;font-size:14px}.char-count{color:var(--ws-ink-dim);text-align:right;margin:2px 2px 6px;font-size:11px;display:block}.char-count-opt{text-align:right;flex:none;align-self:center;min-width:46px;margin:0;display:inline-block}.char-count.is-near{color:var(--ws-danger)}.char-count.is-over{color:var(--ws-danger);font-weight:700}.qe-slot{border:1px solid var(--ws-line);background:var(--ws-card);cursor:pointer;border-radius:12px;align-items:center;gap:11px;min-height:56px;margin:8px 0;padding:8px 12px;display:flex}.qe-slot:hover{border-color:var(--ws-ink-dim)}.qe-slot.is-correct{background:#009e7312;border:2px solid #009e73;padding:7px 11px}.qe-slot-tile{border-radius:8px;flex-shrink:0;place-items:center;width:36px;height:36px;display:inline-grid}.qe-slot-input{flex:1;min-width:0}.qe-slot-mark{border:2px solid var(--ws-line);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:26px;height:26px;display:inline-grid}.qe-slot.is-correct .qe-slot-mark{background:#009e73;border-color:#009e73}.qe-region{flex-direction:column;gap:6px;margin-top:16px;display:flex}.qe-region-media .quiz-edit-label{margin:0}.qe-media-slot{box-sizing:border-box;border:1.5px dashed var(--ws-line);background:var(--ws-bg-2);width:100%;min-height:96px;color:var(--ws-ink-dim);font:inherit;cursor:not-allowed;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.qe-media-title{font-size:14px;font-weight:600}.qe-media-hint{text-transform:uppercase;letter-spacing:.06em;font-size:11px}.qe-answers-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.qe-answers-grid .qe-slot{margin:0}.qe-answers-grid .char-count-opt{min-width:0}@media (max-width:560px){.qe-answers-grid{grid-template-columns:1fr}}.set-editor{width:100%}.set-editor--v2{flex-direction:column;gap:16px;display:flex}.se-v2-body{grid-template:"ident canvas strip"min-content"gen canvas strip"1fr/320px minmax(0,1fr) 232px;align-items:start;gap:20px;display:grid}.se-quizinfo{grid-area:ident}.se-pane-generate{grid-area:gen}.se-col-center{grid-area:canvas;min-width:0}.se-col-right{grid-area:strip;position:sticky;top:68px}.se-pane{flex-direction:column;gap:14px;max-height:calc(100dvh - 84px);padding-right:2px;display:flex;position:sticky;top:68px;overflow-y:auto}.se-header-meta{flex-wrap:wrap;align-items:center;gap:8px;margin:0;display:inline-flex}.se-section{border:1px solid var(--ws-line);background:var(--ws-bg-2);border-radius:12px;flex-direction:column;gap:10px;padding:12px 14px;display:flex}.se-section-title{letter-spacing:.09em;text-transform:uppercase;color:var(--ws-ink);border-bottom:1px solid var(--ws-line-soft);align-items:center;gap:8px;margin:0;padding-bottom:8px;font-size:11px;font-weight:800;display:flex}.se-section-title:before{content:"";background:var(--ws-accent);border-radius:2px;flex:none;width:3px;height:12px}.se-generate .se-section-title:before{height:14px}.se-field{flex-direction:column;gap:4px;display:flex}.se-source-manager{border-top:1px solid var(--ws-line);flex-direction:column;gap:10px;padding-top:10px;display:flex}.se-source-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.se-source-buttons{flex-wrap:wrap;gap:8px;display:flex}.se-source-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.se-source{border:1px solid var(--ws-line);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 8px;display:flex}.se-source.is-failed{border-color:var(--ws-danger)}.se-source.is-selected{border-color:var(--ws-accent);box-shadow:inset 0 0 0 1px var(--ws-accent);background:var(--ws-accent-soft)}.se-source-row{cursor:pointer;flex:auto;align-items:center;gap:8px;min-width:0;margin:0;font-size:13px;display:flex}.se-source-row input{accent-color:var(--ws-accent);flex:none}.se-source-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-weight:600;overflow:hidden}.se-source-label{color:var(--ws-ink-dim);white-space:nowrap;flex:none;align-items:center;gap:6px;font-size:12px;display:inline-flex}.se-source-used{color:var(--ws-accent-2);font-weight:700}.se-source-remove{flex:none}.se-source-err{color:var(--ws-danger);flex:100%;margin:0;font-size:12px}.se-quizinfo{gap:6px;padding:10px 12px}.se-quizinfo .se-header-meta{flex-wrap:wrap;align-items:center;gap:8px;margin:0;display:inline-flex}.se-name-row{align-items:center;gap:6px;display:flex}.se-name-field{background:var(--ws-card);border:1px solid var(--ws-line);min-width:0;font:inherit;color:var(--ws-ink);transition:border-color var(--t-color) ease;border-radius:8px;flex:auto;padding:3px 8px;font-size:20px;font-weight:700;line-height:1.2}.se-name-field::placeholder{color:var(--ws-ink-dim);font-weight:600}.se-name-field:hover{border-color:var(--ws-ink-dim)}.se-name-field:focus-visible{border-color:var(--ws-accent);box-shadow:0 0 0 2px var(--ws-bg-2), 0 0 0 4px var(--ws-accent);outline:none}.se-name-save{flex:none}.se-name-delete{width:32px;height:32px;color:var(--ws-ink-dim);cursor:pointer;transition:color var(--t-color) ease, background var(--t-color) ease, border-color var(--t-color) ease;background:0 0;border:1px solid #0000;border-radius:8px;flex:none;place-items:center;display:inline-grid}.se-name-delete:hover{color:var(--ws-danger);background:var(--ws-danger-soft)}.se-name-delete:focus-visible{box-shadow:0 0 0 2px var(--ws-bg-2), 0 0 0 4px var(--ws-accent);outline:none}.se-browser{border:1px solid var(--ws-line);background:var(--ws-card);border-radius:10px;flex-direction:column;display:flex;overflow:hidden}.se-browser-head{border-bottom:1px solid var(--ws-line-soft);background:var(--ws-bg-2);justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.se-browser-title{color:var(--ws-ink);font-size:12px;font-weight:700}.se-browser-close{font-size:12px}.se-browser-actions{border-top:1px solid var(--ws-line-soft);justify-content:flex-end;gap:8px;padding:8px 10px;display:flex}.se-browser-actions .se-browser-import{text-align:center;min-width:88px}.se-mat-groups{flex-direction:column;gap:4px;max-height:220px;padding:8px 10px;display:flex;overflow-y:auto}.se-mat-group{border:1px solid var(--ws-line);border-radius:8px}.se-mat-group-head{text-align:left;width:100%;font:inherit;color:var(--ws-ink);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:7px 9px;font-size:13px;font-weight:600;display:flex}.se-mat-group-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;overflow:hidden}.se-mat-group-badge{background:var(--ws-accent);color:#fff;border-radius:999px;flex:none;padding:0 7px;font-size:11px;font-weight:700}.se-mat-items{flex-direction:column;gap:4px;padding:2px 9px 8px 26px;display:flex}.se-mat-item{cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.se-mat-item input{accent-color:var(--ws-accent);flex:none}.se-active{flex-direction:column;gap:5px;display:flex}.se-active-label{font-size:11px}.se-active-chips{flex-wrap:wrap;gap:5px;display:flex}.se-chip{background:var(--ws-accent-soft);color:var(--ws-ink);border:1px solid var(--ws-line);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;max-width:100%;padding:2px 9px;font-size:12px;font-weight:600;overflow:hidden}.se-gen-settings{flex-wrap:wrap;gap:10px;display:flex}.se-gen-settings label{flex-direction:column;flex:90px;gap:4px;min-width:0;font-size:12px;display:flex}.se-gen-settings .gen-field{width:100%}.se-generate-btn{justify-content:center;width:100%}.se-generating{background:var(--ws-accent-soft);border:1px solid var(--ws-accent);color:var(--ws-ink);border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-size:14px;font-weight:600;display:flex}.se-gen-hint{margin:0;font-size:12px}.se-gen-note{color:var(--ws-accent-2);margin:0;font-size:13px;font-weight:600}.se-empty-cta{place-items:center;min-height:340px;padding:24px;display:grid}.se-empty-cta-inner{text-align:center;flex-direction:column;align-items:center;gap:12px;max-width:380px;display:flex}.se-empty-cta-btn{align-items:center;gap:8px;display:inline-flex}.se-empty-gen-hint{color:var(--ws-ink-dim);margin:2px 0 0;font-size:14px;font-weight:600}.se-sparkle{vertical-align:-3px;flex:none;width:auto;height:16px}.se-newquiz{align-self:flex-start;margin-top:2px}@media (max-width:1180px){.se-v2-body{grid-template-rows:none;grid-template-columns:1fr;grid-template-areas:"ident""canvas""strip""gen";gap:16px}.se-pane,.se-col-right{max-height:none;position:static}.fs-rail{max-height:48vh}}.set-editor-head{flex-direction:column;gap:4px;margin-bottom:14px;display:flex}.set-editor-head h2{margin:0}.set-editor-head .ws-eyebrow{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.set-editor-head .set-editor-name{align-items:center;gap:8px;margin:0;display:inline-flex}.set-editor-rename-btn{padding:2px 4px}.set-editor-save{margin-left:2px}.set-editor-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.set-editor-actions .btn-sm{align-items:center;gap:6px;display:inline-flex}.attach-course-list{flex-direction:column;gap:6px;max-height:260px;margin:4px 0;display:flex;overflow-y:auto}.attach-course-row{text-align:left;border:1px solid var(--ws-line);background:var(--ws-panel,transparent);color:var(--ws-ink);font:inherit;cursor:pointer;border-radius:10px;padding:10px 12px}.attach-course-row:hover:not(:disabled){background:var(--ws-accent-soft);border-color:var(--ws-accent)}.attach-course-row:disabled{opacity:.55;cursor:default}.fs-strip{flex:auto;gap:12px;min-width:0;padding:4px 4px 14px 1px;display:flex;overflow:auto hidden}.fs-strip::-webkit-scrollbar{height:8px}.fs-strip::-webkit-scrollbar-thumb{background:var(--ws-line);border-radius:999px}.fs-strip::-webkit-scrollbar-track{background:0 0}.fs-empty-hint{white-space:nowrap;align-self:center;margin:0 0 0 6px}.fs-tile{box-sizing:border-box;background:var(--ws-card);border:1px solid var(--ws-line);width:184px;box-shadow:var(--e1);cursor:pointer;scroll-snap-align:start;transition:box-shadow var(--t-lift) var(--ws-ease), transform var(--t-lift) var(--ws-ease);border-radius:14px;flex-direction:column;flex:none;gap:8px;padding:10px 12px 8px;display:flex}.fs-tile:hover{box-shadow:var(--e2);transform:translateY(-1px)}.fs-tile.is-active{box-shadow:var(--e1), 0 0 0 2px var(--ws-accent)}.fs-tile:focus-visible{box-shadow:var(--e1), 0 0 0 2px var(--ws-bg), 0 0 0 4px var(--ws-accent);outline:none}.fs-tile-top{justify-content:space-between;align-items:center;display:flex}.fs-tile-num{color:var(--ws-ink-dim);font-size:12px;font-weight:700}.fs-grip{width:24px;height:24px;color:var(--ws-ink-dim);cursor:grab;touch-action:none;background:0 0;border:none;border-radius:8px;place-items:center;padding:0;display:inline-grid}.fs-grip:hover{background:var(--ws-bg-2,#efe9df);color:var(--ws-ink,#1e2530)}.fs-grip:active{cursor:grabbing}.fs-grip:focus-visible{box-shadow:0 0 0 2px var(--ws-bg-2), 0 0 0 4px var(--ws-accent);outline:none}.fs-tile-prompt{color:var(--ws-ink,#1e2530);-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:35px;margin:0;font-size:13px;line-height:1.35;display:-webkit-box;overflow:hidden}.fs-tile-untitled{color:var(--ws-ink-dim);font-style:italic}.fs-tile-mini{gap:7px;display:flex}.fs-tile-slot{flex-direction:column;align-items:center;gap:3px;display:flex}.fs-tile-dot{background:0 0;border-radius:50%;width:6px;height:6px}.fs-tile-dot.is-correct{background:#009e73}.fs-tile-actions{opacity:0;justify-content:flex-end;gap:6px;transition:opacity .12s;display:flex}.fs-strip:hover .fs-tile-actions,.fs-tile.is-active .fs-tile-actions,.fs-tile:focus-within .fs-tile-actions{opacity:1}.fs-tile-btn{border:1px solid var(--ws-line);background:var(--ws-card);width:26px;height:26px;color:var(--ws-ink-dim);cursor:pointer;border-radius:8px;place-items:center;display:inline-grid}.fs-tile-btn:hover{border-color:var(--ws-ink-dim);color:var(--ws-ink,#1e2530)}.fs-tile-btn.is-danger:hover{border-color:var(--ws-danger,#c0392b);color:var(--ws-danger,#c0392b)}.fs-tile-btn:focus-visible{box-shadow:0 0 0 2px var(--ws-card), 0 0 0 4px var(--ws-accent);outline:none}.fs-tile-btn:disabled{opacity:.4;cursor:default}.fs-add-pin{z-index:3;background:linear-gradient(to right, transparent 0, var(--ws-bg) 14px);flex:none;align-items:stretch;padding-left:14px;display:flex;position:sticky;right:0}.fs-add-tile{box-sizing:border-box;border:2px dashed var(--ws-line);background:var(--ws-card);width:96px;color:var(--ws-ink-dim);cursor:pointer;border-radius:14px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:6px;font-size:13px;font-weight:700;transition:border-color .12s,color .12s;display:flex}.fs-add-tile:hover:not(:disabled){border-color:var(--ws-accent);color:var(--ws-accent)}.fs-add-tile:focus-visible{box-shadow:0 0 0 2px var(--ws-bg-2), 0 0 0 4px var(--ws-accent);outline:none}.fs-add-tile:disabled{opacity:.5;cursor:default}.se-ribbon{z-index:20;background:var(--ws-card);border:1px solid var(--ws-line);box-shadow:var(--e1);border-radius:12px;align-items:center;gap:10px;padding:8px 14px;display:flex;position:sticky;top:0}.se-ribbon-home{color:var(--ws-ink);align-items:center;gap:8px;padding:4px 2px;font-size:15px;font-weight:700;text-decoration:none;display:inline-flex}.se-ribbon-home:hover{color:var(--ws-accent)}.se-ribbon-home .ws-rail-dot{background:var(--ws-accent)}.se-ribbon-spacer{flex:auto}.se-ribbon .set-editor-save{margin:0}.se-ribbon-exit{margin-left:4px;font-weight:700;text-decoration:none}.se-hostwrap{display:inline-flex;position:relative}.se-hostmenu{z-index:30;background:var(--ws-card);border:1px solid var(--ws-line);min-width:252px;box-shadow:var(--e3);border-radius:12px;flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.se-hostmenu-item{text-align:left;width:100%;font:inherit;cursor:pointer;color:var(--ws-ink);background:0 0;border:none;border-radius:8px;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 11px;display:flex}.se-hostmenu-item:hover:not(:disabled){background:var(--ws-accent-soft)}.se-hostmenu-item:disabled{opacity:.5;cursor:default}.se-hostmenu-t{font-size:14px;font-weight:600}.se-hostmenu-d{color:var(--ws-ink-dim);font-size:12px}.se-hostmenu-hint{max-width:232px;margin:0;padding:9px 11px;font-size:12.5px}.fs-rail{border:1px solid var(--ws-line);background:var(--ws-bg-2);border-radius:12px;flex-direction:column;max-height:calc(100dvh - 96px);display:flex;overflow:hidden}.fs-strip--v{cursor:default;scroll-snap-type:none;flex-direction:column;flex:auto;gap:10px;min-height:0;padding:10px;display:flex;overflow:hidden auto}.fs-strip--v::-webkit-scrollbar{width:8px;height:auto}.fs-strip--v .fs-tile{flex:none;width:auto}.fs-rail .fs-add-pin{z-index:auto;background:var(--ws-bg-2);border-top:1px solid var(--ws-line);flex:none;padding:10px;display:block;position:static}.fs-rail .fs-add-tile{flex-direction:row;gap:8px;width:100%;min-height:44px}.fs-actions-col{flex-direction:column;flex:none;gap:8px;padding-top:4px;display:flex}.fs-col-btn{white-space:nowrap;justify-content:flex-start;align-items:center;gap:6px;display:inline-flex}.fs-col-btn.is-active{background:var(--ws-accent-soft);border-color:var(--ws-accent);color:var(--ws-accent-hover)}.fs-generate-panel{background:var(--ws-panel,#00000005);border:1px solid var(--ws-line);border-radius:12px;flex-direction:column;gap:12px;max-width:620px;margin:10px 0 4px;padding:14px;display:flex}.fs-generate-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.fs-generate-head .quiz-edit-label{margin:0}.fs-generate-field{flex-direction:column;gap:4px;display:flex}.fs-generate-mats{flex-direction:column;gap:6px;max-height:180px;display:flex;overflow-y:auto}.fs-generate-mat{cursor:pointer;align-items:center;gap:8px;font-size:14px;display:flex}.fs-generate-mat input{flex:none}.fs-generate-controls{flex-wrap:wrap;gap:12px;display:flex}.fs-generate-controls label{flex-direction:column;gap:4px;font-size:12px;display:flex}.fs-generate-controls .gen-field{width:120px}.fs-generate-actions{display:flex}.gen-textarea{box-sizing:border-box;resize:vertical;width:100%;min-height:48px;font-family:inherit;font-size:14px}.fs-generate-source{border:1px solid var(--ws-line);border-radius:10px;padding:10px 12px}.fs-generate-source>summary{cursor:pointer;color:var(--ws-ink-dim);font-size:13px;font-weight:600}.fs-generate-source>:not(summary){margin-top:10px}.fs-generate-hint{margin:0;font-size:12px}.fs-source-badge{color:var(--ws-ink);background:var(--ws-line);white-space:nowrap;border-radius:999px;margin-left:8px;padding:1px 8px;font-size:11px;font-weight:600}.fs-attach{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.fs-attach-hint{font-size:11px}.fs-attach-row{border:1px solid var(--ws-line);border-radius:8px;align-items:center;gap:10px;padding:6px 10px;font-size:13px;display:flex}.fs-attach-row.is-failed{border-color:#c0392b}.fs-attach-name{text-overflow:ellipsis;white-space:nowrap;max-width:55%;font-weight:600;overflow:hidden}.fs-attach-state{color:var(--ws-ink-dim);align-items:center;gap:6px;display:inline-flex}.fs-attach-row.is-done .fs-attach-state{color:#1f9d55}.fs-attach-remove{margin-left:auto}.fs-attach-err{color:#c0392b;margin:0;font-size:12px}.fs-canvas{max-width:900px}.fs-canvas-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.fs-canvas-label{margin:0}.fs-canvas-head-right{align-items:center;gap:8px;display:inline-flex}.qe-pickhint{color:var(--ws-ink-dim);align-items:center;gap:6px;margin:8px 0 2px;font-size:13px;font-weight:600;display:inline-flex}.qe-meta-row{margin-top:16px}.fs-tile.is-pending{border-style:dashed}.fs-tile-warn{background:var(--ws-bg-2);width:18px;height:18px;color:var(--ws-ink-dim);border:1px solid var(--ws-line);border-radius:50%;place-items:center;font-size:12px;font-weight:800;line-height:1;display:inline-grid}@media (prefers-reduced-motion:reduce){.fs-tile,.fs-tile-actions,.fs-grip{transition:none}}.epv-overlay{z-index:200;background:var(--stage-bg);position:fixed;inset:0;overflow:auto}.epv-overlay:focus{outline:none}.epv-overlay h1.stem{color:var(--stage-ink)}.epv-overlay p.kicker{color:var(--stage-ink-dim)}.epv-stage{min-height:100dvh}.epv-corner{z-index:3;align-items:center;gap:10px;display:inline-flex;position:absolute;top:clamp(12px,2vh,20px);right:clamp(12px,2vw,24px)}.epv-corner-btn{border:1px solid var(--stage-line);width:40px;height:40px;color:var(--stage-ink);cursor:pointer;transition:background var(--t-color) ease, border-color var(--t-color) ease;background:#ffffff0f;border-radius:999px;place-items:center;display:inline-grid}.epv-corner-btn:hover{border-color:var(--stage-ink-dim);background:#ffffff1a}.epv-corner-btn:focus-visible{box-shadow:0 0 0 2px var(--stage-bg), 0 0 0 4px var(--ws-accent-lift);outline:none}.epv-nav{z-index:3;justify-content:center;align-items:center;gap:16px;display:flex;position:absolute;bottom:clamp(16px,3vh,34px);left:0;right:0}.epv-count{color:var(--stage-ink-dim);letter-spacing:.02em;font-size:clamp(13px,1.4vw,16px);font-weight:600}.quiz-edit-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.quiz-timer-row .gen-field{min-width:120px}.quiz-timer-custom{align-items:center;gap:8px;display:inline-flex}.quiz-timer-custom .field{flex:none;width:86px;min-width:0}.quiz-steer{background:var(--ws-accent-soft);border:1px solid #7c3aed33;border-radius:10px;margin-top:8px;padding:8px}.qe-reroll{flex-wrap:wrap;align-items:center;gap:12px;margin-top:12px;display:flex}.qe-reroll-msg{font-size:12px}.quiz-chips{flex-wrap:wrap;gap:6px;display:flex}.quiz-chip{background:var(--ws-accent-soft);color:var(--ws-accent-hover);cursor:pointer;border:1px solid #7c3aed47;border-radius:999px;padding:4px 12px;font-size:13px;font-weight:600}.quiz-chip:hover{background:#7c3aed29}.quiz-chip:disabled{opacity:.5;cursor:default}.finish{touch-action:manipulation;background:#b91c1c}.finish:hover{background:#991b1b}.phone-stage{background:var(--pad-bg);min-height:100vh;color:var(--pad-ink);flex-direction:column;gap:14px;padding:16px 16px 76px;display:flex}.phone-head{justify-content:space-between;align-items:center;display:flex}.phone-emoji{font-size:32px}.phone-qcount{color:var(--pad-ink-dim);font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.timer-sm{background:var(--pad-ink);width:44px;height:44px;color:var(--pad-bg);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;font-weight:700;display:grid}.phone-stem{text-align:center;color:var(--pad-ink);margin:4px 0;font-size:22px;font-weight:700;line-height:1.25}.phone-tiles{flex:1;grid-template-columns:1fr 1fr;gap:12px;display:grid}.phone-tile{border-radius:var(--radius);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;border:none;place-items:center;min-height:120px;padding:16px;display:grid;position:relative}.phone-tile:active{filter:brightness(1.12);transform:scale(.97)}.phone-tile-shape{color:#fff;font-size:clamp(56px,17vw,132px);line-height:1}.phone-tile-letter{width:1.7em;height:1.7em;color:var(--answer-ink);background:#ffffff38;border-radius:8px;place-items:center;font-size:20px;font-weight:800;line-height:1;display:grid;position:absolute;top:10px;left:12px}.tile-d .phone-tile-letter{background:#00000029}.big-points{margin:8px 0;font-size:44px;font-weight:800}.card.result-correct{background:#16a34a1f;border:2px solid #16a34a}.card.result-wrong{background:#dc26261f;border:2px solid #dc2626}.res-badge{margin:4px 0;font-size:64px;font-weight:800;line-height:1}.result-correct .res-badge{color:#22c55e}.result-wrong .res-badge{color:#f87171}.correct-answer{color:#34d399}.tile-a{background:var(--tile-a);color:var(--tile-a-ink)}.tile-b{background:var(--tile-b);color:var(--tile-b-ink)}.tile-c{background:var(--tile-c);color:var(--tile-c-ink)}.tile-d{background:var(--tile-d);color:var(--tile-d-ink)}.tile-badge{flex:none;width:2.4em;height:2.4em}.tile-badge-svg{width:100%;height:100%;display:block;overflow:visible}.tile-badge-shape{fill:#fff}.tile-badge-letter{fill:var(--answer-ink);font-family:var(--font-sans);font-size:34px;font-weight:800}.tile-text{color:var(--answer-ink);flex:1}.tile-result{isolation:isolate;position:relative}.tile-result.is-wrong{transition:transform var(--dist-extra-fade-ms,.26s) var(--ease);transform:scale(.9)}.dist-grid.is-morphing .tile-result.is-wrong{transform:none}.tile-check{z-index:2;color:var(--ok);text-shadow:0 0 3px var(--stage-bg), 0 2px 6px #0000008c;pointer-events:none;font-size:clamp(40px,5vw,92px);font-weight:900;line-height:.8;position:absolute;top:clamp(2px,.4vw,8px);right:clamp(2px,.4vw,8px)}.tile-result.is-correct{outline:clamp(3px, .34vw, 6px) solid var(--ok);outline-offset:clamp(2px, .24vw, 4px)}.dist-cell{flex-direction:column;min-width:0;display:flex}.projector .tiles.dist-grid{--dk:.7;width:calc(var(--dk) * 100%);gap:calc(var(--dk) * clamp(16px, 1.6vw, 32px));margin:clamp(14px,3.5vh,52px) auto 0}.projector .dist-grid .tile{height:calc(var(--dk) * clamp(92px, 12.5vh, 164px));padding:0 calc(var(--dk) * clamp(14px, 1.5vw, 34px));gap:calc(var(--dk) * clamp(14px, 1.15vw, 26px))}.dist-grid.is-morphing{will-change:transform}.dist-grid.is-morphing .tile-check{opacity:0}.dist-grid.is-morphing .tile-result.is-correct{outline-color:#0000}.tile-check{transition:opacity var(--dist-extra-fade-ms,.26s) var(--ease)}.tile-result.is-correct{transition:outline-color var(--dist-extra-fade-ms,.26s) var(--ease)}.dist-stem-out{color:var(--stage-ink);pointer-events:none;animation:pc-fade-out var(--dist-morph-ms,.52s) var(--ease) both;margin:0;position:fixed}@keyframes pc-fade-out{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.dist-grid.is-morphing .tile-check{opacity:1}.dist-grid.is-morphing .tile-result.is-correct{outline-color:var(--ok)}.dist-grid.is-morphing .tile-result.is-wrong{transform:scale(.9)}.tile-check,.tile-result.is-correct,.tile-result.is-wrong{transition:none}}.arcade-stage{width:100%;max-width:none;min-height:100dvh;padding:clamp(16px, 3.4vh, 40px) var(--space-3);justify-content:flex-start;align-items:center;gap:var(--space-3);background:radial-gradient(1100px 520px at 50% -8%, var(--stage-bg-2), var(--stage-bg));color:var(--stage-ink);animation:stage-fade-in .34s var(--ease) both;flex-direction:column;margin:0;display:flex;position:relative;overflow-y:auto}@media (min-height:720px){.arcade-stage{justify-content:center}}.arcade-stage{transition:background-color .38s var(--ease), color .38s var(--ease)}@media (prefers-reduced-motion:reduce){.arcade-stage{transition:none}}@keyframes stage-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.arcade-stage{animation:none}}.arcade-stage .stage-head{max-width:1000px}.arcade-kicker{color:var(--stage-ink-dim);font-weight:600}.projector{background:radial-gradient(1100px 520px at 50% -8%, var(--stage-bg-2), var(--stage-bg)) var(--stage-bg);width:100%;min-height:100dvh;color:var(--stage-ink);overflow-x:hidden}.pc-stage{grid-template-rows:clamp(76px,11vh,148px) 1fr auto auto 1fr clamp(76px,11vh,148px);grid-template-columns:1fr min(70vw,1600px,100vw - 400px) 1fr;place-items:center;min-height:100dvh;display:grid;position:relative}.pc-stage>.stage-head{grid-area:1/2;align-self:center}.pc-stage>.stem{grid-area:3/2;align-self:end}.pc-stage>.pc-body{flex-direction:column;grid-area:4/2;justify-content:center;align-self:start;align-items:center;gap:clamp(16px,2.4vh,28px);width:100%;margin-top:clamp(20px,3vh,44px);display:flex}.pc-stage>.pc-foot{grid-area:6/2;justify-content:center;align-self:center;align-items:center;gap:clamp(14px,1.6vw,22px);display:flex}.pc-stage-board{grid-template-rows:clamp(128px,15vh,190px) 1fr clamp(84px,12vh,160px);grid-template-columns:1fr min(88vw,1600px) 1fr}.pc-stage-board>.stage-head{grid-row:1}.pc-stage-board>.pc-body{grid-row:2;align-self:center;margin-top:0}.pc-stage-board.pc-board-top>.pc-body{align-self:start;margin-top:clamp(12px,2.5vh,36px)}.pc-stage-board>.pc-foot{flex-direction:column;grid-row:3;justify-content:flex-start;align-items:center;gap:clamp(8px,1.6vh,16px)}.pc-intro{place-items:center;min-height:100dvh;display:grid}.projector .stage-corner{z-index:50;gap:clamp(8px,.8vw,14px);position:fixed;top:clamp(12px,2vh,24px);right:clamp(12px,2vw,28px)}.projector .stage-head{width:100%;max-width:none}.projector .kicker,.projector .arcade-kicker{font-size:clamp(15px,1.5vw,28px)}.projector .scoreboard-title{font-size:clamp(34px,3.6vw,68px)}.projector .timer-ring{width:clamp(52px,4.8vw,88px);height:clamp(52px,4.8vw,88px)}.projector .timer{width:clamp(40px,3.7vw,66px);height:clamp(40px,3.7vw,66px);font-size:clamp(20px,1.9vw,32px)}.projector .stem{-webkit-line-clamp:4;-webkit-box-orient:vertical;width:100%;max-width:none;max-height:clamp(150px,24vh,264px);margin:0;line-height:1.16;display:-webkit-box;overflow:hidden}.projector .tiles{gap:clamp(16px,1.6vw,32px);width:100%;max-width:none}.projector .tile{height:clamp(92px,12.5vh,164px);min-height:0;font-size:var(--answer-font,clamp(16px, min(1.42vw, 5.2vh), 33px));gap:clamp(14px,1.15vw,26px);padding:0 clamp(14px,1.5vw,34px);overflow:hidden}.projector .tile-text{-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;min-width:0;line-height:1.2;display:-webkit-box;overflow:hidden}.projector .tile-badge{flex:none}.projector .dist-chart{gap:clamp(24px,3vw,56px);max-width:1200px}.projector .dist-col-track{height:clamp(150px,24vh,280px)}.projector .leaderboard,.projector .standings,.projector .podium-wrap,.projector .lb-actions{max-width:1360px}.pc-fade-in{animation:pc-fade-in var(--pc-fade-ms,.42s) var(--ease) both}@keyframes pc-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.pc-fade-in{opacity:1;animation:none}}.projector .present-stage{transition:background-color var(--settle-ms,.38s) var(--ease), color var(--settle-ms,.38s) var(--ease)}.projector .present-card{flex:none;min-height:0;position:absolute;inset:0}.projector .scoreboard{--lb-row-h:clamp(52px, 7vh, 92px)}.projector .podium-gold .podium-stand{height:clamp(150px,22vh,240px)}.projector .podium-silver .podium-stand{height:clamp(112px,16vh,180px)}.projector .podium-bronze .podium-stand{height:clamp(84px,12vh,140px)}.projector .podium-spotlight{width:clamp(260px,34vw,420px);height:clamp(320px,44vh,480px)}.projector .finish-foot{flex-direction:column;align-items:center;gap:clamp(10px,1.4vh,18px);display:flex}.projector .finish-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(12px,1.4vw,20px);display:flex}.pc-art{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.pc-art-img{background-image:linear-gradient(rgba(0, 0, 0, var(--pc-art-scrim,0)), rgba(0, 0, 0, var(--pc-art-scrim,0))), var(--pc-art-src);background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.pc-art-mask{background:var(--stage-bg);opacity:var(--pc-mask-a,.8);position:absolute;inset:0}.pc-art-charcoal .pc-art-mask{background:radial-gradient(1100px 520px at 50% -8%, var(--stage-bg-2), var(--stage-bg)) var(--stage-bg)}.pc-art-lobby .pc-art-mask{background:radial-gradient(120% 90% at 50% -12%, var(--stage-bg-2), var(--stage-bg))}.present-card .pc-art{--pc-art-scrim:.5}.present-card-a .pc-art-mask{background:var(--tile-a)}.present-card-b .pc-art-mask{background:var(--tile-b)}.present-card-c .pc-art-mask{background:var(--tile-c)}.present-card-d .pc-art-mask{background:var(--tile-d)}.has-art{isolation:isolate}.lobby.has-art{position:relative}.present-stage{cursor:pointer;color:#14181f;background:#fff}.present-stage.present-carding{padding:0}.present-card{color:#fff;width:100%;min-height:100dvh;animation:present-card-in .3s var(--ease) both;flex-direction:column;flex:1 0 auto;justify-content:center;align-items:center;gap:clamp(6px,1.6vh,18px);display:flex}.present-card.is-dissolving{opacity:0;transition:opacity var(--morph-dissolve-ms,.56s) var(--ease)}.present-card-count .pmc-q{margin-right:.22em}.present-card-count .pmc-slash{opacity:.85;margin:0 .04em}.present-card-count{letter-spacing:-.02em;margin:0;font-size:clamp(84px,min(20vw,30vh),260px);font-weight:800;line-height:.9}.present-card-a{background:var(--tile-a)}.present-card-b{background:var(--tile-b)}.present-card-c{background:var(--tile-c)}.present-card-d{background:var(--tile-d);color:var(--tile-d-ink)}@keyframes present-card-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.present-stage .present-kicker{color:#5b6b7f;font-weight:700}.present-kicker.is-morphing .pk-glyph{visibility:hidden}.present-kicker:not(.is-assembled) .pk-fill .present-letter{visibility:hidden;animation:none}.present-morph{z-index:40;pointer-events:none;position:fixed;inset:0}.pm-glyph,.pm-slash{color:#5b6b7f;transform-origin:0 0;animation:pm-fade-in var(--morph-fade-ms,.3s) var(--ease) both;margin:0;font-weight:700;line-height:normal;position:fixed}.pm-glyph{transition:transform var(--morph-ms,.76s) var(--morph-ease,cubic-bezier(.2, .7, .2, 1))}@keyframes pm-fade-in{0%{opacity:0}to{opacity:1}}@keyframes pm-fade-out{0%{opacity:1}to{opacity:0}}.present-morph.is-flipped .pm-slash{animation:pm-fade-out var(--morph-ms,.76s) var(--ease) both}@media (prefers-reduced-motion:reduce){.pm-glyph{transition:none}.pm-glyph,.pm-slash{animation:none}}.present-stage .stage-head{min-height:88px}.present-stem{color:#14181f;min-height:1.2em;transition:color .38s var(--ease)}.present-stage.is-settling{background:var(--stage-bg);color:var(--stage-ink)}.present-stage.is-settling .present-stem{color:var(--stage-ink)}.present-stage.is-settling .present-kicker{color:var(--stage-ink-dim)}.present-stage.is-settling .fs-toggle{color:var(--stage-ink);background:#ffffff0f}.present-letter{animation-name:present-letter-fade;animation-timing-function:var(--ease);animation-fill-mode:both}@keyframes present-letter-fade{0%{opacity:0}to{opacity:1}}.present-stage.is-filled .present-letter{opacity:1;animation:none}.pre-reveal-dot{visibility:visible;pointer-events:none;background:currentColor;border-radius:50%;width:.42em;height:.42em;animation-name:pre-reveal-blink;animation-timing-function:ease-in-out;animation-fill-mode:both;position:absolute;top:50%;left:0}@keyframes pre-reveal-blink{0%{opacity:0;transform:translateY(-50%)scale(.72)}50%{opacity:.9;transform:translateY(-50%)scale(1)}to{opacity:0;transform:translateY(-50%)scale(.72)}}.present-stem.is-held .present-letter,.present-stem.is-preveal .present-letter{visibility:hidden;animation:none}.present-stem.is-preveal .present-letter:first-child{display:inline-block;position:relative}.pc-enter{animation:pc-enter var(--pc-enter-ms,.6s) var(--ease) both}@keyframes pc-enter{0%{opacity:0}to{opacity:1}}.present-tile{clip-path:inset(0 100% 0 0 round var(--radius))}.present-tile.is-in{animation:present-tile-wipe var(--tile-wipe-ms,.64s) var(--ease) both}@keyframes present-tile-wipe{0%{clip-path:inset(0 100% 0 0 round var(--radius))}to{clip-path:inset(0 0 0 0 round var(--radius))}}.present-tile .tile-badge{opacity:0}.present-tile.is-in .tile-badge{animation:present-tile-content-fade var(--tile-fade-ms,.22s) var(--ease) var(--tile-fade-delay,.76s) both}@keyframes present-tile-content-fade{0%{opacity:0}to{opacity:1}}.present-stage.is-filled .present-tile.is-in{clip-path:inset(0 0 0 0 round var(--radius));animation:none}.present-stage.is-filled .present-tile.is-in .tile-badge{opacity:1;animation:none}.present-hint{color:#8090a2}.present-stage .fs-toggle{color:#14181f;background:#14181f0d;border-color:#14181f24}.present-stage .fs-toggle:hover{background:#14181f1a;border-color:#14181f4d}@media (prefers-reduced-motion:reduce){.present-card{animation:none}.present-letter{opacity:1;animation:none}.present-tile.is-in{clip-path:inset(0 0 0 0 round var(--radius));animation:none}.present-tile.is-in .tile-badge{opacity:1;animation:none}.pre-reveal-dot{opacity:0;animation:none}.pc-enter{opacity:1;animation:none}.projector .present-stage{transition:none}}.fs-toggle{border:1px solid var(--stage-line);width:40px;height:40px;color:var(--stage-ink);cursor:pointer;background:#ffffff0f;border-radius:999px;place-items:center;display:inline-grid}.fs-toggle:hover{border-color:var(--stage-ink-dim);background:#ffffff1a}.lobby-brand-actions{align-items:center;gap:10px;display:inline-flex}.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}.phone-stem-hint{text-align:center;color:var(--pad-ink-dim);margin:2px 0 0;font-size:13px}.correct-slot-line{justify-content:center;align-items:center;gap:8px;display:inline-flex}.mini-tile{border-radius:10px;align-items:center;gap:6px;padding:4px 10px;font-weight:800;display:inline-flex}.mini-letter{font-size:16px}.mini-shape{font-size:20px;line-height:1}.player-chip{animation:chip-pop var(--motion-ui-slow) var(--ease) both}@keyframes chip-pop{0%{opacity:0;transform:scale(.4)}70%{opacity:1;transform:scale(1.06)}to{transform:scale(1)}}.breathe{animation:breathe 2.2s var(--ease) infinite}@keyframes breathe{0%,to{opacity:.6}50%{opacity:1}}.count-bump{animation:count-bump var(--motion-ui-slow) var(--ease);display:inline-block}@keyframes count-bump{0%{transform:scale(1)}40%{transform:scale(1.18)}to{transform:scale(1)}}.timer-ring{--frac:1;--ring-color:var(--ok);background:conic-gradient(var(--ring-color) calc(var(--frac) * 360deg), var(--stage-line) 0deg);border-radius:50%;place-items:center;width:88px;height:88px;padding:7px;display:grid}.timer-ring-low{--ring-color:var(--no)}.tick{animation:tick-pop var(--motion-ui) var(--ease);display:inline-block}@keyframes tick-pop{0%{opacity:.4;transform:scale(1.3)}to{opacity:1;transform:scale(1)}}.result-correct .res-badge{animation:badge-pop .48s var(--ease) both}@keyframes badge-pop{0%{transform:scale(0)}60%{transform:scale(1.18)}to{transform:scale(1)}}.result-wrong .res-badge{animation:badge-shake .46s var(--ease) both}@keyframes badge-shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-5px)}80%{transform:translate(5px)}}.answer-waiting{color:var(--ok-ink);align-items:center;gap:8px;margin-top:6px;font-weight:600;display:inline-flex}.answer-waiting:before{content:"";background:var(--ok-ink);border-radius:50%;width:10px;height:10px;animation:1.1s ease-in-out infinite waiting-pulse}@keyframes waiting-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.75)}}.phone-hud{background:var(--stage-bg);height:56px;color:var(--stage-ink);border-top:1px solid var(--stage-line);z-index:30;align-items:center;gap:10px;padding:8px 18px;display:flex;position:fixed;bottom:0;left:0;right:0}.hud-emoji{font-size:26px;line-height:1}.hud-name{color:var(--stage-ink-dim);font-size:15px}.hud-score{font-variant-numeric:tabular-nums;animation:hud-bump var(--motion-ui-slow) var(--ease);margin-left:auto;font-size:22px;font-weight:800;display:inline-block}@keyframes hud-bump{0%{transform:scale(1)}40%{color:var(--ok);transform:scale(1.22)}to{transform:scale(1)}}.lb-row{animation:lb-reorder var(--motion-ui-slow) var(--ease) both}@keyframes lb-reorder{0%{transform:translateY(calc(var(--from-rows,0) * 62px))}to{transform:translateY(0)}}.lb-move{text-align:center;width:1.2em;margin-left:8px;font-size:14px;display:inline-block}.lb-up{color:var(--ok)}.lb-down{color:var(--stage-ink-dim)}.sound-toggle{border:1px solid var(--stage-line);cursor:pointer;width:40px;height:40px;color:inherit;background:#94a3b826;border-radius:999px;flex:none;font-size:18px;line-height:1}.sound-toggle:hover{background:#94a3b847}.stage-actions{align-items:center;gap:10px;display:flex}.stage-corner{z-index:50;align-items:center;gap:8px;display:inline-flex;position:fixed;top:14px;right:16px}.stage-corner-exit{text-decoration:none}.stage-ghost{visibility:hidden}.stage-ghost,.stage-ghost *{pointer-events:none}.start-error{flex-direction:column;align-items:center;gap:14px;padding:6px 0;display:flex}.start-error .auth-error{color:#fca5a5;font-size:15px;font-weight:600}.skip-question{color:#e2e8f0b8;cursor:pointer;background:#94a3b81f;border:1px solid #94a3b847;border-radius:999px;align-self:center;margin-top:4px;padding:7px 16px;font-size:13px;font-weight:600;transition:background .15s,color .15s,border-color .15s}.skip-question:hover:not(:disabled){color:#f1f5f9;background:#94a3b838;border-color:#94a3b880}.skip-question:disabled{opacity:.55;cursor:default}@media (prefers-reduced-motion:reduce){.player-chip,.player-emoji,.celebrate-emoji,.breathe,.count-bump,.tick,.result-correct .res-badge,.result-wrong .res-badge,.answer-waiting:before,.hud-score,.lb-row{animation:none}}.phone-light{background:var(--pad-bg);min-height:100vh;color:var(--pad-ink);place-items:center;padding:24px 24px 84px;display:grid}.pad-card{background:var(--pad-card);border:1px solid var(--pad-line);text-align:center;border-radius:20px;width:100%;max-width:460px;margin:0 auto;padding:32px 28px;box-shadow:0 10px 40px #141e2d14}.pad-card .kicker,.phone-light .muted{color:var(--pad-ink-dim)}.pad-card h1{color:var(--pad-ink)}.pad-card.result-correct{border:2px solid var(--ok-ink);background:var(--ok-tint)}.pad-card.result-wrong{border:2px solid var(--no-ink);background:var(--no-tint)}.pad-card.result-none{border:1px solid var(--pad-line)}.pad-card.result-correct .res-badge{color:var(--ok-ink)}.pad-card.result-wrong .res-badge{color:var(--no-ink)}.pad-card .correct-answer{color:var(--ok-ink)}.podium-wrap{align-items:center;gap:var(--space-3);flex-direction:column;width:100%;max-width:900px;display:flex}.podium{width:100%;padding-top:var(--space-2);justify-content:center;align-items:flex-end;gap:clamp(10px,2vw,28px);display:flex;position:relative}.podium-spotlight{transform-origin:50% 100%;opacity:0;pointer-events:none;width:clamp(180px,34vw,360px);height:clamp(200px,40vh,440px);transition:transform .52s var(--ease), opacity .52s var(--ease);background:radial-gradient(50% 60% at 50% 80%,#fff0c880,#ffe6aa1f 55%,#0000 72%);position:absolute;bottom:0;left:50%;transform:translate(-50%)scale(.2)}.podium.podium-spot .podium-spotlight{opacity:1;transform:translate(-50%)scale(1)}.podium-col{z-index:1;opacity:0;flex-direction:column;align-items:center;width:clamp(96px,22vw,200px);display:flex;position:relative}.podium-col.podium-in{animation:podium-pop .76s var(--ease) both}@keyframes podium-pop{0%{opacity:0;transform:translateY(64px)scale(.82)}60%{opacity:1;transform:translateY(-6px)scale(1.05)}80%{transform:translateY(2px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}.podium-figure{flex-direction:column;justify-content:flex-end;align-items:center;gap:2px;min-height:118px;padding-bottom:8px;display:flex}.podium-emoji{transform-origin:50% 80%;font-size:clamp(40px,7vw,72px);line-height:1}.podium-dancing .podium-col.podium-in .podium-emoji{animation:podium-sway var(--sway-ms,.96s) ease-in-out infinite}@keyframes podium-sway{0%,to{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}.podium-name{color:var(--stage-ink);text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:clamp(14px,1.6vw,20px);font-weight:700;overflow:hidden}.podium-figure .podium-score{font-variant-numeric:tabular-nums;color:var(--stage-ink-dim);font-size:clamp(16px,2vw,24px);font-weight:800}.podium-stand{background:var(--stage-bg-2);border:1px solid var(--stage-line);border-bottom:none;border-radius:14px 14px 0 0;flex-direction:column;justify-content:flex-start;align-items:center;gap:4px;width:100%;padding-top:14px;display:flex}.podium-medal{font-size:clamp(28px,4vw,44px);line-height:1}.podium-place{color:var(--stage-ink);font-size:clamp(20px,3vw,34px);font-weight:800}.podium-gold .podium-stand{background:linear-gradient(180deg, #e69f004d, var(--stage-bg-2));border-color:#e69f008c;height:clamp(150px,24vh,210px)}.podium-silver .podium-stand{background:linear-gradient(180deg, #bec8d642, var(--stage-bg-2));border-color:#bec8d673;height:clamp(112px,18vh,160px)}.podium-bronze .podium-stand{background:linear-gradient(180deg, #cd7f3242, var(--stage-bg-2));border-color:#cd7f3273;height:clamp(84px,14vh,120px)}@media (prefers-reduced-motion:reduce){.podium-col,.podium-col.podium-in{opacity:1;animation:none}.podium-dancing .podium-col.podium-in .podium-emoji{animation:none;transform:none}.podium-spotlight{transition:none}}.podium-intro{justify-content:center}.intro-card{text-align:center}.intro-title{letter-spacing:-.02em;color:var(--stage-ink);animation:intro-pop .6s var(--ease) both;margin:8px 0;font-size:clamp(40px,8vw,92px);font-weight:800}.intro-sub{color:var(--stage-ink-dim);font-size:clamp(15px,2vw,20px)}@keyframes intro-pop{0%{opacity:0;transform:scale(.6)}60%{opacity:1;transform:scale(1.08)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.intro-title{animation:none}}.finale-badge{margin:4px 0;font-size:64px;line-height:1}.finale-msg{color:#e2e8f0;margin:8px 0 0;font-size:16px;font-weight:600}:root{--ws-bg:#f6f3ec;--ws-bg-2:#ece6d9;--ws-card:#fff;--ws-ink:#1d2330;--ws-ink-dim:#5b6473;--ws-line:#1c19171f;--ws-line-soft:#1c191712;--ws-line-ctrl:#1c191729;--ws-accent:#7c3aed;--ws-accent-hover:#6d28d9;--ws-accent-press:#5b21b6;--ws-accent-soft:#7c3aed1a;--ws-accent-2:#115e59;--ws-accent-2-soft:#115e591a;--ws-accent-lift:#a78bfa;--ws-danger:#c0392b;--ws-danger-hover:#a93226;--ws-danger-soft:#c0392b14;--ws-star:#b8860b;--e1:0 1px 2px #1e25300d, 0 3px 10px #1e25300f;--e2:0 2px 4px #1e25300d, 0 12px 28px #1e25301c;--e3:0 4px 12px #1e253014, 0 18px 44px #1e253024;--e4:0 10px 24px #1e25301a, 0 36px 90px #1e253033;--t-press:90ms;--t-color:.12s;--t-lift:.14s;--t-enter:.18s;--ws-ease:cubic-bezier(.2, 0, 0, 1)}.workspace.hello{background:var(--ws-bg);color:var(--ws-ink);align-content:start}.workspace{color:var(--ws-ink)}.workspace .card,.workspace .auth-card{background:var(--ws-card);border:1px solid var(--ws-line);box-shadow:var(--e1);color:var(--ws-ink)}.workspace h1,.workspace h2,.workspace h3{color:var(--ws-ink);letter-spacing:-.01em}.workspace .sub{color:var(--ws-ink)}.workspace .kicker,.workspace .muted{color:var(--ws-ink-dim)}.workspace .muted a,.workspace .auth-links a,.workspace .link-btn,.workspace .course-toggle{color:var(--ws-accent)}.workspace .link-btn.danger{color:var(--ws-danger)}.workspace .plus-btn{color:var(--ws-accent);width:auto;height:auto;box-shadow:none;background:0 0;border:none;border-radius:8px;padding:0 6px;font-size:26px;font-weight:700}.workspace .plus-btn:hover{background:var(--ws-accent-soft);color:var(--ws-accent-hover)}.workspace .plus-btn:disabled{opacity:.5;background:0 0}.workspace .materials-head-row .plus-btn{font-size:22px}.workspace .field{border:1px solid var(--ws-line);color:var(--ws-ink);background:#fff}.workspace .field::placeholder{color:#9aa1ad}.workspace .field:focus-visible{border-color:var(--ws-accent);box-shadow:0 0 0 2px var(--ws-bg), 0 0 0 4px var(--ws-accent);outline:none}.workspace .course-card,.workspace .quiz-card,.workspace .me-recap,.workspace .auth-tests,.workspace .set-add-panel,.workspace .set-edit-panel,.workspace .create-course{background:var(--ws-card);border:1px solid var(--ws-line)}.workspace .course-body,.workspace .materials,.workspace .me-section{border-color:var(--ws-line-soft)}.workspace .me-header{border-bottom-color:var(--ws-line)}.workspace .course-name,.workspace .quiz-stem,.workspace .material-name,.workspace .me-name,.workspace .me-review-stem,.workspace .rep-q-stem,.workspace .lb-name{color:var(--ws-ink)}.workspace .quiz-options{color:var(--ws-ink-dim)}.workspace .quiz-options li.quiz-correct,.workspace .correct-answer{color:var(--ok-ink)}.workspace .rep-skipped,.workspace .rq-skipped-tag{color:var(--ws-ink-dim)}.workspace .rep-q-skipped{border-left-color:var(--ws-line);background:#00000009}.workspace .rep-table th{color:var(--ws-ink-dim)}.workspace .rep-table th,.workspace .rep-table td{border-bottom-color:var(--ws-line-soft)}.workspace .lb-row{background:var(--ws-bg-2);border:1px solid var(--ws-line-soft)}.workspace .lb-rank{color:var(--ws-ink-dim)}.workspace .me-level{color:var(--ws-accent)}.workspace .role-badge,.workspace .set-add-row,.workspace .rep-flag-reasons,.workspace .me-xp,.workspace .me-session-date,.workspace .me-course-stats,.workspace .quiz-edit-label{color:var(--ws-ink-dim)}.workspace .celebrate-name,.workspace .join-url{color:var(--ws-ink)}.workspace .auth-error,.workspace .rq-yours{color:var(--ws-danger)}.workspace .dots-btn{color:var(--ws-ink-dim)}.workspace .dots-btn:hover{background:var(--ws-accent-soft);color:var(--ws-ink)}.workspace .dots-menu{border:1px solid var(--ws-line);box-shadow:var(--e3);background:#fff}.workspace .dots-menu button{color:var(--ws-ink)}.workspace .dots-menu button:hover{background:var(--ws-accent-soft)}.workspace .dots-menu button.danger{color:var(--ws-danger)}.workspace .dots-menu button.danger:hover{background:var(--ws-danger-soft)}.workspace .dots-sep{background:var(--ws-line)}.dots-btn:focus-visible,.attach-course-row:focus-visible,.info-icon:focus-visible{box-shadow:0 0 0 2px var(--ws-bg), 0 0 0 4px var(--ws-accent);border-radius:8px;outline:none}.workspace .badge{background:var(--ws-accent-soft);color:var(--ws-ink);border-color:#7c3aed4d}.workspace .quiz-badge{color:#b45309;border-color:#b4530966}.workspace .material-pre{background:var(--ws-bg-2);border:1px solid var(--ws-line-soft);color:var(--ws-ink)}.workspace .consent{background:var(--ws-bg-2);color:var(--ws-ink)}.workspace .course-card,.quiz-set-card{transition:box-shadow var(--t-lift) var(--ws-ease), transform var(--t-lift) var(--ws-ease)}.workspace .course-card:hover,.quiz-set-card:hover{box-shadow:var(--e2);transform:translateY(-1px)}.workspace .course-card:active,.quiz-set-card:active{box-shadow:var(--e1);transform:translateY(0)}@media (prefers-reduced-motion:reduce){.workspace .course-card,.quiz-set-card{transition:none}}.workspace h1{margin:0 0 var(--space-2);font-size:26px;font-weight:700;line-height:1.2}.workspace h2{margin:0 0 var(--space-1);font-size:19px;font-weight:700;line-height:1.25}.workspace h3{margin:0 0 var(--space-1);font-size:15px;font-weight:600;line-height:1.3}.ws-eyebrow,.workspace .kicker,.workspace .materials-head{letter-spacing:.08em;text-transform:uppercase;color:var(--ws-ink-dim);font-size:12px;font-weight:600}.workspace .me-section,.workspace .materials{margin-top:var(--space-3);padding-top:var(--space-2)}.workspace .course-body{gap:var(--space-2)}.workspace .gen-row,.workspace .quiz-actions{gap:var(--space-1)}.me-section .gen-row{max-width:440px}.me-section .me-toggle{max-width:max-content}.btn-ghost{background:var(--ws-card);border:1px solid var(--ws-line-ctrl);color:var(--ws-ink);font:inherit;letter-spacing:.01em;cursor:pointer;transition:background var(--t-color) ease, box-shadow var(--t-color) ease, border-color var(--t-color) ease, color var(--t-color) ease, transform var(--t-press) var(--ws-ease);border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:11px 19px;font-size:14px;font-weight:600;line-height:1;display:inline-flex}.btn-ghost:hover{border-color:var(--ws-ink-dim);box-shadow:0 1px 3px #1e25301a}.btn-ghost:active{background:var(--ws-bg-2);box-shadow:none;transform:translateY(1px)}.btn-ghost:focus-visible{box-shadow:0 0 0 2px var(--ws-bg), 0 0 0 4px var(--ws-accent);outline:none}.front-door .btn-ghost,.lobby .btn-ghost,.epv-overlay .btn-ghost{color:var(--stage-ink);background:#ffffff0f;border-color:#b4c3d724}.front-door .btn-ghost:hover,.lobby .btn-ghost:hover,.epv-overlay .btn-ghost:hover{border-color:var(--stage-ink-dim);box-shadow:none;background:#ffffff1a}.front-door .btn-ghost:active,.lobby .btn-ghost:active,.epv-overlay .btn-ghost:active{background:#ffffff08}.front-door .btn-ghost:focus-visible,.lobby .btn-ghost:focus-visible,.epv-overlay .btn-ghost:focus-visible{box-shadow:0 0 0 2px var(--stage-bg), 0 0 0 4px var(--ws-accent-lift)}.epv-overlay .btn-ghost:disabled{background:var(--stage-bg-2);color:var(--stage-ink-dim);border-color:var(--stage-line)}.front-door .link-btn,.lobby .link-btn{color:#c4b5fd}.front-door .link-btn:hover,.lobby .link-btn:hover{color:#ddd6fe}.ws-status{letter-spacing:.03em;border-radius:999px;align-items:center;gap:4px;padding:2px 9px;font-size:11px;font-weight:600;display:inline-flex}.ws-status.is-warn{background:var(--ws-bg-2);color:var(--ws-ink-dim);border:1px solid var(--ws-line)}.ws-status.is-mute{background:var(--ws-bg-2,#efe9df);color:var(--ws-ink-dim,#6b7280);border:1px solid var(--ws-line,#1e25301f)}.ws-status.is-ok{background:var(--ws-accent-2-soft);color:var(--ws-accent-2);border:1px solid #115e594d}.ws-status.is-danger{color:var(--ws-danger,#c0392b);background:#c0392b1a;border:1px solid #c0392b4d}.ws-loading{color:var(--ws-ink-dim,#6b7280);flex-direction:column;align-items:center;gap:12px;padding:36px 16px;display:flex}.ws-loading-dots{gap:6px;display:inline-flex}.ws-loading-dots span{background:var(--ws-accent,#7c3aed);opacity:.4;width:8px;height:8px;animation:ws-pulse 1s var(--ease) infinite;border-radius:50%}.ws-loading-dots span:nth-child(2){animation-delay:.15s}.ws-loading-dots span:nth-child(3){animation-delay:.3s}.ws-loading-label{font-size:14px}@keyframes ws-pulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.ws-loading-dots span{opacity:.6;animation:none}}.ws-empty{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:30px 18px;display:flex}.ws-empty-icon{color:var(--ws-accent,#7c3aed);opacity:.55;font-size:30px;line-height:1}.ws-empty-title{color:var(--ws-ink,#1e2530);margin:0;font-size:15px;font-weight:600}.ws-empty-body{color:var(--ws-ink-dim,#6b7280);max-width:36ch;margin:0;font-size:14px}.ws-empty-action{margin-top:6px}.ws-error{text-align:left;background:#c0392b12;border:1px solid #c0392b47;border-radius:12px;align-items:flex-start;gap:10px;margin:8px 0;padding:11px 14px;font-size:14px;display:flex}.ws-error-icon{background:var(--ws-danger,#c0392b);color:#fff;border-radius:50%;flex:none;place-items:center;width:18px;height:18px;font-size:12px;font-weight:800;display:inline-grid}.ws-error-body{color:var(--ws-ink,#1e2530);flex:1;align-self:center}.ws-error-retry{margin-left:auto}.ws-modal-backdrop{z-index:100;background:#14181f73;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.ws-modal{background:var(--ws-card,#fff);border:1px solid var(--ws-line,#1e25301f);width:100%;max-width:380px;box-shadow:var(--e4);color:var(--ws-ink,#1e2530);border-radius:16px;padding:22px}.ws-modal-title{margin:0 0 6px;font-size:19px;font-weight:700}.ws-modal-message{margin:0 0 12px}.ws-modal .field{border:1px solid var(--ws-line);color:var(--ws-ink);background:#fff;margin:6px 0 4px}.ws-modal .field::placeholder{color:#9aa1ad}.ws-modal .field:focus-visible{border-color:var(--ws-accent);box-shadow:0 0 0 2px var(--ws-bg), 0 0 0 4px var(--ws-accent);outline:none}.ws-modal-actions{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.ws-modal-actions .cta,.ws-modal-actions .btn-ghost{margin:0}.ws-modal .ws-modal-message{color:var(--ws-ink-dim)}.ws-modal-stage{background:var(--stage-bg-2);border-color:var(--stage-line);color:var(--stage-ink)}.ws-modal-stage .ws-modal-message{color:var(--stage-ink-dim)}.ws-modal-stage .btn-ghost{color:var(--stage-ink);background:#ffffff0f;border-color:#b4c3d724}.ws-modal-stage .btn-ghost:hover{border-color:var(--stage-ink-dim);box-shadow:none;background:#ffffff1a}.ws-modal-stage .btn-ghost:active{background:#ffffff08}.ws-modal-stage .btn-ghost:focus-visible{box-shadow:0 0 0 2px var(--stage-bg), 0 0 0 4px var(--ws-accent-lift)}.workspace .fast-path{background:var(--ws-accent-soft);border:1px solid #7c3aed4d}.workspace .toast{background:var(--ok-ink);color:#fff}.workspace .set-add-panel,.workspace .set-edit-panel,.workspace .me-recap{background:var(--ws-bg-2)}.workspace .badge-new{background:var(--ws-accent-2-soft);color:var(--ws-accent-2);border-color:#115e5959}.workspace .rq-correct{border-left-color:var(--ok-ink)}.workspace .rq-wrong{border-left-color:var(--ws-danger)}.workspace .rq-skip{border-left-color:var(--ws-line)}.workspace .rep-q-struggled{border-left-color:var(--ws-danger)}.workspace .rep-q-skipped{border-left-color:var(--ws-line)}.ws-shell{background:var(--ws-bg);min-height:100dvh;display:flex}.ws-rail{background:var(--stage-bg-2);flex-direction:column;flex-shrink:0;align-self:flex-start;width:200px;height:100dvh;padding:18px 14px 22px;display:flex;position:sticky;top:0;overflow-y:auto}.ws-rail-brand{color:var(--stage-ink);letter-spacing:-.01em;align-items:center;gap:8px;margin:2px 6px 16px;font-size:16px;font-weight:700;display:flex}.ws-rail-dot{background:var(--ws-accent-lift);border-radius:50%;width:7px;height:7px}.ws-rail-actions{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.ws-rail-create{background:var(--ws-accent);color:#fff;font:inherit;cursor:pointer;transition:background var(--t-color) ease, transform var(--t-press) var(--ws-ease);border:none;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:10px 12px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.ws-rail-create:hover{background:var(--ws-accent-hover)}.ws-rail-create:active{background:var(--ws-accent-press);transform:translateY(1px)}.ws-rail-create:focus-visible{box-shadow:0 0 0 2px var(--stage-bg-2), 0 0 0 4px var(--ws-accent-lift);outline:none}.ws-rail-create:disabled{opacity:.6;cursor:default}.ws-rail-action{color:var(--ws-accent-lift);border:1.5px solid var(--ws-accent-lift);font:inherit;cursor:pointer;transition:background var(--t-color) ease, transform var(--t-press) var(--ws-ease);background:#7c3aed29;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:9px 12px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.ws-rail-action:hover{border-color:var(--ws-accent-lift);background:#7c3aed42}.ws-rail-action:active{transform:translateY(1px)}.ws-rail-action:focus-visible{box-shadow:0 0 0 2px var(--stage-bg-2), 0 0 0 4px var(--ws-accent-lift);outline:none}.ws-rail-nav{flex-direction:column;gap:2px;display:flex}.ws-rail-link{color:var(--stage-ink-dim);font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;border-left:2px solid #0000;border-radius:8px;align-items:center;gap:11px;width:100%;padding:9px 11px;font-size:14px;text-decoration:none;display:flex}.ws-rail-link:hover{color:var(--stage-ink);background:#ffffff0a}.ws-rail-link.is-active{color:var(--stage-ink);border-left-color:var(--ws-accent-lift);background:#ffffff0f;font-weight:600}.ws-rail-link:focus-visible{outline:2px solid var(--ws-accent-lift);outline-offset:-2px}.ws-ico{flex-shrink:0}.ws-rail-foot{border-top:1px solid var(--stage-line);margin-top:auto;padding-top:14px}.ws-rail-signout{color:var(--stage-ink-dim)}.ws-main{background:var(--ws-bg);flex:1;min-width:0;padding:28px clamp(32px,3.2vw,72px) 44px}.ws-content{text-align:left;max-width:1760px;margin:0 auto}.ws-content-narrow{max-width:720px;margin:0 auto}.ws-content-fluid{max-width:none}@media (max-width:720px){.ws-shell{flex-direction:column}.ws-rail{flex-flow:wrap;align-self:stretch;align-items:center;gap:6px;width:auto;height:auto;padding:10px 14px;position:static;overflow:visible}.ws-rail-brand{margin:0 6px 0 2px}.ws-rail-actions{flex-direction:row;order:9;gap:6px;margin:0 0 0 auto}.ws-rail-create,.ws-rail-action{padding:8px 12px}.ws-rail-nav{flex-direction:row;gap:2px}.ws-rail-link{border-left:none;padding:7px 10px}.ws-rail-link.is-active{box-shadow:inset 0 -2px 0 var(--ws-accent-lift);border-left:none}.ws-rail-foot{border-top:none;margin:0;padding:0 0 0 8px}.ws-main{padding:20px 16px 32px}}@media (prefers-reduced-motion:no-preference){.ws-rail-link,.ws-rail-create{transition:background var(--motion-ui) var(--ease), color var(--motion-ui) var(--ease)}}.workspace .course-card{text-align:left;box-shadow:var(--e1)}.course-main{flex-direction:column;align-items:flex-start;gap:4px;min-width:0;display:flex}.workspace .course-card .course-name{align-items:center;gap:6px;margin:0;font-size:16px;font-weight:700;display:inline-flex}.course-star{color:var(--ws-star);display:inline-flex}.course-meta{color:var(--ws-ink-dim);flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.course-meta .cm{align-items:center;gap:4px;display:inline-flex}.course-meta .cm svg{opacity:.75}.course-meta .cm-dot{opacity:.45}.course-count{font-size:13px}.workspace .course-toggle{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.ws-account-card{background:var(--ws-card);border:1px solid var(--ws-line);max-width:480px;box-shadow:var(--e1);border-radius:14px;padding:22px 24px}.ws-account-head{align-items:center;gap:14px;margin-bottom:18px;display:flex}.ws-account-emoji{background:var(--ws-bg-2);border-radius:50%;flex-shrink:0;place-items:center;width:56px;height:56px;font-size:30px;display:grid}.ws-account-name{color:var(--ws-ink);margin:0;font-size:18px;font-weight:700}.ws-account-rows{margin:0 0 20px}.ws-account-rows>div{border-top:1px solid var(--ws-line);justify-content:space-between;gap:12px;padding:11px 0;font-size:14px;display:flex}.ws-account-rows dt{color:var(--ws-ink-dim);margin:0}.ws-account-rows dd{color:var(--ws-ink);margin:0;font-weight:500}.ws-setting-row{border-top:1px solid var(--ws-line);justify-content:space-between;align-items:center;gap:16px;margin-bottom:8px;padding:14px 0;display:flex}.ws-setting-text{min-width:0}.ws-setting-label{color:var(--ws-ink);margin:0 0 2px;font-size:14px;font-weight:600}.ws-setting-hint{color:var(--ws-ink-dim);margin:0;font-size:12.5px;line-height:1.4}.ws-switch{cursor:pointer;color:var(--ws-ink-dim);background:0 0;border:0;flex-shrink:0;align-items:center;gap:9px;padding:0;font-size:13px;font-weight:600;display:inline-flex}.ws-switch-track{background:var(--ws-bg-2);border:1px solid var(--ws-line);width:40px;height:24px;transition:background var(--t-color) ease, border-color var(--t-color) ease;border-radius:999px;position:relative}.ws-switch-knob{background:var(--ws-ink-dim);width:18px;height:18px;transition:transform var(--t-press) var(--ws-ease), background var(--t-color) ease;border-radius:50%;position:absolute;top:2px;left:2px}.ws-switch.is-on .ws-switch-track{background:color-mix(in srgb, var(--ws-accent) 45%, transparent);border-color:var(--ws-accent)}.ws-switch.is-on .ws-switch-knob{background:var(--ws-accent);transform:translate(16px)}.ws-switch.is-on .ws-switch-state{color:var(--ws-accent)}.ws-back{color:var(--ws-accent);align-items:center;gap:4px;margin-bottom:12px;font-size:13px;text-decoration:none;display:inline-flex}.ws-back:hover{text-decoration:underline}.workspace .course-title-btn{text-decoration:none}.course-detail{text-align:left}.cd-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.cd-head-main h1{align-items:center;gap:7px;margin:0 0 6px;display:inline-flex}.cd-head-actions{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:10px;display:flex}.cd-host{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.ws-tabs{border-bottom:1px solid var(--ws-line);gap:2px;margin:18px 0 22px;display:flex}.ws-tab{font:inherit;color:var(--ws-ink-dim);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:9px 16px;font-size:15px}.ws-tab:hover{color:var(--ws-ink)}.ws-tab.is-active{color:var(--ws-accent);border-bottom-color:var(--ws-accent);font-weight:600}.ws-tab:focus-visible{box-shadow:0 0 0 2px var(--ws-bg), 0 0 0 4px var(--ws-accent);border-radius:8px;outline:none}.cd-step{gap:14px;display:flex}.cd-marker{flex-direction:column;flex-shrink:0;align-items:center;display:flex}.cd-dot{background:var(--ws-accent);color:#fff;border-radius:50%;place-items:center;width:26px;height:26px;font-size:13px;font-weight:700;display:grid}.cd-line{background:var(--ws-line);flex:1;width:2px;margin:4px 0}.cd-stepbody{flex:1;min-width:0;padding-bottom:22px}.cd-step-last .cd-stepbody{padding-bottom:0}.cd-class{max-width:520px}.cd-step-title{color:var(--ws-ink);letter-spacing:-.005em;margin:2px 0 12px;font-size:14px;font-weight:700}.cd-dot.is-wait{background:var(--ws-line);color:var(--ws-ink-dim)}.materials{max-width:560px}.material-empty{flex-direction:column;align-items:flex-start;gap:9px;padding:6px 0 4px;display:flex}.material-add-cta{cursor:pointer;display:inline-block}.material-add-cta.is-busy{opacity:.7}.material-empty-hint{max-width:44ch;margin:0}.materials-head-row{margin-bottom:8px}.btn-ghost.btn-sm{cursor:pointer;padding:6px 13px;font-size:13px;font-weight:600;line-height:1.2}.cta.btn-sm{margin:0;padding:7px 14px;font-size:13px;font-weight:600;line-height:1.2}.material-add-sm{align-items:center;display:inline-flex}.material-card{background:var(--ws-card);border:1px solid var(--ws-line);box-shadow:var(--e1);border-radius:12px;align-items:center;gap:12px;margin-bottom:8px;padding:10px 13px;display:flex}.material-uploading{opacity:.9}.material-spin{border:2px solid var(--ws-line);border-top-color:var(--ws-accent);border-radius:50%;flex-shrink:0;width:16px;height:16px;animation:.7s linear infinite ws-spin}@keyframes ws-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.material-spin{animation:none}}.material-card.is-source{background:var(--ws-accent-soft);border-color:#7c3aed73}.material-pick{cursor:pointer;flex-shrink:0;display:inline-flex}.material-pick input{width:18px;height:18px;accent-color:var(--ws-accent);cursor:pointer}.material-icon{color:var(--ws-ink-dim);flex-shrink:0;display:inline-flex}.material-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.material-name{color:var(--ws-ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.material-meta{color:var(--ws-ink-dim);font-size:12px}.material-actions{flex-shrink:0;gap:10px;display:flex}.gen-controls{flex-wrap:wrap;align-items:flex-end;gap:12px;max-width:560px;margin-top:2px;display:flex}.gen-field-wrap{flex-direction:column;gap:4px;display:flex}.field-label{color:var(--ws-ink-dim);font-size:12px;font-weight:600}.gen-field-wrap .field{min-width:120px;margin:0}.gen-btn{margin:0}.gen-hint{margin-top:8px}.info-wrap{vertical-align:middle;align-items:center;margin-left:6px;display:inline-flex;position:relative}.info-icon{color:var(--ws-accent,#7c3aed);cursor:pointer;opacity:.8;background:0 0;border:none;padding:0 2px;font-size:14px;line-height:1}.info-icon:hover{opacity:1}.info-pop{z-index:40;width:max-content;max-width:260px;color:var(--ws-ink,#1e2530);border:1px solid var(--ws-line,#1e25301f);box-shadow:var(--e3);text-align:left;text-transform:none;letter-spacing:normal;background:#fff;border-radius:10px;padding:8px 11px;font-size:13px;font-weight:400;line-height:1.4;display:none;position:absolute;top:calc(100% + 6px);left:0}.info-wrap:hover .info-pop,.info-wrap:focus-within .info-pop,.info-wrap.info-open .info-pop{display:block}.action-with-info{align-items:center;gap:2px;display:inline-flex}.genbar{margin:10px 0}.genbar-track{background:var(--ws-bg-2,#efe9df);border-radius:999px;height:6px;position:relative;overflow:hidden}.genbar-fill{background:linear-gradient(90deg, var(--ws-accent), var(--ws-accent-lift));width:40%;height:100%;animation:genbar-slide 1.15s var(--ease) infinite;border-radius:999px;position:absolute;top:0;left:0}@keyframes genbar-slide{0%{left:-42%}to{left:102%}}.genbar-label{margin-top:6px;font-size:13px}@media (prefers-reduced-motion:reduce){.genbar-fill{opacity:.5;width:100%;animation:none;left:0}}.shelf{border-bottom:2px solid var(--ws-line,#1e25301f);flex-wrap:wrap;align-items:flex-start;gap:12px;margin-top:6px;padding-bottom:10px;display:flex}.library-book{border-left:6px solid var(--spine,var(--ws-accent));flex:220px;max-width:320px;margin:0!important}.library-book .course-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.library-book.lib-open{flex-basis:100%;max-width:100%}.set-justsaved{animation:set-glow 2.4s var(--ease) both}@keyframes set-glow{0%{box-shadow:0 0 0 2px var(--ws-accent), 0 0 20px var(--ws-accent-soft)}70%{box-shadow:0 0 0 2px var(--ws-accent), 0 0 12px var(--ws-accent-soft)}to{box-shadow:0 0 #0000}}@media (prefers-reduced-motion:reduce){.set-justsaved{box-shadow:0 0 0 2px var(--ws-accent);animation:none}}.reorder-list{padding-left:0;list-style:none}.reorder-row{align-items:center;gap:8px;display:flex}.reorder-text{flex:1;min-width:0}.drag-handle{cursor:grab;color:var(--ws-ink-dim,#6b7280);-webkit-user-select:none;user-select:none;touch-action:none;border-radius:8px;flex:none;padding:2px 5px;font-size:16px;line-height:1}.drag-handle:hover{background:var(--ws-accent-soft,#7c3aed1a);color:var(--ws-accent,#7c3aed)}.drag-handle:active{cursor:grabbing}.drag-handle:focus-visible{box-shadow:0 0 0 2px var(--ws-bg), 0 0 0 4px var(--ws-accent);outline:none}.workspace .lb-row{animation:none}@media (prefers-reduced-motion:reduce){.workspace *,.front-door *,.lobby *,.hello *{transition-duration:0s!important;animation-duration:0s!important;animation-iteration-count:1!important}.workspace :hover,.workspace :active,.front-door :hover,.front-door :active,.lobby :hover,.lobby :active,.hello :hover,.hello :active{transform:none!important}}.cd-head{flex-wrap:wrap}.cd-icon-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px;display:flex}.cd-icon-btn{border:1px solid var(--ws-line);background:var(--ws-card);width:34px;height:34px;color:var(--ws-ink-dim);cursor:pointer;box-shadow:var(--e1);transition:background var(--t-color) ease, color var(--t-color) ease, border-color var(--t-color) ease;border-radius:9px;place-items:center;display:inline-grid}.cd-icon-btn:hover{background:var(--ws-accent-soft);color:var(--ws-accent);border-color:var(--ws-accent-soft)}.cd-icon-btn:focus-visible{box-shadow:0 0 0 2px var(--ws-bg), 0 0 0 4px var(--ws-accent);outline:none}.cd-icon-btn.is-active{color:var(--ws-accent);border-color:var(--ws-accent);background:var(--ws-accent-soft)}.cd-icon-sep{background:var(--ws-line);align-self:stretch;width:1px;min-height:22px;margin:0 4px}.cd-icon-danger:hover{background:var(--ws-danger-soft);color:var(--ws-danger);border-color:var(--ws-danger-soft)}.cd-name-row{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 6px;display:flex}.cd-name-static{margin:0 0 6px}.cd-name-field{background:var(--ws-card);border:1px solid var(--ws-line);min-width:180px;font:inherit;color:var(--ws-ink);transition:border-color var(--t-color) ease;border-radius:8px;flex:240px;padding:4px 10px;font-size:22px;font-weight:700;line-height:1.2}.cd-name-field::placeholder{color:var(--ws-ink-dim);font-weight:600}.cd-name-field:hover{border-color:var(--ws-ink-dim)}.cd-name-field:focus-visible{border-color:var(--ws-accent);box-shadow:0 0 0 2px var(--ws-bg-2), 0 0 0 4px var(--ws-accent);outline:none}.cd-name-save{flex:none}.host-picker-card{position:relative}.host-picker-close{width:34px;height:34px;color:var(--stage-ink);cursor:pointer;z-index:2;transition:background var(--t-color) ease, border-color var(--t-color) ease;background:#ffffff0f;border:1px solid #b4c3d72e;border-radius:50%;place-items:center;display:inline-grid;position:absolute;top:12px;right:12px}.host-picker-close:hover{border-color:var(--stage-ink-dim);background:#ffffff1f}.host-picker-close:focus-visible{outline:2px solid var(--stage-ink-dim);outline-offset:2px}
