:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-synthesis:none;text-rendering:optimizelegibility;--page:var(--lightningcss-light,#f4eee4)var(--lightningcss-dark,#141512);--surface:var(--lightningcss-light,#fffaf2)var(--lightningcss-dark,#1d1f1a);--surface-strong:var(--lightningcss-light,#fff)var(--lightningcss-dark,#252820);--ink:var(--lightningcss-light,#25261f)var(--lightningcss-dark,#f4f0e7);--muted:var(--lightningcss-light,#67685f)var(--lightningcss-dark,#b9b8ad);--line:var(--lightningcss-light,#ddd4c5)var(--lightningcss-dark,#3b3e34);--accent:var(--lightningcss-light,#ad5537)var(--lightningcss-dark,#e18a68);--accent-ink:var(--lightningcss-light,#fffaf2)var(--lightningcss-dark,#20150f);--growth:var(--lightningcss-light,#39705f)var(--lightningcss-dark,#83bca9);--growth-soft:var(--lightningcss-light,#deece6)var(--lightningcss-dark,#243b33);--error:var(--lightningcss-light,#a43e3a)var(--lightningcss-dark,#ef8d86);--error-soft:var(--lightningcss-light,#f5dfda)var(--lightningcss-dark,#442522);--key:var(--lightningcss-light,#f0e7da)var(--lightningcss-dark,#2b2e27);--shadow:var(--lightningcss-light,#4f3a2424)var(--lightningcss-dark,#00000057);--focus:var(--lightningcss-light,#1b6756)var(--lightningcss-dark,#9ad8c4);background:var(--page);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=contrast]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#000;--surface:#090909;--surface-strong:#111;--ink:#fff;--muted:#e4e4e4;--line:#8a8a8a;--accent:#ff9b73;--accent-ink:#000;--growth:#a8f0d5;--growth-soft:#143b2e;--error:#ffaaa5;--error-soft:#4a1111;--key:#1c1c1c;--shadow:transparent;--focus:#fff36a}*{box-sizing:border-box}html{background:var(--page);min-width:320px}body{background:radial-gradient(circle at 12% -12%, color-mix(in srgb, var(--accent) 8%, transparent), transparent 34rem), var(--page);min-width:320px;min-height:100vh;color:var(--ink);margin:0}button,input,select{font:inherit}button,label,select,input{-webkit-tap-highlight-color:transparent}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.45}h1,h2,p{margin-top:0}h1,h2,strong{font-weight:500}h1{letter-spacing:-.052em;margin-bottom:1.1rem;font-size:clamp(2.25rem,6vw,4.25rem);line-height:.98}h2{letter-spacing:-.02em;margin-bottom:.6rem;font-size:1.15rem}.eyebrow,.section-kicker{color:var(--growth);letter-spacing:.065em;text-transform:uppercase;margin:0 0 .85rem;font-size:.78rem;font-weight:500}.lead{max-width:40rem;color:var(--muted);margin-bottom:1.8rem;font-size:1.05rem;line-height:1.6}.primary-action,.secondary-action,.danger-action{cursor:pointer;border-radius:.75rem;min-height:2.9rem;padding:.7rem 1.2rem;font-weight:500}.primary-action{background:var(--accent);color:var(--accent-ink);box-shadow:0 .5rem 1rem color-mix(in srgb, var(--accent) 14%, transparent);border:1px solid #0000}.primary-action:hover:not(:disabled){filter:brightness(1.04)}.secondary-action{border:1px solid var(--line);background:var(--surface-strong);color:var(--ink);justify-content:center;align-items:center;display:inline-flex}.danger-action{border:1px solid color-mix(in srgb, var(--error) 65%, var(--line));color:var(--error);background:0 0}.text-action{color:var(--muted);text-underline-offset:.2rem;cursor:pointer;background:0 0;border:0;padding:.6rem;text-decoration:underline}.keyboard-shortcut-hint{color:var(--muted);letter-spacing:.015em;margin:.55rem 0 0;font-size:.76rem}.brand-button{cursor:pointer;background:0 0;border:0;padding:0}.brand{letter-spacing:-.025em;align-items:center;gap:.65rem;font-weight:500;display:inline-flex}.brand-mark{grid-template-columns:repeat(2,1fr);gap:.18rem;width:1.45rem;height:1.45rem;display:grid;transform:rotate(-3deg)}.brand-mark span{background:var(--accent);border-radius:.2rem}.brand-mark span:nth-child(2),.brand-mark span:nth-child(3){opacity:.5}.app-shell{border:1px solid var(--line);background:var(--surface);width:min(72rem,100% - 2rem);min-height:calc(100vh - 2rem);box-shadow:0 1.3rem 3.2rem var(--shadow);border-radius:1.4rem;margin:1rem auto;overflow:hidden}.app-header,.training-header,.onboarding-header{border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;min-height:4rem;padding:0 1.8rem;display:flex}.main-navigation{align-items:center;gap:.4rem;display:flex}.main-navigation button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:.55rem;padding:.55rem .7rem}.main-navigation button:hover,.main-navigation button.is-active{background:var(--growth-soft);color:var(--ink)}.offline-notice,.quiet-notice{background:var(--growth-soft);color:var(--growth);justify-content:space-between;align-items:center;gap:1rem;padding:.65rem 1.8rem;font-size:.86rem;display:flex}.offline-notice button,.quiet-notice button{color:inherit;cursor:pointer;background:0 0;border:0;padding:.3rem;font-weight:500}.dashboard-intro{background:var(--page);grid-template-columns:minmax(0,1.15fr) minmax(17rem,.85fr);gap:2rem;padding:clamp(2.4rem,7vw,5rem) clamp(1.5rem,6vw,4rem) 3.5rem;display:grid}.dashboard-copy{align-self:center}.dashboard-copy h1{max-width:38rem}.dashboard-copy .lead{max-width:32rem}.quiet-line{color:var(--muted);margin:1rem 0 0;font-size:.84rem;line-height:1.5}.rhythm-card,.progress-section,.settings-section,.metric,.completion-panel{border:1px solid var(--line);background:var(--surface)}.rhythm-card{border-radius:1.15rem;align-self:stretch;min-width:0;padding:clamp(1.3rem,4vw,2rem);overflow:hidden}.section-heading-row{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.section-heading-row>span{color:var(--muted);white-space:nowrap;font-size:.85rem}.rhythm-slots{grid-template-columns:repeat(auto-fit,minmax(1.5rem,1fr));gap:.55rem;margin:1.4rem 0 2rem;display:grid}.rhythm-slots span,.progress-track,.phase-progress{background:var(--line);border-radius:999px;overflow:hidden}.rhythm-slots span{height:.4rem}.rhythm-slots span.is-complete{background:var(--growth)}.map-label{color:var(--muted);margin-bottom:.7rem;font-size:.82rem}.keyboard-diagram{width:100%;min-width:0;max-width:54rem;margin:0 auto}.keyboard-row{gap:.38rem;margin-bottom:.38rem;display:flex}.keyboard-row-2{padding-inline:2.1%}.keyboard-row-3{padding-inline:5.2%}.keyboard-key{border:1px solid var(--line);background:var(--key);min-width:0;min-height:2.8rem;color:var(--muted);box-shadow:inset 0 -2px 0 var(--line);border-radius:.5rem;flex-basis:0;place-items:center;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8rem;display:grid}.keyboard-diagram.is-compact .keyboard-row{gap:.22rem;margin-bottom:.22rem}.keyboard-diagram.is-compact .keyboard-key{border-radius:.35rem;min-height:1.8rem;font-size:.68rem}.keyboard-key.is-home{box-shadow:inset 0 -3px 0 color-mix(in srgb, var(--growth) 65%, var(--line))}.keyboard-key.is-building{background:color-mix(in srgb, var(--accent) 10%, var(--key));color:var(--accent)}.keyboard-key.is-independent{background:var(--growth-soft);color:var(--growth);box-shadow:none;border-color:#0000}.keyboard-key.is-fluent{border-color:var(--growth);background:var(--growth);color:var(--surface);box-shadow:none}.keyboard-key.is-highlighted{border-color:var(--accent);background:var(--accent);color:var(--accent-ink);box-shadow:none}.keyboard-key.is-error-target{border-color:var(--error);background:var(--error);color:var(--surface-strong);box-shadow:0 0 0 .3rem color-mix(in srgb, var(--error) 20%, transparent);animation:.34s ease-out both key-error-flash}.content-page{max-width:65rem;margin:0 auto;padding:clamp(2rem,6vw,4rem)}.page-heading{max-width:45rem;margin-bottom:2.5rem}.page-heading h1{font-size:clamp(2.5rem,6vw,4rem)}.page-heading>p:last-child{color:var(--muted);font-size:1rem;line-height:1.6}.metric-grid{grid-template-columns:repeat(4,1fr);gap:.8rem;margin-bottom:1rem;display:grid}.metric{border-radius:.9rem;min-height:7.2rem;padding:1.15rem}.metric>span{min-height:2.4rem;color:var(--muted);font-size:.8rem;line-height:1.35;display:block}.metric strong{letter-spacing:-.04em;margin-top:.7rem;font-size:1.8rem;display:block}.metric small{color:var(--muted);font-size:.8rem}.progress-section,.settings-section{border-radius:1rem;padding:clamp(1.25rem,4vw,2rem)}.progress-section{margin-top:1rem}.progress-section .keyboard-diagram{margin-top:1.5rem}.section-kicker{margin-bottom:.3rem}.legend{color:var(--muted);flex-wrap:wrap;gap:1rem;margin-top:1rem;font-size:.8rem;display:flex}.legend span{align-items:center;gap:.45rem;display:inline-flex}.legend-dot{background:var(--line);border-radius:.2rem;width:.65rem;height:.65rem}.legend-dot.is-building{background:var(--accent)}.legend-dot.is-independent{background:var(--growth-soft);border:1px solid var(--growth)}.legend-dot.is-fluent{background:var(--growth)}.two-column-sections{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.plain-list{margin:.5rem 0 0;padding:0;list-style:none}.plain-list li{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 0;display:flex}.plain-list li>span{flex-direction:column;gap:.2rem;display:flex}.plain-list small{color:var(--muted);font-size:.75rem}.plain-list strong{color:var(--growth)}.empty-copy{color:var(--muted);margin:1rem 0 0;line-height:1.55}.settings-page form,.settings-section{margin-top:1rem}.settings-page form .settings-section{margin-top:0}.settings-section>p{max-width:48rem;color:var(--muted);line-height:1.55}.setting-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:2rem;padding:1.2rem 0;display:flex}.setting-row:first-child{border-top:0;padding-top:0}.setting-row.is-stacked{align-items:flex-start}.setting-row h2,.setting-row p{margin-bottom:.25rem}.setting-row p,.setting-row small,.toggle-row small{color:var(--muted);font-size:.82rem;line-height:1.45;display:block}.setting-row select,.field-label select,.field-label input{border:1px solid var(--line);background:var(--surface-strong);min-height:2.8rem;color:var(--ink);border-radius:.65rem;padding:0 .8rem}.segmented-control{background:var(--page);border-radius:.8rem;flex-wrap:wrap;gap:.35rem;padding:.25rem;display:inline-flex}.segmented-control button{min-height:2.4rem;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:.58rem;padding:.45rem .8rem}.segmented-control button[aria-pressed=true]{background:var(--surface-strong);color:var(--ink);box-shadow:0 .15rem .5rem var(--shadow)}.field-label{gap:.45rem;margin:1.2rem 0;font-weight:500;display:grid}.field-hint{color:var(--muted);font-size:.8rem;font-weight:400;line-height:1.45}.field-label input{width:100%}.toggle-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:2rem;padding:1.2rem 0;display:flex}.toggle-row input{width:2.9rem;height:1.55rem;accent-color:var(--growth)}.form-actions,.button-row{flex-wrap:wrap;align-items:center;gap:.8rem;margin-top:1.2rem;display:flex}.form-actions span{color:var(--growth);font-size:.85rem}.file-action{cursor:pointer;position:relative}.file-action input{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.form-error{margin-top:1rem;color:var(--error)!important}.danger-section{border-color:color-mix(in srgb, var(--error) 35%, var(--line))}.delete-confirmation{flex-wrap:wrap;align-items:center;gap:.8rem;display:flex}.delete-confirmation>span{width:100%;color:var(--error);font-size:.85rem}.completion-page{place-items:center;min-height:100vh;padding:1rem;display:grid}.completion-panel{width:min(43rem,100%);box-shadow:0 1.3rem 3.2rem var(--shadow);border-radius:1.2rem;padding:clamp(2rem,6vw,3.5rem)}.completion-panel h1{font-size:clamp(2.4rem,7vw,4rem)}.completion-lead{color:var(--muted);font-size:1.05rem;line-height:1.55}.result-list{margin:2rem 0 0}.result-list>div{border-top:1px solid var(--line);justify-content:space-between;gap:1rem;padding:1rem 0;display:flex}.result-list dt{color:var(--muted)}.result-list dd{margin:0;font-weight:500}.result-list dd.positive{color:var(--growth)}.completion-actions{justify-content:space-between;align-items:center;gap:1rem;margin-top:1.8rem;display:flex}.completion-actions p{color:var(--muted);margin:0;font-size:.85rem}.completion-actions>div{text-align:center}.completion-actions .keyboard-shortcut-hint{margin-top:.5rem}.onboarding-shell{border:1px solid var(--line);background:var(--surface);width:min(65rem,100% - 2rem);min-height:calc(100vh - 2rem);box-shadow:0 1.3rem 3.2rem var(--shadow);border-radius:1.4rem;margin:1rem auto;overflow:hidden}.onboarding-header>span{color:var(--muted);font-size:.82rem}.onboarding-progress{grid-template-columns:repeat(2,1fr);gap:.35rem;padding:1rem 1.8rem 0;display:grid}.onboarding-progress span{background:var(--line);border-radius:999px;height:.25rem}.onboarding-progress span.is-active{background:var(--growth)}.onboarding-panel{width:min(47rem,100% - 2rem);margin:0 auto;padding:clamp(2.5rem,7vw,5rem) 0}.welcome-panel{width:min(52rem,100% - 2rem)}.onboarding-panel h1{max-width:43rem}.panel-copy{max-width:40rem;color:var(--muted);margin-bottom:2rem;line-height:1.6}.promise-list{grid-template-columns:repeat(3,1fr);gap:.7rem;margin:2rem 0;padding:0;list-style:none;display:grid}.promise-list li{border-top:1px solid var(--line);min-height:7rem;padding:1rem 0}.promise-list strong,.promise-list span{display:block}.promise-list span{color:var(--muted);margin-top:.4rem;font-size:.85rem;line-height:1.45}.detected-layout{border:1px solid color-mix(in srgb, var(--growth) 40%, var(--line));background:var(--growth-soft);border-radius:.9rem;align-items:center;gap:.9rem;max-width:37rem;padding:1rem 1.1rem;display:flex}.detection-mark{background:var(--growth);width:2rem;height:2rem;color:var(--surface);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.detected-layout strong,.detected-layout span{display:block}.detected-layout div>span{color:var(--muted);margin-top:.15rem;font-size:.82rem;line-height:1.4}.quick-settings{grid-template-columns:minmax(17rem,1fr) minmax(12rem,.75fr);gap:1rem;max-width:43rem;margin:1.4rem 0 1.7rem;display:grid}.quick-settings fieldset{border:1px solid var(--line);border-radius:.9rem;margin:0;padding:.85rem 1rem 1rem}.quick-settings legend,.compact-field>span{color:var(--muted);font-size:.78rem}.quick-settings .segmented-control{margin-top:.3rem;display:flex}.quick-settings .segmented-control button{flex:1}.compact-field{border:1px solid var(--line);border-radius:.9rem;align-content:center;gap:.45rem;padding:.85rem 1rem 1rem;display:grid}.compact-field select{background:var(--page);min-height:2.65rem;color:var(--ink);border:0;border-radius:.55rem;padding:0 .7rem}.calibration-surface,.baseline-surface{border:1px solid var(--line);background:var(--page);border-radius:1rem}.calibration-surface{text-align:center;cursor:text;align-content:center;place-items:center;min-height:15rem;padding:2rem;display:grid}.calibration-count{color:var(--muted);font-size:.8rem}.calibration-surface strong{color:var(--accent);margin:.8rem 0 .2rem;font-family:ui-monospace,monospace;font-size:clamp(3rem,10vw,5rem)}.calibration-surface p,.calibration-message{color:var(--muted);margin:0}.calibration-message{min-height:1.5rem;margin-top:.8rem;font-size:.85rem}.calibration-fallback{margin-top:.7rem}.baseline-time{font-variant-numeric:tabular-nums;color:var(--ink)!important}.baseline-surface{cursor:text;min-height:12rem;margin-bottom:1rem;padding:clamp(1.2rem,4vw,2rem);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(1.25rem,4vw,2rem);line-height:1.65}.baseline-surface span{color:var(--muted)}.baseline-surface span.is-correct{color:var(--growth)}.baseline-surface span.is-error{border-bottom:.18rem solid var(--error);color:var(--error)}.baseline-surface span.is-current{border-bottom:.18rem solid var(--accent);color:var(--ink)}.onboarding-fields{margin:2rem 0}.onboarding-fields fieldset{border:0;margin:0 0 1.3rem;padding:0}.onboarding-fields legend{margin-bottom:.7rem;font-weight:500}.anchor-panel .keyboard-diagram{margin:2rem 0}.anchor-note{color:var(--muted);font-size:.88rem}.anchor-panel .primary-action{margin-top:.5rem}.training-shell{border:1px solid var(--line);background:var(--surface);width:min(75rem,100% - 2rem);min-height:calc(100vh - 2rem);box-shadow:0 1.3rem 3.2rem var(--shadow);border-radius:1.4rem;margin:1rem auto;overflow:hidden}.training-header{gap:1.2rem}.session-progress{font-variant-numeric:tabular-nums;align-items:center;gap:.8rem;width:min(23rem,45vw);font-size:.85rem;display:flex}.line-counter{white-space:nowrap;animation:.32s ease-out both counter-confirm}.progress-track{flex:1;height:.35rem}.progress-track span,.phase-progress span{background:var(--accent);height:100%;transition:width .25s linear;display:block}.icon-action{width:2.5rem;height:2.5rem;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.icon-action:hover{background:var(--page);color:var(--ink)}.training-main{background:var(--page);min-height:42rem;padding:1.5rem clamp(1rem,5vw,3rem) 2.5rem}.training-meta{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:.4rem 1rem;font-size:.82rem;display:flex}.phase-progress{height:.18rem;margin-top:.85rem}.typing-stage{border:1px solid var(--line);background:var(--surface);max-width:66rem;box-shadow:0 .8rem 2rem color-mix(in srgb, var(--shadow) 45%, transparent);border-radius:1rem;margin:1rem auto 0;position:relative;overflow:hidden}.typing-stage.has-error{border-color:color-mix(in srgb, var(--error) 68%, var(--line))}.typing-surface{cursor:text;justify-content:center;align-items:center;min-height:13rem;padding:1.5rem;display:flex;overflow:hidden}.typing-line{letter-spacing:.018em;text-align:center;overflow-wrap:anywhere;max-width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:clamp(1.8rem,6vw,4.3rem);line-height:1.3}.typed-text{color:var(--growth)}.upcoming-text{color:var(--muted)}.current-character,.error-character{min-width:.5ch;display:inline-block}.current-character{border-bottom:.25rem solid var(--accent);color:var(--ink)}.error-character{border:.12rem solid var(--error);background:var(--error-soft);color:var(--error);border-bottom-width:.3rem;border-radius:.28rem;padding:0 .08em;animation:.28s ease-out both character-error}.error-flash{z-index:2;border:.2rem solid var(--error);border-radius:inherit;pointer-events:none;animation:.42s ease-out both surface-error-flash;position:absolute;inset:0}.inline-feedback{border-top:1px solid var(--line);min-height:3.4rem;color:var(--muted);place-items:center;padding:.7rem 1rem;font-size:.85rem;display:grid}.error-feedback{color:var(--error);align-items:center;gap:.55rem;font-weight:500;display:inline-flex}.error-feedback i{background:var(--error);width:1.35rem;height:1.35rem;color:var(--surface);border-radius:50%;place-items:center;font-style:normal;font-weight:700;display:grid}.input-hint{color:var(--muted)}.guidance-area{max-width:55rem;margin:.3rem auto 0}.guidance-placeholder{min-height:12rem}.finger-cue{color:var(--muted);justify-content:center;align-items:center;gap:.5rem;margin:0 0 .8rem;font-size:.82rem;display:flex}.finger-cue i{background:var(--accent);border-radius:50%;width:.55rem;height:.55rem}.pause-backdrop{z-index:10;background:color-mix(in srgb, var(--page) 72%, transparent);-webkit-backdrop-filter:blur(.5rem);backdrop-filter:blur(.5rem);place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.pause-panel{border:1px solid var(--line);background:var(--surface);width:min(28rem,100%);box-shadow:0 1.3rem 3.2rem var(--shadow);border-radius:1rem;padding:2rem}.pause-panel h2{font-size:1.7rem}.pause-panel>p:not(.eyebrow){color:var(--muted)}.pause-panel .primary-action,.pause-panel .text-action{width:100%;margin-top:.5rem}.loading-screen,.fatal-screen{text-align:center;align-content:center;place-items:center;min-height:100vh;padding:2rem;display:grid}.loading-screen p{color:var(--muted)}.loading-mark{border:.25rem solid var(--line);border-top-color:var(--accent);border-radius:50%;width:2rem;height:2rem;animation:.8s linear infinite spin}.fatal-screen h1{max-width:42rem;font-size:clamp(2rem,6vw,3.5rem)}.fatal-screen p{color:var(--error)}.page-enter{animation:.25s ease-out both page-enter}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}@keyframes page-enter{0%{opacity:0;transform:translateY(.35rem)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes character-error{0%{transform:translate(0)}30%{transform:translate(-.12em)}65%{transform:translate(.1em)}to{transform:translate(0)}}@keyframes surface-error-flash{0%{opacity:.78}to{opacity:0}}@keyframes key-error-flash{0%{transform:translateY(-.2rem)}to{transform:translateY(0)}}@keyframes counter-confirm{0%{color:var(--growth);transform:translateY(-.12rem)}to{color:var(--muted);transform:translateY(0)}}@media (width<=800px){.dashboard-intro{grid-template-columns:1fr}.dashboard-intro>*{min-width:0}.metric-grid{grid-template-columns:repeat(2,1fr)}.two-column-sections,.promise-list{grid-template-columns:1fr}.promise-list li{min-height:0}.quick-settings{grid-template-columns:1fr}.setting-row.is-stacked{flex-direction:column;gap:.8rem}}@media (width<=560px){.app-shell,.training-shell,.onboarding-shell{border-inline:0;border-radius:0;width:100%;min-height:100vh;margin:0}.app-header,.training-header,.onboarding-header{min-height:3.6rem;padding:0 1rem}.main-navigation{gap:0}.main-navigation button{padding-inline:.45rem;font-size:.78rem}.app-header .brand>span:last-child{display:none}.dashboard-intro{padding:2.4rem 1rem 2rem}.content-page{padding:2rem 1rem}.metric-grid{grid-template-columns:1fr 1fr}.metric{min-height:6.5rem;padding:.9rem}.metric strong{font-size:1.45rem}.keyboard-row{gap:.18rem;margin-bottom:.18rem}.keyboard-key{border-radius:.35rem;min-height:2rem;font-size:.66rem}.setting-row,.toggle-row{flex-direction:column;align-items:flex-start;gap:.7rem}.completion-actions{flex-direction:column;align-items:flex-start}.onboarding-progress{padding-inline:1rem}.onboarding-panel{width:calc(100% - 2rem);padding:2.4rem 0}.training-header .brand{display:none}.training-header{justify-content:stretch}.session-progress{flex:1;width:auto;min-width:0}.training-main{min-height:calc(100vh - 3.6rem);padding:1.2rem .75rem}.typing-surface{min-height:11rem;padding-inline:.75rem}.typing-line{font-size:clamp(1.55rem,9vw,2.3rem)}.guidance-placeholder{min-height:8rem}.segmented-control{width:100%}.segmented-control button{flex:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (forced-colors:active){.keyboard-key.is-highlighted,.primary-action,.rhythm-slots span.is-complete{forced-color-adjust:none}}
