@font-face{font-family:Geist;src:url('./public/brand/geist-latin.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap;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:Geist;src:url('./public/brand/geist-latin-ext.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
:root{--ink:#172033;--muted:#667085;--teal:#1a3eb1;--teal-dark:#16369e;--mint:#eef3ff;--line:#dfe6f2;--background:transparent;--ghost:#7a8797;--display:Geist,ui-sans-serif,system-ui,sans-serif;--body:Geist,ui-sans-serif,system-ui,sans-serif;background:transparent}
html,body{min-height:0;overflow-x:clip}
.site-header{display:none}
.shell{max-width:none;padding:0 0 20px}
.library h2{font-size:20px;margin:0 0 20px;font-weight:600;letter-spacing:-.02em}
.lesson-grid{gap:18px}
.video-card,.writing-card,.progress-card,.sentences-card,.lesson-choice-card{border-color:var(--line);border-radius:16px}
.lesson-choice:hover,.quiet:hover,button:hover{background:#f2f5ff;border-color:#c6d3f2}
.choice-source{background:#f8faff}
.video-wrap,.video-cover{background:#1a3eb1}
.cover-topic,.video-cover p,.video-cover small{color:#e1e9ff}
.cover-orbit{display:none}
.start-button{background:#fff;border-color:#fff;color:#1a3eb1}
.start-button:hover{background:#eef3ff;color:#16369e}
.playback select,.special-keys button{background:#f3f6fc}
.switch-label input:focus-visible+.switch,button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-color:#6280dc}
.feedback:not(.error){color:#1a3eb1}
.lesson-nav{margin-bottom:18px}
.playback-settings{display:flex;flex-wrap:wrap;gap:12px 18px}
.writing-actions{justify-content:flex-end;margin-top:12px;padding-top:0;border-top:0}
.sentence-item.done,.sentence-item[aria-current="true"]{background:#eef3ff;border-color:#c7d5f5}
.sentence-item small{color:#475569}
dialog[open]{position:fixed;inset:var(--dialog-top,24px) 16px auto;margin:0 auto;max-height:var(--dialog-max-height,calc(100dvh - 48px));overflow:auto}
@media(max-width:480px){.shell{padding:0 0 16px}.lesson-grid{gap:12px}.library h2{font-size:18px;margin-bottom:16px}.video-wrap{aspect-ratio:16/10}.video-cover h3{font-size:22px}.writing-card{padding:19px 15px}.lesson-nav{margin-bottom:12px}}
