@charset "UTF-8";@font-face{font-family:Nunito Arial;font-weight:100 599;src:local("Arial"),local("Liberation Sans");size-adjust:100%;ascent-override:101.1%;descent-override:35.3%}@font-face{font-family:Nunito Arial;font-weight:600 849;src:local("Arial Bold"),local("Liberation Sans Bold");size-adjust:104%;ascent-override:97.2%;descent-override:33.9%}@font-face{font-family:Nunito Arial;font-weight:850 1000;src:local("Arial Bold"),local("Liberation Sans Bold");size-adjust:102%;ascent-override:99.1%;descent-override:34.6%}@font-face{font-family:Nunito Roboto;font-weight:100 599;src:local("Roboto");size-adjust:104%;ascent-override:97.2%;descent-override:33.9%}@font-face{font-family:Nunito Roboto;font-weight:600 849;src:local("Roboto Bold");size-adjust:110%;ascent-override:91.9%;descent-override:32.1%}@font-face{font-family:Nunito Roboto;font-weight:850 1000;src:local("Roboto Bold");size-adjust:107%;ascent-override:94.5%;descent-override:33%}@font-face{font-family:Nunito DejaVu;font-weight:100 599;src:local("DejaVu Sans");size-adjust:90.5%;ascent-override:111.7%;descent-override:39%}@font-face{font-family:Nunito DejaVu;font-weight:600 849;src:local("DejaVu Sans Bold");size-adjust:88%;ascent-override:114.9%;descent-override:40.1%}@font-face{font-family:Nunito DejaVu;font-weight:850 1000;src:local("DejaVu Sans Bold");size-adjust:83%;ascent-override:121.8%;descent-override:42.5%}@font-face{font-family:Fraunces Georgia;font-weight:100 849;src:local("Georgia Bold");size-adjust:99%;ascent-override:98.8%;descent-override:25.8%}@font-face{font-family:Fraunces Georgia;font-weight:850 1000;src:local("Georgia Bold");size-adjust:103%;ascent-override:95%;descent-override:24.8%}@font-face{font-family:Fraunces Noto;font-weight:100 849;src:local("Noto Serif Bold");size-adjust:101%;ascent-override:96.8%;descent-override:25.2%}@font-face{font-family:Fraunces Noto;font-weight:850 1000;src:local("Noto Serif Bold");size-adjust:104%;ascent-override:94%;descent-override:24.5%}@font-face{font-family:Fraunces DejaVu;font-weight:100 849;src:local("DejaVu Serif Bold");size-adjust:93%;ascent-override:105.2%;descent-override:27.4%}@font-face{font-family:Fraunces DejaVu;font-weight:850 1000;src:local("DejaVu Serif Bold");size-adjust:94%;ascent-override:104%;descent-override:27.1%}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(../../../assets/fonts/nunito-cyrillic-wght-normal.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(../../../assets/fonts/nunito-latin-wght-normal.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:optional;font-weight:100 900;src:url(../../../assets/fonts/fraunces-latin-wght-normal.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #FBF4DF;--surface: #FFFDF4;--surface-2: #F0E5C4;--line: rgba(40,35,26,.14);--line-2: rgba(40,35,26,.07);--text: #28231A;--muted: #6E6047;--accent: #CB2127;--accent-2: #1E50A0;--accent-3: #B0532E;--good: #5C7A33;--warn: #F2C200;--bad: #8E171D;--ink: #161310;--ink-fg: #FFFFFF;--warn-ink: #28231A;--panel-nav-bg: var(--ink);--panel-nav-fg: var(--ink-fg);--panel-nav-muted: color-mix(in srgb, var(--ink-fg) 72%, var(--ink));--panel-nav-hover: color-mix(in srgb, var(--ink-fg) 12%, var(--ink));--scan-light: #FFFFFF;--scan-dark: #161310;--stage-night: #161310;--stage-night-raised: #2A241B;--stage-night-fg: #FFFFFF;--stage-night-muted: #D9CFB6;--stage-answer-red: #CB2127;--stage-answer-blue: #1E50A0;--stage-answer-gold: #F2C200;--stage-answer-olive: #5C7A33;--stage-silver: #C9D1DB;--stage-bronze: #E6A074;--team-purple: #5B3A8E;--stage-tone-red: #F08C84;--stage-tone-blue: #7FB0EA;--stage-tone-green: #A6C77C;--stage-tone-earth: var(--stage-bronze);--stage-tone-yellow: var(--warn);--stage-tone-purple: #B79CE0;--premium: var(--warn);--premium-fg: var(--warn-ink);--lvl-a1: #5C7A33;--lvl-a2: #F2C200;--lvl-b1: #B0532E;--paw: url(../../../assets/mascot/paw.svg);--mascot-plate: #FBF4DF;--scene-hero: url(../../../assets/scene/dehesa-hero.svg);--mark-star: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 0 L14.4 9.6 L24 12 L14.4 14.4 L12 24 L9.6 14.4 L0 12 L9.6 9.6 Z'/%3E%3C/svg%3E");--paw-trail: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 84'%3E%3Cg transform='translate(3 8) rotate(-15 12 12) scale(.7)'%3E%3Cellipse cx='12' cy='15.4' rx='4.3' ry='3.5'/%3E%3Ccircle cx='6.4' cy='11' r='1.9'/%3E%3Ccircle cx='10' cy='7.4' r='1.9'/%3E%3Ccircle cx='14' cy='7.4' r='1.9'/%3E%3Ccircle cx='17.6' cy='11' r='1.9'/%3E%3C/g%3E%3Cg transform='translate(19 50) rotate(15 12 12) scale(.7)'%3E%3Cellipse cx='12' cy='15.4' rx='4.3' ry='3.5'/%3E%3Ccircle cx='6.4' cy='11' r='1.9'/%3E%3Ccircle cx='10' cy='7.4' r='1.9'/%3E%3Ccircle cx='14' cy='7.4' r='1.9'/%3E%3Ccircle cx='17.6' cy='11' r='1.9'/%3E%3C/g%3E%3C/svg%3E");--sp-1: 2px;--sp-2: 4px;--sp-3: 6px;--sp-4: 8px;--sp-5: 12px;--sp-6: 16px;--sp-7: 20px;--sp-8: 24px;--sp-9: 32px;--sp-10: 40px;--sp-11: 48px;--pb-nav: 96px;--safe-top: var(--safe-top-native, max(env(safe-area-inset-top, 0px), var(--safe-area-inset-top, 0px), var(--tg-safe-top, 0px)));--safe-bottom: var(--safe-bottom-native, env(safe-area-inset-bottom, 0px));--container: 460px;--margin: var(--sp-6);--gutter: var(--sp-6);--r-2xs: 4px;--r-xs: 8px;--r-sm: 12px;--r-md: 16px;--radius: 20px;--r-lg: 26px;--r-pill: 999px;--z-raised: 2;--z-sticky: 5;--z-nav: 20;--z-overlay: 40;--z-popover: 60;--z-toast: 80;--dur-fast: .12s;--dur-base: .15s;--dur-med: .2s;--dur-slow: .35s;--dur-meaning: .42s;--dur-confetti: 2.4s;--ease-out: cubic-bezier(.2, .7, .2, 1);--size-dot: 8px;--size-sm: 20px;--size-md: 30px;--size-lg: 40px;--size-tap: 44px;--size-xl: 54px;--size-2xl: 96px;--size-row: 56px;--size-stage-bar: 96px;--shadow-sm: 0 1px 2px rgba(58,42,32,.04), 0 3px 8px rgba(58,42,32,.05);--shadow: 0 2px 4px rgba(58,42,32,.04), 0 10px 24px rgba(58,42,32,.08);--shadow-lg: 0 4px 10px rgba(58,42,32,.05), 0 20px 44px rgba(58,42,32,.13);--font-body: "Nunito Variable", Nunito, "Nunito Arial", "Nunito Roboto", "Nunito DejaVu", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display: "Fraunces Variable", "Fraunces", "Fraunces Georgia", "Fraunces Noto", "Fraunces DejaVu", Georgia, "Times New Roman", serif;--fs-display: 44px;--fs-hero: 30px;--fs-sentence: 27px;--fs-title: 24px;--fs-h1: 22px;--fs-h2: 20px;--fs-lead: 18px;--fs-base: 15px;--fs-sm: 13px;--fs-xs: 12px;--fs-2xs: 11px;--fs-3xs: 9px;--fs-stage-code: 160px;--fs-stage-figure: 96px;--fs-stage-question: 56px;--fs-stage-answer: 40px;--fs-stage-min: 24px;--lh-solid: 1;--lh-tight: 1.1;--lh-snug: 1.25;--lh-base: 1.45;--lh-relaxed: 1.6;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--fw-heavy: 800;--fw-black: 900;--ls-tighter: -.02em;--ls-tight: -.01em;--ls-normal: 0;--ls-wide: .04em;--ls-wider: .08em;font-size:16px}:root[data-theme=dark]{color-scheme:dark;--bg: #15120C;--surface: #211C13;--surface-2: #30281A;--line: rgba(242,230,201,.13);--line-2: rgba(242,230,201,.07);--text: #F2E6C9;--muted: #B2A07E;--accent: #F08C84;--accent-2: #7FB0EA;--accent-3: #E6A074;--good: #A6C77C;--warn: #F4CE3A;--bad: #EC8166;--ink: #F2E6C9;--ink-fg: #15120C;--lvl-a1: #A6C77C;--lvl-a2: #F4CE3A;--lvl-b1: #E6A074;--scene-hero: url(../../../assets/scene/dehesa-hero-dark.svg);--shadow-sm: 0 1px 2px rgba(0,0,0,.3), 0 3px 8px rgba(0,0,0,.34);--shadow: 0 2px 4px rgba(0,0,0,.34), 0 10px 24px rgba(0,0,0,.44);--shadow-lg: 0 4px 10px rgba(0,0,0,.4), 0 20px 44px rgba(0,0,0,.55)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{margin:0;padding:0}body{margin:0;padding:0;overflow-x:hidden;background:var(--bg);color:var(--text);font-family:var(--font-body);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;letter-spacing:.1px}:is(header h1,.page-title,.land-title,.mod-head h3){font-family:var(--font-display);font-variation-settings:"SOFT" 40;letter-spacing:var(--ls-tight)}header h1{font-family:var(--font-display)}a{color:inherit;text-decoration:none}button{color:inherit}:where(.site-header){display:flex;align-items:center;gap:var(--sp-4);padding:var(--sp-6) var(--sp-6);margin-top:calc(-1 * var(--safe-top));padding-top:calc(var(--sp-6) + var(--safe-top));border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--bg);z-index:var(--z-sticky)}:where(.site-header) h1{font-size:var(--fs-lead);margin:0;font-weight:var(--fw-heavy);letter-spacing:var(--ls-wide)}.teacher-stage{--teacher-reading-focus: var(--accent-2);position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-popover);display:grid;grid-template-rows:minmax(0,1fr) auto;overflow:hidden;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:var(--fs-stage-min);line-height:var(--lh-snug)}.teacher-stage:focus{outline:none}.teacher-stage-main{position:relative;z-index:var(--z-raised);min-height:0;display:grid;place-items:center;padding:var(--sp-9) var(--sp-10);container-type:size}.teacher-stage-safe{width:min(100cqw,177.7777777778cqh);aspect-ratio:16/9;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-9);text-align:center}.teacher-stage-code{margin:0;font-family:var(--font-display);font-size:var(--fs-stage-code);font-weight:var(--fw-black);line-height:var(--lh-solid);letter-spacing:var(--ls-wide);font-variant-numeric:tabular-nums}@media(max-width:599.98px){.teacher-stage-code{--fs-stage-code: min(160px, 22vw)}}.teacher-stage-question{margin:0;max-width:24ch;font-family:var(--font-display);font-size:var(--fs-stage-question);font-weight:var(--fw-heavy);line-height:var(--lh-tight);letter-spacing:var(--ls-tight)}.teacher-stage-answer{margin:0;font-size:var(--fs-stage-answer);font-weight:var(--fw-heavy);line-height:var(--lh-snug)}.teacher-stage-text{margin:0;font-size:var(--fs-stage-min);font-weight:var(--fw-bold)}.teacher-stage-deco{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.teacher-stage-blob{position:absolute;width:26vmin;aspect-ratio:1}.teacher-stage-blob--red{top:-9vmin;left:-8vmin;background:var(--accent);border-radius:58% 42% 63% 37%/45% 55%}.teacher-stage-blob--blue{top:-11vmin;right:-7vmin;width:30vmin;background:var(--accent-2);border-radius:40% 60% 35% 65%/60% 40%}.teacher-stage-blob--gold{bottom:-10vmin;left:-6vmin;background:var(--warn);border-radius:50% 50% 38% 62%/62% 38%}.teacher-stage-blob--earth{right:-9vmin;bottom:-8vmin;width:22vmin;background:var(--accent-3);border-radius:65% 35% 55% 45%/40% 60%}.teacher-stage-star{position:absolute;width:5vmin;aspect-ratio:1;background:var(--ink);-webkit-mask:var(--mark-star) center/contain no-repeat;mask:var(--mark-star) center/contain no-repeat}.teacher-stage-star--1{top:20vmin;left:5vmin}.teacher-stage-star--2{top:6vmin;right:28vmin;width:3.5vmin}.teacher-stage-star--3{right:6vmin;bottom:22vmin;width:4vmin}.teacher-stage-bar{position:relative;z-index:var(--z-raised);min-height:var(--size-stage-bar);display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-5) var(--sp-8);padding:var(--sp-5) var(--sp-10);background:var(--ink);color:var(--ink-fg);font-size:var(--fs-stage-min)}.teacher-stage-bar-code{margin:0;display:inline-flex;align-items:baseline;gap:var(--sp-5);font-weight:var(--fw-bold)}.teacher-stage-bar-code strong{color:var(--warn);font-family:var(--font-display);font-size:var(--fs-stage-answer);font-weight:var(--fw-black);letter-spacing:var(--ls-wide);font-variant-numeric:tabular-nums}.teacher-stage-status{flex:1 1 auto;font-weight:var(--fw-heavy)}.teacher-stage-controls{display:flex;flex-wrap:wrap;gap:var(--sp-5);margin-left:auto}.teacher-stage-button{min-height:var(--size-tap);display:inline-flex;align-items:center;gap:var(--sp-4);padding:var(--sp-3) var(--sp-7);border:2px solid var(--ink-fg);border-radius:var(--r-pill);background:transparent;color:var(--ink-fg);font:inherit;font-weight:var(--fw-heavy);cursor:pointer}.teacher-stage-button--next{border-color:var(--warn);background:var(--warn);color:var(--warn-ink)}.teacher-stage-button:focus-visible{outline:4px solid var(--warn);outline-offset:3px}.teacher-stage-button kbd{padding:0 var(--sp-3);border:2px solid currentColor;border-radius:var(--r-xs);font-family:inherit;font-size:var(--fs-stage-min);font-weight:var(--fw-bold);line-height:var(--lh-snug)}.teacher-show{width:100%;min-height:0;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"code code" "qr title" "qr steps" "qr art";gap:var(--sp-6) var(--sp-10);text-align:left}.teacher-show .teacher-stage-code{grid-area:code;justify-self:center}.teacher-show .teacher-stage-question{grid-area:title;align-self:end}.teacher-show-qr{grid-area:qr;display:block;align-self:center;width:calc(min(100cqh,56.25cqw) - var(--fs-stage-code) - var(--sp-6) - var(--sp-9) - calc(2 * (var(--fs-stage-min) * var(--lh-snug) + 2 * var(--sp-2)) + var(--sp-4)));height:auto}.teacher-show-qr rect{fill:var(--scan-light)}.teacher-show-qr path{fill:var(--scan-dark)}.teacher-show-art{grid-area:art;align-self:start;width:160px;height:160px;border-radius:var(--r-sm)}@container (max-height: 700px){.teacher-show-art{display:none}}.teacher-show-steps{grid-area:steps;align-self:start;margin:0;padding-left:1.4em;font-size:var(--fs-stage-min);font-weight:var(--fw-bold);overflow-wrap:anywhere}.teacher-show-steps li+li{margin-top:var(--sp-3)}.teacher-show-names{max-width:100%;max-height:calc(2 * (var(--fs-stage-min) * var(--lh-snug) + 2 * var(--sp-2)) + var(--sp-4));overflow:hidden;display:flex;flex-wrap:wrap;justify-content:center;gap:var(--sp-4);margin:0;padding:0;list-style:none}.teacher-show-names li{max-width:16ch;overflow:hidden;padding:var(--sp-2) var(--sp-6);border-radius:var(--r-pill);background:var(--accent-2);color:var(--ink-fg);font-size:var(--fs-stage-min);font-weight:var(--fw-heavy);line-height:var(--lh-snug);text-overflow:ellipsis;white-space:nowrap}.teacher-stage-pop{animation:teacher-stage-pop var(--dur-meaning) var(--ease-out) both}.teacher-stage-rise{animation:teacher-stage-rise calc(var(--dur-meaning) * 2) var(--ease-out) both}.teacher-stage-confetti{animation:teacher-stage-confetti var(--dur-confetti) linear both}@keyframes teacher-stage-pop{0%{opacity:0;transform:scale(.6)}}@keyframes teacher-stage-rise{0%{transform:translateY(100%)}}@keyframes teacher-stage-confetti{0%{transform:translateY(-20vh) rotate(0)}to{transform:translateY(110vh) rotate(540deg)}}.teacher-stage[data-motion=reduce] :is(.teacher-stage-pop,.teacher-stage-rise){animation:none}.teacher-stage[data-motion=reduce] .teacher-stage-confetti{display:none}@media(prefers-reduced-motion:reduce){.teacher-stage :is(.teacher-stage-pop,.teacher-stage-rise){animation:none}.teacher-stage .teacher-stage-confetti{display:none}}.teacher-live{width:100%;min-height:0;display:flex;flex-direction:column;align-items:center;gap:var(--sp-6)}.teacher-live-scoring{padding:var(--sp-3) var(--sp-7);border-radius:var(--r-pill);background:var(--warn);color:var(--warn-ink);text-align:center;text-wrap:balance}.teacher-live-join{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:var(--sp-9)}.teacher-live-entry{width:100%;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto;justify-items:center;gap:var(--sp-3)}.teacher-live-app-join{align-self:center;text-align:center;max-width:900px}.teacher-live-app-instruction{font-family:var(--font-display);font-size:var(--fs-stage-question);line-height:1.15;font-weight:800;text-wrap:balance;margin:0 0 var(--sp-5)}.teacher-live-join-toggle{color:var(--ink);border-color:currentColor;font-size:var(--fs-stage-min);min-height:44px}.teacher-live-qr{width:240px}.teacher-live-ask{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--sp-9);text-align:start}.teacher-live-play{flex:none;display:grid;justify-items:center;gap:var(--sp-4)}.teacher-live-scene{position:relative;width:46.2222222222cqh;aspect-ratio:16/9}.teacher-live-scene iframe{width:100%;height:100%;border:0;border-radius:var(--r-sm)}.teacher-live-subtitle{position:absolute;inset:auto var(--sp-6) var(--sp-6);margin:0;padding:var(--sp-4) var(--sp-6);border-radius:var(--r-sm);background:var(--ink);color:var(--ink-fg);font-size:var(--fs-stage-min);font-weight:var(--fw-bold)}.teacher-live-subtitle:empty{display:none}.teacher-live-answers{width:100%;margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-6)}.teacher-live-answer{min-width:0;display:flex;align-items:center;gap:var(--sp-6);padding:var(--sp-4) var(--sp-6);border-radius:var(--r-md);color:var(--ink-fg);text-align:start;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}.teacher-live-answer .teacher-stage-answer{min-width:0}.teacher-live-answer--red{background:var(--accent)}.teacher-live-answer--blue{background:var(--accent-2)}.teacher-live-answer--gold{background:var(--warn);color:var(--warn-ink)}.teacher-live-answer--olive{background:var(--good);color:var(--ink-fg)}.teacher-live-answer.is-right{outline:6px solid var(--ink)}.teacher-live-answer.is-dim{background:var(--surface-2);color:var(--text)}.teacher-stage:has(.teacher-live--text-round,.teacher-live--result-scroll) .teacher-stage-main{padding:clamp(12px,2vh,24px)}.teacher-stage:has(.teacher-live--text-round,.teacher-live--result-scroll) .teacher-stage-safe{width:100%;height:100%;aspect-ratio:auto;gap:0;justify-content:start}.teacher-live--text-round,.teacher-live--result-scroll{height:100%;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:var(--sp-3);box-sizing:border-box;align-items:stretch}.teacher-live--text-round>*,.teacher-live--result-scroll>*{flex:none}.teacher-live--text-round:focus-visible,.teacher-live--result-scroll:focus-visible{outline:3px solid var(--teacher-reading-focus);outline-offset:-3px}.teacher-live--text-round .teacher-stage-question{max-width:none;width:100%;white-space:pre-wrap;overflow-wrap:anywhere}.teacher-live--text-round .teacher-stage-answer{overflow-wrap:anywhere}@media(max-width:599.98px){.teacher-live--text-round{--fs-stage-question: 32px;--fs-stage-answer: 28px}.teacher-live--text-round .teacher-live-answers{grid-template-columns:minmax(0,1fr)}}.teacher-live-end.teacher-live-end--interrupted{grid-template-rows:none;grid-auto-rows:max-content}.teacher-live-end.teacher-live-end--interrupted .teacher-live-interrupted-scores{width:min(100%,1100px);justify-self:center}.teacher-live-end.teacher-live-end--interrupted .teacher-live-ranked-label{white-space:normal;overflow-wrap:anywhere}@media(max-width:599.98px),(max-height:520px){.teacher-live.teacher-live--result-scroll{--fs-stage-question: 32px;--fs-stage-answer: 28px}.teacher-live.teacher-live--result-scroll .teacher-live-final{grid-template-columns:minmax(0,1fr);gap:var(--sp-6)}.teacher-live.teacher-live--result-scroll .teacher-live-step-name{display:block;overflow:visible;padding-inline:var(--sp-1);-webkit-line-clamp:unset;line-clamp:unset}.teacher-live.teacher-live--result-scroll .teacher-live-step-score{overflow-wrap:anywhere}.teacher-live.teacher-live--result-scroll .teacher-live-ranked-row{grid-template-columns:2ch auto minmax(0,1fr) auto;gap:var(--sp-3);padding-inline:var(--sp-3)}.teacher-live.teacher-live--result-scroll .teacher-live-ranked-label,.teacher-live.teacher-live--result-scroll .teacher-live-ranked-members{white-space:normal;overflow:visible;overflow-wrap:anywhere}.teacher-live.teacher-live--result-scroll .teacher-live-teamrow{grid-template-columns:2ch auto minmax(0,1fr);gap:var(--sp-3);padding:var(--sp-3)}.teacher-live.teacher-live--result-scroll .teacher-live-teamrow-score{grid-column:3;text-align:end}.teacher-live.teacher-live--result-scroll .teacher-live-teamrow-track{grid-column:1/3}.teacher-live.teacher-live--result-scroll .teacher-live-hardest{flex-wrap:wrap;white-space:normal}.teacher-live.teacher-live--result-scroll .teacher-live-hardest>.teacher-live-hardest-question{flex:1 1 100%;overflow:visible;overflow-wrap:anywhere}}.teacher-live--result-scroll>.teacher-live-end{flex:none;grid-template-rows:none;grid-auto-rows:max-content}@media(max-height:520px){.teacher-stage:has(.teacher-live--text-round,.teacher-live--result-scroll) .teacher-stage-bar{min-height:0;padding:var(--sp-3);gap:var(--sp-4);flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scroll-padding-inline:var(--sp-3)}.teacher-stage:has(.teacher-live--text-round,.teacher-live--result-scroll) .teacher-stage-bar-code,.teacher-stage:has(.teacher-live--text-round,.teacher-live--result-scroll) .teacher-stage-status{flex:none;white-space:nowrap}.teacher-stage:has(.teacher-live--text-round,.teacher-live--result-scroll) .teacher-stage-controls{flex:none;flex-wrap:nowrap}.teacher-stage:has(.teacher-live--text-round,.teacher-live--result-scroll) .teacher-stage-button{flex:none;white-space:nowrap}}.teacher-live-shape{flex:none;width:48px;height:48px;background:currentColor}.teacher-live-shape--triangle{clip-path:polygon(50% 0,100% 100%,0 100%)}.teacher-live-shape--diamond{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}.teacher-live-shape--circle{border-radius:50%}.teacher-live-board{width:min(100%,1000px);margin:0;padding:0;list-style:none;display:grid;gap:var(--sp-4)}.teacher-league-stage-board li{display:flex;justify-content:space-between;gap:var(--sp-6)}.teacher-live-teamrow.teacher-live-boardrow{grid-template-columns:2ch auto minmax(0,1fr) auto}.teacher-live-team--red,.teacher-live-teamrow-bar--red{--team-tone: var(--stage-tone-red)}.teacher-live-team--blue,.teacher-live-teamrow-bar--blue{--team-tone: var(--stage-tone-blue)}.teacher-live-team--yellow,.teacher-live-teamrow-bar--yellow{--team-tone: var(--stage-tone-yellow)}.teacher-live-team--green,.teacher-live-teamrow-bar--green{--team-tone: var(--stage-tone-green)}.teacher-live-team--purple,.teacher-live-teamrow-bar--purple{--team-tone: var(--stage-tone-purple)}.teacher-live-team--orange,.teacher-live-teamrow-bar--orange{--team-tone: var(--stage-tone-earth)}.teacher-stage:has(.teacher-live--solo-lobby) .teacher-stage-main{padding:clamp(12px,2vh,24px)}.teacher-stage:has(.teacher-live--solo-lobby) .teacher-stage-safe{width:100%;height:100%;aspect-ratio:auto;gap:0}.teacher-live--solo-lobby{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;justify-items:center;gap:clamp(8px,1.5cqh,20px)}.teacher-live--solo-lobby .teacher-stage-question,.teacher-live--solo-lobby .teacher-live-app-instruction{--fs-stage-question: clamp(32px, 7cqh, 64px);font-size:var(--fs-stage-question)}.teacher-live--solo-lobby .teacher-stage-answer{--fs-stage-answer: clamp(24px, 5cqh, 40px);font-size:var(--fs-stage-answer)}.teacher-live--solo-lobby .teacher-live-scoring{padding:var(--sp-2) var(--sp-5)}.teacher-live--solo-lobby .teacher-live-join{width:min(1080px,100%);height:100%;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(90px,min(34cqh,280px));gap:var(--sp-7)}.teacher-live--solo-lobby .teacher-live-join>div{min-width:0}.teacher-live--solo-lobby .teacher-stage-code{--fs-stage-code: clamp(48px, 14cqw, 160px);font-size:var(--fs-stage-code)}.teacher-live--solo-lobby .teacher-live-qr{width:100%;max-height:100%;aspect-ratio:1}@media(max-width:599.98px)and (min-height:521px){.teacher-live--solo-lobby .teacher-live-join{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:var(--sp-3)}.teacher-live--solo-lobby .teacher-stage-code{--fs-stage-code: clamp(48px, 19cqw, 80px);font-size:var(--fs-stage-code)}.teacher-live--solo-lobby .teacher-live-qr{width:min(100%,30cqh);justify-self:center}.teacher-live--solo-lobby .teacher-stage-text{overflow-wrap:anywhere}}@media(max-width:599.98px),(max-height:520px){.teacher-live--solo-lobby{grid-template-rows:auto minmax(min-content,1fr) auto;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.teacher-live--solo-lobby .teacher-live-entry{grid-template-rows:auto auto;align-content:center}.teacher-live--solo-lobby .teacher-live-join{height:auto}.teacher-live--solo-lobby:focus-visible{outline:3px solid var(--accent-2);outline-offset:-3px}.teacher-stage:has(.teacher-live--solo-lobby) .teacher-stage-bar{min-height:0;padding:var(--sp-3);gap:var(--sp-4);flex-wrap:nowrap;overflow-x:auto}.teacher-stage:has(.teacher-live--solo-lobby) .teacher-stage-bar-code{display:none}.teacher-stage:has(.teacher-live--solo-lobby) .teacher-stage-status{flex:none;white-space:nowrap}.teacher-stage:has(.teacher-live--solo-lobby) .teacher-stage-controls{flex-wrap:nowrap}.teacher-stage:has(.teacher-live--solo-lobby) .teacher-stage-button{flex:none}}.teacher-live:has(>.teacher-live-lobby){flex:1 1 auto}.teacher-live-lobby{width:100%;flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:var(--sp-9);text-align:start}.teacher-live-lobby-join{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-6);text-align:center}.teacher-live-lobby-join .teacher-live-join{flex-direction:column;gap:var(--sp-5)}.teacher-live-lobby-join .teacher-stage-code{font-size:var(--fs-stage-figure)}@container (max-height: 800px){.teacher-live-lobby-join .teacher-stage-code{font-size:var(--fs-stage-question)}}.teacher-live-lobby-join .teacher-live-qr{width:min(200px,24cqh)}.teacher-live-lobby-teams{min-width:0;min-height:0;display:flex;flex-direction:column;gap:var(--sp-5);padding-block-start:18vmin;padding-inline-end:6vmin}.teacher-live-move-hint{font-weight:var(--fw-medium);text-wrap:pretty}.teacher-live-move-error{margin:0;padding:var(--sp-3) var(--sp-6);border-radius:var(--r-sm);background:var(--bg);color:var(--text);border:3px solid var(--accent);font-weight:var(--fw-heavy)}.teacher-live-teams{flex:1 1 auto;min-height:0;margin:0;padding:0;list-style:none;overflow-y:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;align-content:start;gap:var(--sp-5)}.teacher-live-teams[data-count="3"],.teacher-live-teams[data-count="5"],.teacher-live-teams[data-count="6"]{grid-template-columns:repeat(3,minmax(0,1fr))}.teacher-live-team{min-width:0;min-height:0;display:flex;flex-direction:column;gap:var(--sp-4);padding:var(--sp-5);border:2px solid var(--line);border-top:12px solid var(--team-tone);border-radius:var(--r-md);background:var(--surface);transition-property:background-color,border-color;transition-duration:var(--dur-base);transition-timing-function:var(--ease-out)}.teacher-live-team.is-target{border-color:var(--text);border-top-color:var(--team-tone);border-style:dashed;border-top-style:solid}.teacher-live-team.is-over{background:var(--surface-2)}.teacher-live-team-head{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-4);min-width:0}.teacher-live-team-head .teacher-live-avatar{flex:none}.teacher-live-team-name{min-width:0;font-weight:var(--fw-heavy);text-wrap:balance}.teacher-live-team-count{flex:none;margin-inline-start:auto;font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;white-space:nowrap}.teacher-live-team-empty{margin:0;font-weight:var(--fw-medium)}.teacher-live-team-players{flex:1 1 auto;min-height:0;overflow-y:auto;margin:0;padding:var(--sp-2);list-style:none;display:flex;flex-wrap:wrap;align-content:flex-start;gap:var(--sp-4)}.teacher-live-team-players li{max-width:100%}.teacher-live-player{max-width:100%;min-height:var(--size-tap);overflow:hidden;padding:var(--sp-3) var(--sp-6);border:2px solid var(--line);border-radius:var(--r-pill);background:var(--bg);color:var(--text);font:inherit;font-weight:var(--fw-bold);text-overflow:ellipsis;white-space:nowrap;cursor:grab;touch-action:manipulation;transition-property:background-color,color,border-color,transform;transition-duration:var(--dur-base);transition-timing-function:var(--ease-out)}.teacher-live-player:active{transform:scale(.96)}.teacher-live-player[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:var(--ink-fg)}.teacher-live-player:focus-visible{outline:4px solid var(--accent-2);outline-offset:2px}.teacher-live-team-move{flex:none;min-height:var(--size-tap);padding:var(--sp-3) var(--sp-7);border:2px solid var(--text);border-radius:var(--r-pill);background:var(--warn);color:var(--warn-ink);font:inherit;font-weight:var(--fw-heavy);cursor:pointer;touch-action:manipulation;transition-property:transform;transition-duration:var(--dur-base);transition-timing-function:var(--ease-out)}.teacher-live-team-move:active{transform:scale(.96)}.teacher-live-team-move:focus-visible{outline:4px solid var(--accent-2);outline-offset:2px}.teacher-live-teamboard{width:min(100%,1200px);margin:0;padding:0;list-style:none;display:grid;gap:var(--sp-4)}.teacher-live-teamrow{display:grid;grid-template-columns:2ch auto minmax(0,16ch) minmax(0,1fr) 6ch;align-items:center;gap:var(--sp-6);padding:var(--sp-4) var(--sp-8);border:2px solid var(--line);border-radius:var(--r-lg);background:var(--surface);font-size:var(--fs-stage-answer);font-weight:var(--fw-heavy);line-height:var(--lh-snug);text-align:start}.teacher-live-teamrow.is-lead{border-color:var(--ink);background:var(--ink);color:var(--ink-fg)}.teacher-live-teamrow.is-lead .teacher-live-teamrow-members{color:var(--stage-night-muted)}.teacher-live-teamrow.is-lead .teacher-live-teamrow-track{background:var(--stage-night-raised)}.teacher-live-teamrow.is-lead .teacher-live-teamrow-score{color:var(--warn)}.teacher-live-teamrow-rank,.teacher-live-teamrow-score{font-variant-numeric:tabular-nums}.teacher-live-teamrow-score{text-align:end}.teacher-live-teamrow-name{min-width:0;display:grid;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.teacher-live-teamrow-members{font-size:var(--fs-stage-min);font-weight:var(--fw-medium)}.teacher-live-teamrow-track{height:32px;overflow:hidden;border-radius:var(--r-pill);background:var(--surface-2)}.teacher-live-teamrow-bar{display:block;height:100%;background:var(--team-tone);transform:scaleX(var(--share));transform-origin:left center;animation:teacher-live-grow calc(var(--dur-meaning) * 2) var(--ease-out) both;animation-delay:inherit}@keyframes teacher-live-grow{0%{transform:scaleX(0)}}.teacher-stage[data-motion=reduce] .teacher-live-teamrow-bar{animation:none}@media(prefers-reduced-motion:reduce){.teacher-stage .teacher-live-teamrow-bar{animation:none}}.teacher-live-teamboard-note{font-weight:var(--fw-medium)}.teacher-league-stage{width:100%;display:grid;justify-items:center;align-items:center;gap:var(--sp-6) var(--sp-9)}.teacher-league-stage--split{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}.teacher-league-stage--split .teacher-league-stage-head{grid-column:1/-1}.teacher-league-stage-head{display:grid;justify-items:center;gap:var(--sp-3)}.teacher-league-goal--stage{width:min(100%,900px);max-width:none}.teacher-league-goal--stage .teacher-goal-track{height:24px}.teacher-stage--night{--teacher-reading-focus: var(--stage-tone-blue);background:var(--stage-night);color:var(--stage-night-fg)}.teacher-stage--night .teacher-stage-deco{display:none}.teacher-stage--night .teacher-stage-bar{background:var(--stage-night);border-top:2px solid var(--stage-night-raised)}.teacher-live:has(>.teacher-live-end){flex:1 1 auto}.teacher-live-end{width:100%;flex:1 1 auto;display:grid;grid-template-rows:auto auto 1fr auto;gap:var(--sp-6);text-align:start}@container (max-height: 640px){.teacher-live-end{gap:var(--sp-3)}}.teacher-live-end-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--sp-4) var(--sp-8);color:var(--stage-night-muted);font-weight:var(--fw-bold)}.teacher-live-end-head p{margin:0}.teacher-live-end-head strong{color:var(--stage-night-fg);font-weight:var(--fw-heavy)}.teacher-live-end-meta{font-variant-numeric:tabular-nums}.teacher-live-end-title{justify-self:center;max-width:none;color:var(--warn);text-align:center;text-wrap:balance}.teacher-live-end-empty{justify-self:center;color:var(--stage-night-muted);text-align:center}.teacher-live-final{--podium-h: 36cqh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:var(--sp-6) var(--sp-11)}.teacher-live-final.is-solo{grid-template-columns:minmax(0,1fr);justify-items:center}.teacher-live-final.is-solo .teacher-live-podium{width:min(100%,900px)}@container (max-width: 1100px){.teacher-live-final{column-gap:var(--sp-9)}.teacher-live-final .teacher-live-ranked-row{gap:var(--sp-4);padding-inline:var(--sp-4) var(--sp-6)}}@container (max-height: 640px){.teacher-live-final{--podium-h: 22cqh}.teacher-live-final .teacher-live-rest,.teacher-live-final .teacher-live-ranked{gap:var(--sp-2)}.teacher-live-final .teacher-live-ranked-row{min-height:44px;padding-block:0}.teacher-live-final .teacher-live-avatar--small{width:44px}.teacher-live-final .teacher-live-step-block{font-size:var(--fs-stage-question)}}.teacher-live-podium{width:100%;margin:0;padding:0;list-style:none;display:flex;align-items:flex-end;justify-content:center;overflow:clip}.teacher-live-step{flex:1 1 0;min-width:0;max-width:300px;display:grid;justify-items:center;gap:var(--sp-2);text-align:center}.teacher-live-step--1{order:2}.teacher-live-step--2{order:1}.teacher-live-step--3{order:3}.teacher-live-podium-art{width:min(176px,19cqh);height:auto;aspect-ratio:1;margin-bottom:calc(var(--sp-6) * -1)}@container (max-height: 640px){.teacher-live-podium-art{width:15cqh;margin-bottom:calc(var(--sp-4) * -1)}}.teacher-live-avatar{--avatar-tone: var(--stage-tone-red);position:relative;width:72px;aspect-ratio:1;display:grid;place-items:center;margin-bottom:var(--sp-2);border-radius:var(--r-pill);background:var(--avatar-tone);color:var(--stage-night);font-size:var(--fs-stage-min);font-weight:var(--fw-heavy);line-height:var(--lh-solid);letter-spacing:var(--ls-wide)}.teacher-live-avatar--small{width:48px;margin-bottom:0;letter-spacing:normal}.teacher-live-avatar--blue{--avatar-tone: var(--stage-tone-blue)}.teacher-live-avatar--green{--avatar-tone: var(--stage-tone-green)}.teacher-live-avatar--earth,.teacher-live-avatar--orange{--avatar-tone: var(--stage-tone-earth)}.teacher-live-avatar--purple{--avatar-tone: var(--stage-tone-purple)}.teacher-live-avatar--yellow{--avatar-tone: var(--stage-tone-yellow)}.teacher-live-step-name{max-width:100%;display:-webkit-box;overflow:hidden;padding-inline:var(--sp-4);-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;font-weight:var(--fw-heavy);line-height:var(--lh-snug);overflow-wrap:anywhere;text-wrap:balance}.teacher-live-step-score{color:var(--warn);font-weight:var(--fw-heavy);line-height:var(--lh-snug);font-variant-numeric:tabular-nums}.teacher-live-step-members{color:var(--stage-night-muted);font-weight:var(--fw-bold)}.teacher-live-step-block{width:100%;display:grid;place-items:center;margin-top:var(--sp-4);border-radius:var(--r-sm) var(--r-sm) 0 0;font-family:var(--font-display);font-size:var(--fs-stage-figure);font-weight:var(--fw-black);line-height:var(--lh-solid);font-variant-numeric:lining-nums tabular-nums}.teacher-live-step-block--1{height:var(--podium-h);background:var(--warn);color:var(--warn-ink);animation-delay:calc(var(--dur-meaning) * .6)}.teacher-live-step-block--2{height:calc(var(--podium-h) * .6);background:var(--stage-silver);color:var(--warn-ink);animation-delay:calc(var(--dur-meaning) * .3)}.teacher-live-step-block--3{height:calc(var(--podium-h) * .45);background:var(--stage-bronze);color:var(--warn-ink)}.teacher-live-rest{min-width:0;display:grid;gap:var(--sp-3)}.teacher-live-ranked-unit,.teacher-live-ranked-more{margin:0;padding-inline:var(--sp-6) var(--sp-7);color:var(--stage-night-muted);font-weight:var(--fw-bold);line-height:var(--lh-snug)}.teacher-live-ranked-unit{text-align:end}.teacher-live-ranked{min-width:0;margin:0;padding:0;list-style:none;display:grid;gap:var(--sp-3)}.teacher-live-ranked-row{min-height:clamp(56px,8.5cqh,88px);display:grid;grid-template-columns:2ch auto minmax(0,1fr) auto;align-items:center;gap:var(--sp-6);padding:var(--sp-2) var(--sp-7) var(--sp-2) var(--sp-6);border-radius:var(--r-md);background:var(--stage-night-raised)}.teacher-live-ranked-rank{color:var(--stage-night-muted);font-family:var(--font-display);font-weight:var(--fw-black);font-variant-numeric:tabular-nums;text-align:center}.teacher-live-ranked-name{min-width:0;display:grid}.teacher-live-ranked-label,.teacher-live-ranked-members{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacher-live-ranked-label{font-weight:var(--fw-bold)}.teacher-live-ranked-members{color:var(--stage-night-muted);font-size:var(--fs-stage-min);font-weight:var(--fw-bold)}.teacher-live-ranked-score{font-weight:var(--fw-black);font-variant-numeric:tabular-nums;text-align:end}.teacher-live-foot{min-width:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-4) var(--sp-8);padding-top:var(--sp-6);border-top:2px solid var(--stage-night-raised);color:var(--stage-night-muted);font-weight:var(--fw-bold)}.teacher-live-foot p{margin:0}.teacher-live-foot [role=status]{color:var(--warn)}.teacher-live-hardest{flex:1 1 0;min-width:0;display:flex;column-gap:var(--sp-3);white-space:nowrap}.teacher-live-hardest>span{flex:none}.teacher-live-hardest>.teacher-live-hardest-question{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.teacher-live-assign{flex:none;border-color:var(--stage-night-fg);color:var(--stage-night-fg);white-space:nowrap}.teacher-live-assign:disabled{cursor:progress}.teacher-live-assign-short{display:none}@container (max-width: 1100px){.teacher-live-assign-long{display:none}.teacher-live-assign-short{display:inline}}.teacher-live-foot-error{flex-basis:100%;color:var(--stage-night-fg)}.teacher-stage--plain .teacher-stage-deco{display:none}.teacher-stage:has(.teacher-exam) .teacher-stage-main{padding:var(--sp-6) var(--sp-8)}.teacher-stage:has(.teacher-exam) .teacher-stage-safe{width:100%;height:100%;aspect-ratio:auto;justify-content:stretch;gap:0}.teacher-exam{flex:1 1 auto;align-self:stretch;width:100%;min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:var(--sp-5);text-align:start}.teacher-exam[data-phase=ready]{grid-template-rows:auto minmax(0,1fr)}.teacher-exam[data-phase=gone],.teacher-exam[data-phase=loading]{grid-template-rows:minmax(0,1fr)}.teacher-exam-center{min-height:0;overflow-y:auto;display:grid;align-content:center;justify-items:center;gap:var(--sp-6);text-align:center}.teacher-exam-ready{min-height:0;display:grid;grid-template-columns:minmax(300px,38%) minmax(0,1fr);grid-template-rows:minmax(0,1fr);gap:var(--sp-8)}.teacher-exam-ready .teacher-exam-join{align-self:center;text-align:center}@media(max-width:700px){.teacher-exam-ready{overflow-y:auto;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(180px,1fr);gap:var(--sp-5)}.teacher-exam-ready .teacher-exam-join{grid-row:1}}.teacher-exam-joining{display:flex;flex-direction:column;gap:var(--sp-5);text-align:start}.teacher-exam-joining .teacher-exam-students{min-height:0;overflow-y:auto;display:grid}.teacher-exam-head{min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-5) var(--sp-8)}.teacher-exam-title{flex:1 1 12ch;min-width:0;margin:0;overflow:hidden;font-family:var(--font-display);font-size:var(--fs-stage-answer);font-weight:var(--fw-heavy);line-height:var(--lh-tight);letter-spacing:var(--ls-tight);text-overflow:ellipsis;white-space:nowrap}.teacher-exam-clock{flex:none;margin-inline-start:auto;min-height:var(--size-tap);display:inline-flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-6);border-radius:var(--r-pill);background:var(--ink);color:var(--ink-fg);font-weight:var(--fw-heavy);font-variant-numeric:tabular-nums}.teacher-exam-join{display:grid;justify-items:center;gap:var(--sp-6);padding:var(--sp-5)}.teacher-exam-join p{margin:0}.teacher-exam-qr{width:min(46vh,60vw,360px);max-width:100%;flex:none}.teacher-exam-steps{min-width:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}.teacher-exam-sections{width:max-content;margin:0;padding:var(--sp-1);list-style:none;display:flex;gap:var(--sp-4);font-size:var(--fs-stage-min);font-weight:var(--fw-bold)}.teacher-exam-sections li{min-height:var(--size-tap);display:inline-flex;align-items:center;gap:var(--sp-4);padding:var(--sp-1) var(--sp-6) var(--sp-1) var(--sp-1);border:2px solid var(--line);border-radius:var(--r-pill);background:var(--surface);white-space:nowrap}.teacher-exam-sections .teacher-exam-section--open{border-color:var(--ink);background:var(--ink);color:var(--ink-fg)}.teacher-exam-sections .teacher-exam-section--closed .teacher-exam-step-n{border-color:var(--good);background:var(--good);color:var(--ink-fg)}.teacher-exam-step-n{flex:none;width:36px;height:36px;display:grid;place-items:center;border:2px solid currentColor;border-radius:50%;font-variant-numeric:tabular-nums}.teacher-exam-note,.teacher-exam-link-note{margin:0;color:var(--text);font-size:var(--fs-stage-min);font-weight:var(--fw-medium)}.teacher-exam-run{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:var(--sp-5)}.teacher-exam-run .teacher-exam-answers{order:-1}@media(min-width:1200px){.teacher-exam-run{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(280px,27%)}.teacher-exam-run .teacher-exam-answers{order:0}}.teacher-exam-card{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:var(--sp-6) var(--sp-8);border:2px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.teacher-exam-main{display:grid;align-content:start;gap:var(--sp-5);padding-bottom:var(--sp-10)}.teacher-exam-card[data-more]{-webkit-mask-image:linear-gradient(to bottom,black calc(100% - var(--sp-11)),transparent);mask-image:linear-gradient(to bottom,black calc(100% - var(--sp-11)),transparent)}.teacher-exam-label{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--sp-2) var(--sp-5);font-size:var(--fs-stage-min);font-weight:var(--fw-heavy);letter-spacing:var(--ls-wider);text-transform:uppercase}.teacher-exam-label-n{font-weight:var(--fw-bold);letter-spacing:normal;text-transform:none}.teacher-exam-skill{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:0 var(--sp-5);font-family:var(--font-display);font-size:var(--fs-stage-answer);font-weight:var(--fw-heavy);line-height:var(--lh-tight);letter-spacing:var(--ls-tight);text-wrap:balance}.teacher-exam-section-title{font-family:var(--font-body);font-size:var(--fs-stage-min);font-weight:var(--fw-bold);letter-spacing:normal}.teacher-exam-phones{font-size:var(--fs-stage-min);display:grid;gap:var(--sp-5);padding-top:var(--sp-5);border-top:2px solid var(--line)}.teacher-exam-phones p{margin:0}.teacher-exam-exercises{margin:0;padding-inline-start:1.5em;display:grid;gap:var(--sp-7)}.teacher-exam-exercises>li::marker{color:var(--accent);font-weight:var(--fw-heavy);font-variant-numeric:tabular-nums}.teacher-exam-exercise{display:grid;gap:var(--sp-4)}.teacher-exam-instruction{font-size:var(--fs-stage-min);font-weight:var(--fw-heavy);line-height:var(--lh-tight)}.teacher-exam-items{margin:0;padding:0;list-style:none;display:grid;gap:var(--sp-4)}.teacher-exam-items>li{display:grid;gap:var(--sp-3)}.teacher-exam-answers{display:grid;grid-template-columns:auto auto minmax(8ch,1fr);align-items:center;gap:var(--sp-3) var(--sp-6);padding-block:var(--sp-3)}.teacher-exam-answers>.teacher-stage-text{grid-column:2/-1}.teacher-exam-answers .teacher-exam-students{display:none}@media(min-width:1200px){.teacher-exam-answers{grid-template-columns:minmax(0,1fr);align-content:start;padding-block:var(--sp-6)}.teacher-exam-answers>.teacher-stage-text{grid-column:auto}.teacher-exam-answers .teacher-exam-students{display:grid}}.teacher-exam-count{margin:0;font-size:var(--fs-stage-min);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums}.teacher-exam-count strong{font-family:var(--font-display);font-size:var(--fs-stage-question);line-height:1;font-weight:var(--fw-black)}.teacher-exam-bar{height:12px;overflow:hidden;border-radius:var(--r-pill);background:color-mix(in srgb,var(--text) 12%,transparent)}.teacher-exam-bar span{height:100%;display:block;background:var(--good);transform-origin:left center;transition:transform var(--dur-base) var(--ease-out)}.teacher-stage[data-motion=reduce] .teacher-exam-bar span{transition:none}.teacher-exam-students{margin:0;padding:0;list-style:none;font-size:var(--fs-stage-min)}.teacher-exam-students li{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);padding-block:var(--sp-3);border-top:2px solid var(--line)}.teacher-exam-student{min-width:0;overflow:hidden;font-weight:var(--fw-bold);text-overflow:ellipsis;white-space:nowrap}.teacher-exam-pill{flex:none;display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-4);border:2px solid var(--line);border-radius:var(--r-pill);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.teacher-exam-pill--done{border-color:var(--good);background:var(--good);color:var(--ink-fg)}@media print{.teacher-stage{display:none}}.teacher-live-play .teacher-stage-button{border-color:var(--text);color:var(--text)}.teacher-projector{flex:1 1 auto;align-self:stretch;min-height:0;display:flex;flex-direction:column;gap:var(--sp-6);text-align:start}.teacher-projector-strip{flex:none;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}.teacher-projector-strip ol{margin:0;padding:var(--sp-2);list-style:none;display:flex;gap:var(--sp-4);width:max-content;margin-inline:auto}.teacher-projector-chip{min-height:var(--size-tap);max-width:24ch;display:inline-flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-5) var(--sp-2) var(--sp-2);border:2px solid var(--line);border-radius:var(--r-md);text-align:start;line-height:var(--lh-tight);background:var(--surface);color:var(--text);font:inherit;font-weight:var(--fw-medium);cursor:pointer;transition-property:border-color,box-shadow,color;transition-duration:var(--dur-fast);transition-timing-function:var(--ease-out)}.teacher-projector-chip:hover:not(:disabled){border-color:var(--text);color:var(--text)}.teacher-projector-chip:focus-visible{outline:4px solid var(--warn);outline-offset:3px}.teacher-projector-chip.is-current{border-color:var(--text);box-shadow:inset 0 -4px 0 var(--text);color:var(--text);font-weight:var(--fw-bold)}.teacher-projector-chip.is-out{border-style:dashed;cursor:not-allowed}.teacher-projector-chip.is-out .teacher-projector-chip-title{text-decoration:line-through}.teacher-projector-chip-kind{flex:none;display:inline-grid;color:inherit}.teacher-projector-chip-text{min-width:0;display:grid;gap:var(--sp-1)}.teacher-projector-chip-out{width:fit-content;display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-4) var(--sp-1) var(--sp-3);border-radius:var(--r-xs);background:var(--bad);color:var(--ink-fg);font-size:var(--fs-stage-min);font-weight:var(--fw-heavy);line-height:var(--lh-tight);letter-spacing:var(--ls-wider);text-transform:uppercase}.teacher-projector-chip-n{flex:none;min-width:calc(var(--size-tap) - 2 * var(--sp-2) - 4px);aspect-ratio:1;display:grid;place-items:center;border:2px solid currentColor;border-radius:50%;font-weight:var(--fw-bold);font-variant-numeric:tabular-nums}.teacher-projector-chip-head{white-space:nowrap}.teacher-projector-chip-title{min-width:0;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere}.teacher-projector-tick{flex:none;display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--good);color:var(--ink-fg)}.teacher-projector-notice{flex:none;color:var(--text);text-align:center}.teacher-projector-body{flex:1 1 0;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin;display:grid;align-content:safe center;justify-items:stretch;gap:var(--sp-6)}.teacher-projector-end{display:grid;justify-items:center;gap:var(--sp-7);text-align:center}.teacher-projector-kicker{margin:0;color:var(--accent);font-size:var(--fs-stage-min);font-weight:var(--fw-heavy);letter-spacing:var(--ls-wider);text-transform:uppercase}.teacher-projector-title{margin:0;font-family:var(--font-display);font-size:var(--fs-stage-question);font-weight:var(--fw-heavy);line-height:var(--lh-tight);letter-spacing:var(--ls-tight);text-wrap:balance}.teacher-projector-scene{display:grid;justify-items:center;gap:var(--sp-5);text-align:center}.teacher-projector-scene .teacher-live-scene{width:min(100cqw - 2 * var(--sp-10),113.7777777778cqh)}.teacher-projector-scene .teacher-live-subtitle{inset:auto 0 var(--sp-6);width:fit-content;max-width:90%;margin-inline:auto;padding:var(--sp-1) var(--sp-4);border-radius:var(--r-xs);background:color-mix(in srgb,var(--ink) 72%,transparent);font-size:var(--fs-stage-answer);font-weight:var(--fw-medium);line-height:var(--lh-tight);text-wrap:balance}.teacher-projector-exercise{width:100%;display:grid;gap:var(--sp-6)}.teacher-projector-bank,.teacher-projector-options{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:var(--sp-4)}.teacher-projector-bank li,.teacher-projector-options li{display:inline-flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-6);border:2px solid var(--line);border-radius:var(--r-pill);background:var(--surface);font-weight:var(--fw-bold)}.teacher-projector-rows{margin:0;padding-inline-start:1.5em;display:grid;gap:var(--sp-7);font-size:var(--fs-stage-question);font-weight:var(--fw-heavy);line-height:var(--lh-tight)}.teacher-projector-rows>li::marker{color:var(--accent);font-variant-numeric:tabular-nums}.teacher-projector-rows .teacher-projector-options{margin-top:var(--sp-5);font-size:var(--fs-stage-answer)}.teacher-projector-rows.is-dense{gap:var(--sp-5);font-size:var(--fs-stage-answer)}.teacher-projector-rows.is-dense .teacher-projector-options{font-size:var(--fs-stage-min)}@container (max-height: 640px){.teacher-projector-rows:has(.is-tiles){gap:var(--sp-5);font-size:var(--fs-stage-answer)}.teacher-projector-rows:has(.is-tiles) .teacher-projector-options{font-size:var(--fs-stage-min)}}.teacher-projector-options.is-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,9ch),1fr))}.teacher-projector-options.is-tiles li{display:block;padding:0;border:0;background:none}.teacher-projector-tile{width:100%;min-height:calc(var(--size-tap) * 1.5);display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-6) var(--sp-4) var(--sp-4);border:4px solid transparent;border-radius:var(--r-md);color:var(--ink-fg);background:var(--accent);font:inherit;font-weight:var(--fw-heavy);text-align:start;cursor:pointer;touch-action:manipulation;transition-property:transform,background-color,border-color,color,outline-color;transition-duration:var(--dur-base);transition-timing-function:var(--ease-out)}.teacher-projector-tile[data-tone="1"]{background:var(--accent-2)}.teacher-projector-tile[data-tone="2"]{color:var(--warn-ink);background:var(--warn)}.teacher-projector-tile[data-tone="3"]{background:var(--good)}.teacher-projector-tile:hover:not(:disabled){transform:translateY(-3px)}.teacher-projector-tile:active:not(:disabled){transform:scale(.97)}.teacher-projector-tile:focus-visible{outline:4px solid var(--text);outline-offset:4px}.teacher-projector-tile[data-state=picked]{border-color:var(--ink-fg);outline:6px solid var(--text);outline-offset:2px}.teacher-projector-tile[data-state=picked] .teacher-projector-letter{color:var(--surface);background:var(--text)}.teacher-projector-tile[data-state=rest]{border-color:var(--line);color:var(--text);background:var(--surface)}.teacher-projector-tile[data-state=right],.teacher-projector-tile[data-state=wrong]{border-color:var(--text);color:var(--ink-fg)}.teacher-projector-tile[data-state=right]{background:var(--good)}.teacher-projector-tile[data-state=wrong]{background:var(--bad)}.teacher-projector-tile:disabled{cursor:default}.teacher-projector-letter{flex:none;width:1.6em;aspect-ratio:1;display:grid;place-items:center;border-radius:50%;background:var(--surface);color:var(--text);font-weight:var(--fw-black)}.teacher-projector-option{flex:1 1 auto;min-width:0;text-wrap:pretty}.teacher-projector-text{margin:0;text-wrap:pretty}.teacher-projector-line{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-4) var(--sp-6)}.teacher-projector-answer,.teacher-projector-verdict{display:inline-flex;align-items:center;gap:var(--sp-3);padding:var(--sp-1) var(--sp-6) var(--sp-1) var(--sp-4);border-radius:var(--r-pill);color:var(--ink-fg);background:var(--good);font-weight:var(--fw-heavy)}.teacher-projector-verdict{font-size:var(--fs-stage-answer)}.teacher-projector-verdict[data-verdict=wrong]{background:var(--bad)}.teacher-projector-show{min-height:calc(var(--size-tap) * 1.25);display:inline-flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-6) var(--sp-2) var(--sp-5);border:3px dashed var(--accent-2);border-radius:var(--r-pill);color:var(--accent-2);background:var(--surface);font:inherit;font-size:var(--fs-stage-min);font-weight:var(--fw-heavy);cursor:pointer;touch-action:manipulation;transition-property:transform,background-color,border-color;transition-duration:var(--dur-base);transition-timing-function:var(--ease-out)}.teacher-projector-show:hover{border-style:solid;background:var(--surface-2)}.teacher-projector-show:active{transform:scale(.97)}.teacher-projector-show:focus-visible{outline:4px solid var(--text);outline-offset:4px}.teacher-projector-gaptext{margin:0;font-size:var(--fs-stage-answer);font-weight:var(--fw-heavy);line-height:2;text-wrap:pretty}.teacher-projector-gap{min-width:4em;min-height:calc(var(--size-tap) * 1.25);display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);margin:0 var(--sp-1);padding:0 var(--sp-4);vertical-align:middle;border:3px dashed var(--accent-2);border-radius:var(--r-md);color:var(--accent-2);background:var(--surface);font:inherit;line-height:var(--lh-tight);cursor:pointer;touch-action:manipulation;transition-property:transform,background-color,border-color;transition-duration:var(--dur-base);transition-timing-function:var(--ease-out)}.teacher-projector-gap:hover:not(.is-open,.is-empty){border-style:solid;background:var(--surface-2)}.teacher-projector-gap:active:not(.is-open,.is-empty){transform:scale(.97)}.teacher-projector-gap:focus-visible{outline:4px solid var(--text);outline-offset:4px}.teacher-projector-gap.is-open{min-width:0;border:3px solid var(--good);color:var(--ink-fg);background:var(--good);cursor:auto}.teacher-projector-gap.is-empty{border-color:var(--line);color:var(--text);cursor:auto}.teacher-projector-gap-n{font-size:var(--fs-stage-min);font-weight:var(--fw-black);font-variant-numeric:tabular-nums}.teacher-projector-uncover{animation:teacher-projector-uncover var(--dur-meaning) var(--ease-out) both}@keyframes teacher-projector-uncover{0%{opacity:0;transform:translateY(.3em) scale(.92)}}.teacher-stage[data-motion=reduce] .teacher-projector-uncover{animation:none}@media(prefers-reduced-motion:reduce){.teacher-projector-uncover{animation:none}}.teacher-projector-notes{margin:0;padding:var(--sp-5) var(--sp-7);list-style:none;display:grid;gap:var(--sp-3);border-left:6px solid var(--good);border-radius:var(--r-sm);background:var(--surface);font-weight:var(--fw-bold)}.teacher-projector-follow{margin:0;display:grid;gap:var(--sp-2);font-size:var(--fs-stage-answer);font-weight:var(--fw-heavy);text-wrap:pretty}.teacher-projector-hint{margin:var(--sp-2) 0 0;color:var(--text);font-size:var(--fs-stage-min);text-align:center}.teacher-projector-reading{justify-self:center;width:100%;max-width:40ch;display:grid;gap:var(--sp-5);font-size:var(--fs-stage-answer)}.teacher-projector-reading-body{margin:0;font-weight:var(--fw-medium);line-height:var(--lh-base);white-space:pre-line;text-wrap:pretty}.teacher-projector-body:has(>.teacher-projector-figure){grid-template-rows:minmax(0,1fr);align-content:stretch}.teacher-projector-figure{min-height:0;margin:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;justify-items:center;gap:var(--sp-4);text-align:center}.teacher-projector-figure img{width:100%;height:100%;min-height:0;object-fit:contain}.teacher-projector-figure figcaption{max-width:60ch;color:var(--text);text-wrap:balance}.teacher-projector-figure-state{align-self:center;display:grid;justify-items:center;gap:var(--sp-5)}.teacher-projector-exercise:has(.live-sort){gap:var(--sp-5)}.teacher-projector-exercise:has(.live-sort) .teacher-projector-title{font-size:var(--fs-stage-answer)}.live-sort{display:grid;gap:var(--sp-5)}@media(max-width:1439.98px),(max-height:820px){.teacher-projector-exercise:has(.live-sort){--fs-stage-answer: 32px;--fs-stage-question: 40px}.live-sort-column{min-height:120px}.live-sort-tray{padding-block:var(--sp-4)}.live-sort-card{min-height:48px;padding-block:var(--sp-2)}}.live-sort-score{margin:0;font-family:var(--font-display);font-size:var(--fs-stage-question);font-weight:var(--fw-heavy);line-height:var(--lh-tight);font-variant-numeric:tabular-nums}.live-sort-score:empty{display:none}.live-sort-tray{display:grid;gap:var(--sp-4);padding:var(--sp-5) var(--sp-6);border:3px solid var(--line);border-radius:var(--r-lg);background:var(--surface-2);transition:border-color var(--dur-base) var(--ease-out),background-color var(--dur-base) var(--ease-out)}.live-sort-tray.is-target{border-color:var(--accent-2)}.live-sort-tray-head,.live-sort-heading{margin:0;font-family:var(--font-display);font-weight:var(--fw-heavy);line-height:var(--lh-tight);text-wrap:balance}.live-sort-tray-top{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:var(--sp-7);row-gap:var(--sp-2)}.live-sort-tray-head{display:flex;align-items:center;gap:var(--sp-4);font-size:var(--fs-stage-min)}.live-sort-count{min-width:1.6em;padding:0 var(--sp-4);border-radius:var(--r-pill);background:var(--ink);color:var(--ink-fg);text-align:center;font-variant-numeric:tabular-nums}.live-sort-help,.live-sort-done{margin:0;color:var(--text);font-size:var(--fs-stage-min);text-wrap:pretty}.live-sort-columns{display:grid;grid-template-columns:repeat(var(--live-sort-cols, 2),minmax(0,1fr));gap:var(--sp-7)}.live-sort-column{position:relative;display:grid;align-content:start;gap:var(--sp-4);min-height:160px;padding:var(--sp-5) var(--sp-6) var(--sp-6);border:3px solid var(--accent-2);border-radius:var(--r-lg);background:var(--surface);transition:background-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}.live-sort-column.is-ready{border-style:dashed;background:color-mix(in srgb,var(--accent-2) 8%,var(--surface))}.live-sort-column.is-target{border-style:solid;background:color-mix(in srgb,var(--accent-2) 16%,var(--surface));box-shadow:var(--shadow-lg)}.live-sort-heading{position:relative;color:var(--accent-2);font-size:var(--fs-stage-answer);pointer-events:none}.live-sort-zone{position:absolute;top:0;right:0;bottom:0;left:0;border:0;border-radius:inherit;background:transparent;cursor:default;touch-action:manipulation}.is-ready>.live-sort-zone{cursor:pointer}.live-sort-zone:focus-visible{outline:4px solid var(--accent-2);outline-offset:4px}.live-sort-list{position:relative;margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:var(--sp-4);pointer-events:none}.live-sort-list>li{display:flex;pointer-events:auto}.live-sort-empty{align-items:center;min-height:56px;color:var(--accent-2);font-size:var(--fs-stage-min);font-weight:var(--fw-bold);pointer-events:none!important}.live-sort-card{position:relative;display:inline-flex;align-items:center;gap:var(--sp-4);min-height:56px;padding:var(--sp-3) var(--sp-6);border:3px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-sm);color:var(--text);font:inherit;font-size:var(--fs-stage-min);font-weight:var(--fw-bold);text-align:start;user-select:none;-webkit-user-select:none;touch-action:none;cursor:grab;transition-property:transform,background-color,border-color,box-shadow;transition-duration:var(--dur-base);transition-timing-function:var(--ease-out)}.live-sort-card:hover{border-color:var(--accent-2)}.live-sort-card:active{transform:scale(.97)}.live-sort-card:focus-visible{outline:4px solid var(--accent-2);outline-offset:3px}.live-sort-card.is-selected{border-color:var(--warn-ink);background:var(--warn);color:var(--warn-ink);box-shadow:var(--shadow-lg);transform:translateY(-6px)}.live-sort-card.is-dragging{z-index:10;border-color:var(--warn-ink);background:var(--warn);color:var(--warn-ink);box-shadow:var(--shadow-lg);cursor:grabbing;transition:none}.is-checked .live-sort-card{cursor:default;touch-action:auto}.live-sort-card.is-right{border-color:var(--good);background:var(--good);color:var(--ink-fg)}.live-sort-card.is-wrong{border-color:var(--bad);background:var(--bad);color:var(--ink-fg)}.live-sort-card.is-missing{border-style:dashed;border-color:var(--accent-3)}.live-sort-card.is-missing svg{color:var(--accent-3)}@media(prefers-reduced-motion:reduce){.live-sort-card,.live-sort-column,.live-sort-tray{transition:none}.live-sort-card.is-selected,.live-sort-card:active{transform:none}}@media(max-width:599.98px){.teacher-stage:has(.teacher-projector){--fs-stage-question: 32px;--fs-stage-answer: 28px}.teacher-stage:has(.teacher-projector) .teacher-stage-main{padding:var(--sp-4)}.teacher-stage:has(.teacher-projector) .teacher-stage-safe{width:100%;height:100%;aspect-ratio:auto;gap:var(--sp-5)}.teacher-stage:has(.teacher-projector) .teacher-stage-bar{min-height:0;flex-wrap:nowrap;gap:var(--sp-4);padding:var(--sp-3) var(--sp-4);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}.teacher-stage:has(.teacher-projector) .teacher-stage-status{flex:none;white-space:nowrap}.teacher-stage:has(.teacher-projector) .teacher-stage-controls{flex-wrap:nowrap;gap:var(--sp-3)}.teacher-stage:has(.teacher-projector) .teacher-stage-button{flex:none;padding:var(--sp-2) var(--sp-5);white-space:nowrap}.teacher-stage:has(.teacher-projector) .teacher-stage-button kbd{display:none}.teacher-projector{gap:var(--sp-4)}.teacher-projector-strip ol{margin-inline:0;padding-inline:0}.teacher-projector-chip{max-width:16ch}.teacher-projector-hint{display:none}.teacher-projector-options.is-tiles{grid-template-columns:1fr}}.teacher-directo{grid-template-rows:auto minmax(0,1fr)}.teacher-directo .teacher-stage-bar{border-top:0;border-bottom:2px solid var(--stage-night-raised)}.teacher-directo ul{margin:0;padding:0;list-style:none}.teacher-directo-where{flex:1 1 auto;min-width:0;margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-4) var(--sp-5);font-weight:var(--fw-heavy)}.teacher-directo-brand{color:var(--warn);font-family:var(--font-display);letter-spacing:var(--ls-wide)}.teacher-directo-main{position:relative;z-index:var(--z-raised);min-height:0;overflow:auto;display:flex;flex-direction:column;gap:var(--sp-9);padding:var(--sp-10) var(--sp-11)}.teacher-directo-title{max-width:none;text-wrap:balance}.teacher-directo-intro{display:flex;flex-direction:column;gap:var(--sp-4)}.teacher-directo-kicker{margin:0;color:var(--warn);font-weight:var(--fw-heavy);letter-spacing:var(--ls-wide);text-transform:uppercase}.teacher-directo-about{max-width:62ch;margin:0;color:var(--stage-night-fg);line-height:var(--lh-base);text-wrap:pretty}.teacher-directo-state{margin:auto;display:flex;flex-direction:column;align-items:center;gap:var(--sp-9);text-align:center}.teacher-directo-groups{flex:1 1 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-9);align-items:stretch}.teacher-directo-groups ul{display:flex;flex-direction:column;gap:var(--sp-6)}.teacher-directo-group{min-width:0;display:flex;flex-direction:column}.teacher-directo-group-title{margin:0 0 var(--sp-6);color:var(--warn);font-size:var(--fs-stage-min);font-weight:var(--fw-heavy);letter-spacing:var(--ls-wide);text-transform:uppercase}.teacher-directo-group-empty,.teacher-directo-hint{margin:0;color:var(--stage-night-muted);font-weight:var(--fw-bold)}.teacher-directo-groups--one{flex:0 0 auto;grid-template-columns:minmax(0,1fr);width:min(100%,56rem)}.teacher-directo-pick{align-self:flex-start;min-height:var(--size-tap);display:inline-flex;align-items:center;margin-top:var(--sp-2);color:var(--stage-night-fg);font-weight:var(--fw-bold);text-decoration:underline;text-underline-offset:.2em}.teacher-directo-pick:focus-visible{outline:4px solid var(--warn);outline-offset:3px;border-radius:var(--r-sm)}.teacher-directo-tile{width:100%;min-height:calc(var(--size-tap) * 2);display:flex;align-items:center;gap:var(--sp-6);padding:var(--sp-6) var(--sp-7);border:2px solid transparent;border-radius:var(--r-md);background:var(--stage-night-raised);color:var(--stage-night-fg);font:inherit;text-align:left;cursor:pointer;transition-property:transform,border-color;transition-duration:.15s;transition-timing-function:ease-out}.teacher-directo-tile:hover{border-color:var(--stage-night-muted)}.teacher-directo-tile:active{transform:scale(.98)}.teacher-directo-tile:focus-visible{outline:4px solid var(--warn);outline-offset:3px}.teacher-directo-tile.is-off{border:2px dashed var(--stage-night-raised);background:var(--stage-night);cursor:default}.teacher-directo-tile.is-off:hover{border-color:var(--stage-night-raised)}.teacher-directo-tile.is-off:active{transform:none}@media(prefers-reduced-motion:reduce){.teacher-directo-tile{transition:none}.teacher-directo-tile:active{transform:none}}.teacher-directo-tile.is-live{border-color:var(--warn);box-shadow:inset 0 0 0 2px var(--warn)}.teacher-directo-class{min-height:calc(var(--size-tap) * 3);flex-direction:column;align-items:flex-start;justify-content:center;padding:var(--sp-8) var(--sp-9)}.teacher-directo-classes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:var(--sp-8)}.teacher-directo-kind{flex:none;width:64px;height:64px;display:grid;place-items:center;border-radius:var(--r-sm);background:var(--stage-tone-red);color:var(--stage-night)}.teacher-directo-kind[data-kind=worksheet],.teacher-directo-kind[data-kind=exercise]{background:var(--stage-tone-blue)}.teacher-directo-kind[data-kind=game]{background:var(--stage-tone-yellow)}.teacher-directo-tile-text{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:var(--sp-2)}.teacher-directo-tile-title{display:-webkit-box;overflow:hidden;font-family:var(--font-display);font-size:var(--fs-stage-answer);font-weight:var(--fw-heavy);line-height:var(--lh-tight);text-wrap:balance;overflow-wrap:normal;-webkit-hyphens:manual;hyphens:manual;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3}.teacher-directo-live{align-self:flex-start;display:inline-flex;align-items:center;gap:var(--sp-3);margin-top:var(--sp-2);padding:var(--sp-2) var(--sp-5);border-radius:var(--r-pill);background:var(--warn);color:var(--warn-ink);font-size:var(--fs-stage-min);font-weight:var(--fw-heavy)}.teacher-directo-live-dot{width:12px;height:12px;border-radius:50%;background:var(--warn-ink);animation:teacher-directo-pulse 1.6s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.teacher-directo-live-dot{animation:none}}@keyframes teacher-directo-pulse{50%{opacity:.35}}.teacher-directo-tile-meta{color:var(--stage-night-muted);font-size:var(--fs-stage-min);font-weight:var(--fw-bold)}.teacher-directo-tick{flex:none;width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:var(--stage-tone-green);color:var(--stage-night)}.teacher-directo-groups{--directo-tile: clamp(calc(var(--size-tap) * 2), (100dvh - 420px) / 3, 240px)}.teacher-directo-groups ul{flex:1 1 auto}.teacher-directo-groups .teacher-directo-tile{min-height:var(--directo-tile)}.teacher-directo-hint{margin-top:auto}@media(min-width:1600px){.teacher-directo-main{gap:var(--sp-9);padding:var(--sp-10) calc(var(--sp-11) * 2)}.teacher-directo-groups{--directo-tile: clamp(calc(var(--size-tap) * 3), (100dvh - 480px) / 3, 260px);--fs-stage-answer: 48px;gap:var(--sp-10)}.teacher-directo-groups ul{gap:var(--sp-7)}.teacher-directo-groups .teacher-directo-tile{gap:var(--sp-8);padding:var(--sp-7) var(--sp-9);border-radius:var(--r-lg)}.teacher-directo-groups .teacher-directo-kind{width:112px;height:112px}.teacher-directo-groups .teacher-directo-kind svg{width:56px;height:56px}.teacher-directo-groups .teacher-directo-tick{width:64px;height:64px}}@media(max-width:1439.98px){.teacher-directo-main{--fs-stage-question: 48px;gap:var(--sp-6);padding:var(--sp-6) var(--sp-10)}.teacher-directo-groups{--directo-tile: clamp(calc(var(--size-tap) * 2), (100dvh - 340px) / 3, 240px);--fs-stage-answer: 32px;gap:var(--sp-8)}.teacher-directo-groups ul{gap:var(--sp-4)}.teacher-directo-groups .teacher-directo-tile{gap:var(--sp-5);padding:var(--sp-4) var(--sp-6)}.teacher-directo-groups .teacher-directo-kind{width:56px;height:56px}.teacher-directo-group-title{margin-bottom:var(--sp-4)}}@media(max-width:900px){.teacher-directo-groups{--fs-stage-answer: var(--fs-stage-min);grid-template-columns:minmax(0,1fr)}.teacher-directo-groups .teacher-directo-kind{width:48px;height:48px}.teacher-directo-main{padding:var(--sp-8)}}.teacher-live-class{margin:0;font-family:var(--font-body);font-size:var(--fs-stage-min);font-weight:var(--fw-bold)}.teacher-live-waiting{display:grid;justify-items:center;gap:var(--sp-3)}.teacher-live-waiting .teacher-live-scoring{background:transparent;color:var(--text);padding:0;font-size:var(--fs-stage-min);font-weight:var(--fw-medium)}.teacher-live-join-toggle:focus-visible{outline-color:var(--accent-2)}.teacher-stage--projection,.projection-audience{--projection-bg: var(--bg);--projection-fg: var(--text);--projection-surface: var(--surface);--projection-line: var(--text);background:var(--projection-bg);color:var(--projection-fg)}.teacher-stage--projection.teacher-stage--night,.teacher-stage--projection.projection-night,.projection-audience.teacher-stage--night,.projection-audience.projection-night{--projection-bg: var(--stage-night);--projection-fg: var(--stage-night-fg);--projection-surface: var(--stage-night-raised);--projection-line: var(--stage-night-fg)}.teacher-stage--projection .teacher-stage-main,.projection-audience .teacher-stage-main{padding:20px 32px 12px;display:block}.teacher-stage--projection .teacher-stage-safe,.projection-audience .teacher-stage-safe{width:100%;height:100%;aspect-ratio:auto;gap:0}.teacher-stage--projection .teacher-stage-bar,.projection-audience .teacher-stage-bar{min-height:64px;padding:8px 24px;gap:16px}.teacher-stage--projection .teacher-stage-controls,.projection-audience .teacher-stage-controls{gap:8px}.teacher-stage--projection .teacher-stage-status,.projection-audience .teacher-stage-status{font-size:18px;white-space:nowrap}.teacher-stage--projection .teacher-stage-button,.projection-audience .teacher-stage-button{min-height:48px;padding:8px 16px;gap:8px;font-size:18px;line-height:1.25;white-space:nowrap}.teacher-stage--projection .teacher-stage-button kbd,.projection-audience .teacher-stage-button kbd{display:none}.teacher-stage--projection .teacher-stage-button:disabled,.projection-audience .teacher-stage-button:disabled{opacity:.45;cursor:default}.teacher-stage--projection .teacher-stage-button:focus-visible,.teacher-stage--projection select:focus-visible,.teacher-stage--projection input:focus-visible,.projection-audience .teacher-stage-button:focus-visible,.projection-audience select:focus-visible,.projection-audience input:focus-visible{outline:3px solid var(--warn);outline-offset:3px}.teacher-stage--projection .teacher-projector,.projection-audience .teacher-projector{gap:12px;height:100%}.teacher-stage--projection .teacher-projector-body,.projection-audience .teacher-projector-body{flex:1 1 0;width:100%;min-height:0;overflow:hidden;display:flex}.teacher-stage--projection .teacher-projector-title,.projection-audience .teacher-projector-title{margin:0 0 20px;font-size:clamp(32px,3.6vw,56px);line-height:1.15;text-wrap:balance;color:inherit}.teacher-stage--projection .teacher-projector-kicker,.projection-audience .teacher-projector-kicker{color:inherit}.teacher-stage--projection .teacher-projector-rows>li::marker,.projection-audience .teacher-projector-rows>li::marker{color:var(--projection-fg)}.teacher-stage--projection .teacher-projector-show,.teacher-stage--projection .teacher-projector-gap,.projection-audience .teacher-projector-show,.projection-audience .teacher-projector-gap{color:var(--projection-fg);background:var(--projection-surface);border-color:var(--projection-fg)}.teacher-stage--projection .teacher-projector-bank li,.teacher-stage--projection .teacher-projector-options:not(.is-tiles) li,.teacher-stage--projection .teacher-projector-notes,.projection-audience .teacher-projector-bank li,.projection-audience .teacher-projector-options:not(.is-tiles) li,.projection-audience .teacher-projector-notes{color:var(--text);background:var(--surface)}.teacher-stage--projection .teacher-projector-tile,.projection-audience .teacher-projector-tile{color:var(--stage-night);background:var(--stage-tone-red)}.teacher-stage--projection .teacher-projector-tile[data-tone="1"],.projection-audience .teacher-projector-tile[data-tone="1"]{background:var(--stage-tone-blue)}.teacher-stage--projection .teacher-projector-tile[data-tone="2"],.projection-audience .teacher-projector-tile[data-tone="2"]{background:var(--stage-tone-yellow)}.teacher-stage--projection .teacher-projector-tile[data-tone="3"],.projection-audience .teacher-projector-tile[data-tone="3"]{background:var(--stage-tone-green)}.teacher-stage--projection .teacher-projector-tile[data-state=right],.teacher-stage--projection .teacher-projector-answer,.teacher-stage--projection .teacher-projector-verdict,.teacher-stage--projection .teacher-projector-gap.is-open,.projection-audience .teacher-projector-tile[data-state=right],.projection-audience .teacher-projector-answer,.projection-audience .teacher-projector-verdict,.projection-audience .teacher-projector-gap.is-open{color:var(--stage-night);background:var(--stage-tone-green)}.teacher-stage--projection .teacher-projector-tile[data-state=wrong],.teacher-stage--projection .teacher-projector-verdict[data-verdict=wrong],.projection-audience .teacher-projector-tile[data-state=wrong],.projection-audience .teacher-projector-verdict[data-verdict=wrong]{color:var(--stage-night);background:var(--stage-tone-red)}.teacher-stage--projection .teacher-projector-tile[data-state=rest],.projection-audience .teacher-projector-tile[data-state=rest]{color:var(--text);background:var(--surface)}.teacher-stage--projection .teacher-projector-tile[data-state=picked],.projection-audience .teacher-projector-tile[data-state=picked]{border-color:var(--stage-night);outline-color:var(--projection-fg)}.teacher-stage--projection .teacher-projector-tile:focus-visible,.projection-audience .teacher-projector-tile:focus-visible{outline-color:var(--projection-fg)}.teacher-stage--projection .live-sort-column,.teacher-stage--projection .live-sort-tray,.projection-audience .live-sort-column,.projection-audience .live-sort-tray,.teacher-stage--projection .live-sort-heading,.teacher-stage--projection .live-sort-empty,.projection-audience .live-sort-heading,.projection-audience .live-sort-empty{color:var(--text)}.teacher-stage--projection .live-sort-card.is-right,.projection-audience .live-sort-card.is-right{color:var(--stage-night);background:var(--stage-tone-green)}.teacher-stage--projection .live-sort-card.is-wrong,.projection-audience .live-sort-card.is-wrong{color:var(--stage-night);background:var(--stage-tone-red)}.teacher-stage--projection .teacher-projector-figure figcaption,.projection-audience .teacher-projector-figure figcaption{color:inherit}.teacher-stage--projection .teacher-projector-exercise,.projection-audience .teacher-projector-exercise{width:100%;display:grid;gap:16px;align-content:center}.teacher-stage--projection .teacher-projector-rows,.projection-audience .teacher-projector-rows{gap:20px;font-size:clamp(28px,3.2vw,44px);margin:0}.teacher-stage--projection .teacher-projector-rows>li,.projection-audience .teacher-projector-rows>li{padding:0}.teacher-stage--projection .teacher-projector-line,.projection-audience .teacher-projector-line{gap:16px}.teacher-stage--projection .teacher-projector-text,.teacher-stage--projection .teacher-projector-option,.projection-audience .teacher-projector-text,.projection-audience .teacher-projector-option{font-size:inherit;line-height:1.35}.teacher-stage--projection .teacher-projector-slot,.projection-audience .teacher-projector-slot{font-size:28px}.teacher-stage--projection .teacher-projector-options.is-tiles,.projection-audience .teacher-projector-options.is-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.teacher-stage--projection .teacher-projector-tile,.projection-audience .teacher-projector-tile{min-height:72px;padding:16px 20px}.teacher-stage--projection .teacher-projector-show,.projection-audience .teacher-projector-show{min-height:48px;font-size:24px;color:inherit;border-color:currentColor}.teacher-stage--projection .teacher-projector-answer,.teacher-stage--projection .teacher-projector-verdict,.projection-audience .teacher-projector-answer,.projection-audience .teacher-projector-verdict,.teacher-stage--projection .teacher-projector-bank,.projection-audience .teacher-projector-bank{font-size:28px}.teacher-stage--projection .teacher-projector-notes,.teacher-stage--projection .teacher-projector-follow,.teacher-stage--projection .teacher-projector-gaptext,.projection-audience .teacher-projector-notes,.projection-audience .teacher-projector-follow,.projection-audience .teacher-projector-gaptext{font-size:28px;line-height:1.45}.teacher-stage--projection .teacher-projector-reading,.projection-audience .teacher-projector-reading{width:100%}.teacher-stage--projection .teacher-projector-reading-body,.projection-audience .teacher-projector-reading-body{width:100%;min-width:0;font-size:clamp(28px,2.8vw,40px);line-height:1.45;max-width:58ch;margin:0 auto;white-space:pre-wrap}.teacher-stage--projection .teacher-projector-scene,.projection-audience .teacher-projector-scene{display:flex;flex-direction:column;height:100%;width:100%;min-height:0;gap:0}.teacher-stage--projection .teacher-projector-scene .teacher-projector-title,.projection-audience .teacher-projector-scene .teacher-projector-title{font-size:28px;margin-bottom:12px}.teacher-stage--projection .teacher-live-scene,.projection-audience .teacher-live-scene{flex:1;min-height:0;width:100%;display:flex;flex-direction:column;align-items:center}.teacher-stage--projection .teacher-live-scene iframe,.projection-audience .teacher-live-scene iframe{flex:1;min-height:0;width:100%;max-width:1100px;border:0}.teacher-stage--projection .teacher-live-subtitle,.projection-audience .teacher-live-subtitle{font-size:28px;min-height:40px;padding:4px 12px;color:var(--projection-fg);background:var(--projection-bg)}.teacher-stage--projection .teacher-projector-figure,.projection-audience .teacher-projector-figure{height:100%;min-height:0;display:flex;flex-direction:column;margin:0}.teacher-stage--projection .teacher-projector-figure img,.projection-audience .teacher-projector-figure img{flex:1;min-height:0;width:100%;object-fit:contain}.teacher-stage--projection .teacher-projector-figure figcaption,.projection-audience .teacher-projector-figure figcaption{font-size:24px;padding:12px}.projection-session{position:relative}.projection-heading{display:flex;align-items:center;gap:20px;width:100%;text-align:left;font-size:24px;line-height:1.3;min-height:32px}.projection-heading>:first-child{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.projection-heading>[role=status]{font-size:18px}.projection-controls{flex:none;display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;padding-top:8px;border-top:1px solid var(--projection-line)}.projection-control-center{display:flex;align-items:center;justify-content:center;gap:12px}.projection-controls select{max-width:220px;min-height:48px;padding:8px 12px;border:1px solid currentColor;border-radius:var(--r-sm);color:var(--projection-fg);background:var(--projection-bg);font:inherit;font-size:18px}.projection-controls .teacher-stage-button,.projection-panel .teacher-stage-button,.projection-recovery .teacher-stage-button,.projection-reference-controls .teacher-stage-button,.projection-output-controls .teacher-stage-button{background:var(--projection-surface);color:var(--projection-fg);border:1px solid var(--projection-line)}.projection-controls .projection-primary-button{background:var(--warn);color:var(--warn-ink);border-color:var(--warn)}.projection-content{position:relative;width:100%;height:100%;min-height:0;display:grid;grid-template-columns:minmax(0,1fr);align-items:center;text-align:left}.projection-primary{overflow-y:auto;overscroll-behavior:contain;min-width:0;height:100%;min-height:0;display:grid;align-content:safe center}.projection-primary:has(.teacher-projector-scene),.projection-primary:has(.teacher-projector-figure){display:block}.projection-exercise-wrap{width:100%}.projection-content--reference{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}.projection-reference{height:100%;min-height:0;overflow:auto;padding-right:24px;border-right:1px solid var(--projection-line);align-content:center}.projection-content--reference .teacher-projector-title,.projection-content--reference .teacher-projector-reading-body,.projection-content--reference .teacher-projector-rows{font-size:28px}.projection-content--whole .projection-primary{overflow-y:auto}.projection-content--whole .teacher-projector-rows{font-size:28px}.projection-content--whole .teacher-projector-exercise{align-content:start}.projection-panel{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;overflow-y:auto;background:var(--projection-bg);color:var(--projection-fg);text-align:left;padding:16px 24px;border:2px solid var(--projection-line);border-radius:var(--r-md);font-size:20px;line-height:1.5}.projection-panel h2{font:700 32px var(--font-display);margin:0}.projection-panel-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.projection-tool-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:16px 0;border-bottom:1px solid var(--projection-line)}.projection-verify{min-height:48px;display:flex;align-items:center;gap:12px}.projection-verify input{width:24px;height:24px}.projection-tray .teacher-projector-strip{overflow:visible;width:100%}.projection-tray .teacher-projector-strip ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.projection-tray .teacher-projector-chip{width:100%;max-width:none;min-height:112px;white-space:normal;text-align:left;padding:16px;color:var(--projection-fg);background:var(--projection-surface);border:2px solid transparent}.projection-tray .teacher-projector-chip[aria-current=step]{border-color:var(--warn)}.projection-tray .teacher-projector-chip strong{font-size:24px}.projection-tray .teacher-projector-chip-n{color:inherit}.projection-preview{display:block;font-size:18px;margin-top:8px;line-height:1.4}.projection-blank{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--projection-bg)}.projection-pointer{position:absolute;width:36px;height:36px;border:5px solid var(--warn);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 3px var(--text);pointer-events:none}.projection-notice{margin:0;font-size:18px;text-align:left;display:flex;gap:16px;align-items:center}.projection-notice button{font:inherit;color:inherit;background:transparent;border:1px solid currentColor;border-radius:var(--r-sm);min-height:44px;padding:8px}.projection-recovery{padding:12px;display:flex;gap:12px;align-items:center;font-size:20px;border:1px solid currentColor}.projection-recovery p{margin:0;flex:1}.projection-reference-controls,.projection-output-controls{display:flex;justify-content:center;align-items:center;gap:12px}.projection-media-preview{display:grid;place-content:center;justify-items:center;flex:1;font-size:24px;border:1px solid currentColor}.projection-timer{font-variant-numeric:tabular-nums;white-space:nowrap}.projection-audience{position:fixed;top:0;right:0;bottom:0;left:0;padding:40px 48px;font-family:var(--font-body);font-size:32px;overflow:hidden}.projection-audience .projection-content{min-height:100%}.projection-ready{height:100%;display:grid;align-content:center;justify-items:center;text-align:center;gap:24px}.projection-ready h1{font:600 48px var(--font-display);margin:0}.projection-ready p{max-width:34ch;font-size:28px;margin:0}.projection-ready .projection-brand{font:700 40px var(--font-display)}.projection-fullscreen{position:absolute;bottom:12px;right:16px;opacity:0}.projection-fullscreen:focus-visible,.projection-audience:hover>.projection-fullscreen,.projection-audience:has(.projection-ready)>.projection-fullscreen{opacity:1}.projection-audience-timer{position:absolute;top:8px;right:24px;font-size:24px;font-variant-numeric:tabular-nums}.projection-audience .teacher-projector-show{visibility:hidden}@media(max-width:1100px){.teacher-stage--projection .teacher-stage-main{padding:16px 24px 12px}.teacher-stage--projection .teacher-stage-bar{padding:8px 16px;gap:8px}.teacher-stage--projection .teacher-stage-button{padding:8px 12px;font-size:18px}.projection-control-center{gap:8px}}@media(max-width:760px){.projection-heading{font-size:20px}.projection-heading>[role=status]{display:none}.teacher-stage--projection .teacher-stage-bar,.teacher-stage--projection .teacher-stage-controls,.projection-controls{flex-wrap:wrap}.projection-control-center{order:-1;width:100%;flex-wrap:wrap}.projection-content--reference,.projection-tray .teacher-projector-strip ol{grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){.teacher-stage--projection *,.projection-audience *{transition-duration:0s!important;animation-duration:0s!important}}.projection-step-list{margin-top:8px;font-size:18px}.projection-step-list summary{min-height:48px;align-content:center;cursor:pointer}.projection-step-list button{display:block;width:100%;margin:8px 0;text-align:left;white-space:normal!important}dialog.projection-panel{position:fixed;top:24px;right:24px;bottom:24px;left:24px;margin:auto;width:min(1100px,100vw - 48px);height:fit-content;max-height:calc(100dvh - 48px);box-sizing:border-box}dialog.projection-panel::backdrop{background:color-mix(in srgb,var(--stage-night) 75%,transparent)}.projection-search{display:grid;gap:8px;margin-bottom:24px}.projection-search input{min-height:48px;padding:10px 16px;color:var(--projection-fg);background:var(--projection-surface);border:1px solid currentColor;border-radius:var(--r-sm);font:inherit}.projection-content--pointing,.projection-content--pointing *{cursor:crosshair!important}.teacher-print{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-popover);overflow:auto;background:var(--bg);outline:none}.teacher-print-bar{position:sticky;top:0;display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-4) var(--sp-6);padding:var(--sp-5) var(--sp-8);z-index:var(--z-sticky);border-bottom:1px solid var(--line);background:var(--surface)}.teacher-print-bar p{margin:0}.teacher-sheet{box-sizing:border-box;width:min(210mm,100%);min-height:297mm;margin:var(--sp-8) auto;padding:14mm;background:var(--scan-light);color:var(--scan-dark);font-family:var(--font-body);font-size:11pt;line-height:1.45;overflow-wrap:anywhere}.teacher-sheet h1,.teacher-sheet h2,.teacher-sheet p,.teacher-sheet ol,.teacher-sheet ul{margin:0 0 2mm}.teacher-sheet h1{font-size:18pt;line-height:1.2}.teacher-sheet h2{margin-top:4mm;padding-bottom:1mm;border-bottom:1.5pt solid var(--scan-dark);font-size:14pt}.teacher-sheet ol,.teacher-sheet ul{padding-left:7mm}.teacher-sheet li{margin-bottom:2mm}.teacher-sheet-head{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title brand" "fields fields" "prompt prompt";column-gap:6mm;align-items:baseline}.teacher-sheet-head h1,.teacher-sheet-head .teacher-sheet-brand{overflow-wrap:break-word;word-break:normal;-webkit-hyphens:manual;hyphens:manual}.teacher-sheet-head h1{grid-area:title;font-family:var(--font-display);font-variation-settings:"SOFT" 40;font-weight:var(--fw-heavy);letter-spacing:var(--ls-tight)}.teacher-sheet-head .teacher-sheet-brand{grid-area:brand;text-align:right}.teacher-sheet-head .teacher-sheet-fields{grid-area:fields}.teacher-sheet-head .teacher-sheet-prompt{grid-area:prompt}@media screen and (max-width:560px){.teacher-sheet{padding:var(--sp-6)}.teacher-sheet-head{grid-template-columns:minmax(0,1fr);grid-template-areas:"title" "brand" "fields" "prompt"}.teacher-sheet-head .teacher-sheet-brand{text-align:left}}.teacher-sheet-brand{font-size:9pt;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.teacher-sheet-fields{display:flex;flex-wrap:wrap;gap:2mm 8mm;padding:2mm 0 3mm;border-bottom:1pt solid var(--scan-dark)}.teacher-sheet-write{display:inline-block;width:35mm;border-bottom:1pt solid var(--scan-dark)}.teacher-sheet-write--long{width:70mm}.teacher-sheet-prompt,.teacher-sheet-note{font-style:italic}.teacher-sheet-exercise{margin-top:5mm;break-inside:avoid}.teacher-sheet-instruction{font-weight:700}.teacher-sheet-box{padding:2mm 3mm;border:1pt solid var(--scan-dark)}.teacher-sheet-gap{display:inline-block;min-width:28mm;margin:0 1mm;border-bottom:1pt solid var(--scan-dark)}.teacher-sheet-gap--short{min-width:12mm}.teacher-sheet-text{line-height:2}.teacher-sheet-plain{list-style:none}.teacher-sheet-rule{height:8mm;border-bottom:1pt solid var(--scan-dark)}.teacher-sheet-table{width:100%;border-collapse:collapse;table-layout:fixed}.teacher-sheet-table th,.teacher-sheet-table td{height:8mm;padding:1mm 2mm;border:1pt solid var(--scan-dark);text-align:left}.teacher-sheet-options{display:flex;flex-wrap:wrap;gap:1mm 6mm;margin-top:1mm;padding-left:0;list-style:none}.teacher-sheet-check{display:inline-block;width:3.5mm;height:3.5mm;margin-right:1.5mm;border:1pt solid var(--scan-dark);vertical-align:-.5mm}.teacher-sheet-match{display:grid;grid-template-columns:1fr 1fr;gap:6mm}.teacher-sheet-tiles{display:flex;flex-wrap:wrap;gap:1.5mm}.teacher-sheet-tiles span{padding:.5mm 2mm;border:1pt solid var(--scan-dark)}.teacher-sheet-line{font-weight:700}.teacher-sheet-follow-up{margin-top:2mm;padding-left:3mm;border-left:1.5pt solid var(--scan-dark)}.teacher-sheet-pair{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(6,auto) 1fr;min-height:118mm;margin-top:5mm;break-inside:avoid}.teacher-sheet-role{display:grid;grid-row:1/-1;grid-template-rows:subgrid;row-gap:0;padding:6mm;border:1pt dashed var(--scan-dark);text-wrap:pretty}.teacher-sheet-role+.teacher-sheet-role{border-left:none}.teacher-sheet-role p,.teacher-sheet-role ul{margin:0 0 2.5mm}.teacher-sheet-role ul{padding-left:5mm}.teacher-sheet-role-notes{min-height:24mm;margin-top:2mm;background:repeating-linear-gradient(to bottom,transparent 0 7.8236111111mm,color-mix(in srgb,var(--scan-dark) 45%,transparent) 7.8236111111mm 8mm) 0 6mm/100% calc(100% - 6mm) no-repeat;print-color-adjust:exact;-webkit-print-color-adjust:exact}.teacher-sheet-role-head{font-size:13pt}.teacher-sheet-role-situation{font-style:italic}.teacher-sheet-role-label{font-size:9pt;font-weight:800;letter-spacing:.06em;text-transform:uppercase}@media print{body:has(>.teacher-print)>:not(.teacher-print){display:none!important}.teacher-print{position:static;overflow:visible;background:var(--scan-light)}.teacher-print-bar{display:none}.teacher-sheet{width:auto;min-height:0;margin:0;padding:0}.teacher-sheet-section+.teacher-sheet-section{break-before:page}}.teacher-task-card{display:grid;gap:var(--sp-6);border-radius:var(--r-md)}.teacher-task-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--sp-4) var(--sp-6)}.teacher-task-heading{display:flex;align-items:center;gap:var(--sp-4);min-width:0}.teacher-card h2.teacher-task-title,.teacher-task-title{margin:0;font-family:var(--font-display);font-size:var(--fs-h2);font-weight:700;letter-spacing:var(--ls-tight);line-height:1.2;text-wrap:balance;overflow-wrap:anywhere}.teacher-ai-badge{flex:none;padding:var(--sp-1) var(--sp-3);border-radius:var(--r-xs);background:var(--ink);color:var(--warn);font-size:var(--fs-2xs);font-weight:800;letter-spacing:.08em;line-height:1.4}.teacher-task-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--sp-2) var(--sp-5);margin:0;color:var(--muted);font-size:var(--fs-sm)}.teacher-task-class{color:var(--text);font-weight:800;text-decoration-color:var(--line);text-underline-offset:3px}.teacher-task-class:hover{text-decoration-color:currentColor}.teacher-task-fold{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-4)}.teacher-task-summary{margin:0;font-weight:700;font-variant-numeric:tabular-nums}.teacher-task-toggle svg{transition:transform .15s ease-out}.teacher-task-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.teacher-task-body{display:grid;gap:var(--sp-5)}.teacher-task-empty,.teacher-task-failed{margin:0;color:var(--muted);text-wrap:pretty}.teacher-task-failed{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-4);color:var(--bad)}.teacher-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.teacher-table[aria-busy=true] tbody{opacity:.72}.teacher-table thead th{padding:0 var(--sp-5) var(--sp-4) 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:var(--fs-2xs);font-weight:800;letter-spacing:.1em;text-align:left;text-transform:uppercase}.teacher-table tbody>tr>*{padding:var(--sp-3) var(--sp-5) var(--sp-3) 0;border-bottom:1px solid var(--line);vertical-align:middle;text-align:left}.teacher-table tbody>tr:last-child>*{border-bottom:0}.teacher-table tbody>tr>:last-child,.teacher-table thead th:last-child{padding-right:0}.teacher-table .is-end{text-align:right}.teacher-task-table tbody>tr>:last-child,.teacher-task-table thead th:last-child{text-align:right}.teacher-task-num{width:4.5rem;font-weight:800}td.teacher-task-num{font-family:var(--font-display);font-size:var(--fs-lead)}.teacher-task-cell-label{display:none}.teacher-task-who{font-weight:700}.teacher-task-who,.teacher-task-voice{white-space:nowrap}.teacher-task-person{display:flex;align-items:center;gap:var(--sp-5);min-width:0}.teacher-task-name{min-width:0;overflow:hidden;text-overflow:ellipsis}.teacher-initials,.teacher-task-avatar{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:var(--r-pill);background:var(--accent);color:var(--ink-fg);font-size:var(--fs-2xs);font-weight:800;letter-spacing:.02em}.teacher-initials--1,.teacher-task-avatar--1{background:var(--accent-2)}.teacher-initials--2,.teacher-task-avatar--2{background:var(--good)}.teacher-initials--3,.teacher-task-avatar--3{background:var(--accent-3)}.teacher-initials--4,.teacher-task-avatar--4{background:var(--warn);color:var(--warn-ink)}.teacher-initials--lg{width:56px;height:56px;font-size:var(--fs-lead)}.teacher-pill,.teacher-task-pill{display:inline-block;padding:var(--sp-2) var(--sp-5);border-radius:var(--r-pill);background:var(--surface-2);color:var(--text);font-size:var(--fs-sm);font-weight:800;white-space:nowrap}.teacher-pill--ok,.teacher-task-pill--delivered,.teacher-task-pill--late{background:color-mix(in srgb,var(--good) 16%,var(--surface));color:color-mix(in srgb,var(--good) 70%,var(--text))}.teacher-pill--todo,.teacher-task-pill--toGrade{background:color-mix(in srgb,var(--accent) 13%,var(--surface));color:var(--bad)}.teacher-pill--warn{background:color-mix(in srgb,var(--warn) 30%,var(--surface));color:var(--warn-ink)}.teacher-pill--link{position:relative;display:inline-flex;gap:var(--sp-1);align-items:center;padding-inline-end:var(--sp-3);text-decoration:none;cursor:pointer;transition-property:background-color,transform;transition-duration:.15s;transition-timing-function:ease-out}.teacher-pill--link>svg:last-child{transform:rotate(-90deg)}.teacher-pill--link:after{content:"";position:absolute;top:-6px;right:0;bottom:-6px;left:0}td.teacher-cell>.teacher-pill--link{display:inline-flex}.teacher-pill--link.teacher-pill--todo:hover{background:color-mix(in srgb,var(--accent) 24%,var(--surface))}.teacher-pill--link:active{transform:scale(.96)}.teacher-pill--link:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.teacher-task-pill--overdue{color:var(--bad)}.teacher-task-none,.teacher-task-wait{color:var(--muted)}.teacher-task-act{width:1%;white-space:nowrap}.teacher-row-action,.teacher-task-action{min-height:44px;min-width:44px;padding:0 var(--sp-4);border:0;border-radius:var(--r-pill);background:transparent;color:var(--accent);font:inherit;font-weight:800;cursor:pointer;transition-property:background-color,transform;transition-duration:.15s;transition-timing-function:ease-out}.teacher-row-action:hover:not(:disabled),.teacher-task-action:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 9%,transparent)}.teacher-row-action:active:not(:disabled),.teacher-task-action:active:not(:disabled){transform:scale(.96)}.teacher-row-action:focus-visible,.teacher-task-action:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.teacher-row-action:disabled,.teacher-task-action:disabled{color:var(--muted);cursor:default}.teacher-row-actions>.teacher-row-action:not(:first-child){color:var(--text)}.teacher-row-actions>.teacher-row-action:not(:first-child):hover:not(:disabled){background:color-mix(in srgb,var(--text) 7%,transparent)}.teacher-row-actions>.teacher-row-action:not(:first-child):disabled{color:var(--muted)}.teacher-row-action--quiet,.teacher-task-action--view{font-weight:700}.teacher-oral{display:inline-flex;align-items:center;gap:var(--sp-5);vertical-align:middle}.teacher-oral audio{display:none}.teacher-oral-play{position:relative;flex:none;display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:var(--r-pill);background:var(--accent-2);color:var(--ink-fg);cursor:pointer;transition-property:transform,opacity;transition-duration:.15s;transition-timing-function:ease-out}.teacher-oral-play:before{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px}.teacher-oral-play:active:not(:disabled){transform:scale(.94)}.teacher-oral-play:focus-visible{outline:2px solid var(--accent-2);outline-offset:3px}.teacher-oral-play:disabled{opacity:.5;cursor:progress}.teacher-oral[data-playing=false] .teacher-oral-play svg{margin-left:2px}.teacher-oral-play--retry{background:var(--surface-2);color:var(--text)}.teacher-oral-failed{color:var(--bad);font-size:var(--fs-sm)}.teacher-oral-wave{display:inline-flex;align-items:center;gap:2px;height:24px}.teacher-oral-wave i{width:3px;height:calc(var(--h) * 100%);border-radius:var(--r-pill);background:var(--accent-2);transition:opacity .15s ease-out}.teacher-oral[data-playing=true] .teacher-oral-wave i:not(.teacher-oral-done){opacity:.35}.teacher-oral-time{color:var(--muted);font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.teacher-task-review{display:grid;gap:var(--sp-5);padding-top:var(--sp-6);border-top:1px solid var(--line);scroll-margin-top:var(--sp-8)}.teacher-task-review-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-4)}.teacher-task-review-head h3,.teacher-task-review-head h4{margin:0}.teacher-task-page .teacher-table-wrap{container-type:inline-size}.teacher-task-page .teacher-table-wrap>.teacher-table{table-layout:fixed;font-size:var(--fs-base)}.teacher-task-page .teacher-table-wrap>.teacher-table>thead th{padding:var(--sp-5) var(--sp-4);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:var(--ls-wide)}.teacher-task-page .teacher-table-wrap>.teacher-table>thead [data-column=due]{width:7.5rem}.teacher-task-page .teacher-table-wrap>.teacher-table>thead [data-column=delivered]{width:6.5rem}.teacher-task-page .teacher-table-wrap>.teacher-table>thead [data-column=state]{width:8.5rem}.teacher-task-page .teacher-table-wrap>.teacher-table>thead [data-column=actions]{width:12rem}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr:not(.teacher-task-expand)>*{padding:var(--sp-5) var(--sp-4);font-weight:var(--fw-regular)}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr:not(.teacher-task-expand){scroll-margin-top:var(--sp-8)}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr:not(.teacher-task-expand):hover>*{background:color-mix(in srgb,var(--surface-2) 35%,var(--surface))}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr[data-open=true]>*{border-bottom-color:transparent;background:var(--surface-2)}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr[data-open=true]>:first-child{border-radius:var(--r-sm) 0 0 0}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr[data-open=true]>:last-child{border-radius:0 var(--r-sm) 0 0}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr[data-open=true] .teacher-kpi-bar{background:var(--surface)}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr.teacher-task-expand>td{padding:0 var(--sp-4) var(--sp-5);border-radius:0 0 var(--r-sm) var(--r-sm);background:var(--surface-2)}.teacher-task-page .teacher-table-wrap>.teacher-table .teacher-task-class{display:block;width:fit-content;min-height:var(--sp-8);color:var(--muted);font-size:var(--fs-sm);font-weight:var(--fw-regular);line-height:var(--lh-base);overflow-wrap:anywhere;text-decoration:underline;text-decoration-color:transparent}.teacher-task-page .teacher-table-wrap>.teacher-table .teacher-task-class:hover{text-decoration-color:currentColor}.teacher-task-page .teacher-table-wrap>.teacher-table .teacher-task-class:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.teacher-task-page .teacher-table-wrap>.teacher-table .teacher-task-name-cell{display:flex;align-items:center;gap:var(--sp-3);min-width:0}.teacher-task-page .teacher-table-wrap>.teacher-table .teacher-task-title{min-width:0;font-family:var(--font-body);font-size:var(--fs-base);font-weight:var(--fw-heavy);line-height:var(--lh-snug);letter-spacing:var(--ls-normal);text-wrap:pretty}.teacher-task-page .teacher-table-wrap>.teacher-table .teacher-ai-badge{padding:var(--sp-1) var(--sp-3);border:1px solid var(--line);border-radius:var(--r-xs);background:transparent;color:var(--muted);font-size:var(--fs-2xs);font-weight:var(--fw-bold);line-height:var(--lh-snug);letter-spacing:var(--ls-wide)}.teacher-task-page .teacher-table-wrap>.teacher-table .teacher-work-nowrap{font-size:var(--fs-sm)}.teacher-task-page .teacher-table-wrap>.teacher-table [data-state=pastDue] [data-column=due] time{color:var(--bad);font-weight:var(--fw-bold)}.teacher-task-page .teacher-table-wrap>.teacher-table .teacher-task-progress{width:100%;min-width:0;max-width:6rem;gap:var(--sp-3);font-size:var(--fs-sm);font-weight:var(--fw-bold)}.teacher-task-page .teacher-table-wrap>.teacher-table :is([data-state=open],[data-state=noStudents]) .teacher-pill{padding-inline:0;background:transparent;color:var(--muted);font-weight:var(--fw-semibold)}.teacher-task-page .teacher-table-wrap>.teacher-table .teacher-row-actions{display:flex;flex-wrap:nowrap;justify-content:flex-end;gap:var(--sp-1)}.teacher-task-page .teacher-table-wrap>.teacher-table .teacher-row-action{min-height:var(--size-tap);padding-inline:var(--sp-4);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--muted);white-space:nowrap}.teacher-task-page .teacher-table-wrap>.teacher-table [data-testid=teacher-task-toggle]{padding-inline:var(--sp-5);border:1px solid var(--line);border-radius:var(--r-sm);color:var(--text);background:var(--surface);font-weight:var(--fw-bold)}.teacher-task-page .teacher-table-wrap>.teacher-table [data-testid=teacher-task-toggle]:hover{border-color:var(--muted);background:var(--surface-2)}.teacher-task-page .teacher-table-wrap>.teacher-table [data-testid=teacher-task-toggle][aria-expanded=true]{border-color:var(--muted)}.teacher-task-page .teacher-table-wrap>.teacher-table [data-state=toGrade] [data-testid=teacher-task-toggle]{border-color:var(--accent);color:var(--accent)}.teacher-task-title{display:inline-flex;align-items:center;gap:var(--sp-2);min-height:var(--sp-9);margin:0;padding:0;border:0;background:none;color:var(--text);font:inherit;font-weight:var(--fw-heavy);text-align:start;cursor:pointer}.teacher-task-title svg{flex:none;color:var(--muted);transition:transform .15s ease-out}.teacher-task-title[aria-expanded=true] svg{transform:rotate(180deg)}.teacher-task-title:hover{text-decoration:underline;text-underline-offset:3px}.teacher-task-title:focus-visible{border-radius:var(--r-xs);outline:2px solid var(--accent-2);outline-offset:2px}.teacher-task-card--bare{padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}.teacher-task-list-skeleton{display:grid}.teacher-task-placeholder{display:grid;grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr));align-items:center;gap:var(--sp-8);padding:var(--sp-8) var(--sp-4);border-bottom:1px solid var(--line)}.teacher-task-placeholder span{height:var(--sp-6);border-radius:var(--r-xs);background:var(--surface-2)}.teacher-task-placeholder span:first-child{height:var(--sp-10)}.teacher-task-placeholder:last-child{border-bottom:0}.teacher-task-skeleton{min-height:240px;background:linear-gradient(90deg,var(--surface) 30%,var(--surface-2) 50%,var(--surface) 70%) 0 0/300% 100%;animation:teacher-task-shimmer 1.4s ease-in-out infinite}@keyframes teacher-task-shimmer{to{background-position:-150% 0}}.teacher-task-more{justify-self:start;margin-top:var(--sp-5)}@media(prefers-reduced-motion:reduce){.teacher-task-skeleton{animation:none}.teacher-task-toggle svg,.teacher-task-title svg,.teacher-oral-wave i,.teacher-oral-play,.teacher-row-action,.teacher-task-action{transition:none}}@media(max-width:640px){.teacher-task-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.teacher-task-table tbody,.teacher-task-table tbody>tr{display:block}.teacher-task-table tbody>tr{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"who state" "mark act" "voice voice";align-items:center;gap:var(--sp-2) var(--sp-4);padding:var(--sp-5) 0;border-bottom:1px solid var(--line)}.teacher-task-table tbody>tr:last-child{border-bottom:0}.teacher-task-table tbody>tr>*{padding:0;border-bottom:0}th.teacher-task-who{grid-area:who}.teacher-task-state{grid-area:state;justify-self:end}.teacher-task-table td.teacher-task-num{grid-area:mark;width:auto}.teacher-task-voice{grid-area:voice}.teacher-task-act{grid-area:act;width:auto}.teacher-task-voice:has(.teacher-task-none){display:none}.teacher-task-cell-label{display:inline;margin-right:var(--sp-3);font-family:var(--font-body);color:var(--muted);font-size:var(--fs-2xs);letter-spacing:.1em;text-transform:uppercase}.teacher-task-act:empty{display:none}.teacher-task-card--bare{padding:var(--sp-4)}}@container (max-width: 51.99rem){.teacher-task-page .teacher-table-wrap>.teacher-table>thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody{display:block}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr:not(.teacher-task-expand){display:grid;grid-template-columns:minmax(0,1fr) 7rem 11rem;grid-template-areas:"task task actions" "due delivered state";align-items:center;gap:var(--sp-5) var(--sp-6);padding:var(--sp-6) var(--sp-4);border-bottom:1px solid var(--line)}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr:not(.teacher-task-expand)>*{min-width:0;padding:0;border:0;background:none;border-radius:0}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr:not(.teacher-task-expand)>[data-column=task]{grid-area:task;padding-right:var(--sp-4)}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr:not(.teacher-task-expand)>[data-column=due]{grid-area:due}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr:not(.teacher-task-expand)>[data-column=delivered]{grid-area:delivered}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr:not(.teacher-task-expand)>[data-column=state]{grid-area:state;justify-self:start}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr:not(.teacher-task-expand)>[data-column=actions]{grid-area:actions}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr:not(.teacher-task-expand):hover{background:color-mix(in srgb,var(--surface-2) 35%,var(--surface))}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr:not(.teacher-task-expand):hover>*{background:none}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr[data-open=true]{border-bottom:0;border-radius:var(--r-sm) var(--r-sm) 0 0;background:var(--surface-2)}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr:not(.teacher-task-expand):last-child{border-bottom:0}.teacher-task-page .teacher-table-wrap>.teacher-table .teacher-row-actions{flex-wrap:nowrap}.teacher-task-page .teacher-table-wrap>.teacher-table .teacher-task-title{min-height:var(--size-tap)}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr:not(.teacher-task-expand) .teacher-task-cell-label{display:block;margin:0 0 var(--sp-2);color:var(--muted);font-family:var(--font-body);font-size:var(--fs-xs);font-weight:var(--fw-regular);letter-spacing:var(--ls-normal);text-transform:none}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr.teacher-task-expand{display:block;padding:0 var(--sp-3) var(--sp-3);border-radius:0 0 var(--r-sm) var(--r-sm);background:var(--surface-2)}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr.teacher-task-expand>td{display:block;padding:0}}@container (max-width: 35.99rem){.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr:not(.teacher-task-expand){grid-template-columns:minmax(0,1fr) max-content;grid-template-areas:"task task" "due delivered" "state actions";gap:var(--sp-4) var(--sp-5);padding:var(--sp-6) var(--sp-2)}.teacher-task-page .teacher-table-wrap>.teacher-table .teacher-row-actions{justify-content:flex-end;flex-wrap:nowrap}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr:not(.teacher-task-expand)>[data-column=task]{padding-right:0}.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr:not(.teacher-task-expand)>[data-column=state]{text-align:start}.teacher-task-page .teacher-table-wrap>.teacher-table [data-column=state] .teacher-pill{white-space:normal}.teacher-task-page .teacher-table-wrap>.teacher-table .teacher-task-class{min-height:var(--sp-8)}.teacher-task-page .teacher-table-wrap>.teacher-table .teacher-task-progress{max-width:6rem}}@container (max-width: 18rem){.teacher-task-page .teacher-table-wrap>.teacher-table>tbody>tr:not(.teacher-task-expand){grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"task task" "due delivered" "state state" "actions actions"}.teacher-task-page .teacher-table-wrap>.teacher-table .teacher-row-actions{justify-content:flex-start}}@media(forced-colors:active){.teacher-task-page .teacher-kpi-bar{border:1px solid CanvasText}.teacher-task-page .teacher-kpi-bar>span{background:Highlight;forced-color-adjust:none}}.teacher-spots{display:grid;gap:var(--sp-4);min-width:0;margin-top:var(--sp-4);padding-top:var(--sp-7);border-top:1px solid var(--line)}.teacher-spots-head{display:grid;gap:var(--sp-2);min-width:0;overflow-wrap:anywhere}.teacher-spots-clean{margin:0;text-wrap:pretty}.teacher-spots-prompt{font-size:var(--fs-lead);overflow-wrap:anywhere}.teacher-spots-meta{margin:0;color:var(--muted);font-size:var(--fs-sm);overflow-wrap:anywhere;text-wrap:pretty}.teacher-spots-answer{color:var(--text);font-weight:var(--fw-bold)}.teacher-spots-practise{justify-self:start}.teacher-spots-practise[aria-disabled=true]{cursor:progress;opacity:.6}.teacher-spots-practised,.teacher-spots-practise-error{margin:0;font-size:var(--fs-sm);overflow-wrap:anywhere;text-wrap:pretty}.teacher-spots-practised{color:var(--text)}.teacher-spots-practised:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.teacher-spots-names{display:flex;flex-wrap:wrap;column-gap:var(--sp-6);margin:0;padding:0;list-style:none}.teacher-spots-names>li{min-width:0;max-width:100%}.teacher-spots-name,.teacher-spots-more{max-width:100%;font-size:var(--fs-base);text-align:start;overflow-wrap:anywhere;touch-action:manipulation}.teacher-spots-name:hover,.teacher-spots-more:hover{text-decoration:underline;text-underline-offset:3px}.teacher-spots-casi{color:var(--muted);font-weight:var(--fw-semibold)}.teacher-spots-more{color:var(--muted)}.teacher-roles-badge{display:inline-grid;place-items:center;width:1.6em;height:1.6em;margin-right:var(--sp-2);border-radius:var(--r-pill);background:var(--accent);color:var(--ink-fg);font-weight:var(--fw-heavy);line-height:var(--lh-solid)}[data-role=B] .teacher-roles-badge{background:var(--accent-2)}.teacher-role-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:var(--sp-4)}.teacher-role-card,.teacher-role-check{display:grid;gap:var(--sp-3);min-width:0;margin:0;padding:var(--sp-4);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--r-sm);background:var(--surface)}.teacher-role-card legend,.teacher-role-check legend{display:inline-flex;align-items:center;padding:0 var(--sp-2);font-weight:var(--fw-heavy)}.teacher-role-card textarea,.teacher-role-card input,.teacher-role-card select,.teacher-role-check textarea,.teacher-role-check input,.teacher-role-check select{box-sizing:border-box;width:100%}.teacher-role-card[data-role=B]{border-left-color:var(--accent-2)}.teacher-role-check{border-left-color:var(--ink)}@media(max-width:599.98px){.teacher-role-card,.teacher-role-check{padding:0 0 var(--sp-2);border:0;border-top:3px solid var(--accent);border-radius:0;background:none}.teacher-role-card legend,.teacher-role-check legend{float:left;width:100%;padding:var(--sp-3) 0 0;color:var(--accent)}.teacher-role-card .teacher-field input,.teacher-role-card .teacher-field select,.teacher-role-card .teacher-field textarea,.teacher-role-check .teacher-field input,.teacher-role-check .teacher-field select,.teacher-role-check .teacher-field textarea{border-color:var(--muted);background:var(--surface)}.teacher-role-card[data-role=B]{border-top-color:var(--accent-2)}.teacher-role-card[data-role=B] legend{color:var(--accent-2)}.teacher-role-check{border-top-color:var(--ink)}.teacher-role-check legend{color:var(--ink)}.teacher-role-cards{gap:var(--sp-6)}.teacher-exercise[data-kind=roles]{padding:var(--sp-4)}}.teacher-roles-stage{display:grid;gap:var(--sp-5);margin-top:var(--sp-4);padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg);color:var(--ink);font-size:var(--fs-stage-min);line-height:var(--lh-snug)}.teacher-roles-stage:fullscreen{align-content:space-between;padding:var(--sp-10);border:0;border-radius:0}.teacher-roles-steps{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.teacher-roles-step{display:inline-flex;align-items:center;gap:var(--sp-2);min-height:var(--size-tap);padding:0 var(--sp-4);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);color:var(--ink);font:inherit;font-size:var(--fs-lead);font-weight:var(--fw-semibold);cursor:pointer;transition-property:background-color,border-color,color;transition-duration:var(--dur-fast, .15s)}.teacher-roles-step[aria-current=step]{border-color:var(--ink);background:var(--ink);color:var(--ink-fg)}.teacher-roles-step:focus-visible{outline:3px solid var(--accent-2);outline-offset:2px}.teacher-roles-step-n{font-variant-numeric:tabular-nums;opacity:.7}.teacher-roles-screen{display:grid;align-content:center;gap:var(--sp-4);min-height:12em;max-width:40ch;margin:0 auto;text-align:center}.teacher-roles-screen p{margin:0}.teacher-roles-eyebrow{display:inline-flex;align-items:center;justify-content:center;color:var(--accent);font-weight:var(--fw-heavy);letter-spacing:var(--ls-wide);text-transform:uppercase}.teacher-roles-card[data-role=B] .teacher-roles-eyebrow{color:var(--accent-2)}.teacher-roles-card{display:grid;gap:var(--sp-3)}.teacher-roles-name{font-family:var(--font-display);font-size:var(--fs-stage-question);line-height:var(--lh-tight);text-wrap:balance}.teacher-roles-goal-label{color:var(--muted);font-weight:var(--fw-semibold)}.teacher-roles-lead{font-size:var(--fs-stage-answer);font-weight:var(--fw-semibold);text-wrap:balance}.teacher-roles-note{color:var(--muted);text-wrap:pretty}.teacher-roles-options{display:grid;gap:var(--sp-3);margin:0;padding:0;list-style:none;text-align:left}.teacher-roles-options li{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border:2px solid var(--line);border-radius:var(--r-sm);background:var(--surface);transition-property:background-color,border-color,color;transition-duration:var(--dur-fast, .15s)}.teacher-roles-options li.teacher-roles-right{border-color:var(--ink);background:var(--ink);color:var(--ink-fg)}.teacher-roles-letter{font-weight:var(--fw-heavy)}.teacher-roles-gap{display:inline-block;min-width:4ch;margin:0 .25ch;border-bottom:3px solid var(--ink)}.teacher-roles-key{padding:var(--sp-3) var(--sp-4);border-radius:var(--r-sm);background:var(--warn);color:var(--warn-ink)}.teacher-roles-controls{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3)}.teacher-roles-back.teacher-button--ghost{padding:var(--sp-3) var(--sp-5);border-color:var(--muted);font-size:var(--fs-lead)}.teacher-roles-go.teacher-button{border-color:var(--ink);background:var(--ink);color:var(--ink-fg);font-size:var(--fs-lead)}.teacher-roles-go.teacher-button:hover{background:var(--ink);filter:brightness(1.15)}.teacher-roles-tool{display:inline-grid;place-items:center;width:var(--size-tap);height:var(--size-tap);margin-left:auto;padding:0;border:1px solid var(--muted);border-radius:var(--r-pill);background:var(--surface);color:var(--ink);cursor:pointer;transition-property:background-color,color;transition-duration:var(--dur-fast, .15s)}.teacher-roles-tool:hover{background:var(--surface-2)}.teacher-roles-tool:focus-visible{outline:3px solid var(--accent-2);outline-offset:2px}.teacher-roles-hint{margin:calc(-1 * var(--sp-3)) 0 0;color:var(--muted);font-size:var(--fs-sm);line-height:var(--lh-snug)}.teacher-roles-stage:fullscreen .teacher-roles-hint{display:none}@media(prefers-reduced-motion:reduce){.teacher-roles-step,.teacher-roles-tool,.teacher-roles-options li{transition:none}}.teacher-panel-page{display:grid;gap:var(--sp-8);min-width:0}.teacher-panel-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--sp-5) var(--sp-8);position:static;margin:0;padding:0;border:0;background:none;-webkit-backdrop-filter:none;backdrop-filter:none}.teacher-panel-titles{flex:1 1 26rem;display:grid;gap:var(--sp-4);min-width:0}.teacher-main h1.teacher-panel-title{margin:0;font-family:var(--font-display);font-size:2rem;line-height:1.15;overflow-wrap:anywhere;text-wrap:balance}.teacher-panel-lead{max-width:65ch;margin:0;color:var(--muted);text-wrap:pretty}.teacher-facts{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3);margin:0;padding:0;list-style:none}.teacher-fact.teacher-fact--action{position:relative;display:inline-flex;align-items:center;gap:var(--sp-2);border-color:var(--accent);color:var(--accent);font-family:inherit;font-weight:800;line-height:inherit;cursor:pointer;transition-property:background-color,transform;transition-duration:var(--dur-base);transition-timing-function:ease-out}.teacher-fact.teacher-fact--action:before{content:"";position:absolute;top:-9px;right:-2px;bottom:-9px;left:-2px}.teacher-fact.teacher-fact--action:hover{background:var(--surface-2)}.teacher-fact.teacher-fact--action:active{transform:scale(.97)}.teacher-fact.teacher-fact--action:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}@media(prefers-reduced-motion:reduce){.teacher-fact.teacher-fact--action{transition:none}}.teacher-panel-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-4)}.teacher-section{display:grid;gap:var(--sp-6);min-width:0;padding:var(--sp-8);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.teacher-section-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-4) var(--sp-6);min-height:var(--size-md)}.teacher-main .teacher-section-label{margin:0;color:var(--muted);font-family:var(--font-body);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.teacher-table-wrap{overflow-x:auto}.teacher-rubric-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:var(--sp-3);margin:0;padding:0;list-style:none}.teacher-rubric-tile{padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2);font-size:.875rem}.teacher-rubric-label{margin-inline-end:var(--sp-2);color:var(--muted);font-weight:700}.teacher-segmented{display:inline-flex;flex-wrap:wrap;gap:var(--sp-3)}.teacher-segment{min-height:var(--size-tap);padding:0 var(--sp-6);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);color:var(--text);font:inherit;font-size:var(--fs-sm);font-weight:800;cursor:pointer;transition-property:background-color,color,border-color;transition-duration:var(--dur-base);transition-timing-function:ease-out}.teacher-segment:hover{background:var(--surface-2)}.teacher-segment[aria-checked=true],.teacher-segment[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:var(--ink-fg)}.teacher-segment:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.teacher-input-field{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sp-3);min-width:0}.teacher-input-label{font-weight:800}.teacher-input-help{margin:0;color:var(--muted);font-size:var(--fs-sm)}.teacher-input-error{display:flex;align-items:center;gap:var(--sp-3);margin:0;color:var(--bad);font-size:var(--fs-sm);font-weight:800}.teacher-page .teacher-control{width:100%;min-height:var(--size-tap);padding:var(--sp-4) var(--sp-5);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--text);font:inherit;font-variant-numeric:tabular-nums}.teacher-page .teacher-control:hover:not(:disabled){border-color:var(--muted)}.teacher-page .teacher-control:focus-visible{outline:2px solid var(--accent-2);outline-offset:1px}.teacher-page .teacher-control[aria-invalid=true]{border-color:var(--bad)}.teacher-page .teacher-control:disabled{background:var(--surface-2);color:var(--muted);cursor:not-allowed}.teacher-select{position:relative;display:grid}.teacher-select select.teacher-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:var(--sp-10);cursor:pointer}.teacher-select select.teacher-control:disabled{cursor:not-allowed}.teacher-select:has(select:disabled):after{color:var(--muted)}.teacher-select:after{content:"";position:absolute;top:50%;right:var(--sp-6);width:var(--sp-4);height:var(--sp-4);border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-70%) rotate(45deg);pointer-events:none}.teacher-check{display:inline-flex;align-items:center;gap:var(--sp-4);min-height:var(--size-tap);font-weight:700;cursor:pointer}.teacher-check input{width:var(--sp-7);height:var(--sp-7);margin:0;accent-color:var(--ink);cursor:pointer}.teacher-check input:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.teacher-filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-4) var(--sp-5)}.teacher-filter-bar>.teacher-select{flex:0 1 12rem}.teacher-filter-bar .teacher-input-field{margin-left:auto}.teacher-search{position:relative;display:flex;flex:1 1 18rem;align-items:center;min-width:0}.teacher-search>svg{position:absolute;left:var(--sp-5);color:var(--muted);pointer-events:none}.teacher-search .teacher-control{padding-left:var(--sp-11)}.teacher-filter-more{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:var(--sp-5);padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.teacher-filter-chips{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3) var(--sp-4);margin:0;padding:0;list-style:none}.teacher-filter-chip{display:inline-flex;align-items:center;gap:var(--sp-3);max-width:24rem;min-height:var(--size-tap);padding:0 var(--sp-5);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);color:var(--text);font:inherit;font-size:.875rem;font-weight:600;cursor:pointer;transition-property:border-color,background-color;transition-duration:var(--dur-fast)}.teacher-filter-chip:hover{border-color:var(--muted);background:var(--surface-2)}.teacher-filter-chip:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}@supports (appearance: base-select){.teacher-select--list select.teacher-control{-webkit-appearance:base-select;-moz-appearance:base-select;appearance:base-select}.teacher-select--list select.teacher-control::picker-icon{display:none}.teacher-select--list select.teacher-control::picker(select){-webkit-appearance:base-select;-moz-appearance:base-select;appearance:base-select;max-height:18rem;margin-top:var(--sp-2);padding:var(--sp-2);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);box-shadow:var(--shadow)}.teacher-select--list select.teacher-control option{min-height:var(--size-tap);padding:var(--sp-3) var(--sp-5);border-radius:var(--r-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.teacher-select--list select.teacher-control option:hover,.teacher-select--list select.teacher-control option:focus-visible{background:var(--surface-2)}.teacher-select--list select.teacher-control option:checked{font-weight:800}.teacher-select--list select.teacher-control option::checkmark{display:none}}.teacher-exercise-cards{display:grid;gap:var(--sp-5);margin:0;padding:0;list-style:none}.teacher-exercise-card{display:grid;gap:var(--sp-4);padding:var(--sp-6);border-radius:var(--r-sm);background:var(--surface-2)}.teacher-exercise-card p{margin:0}.teacher-main .teacher-exercise-card-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-4);margin:0;font-size:1rem}.teacher-exercise-num{display:inline-grid;place-items:center;width:var(--sp-9);height:var(--sp-9);border-radius:var(--r-pill);background:var(--ink);color:var(--ink-fg);font-weight:800;font-variant-numeric:tabular-nums}.teacher-exercise-rows{display:grid;gap:var(--sp-3);margin:0;padding-left:var(--sp-6)}.teacher-empty-state{display:grid;justify-items:center;gap:var(--sp-5);padding:var(--sp-8) var(--sp-6);text-align:center}.teacher-empty-state img{width:var(--size-2xl);height:var(--size-2xl)}.teacher-empty-state--compact{gap:var(--sp-3);padding:var(--sp-4) var(--sp-4)}.teacher-empty-state--compact img{width:var(--size-xl);height:var(--size-xl)}.teacher-empty-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--sp-4)}.teacher-empty-title{margin:0;font-family:var(--font-display);font-size:var(--fs-lead)}.teacher-empty-line{max-width:48ch;margin:0;color:var(--muted);text-wrap:pretty}.teacher-help-slot{margin-bottom:var(--sp-8)}.teacher-help-slot:empty{display:none}.teacher-state{justify-items:center;gap:var(--sp-5);margin-top:var(--sp-8);padding:var(--sp-10) var(--sp-8);text-align:center}.teacher-state-art{width:var(--size-2xl);height:var(--size-2xl)}.teacher-state-line{max-width:48ch;margin:0;color:var(--muted);text-wrap:pretty}.teacher-state-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--sp-4);margin-top:var(--sp-3)}.teacher-row-actions{position:relative;display:inline-flex;align-items:center;justify-content:flex-end;gap:var(--sp-2)}.teacher-row-action{display:inline-flex;align-items:center;gap:var(--sp-2);text-decoration:none}.teacher-row-menu{position:fixed;inset:auto;z-index:var(--z-popover);display:grid;min-width:12rem;margin:0;padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);box-shadow:var(--shadow);list-style:none}.teacher-row-menu button{width:100%;min-height:var(--size-tap);padding:0 var(--sp-5);border:0;border-radius:var(--r-xs);background:transparent;color:var(--text);font:inherit;font-weight:700;text-align:left;cursor:pointer}.teacher-row-menu button:hover,.teacher-row-menu button:focus-visible{background:var(--surface-2);outline:none}.teacher-row-menu .is-danger{color:var(--bad)}.teacher-alert{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3) var(--sp-5);margin:0;padding:var(--sp-4) var(--sp-5);border:1px solid color-mix(in srgb,var(--bad) 32%,var(--surface));border-radius:var(--r-sm);background:color-mix(in srgb,var(--accent) 7%,var(--surface));color:var(--text);font-weight:600;text-wrap:pretty}.teacher-alert>svg{flex:none;color:var(--bad)}.teacher-alert-text{flex:1 1 16rem;min-width:0}.teacher-done{display:flex;align-items:center;gap:var(--sp-3);margin:0;padding:var(--sp-4) var(--sp-5);border:1px solid color-mix(in srgb,var(--good) 32%,var(--surface));border-radius:var(--r-sm);background:color-mix(in srgb,var(--good) 8%,var(--surface));color:var(--text);font-weight:600}.teacher-done>svg{flex:none;color:var(--good)}.teacher-button.teacher-button--danger-quiet{border:1.5px solid var(--bad);background:transparent;color:var(--bad)}.teacher-button.teacher-button--danger-quiet:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.teacher-section--danger{border-color:color-mix(in srgb,var(--bad) 30%,var(--surface))}.teacher-consequences{display:grid;margin:0;padding:0;list-style:none;color:var(--muted);font-size:var(--fs-sm);text-wrap:pretty}.teacher-consequences li{padding:var(--sp-3) 0;border-top:1px solid var(--line)}.teacher-profile{display:flex;align-items:center;gap:var(--sp-5);min-width:0}.teacher-profile .teacher-initials{width:var(--size-tap);height:var(--size-tap);font-size:var(--fs-lead)}.teacher-profile-text{display:grid;gap:var(--sp-1);min-width:0;overflow-wrap:anywhere}.teacher-profile-text strong{font-size:var(--fs-lead)}.teacher-form-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--sp-4)}.teacher-form-row>:first-child{flex:1 1 18rem;min-width:0}.teacher-auth{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);width:min(100%,920px);margin:var(--sp-8) auto;overflow:hidden;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow)}.teacher-auth-brand{display:grid;align-content:center;gap:var(--sp-5);padding:var(--sp-9);background:color-mix(in srgb,var(--accent-2) 9%,var(--surface))}.teacher-auth-brand img{width:160px;height:160px}.teacher-auth-kicker{margin:0;color:var(--muted);font-size:var(--fs-sm);font-weight:800;letter-spacing:.08em;text-transform:uppercase}.teacher-main .teacher-auth-brand h1{margin:0;font-family:var(--font-display);font-size:2rem;line-height:1.15;text-wrap:balance}.teacher-auth-brand p{max-width:40ch;margin:0;color:var(--muted);text-wrap:pretty}.teacher-auth-body{display:grid;align-content:center;gap:var(--sp-5);min-width:0;padding:var(--sp-8)}.teacher-auth-body>p{margin:0}@media(max-width:760px){.teacher-auth{grid-template-columns:minmax(0,1fr)}.teacher-auth-brand img{width:96px;height:96px}}.teacher-catalogue-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-5)}.teacher-catalogue-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:var(--sp-6)}@media(prefers-reduced-motion:reduce){.teacher-segment,.teacher-button{transition:none}}.teacher-work-purpose{max-width:100ch;margin:calc(var(--sp-2) * -1) 0 0;font-size:.875rem;text-wrap:pretty}.teacher-work-panel{display:grid;gap:var(--sp-5);min-width:0}.teacher-work-title{font-weight:800;text-wrap:pretty}.teacher-work-progress{display:grid;gap:var(--sp-2);min-width:8rem;font-variant-numeric:tabular-nums}.teacher-work-sub{display:block;margin-top:var(--sp-1);color:var(--muted);font-size:.875rem;white-space:nowrap}.teacher-work-meter{display:flex;align-items:center;gap:var(--sp-3);font-weight:800}.teacher-work-meter .teacher-kpi-bar{flex:1 1 auto;min-width:4rem}.teacher-work-sent{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-3)}.teacher-work-sent-link{text-align:start;text-wrap:pretty}.teacher-work-detail{padding-top:var(--sp-5);border-top:1px solid var(--line)}.teacher-work-panel :is(.teacher-row-action,.teacher-work-nowrap){white-space:nowrap}.teacher-section-titles{display:grid;gap:var(--sp-2);min-width:0}.teacher-main .teacher-section-lead{max-width:60ch;margin:0;color:var(--muted);text-wrap:pretty}.teacher-section-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sp-6);margin-block:var(--sp-8)}.teacher-section-grid p{margin:0}.teacher-section-grid>.teacher-section{align-content:start}@media(min-width:1100px){.teacher-section-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1100px){.teacher-section-grid.teacher-week-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}}@media(min-width:1100px){.teacher-section-grid.teacher-week-grid:has(>[data-span=tall]){grid-template-rows:auto 1fr}.teacher-section-grid.teacher-week-grid>[data-span=tall]{grid-row:span 2}.teacher-section-grid.teacher-week-grid>[data-place=under]{align-self:start}}.teacher-tool-links{display:grid;margin:0;padding:0;list-style:none}.teacher-tool-links>li+li{border-top:1px solid var(--line)}.teacher-tool-link{display:flex;align-items:center;gap:var(--sp-4);min-height:48px;margin-inline:calc(-1 * var(--sp-3));padding:var(--sp-4) var(--sp-3);border-radius:var(--r-xs);color:var(--text);text-decoration:none;transition-property:background-color;transition-duration:.15s;transition-timing-function:ease-out}.teacher-tool-link>svg{flex:none;margin-left:auto;color:var(--accent-2)}.teacher-tool-link:hover{background:var(--surface-2)}.teacher-tool-link:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}@media(prefers-reduced-motion:reduce){.teacher-tool-link{transition:none}}.teacher-tool-link-text{display:grid;gap:var(--sp-2)}.teacher-tool-link-text>strong{font-weight:800}.teacher-tool-link-text>.teacher-muted{text-wrap:pretty}.teacher-section-grid>[data-span=row]{grid-column:1/-1}.teacher-person-list{display:grid;margin:0;padding:0;list-style:none}.teacher-person-list>li{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3) var(--sp-4);padding-block:var(--sp-4);border-top:1px solid var(--line)}.teacher-person-list>li:first-child{padding-top:0;border-top:0}.teacher-person-end{margin-left:auto}.teacher-section .teacher-goal{max-width:none}.teacher-section-grid+.teacher-section{margin-bottom:var(--sp-8)}.teacher-side-sheet{position:fixed;inset:0 0 0 auto;box-sizing:border-box;width:min(760px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:0;border:0;border-left:1px solid var(--line);background:var(--bg);color:var(--text);box-shadow:var(--shadow-lg);overflow:clip}.teacher-side-sheet[open]{animation:teacher-side-sheet-in .2s ease-out}.teacher-side-sheet.teacher-side-sheet--narrow{width:min(440px,100vw)}.teacher-side-sheet::backdrop{background:color-mix(in srgb,var(--ink) 45%,transparent)}@media(prefers-reduced-motion:reduce){.teacher-side-sheet[open]{animation:none}}@keyframes teacher-side-sheet-in{0%{opacity:0;transform:translate(var(--sp-8))}}.teacher-side-sheet .teacher-side-sheet-form{display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:100%}.teacher-side-sheet .teacher-side-sheet-head,.teacher-side-sheet .teacher-side-sheet-foot{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-4);padding:var(--sp-6) var(--sp-8);background:var(--surface)}.teacher-side-sheet .teacher-side-sheet-head{justify-content:space-between;border-bottom:1px solid var(--line)}.teacher-side-sheet .teacher-side-sheet-head .teacher-icon-button:hover{color:var(--text)}.teacher-side-sheet .teacher-side-sheet-title{margin:0;font-family:var(--font-display);font-size:1.5rem;line-height:1.2;text-wrap:balance}.teacher-side-sheet .teacher-side-sheet-body{display:grid;align-content:start;gap:var(--sp-6);position:relative;padding:var(--sp-8);overflow-y:auto;overscroll-behavior:contain}.teacher-side-sheet .teacher-side-sheet-body>*{margin:0}.teacher-side-sheet .teacher-side-sheet-body :is(input:not([type=checkbox],[type=radio],.teacher-sr),textarea,select){width:100%;background:var(--surface)}.teacher-side-sheet .teacher-side-sheet-body :is(input:not([type=checkbox],[type=radio],.teacher-sr),textarea,select):hover:not(:disabled){border-color:var(--muted)}.teacher-side-sheet .teacher-side-sheet-body :is(input:not([type=checkbox],[type=radio],.teacher-sr),textarea,select):focus-visible{outline:2px solid var(--accent-2);outline-offset:1px}.teacher-side-sheet .teacher-side-sheet-body :is(input:not([type=checkbox],[type=radio],.teacher-sr),textarea,select):disabled{background:var(--surface-2);color:var(--muted);cursor:not-allowed}.teacher-side-sheet .teacher-side-sheet-body .teacher-field{gap:var(--sp-3)}.teacher-side-sheet .teacher-side-sheet-body .teacher-field>span:first-child{font-weight:800}.teacher-side-sheet .teacher-side-sheet-body input[type=date]{max-width:15rem}.teacher-side-sheet .teacher-side-sheet-body input[type=checkbox]{width:var(--sp-7);height:var(--sp-7);accent-color:var(--ink)}.teacher-side-sheet fieldset.teacher-section{margin:0}.teacher-side-sheet fieldset.teacher-section>legend{float:left;width:100%;padding:0;color:var(--muted);font-size:.875rem;font-weight:800;font-variant-caps:all-small-caps;letter-spacing:.08em}.teacher-side-sheet .teacher-exercise{margin:0;border:0;border-radius:var(--r-sm);background:var(--surface-2)}.teacher-side-sheet .teacher-exercise>legend{float:left;width:100%;padding:0}.teacher-side-sheet .teacher-exercise .teacher-exercise{padding:var(--sp-5) 0 0;border-top:1px solid var(--line);border-radius:0}.teacher-side-sheet .teacher-exercise-label,.teacher-side-sheet .teacher-exercise .teacher-exercise>legend{color:var(--muted);font-size:.875rem;font-weight:800;font-variant-caps:all-small-caps;letter-spacing:.08em}.teacher-side-sheet .teacher-side-sheet-foot{justify-content:flex-end;border-top:1px solid var(--line)}.teacher-side-sheet .teacher-side-sheet-foot>:is(.teacher-error,.teacher-side-sheet-option){flex:1 1 100%;margin:0}.teacher-side-sheet .teacher-side-sheet-foot .teacher-button{margin:0}.teacher-side-sheet .teacher-side-sheet-foot>.teacher-error{max-height:30dvh;overflow-y:auto}.teacher-side-sheet .teacher-side-sheet-foot>.teacher-error :is(p,ul){margin:0}.teacher-side-sheet .teacher-side-sheet-option{display:grid;gap:var(--sp-2)}.teacher-side-sheet .teacher-side-sheet-option--action{justify-items:start}.teacher-block{position:relative}.teacher-block>.teacher-block-tools{position:absolute;top:var(--sp-4);right:var(--sp-4);z-index:1}.teacher-block>.teacher-exercise>legend{padding-right:calc(88px + var(--sp-6));min-height:44px}.teacher-material-icon{background:var(--accent-2);color:var(--surface)}.teacher-material-icon svg{display:block}.teacher-material-count{font-variant-numeric:tabular-nums}.teacher-material-text{min-height:9rem;line-height:1.55;resize:vertical}.teacher-material-image{display:grid;place-items:center;min-height:9rem;border:1px dashed var(--line);border-radius:var(--r-sm);background:var(--surface);overflow:hidden}.teacher-material-image img{display:block;max-width:100%;max-height:18rem;object-fit:contain;outline:1px solid rgba(0,0,0,.1);outline-offset:-1px}.teacher-material-audio{display:grid;place-items:center;min-height:6rem;border:1px dashed var(--line);border-radius:var(--r-sm);background:var(--surface)}.teacher-material-audio audio{display:block;width:100%}.teacher-material-audio--ready{min-height:0;padding:var(--sp-3);border-style:solid}.teacher-material-placeholder{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);padding:var(--sp-5);text-align:center;text-wrap:pretty}.teacher-material-times>.teacher-input-field{flex:1 1 10rem}.teacher-material-video{aspect-ratio:16/9;border-radius:var(--r-sm);overflow:hidden;background:var(--ink)}.teacher-material-video iframe{display:block;width:100%;height:100%;border:0}.teacher-material-scene{display:flex;align-items:center;gap:var(--sp-4)}.teacher-material-scene img{width:160px;height:90px;flex:none;border-radius:var(--r-sm);object-fit:cover;outline:1px solid rgba(0,0,0,.1);outline-offset:-1px}.teacher-material-add{display:grid;gap:var(--sp-3)}.teacher-material-pdf-status{display:flex;align-items:center;gap:var(--sp-2);margin:0;font-size:var(--fs-sm);font-variant-numeric:tabular-nums;text-wrap:pretty}.teacher-material-pdf-status .ic{flex:none;color:var(--good)}.teacher-feedback-open{display:flex;align-items:center;gap:var(--sp-4);width:100%;min-height:48px;padding:0 var(--sp-5);border:0;border-radius:var(--r-sm);background:transparent;color:var(--panel-nav-muted);font:inherit;font-weight:700;text-align:start;cursor:pointer;touch-action:manipulation;transition-property:background-color,color;transition-duration:.15s;transition-timing-function:ease-out}.teacher-feedback-open:hover{background:var(--panel-nav-hover);color:var(--panel-nav-fg)}.teacher-dialog.teacher-feedback{width:min(100% - 2 * var(--sp-6),520px);max-height:calc(100dvh - 2 * var(--sp-6));overflow-y:auto}.teacher-dialog.teacher-feedback h2{font-size:1.35rem;text-wrap:balance}.teacher-dialog.teacher-feedback .teacher-button{min-height:48px}.teacher-dialog.teacher-feedback .teacher-dialog-actions{margin-top:var(--sp-2)}.teacher-feedback-form,.teacher-feedback-done{display:grid;gap:var(--sp-5)}.teacher-feedback-form>.teacher-muted,.teacher-feedback-done>.teacher-muted{text-wrap:pretty}.teacher-feedback-types{display:grid;gap:var(--sp-3)}.teacher-feedback-types>.teacher-feedback-label{margin:0}.teacher-feedback-types .teacher-segment{min-height:48px}.teacher-feedback-label{margin-bottom:calc(-1 * var(--sp-3));font-weight:800}.teacher-dialog.teacher-feedback textarea{width:100%;min-height:9rem;box-sizing:border-box;padding:var(--sp-4) var(--sp-5);border:1.5px solid var(--line);border-radius:var(--r-sm);background:var(--bg);color:var(--text);font:inherit;line-height:1.5;resize:vertical}.teacher-dialog.teacher-feedback textarea::placeholder{color:var(--muted)}.teacher-dialog.teacher-feedback textarea:focus-visible{outline:2px solid var(--accent-2);outline-offset:1px;border-color:var(--accent-2)}.teacher-feedback-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-5);margin-top:calc(-1 * var(--sp-3));font-size:.9rem}.teacher-feedback-count{flex:none;color:var(--muted);font-variant-numeric:tabular-nums}.teacher-feedback-error{display:flex;align-items:flex-start;gap:var(--sp-3);margin:0;padding:var(--sp-4) var(--sp-5);border-radius:var(--r-sm);background:color-mix(in srgb,var(--bad) 10%,var(--surface));color:var(--bad);font-weight:700;line-height:1.4}.teacher-feedback-error .ic{flex:none;margin-top:1px}.teacher-feedback-done{justify-items:start}.teacher-feedback-done-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:color-mix(in srgb,var(--good) 14%,var(--surface));color:var(--good)}.teacher-cell-sub{display:block;color:var(--muted);font-size:.875rem;font-weight:400;text-wrap:pretty}.teacher-table .teacher-fact{display:inline-block;white-space:nowrap}.teacher-class-code{letter-spacing:.06em}.teacher-class-week{display:block;margin-top:0}.teacher-class-week .teacher-class-goal{display:grid;gap:var(--sp-3);justify-items:start}.teacher-class-week .teacher-goal-track{width:100%;height:10px}.teacher-class-week .teacher-cell-sub{white-space:normal}.teacher-pill--icon{display:inline-flex;gap:var(--sp-2);align-items:center}.teacher-class-goal .teacher-pill{padding:var(--sp-2) var(--sp-4)}.teacher-class-list .teacher-facts{gap:var(--sp-3) var(--sp-6)}.teacher-class-list .teacher-facts .teacher-fact{padding:0;border:0;background:none;color:var(--muted);font-size:.9375rem;border-radius:0}.teacher-class-directory{container-type:inline-size;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);overflow:clip}.teacher-class-rows{list-style:none;padding:0;margin:0}.teacher-class-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(17rem,21rem) 15.5rem;gap:var(--sp-6) var(--sp-8);align-items:center;padding:var(--sp-8)}.teacher-class-row+.teacher-class-row{border-top:1px solid var(--line)}.teacher-class-row--archived{grid-template-columns:minmax(0,1fr) 15.5rem}.teacher-class-identity{min-width:0}.teacher-class-list .teacher-class-name{display:inline-block;color:var(--text);font-size:1.125rem;font-weight:700;line-height:1.4;overflow-wrap:anywhere;text-decoration:none}.teacher-class-list .teacher-class-name:hover{text-decoration:underline;text-underline-offset:.2em}.teacher-class-list .teacher-class-name:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:var(--r-sm)}.teacher-class-meta{display:flex;flex-wrap:wrap;gap:var(--sp-2) var(--sp-5);margin:var(--sp-3) 0 0;color:var(--muted);font-size:.875rem;line-height:1.5}.teacher-class-work{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--sp-6);margin:0}.teacher-class-work dt{color:var(--muted);font-size:.75rem;font-weight:600;line-height:1.4;margin-bottom:var(--sp-4)}.teacher-class-work dd{margin:0;font-size:.9375rem}.teacher-class-work .teacher-goal-track{max-width:12rem}.teacher-class-row-actions .teacher-row-actions{display:flex;flex-wrap:nowrap;gap:var(--sp-3)}.teacher-class-row-actions .teacher-row-actions>a.teacher-row-action{min-height:44px;padding:var(--sp-4) var(--sp-6);border:1px solid var(--line);border-radius:var(--r-md);color:var(--text);white-space:nowrap;text-decoration:none}.teacher-class-row-actions .teacher-row-actions>a.teacher-row-action:hover{background:var(--surface-2);border-color:var(--muted)}.teacher-class-row-actions .teacher-row-actions>button{min-height:44px}.teacher-class-search{max-width:32rem}.teacher-class-search>label{display:block;font-size:.875rem;font-weight:600;margin-bottom:var(--sp-3)}.teacher-class-search-control{display:flex;gap:var(--sp-4)}.teacher-class-search-control input{min-width:0;flex:1}.teacher-class-search-control button{flex-shrink:0}.teacher-class-empty{padding:var(--sp-8);margin:0;color:var(--muted)}@container (max-width: 61rem){.teacher-class-row{grid-template-columns:minmax(0,1fr) 15.5rem}.teacher-class-row .teacher-class-work{grid-column:1;grid-row:2;max-width:26rem}.teacher-class-row .teacher-class-row-actions{grid-column:2;grid-row:1/span 2}}@container (max-width: 36rem){.teacher-class-row{grid-template-columns:minmax(0,1fr);padding:var(--sp-6);gap:var(--sp-6)}.teacher-class-row .teacher-class-work,.teacher-class-row .teacher-class-row-actions{grid-column:1;grid-row:auto}.teacher-class-row .teacher-row-actions{flex-wrap:wrap}.teacher-class-row .teacher-row-actions>a{flex:1;justify-content:center;white-space:normal;text-align:center}}.teacher-class-form{display:grid;gap:var(--sp-5)}.teacher-class-form h2{margin:0;text-wrap:balance}.teacher-class-form p{margin:0}.teacher-class-form-pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--sp-5)}.teacher-class-first{display:flex;gap:var(--sp-6);align-items:flex-start;margin-bottom:var(--sp-6)}.teacher-class-first p{margin:0 0 var(--sp-3)}.teacher-row-action.teacher-pick-next{display:inline-flex;gap:var(--sp-1);align-items:center;white-space:nowrap;color:var(--text);text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-underline-offset:3px}.teacher-row-action.teacher-pick-next[data-next=invite]{color:var(--muted);font-weight:600}.teacher-board .teacher-row-action.teacher-board-action{display:inline-flex;gap:var(--sp-1);align-items:center;padding-inline:0}.teacher-class-list .teacher-archived-toggle{border-color:transparent;color:var(--muted);justify-self:start;align-self:flex-start;width:fit-content}.teacher-class-list .teacher-archived-toggle svg{transition:transform var(--dur-base) ease-out}.teacher-class-list .teacher-archived-toggle[aria-expanded=true] svg{transform:rotate(180deg)}@media(prefers-reduced-motion:reduce){.teacher-class-list .teacher-archived-toggle svg{transition:none}}.teacher-guide{container-type:inline-size}.teacher-guide p,.teacher-guide h3{margin:0}.teacher-guide-steps{display:grid;gap:var(--sp-8);margin:0;padding:0;list-style:none}.teacher-guide-step{position:relative;display:grid;grid-template-columns:7.5rem minmax(0,1fr);align-content:start;align-items:start;gap:var(--sp-6)}.teacher-guide-visual{display:flex;flex-direction:column;align-self:stretch}.teacher-guide-art{display:block;flex:none;overflow:hidden;aspect-ratio:1;border-radius:var(--r-md);background:var(--mascot-plate)}.teacher-guide-art img{display:block;width:100%;height:100%;object-fit:cover}.teacher-guide-text{display:grid;gap:var(--sp-3);min-width:0}.teacher-guide-name{display:flex;align-items:center;gap:var(--sp-4);color:var(--text);font-family:var(--font-display);font-size:var(--fs-h2);line-height:1.2}.teacher-guide-num{display:inline-grid;flex:none;place-items:center;width:1.75rem;height:1.75rem;border-radius:var(--r-pill);background:var(--warn);color:var(--warn-ink);font-family:var(--font-body);font-size:.875rem;font-weight:var(--fw-heavy);font-variant-numeric:tabular-nums}.teacher-guide-role{color:var(--accent-2);font-size:.875rem;font-weight:var(--fw-heavy)}.teacher-guide-line{max-width:42ch;color:var(--text);font-size:1rem;line-height:1.5;text-wrap:pretty}.teacher-guide-link{display:flex;flex:1 0 var(--sp-8);align-items:center;justify-content:center;margin-block-end:calc(var(--sp-8) * -1);color:var(--muted)}.teacher-guide-link .ic{transform:rotate(90deg)}.teacher-guide-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-5) var(--sp-6);padding-block-start:var(--sp-6);border-top:1px solid var(--line)}.teacher-guide-rule{color:var(--text);font-weight:var(--fw-bold);text-wrap:pretty}@media(pointer:coarse){.teacher-button.teacher-guide-button{min-height:48px}}@container (min-width: 720px){.teacher-guide-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-10)}.teacher-guide-step{grid-template-columns:minmax(0,1fr)}.teacher-guide-art{width:min(100%,10rem)}.teacher-guide-link{position:absolute;top:5rem;right:calc(var(--sp-10) / -2);margin:0;transform:translate(50%,-50%)}.teacher-guide-link .ic{transform:none}}.teacher-dialog.teacher-mission-dialog{width:min(100% - 32px,1120px);max-height:calc(100dvh - 32px);padding:0;overflow:hidden;border-radius:var(--r-md)}.teacher-mission{display:flex;flex-direction:column;height:min(820px,100dvh - 34px);min-height:0}.teacher-mission p{margin:0}.teacher-mission button:focus-visible,.teacher-mission input:focus-visible,.teacher-mission select:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.teacher-mission-header{flex:none;padding:var(--sp-6) var(--sp-8);border-bottom:1px solid var(--line);display:grid;gap:var(--sp-2)}.teacher-mission-header .teacher-muted{font-size:var(--fs-sm)}.teacher-mission-class{font-size:var(--fs-sm);color:var(--muted)}.teacher-mission-title{font-size:var(--fs-h1);font-weight:var(--fw-heavy);overflow-wrap:anywhere}.teacher-mission-title:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.teacher-mission-workspace{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 300px}.teacher-mission-library{display:flex;flex-direction:column;min-width:0;min-height:0}.teacher-mission-navigation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid var(--line);padding:0 var(--sp-6)}.teacher-mission-navigation button{min-height:56px;display:flex;align-items:center;justify-content:center;gap:var(--sp-3);border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);font:inherit;font-size:var(--fs-base);font-weight:var(--fw-bold);cursor:pointer}.teacher-mission-navigation button[aria-pressed=true]{color:var(--accent);border-bottom-color:var(--accent)}.teacher-mission-badge{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 var(--sp-1);border-radius:var(--r-xs);background:var(--surface-2);color:var(--text);font-size:var(--fs-xs);font-variant-numeric:tabular-nums}.teacher-mission-toolbar{padding:var(--sp-5) var(--sp-6) var(--sp-3);display:grid;gap:var(--sp-3)}.teacher-mission-filters{display:flex;gap:var(--sp-3)}.teacher-mission-filters label{display:grid;gap:var(--sp-1);min-width:0;font-size:var(--fs-xs);font-weight:var(--fw-bold)}.teacher-mission-filters .teacher-mission-search{flex:1}.teacher-mission-filters select{max-width:140px}.teacher-mission-kinds{display:flex;gap:var(--sp-3)}.teacher-mission-kinds button{min-height:var(--size-tap);padding:var(--sp-2) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-xs);background:transparent;font:inherit;font-size:var(--fs-sm);color:var(--text);cursor:pointer}.teacher-mission-kinds button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--bg)}.teacher-mission-results{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--sp-2);color:var(--muted);font-size:var(--fs-xs)}.teacher-mission-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 var(--sp-6) var(--sp-5)}.teacher-mission-picks{min-width:0;margin:0;padding:0;border:0}.teacher-mission-picks>.teacher-input-help{margin-bottom:var(--sp-4)}.teacher-mission-catalog-title{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.teacher-mission-column-head{display:grid;grid-template-columns:minmax(0,1fr) 44px 120px;gap:var(--sp-3);padding:var(--sp-3) var(--sp-3) var(--sp-3) 36px;border-bottom:1px solid var(--line);color:var(--muted);font-size:var(--fs-xs)}.teacher-mission-option{display:grid;grid-template-columns:18px minmax(0,1fr) 44px 120px;align-items:center;gap:var(--sp-3);min-height:52px;padding:var(--sp-3);border-bottom:1px solid var(--line);font-size:var(--fs-sm);line-height:var(--lh-base);cursor:pointer}.teacher-mission-option input{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;width:16px;height:16px;margin:0;accent-color:var(--accent)}.teacher-mission-option:hover{background:var(--bg)}.teacher-mission-option:has(input:checked){background:var(--bg);box-shadow:inset 3px 0 var(--accent)}.teacher-mission-option:has(input:focus-visible){outline:2px solid var(--accent-2);outline-offset:-2px}.teacher-mission-option.is-blocked{color:var(--muted);cursor:not-allowed}.teacher-mission-item-title{font-weight:var(--fw-semibold);overflow-wrap:anywhere}.teacher-mission-item-title small{display:block;color:var(--muted);font-size:var(--fs-xs);font-weight:var(--fw-regular)}.teacher-mission-item-level,.teacher-mission-item-detail{color:var(--muted);font-size:var(--fs-xs);overflow-wrap:anywhere}.teacher-mission-pagination{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:var(--sp-2) var(--sp-6);font-size:var(--fs-xs)}.teacher-mission-pagination button{min-height:var(--size-tap);padding:0 var(--sp-3);border:0;background:transparent;color:var(--text);font:inherit;font-weight:var(--fw-bold);cursor:pointer}.teacher-mission-pagination button:disabled{color:var(--muted);cursor:default}.teacher-mission-summary{overflow-y:auto;overscroll-behavior:contain;min-width:0;padding:var(--sp-6);border-left:1px solid var(--line);background:var(--bg)}.teacher-mission-summary h3{display:flex;justify-content:space-between;gap:var(--sp-3);margin:0 0 var(--sp-2);font-size:var(--fs-lead)}.teacher-mission-summary h3>span{font-size:var(--fs-sm);color:var(--muted)}.teacher-mission-summary h4{margin:0;font-size:var(--fs-sm);font-weight:var(--fw-heavy)}.teacher-mission-summary>section{padding:var(--sp-5) 0;border-bottom:1px solid var(--line)}.teacher-mission-selected-list{list-style:none;margin:0;padding:0}.teacher-mission-selected-list li{display:flex;align-items:start;gap:var(--sp-2);font-size:var(--fs-sm)}.teacher-mission-selected-list li>span{flex:1;min-width:0;padding-top:var(--sp-3);overflow-wrap:anywhere}.teacher-mission-selected-list small{display:block;color:var(--muted);font-size:var(--fs-xs)}.teacher-mission-selected-list button{flex:none;width:var(--size-tap);height:var(--size-tap);padding:0;border:0;background:transparent;color:var(--muted);font-size:var(--fs-h2);cursor:pointer}.teacher-mission-selected-list button:hover{color:var(--bad)}.teacher-mission-empty{padding-top:var(--sp-3);color:var(--muted);font-size:var(--fs-xs)}.teacher-mission-briefing{display:grid;gap:var(--sp-1);padding-top:var(--sp-5)}.teacher-mission-count{justify-self:end;color:var(--muted);font-size:var(--fs-xs);font-variant-numeric:tabular-nums}.teacher-mission-full{padding-top:var(--sp-3);font-size:var(--fs-sm);color:var(--muted)}.teacher-mission-footer{flex:none;border-top:1px solid var(--line);padding:var(--sp-4) var(--sp-6);display:grid;gap:var(--sp-3)}.teacher-mission-hint{font-size:var(--fs-sm);color:var(--muted)}.teacher-mission-remove{margin-right:auto;color:var(--bad)}.teacher-mission-save.is-blocked:disabled{background:var(--surface-2);color:var(--muted);cursor:not-allowed;opacity:1}.teacher-mission-review{display:none}@media(max-width:760px){.teacher-dialog.teacher-mission-dialog{width:100%;max-width:100%;max-height:100dvh;border-radius:0;border:0}.teacher-mission{height:100dvh}.teacher-mission-header{padding:var(--sp-4)}.teacher-mission-header .teacher-muted{display:none}.teacher-mission-title{font-size:var(--fs-lead)}.teacher-mission-workspace{display:flex;flex-direction:column}.teacher-mission-library{flex:1}.teacher-mission-summary{display:none;border:0;flex:1}.teacher-mission-workspace.is-reviewing .teacher-mission-library{display:none}.teacher-mission-workspace.is-reviewing .teacher-mission-summary{display:block}.teacher-mission-navigation{padding:0 var(--sp-3)}.teacher-mission-navigation button{min-height:48px;font-size:var(--fs-sm)}.teacher-mission-toolbar{padding:var(--sp-3) var(--sp-4)}.teacher-mission-filters{flex-wrap:wrap}.teacher-mission-filters .teacher-mission-search{flex-basis:100%}.teacher-mission-filters label:has(select){flex:1}.teacher-mission-filters select{max-width:none}.teacher-mission-body{padding:0 var(--sp-4) var(--sp-4)}.teacher-mission-column-head{display:none}.teacher-mission-option{grid-template-columns:18px minmax(0,1fr) 32px;gap:var(--sp-1) var(--sp-3)}.teacher-mission-item-detail{grid-column:2/4}.teacher-mission-option input{grid-row:1/3}.teacher-mission-pagination,.teacher-mission-footer{padding:var(--sp-2) var(--sp-4)}.teacher-mission-actions{gap:var(--sp-2)}.teacher-mission-actions .teacher-button{padding-inline:var(--sp-4)}.teacher-mission-remove{flex-basis:100%;text-align:left}.teacher-mission-review{display:block;margin-right:auto;min-height:var(--size-tap);padding:0;border:0;background:transparent;color:var(--text);font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-bold)}}.teacher-mission-catalog-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch}.teacher-mission-preview-button{min-width:76px;padding:var(--sp-2);border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--accent);font:inherit;font-size:var(--fs-xs);font-weight:var(--fw-bold);cursor:pointer}.teacher-mission-preview-button:hover{background:var(--surface-2)}.teacher-mission-preview{display:grid;gap:var(--sp-4);padding-top:var(--sp-4)}.teacher-mission-preview>h3{font-size:var(--fs-lead);overflow-wrap:anywhere}.teacher-mission-preview-exercise,.teacher-mission-preview-questions>li,.teacher-mission-preview-material{padding-block:var(--sp-4);border-top:1px solid var(--line)}.teacher-mission-preview h4{font-size:var(--fs-base);margin-bottom:var(--sp-3)}.teacher-mission-preview li{margin-bottom:var(--sp-2);overflow-wrap:anywhere}.teacher-mission-preview ul,.teacher-mission-preview ol{padding-left:var(--sp-5)}.teacher-mission-preview-text{white-space:pre-wrap}.teacher-mission-preview-material img,.teacher-mission-preview-material audio{max-width:100%}.teacher-tools-open{display:flex;align-items:center;gap:var(--sp-4);min-height:48px;width:100%;padding:var(--sp-4) var(--sp-5);border:0;border-radius:var(--r-md);background:transparent;color:var(--panel-nav-fg);font:inherit;text-align:left;cursor:pointer}.teacher-tools-open:focus-visible{outline:3px solid var(--warn);outline-offset:3px}.teacher-tools-dialog :is(a,button):focus-visible{outline:3px solid var(--accent-2);outline-offset:3px}.teacher-tools-open:hover{background:var(--panel-nav-hover)}.teacher-nav-current-tool span{text-decoration:underline;text-underline-offset:3px}.teacher-tools-dialog{box-sizing:border-box;width:min(42rem,100vw - 2rem);max-height:calc(100dvh - 2rem);margin:auto;padding:var(--sp-8);overflow-y:auto;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);color:var(--text)}.teacher-tools-dialog::backdrop{background:color-mix(in srgb,var(--ink) 45%,transparent)}.teacher-tools-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-5)}.teacher-tools-head h2{margin:0}.teacher-tools-dialog :is(button,a){min-height:48px}.teacher-tools-dialog button[aria-disabled=true]{opacity:.6;cursor:default}.teacher-tools-list{list-style:none;margin:var(--sp-6) 0;padding:0}.teacher-tools-list li{padding:var(--sp-5) 0;border-bottom:1px solid var(--line)}.teacher-tools-link{display:flex;align-items:flex-start;gap:var(--sp-5);color:var(--text);text-decoration:none;padding-block:var(--sp-4)}.teacher-tools-link>span{display:grid;gap:var(--sp-2)}.teacher-tools-link[aria-current=page] strong{text-decoration:underline;text-underline-offset:3px}.teacher-tools-link svg{flex:none;margin-top:var(--sp-2)}.teacher-tools-footer{display:grid;gap:var(--sp-4)}.teacher-tools-worksheet{padding-bottom:var(--sp-6);margin-bottom:var(--sp-6);border-bottom:1px solid var(--line)}.teacher-tools-worksheet h3{margin:0}.teacher-tools-status{margin:0;min-height:1.5em}.teacher-tools-error p{margin-block:0 var(--sp-4)}@media(max-width:599.98px){.teacher-tools-dialog{padding:var(--sp-6)}.teacher-tools-head{flex-wrap:wrap}.teacher-tools-list button{width:100%;white-space:normal}}@media(prefers-reduced-motion:reduce){.teacher-tools-dialog,.teacher-tools-dialog *,.teacher-tools-open{animation:none;transition:none;scroll-behavior:auto}}.teacher-tools-link strong{display:flex;align-items:center;gap:var(--sp-3);text-decoration:underline;text-underline-offset:4px}.teacher-tools-link{border-radius:var(--r-md);padding:var(--sp-4);background:var(--bg)}.teacher-tools-list li>button{margin-top:var(--sp-2);border-color:transparent;font-weight:500}.teacher-simple-home{display:grid;gap:var(--sp-8);margin-block:var(--sp-6) var(--sp-8)}.teacher-simple-context{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-4)}.teacher-simple-context h2{margin:0 auto 0 0}.teacher-simple-context label{font-weight:var(--fw-bold)}.teacher-simple-context select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;min-width:0;min-height:48px;padding:var(--sp-3) var(--sp-9) var(--sp-3) var(--sp-5);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--text);font:inherit}.teacher-simple-select{position:relative;flex:1;min-width:0;max-width:30rem}.teacher-simple-select .ic{position:absolute;right:var(--sp-4);top:50%;transform:translateY(-50%);pointer-events:none}.teacher-quick-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-6);padding-block:var(--sp-4);align-items:start}.teacher-quick-actions>*{min-width:0}.teacher-quick-actions .teacher-button{min-height:48px;white-space:normal;text-align:center;width:100%;box-sizing:border-box}.teacher-quick-actions p{color:var(--muted);line-height:1.5;margin:var(--sp-3) 0 0;max-width:48ch}.teacher-ready-lesson{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-4);border:1px solid var(--line);padding:var(--sp-5);background:var(--surface);border-radius:var(--r-md)}.teacher-ready-lesson>div{min-width:0;max-width:100%;overflow-wrap:anywhere}.teacher-ready-lesson strong,.teacher-ready-lesson span{display:block}.teacher-continue{border-top:1px solid var(--line);padding-top:var(--sp-6)}.teacher-continue h2{font-size:var(--fs-h2);margin:0 0 var(--sp-4)}.teacher-continue ul{list-style:none;padding:0;margin:0}.teacher-continue li{display:flex;gap:var(--sp-4);align-items:center;justify-content:space-between;padding-block:var(--sp-4);border-bottom:1px solid var(--line)}.teacher-continue li>div{min-width:0;overflow-wrap:anywhere}.teacher-continue p{color:var(--muted);margin:var(--sp-2) 0 0}.teacher-continue a,.teacher-continue button{min-height:44px}.teacher-simple-details{margin-block:var(--sp-6)}.teacher-simple-details>summary{cursor:pointer;min-height:48px;display:list-item;align-content:center;font-weight:var(--fw-bold);padding-block:var(--sp-3);color:var(--text)}.teacher-simple-details[open]>summary{margin-bottom:var(--sp-4)}.teacher-simple-home :is(a,button,select):focus-visible,.teacher-simple-details>summary:focus-visible{outline:3px solid var(--accent-2);outline-offset:4px}@media(max-width:720px){.teacher-quick-actions{grid-template-columns:minmax(0,1fr);gap:var(--sp-6)}.teacher-simple-select{max-width:none;flex-basis:75%}.teacher-continue li{align-items:start;flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){.teacher-simple-home *{scroll-behavior:auto;transition:none;animation:none}}.teacher-prepared-lessons{margin-block:var(--sp-5)}.teacher-prepared-lessons h2{font-size:1rem}.teacher-prepared-lessons .teacher-actions{display:flex;flex-wrap:wrap;gap:var(--sp-3)}.teacher-simple-details>.teacher-settings-grid{margin-top:var(--sp-5);padding:var(--sp-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md)}.teacher-link[data-testid=teacher-student-open]{text-decoration:underline;text-underline-offset:3px}.teacher-prepared-lessons{padding-top:var(--sp-5);border-top:1px solid var(--line)}.teacher-prepared-lessons .teacher-ready-lesson+.teacher-ready-lesson{margin-top:var(--sp-3)}.teacher-worksheet-page{display:grid;justify-items:start;gap:var(--sp-3);margin:0;min-width:0}.teacher-worksheet-page img{display:block;width:100%;max-height:26rem;object-fit:contain;background:var(--surface)}.teacher-worksheet-page-dialog{width:min(70rem,100vw - var(--sp-8));max-width:100%;max-height:calc(100dvh - var(--sp-8));padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--r-lg);color:var(--text);background:var(--surface)}.teacher-worksheet-page-dialog::backdrop{background:color-mix(in srgb,var(--ink) 60%,transparent)}.teacher-worksheet-page-dialog header{display:flex;align-items:start;justify-content:space-between;gap:var(--sp-4);margin-bottom:var(--sp-4)}.teacher-worksheet-page-dialog h2{margin:0;overflow-wrap:anywhere}.teacher-worksheet-page-dialog img{display:block;width:100%;height:auto}.teacher-worksheet-title{margin:0}.teacher-worksheet-reading{max-width:65ch;min-width:0;overflow-wrap:anywhere}.teacher-worksheet-reading audio{max-width:100%}.teacher-worksheet-response{display:grid;gap:var(--sp-3);padding-block:var(--sp-4);border-block:1px solid var(--line)}.teacher-worksheet-response p{margin:0}.teacher-worksheet-source-toggle{justify-self:start}.teacher-worksheet-source-body{display:grid;gap:var(--sp-6)}.teacher-worksheet-source-body[hidden],.teacher-new-class-field[hidden]{display:none}.teacher-worksheet-destination{flex:1 1 100%;min-width:0;display:grid;gap:var(--sp-3)}.teacher-worksheet-destination p{margin:0;overflow-wrap:anywhere}.teacher-worksheet-destination select{max-width:100%}.teacher-new-grid.teacher-new-grid--compact{grid-template-columns:minmax(0,1fr)}.teacher-new-grid.teacher-new-grid--compact .teacher-new-col{gap:var(--sp-3)}.teacher-new-grid.teacher-new-grid--compact .teacher-new-preview{width:100%}.teacher-worksheet-change-class{min-height:var(--size-tap);display:inline-flex;align-items:center;padding-inline:var(--sp-3)}.teacher-new-grid.teacher-new-grid--entry{grid-template-columns:minmax(0,760px)}.teacher-new-grid[hidden],.teacher-new-footer[hidden],.teacher-new-col[hidden]{display:none}.teacher-worksheet-complete{display:grid;gap:var(--sp-4);max-width:48rem;margin-bottom:var(--sp-6)}.teacher-worksheet-complete p,.teacher-worksheet-complete h2{margin:0;overflow-wrap:anywhere}.teacher-worksheet-complete-secondary{padding-top:var(--sp-4);border-top:1px solid var(--line)}.teacher-worksheet-head--simple{gap:var(--sp-4);margin-bottom:var(--sp-5)}.teacher-worksheet-context{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--sp-2) var(--sp-4);min-width:0}.teacher-worksheet-context>div{min-width:0;display:grid;gap:var(--sp-1);overflow-wrap:anywhere}.teacher-worksheet--simple .teacher-new-col,.teacher-worksheet--simple .teacher-worksheet-source-body,.teacher-worksheet--simple .teacher-new-source{gap:var(--sp-4)}@media(max-width:480px){.teacher-worksheet--simple .teacher-new-source,.teacher-worksheet--simple .teacher-new-drop{padding:var(--sp-4)}}html{color-scheme:light}body{margin:0;background:var(--bg);color:var(--text)}.teacher-page{min-height:100dvh}.teacher-bar{position:static;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--sp-4) var(--sp-6);padding:var(--sp-6) clamp(var(--sp-6),4vw,var(--sp-11));border-bottom:1px solid var(--line);background:var(--surface)}.teacher-brand{min-width:0;display:inline-flex;align-items:center;gap:var(--sp-4);color:var(--text);font-size:1.2rem;font-weight:900;text-decoration:none}.teacher-brand img{border-radius:var(--r-xs)}.teacher-brand-sub{padding-left:var(--sp-4);border-left:1px solid var(--line);color:var(--muted);font-size:1rem;font-weight:700;min-width:0}.teacher-bar-actions{flex:none;white-space:nowrap;display:flex;align-items:center;gap:var(--sp-6)}.teacher-shell.has-nav{display:grid;grid-template-columns:15.5rem minmax(0,1fr);min-height:100dvh}.teacher-side{position:sticky;top:0;height:100dvh;display:flex;flex-direction:column;gap:var(--sp-9);padding:var(--sp-8) var(--sp-5) var(--sp-6);overflow-y:auto;background:var(--panel-nav-bg);color:var(--panel-nav-fg)}.teacher-side .teacher-brand{min-height:44px;padding:0 var(--sp-4);color:var(--panel-nav-fg);font-size:1.35rem}.teacher-side :is(a,button,summary):focus-visible{outline:3px solid var(--warn);outline-offset:2px}.teacher-side-top{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4)}.teacher-menu-button{display:none;align-items:center;gap:var(--sp-3);min-height:44px;padding:0 var(--sp-5);border:1px solid var(--panel-nav-hover);border-radius:var(--r-pill);background:transparent;color:var(--panel-nav-fg);font:inherit;font-weight:800;cursor:pointer;touch-action:manipulation}.teacher-menu-button:hover{background:var(--panel-nav-hover)}.teacher-side-menu{flex:1;display:flex;flex-direction:column;gap:var(--sp-6);min-height:0}.teacher-nav{flex:1;display:grid;align-content:start;gap:var(--sp-2)}.teacher-nav a{display:flex;align-items:center;gap:var(--sp-4);min-height:44px;padding:0 var(--sp-5);border-radius:var(--r-sm);color:var(--panel-nav-muted);font-weight:700;text-decoration:none;transition-property:background-color,color;transition-duration:.15s;transition-timing-function:ease-out}.teacher-nav a:hover{background:var(--panel-nav-hover);color:var(--panel-nav-fg)}.teacher-nav a[aria-current=page]{background:var(--warn);color:var(--warn-ink);font-weight:800}.teacher-more.teacher-me>summary{display:flex;align-items:center;gap:var(--sp-4);min-height:56px;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-sm);color:var(--panel-nav-fg);transition-property:background-color;transition-duration:.15s}.teacher-more.teacher-me[open]>summary,.teacher-more.teacher-me>summary:hover{background:var(--panel-nav-hover)}.teacher-more.teacher-me .teacher-more-menu{top:auto;bottom:calc(100% + var(--sp-2));left:0;right:0;min-width:0;color:var(--text)}.teacher-avatar{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--accent);color:var(--ink-fg);font-size:.85rem;font-weight:800;letter-spacing:.02em}.teacher-who{flex:1;display:grid;min-width:0;line-height:1.25}.teacher-who strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacher-who span{color:var(--panel-nav-muted);font-size:.85rem}@media(max-width:899.98px){.teacher-shell.has-nav{display:block}.teacher-side{position:static;height:auto;gap:0;padding:var(--sp-4) clamp(var(--sp-6),4vw,var(--sp-11));overflow:visible}.teacher-menu-button{display:inline-flex}.teacher-side-menu{display:none;padding:var(--sp-5) 0 var(--sp-3)}.is-open .teacher-side-menu{display:flex}.teacher-more.teacher-me .teacher-more-menu{position:static;margin-top:var(--sp-2);box-shadow:none}}.teacher-crumbs{margin-bottom:var(--sp-3);color:var(--muted);font-size:.9rem}.teacher-crumbs ol{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin:0;padding:0;list-style:none}.teacher-crumbs li+li:before{content:"/";margin-right:var(--sp-2)}.teacher-crumbs [aria-current=page]{color:var(--text);font-weight:700}.teacher-crumb{display:inline-block;padding-block:var(--sp-1);color:var(--muted);font-weight:700;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-underline-offset:.2em}.teacher-crumb:hover{color:var(--text);text-decoration-color:currentColor}.teacher-pick-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:var(--sp-5);margin:var(--sp-7) 0 0;padding:0;list-style:none}.teacher-pick-class{display:flex;align-items:center;gap:var(--sp-5);color:var(--text);text-decoration:none;transition-property:border-color,box-shadow;transition-duration:.15s;transition-timing-function:ease-out}.teacher-pick-class:hover{border-color:var(--accent-2);box-shadow:var(--shadow-sm)}.teacher-pick-name{flex:1;display:grid;gap:var(--sp-1);min-width:0;text-wrap:pretty}.teacher-pick-empty{display:grid;justify-items:start;gap:var(--sp-5);margin-top:var(--sp-7)}.teacher-pick-empty p{margin:0}.teacher-icon-button{display:inline-grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:var(--r-pill);background:transparent;color:var(--muted);cursor:pointer}.teacher-icon-button:hover{background:var(--surface-2);color:var(--bad)}.teacher-icon-button:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.teacher-icon-button:disabled{cursor:wait;opacity:.65}.teacher-dialog{width:min(100% - 2 * var(--sp-6),480px);padding:var(--sp-8);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);box-shadow:var(--shadow-lg)}.teacher-dialog::backdrop{background:color-mix(in srgb,var(--ink) 45%,transparent)}.teacher-dialog h2{margin:0}.teacher-dialog-actions{justify-content:flex-end}.teacher-main{padding:var(--sp-10) clamp(var(--sp-6),4vw,var(--sp-11)) var(--sp-11)}.teacher-narrow{width:min(100%,480px);margin:0 auto}.teacher-wide{width:min(100%,1080px);margin:0 auto}.teacher-card{padding:var(--sp-8);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.teacher-card h2{margin:0 0 var(--sp-6);font-size:1.15rem}.teacher-main h1{margin:0 0 var(--sp-4);font-family:Fraunces,Georgia,serif;font-size:clamp(1.8rem,4vw,2.4rem);line-height:1.1}.teacher-heading{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--sp-6);margin-bottom:var(--sp-8)}.teacher-heading h1{margin:0}.teacher-muted{margin:0;color:var(--muted);line-height:1.5}.teacher-notice{margin:var(--sp-6) 0 0;padding:var(--sp-5) var(--sp-6);border-radius:var(--r-sm);background:var(--warn);color:var(--warn-ink);font-weight:700}.teacher-error{margin:var(--sp-5) 0;color:var(--bad);font-weight:800}.teacher-form{display:grid;gap:var(--sp-4);margin-top:var(--sp-7)}.teacher-form label{margin-top:var(--sp-3);font-weight:800}.teacher-form .teacher-button{margin-top:var(--sp-6)}.teacher-page input,.teacher-page select,.teacher-page textarea{min-height:44px;box-sizing:border-box;padding:var(--sp-4) var(--sp-5);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg);color:var(--text);font:inherit}.teacher-field{display:grid;grid-template-columns:minmax(0,1fr);min-width:0;gap:var(--sp-3);font-weight:800}.teacher-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--sp-5)}.teacher-grow{flex:1 1 220px}.teacher-button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-7);border:1.5px solid currentColor;border-radius:var(--r-pill);background:transparent;color:var(--text);font:inherit;font-weight:800;text-decoration:none;white-space:nowrap;cursor:pointer;transition-property:background-color,border-color,color,transform;transition-duration:var(--dur-base);transition-timing-function:ease-out}.teacher-button:hover{background:var(--surface-2)}.teacher-button:active:not(:disabled){transform:scale(.97)}.teacher-button:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.teacher-button:disabled,.teacher-button[aria-disabled=true]{border-color:var(--line);background:var(--surface-2);color:var(--muted);cursor:not-allowed;filter:none}.teacher-button--primary{border-color:var(--accent);background:var(--accent);color:var(--ink-fg)}.teacher-button--primary:hover{background:var(--accent);filter:brightness(.94)}.teacher-button--ghost{border:1px solid var(--line);background:transparent;color:var(--text)}.teacher-button--ghost:hover{background:var(--surface-2);filter:none}.teacher-button--danger{border-color:var(--bad);background:var(--bad);color:var(--ink-fg)}.teacher-button--danger:hover{background:var(--bad);filter:brightness(.94)}.teacher-link{display:inline-flex;align-items:center;gap:var(--sp-3);padding:0;border:0;background:none;color:var(--accent-2);font:inherit;font-weight:800;text-decoration:none;cursor:pointer}.teacher-muted a{color:var(--accent-2);font-weight:700;text-decoration:underline;text-underline-offset:2px}.teacher-page :is(a,button,input,select):focus-visible{outline:3px solid var(--accent-2);outline-offset:2px}.teacher-create{margin-bottom:var(--sp-8)}.teacher-list{display:grid;gap:var(--sp-5);margin:var(--sp-6) 0 0;padding:0;list-style:none}.teacher-class{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-6);padding:var(--sp-6) var(--sp-8)}.teacher-class.is-archived{background:var(--surface-2)}.teacher-class-main{display:flex;align-items:center;gap:var(--sp-6)}.teacher-class-name{color:var(--text);font-size:1.1rem;font-weight:900;text-decoration:none}.teacher-class-name:hover{text-decoration:underline}.teacher-class-week{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-6);margin-top:var(--sp-3)}.teacher-class-week .teacher-goal-track{width:140px;height:10px}.teacher-class-goal{display:flex;align-items:center;gap:var(--sp-4);color:var(--text);font-size:.9rem;font-variant-numeric:tabular-nums;font-weight:800}.teacher-more{position:relative}.teacher-more>summary{list-style:none;cursor:pointer}.teacher-more>summary::-webkit-details-marker{display:none}.teacher-more[open]>summary{background:var(--surface-2)}.teacher-more-menu{position:absolute;right:0;top:calc(100% + var(--sp-2));z-index:5;display:grid;gap:var(--sp-2);min-width:15rem;padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);box-shadow:var(--shadow)}.teacher-more-menu .teacher-button{justify-content:flex-start;border:0;border-radius:var(--r-xs)}.teacher-steps{margin:var(--sp-4) 0 0;padding-left:1.4em;display:grid;gap:var(--sp-2);font-weight:700}.teacher-level{min-width:2.6em;padding:var(--sp-2) var(--sp-4);border-radius:var(--r-pill);color:var(--ink-fg);font-weight:900;text-align:center}.teacher-level--a1{background:var(--lvl-a1)}.teacher-level--a2{background:var(--lvl-a2);color:var(--warn-ink)}.teacher-level--b1{background:var(--lvl-b1)}.teacher-course-tag{padding:var(--sp-2) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface-2);color:var(--text);font-weight:800}.teacher-class-head{position:sticky;top:0;z-index:var(--z-sticky);margin:0 0 var(--sp-8);padding-top:var(--sp-5);border-bottom:1px solid var(--line);background:var(--bg)}.teacher-class-head .teacher-heading{margin-bottom:var(--sp-5)}@media(max-width:599.98px){.teacher-class-head{position:static}}.teacher-class-top{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--sp-5) var(--sp-8);margin-bottom:var(--sp-6)}.teacher-class-titles{flex:1 1 320px;min-width:0}.teacher-main h1.teacher-class-title{margin:0 0 var(--sp-4);font-size:2rem;overflow-wrap:anywhere;text-wrap:balance}.teacher-class-chips{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3);margin:0;padding:0;list-style:none}.teacher-class-chips .teacher-level,.teacher-class-chips .teacher-course-tag{display:inline-block;font-size:.875rem}@media(min-width:900px){.teacher-class-top{display:flex;flex-wrap:wrap;align-items:start;gap:var(--sp-4) var(--sp-6)}.teacher-class-titles{display:contents}.teacher-main h1.teacher-class-title{flex:1 1 auto;min-width:0;max-width:100%;margin:0;text-wrap:balance}.teacher-class-top>.teacher-class-actions{order:1;flex:0 0 auto;margin-left:auto}.teacher-class-chips{order:2;flex:1 0 100%}}.teacher-class-chip,.teacher-fact{padding:var(--sp-2) var(--sp-5);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);color:var(--text);font-size:.875rem;font-weight:600;font-variant-numeric:tabular-nums}.teacher-class-code{font-family:ui-monospace,Menlo,Consolas,monospace;font-weight:800;letter-spacing:.08em}.teacher-class-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-4)}.teacher-button--wrap{max-width:100%;white-space:normal;text-wrap:balance;overflow-wrap:anywhere}.teacher-button--outline{border:1.5px solid currentColor}.teacher-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--sp-6);margin:0 0 var(--sp-8)}.teacher-kpi{display:flex;flex-direction:column;gap:var(--sp-3);min-width:0;padding:var(--sp-6) var(--sp-7);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.teacher-kpi>.teacher-link{align-self:flex-start;font-size:.875rem}.teacher-kpi-label{margin:0;color:var(--muted);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.teacher-kpi-value{margin:0;color:var(--text);font-family:Fraunces,Georgia,serif;font-size:2rem;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}.teacher-kpi-of{color:var(--muted);font-size:1.125rem}.teacher-kpi-value--hot{color:var(--accent)}.teacher-kpi-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-3)}.teacher-kpi-action{min-height:44px;display:inline-flex;align-items:center;gap:var(--sp-2);padding:0 var(--sp-4) 0 var(--sp-5);border:1.5px solid var(--accent);border-radius:var(--r-pill);color:var(--accent);font-size:.875rem;font-weight:800;text-decoration:none;white-space:nowrap;transition-property:background-color,transform;transition-duration:var(--dur-base);transition-timing-function:ease-out}.teacher-kpi-action svg{transform:rotate(-90deg)}.teacher-kpi-action:hover{background:var(--surface-2)}.teacher-kpi-action:active{transform:scale(.97)}.teacher-kpi-action:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}@media(prefers-reduced-motion:reduce){.teacher-kpi-action{transition:none}}.teacher-kpi-value--none{color:var(--muted)}.teacher-kpi-bar{height:6px;overflow:hidden;border-radius:var(--r-pill);background:var(--surface-2)}.teacher-kpi-bar span{display:block;height:100%;border-radius:inherit;background:var(--good)}.teacher-kpi-note{margin:0;color:var(--muted);font-size:.875rem;line-height:1.4;text-wrap:pretty}.teacher-kpi-note--clip{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.teacher-kpi-delta--up{color:var(--good);font-weight:700}.teacher-kpi-delta--down{color:var(--accent);font-weight:700}.teacher-insight .teacher-kpi-label:not(:first-child){margin-top:var(--sp-3)}.teacher-insight-list{display:grid;gap:var(--sp-3);margin:0;padding:0;list-style:none}.teacher-insight-list li{display:grid;gap:var(--sp-1);min-width:0}.teacher-insight-advice{margin:auto 0 0;padding-top:var(--sp-3);color:var(--text);font-weight:700;text-wrap:pretty}.teacher-kpi-skeleton{display:block;width:60%;height:2.2rem;border-radius:var(--r-xs);background:var(--surface-2);animation:teacher-kpi-pulse 1.2s ease-in-out infinite alternate}@keyframes teacher-kpi-pulse{to{opacity:.55}}.teacher-kpis-failed{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-5);padding:var(--sp-6) var(--sp-7);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.teacher-kpis-failed p{margin:0}@media(max-width:899.98px){.teacher-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4)}.teacher-kpi{padding:var(--sp-5) var(--sp-6)}.teacher-kpi-value{font-size:1.75rem}}@media(prefers-reduced-motion:reduce){.teacher-kpi-skeleton{animation:none}}.teacher-pulse-col{display:grid;align-content:start;gap:var(--sp-3);min-width:0}.teacher-pulse-center{text-align:center}.teacher-pulse-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:var(--sp-6) var(--sp-8)}.teacher-pulse-answered{margin:0;color:var(--text);font-weight:700;font-variant-numeric:tabular-nums}.teacher-pulse-group{display:grid;gap:var(--sp-3)}.teacher-pulse-group-label{margin:0;color:var(--text);font-size:.875rem;font-weight:700}.teacher-pulse-bars{display:grid;gap:var(--sp-3);margin:0;padding:0;list-style:none}.teacher-pulse-bar-row{display:grid;grid-template-columns:minmax(5.5rem,auto) minmax(0,1fr) 2ch;align-items:center;gap:var(--sp-4);font-size:.875rem}.teacher-pulse-bar-count{text-align:end;font-variant-numeric:tabular-nums}.teacher-pulse-track{height:10px;overflow:hidden;border-radius:var(--r-pill);background:var(--surface-2)}.teacher-pulse-track .teacher-pulse-fill{display:block;height:100%;border-radius:inherit}.teacher-pulse-fill--easy,.teacher-pulse-fill--yes{background:var(--good)}.teacher-pulse-fill--right{background:var(--accent-2)}.teacher-pulse-fill--hard{background:var(--accent)}.teacher-pulse-fill--no{background:var(--accent-3)}.teacher-pulse-hidden{display:flex;align-items:flex-start;gap:var(--sp-4);margin:0;color:var(--muted);font-size:.875rem;line-height:1.4;text-wrap:pretty}.teacher-pulse-hidden svg{flex:none;margin-top:1px}.teacher-pulse-trend{display:grid;gap:var(--sp-4)}.teacher-pulse-weeks{display:grid;margin:0;padding:0;list-style:none}.teacher-pulse-week{display:grid;align-content:start;gap:var(--sp-3);min-width:0;padding-block:var(--sp-4);border-top:1px solid var(--line)}.teacher-pulse-week-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--sp-2) var(--sp-4);margin:0;font-size:.875rem;font-variant-numeric:tabular-nums}.teacher-pulse-stack{display:flex;gap:2px;height:10px;overflow:hidden;border-radius:var(--r-pill);background:var(--surface-2)}.teacher-pulse-stack .teacher-pulse-fill{flex-basis:0;min-width:4px}.teacher-pulse-week-text{margin:0;color:var(--muted);font-size:.8125rem;line-height:1.45;font-variant-numeric:tabular-nums;text-wrap:pretty}@media(min-width:720px){.teacher-pulse-week{grid-template-columns:minmax(11rem,15rem) minmax(0,1fr);align-items:center;column-gap:var(--sp-8)}.teacher-pulse-week-head{grid-row:span 2;flex-direction:column;justify-content:center}}.teacher-tabs{display:flex;flex-wrap:wrap;gap:var(--sp-2) var(--sp-6)}.teacher-materials-tabs{border-bottom:1px solid var(--line)}.teacher-materials-tabs .teacher-tab{min-height:48px}@media(max-width:599.98px){.teacher-tabs{column-gap:var(--sp-4)}.teacher-tab{margin-bottom:0}}.teacher-tab{display:inline-flex;align-items:center;min-height:44px;margin-bottom:-1px;padding:var(--sp-4) var(--sp-2);border-bottom:3px solid transparent;color:var(--muted);font-weight:800;text-decoration:none}.teacher-tab:hover{color:var(--text)}.teacher-tab:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.teacher-tab.is-current{border-bottom-color:var(--accent);color:var(--text)}.teacher-week-kicker{color:var(--muted);font-size:.85rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.teacher-goal{display:grid;gap:var(--sp-3);max-width:520px}.teacher-goal-track{position:relative;height:14px;border-radius:var(--r-pill);background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line)}.teacher-goal-fill{position:absolute;inset:0 auto 0 0;border-radius:var(--r-pill);background:var(--premium);transform-origin:left center;animation:teacher-goal-fill .8s ease-out both}.teacher-goal-mark{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--warn-ink)}.teacher-goal-count{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-4);font-variant-numeric:tabular-nums;font-weight:800}.teacher-goal-done{display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-4);border-radius:var(--r-pill);background:var(--premium);color:var(--premium-fg)}@keyframes teacher-goal-fill{0%{transform:scaleX(0)}}@media(prefers-reduced-motion:reduce){.teacher-goal-fill{animation:none}}.teacher-league-intro{display:grid;gap:var(--sp-2)}.teacher-league-intro p{margin:0;text-wrap:pretty}.teacher-league-week{font-weight:800}.teacher-league-board{margin:0;padding:0;list-style:none;display:grid}.teacher-league-row{display:flex;align-items:center;gap:var(--sp-4);min-height:48px;padding-block:var(--sp-2);border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}.teacher-league-row:last-child{border-bottom:0}.teacher-league-rank{min-width:3ch;font-weight:800;color:var(--muted)}.teacher-league-challenge{display:grid;gap:var(--sp-4);padding-top:var(--sp-6);border-top:1px solid var(--line)}.teacher-league-challenge>p{margin:0}.teacher-tools-action{justify-self:start}.teacher-tools-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sp-8);margin-top:var(--sp-8)}@media(min-width:1200px){.teacher-tools-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.teacher-tools-cell{display:grid;gap:var(--sp-8);align-content:start;min-width:0}.teacher-tools-cell>:only-child{height:100%}.teacher-tools-cell:empty{display:none}.teacher-tools-cell--wide{grid-column:1/-1}.teacher-tools-cell .teacher-section>p{margin:0}.teacher-empty{display:flex;align-items:center;gap:var(--sp-4)}.teacher-art{flex:none;width:96px;height:96px;border-radius:var(--r-sm)}.teacher-art--sm{width:56px;height:56px}.teacher-code{padding:var(--sp-3) var(--sp-5);border-radius:var(--r-xs);background:var(--surface-2);font-family:ui-monospace,Menlo,Consolas,monospace;font-weight:800;letter-spacing:.12em}.teacher-back{margin-bottom:var(--sp-6)}.teacher-back,.teacher-link--tap{min-height:44px}.teacher-x{justify-content:center;min-width:44px;min-height:44px;margin:-14px -10px}.teacher-students{margin-bottom:var(--sp-8)}.teacher-settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--sp-8)}.teacher-setting{display:grid;align-content:start;gap:var(--sp-4);min-width:0}.teacher-setting p{margin:0}.teacher-main .teacher-setting-title{margin:0;font-family:var(--font-display);font-size:var(--fs-lead);font-weight:700;text-wrap:balance}.teacher-setting-lead{text-wrap:pretty}.teacher-setting-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--sp-4)}.teacher-setting-form>.teacher-input-field,.teacher-setting-form>.teacher-select{flex:1 1 160px}.teacher-setting-form--level>.teacher-input-field{flex:1 1 13rem}.teacher-qr{width:min(100%,280px);height:auto;justify-self:center}.teacher-qr rect{fill:var(--scan-light)}.teacher-qr path{fill:var(--scan-dark)}.teacher-exam-link-text{display:flex;flex-direction:column;align-items:flex-start;gap:var(--sp-3);margin-top:var(--sp-3)}.teacher-exam-link-text p{margin:0}.teacher-exam-link-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.teacher-exam-link-url{-webkit-user-select:all;user-select:all;overflow-wrap:anywhere}.teacher-roster table:not(.teacher-table){width:100%;border-collapse:collapse}.teacher-roster table:not(.teacher-table) th,.teacher-roster table:not(.teacher-table) td{padding:var(--sp-4) var(--sp-3);border-bottom:1px solid var(--line-2);text-align:left}.teacher-roster table:not(.teacher-table) th{color:var(--muted);font-size:.9rem}.teacher-roster table:not(.teacher-table) th:last-child,.teacher-roster table:not(.teacher-table) td:last-child{text-align:right}.teacher-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.teacher-main h1:focus{outline:none}.teacher-page noscript{display:block}.teacher-assignments{margin-bottom:var(--sp-8)}.teacher-assignments h2,.teacher-assignments h3{margin:0}.teacher-assignments-head{justify-content:space-between;margin-top:0}.teacher-assignment-form{margin-top:var(--sp-6);padding-top:var(--sp-6);border-top:1px solid var(--line)}.teacher-assignment-form input[type=date]{max-width:220px}.teacher-lessons{display:grid;gap:var(--sp-4);margin:var(--sp-6) 0 0;padding:0;border:0}.teacher-lessons legend{padding:0;font-weight:800}.teacher-picked{display:flex;flex-wrap:wrap;gap:var(--sp-3);margin:0;padding:0;list-style:none}.teacher-picked li{display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);border-radius:var(--r-pill);background:var(--surface-2);font-weight:700}.teacher-library{display:grid;max-height:420px;margin:0;padding:0;overflow-y:auto;border:1px solid var(--line);border-radius:var(--r-sm);list-style:none}.teacher-library li+li{border-top:1px solid var(--line)}.teacher-lesson{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-4);padding:var(--sp-4) var(--sp-5);cursor:pointer}.teacher-lesson input{width:auto}.teacher-lesson .teacher-grow{display:grid}.teacher-scene-picker{display:grid;gap:var(--sp-4);min-width:0;margin:0;padding:0;border:0}.teacher-scene-picker legend{margin-bottom:var(--sp-3);padding:0;font-weight:800}.teacher-scene-picker .teacher-scene-picked{align-items:center}.teacher-scene-panel{display:grid;gap:var(--sp-4)}.teacher-scene-option{width:100%;border:0;background:none;color:inherit;font:inherit;text-align:left}.teacher-scene-option[aria-pressed=true]{background:var(--surface-2);box-shadow:inset 4px 0 0 var(--accent)}.teacher-scene-option:disabled{cursor:default}.teacher-lesson-title,.teacher-assignment-title{margin:0;font-weight:800}.teacher-tag{display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-pill);font-size:.85em;font-weight:800}.teacher-tag--challenge{border-color:var(--warn);background:var(--warn);color:var(--warn-ink)}.teacher-tag--muted{color:var(--muted)}.teacher-tag--refused{border-color:var(--bad);color:var(--bad)}.teacher-assignment{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-5);padding-top:var(--sp-5);border-top:1px solid var(--line)}.teacher-assignment p{margin:0}.teacher-assignment-progress{color:var(--accent-2);font-weight:800}.teacher-exercise{display:grid;gap:var(--sp-4);margin:var(--sp-4) 0 0;padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--r-sm)}.teacher-exercise legend{padding:0 var(--sp-2);font-weight:800}.teacher-exercise p{margin:0}.teacher-exercise .teacher-button{margin-top:0}.teacher-exercise-row .teacher-link{min-height:44px}.teacher-exercise-foot{display:flex;justify-content:flex-end;padding-top:var(--sp-4);border-top:1px solid var(--line-2)}.teacher-exercise-remove.teacher-button--ghost{border-color:transparent;color:var(--bad)}.teacher-exercise-remove.teacher-button--ghost:hover{border-color:var(--bad);background:transparent}.teacher-exercise-add{margin-top:var(--sp-4);padding:var(--sp-5);border:1px dashed var(--line);border-radius:var(--r-sm)}.teacher-submissions{flex:1 1 100%;margin-top:var(--sp-4);padding-top:var(--sp-4);border-top:1px solid var(--line-2)}.teacher-submissions h3{margin:0 0 var(--sp-3)}.teacher-submission{display:grid;gap:var(--sp-4);padding-block:var(--sp-4);border-bottom:1px solid var(--line-2)}.teacher-submission p{margin:0}.teacher-grade-slot h4{margin:0;color:var(--muted);font-size:.9rem}.teacher-grade-answers{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--sp-6)}.teacher-grade-slot .teacher-rubric-intro{max-width:72ch;margin-bottom:var(--sp-4);color:var(--muted);font-size:.875rem}.teacher-rubric-row{display:grid;grid-template-columns:minmax(150px,1.2fr) repeat(4,minmax(0,1fr));align-items:stretch;gap:var(--sp-3)}.teacher-rubric-name{display:grid;align-content:center;gap:var(--sp-1);font-weight:800}.teacher-rubric-help{color:var(--muted);font-size:.85rem;font-weight:400;line-height:1.35;text-wrap:pretty}@media(max-width:640px){.teacher-rubric-row{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-rubric-name{grid-column:1/-1;margin-top:var(--sp-4)}}.teacher-rubric-level{min-height:56px;display:grid;grid-template-columns:auto minmax(0,1fr);align-content:start;column-gap:var(--sp-3);row-gap:var(--sp-1);padding:var(--sp-4) var(--sp-5);border:1px solid var(--line);border-radius:var(--r-sm);background:transparent;color:var(--text);font:inherit;font-size:.9rem;line-height:1.3;text-align:left;cursor:pointer}.teacher-rubric-level:hover{background:var(--surface-2)}.teacher-rubric-level[aria-pressed=true]{border-color:var(--accent-2);background:var(--accent-2);color:var(--ink-fg)}.teacher-rubric-level[aria-pressed=true] .teacher-rubric-descriptor{color:inherit}.teacher-rubric-level-name{font-weight:700}.teacher-rubric-descriptor{grid-column:1/-1;color:var(--muted);font-size:.85rem;line-height:1.35;text-wrap:pretty}.teacher-saved{color:var(--good);font-weight:800}.teacher-return{max-width:72ch;margin-top:0;gap:var(--sp-3)}.teacher-return label{margin-top:0}.teacher-return-count{font-variant-numeric:tabular-nums;font-size:.85rem}.teacher-returned-note{max-width:72ch;padding:var(--sp-3) var(--sp-4);border-left:3px solid var(--accent-2);border-radius:var(--r-xs);background:var(--surface-2)}.teacher-returned-note h4{margin:0 0 var(--sp-2);color:var(--muted);font-size:.9rem}.teacher-returned-note p{text-wrap:pretty;white-space:pre-line}.teacher-compare{display:grid;gap:var(--sp-3)}.teacher-compare-total{font-weight:800;font-variant-numeric:tabular-nums}.teacher-compare-scroll{overflow-x:auto}.teacher-compare-table{width:100%;border-collapse:collapse;table-layout:fixed}.teacher-compare-table th,.teacher-compare-table td{padding:var(--sp-3);border-bottom:1px solid var(--line-2);text-align:left;vertical-align:top}.teacher-compare-table thead th{color:var(--muted);font-size:.85rem}.teacher-compare-table th[scope=row]{width:11rem;font-weight:800}.teacher-compare-table .teacher-compare-answer{display:block;margin-bottom:var(--sp-2);overflow-wrap:anywhere}.teacher-notas{display:grid;gap:var(--sp-8);min-width:0}.teacher-grades>.teacher-section{margin-top:var(--sp-8)}.teacher-notas .teacher-kpis,.teacher-notas>.teacher-weak{margin:0}.teacher-notas-intro{display:grid;gap:var(--sp-2);max-width:68ch}.teacher-notas-intro .teacher-help{margin-top:0}.teacher-notas-showing{margin:0}.teacher-gradebook{max-height:70vh;overflow:auto}.teacher-gradebook .teacher-table-wrap{overflow:visible}.teacher-gradebook .teacher-table thead th{position:sticky;top:0;z-index:2;background:var(--surface);white-space:nowrap;vertical-align:bottom}.teacher-gradebook .teacher-table thead th:first-child{left:0;z-index:3}.teacher-gradebook .teacher-work-col{min-width:9rem}.teacher-gradebook .teacher-work-title,.teacher-gradebook .teacher-work-due{display:block;letter-spacing:0;text-transform:none}.teacher-gradebook .teacher-work-title{max-width:14rem;overflow:hidden;color:var(--text);font-size:var(--fs-sm);text-overflow:ellipsis}.teacher-gradebook .teacher-work-due{font-weight:600}.teacher-gradebook .teacher-gradebook-name{position:sticky;left:0;z-index:1;min-width:11rem;background:var(--surface);box-shadow:1px 0 0 var(--line);white-space:nowrap}.teacher-gradebook .teacher-table tbody td{white-space:nowrap}.teacher-gradebook .teacher-table tbody tr:hover>*{background:var(--surface-2)}.teacher-gradebook td.teacher-cell>*{display:inline-block;vertical-align:middle}.teacher-gradebook td.teacher-cell>*+*{margin-left:var(--sp-2)}.teacher-gradebook .teacher-num{font-weight:800}.teacher-gradebook .teacher-sort{display:inline-flex;align-items:center;gap:var(--sp-1);min-height:var(--size-md);padding:0;border:0;background:none;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}.teacher-gradebook .teacher-sort:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.teacher-gradebook thead th .teacher-sort-mark{display:inline-flex}.teacher-gradebook .teacher-sort-mark--none{opacity:.35}.teacher-gradebook .teacher-sort-mark--asc{transform:rotate(180deg)}.teacher-gradebook th[aria-sort=ascending],.teacher-gradebook th[aria-sort=descending]{color:var(--text)}.teacher-gradebook .teacher-table tfoot>tr>*{padding:var(--sp-4) var(--sp-5) var(--sp-3) 0;border-top:1px solid var(--line);font-weight:800;text-align:left;vertical-align:middle;white-space:nowrap}.teacher-missed-tag{color:var(--text);font-weight:800}.teacher-missed-pick{max-width:26rem}.teacher-missed-failed{display:grid;justify-items:start;gap:var(--sp-4)}.teacher-missed-failed p{margin:0}.teacher-missed-list{counter-reset:missed;display:grid;margin:0;padding:0;list-style:none}.teacher-missed-item{counter-increment:missed;display:grid;grid-template-columns:var(--sp-8) 4.5rem minmax(0,1fr);align-items:baseline;gap:var(--sp-5);padding-block:var(--sp-5);border-top:1px solid var(--line)}.teacher-missed-item:first-child{padding-top:0;border-top:0}.teacher-missed-item:before{content:counter(missed);color:var(--muted);font-family:var(--font-display);font-size:var(--fs-lead);font-weight:700;font-variant-numeric:tabular-nums}.teacher-missed-item .teacher-pill{justify-self:start;font-variant-numeric:tabular-nums}.teacher-missed-item p{margin:0}.teacher-status{width:fit-content;font-weight:800}.teacher-status--done{color:var(--good)}.teacher-status--late{padding-inline:var(--sp-2);border-radius:var(--r-xs);background:var(--warn);color:var(--warn-ink)}.teacher-status--missing{color:var(--bad)}.teacher-status--started{color:var(--accent-2)}.teacher-status--pending,.teacher-status--none{color:var(--muted)}.teacher-status--graded{color:var(--good)}.teacher-status--returned{color:var(--accent-2)}.teacher-chip{padding:0 var(--sp-2);border:1px solid var(--line);border-radius:var(--r-xs);color:var(--muted);font-size:.85rem;font-weight:800}.teacher-chip--done{border-color:var(--good);color:var(--good)}.teacher-chip--started{border-color:var(--accent-2);color:var(--accent-2)}.teacher-chip--late{border-color:var(--accent-3);color:var(--accent-3)}.teacher-chip--missing{border-color:var(--bad);background:var(--bad);color:var(--ink-fg)}.teacher-chip--grade{border-color:var(--warn);background:var(--warn);color:var(--warn-ink)}.teacher-help{margin-top:var(--sp-3)}.teacher-help>summary{width:fit-content;min-height:44px;display:flex;align-items:center;color:var(--accent-2);font-weight:800;cursor:pointer}.teacher-missed-rate{min-width:3.5em;color:var(--bad)}.teacher-missed-line{font-weight:800}.teacher-missed-answer{font-weight:600}.teacher-missed-spots{min-height:48px;margin-block:calc(var(--sp-2) * -1) calc(var(--sp-3) * -1);font-weight:700}.teacher-practise-cta{display:flex;margin-top:var(--sp-6);padding-top:var(--sp-6);border-top:1px solid var(--line)}.teacher-practise-cta p{margin:0}.teacher-practise-cta .teacher-button,.teacher-practise .teacher-button,.teacher-practise input:not([type=checkbox]){min-height:48px}.teacher-dialog.teacher-practise{width:min(100% - 2 * var(--sp-6),600px);max-height:min(100dvh - 2 * var(--sp-6),760px);padding:var(--sp-8);overflow-y:auto;overscroll-behavior:contain}.teacher-dialog.teacher-practise h2{text-wrap:balance}.teacher-dialog.teacher-practise p{text-wrap:pretty}.teacher-practise-form,.teacher-practise-done{display:grid;gap:var(--sp-6)}.teacher-practise-form>p,.teacher-practise-done>p{margin:0}.teacher-practise-lessons{min-width:0;margin:0;padding:0;border:0}.teacher-practise-lessons legend{padding:0;font-weight:800}.teacher-practise-lessons>p{margin:var(--sp-2) 0 var(--sp-4)}.teacher-practise-lessons>ul{display:grid;gap:var(--sp-4);margin:0;padding:0;list-style:none}.teacher-practise-lesson{border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg);transition-property:opacity;transition-duration:.15s;transition-timing-function:ease-out}.teacher-practise-lesson--out{opacity:.6}.teacher-practise-check{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-5);min-height:48px;padding:var(--sp-4) var(--sp-6);cursor:pointer;font-weight:800}.teacher-practise-check:has(input:disabled){cursor:not-allowed}.teacher-practise-check:has(input:focus-visible){outline:2px solid var(--accent-2);outline-offset:-2px;border-radius:var(--r-md)}.teacher-practise-lesson-title{flex:1 1 12em;min-width:0;overflow-wrap:anywhere}.teacher-practise-questions{display:grid;gap:var(--sp-3);margin:0;padding:0 var(--sp-6) var(--sp-5) calc(var(--sp-6) + 20px + var(--sp-5));list-style:none}.teacher-practise-questions li{display:flex;gap:var(--sp-5);align-items:baseline}.teacher-practise-questions .teacher-grow{display:grid;gap:var(--sp-1)}.teacher-practise-questions .teacher-missed-rate{min-width:3.5em;font-variant-numeric:tabular-nums}.teacher-practise-line{overflow-wrap:anywhere}.teacher-practise-who{display:flex;align-items:center;gap:var(--sp-5);padding:var(--sp-5) var(--sp-6);border-radius:var(--r-md);background:var(--surface-2);font-weight:800}.teacher-practise-who>span{display:grid;gap:var(--sp-1)}.teacher-practise-label{color:var(--muted);font-size:.875rem;font-weight:700}.teacher-practise-fields{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:var(--sp-6)}@media(max-width:599.98px){.teacher-practise-fields{grid-template-columns:minmax(0,1fr)}}.teacher-practise-fields input[aria-invalid=true]{border-color:var(--bad)}.teacher-practise-nothing{padding:var(--sp-6);border-radius:var(--r-md);background:var(--surface-2)}.teacher-practise .teacher-error{margin:0}.teacher-practise-done h2{display:flex;align-items:center;gap:var(--sp-5)}.teacher-practise-done h2:focus{outline:none}.teacher-practise-badge{display:inline-grid;flex:none;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--good);color:var(--ink-fg)}.teacher-practise-badge--again{background:var(--warn);color:var(--warn-ink)}.teacher-practise-skeleton{display:grid;gap:var(--sp-4)}.teacher-practise-skeleton>span[aria-hidden]{height:56px;border-radius:var(--r-md);background:var(--surface-2);animation:teacher-practise-pulse 1.2s ease-in-out infinite alternate}@keyframes teacher-practise-pulse{0%{opacity:1}to{opacity:.55}}@media(prefers-reduced-motion:reduce){.teacher-practise-skeleton>span[aria-hidden]{animation:none}}.teacher-poster{display:none}@media print{@page{size:A4 portrait;margin:14mm}html,body{background:var(--scan-light);color:var(--scan-dark)}.teacher-page{display:none}.teacher-poster{display:flex;flex-direction:column;align-items:center;gap:3mm;color:var(--scan-dark);text-align:center;break-inside:avoid}.teacher-poster p,.teacher-poster h1,.teacher-poster ol{margin:0}.teacher-poster h1{font-size:22pt;font-weight:800;line-height:1.15}.teacher-poster-brand{display:inline-flex;align-items:center;gap:2mm;font-size:14pt;font-weight:900}.teacher-poster-class{margin-top:2mm!important;font-size:34pt;font-weight:900;line-height:1.1;overflow-wrap:anywhere}.teacher-poster-meta{font-size:14pt;font-weight:700}.teacher-poster-label{margin-top:3mm!important;font-size:13pt;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.teacher-poster-code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:54pt;font-weight:900;line-height:1;letter-spacing:.18em;margin-right:-.18em!important}.teacher-poster-qr{width:95mm;height:95mm;margin-top:2mm}.teacher-poster-qr rect{fill:var(--scan-light)}.teacher-poster-qr path{fill:var(--scan-dark)}.teacher-poster-link{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:15pt;font-weight:800}.teacher-poster-steps{max-width:160mm;margin-top:4mm!important;padding-left:8mm;display:grid;gap:2mm;font-size:14pt;line-height:1.3;text-align:left}}.teacher-level--b2{background:var(--lvl-b1)}.teacher-bank-labels{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);margin:var(--sp-2) 0 0;padding:0;list-style:none;font-size:.875rem;font-weight:400}.teacher-bank-details{display:grid;grid-template-columns:max-content minmax(0,1fr);column-gap:var(--sp-8);margin:0}.teacher-bank-detail{display:grid;grid-column:1/-1;grid-template-columns:subgrid;align-items:baseline;padding-block:var(--sp-5);border-top:1px solid var(--line)}.teacher-bank-detail:first-child{padding-top:0;border-top:0}.teacher-bank-detail dt{color:var(--muted);font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.teacher-bank-detail dd{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--sp-1) var(--sp-3);min-width:0;margin:0}.teacher-bank-detail-value{font-weight:700;overflow-wrap:anywhere;text-wrap:pretty}.teacher-bank-detail-ai{color:var(--muted);font-size:.875rem}.teacher-section>.teacher-bank-edit{justify-self:start}@media(max-width:599.98px){.teacher-bank-details{grid-template-columns:minmax(0,1fr)}.teacher-bank-detail{row-gap:var(--sp-2)}.teacher-section>.teacher-bank-edit{justify-self:stretch}}.teacher-bank-open{text-align:left}.teacher-bank [data-testid=teacher-bank-list]{padding:0;container-type:inline-size}.teacher-bank [data-testid=teacher-bank-list]>.teacher-section-head{padding:var(--sp-6) var(--sp-8);margin:0;border-bottom:1px solid var(--line)}.teacher-bank [data-testid=teacher-bank-list] .teacher-section-label{text-transform:none;letter-spacing:normal;font-size:1rem;color:var(--text)}.teacher-bank [data-testid=teacher-bank-list]>.teacher-muted,.teacher-bank [data-testid=teacher-bank-list]>.teacher-error,.teacher-bank [data-testid=teacher-bank-list]>.teacher-empty{margin:var(--sp-8)}.teacher-bank [data-testid=teacher-bank-list]>.teacher-button{margin:var(--sp-6) var(--sp-8)}.teacher-worksheet-list{list-style:none;margin:0;padding:0}.teacher-worksheet-row{display:grid;grid-template-columns:minmax(0,1fr) 12rem;align-items:center;gap:var(--sp-6) var(--sp-9);padding:var(--sp-6) var(--sp-8)}.teacher-worksheet-row+.teacher-worksheet-row{border-top:1px solid var(--line)}.teacher-worksheet-info{min-width:0}.teacher-main .teacher-worksheet-title{margin:0;font-family:var(--font-body);font-size:1.125rem;line-height:1.4}.teacher-worksheet-title .teacher-bank-open{display:block;max-width:100%;padding:var(--sp-2) 0;color:var(--text);font-size:inherit;font-weight:700;line-height:inherit;overflow-wrap:anywhere;text-decoration:none}.teacher-worksheet-title .teacher-bank-open:hover{text-decoration:underline;text-underline-offset:.2em}.teacher-worksheet-row .teacher-bank-labels{color:var(--muted);gap:0 var(--sp-5);margin:0;line-height:1.5;align-items:baseline;overflow-wrap:anywhere}.teacher-worksheet-row .teacher-bank-labels>li{min-width:0}.teacher-worksheet-ai{font-size:.75rem}.teacher-worksheet-meta{display:flex;align-items:baseline;flex-wrap:wrap;gap:0 var(--sp-6);margin-top:var(--sp-3);font-size:.875rem;color:var(--muted);min-height:44px}.teacher-worksheet-level{font-weight:700;color:var(--text)}.teacher-worksheet-disclosure{min-width:0}.teacher-worksheet-disclosure>summary{display:flex;align-items:center;gap:var(--sp-3);width:fit-content;min-height:44px;cursor:pointer;list-style:none;color:var(--muted)}.teacher-worksheet-disclosure>summary::-webkit-details-marker{display:none}.teacher-worksheet-disclosure>summary:hover{color:var(--text)}.teacher-worksheet-disclosure>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}.teacher-worksheet-disclosure[open]>summary svg{transform:rotate(180deg)}.teacher-worksheet-disclosure>p{margin:0 0 var(--sp-4);max-width:42rem;font-size:.875rem;line-height:1.5;overflow-wrap:anywhere}.teacher-worksheet-action{display:flex;flex-direction:column;align-items:flex-end;gap:var(--sp-4)}.teacher-worksheet-action .teacher-button{min-width:7rem;min-height:44px;color:var(--text)}.teacher-worksheet-updated{color:var(--muted);font-size:.75rem;text-align:right}.teacher-worksheet-archived{font-style:italic}@container (max-width: 40rem){.teacher-worksheet-row{grid-template-columns:minmax(0,1fr);gap:var(--sp-4);padding:var(--sp-6)}.teacher-worksheet-action{flex-direction:row;justify-content:space-between;align-items:center;flex-wrap:wrap}.teacher-worksheet-action .teacher-button{min-width:min(8rem,100%)}}.teacher-bank-actions,.teacher-bank-secondary{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-5)}.teacher-bank-title-form{margin-top:var(--sp-8);padding-top:var(--sp-8);border-top:1px solid var(--line)}@media(max-width:599.98px){.teacher-bank-actions{display:grid;flex:1 1 100%;grid-template-columns:minmax(0,1fr)}.teacher-bank-actions>.teacher-button--primary{order:-1}.teacher-bank-secondary{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}.teacher-bank-secondary .teacher-button{min-width:0;padding-inline:var(--sp-4)}.teacher-bank-title-form>.teacher-button{flex:1 1 100%}}.teacher-audio{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3)}.teacher-audio audio{max-width:100%}.teacher-audio-label{color:var(--muted);font-size:.9rem}.teacher-voice{display:grid;gap:var(--sp-3);padding:var(--sp-4);border:1px solid var(--line);border-left:4px solid var(--accent-3);border-radius:var(--r-sm)}.teacher-voice .teacher-button:not(.teacher-button--ghost):not(:disabled){border-color:var(--accent-3);background:var(--accent-3);color:var(--ink-fg)}.teacher-voice audio{max-width:100%}.teacher-voice-live{color:var(--accent-3);font-weight:800}.teacher-voice-new{color:var(--accent-3)}.teacher-grade-slot:focus-visible{outline:2px solid var(--accent-3);outline-offset:2px}.teacher-ai-review{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:var(--sp-5);align-items:start}.teacher-ai-review img{display:block;width:100%;margin-top:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-sm)}@media(max-width:760px){.teacher-ai-review{grid-template-columns:1fr}}.teacher-ai-camera-input{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.teacher-ai-camera{display:grid;gap:var(--sp-4);padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}.teacher-ai-camera video,.teacher-ai-camera img{width:100%;max-width:640px;max-height:60vh;object-fit:contain;border-radius:var(--r-sm);background:var(--surface-2)}.teacher-ai-photos{display:flex;flex-wrap:wrap;gap:var(--sp-3);margin:0;padding:0;list-style:none}.teacher-ai-photos li{display:flex;align-items:flex-start}.teacher-ai-photos img{width:96px;height:128px;object-fit:cover;border:1px solid var(--line);border-radius:var(--r-sm)}.teacher-plan{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sp-6);margin-bottom:var(--sp-8)}.teacher-plan h2,.teacher-plan p{margin:0}.teacher-plan-schedule{display:grid;gap:var(--sp-4);min-width:0;padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.teacher-plan-schedule>.teacher-muted{margin-top:calc(-1 * var(--sp-2))}.teacher-plan-days{display:flex;flex-wrap:wrap;gap:var(--sp-3);min-width:0;margin:0;padding:0;border:0}.teacher-plan-days legend{margin-bottom:var(--sp-3);padding:0;font-weight:800}.teacher-plan-time input.teacher-control{max-width:10rem}.teacher-plan-day{position:relative;min-width:52px;display:inline-flex;align-items:center;justify-content:center;text-transform:capitalize}.teacher-plan-day input{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;opacity:0;cursor:inherit}.teacher-plan-day.is-on,.teacher-plan-day.is-on:hover{border-color:var(--ink);background:var(--ink);color:var(--ink-fg)}.teacher-plan-day:focus-within{outline:2px solid var(--accent-2);outline-offset:2px}.teacher-plan-next{display:grid;gap:var(--sp-3);padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.teacher-plan-next-title{font-weight:800}.teacher-plan-skipped{display:grid;gap:var(--sp-2);margin:0;padding:0;list-style:none}.teacher-plan-skipped li{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-4)}.teacher-plan-undo:disabled{cursor:default;opacity:.5}.teacher-plan-undo{min-height:44px;padding:0 var(--sp-3);border:0;background:none;color:var(--accent-2);font:inherit;font-weight:800;text-decoration:underline;cursor:pointer}.teacher-plan-subtitle{margin:0;font-size:1rem}.teacher-plan-modules{display:grid;gap:0;margin:0;padding:0;list-style:none}.teacher-plan-calendar,.teacher-plan-earlier{display:grid;gap:var(--sp-3)}.teacher-plan-earlier{padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.teacher-plan-earlier-list{display:grid;gap:var(--sp-2);margin:0;padding:0;list-style:none}.teacher-plan-earlier-list li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-4)}.teacher-plan-term{margin:var(--sp-3) 0 0;font-size:.95rem;color:var(--accent-2)}.teacher-plan-weeks-wrap{position:relative}.teacher-plan-week.is-skipped>*{background:var(--surface-2)}.teacher-plan-week-module{min-width:0}.teacher-plan-week-module strong,.teacher-plan-week-module span{white-space:nowrap}.teacher-plan-week-module strong{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis}.teacher-plan-prepared{display:grid;gap:2px;margin:0;padding:0;list-style:none;font-size:.875rem;line-height:1.35}.teacher-plan-prepared li{max-width:36ch;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.teacher-plan-prepared-stage{color:var(--muted);font-weight:700}.teacher-plan .teacher-row-action{color:var(--text)}.teacher-plan .teacher-row-action:hover:not(:disabled){background:color-mix(in srgb,var(--text) 8%,transparent)}.teacher-plan .teacher-row-action:disabled{color:var(--muted)}@media(max-width:640px){.teacher-plan-weeks thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.teacher-plan-weeks tbody{display:block}.teacher-plan-weeks tbody>tr{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"week" "module" "mission" "act";align-items:center;gap:var(--sp-2) var(--sp-4);padding:var(--sp-4) var(--sp-3);border-bottom:1px solid var(--line)}.teacher-plan-weeks tbody>tr:last-child{border-bottom:0}.teacher-plan-weeks tbody>tr>*{padding:0;border-bottom:0;background:none}.teacher-plan-weeks tbody>tr.is-skipped{background:var(--surface-2)}.teacher-plan-weeks .teacher-plan-week-day{grid-area:week}.teacher-plan-weeks .teacher-plan-week-module{grid-area:module}.teacher-plan-weeks .teacher-plan-week-mission{grid-area:mission}.teacher-plan-weeks .teacher-plan-week-act{grid-area:act;justify-self:start}.teacher-plan-weeks .teacher-plan-week-act .teacher-row-action{padding-inline:var(--sp-3);margin-inline-start:calc(-1 * var(--sp-3))}.teacher-plan-weeks .teacher-plan-week-mission:not(:has(*)),.teacher-plan-weeks .teacher-plan-week-act:not(:has(*)){display:none}}.teacher-main th.teacher-plan-week-day{white-space:nowrap}.teacher-mission-note{margin:0;color:var(--good);font-weight:800}.teacher-plan-chooser,.teacher-plan-choice{display:grid;gap:var(--sp-4);align-content:start;min-width:0}.teacher-plan-chooser h3,.teacher-plan-chooser h4,.teacher-plan-chooser p,.teacher-plan-choice h3,.teacher-plan-choice h4,.teacher-plan-choice p{margin:0}.teacher-plan-chooser{gap:var(--sp-8) var(--sp-6)}.teacher-plan-chooser>*{min-width:0}.teacher-plan-chooser-head{display:grid;gap:var(--sp-2)}.teacher-plan-chooser-head .teacher-muted{max-width:65ch;text-wrap:pretty}@media(min-width:900px){.teacher-plan-chooser{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-plan-chooser-head,.teacher-plan-choice--wide{grid-column:1/-1}}.teacher-plan-chooser .teacher-row-action{white-space:nowrap}@media(max-width:600px){.teacher-plan-chooser .teacher-table,.teacher-plan-chooser .teacher-table tbody,.teacher-plan-chooser .teacher-table tr{display:block}.teacher-plan-chooser .teacher-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.teacher-plan-chooser .teacher-table tbody>tr{display:grid;gap:var(--sp-2);padding:var(--sp-4) 0;border-bottom:1px solid var(--line)}.teacher-plan-chooser .teacher-table tbody>tr:last-child{border-bottom:0}.teacher-plan-chooser .teacher-table tbody>tr>*{display:block;padding:0;border:0}.teacher-plan-chooser .teacher-table tbody>tr>.is-end{text-align:left}.teacher-plan-chooser .teacher-table .teacher-row-actions{justify-content:flex-start;flex-wrap:wrap;margin-left:calc(-1 * var(--sp-4))}}.teacher-plan-tile{grid-template-rows:auto 1fr;padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--r-md)}.teacher-plan-tile>.teacher-plan-choice{grid-template-rows:auto auto auto 1fr}.teacher-plan-tile .teacher-row{align-self:end}.teacher-plan-option-text{display:grid;gap:var(--sp-2);justify-items:start;font-weight:400}.teacher-plan-count{font-variant-numeric:tabular-nums;white-space:nowrap}.teacher-plan-missing{display:inline-flex;align-items:center;gap:var(--sp-2);color:var(--warn-ink);font-weight:700}.teacher-plan-rename{display:grid;gap:var(--sp-4);max-width:28rem;margin-top:var(--sp-4)}.teacher-plan-import{display:grid;gap:var(--sp-5);min-width:0}.teacher-plan-import>*{min-width:0}.teacher-plan-import .teacher-button,.teacher-plan-import .teacher-row-action{max-width:100%;white-space:normal}.teacher-plan-import h3,.teacher-plan-import h4,.teacher-plan-import p,.teacher-plan-import .teacher-input-error{margin:0}[data-testid=teacher-plan-import-help]{display:inline-flex;align-items:center;gap:var(--sp-2)}.teacher-plan-import-form{display:grid;gap:var(--sp-4)}.teacher-plan-drop{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:var(--sp-5) var(--sp-6);padding:var(--sp-6);border:2px dashed var(--line);border-radius:var(--r-md);transition:border-color var(--dur-base) ease-out,background-color var(--dur-base) ease-out}.teacher-plan-drop.is-over{border-color:var(--accent-2);background:var(--surface-2)}.teacher-plan-drop>p{grid-column:1/-1}.teacher-plan-drop-way{display:grid;gap:var(--sp-3);justify-items:start;align-content:start}.teacher-plan-review .teacher-table{table-layout:fixed;overflow-wrap:anywhere}.teacher-plan-review thead th:first-child{width:40%}.teacher-plan-review tbody>tr>*{vertical-align:top;padding-block:var(--sp-4)}.teacher-plan-review tr.is-check{background:var(--surface-2)}.teacher-plan-review-add{max-width:20rem}.teacher-plan-chips{display:flex;flex-wrap:wrap;gap:var(--sp-3);margin-bottom:var(--sp-3)}.teacher-plan-chip-remove{position:relative;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:0;border-radius:var(--r-pill);background:transparent;color:inherit;cursor:pointer}.teacher-plan-chip-remove:after{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px}.teacher-plan-chip-remove:hover:not(:disabled){background:color-mix(in srgb,var(--text) 10%,transparent)}.teacher-plan-chip-remove:focus-visible{outline:2px solid var(--accent-2);outline-offset:1px}.teacher-plan-chip-remove:disabled{cursor:not-allowed;opacity:.5}.teacher-plan-applied{display:grid;gap:var(--sp-3);padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.teacher-plan-save-form{display:grid;gap:var(--sp-3);font-weight:800}.teacher-plan-modules-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-3) var(--sp-6)}.teacher-plan-modules-head .teacher-row-action svg{transform:rotate(0);transition:transform var(--dur-base) ease-out}.teacher-plan-modules-head .teacher-row-action[aria-expanded=true] svg{transform:rotate(180deg)}@media(prefers-reduced-motion:reduce){.teacher-plan-modules-head .teacher-row-action svg{transition:none}}.teacher-plan-modules-tools{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-4) var(--sp-6)}.teacher-plan-module{display:flex;align-items:center;gap:var(--sp-4);min-height:var(--size-tap);padding:var(--sp-2) 0;border-bottom:1px solid var(--line)}.teacher-plan-module:last-child{border-bottom:0}.teacher-plan-module.is-done .teacher-plan-module-name strong{color:var(--muted)}.teacher-plan-module-at{flex:none;min-width:1.75rem;color:var(--muted);font-size:var(--fs-sm);font-weight:700;font-variant-numeric:tabular-nums;text-align:end}.teacher-plan-module-name{display:flex;flex:1 1 auto;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-4);min-width:0}.teacher-plan-module-tools{display:flex;gap:var(--sp-2)}.teacher-plan-tool{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:var(--r-pill);background:transparent;color:var(--text);cursor:pointer}.teacher-plan-tool.is-up svg{transform:rotate(180deg)}.teacher-plan-tool:hover:not(:disabled){background:var(--surface-2)}.teacher-plan-tool:disabled{cursor:default;opacity:.4}.teacher-ai-chat{display:flex;flex-direction:column;gap:var(--sp-3);margin:var(--sp-4) 0;padding:0;list-style:none}.teacher-ai-line{display:flex;flex-direction:column;gap:var(--sp-1);max-width:90%;padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2);overflow-wrap:anywhere}.teacher-ai-line--teacher{align-self:flex-end;background:var(--surface)}.teacher-first-steps{display:grid;margin:0;padding:0;list-style:none}.teacher-first-steps h3,.teacher-first-steps p{margin:0}.teacher-first-steps h3{font-size:1rem}.teacher-first-step{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-4) var(--sp-6);padding:var(--sp-5) 0;border-top:1px solid var(--line)}.teacher-first-step:first-child{padding-top:0;border-top:0}.teacher-first-word{flex:none;min-width:4.5rem;color:var(--muted);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.teacher-first-joined{font-weight:700}.teacher-first-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-4)}.teacher-first-done{display:inline-flex;align-items:center;gap:var(--sp-2);color:var(--good);font-weight:700}.teacher-account .teacher-card{margin-block-end:var(--sp-5)}.teacher-account-email{margin:0;font-weight:800;overflow-wrap:anywhere}.teacher-account-class{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-3)}.teacher-account-delete ul{padding-inline-start:var(--sp-6)}.teacher-board p{margin:0}.teacher-board-status{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3);margin:0 0 var(--sp-6);color:var(--muted);font-weight:700;font-variant-numeric:tabular-nums}.teacher-board-status p{display:inline-flex;align-items:center;gap:var(--sp-3)}.teacher-board[data-status=reconnecting] .teacher-board-status{padding:var(--sp-4) var(--sp-5);border-radius:var(--r-sm);background:var(--warn);color:var(--warn-ink)}.teacher-board-unavailable{display:grid;gap:var(--sp-2);margin:0 0 var(--sp-6);padding:var(--sp-4) var(--sp-5);list-style:none;background:var(--warn);color:var(--warn-ink);font-weight:700}.teacher-board-unavailable li{display:flex;align-items:center;gap:var(--sp-3)}.teacher-board-dot{flex:none;width:.65em;height:.65em;border-radius:var(--r-pill);background:var(--good)}.teacher-board-live{margin:0 0 var(--sp-6);padding:var(--sp-5) var(--sp-6);border:1px solid var(--line);border-left:4px solid var(--good);border-radius:var(--radius);background:var(--surface)}.teacher-board-live h2{display:flex;align-items:center;gap:var(--sp-3);margin:0 0 var(--sp-3);color:var(--muted);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.teacher-board-live ul{display:grid;gap:var(--sp-3);margin:0;padding:0;list-style:none}.teacher-board-live li{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3) var(--sp-5)}.teacher-today{margin:0 0 var(--sp-6);padding:var(--sp-5) var(--sp-6);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.teacher-today-title{margin:0 0 var(--sp-5);padding-inline-start:calc(4px + var(--sp-4));font-family:var(--font-display);font-size:var(--fs-h2);text-wrap:balance}.teacher-today-rows{display:grid;margin:0;padding:0;list-style:none}.teacher-today-row{display:grid;grid-template-columns:6.5rem minmax(0,1fr) auto;align-items:center;gap:var(--sp-3) var(--sp-5);padding:var(--sp-4) var(--sp-4);border-left:4px solid transparent}.teacher-today-row+.teacher-today-row{border-top:1px solid var(--line)}.teacher-today-row.is-now{border-left-color:var(--warn)}.teacher-today-when{display:flex;flex-direction:column;align-items:flex-start;gap:var(--sp-1);align-self:start}.teacher-today-day-group+.teacher-today-day-group{margin-top:var(--sp-5);padding-top:var(--sp-5);border-top:1px solid var(--line)}.teacher-main .teacher-today-day{margin:0 0 var(--sp-2);padding-inline-start:calc(4px + var(--sp-4));color:var(--muted);font-family:var(--font-body);font-size:var(--fs-sm);font-weight:800}.teacher-today-time{font-family:var(--font-display);font-size:var(--fs-title);font-weight:800;font-variant-numeric:tabular-nums;line-height:1.1}.teacher-today-main{display:grid;gap:var(--sp-1);min-width:0}.teacher-today-name{font-size:var(--fs-lead);overflow-wrap:anywhere}.teacher-today-plan{display:flex;min-width:0;font-size:var(--fs-sm);font-weight:700;white-space:pre}.teacher-today-unit,.teacher-today-session{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.teacher-today-unit{max-width:50%}.teacher-today-unit:only-child{max-width:none;white-space:normal;overflow-wrap:anywhere}.teacher-today-sep{flex:none}.teacher-today-homework{font-size:var(--fs-sm);font-variant-numeric:tabular-nums;text-wrap:pretty}.teacher-today-homework.is-none{color:var(--muted)}.teacher-today-exam-line{display:inline-flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);font-weight:700;overflow-wrap:anywhere;text-wrap:pretty}.teacher-today-issues{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-1) var(--sp-3);min-width:0}.teacher-today-spots{display:inline-flex;align-items:center;gap:var(--sp-2);min-height:max(var(--size-tap),var(--sp-11));padding-inline:var(--sp-4);border-radius:var(--r-pill);background:var(--warn);color:var(--warn-ink);font-size:var(--fs-sm);font-weight:800;text-decoration:none}.teacher-today-spot{flex:1 1 12rem;min-width:0;overflow:hidden;color:var(--muted);font-size:var(--fs-sm);font-style:italic;text-overflow:ellipsis;white-space:nowrap}.teacher-today-now{padding:var(--sp-1) var(--sp-4);border-radius:var(--r-pill);background:var(--warn);color:var(--warn-ink);font-size:var(--fs-sm);font-weight:800}.teacher-today-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--sp-3)}.teacher-today-action{min-height:max(var(--size-tap),var(--sp-11));padding-inline:var(--sp-6)}@media(max-width:899.98px){.teacher-today-row{grid-template-columns:5.5rem minmax(0,1fr);grid-template-rows:auto auto 1fr;row-gap:var(--sp-1)}.teacher-today-main{display:contents}.teacher-today-when{grid-row:1/span 3}.teacher-today-name,.teacher-today-plan,.teacher-today-homework,.teacher-today-exam-line{grid-column:2;align-self:start}.teacher-today-plan{display:grid}.teacher-today-unit{max-width:none}.teacher-today-sep{display:none}.teacher-today-issues,.teacher-today-actions{grid-column:1/-1;margin-top:var(--sp-2)}.teacher-today-actions{justify-content:flex-start}}.teacher-today-unset{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-5);margin:0 0 var(--sp-6);color:var(--muted);text-wrap:pretty}.teacher-today-set{min-height:max(var(--size-tap),var(--sp-11));height:auto}.teacher-board-live-what{display:flex;flex:1;flex-wrap:wrap;gap:var(--sp-3) var(--sp-5);color:var(--muted);font-variant-numeric:tabular-nums}.teacher-board-live-what span{display:inline-flex;align-items:center;gap:var(--sp-2)}.teacher-board-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-6);align-items:start}.teacher-board-sections>:last-child:nth-child(odd){grid-column:1/-1}.teacher-board-quiet{margin:0;text-wrap:pretty}.teacher-school-league{min-width:0;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.teacher-school-league>summary{display:flex;align-items:center;gap:var(--sp-5);min-height:var(--size-tap);padding:var(--sp-6) var(--sp-7);list-style:none;cursor:pointer}.teacher-school-league>summary::-webkit-details-marker{display:none}.teacher-school-league>summary>svg{flex:none}.teacher-school-league[open]>summary{border-bottom:1px solid var(--line-2)}.teacher-school-league[open]>summary>svg{transform:rotate(180deg)}.teacher-school-league>summary:focus-visible{outline:3px solid var(--accent-2);outline-offset:2px;border-radius:var(--r-md)}.teacher-main .teacher-school-league-title{flex:1;min-width:0;margin:0;font-family:var(--font-body);font-size:1rem;font-weight:800}.teacher-school-league-lead{margin:0;color:var(--muted);font-size:.875rem;line-height:1.4}.teacher-school-league-body{display:grid;gap:var(--sp-6);padding:var(--sp-6) var(--sp-7)}.teacher-school-league-board{margin:0;padding:0;list-style:none;display:grid}.teacher-school-league-row{display:flex;align-items:center;gap:var(--sp-4);min-height:56px;padding:var(--sp-3) var(--sp-3);border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}.teacher-school-league-row:last-child{border-bottom:0}.teacher-school-league-row.is-own{border-radius:var(--r-xs);border-bottom-color:transparent;background:var(--surface-2)}.teacher-school-league-rank{flex:none;display:grid;place-items:center;min-width:var(--size-md);height:var(--size-md);padding-inline:var(--sp-1);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);color:var(--text);font-weight:800;font-variant-numeric:tabular-nums;line-height:1}.teacher-school-league-rank.is-top{border-color:var(--warn);background:var(--warn);color:var(--warn-ink)}.teacher-school-league-what{display:grid;gap:var(--sp-1);min-width:0;flex:1}.teacher-school-league-name{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.teacher-school-league-name .teacher-board-class-chip{margin-inline-start:0}.teacher-school-league-own{padding-block:0;border-color:var(--warn);background:var(--warn);color:var(--warn-ink);font-size:.75rem}.teacher-school-league-sub{font-size:.875rem;text-wrap:pretty}.teacher-school-league-sub [data-testid=teacher-school-league-students]{white-space:nowrap}.teacher-school-league-xp{flex:none;font-variant-numeric:tabular-nums;white-space:nowrap}.teacher-school-league-gap{padding:var(--sp-1) var(--sp-3);color:var(--muted);font-weight:800;letter-spacing:.2em}.teacher-school-league-help{margin-top:var(--sp-2)}.teacher-school-league-help>summary{gap:var(--sp-1)}.teacher-school-league-help>summary svg{transition:transform .15s ease-out}.teacher-school-league-help[open]>summary svg{transform:rotate(180deg)}.teacher-school-league-help>summary:focus-visible{outline:3px solid var(--accent-2);outline-offset:2px}.teacher-school-league-rule{margin:0 0 var(--sp-2);font-size:.875rem;text-wrap:pretty}.teacher-school-league-footer{margin:var(--sp-3) 0 0;font-size:.875rem;font-weight:700}.teacher-school-league-footer.teacher-muted{font-weight:400}.teacher-school-league-skeleton{display:grid}.teacher-school-league-skeleton span{height:56px;border-bottom:1px solid var(--line);background:linear-gradient(var(--surface-2),var(--surface-2)) var(--sp-3) 50%/55% 1rem no-repeat;animation:teacher-kpi-pulse 1.2s ease-in-out infinite alternate}.teacher-school-league-failed{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-4)}.teacher-school-league-failed p{margin:0}.teacher-school-league-failed .teacher-button{min-height:48px}@media(prefers-reduced-motion:reduce){.teacher-school-league-skeleton span{animation:none}}.teacher-board-section{display:grid;gap:var(--sp-4);min-width:0}.teacher-board-section-title{display:flex;align-items:center;gap:var(--sp-3);margin:0;color:var(--muted);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.teacher-board-section-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:var(--r-pill);background:var(--surface-2);color:var(--text)}.teacher-board-section-icon--help{color:var(--accent)}.teacher-board-section-icon--missed{color:var(--accent-3)}.teacher-board-section-icon--due{color:var(--accent-2)}.teacher-board-section-icon--celebrate{background:var(--warn);color:var(--warn-ink)}.teacher-board-count{margin-inline-start:auto;min-width:1.75rem;padding:0 var(--sp-3);border-radius:var(--r-pill);background:var(--surface-2);color:var(--text);font-size:.85rem;letter-spacing:0;text-align:center;font-variant-numeric:tabular-nums}.teacher-board-rows{display:grid;margin:0;padding:0;list-style:none}.teacher-board-row{display:flex;align-items:center;gap:var(--sp-5);padding:var(--sp-4) 0;border-top:1px solid var(--line-2)}.teacher-board-row:first-child{border-top:0}.teacher-board-what{display:grid;flex:1;gap:var(--sp-1);min-width:0}.teacher-board-name{font-weight:700;text-wrap:pretty}.teacher-board-why,.teacher-board-line{color:var(--muted);font-size:.9rem;line-height:1.4;text-wrap:pretty;font-variant-numeric:tabular-nums}.teacher-board-line{font-style:italic}.teacher-board-answer{color:var(--text);font-style:normal;font-weight:600}.teacher-board-hint{display:flex;align-items:flex-start;gap:var(--sp-2);font-size:.9rem;line-height:1.4;text-wrap:pretty}.teacher-board-hint>svg{flex:none;margin-top:.1em}.teacher-board-hint{margin:var(--sp-3) 0 0;padding-top:var(--sp-4);border-top:1px solid var(--line-2);color:var(--muted)}.teacher-board-class-chip{display:inline-block;margin-inline-start:var(--sp-2);padding:0 var(--sp-3);border:1px solid var(--line);border-radius:var(--r-pill);color:var(--muted);font-size:.75rem;font-weight:800;vertical-align:middle;white-space:nowrap}[data-testid=teacher-board-to-grade]{box-sizing:border-box;width:min(100%,44rem);gap:var(--sp-4);padding:var(--sp-6)}[data-testid=teacher-board-to-grade] .teacher-section-label{color:var(--text);font-size:1rem;letter-spacing:0;text-transform:none}[data-testid=teacher-board-to-grade] .teacher-board-row{padding:var(--sp-4) 0 0;border-top:1px solid var(--line-2)}[data-testid=teacher-board-to-grade] .teacher-board-name{color:var(--muted);font-size:.9rem;font-weight:600}[data-testid=teacher-board-to-grade] .teacher-board-action{justify-content:center;min-width:5.5rem;padding-inline:var(--sp-5);border:1px solid var(--line);border-radius:var(--r-sm);font-weight:800}[data-testid=teacher-board-to-grade] .teacher-board-action:hover{background:var(--surface-2)}.teacher-board-to-grade-class .teacher-board-class-chip{margin-inline-start:0;padding:0;border:0;border-radius:0;color:var(--text);font-size:1rem;font-weight:800;white-space:normal;overflow-wrap:anywhere}.teacher-board-group-head .teacher-board-class-chip{margin-inline-start:0}.teacher-board-action{flex:none;min-height:48px;padding-inline:var(--sp-6)}.teacher-board-colleague{flex:none;font-size:.85rem}.teacher-board-group{display:grid;gap:var(--sp-2);scroll-margin-top:var(--sp-8)}.teacher-board-group+.teacher-board-group{padding-top:var(--sp-4);border-top:1px solid var(--line)}.teacher-board-group-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-3)}.teacher-board-rate{display:block;height:6px;margin:var(--sp-2) 0;overflow:hidden;border-radius:var(--r-pill);background:var(--surface-2)}.teacher-board-rate span{display:block;height:100%;border-radius:inherit;background:var(--accent-3)}.teacher-board-more{justify-self:start;min-height:48px}.teacher-board-clear-text{display:grid;gap:var(--sp-4);justify-items:start;max-width:60ch}.teacher-board-clear-text h2{margin:0;text-wrap:balance}.teacher-board-clear-text p{color:var(--muted);text-wrap:pretty}@media(max-width:960px){.teacher-board-sections{grid-template-columns:minmax(0,1fr)}}.teacher-board-rows{container:board-rows/inline-size}.teacher-board-row:has(>.teacher-initials){--board-row-lead: calc(32px + var(--sp-5))}@container board-rows (max-width: 40rem){.teacher-board-row{flex-wrap:wrap;row-gap:var(--sp-2)}.teacher-board-what{flex:1 1 calc(100% - var(--board-row-lead, 0px))}.teacher-board-what+*{margin-inline-start:var(--board-row-lead, 0px)}}@container board-rows (max-width: 22rem){.teacher-board-what+*{margin-inline-start:0}}.teacher-new-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-6);margin-bottom:var(--sp-8)}.teacher-new-head h1{margin:0;text-wrap:balance}.teacher-new-steps{display:flex;flex-wrap:wrap;gap:var(--sp-3);margin:0;padding:0;list-style:none}.teacher-new-step{display:inline-flex;align-items:center;gap:var(--sp-3);min-height:var(--size-tap);padding:var(--sp-2) var(--sp-5) var(--sp-2) var(--sp-2);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);color:var(--muted);font-weight:700}.teacher-new-step--current{border-color:var(--accent);color:var(--text)}.teacher-new-step--done{color:var(--text)}.teacher-new-step-dot{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--surface-2);color:var(--text);font-size:.9rem;font-variant-numeric:tabular-nums}.teacher-new-step--current .teacher-new-step-dot{background:var(--accent);color:var(--ink-fg)}.teacher-new-step--done .teacher-new-step-dot{background:var(--good);color:var(--ink-fg)}.teacher-new-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--sp-8);align-items:start}@media(max-width:960px){.teacher-new-grid{grid-template-columns:minmax(0,1fr)}}.teacher-new-col,.teacher-new-form{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sp-6);min-width:0}.teacher-new-source{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sp-5);min-width:0}.teacher-new-source input[type=file]{max-width:100%}.teacher-new-source .teacher-field:not(.teacher-new-chip){grid-template-columns:minmax(0,1fr)}@media(max-width:480px){.teacher-new-source{padding:var(--sp-6)}}.teacher-new-source{transition-property:border-color,box-shadow;transition-duration:var(--dur-base);transition-timing-function:ease-out}.teacher-new-source--on{border-color:var(--accent);box-shadow:var(--shadow-sm)}.teacher-new-source h2.teacher-week-kicker{margin:0;font-size:.85rem}.teacher-new-source-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4)}.teacher-tag--accent{border-color:var(--accent);background:var(--accent);color:var(--ink-fg)}.teacher-new-pills{display:flex;flex-wrap:wrap;gap:var(--sp-3)}.teacher-new-pill{position:relative;display:inline-flex}.teacher-new-pill input{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;opacity:0;cursor:pointer}.teacher-new-pill span{display:inline-flex;align-items:center;min-height:var(--size-tap);padding:0 var(--sp-6);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);font-weight:700;transition-property:background-color,border-color,color;transition-duration:var(--dur-base)}.teacher-new-pill input:checked+span{border-color:var(--ink);background:var(--ink);color:var(--ink-fg)}.teacher-new-pill input:focus-visible+span{outline:3px solid var(--accent-2);outline-offset:2px}.teacher-new-pill input:disabled+span{opacity:.5}.teacher-new-chips{align-items:end;gap:var(--sp-4)}.teacher-new-chip{display:inline-flex;align-items:center;gap:var(--sp-3);min-height:var(--size-tap);padding:0 var(--sp-2) 0 var(--sp-5);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface-2);font-weight:700}.teacher-new-chip.teacher-field{flex-direction:row;padding-block:0}.teacher-new-chip select,.teacher-new-chip input[type=date]{min-height:36px;border:0;border-radius:var(--r-pill);background:var(--surface);font:inherit;font-weight:700}.teacher-new-toggle{padding-right:var(--sp-5);cursor:pointer}.teacher-new-toggle input{width:20px;height:20px;accent-color:var(--accent)}.teacher-new-keep{align-self:flex-start;justify-self:start;max-width:100%}.teacher-new-generate{justify-self:start;min-height:48px}.teacher-new-preview{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sp-5);min-width:0}.teacher-new-preview h2{margin:0}.teacher-new-preview-head{display:flex;align-items:center;gap:var(--sp-4)}.teacher-new-ai{display:inline-flex;align-items:center;gap:var(--sp-1);padding:var(--sp-1) var(--sp-4);border-radius:var(--r-pill);background:var(--premium);color:var(--premium-fg);font-size:.85rem;font-weight:800}.teacher-new-count{margin:calc(-1 * var(--sp-3)) 0 0;font-variant-numeric:tabular-nums}.teacher-new-note{margin:0;line-height:1.5}.teacher-new-start-over{min-height:var(--size-tap);margin-left:auto;font-weight:700}.teacher-new-ask{display:grid;gap:var(--sp-3)}.teacher-new-ask p{margin:0;text-wrap:pretty}.teacher-new-added{display:flex;align-items:center;gap:var(--sp-3);margin:0;text-wrap:pretty}.teacher-new-added svg{flex:none}.teacher-new-added.teacher-error{align-items:flex-start}.teacher-new-added.teacher-error svg{margin-top:.2em}.teacher-new-exercise.teacher-new-material{border-style:dashed}.teacher-new-material-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--r-pill);background:var(--surface-2);color:var(--accent-2)}.teacher-new-material-link{min-height:var(--size-tap);font-weight:700;overflow-wrap:anywhere}.teacher-new-empty{display:flex;gap:var(--sp-4);align-items:flex-start;margin:0;padding:var(--sp-8);border:1px dashed var(--line);border-radius:var(--r-md);text-wrap:pretty}.teacher-new-exercises{display:grid;gap:var(--sp-5);margin:0;padding:0;list-style:none}.teacher-new-exercise{display:grid;gap:var(--sp-3);padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg)}.teacher-new-exercise p{margin:0}.teacher-new-exercise-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3)}.teacher-new-exercise-head .teacher-week-kicker{color:var(--accent-3)}.teacher-new-class-field{display:grid;gap:var(--sp-3);justify-items:start}.teacher-new-class-field p{margin:0;text-wrap:pretty}.teacher-new-class-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3)}.teacher-new-other-course{display:grid;gap:var(--sp-3);justify-items:start}.teacher-new-other-course p{margin:0;text-wrap:pretty}.teacher-new-classes{display:grid;gap:var(--sp-3);min-width:0;margin:0;padding:0;border:0}.teacher-new-classes legend{margin-bottom:var(--sp-3);padding:0;font-weight:700}.teacher-new-classes p{margin:0;text-wrap:pretty}.teacher-new-class-chips{display:flex;flex-wrap:wrap;gap:var(--sp-3)}.teacher-new-class-chip{transition-property:border-color,background-color;transition-duration:.15s;transition-timing-function:ease-out}.teacher-new-class-chip:has(input:checked){border-color:var(--accent);background:var(--surface)}.teacher-new-class-chip:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.teacher-new-class-chip--blocked{cursor:not-allowed;opacity:.55}.teacher-new-unit{display:grid;gap:var(--sp-3);justify-items:start}.teacher-new-unit p{margin:0;text-wrap:pretty}.teacher-cando{display:grid;gap:var(--sp-4);padding-top:var(--sp-5);border-top:1px dashed var(--line)}.teacher-cando-head{display:inline-flex;align-items:center;gap:var(--sp-3);color:var(--accent-2);font-size:.9em;font-weight:800}.teacher-cando-head:focus{outline:none}.teacher-cando-head:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px;border-radius:var(--sp-2)}.teacher-cando-list{display:grid;gap:var(--sp-4);margin:0;padding:0;list-style:none}.teacher-cando-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3) var(--sp-5);padding:var(--sp-3) var(--sp-3) var(--sp-3) var(--sp-6);border:1px solid color-mix(in srgb,var(--accent-2) 35%,var(--line));border-radius:var(--r-md);background:var(--surface);transition-property:border-color,background-color;transition-duration:.15s;transition-timing-function:ease-out}.teacher-cando-row[data-state=queued],.teacher-cando-row[data-state=saved]{border-color:var(--good)}.teacher-cando-row[data-state=failed]{border-color:var(--bad)}.teacher-cando-text{display:inline-flex;flex:1 1 14rem;align-items:center;gap:var(--sp-3);min-width:0;font-weight:700;text-wrap:pretty}.teacher-cando-text .ic{flex:none;color:var(--good)}.teacher-cando-status{order:3;flex-basis:100%;font-size:.9em;font-weight:700;color:var(--good)}.teacher-cando-status--bad{color:var(--bad)}.teacher-cando-status:empty{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.teacher-cando-row[data-state=saving] .teacher-cando-status{color:var(--muted)}.teacher-cando-actions{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--sp-4)}.teacher-cando-accept{min-height:var(--sp-11);padding-inline:var(--sp-6);border-color:var(--accent-2);color:var(--accent-2)}.teacher-cando-dismiss{min-height:var(--sp-11);padding-inline:var(--sp-4);color:var(--muted)}.teacher-cando-dismiss:hover{color:var(--text)}.teacher-cando-load{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-4)}.teacher-cando-load p{display:inline-flex;align-items:center;gap:var(--sp-3);margin:0}.teacher-new-edit{min-height:var(--size-tap);margin-left:auto;font-weight:700}.teacher-new-instruction{color:var(--muted);font-size:.875rem;font-weight:700;text-wrap:pretty}.teacher-new-sentence{font-family:var(--font-display);font-size:1.125rem;font-weight:700;line-height:1.35;text-wrap:pretty}.teacher-new-line{display:grid;gap:var(--sp-3)}.teacher-new-point{padding-left:var(--sp-5);border-left:2px solid var(--line)}.teacher-new-options{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin:0;padding:0;list-style:none}.teacher-new-option{display:inline-flex;align-items:center;gap:var(--sp-1);min-height:32px;padding:0 var(--sp-4);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);font-weight:700}.teacher-new-option--key{border-color:var(--premium);background:var(--premium);color:var(--premium-fg)}.teacher-new-drop{position:relative;display:grid;justify-items:center;gap:var(--sp-2);padding:var(--sp-7) var(--sp-5);border:2px dashed var(--line);border-radius:var(--r-md);background:var(--surface-2);color:var(--text);text-align:center;cursor:pointer;transition:border-color var(--dur-fast, .15s) ease-out,background-color var(--dur-fast, .15s) ease-out}.teacher-new-drop:hover,.teacher-new-drop--over{border-color:var(--accent-2)}.teacher-new-drop:focus-within{outline:2px solid var(--accent-2);outline-offset:2px}.teacher-new-drop:has(.teacher-new-drop-input:disabled){cursor:not-allowed;opacity:.6}.teacher-new-drop svg{color:var(--accent-2)}.teacher-new-drop .teacher-new-drop-input{position:absolute;box-sizing:border-box;width:1px;min-width:0;height:1px;min-height:0;padding:0;border:0;overflow:hidden;clip-path:inset(50%);opacity:0}.teacher-new-drop-title{font-weight:700;text-wrap:balance}.teacher-new-thumbs li{flex-direction:column;align-items:flex-start;gap:var(--sp-1);max-width:160px;position:relative}.teacher-new-thumbs li button{position:absolute;top:var(--sp-1);right:var(--sp-1);background:var(--surface);border-radius:var(--r-pill)}.teacher-new-thumb-name{font-size:.8125rem;font-weight:700;overflow-wrap:anywhere}.teacher-new-due{position:relative}.teacher-new-due-chip{display:inline-flex;align-items:center;gap:var(--sp-2);min-height:36px;padding:0 var(--sp-4);border:0;border-radius:var(--r-pill);background:var(--surface);color:var(--text);font:inherit;font-weight:700;cursor:pointer}.teacher-new-due-chip:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.teacher-new-due-chip:disabled{cursor:not-allowed;opacity:.6}.teacher-new-chip .teacher-new-due-input[type=date]{min-height:0;position:absolute;right:0;bottom:0;width:1px;height:1px;padding:0;border:0;opacity:0;pointer-events:none}.teacher-new-chip{min-height:calc(var(--size-tap) + 2 * var(--sp-1) + 2px);padding-block:var(--sp-1)}.teacher-new-chip.teacher-field{padding-block:var(--sp-1)}.teacher-new-chip select,.teacher-new-chip .teacher-new-due-chip{min-height:var(--size-tap)}.teacher-new-toggle input{flex:none;min-height:0;margin:0}.teacher-new-crumbs .teacher-crumb{display:inline-flex;align-items:center;min-height:var(--size-tap)}.teacher-new-crumbs ol{align-items:center}.teacher-new-skeleton{display:grid;gap:var(--sp-5);margin:0;padding:0;list-style:none}.teacher-new-skeleton li{display:grid;gap:var(--sp-3);padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--r-md)}.teacher-new-skeleton span{height:14px;border-radius:var(--r-pill);background:var(--surface-2);animation:teacher-new-pulse 1.2s ease-in-out infinite alternate}.teacher-new-skeleton span:first-child{width:30%}.teacher-new-skeleton span:nth-child(2){width:85%}.teacher-new-skeleton span:last-child{width:60%}@media(prefers-reduced-motion:reduce){.teacher-new-skeleton span{animation:none}}@keyframes teacher-new-pulse{0%{opacity:1}to{opacity:.45}}.teacher-new-footer{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-4);padding-top:var(--sp-6);border-top:1px solid var(--line)}.teacher-new-assign{min-height:48px;margin-left:auto}@media(max-width:480px){.teacher-new-assign{width:100%;margin-left:0}}.teacher-new-keep{min-height:48px;margin-left:auto}.teacher-new-keep+.teacher-new-assign{margin-left:0}.teacher-new-keep[aria-disabled=true]{opacity:.5;pointer-events:none}@media(max-width:480px){.teacher-new-keep{width:100%;margin-left:0}}.teacher-new-assigned{display:grid;gap:var(--sp-4)}.teacher-new-assigned p{display:flex;gap:var(--sp-3);align-items:center;margin:0}.teacher-redo{display:inline-flex;align-items:center;gap:.25rem;padding-left:.375rem;border-left:3px solid var(--line);font-variant-numeric:tabular-nums;white-space:nowrap}.teacher-redo[data-change=up]{border-left-color:var(--good);color:var(--good)}.teacher-redo[data-change=up]>span:first-child:before{content:"↑ "}.teacher-redo[data-change=down]{border-left-color:var(--accent-3);color:var(--accent-3)}.teacher-redo[data-change=down]>span:first-child:before{content:"↓ "}.teacher-redo-key{display:inline-block;margin-left:.25rem;padding:0 .375rem;border:1px solid var(--accent-2);border-radius:999px;color:var(--accent-2);font-size:.75rem;font-weight:600}.teacher-skeleton{display:grid;gap:var(--sp-6)}.teacher-skeleton>div{display:grid;gap:var(--sp-6)}.teacher-skel{display:block;height:14px;border-radius:var(--r-pill);background:linear-gradient(90deg,var(--surface-2) 0%,var(--line-2) 50%,var(--surface-2) 100%) 0 0/200% 100%}@media(prefers-reduced-motion:no-preference){.teacher-skel{animation:teacher-skel-sheen 1.4s ease-in-out infinite}}@keyframes teacher-skel-sheen{0%{background-position:100% 0}to{background-position:-100% 0}}.teacher-skel--title{width:min(22rem,70%);height:36px;border-radius:var(--r-xs)}.teacher-skel--line{width:100%}.teacher-skel--short{width:45%}.teacher-skel--chip{width:88px;height:28px;flex:none}.teacher-skel--tab{width:96px;height:44px;flex:none}.teacher-skel--figure{width:40%;height:32px;border-radius:var(--r-xs)}.teacher-skel--dot{width:32px;height:32px;flex:none}.teacher-skel--action{width:168px;height:44px;flex:none}.teacher-skel--label{width:min(9rem,50%);height:10px}.teacher-skel--end{width:56px;flex:none}.teacher-skel-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--sp-5) var(--sp-8)}.teacher-skel-titles{flex:1 1 26rem;display:grid;gap:var(--sp-4);min-width:0}.teacher-skel-row{display:flex;flex-wrap:wrap;gap:var(--sp-4)}.teacher-skel-tabs{flex-wrap:nowrap;overflow:hidden}.teacher-skel-card{display:grid;gap:var(--sp-5);padding:var(--sp-8);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.teacher-skel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:var(--sp-5)}.teacher-skel-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:var(--sp-5)}.teacher-skel-item{display:flex;align-items:center;gap:var(--sp-5);min-height:44px}@media(max-width:599.98px){.teacher-skel-card{padding:var(--sp-6)}.teacher-skel-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}.teacher-person-cards{display:grid;gap:var(--sp-4);margin:0;padding:0;list-style:none}.teacher-person-card{display:grid;gap:var(--sp-5);padding:var(--sp-6);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.teacher-person-head{display:flex;align-items:center;gap:var(--sp-5);min-width:0}.teacher-person-name{flex:1;min-width:0;display:grid;gap:var(--sp-1)}.teacher-person-name>:first-child{overflow-wrap:anywhere;font-weight:800;text-align:left}.teacher-person-name .teacher-link{justify-content:flex-start;min-height:44px}.teacher-roster .teacher-person-cards .teacher-person-card{padding:var(--sp-4) var(--sp-4) var(--sp-4) var(--sp-6)}.teacher-person-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4);margin:0}.teacher-person-stats div{padding:var(--sp-4) var(--sp-5);border-radius:var(--r-xs);background:var(--bg)}.teacher-person-stats dt{color:var(--muted);font-size:.75rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.teacher-person-stats dd{margin:0;font-size:1.15rem;font-weight:800;font-variant-numeric:tabular-nums}.teacher-person-work{display:grid;margin:0;padding:0;list-style:none}.teacher-person-work li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-2) var(--sp-4);padding:var(--sp-4) 0;border-top:1px solid var(--line-2)}.teacher-person-task{display:grid;min-width:0}.teacher-person-task>:first-child{overflow-wrap:anywhere;font-weight:700}.teacher-person-task>.teacher-muted{font-size:.85rem}.teacher-person-value{display:inline-flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;min-width:0;max-width:100%;gap:var(--sp-2);white-space:nowrap;font-variant-numeric:tabular-nums}.teacher-person-foot{font-size:.85rem}.teacher-sort-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-4);margin-block:var(--sp-6) var(--sp-5)}.teacher-sort-bar>span{color:var(--muted);font-size:.85rem;font-weight:800}.teacher-sort-bar button{display:inline-flex;align-items:center;gap:var(--sp-2);min-height:44px;padding:0 var(--sp-6);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);color:var(--text);font:inherit;font-weight:800;cursor:pointer;transition-property:background-color,border-color,color;transition-duration:var(--dur-base)}.teacher-sort-bar button.teacher-sort-on{border-color:var(--ink);background:var(--ink);color:var(--ink-fg)}.teacher-sort-bar button:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.teacher-sort-bar .teacher-sort-mark{display:inline-flex}.teacher-sort-bar .teacher-sort-mark--none{display:none}.teacher-sort-bar .teacher-sort-mark--asc{transform:rotate(180deg)}h3.teacher-person-name{margin:0;font-size:1rem;line-height:1.3}.teacher-delayed-lead{max-width:68ch;text-wrap:pretty}.teacher-delayed-field{display:grid;gap:var(--sp-4);min-width:0;margin:0;padding:0;border:0}.teacher-delayed-field legend{margin-bottom:var(--sp-4);padding:0;font-weight:800}.teacher-delayed-field p{margin:0}.teacher-delayed-status{display:flex;align-items:center;gap:var(--sp-2);min-height:1.5em;margin:0}.teacher-delayed-own-title{margin:0}.teacher-delayed-own{display:grid;gap:var(--sp-3);margin:0;padding:0;list-style:none}.teacher-delayed-own li{display:flex;align-items:center;gap:var(--sp-4);padding-block:var(--sp-3);border-bottom:1px solid var(--line-2)}.teacher-tag--repaso{border-color:var(--accent-2);background:var(--accent-2);color:var(--ink-fg)}.teacher-gradebook thead th .teacher-tag--repaso{display:inline-flex;margin:0 var(--sp-2) var(--sp-1) 0;font-size:.75rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.teacher-gradebook thead th .teacher-repaso-days{display:inline;color:var(--accent-2);font-weight:700}.teacher-gradebook .teacher-retention{font-variant-numeric:tabular-nums;white-space:nowrap}.teacher-gradebook .teacher-retention strong{font-weight:800}.teacher-gradebook .teacher-retention-from{color:var(--muted)}.teacher-gradebook .teacher-retention-trend{font-size:.85rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.teacher-gradebook .teacher-retention-trend--up{color:var(--good)}.teacher-gradebook .teacher-retention-trend--down{color:var(--bad)}.teacher-gradebook .teacher-retention-trend--held{color:var(--muted)}.teacher-lesson-builder{display:grid;gap:var(--sp-5)}.teacher-lesson-builder h2{margin:0}.teacher-lesson-builder-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--sp-4)}.teacher-lesson-items,.teacher-lesson-sources-list,.teacher-lesson-exercises{margin:0;padding:0;list-style:none;display:grid;gap:var(--sp-3)}.teacher-lesson-item{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3) var(--sp-4);padding:var(--sp-4) var(--sp-5);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.teacher-lesson-text{display:grid;gap:var(--sp-2);min-width:0}.teacher-lesson-text strong{text-wrap:pretty;overflow-wrap:anywhere}.teacher-lesson-empty{padding:var(--sp-6);border:1px dashed var(--line);border-radius:var(--r-md);text-align:center}.teacher-lesson-columns{display:grid;gap:var(--sp-8);align-items:start}@media(min-width:1000px){.teacher-lesson-columns{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}}.teacher-lesson-plan,.teacher-lesson-picker{display:grid;gap:var(--sp-5);min-width:0}.teacher-lesson-plan h3,.teacher-lesson-picker h3{margin:0}.teacher-lesson-plan-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-4)}.teacher-lesson-count,.teacher-lesson-number{font-variant-numeric:tabular-nums}.teacher-lesson-item{cursor:grab;transition-property:border-color,box-shadow,opacity;transition-duration:.15s;transition-timing-function:ease-out}.teacher-lesson-item.is-dragging{opacity:.5;border-color:var(--accent-2)}.teacher-lesson-item.is-gone{border-color:var(--bad)}.teacher-lesson-grip{display:inline-grid;color:var(--muted)}.teacher-lesson-number{min-width:2ch;font-weight:900;color:var(--muted)}.teacher-lesson-item .teacher-icon-button{flex:none;min-width:44px;min-height:44px}.teacher-lesson-move svg{transform:rotate(90deg)}.teacher-lesson-move--down svg{transform:rotate(-90deg)}.teacher-lesson-actions{align-items:center}.teacher-lesson-part{display:grid;gap:var(--sp-3);padding-top:var(--sp-5);border-top:1px solid var(--line)}.teacher-lesson-part>p{margin:0}.teacher-lesson-class-games{margin:0;text-wrap:pretty}.teacher-lesson-subheading{margin:0;font-size:1rem}.teacher-lesson-games{margin:0;padding:0;list-style:none;display:grid;gap:var(--sp-3)}.teacher-lesson-game{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3) var(--sp-4);padding:var(--sp-4) var(--sp-5);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.teacher-lesson-game.is-gone{border-color:var(--bad)}.teacher-lesson-game .teacher-icon-button{flex:none;min-width:44px;min-height:44px}.teacher-lesson-pills:not(:empty){display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-1)}.teacher-lesson-picker{container:teacher-lesson-picker/inline-size;scroll-margin-top:var(--sp-4);padding:var(--sp-6);border-radius:var(--r-md);background:var(--surface-2)}.teacher-lesson-sources{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.teacher-lesson-source-tab{min-height:44px;padding:var(--sp-3) var(--sp-6);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);color:var(--text);font:inherit;font-weight:800;cursor:pointer;transition-property:background-color,color,border-color;transition-duration:.15s}.teacher-lesson-source-tab[aria-pressed=true]{border-color:var(--text);background:var(--text);color:var(--surface)}.teacher-lesson-source-tab:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.teacher-lesson-source{display:grid;gap:var(--sp-3);padding:var(--sp-4);border-radius:var(--r-md);background:var(--surface)}.teacher-lesson-source-head,.teacher-lesson-exercises li{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3)}.teacher-lesson-exercises li{padding-top:var(--sp-3);border-top:1px solid var(--line)}.teacher-lesson-add:disabled{cursor:default}.teacher-lesson-back{min-height:44px}.teacher-weak{margin-top:var(--sp-8)}.teacher-weak-head{display:grid;gap:var(--sp-3)}.teacher-weak-head h2{margin:0;text-wrap:balance}.teacher-weak-lead,.teacher-weak-empty{max-width:68ch;margin:0;text-wrap:pretty}.teacher-weak-empty strong{color:var(--text)}.teacher-weak-list{counter-reset:weak;display:grid;margin:0;padding:0;list-style:none}.teacher-weak-row{display:grid;gap:var(--sp-5);min-width:0;padding:var(--sp-7) 0;border-top:1px solid var(--line)}.teacher-weak-row:first-child{padding-top:var(--sp-4);border-top:0}.teacher-weak-row--skeleton{gap:var(--sp-5)}.teacher-weak-skeleton-title{width:40%;height:1.4rem}.teacher-weak-what{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:var(--sp-5);row-gap:var(--sp-2);align-items:baseline;min-width:0}.teacher-weak-what>*{grid-column:2}.teacher-weak-what:before{content:counter(weak);grid-row:1/span 2;grid-column:1;align-self:center;color:var(--muted);font-family:var(--font-display);font-size:var(--fs-lead);font-weight:700;font-variant-numeric:tabular-nums}.teacher-weak-row:not(.teacher-weak-row--skeleton){counter-increment:weak}.teacher-weak-kind,.teacher-weak-share-label{color:var(--muted);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.teacher-weak-label{margin:0;color:var(--text);font-family:Fraunces,Georgia,serif;font-size:1.25rem;font-weight:700;overflow-wrap:anywhere;text-wrap:balance}.teacher-weak-share{display:grid;gap:var(--sp-3);min-width:0}.teacher-weak-share-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-5);margin:0}.teacher-weak-percent{color:var(--text);font-family:Fraunces,Georgia,serif;font-size:1.5rem;font-variant-numeric:tabular-nums;line-height:1}.teacher-weak-track{display:block;height:10px;overflow:hidden;border-radius:var(--r-pill);background:var(--surface-2)}.teacher-weak-fill{display:block;height:100%;border-radius:inherit;background:var(--accent)}.teacher-weak-detail{margin:0;color:var(--muted);font-size:.875rem;font-variant-numeric:tabular-nums}.teacher-weak-who{display:grid;align-content:start;gap:var(--sp-3);min-width:0}.teacher-weak-none{margin:0}.teacher-weak-names{display:flex;flex-wrap:wrap;gap:var(--sp-3);margin:0;padding:0;list-style:none}.teacher-weak-name,.teacher-weak-more{padding:var(--sp-2) var(--sp-5);border-radius:var(--r-pill);font-size:.875rem;font-weight:700}.teacher-weak-name{background:var(--surface-2);color:var(--text)}.teacher-weak-more{color:var(--muted)}.teacher-weak-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-4)}.teacher-weak-note{max-width:68ch}.teacher-weak-button{min-height:48px;touch-action:manipulation;transition-property:transform,background-color,filter;transition-duration:.15s;transition-timing-function:ease-out}.teacher-weak-button:active:not(:disabled){transform:scale(.97)}@media(min-width:720px){.teacher-weak-row:not(.teacher-weak-row--skeleton){grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);grid-template-areas:"what share" "who actions";column-gap:var(--sp-9)}.teacher-weak-what{grid-area:what}.teacher-weak-share{grid-area:share}.teacher-weak-who{grid-area:who}.teacher-weak-actions{grid-area:actions;align-self:end;justify-content:flex-end}}@media(prefers-reduced-motion:reduce){.teacher-weak-button{transition:none}.teacher-weak-button:active:not(:disabled){transform:none}}.teacher-exam-compatibility{margin:0 0 var(--sp-6);padding:var(--sp-5) var(--sp-6);border-radius:var(--r-sm);background:var(--surface-2);color:var(--muted);font-size:.875rem}.teacher-exam-directory{list-style:none;padding:0;margin:0;container-type:inline-size}.teacher-exam-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--sp-6) var(--sp-8);align-items:center;padding:var(--sp-6) 0}.teacher-exam-entry+.teacher-exam-entry{border-top:1px solid var(--line)}.teacher-exam-info{min-width:0}.teacher-exam-entry-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-5)}.teacher-exam-entry-head h3{font-family:var(--font-body);font-size:1.125rem;line-height:1.4;margin:0;overflow-wrap:anywhere}.teacher-exam-meta{display:flex;flex-wrap:wrap;gap:var(--sp-5);margin-top:var(--sp-3);font-size:.875rem;color:var(--muted)}.teacher-exam-date{margin-top:var(--sp-3);font-size:.875rem}.teacher-exam-share{margin-top:var(--sp-3)}.teacher-exam-share>summary{min-height:44px;width:fit-content;align-content:center;cursor:pointer;font-size:.875rem;color:var(--muted)}.teacher-exam-share>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.teacher-exam-share .teacher-exam-link{overflow-wrap:anywhere}.teacher-exam-entry-actions .teacher-row-actions{display:flex;flex-wrap:wrap;gap:var(--sp-4)}.teacher-exam-entry-actions .teacher-row-actions>:first-child{padding:var(--sp-4) var(--sp-6);border:1px solid var(--line);border-radius:var(--r-md);color:var(--text)}.teacher-exam-entry-actions .teacher-row-actions>a,.teacher-exam-entry-actions .teacher-row-actions>button{min-height:44px}@container (max-width: 38rem){.teacher-exam-entry{grid-template-columns:minmax(0,1fr)}.teacher-exam-entry-actions .teacher-row-actions{justify-content:flex-start}}
