@font-face{font-family:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/bricolage-grotesque-latin-600-normal-bj8FJOMY.woff2) format("woff2"),url(/assets/bricolage-grotesque-latin-600-normal-DVD4Ix5s.woff) format("woff")}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/bricolage-grotesque-latin-800-normal-Aqts05cm.woff2) format("woff2"),url(/assets/bricolage-grotesque-latin-800-normal-6Cj4VTbn.woff) format("woff")}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/atkinson-hyperlegible-latin-400-normal-BKTgBNmI.woff2) format("woff2"),url(/assets/atkinson-hyperlegible-latin-400-normal-DDbeQdWO.woff) format("woff")}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/atkinson-hyperlegible-latin-700-normal-BriLmxM2.woff2) format("woff2"),url(/assets/atkinson-hyperlegible-latin-700-normal-CVvOgo6s.woff) format("woff")}:root{--ink: #1d2a5b;--ink-soft: #4c5884;--paper: #eef2fb;--card: #ffffff;--line: #d5dcef;--emma: #d93d76;--pike: #23857a;--samantha: #e09a00;--ok: #1f8a4c;--ok-bg: #e3f4ea;--ko: #c93c3c;--ko-bg: #fbe7e7;--display: "Bricolage Grotesque", system-ui, sans-serif;--text: "Atkinson Hyperlegible", system-ui, sans-serif;color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--text);font-size:17px;line-height:1.5}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default}:focus-visible{outline:3px solid var(--samantha);outline-offset:2px}.page{max-width:640px;margin:0 auto;padding:max(16px,env(safe-area-inset-top)) 16px calc(48px + env(safe-area-inset-bottom))}h1,h2,h3{font-family:var(--display);line-height:1.15;margin:0}.hero{padding:28px 0 8px}.hero-mark{width:120px;height:40px;display:block;margin-bottom:14px}.hero h1{font-size:44px;font-weight:800;letter-spacing:-.02em}.hero p{color:var(--ink-soft);margin:8px 0 0;max-width:34ch}.unit{margin-top:32px}.unit h2{font-size:24px;font-weight:800;display:flex;flex-direction:column}.unit h2 span{font-family:var(--text);font-size:15px;font-weight:700;color:var(--ink-soft)}.list{list-style:none;margin:12px 0 0;padding:0;background:var(--card);border-radius:18px;border:1px solid var(--line);overflow:hidden}.list li+li{border-top:1px solid var(--line)}.list button{width:100%;display:flex;align-items:center;gap:14px;padding:16px;background:none;border:0;text-align:left}.list button:active{background:var(--paper)}.voices{display:flex;flex-direction:column;gap:3px}.voices i{display:block;width:6px;height:10px;border-radius:3px}.li-text{flex:1;display:flex;flex-direction:column}.li-text strong{font-size:18px}.li-text small{color:var(--ink-soft);font-size:15px}.badge{min-width:46px;padding:4px 10px;border-radius:999px;text-align:center;font-family:var(--display);font-weight:800;font-size:17px}.badge--new{background:var(--paper);color:var(--ink-soft);font-family:var(--text);font-weight:700;font-size:14px}.badge--pass{background:var(--ok-bg);color:var(--ok)}.badge--fail{background:var(--ko-bg);color:var(--ko)}.foot{margin-top:32px;color:var(--ink-soft);font-size:14px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:8px}.back{display:inline-flex;align-items:center;gap:2px;background:none;border:0;padding:8px 4px;font-weight:700}.modes{display:inline-flex;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:3px}.modes button{border:0;background:none;padding:7px 14px;border-radius:999px;font-weight:700;color:var(--ink-soft)}.modes button.on{background:var(--ink);color:#fff}.head-block{margin:20px 0 16px}.kind{margin:0 0 4px;color:var(--ink-soft);font-weight:700;font-size:15px}.head-block h1{font-size:34px;font-weight:800;letter-spacing:-.015em}.context{margin:10px 0 0}.player{background:var(--ink);color:#fff;border-radius:22px;padding:14px 14px 12px;position:sticky;top:8px;z-index:5;box-shadow:0 10px 24px -14px #1d2a5bb3}.player--static{position:static}.strip{position:relative;height:34px;border-radius:8px;background:#ffffff14;overflow:hidden;cursor:pointer;touch-action:manipulation}.strip--exam{cursor:default}.turn{position:absolute;top:7px;bottom:7px;border-radius:4px;opacity:.55}.turn--plain{background:#ffffff4d}.played{position:absolute;inset:0 auto 0 0;background:#ffffff24;pointer-events:none}.head{position:absolute;top:0;bottom:0;width:3px;margin-left:-1px;background:#fff;border-radius:2px;pointer-events:none}.legend{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:10px;font-size:14px;color:#fffc}.legend span{display:inline-flex;align-items:center;gap:6px}.legend i{width:10px;height:10px;border-radius:3px;display:inline-block}.controls{display:flex;align-items:center;gap:14px;margin-top:10px}.play.play--live{background:var(--emma);color:#fff;cursor:default}.eq{display:flex;gap:3px;align-items:flex-end;height:20px}.eq i{width:4px;height:100%;background:#fff;border-radius:2px}.eq i:nth-child(2){height:60%}.eq i:nth-child(3){height:80%}@media (prefers-reduced-motion: no-preference){.eq i{animation:eq .9s ease-in-out infinite alternate}.eq i:nth-child(2){animation-delay:-.3s}.eq i:nth-child(3){animation-delay:-.6s}@keyframes eq{0%{height:25%}to{height:100%}}}.play{width:52px;height:52px;border-radius:50%;border:0;flex:none;background:#fff;color:var(--ink);display:grid;place-items:center}.play svg{fill:currentColor}.play:disabled{opacity:.3}.time{font-variant-numeric:tabular-nums;color:#ffffffbf;flex:1}.time strong{color:#fff}.tools{display:flex;gap:8px}.chip{border:1px solid rgba(255,255,255,.35);background:none;color:#fff;padding:6px 12px;border-radius:999px;font-weight:700;font-variant-numeric:tabular-nums}.chip--on{background:var(--samantha);border-color:var(--samantha);color:var(--ink)}.plays{display:flex;align-items:center;gap:6px}.plays small{margin-left:4px;font-size:14px;color:#fffc;white-space:nowrap}.lamp{width:14px;height:14px;border-radius:50%;background:var(--samantha);box-shadow:0 0 0 3px #e09a0040}.lamp--used{background:#ffffff2e;box-shadow:none}.lamp--on{background:var(--emma);box-shadow:0 0 0 3px #d93d7659}@media (prefers-reduced-motion: no-preference){.lamp--on{animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{50%{box-shadow:0 0 0 7px #d93d761a}}}.note{margin:12px 0 0;font-size:14px;color:#fffc}.note--error{color:#ffd0d0}.task{margin-top:26px;background:var(--card);border-radius:18px;border:1px solid var(--line);padding:18px 16px}.task h3{font-family:var(--text);font-size:17px;font-weight:700;display:flex;gap:10px;align-items:baseline}.task-letter{flex:none;width:28px;height:28px;border-radius:8px;background:var(--ink);color:#fff;display:inline-grid;place-items:center;font-family:var(--display);font-weight:800}.items{margin:14px 0 0;padding-left:22px}.items--plain{list-style:none;padding-left:0}.items li{padding:10px 0}.items li+li{border-top:1px dashed var(--line)}.items p{margin:0}.items--plain b{display:inline-block;width:1.4em;color:var(--ink-soft)}.opts{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.opts--stack{flex-direction:column;align-items:stretch}.opts--nums .opt{min-width:42px;padding:7px 0;text-align:center}.opt{border:1.5px solid var(--line);background:var(--card);border-radius:12px;padding:8px 14px;text-align:left;font-weight:400}.opt--sel{border-color:var(--ink);background:var(--ink);color:#fff;font-weight:700}.opt:disabled{opacity:1}.opt--right{border-color:var(--ok);box-shadow:inset 0 0 0 1.5px var(--ok)}.opt--sel.opt--right{background:var(--ok)}.opt--sel:disabled:not(.opt--right){background:var(--ko);border-color:var(--ko)}.gap-line{line-height:2.2}.gap{font:inherit;color:var(--ink);width:9.5em;max-width:60vw;border:0;border-bottom:2px solid var(--ink);background:var(--paper);border-radius:6px 6px 0 0;padding:2px 8px;margin:0 4px}.gap:focus{outline:none;background:#fff6df;border-bottom-color:var(--samantha)}.gap--ok{border-bottom-color:var(--ok);background:var(--ok-bg)}.gap--ko{border-bottom-color:var(--ko);background:var(--ko-bg);text-decoration:line-through}.items--form{list-style:none;padding-left:0}.mark{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;font-size:13px;font-weight:700;color:#fff;vertical-align:middle;margin-left:4px}.mark--ok{background:var(--ok)}.mark--ko{background:var(--ko)}.solution{margin-top:6px!important;color:var(--ok);font-weight:700}.solution:before{content:"✓ "}.primary,.secondary{display:block;width:100%;margin-top:22px;padding:16px;border-radius:16px;border:0;font-family:var(--display);font-size:20px;font-weight:800}.primary{background:var(--ink);color:#fff}.secondary{background:var(--card);border:1.5px solid var(--ink);margin-top:10px}.score{display:flex;gap:16px;align-items:center;margin-top:18px;padding:16px;border-radius:18px;scroll-margin-top:200px}.score p{margin:0}.score--pass{background:var(--ok-bg)}.score--fail{background:var(--ko-bg)}.score-num{font-family:var(--display);font-weight:800;font-size:52px;line-height:1;min-width:1.6em}.score--pass .score-num{color:var(--ok)}.score--fail .score-num{color:var(--ko)}.muted{color:var(--ink-soft);font-size:15px}.transcript,.vocab{margin-top:32px}.transcript h2,.vocab h2{font-size:24px;font-weight:800;margin-bottom:10px}.line{margin:0;padding:8px 12px;border-left:4px solid var(--c);border-radius:0 10px 10px 0}.line+.line{margin-top:6px}.line b{color:var(--c);display:block;font-size:14px}.line--on{background:var(--card)}.vocab dl{margin:0;background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden}.vocab dl div{display:flex;justify-content:space-between;gap:12px;padding:10px 16px}.vocab dl div+div{border-top:1px solid var(--line)}.vocab dt{font-weight:700}.vocab dd{margin:0;color:var(--ink-soft);text-align:right}.primary .count{font-family:var(--text);font-size:15px;font-weight:400;opacity:.75;margin-left:6px}.primary{position:sticky;bottom:calc(10px + env(safe-area-inset-bottom));z-index:4;box-shadow:0 8px 20px -10px #1d2a5b99}
