/* TypeToWork 1.5 — approved editorial workbench, light + night practice. */
:root{--bg:#f8faf7;--surface:#fff;--ink:#102f2b;--muted:#536963;--accent:#087f75;--tint:#e5f4ed;--soft:#f3f7f3;--line:#dce6df;--control:#7a9188;--good:#087568;--error:#b22d3c;--radius:14px;--shadow:0 4px 18px #153e2b04;--passage-muted:#68766f}
body{font-size:16px;line-height:1.65;letter-spacing:-.25px;background:linear-gradient(150deg,#fff9 0%,transparent 40%),var(--bg);color:var(--ink)}
body.dark{--bg:#101a17;--surface:#14231e;--ink:#f0f6f1;--muted:#afc3b9;--accent:#a7e0c5;--tint:#213d31;--soft:#182c24;--line:#30483d;--control:#789a89;--good:#a7e0c5;--error:#ff9da5;--passage-muted:#b5c2bb;background:radial-gradient(ellipse at 80% 0,#17372a55,transparent 60%),var(--bg)}
.container,.studio-page{width:min(1320px,calc(100% - 64px));margin-inline:auto}#main{min-height:55vh;padding-bottom:22px;outline:none}
body,button,input,select,textarea{font-family:var(--ui-font)}button,.button{font-size:14px;line-height:1.4;font-weight:650;min-height:46px;padding:11px 18px;border:1px solid var(--line);border-radius:10px;box-shadow:none;letter-spacing:-.15px;transition:background .15s,border-color .15s,box-shadow .15s}button:hover,.button:hover{background:var(--soft);border-color:var(--accent)}button:disabled{opacity:.52}button:active,.button:active{transform:translateY(1px)}
.primary,.dark .primary{background:linear-gradient(110deg,#07564b,#043d36);color:#fff;border:1px solid #07564b;box-shadow:0 4px 10px #07564b12}.primary:hover{background:#063e36;color:white}.dark .primary{background:#a7e0c5;color:#102d21;border-color:#a7e0c5;box-shadow:none}.dark .primary:hover{background:#c0f1d9;color:#102d21}.quiet{border-color:transparent;background:transparent;color:var(--accent)}
input,select,textarea{border:1px solid var(--control);background:var(--surface);color:var(--ink);border-radius:9px;font-size:15px;min-height:46px;padding:10px 13px}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.85}input:focus,select:focus,textarea:focus{outline:2px solid color-mix(in srgb,var(--accent) 24%,transparent);outline-offset:1px;border-color:var(--accent)}input[type=checkbox]{accent-color:var(--accent)}input[type=file]{max-width:100%}input[type=range]{accent-color:var(--accent)}
.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.panel{padding:28px}.small,.rule-note,.studio-note{font-size:13px;line-height:1.8}.eyebrow{font-size:11px;letter-spacing:1.7px;color:var(--muted);font-weight:750}.notice{border-left:3px solid var(--accent);border-radius:8px;background:var(--tint);font-size:14px;line-height:1.8}.notice.warning{border-color:var(--error)}.section{margin-top:24px}.text-link{font-size:14px}.row{gap:12px}
h1{font-size:clamp(34px,3.7vw,52px);line-height:1.12;letter-spacing:-1.9px;font-weight:800}h2{font-size:28px;line-height:1.22;letter-spacing:-1px;font-weight:750}h3{font-size:18px;line-height:1.4;letter-spacing:-.5px;font-weight:750}p{overflow-wrap:break-word}svg{flex-shrink:0;stroke-width:1.7}
/* The navigation remains in the same position in both appearances. */
.topbar{position:relative;z-index:20;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 82%,var(--bg));box-shadow:none}.header-inner{min-height:88px;display:flex;align-items:center;flex-wrap:nowrap;gap:32px;padding:0}.header-inner .brand{order:0;margin:0}.brand{font-size:25px;font-weight:800;letter-spacing:-1px;white-space:nowrap;gap:10px}.brand-mark{width:38px;height:38px;filter:drop-shadow(0 2px 2px #0b5c4510)}.brand-work,.brand-type,.dark .brand-work{color:var(--ink)}
.header-inner nav{order:1;display:flex;flex:1;justify-content:center;margin:0;padding:0;gap:27px;border:0;border-radius:0;box-shadow:none;background:transparent}.header-inner nav a{position:relative;font-size:15px;font-weight:600;color:var(--muted);padding:31px 0;border:0;border-radius:0;background:transparent;white-space:nowrap}.header-inner nav a.active{background:transparent;color:var(--ink);font-weight:800}.header-inner nav a.active::after{content:'';position:absolute;height:3px;bottom:0;left:0;right:0;border-radius:3px;background:var(--accent)}.header-inner nav a:hover{background:transparent;color:var(--accent)}
.header-actions{order:2;display:flex;align-items:center;gap:12px}.header-actions .theme{width:40px;min-height:40px;margin:0;padding:9px;border:0;background:transparent;border-radius:50%;color:var(--ink)}.header-actions .theme:hover{background:var(--tint)}.header-actions .theme svg{width:21px;height:21px}.guest-link{display:flex;align-items:center;gap:7px;font-size:14px;color:var(--ink);padding-left:14px;border-left:1px solid var(--line)}.guest-link svg{width:18px;height:18px}.account-control{order:initial;min-height:43px;border-radius:9px;font-size:14px;gap:8px;background:#073e36;border-color:#073e36;color:white;padding:10px 17px}.account-control>svg{display:none}.account-control:hover{color:var(--ink)}.account-avatar{background:#ffffff22;color:inherit;width:24px;height:24px;font-size:12px}.dark .account-control{color:var(--ink);background:var(--tint);border-color:var(--line)}.nav-toggle,.mobile-settings{display:none!important}
footer{padding:25px 0 32px;margin-top:30px;border-top:1px solid var(--line);background:transparent}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}.footer-inner .brand{font-size:19px}.footer-inner .brand-mark{width:30px;height:30px}.footer-support{display:flex;align-items:center;gap:11px;color:var(--ink);font-size:12px;line-height:1.6;padding-left:20px;border-left:1px solid var(--line)}.footer-support small{display:block;color:var(--muted);font-size:11px}.footer-inner .links{font-size:12px;gap:18px}.footer-device{font-size:11px;color:var(--muted)}
/* A small original keycap illustration, built in CSS, never a screenshot. */
.design-keycaps{display:flex;align-items:center;justify-content:center;gap:15px;width:365px;min-height:150px;flex-shrink:0;perspective:600px;padding:12px 8px;user-select:none}.design-keycaps kbd{position:relative;display:grid;place-items:center;width:74px;height:78px;border-radius:16px;color:#173d32;background:linear-gradient(145deg,#fff,#f2f3ed);font:500 30px/1 var(--ui-font);border:1px solid #fff;box-shadow:inset 4px 4px 5px #fff,inset -4px -6px 5px #c5cbc2,4px 10px 2px #bcc6bc,8px 22px 18px #183d2b18;transform:rotateX(15deg) rotateZ(8deg)}.design-keycaps kbd:nth-child(2){height:85px;transform:translateY(-12px) rotateX(10deg) rotateZ(-3deg);background:linear-gradient(145deg,#c4e4d7,#98bfae);border-color:#c9e5d9;box-shadow:inset 4px 4px 5px #e5f5ec99,inset -4px -6px 5px #7ba794,4px 10px 2px #789d89,8px 22px 18px #183d2b23}.design-keycaps kbd:nth-child(3){transform:translateY(8px) rotateX(13deg) rotateZ(-9deg)}.design-keycaps kbd:nth-child(4){transform:rotateX(15deg) rotateZ(-5deg)}.dark .design-keycaps{opacity:.9;filter:brightness(.9)}
.page-head,.studio-head{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:46px 0 32px}.page-head>div,.studio-head>div{min-width:0}.page-head h1,.studio-head h1{font-size:clamp(34px,3.5vw,48px);font-weight:800;letter-spacing:-1.7px;line-height:1.16}.page-head p,.studio-head p:not(.eyebrow){font-size:17px;line-height:1.7;max-width:740px;margin-top:12px;color:var(--muted)}.page-head .design-keycaps,.studio-head>.design-keycaps{width:250px;transform:scale(.77);transform-origin:right center;min-height:120px;margin-left:-35px}.studio-head .eyebrow{display:none}.studio-head h1{margin:0}.studio-head>div>h1+p{margin-top:10px}
/* Homepage and the common classic workbench. */
#main .home-layout{display:block;padding:0;margin:0}#main .home-hero{display:flex;align-items:center;justify-content:space-between;gap:35px;max-width:none;min-width:0;padding:40px 15px 35px;text-align:left;margin:0}#main .home-hero h1{font-size:clamp(39px,4.2vw,58px);font-weight:800;line-height:1.12;letter-spacing:-2.4px}#main .hero-description{font-size:20px;line-height:1.6;max-width:650px;margin:13px 0 10px;color:var(--muted)}.hero-utility{font-size:14px;color:var(--muted);line-height:1.8}.hero-utility span{padding:0 8px}
#main .typing-workspace,#main .home-layout .typing-workspace{display:block;padding:20px 24px 17px;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);background:var(--surface);min-width:0}#main .typing-workspace>*{order:initial}.tabs{display:flex;gap:8px;background:transparent;padding:0 0 15px;border:0;border-bottom:1px solid var(--line);border-radius:0;margin:0 0 15px}.tabs a{flex:1;display:flex;align-items:center;justify-content:center;gap:11px;min-height:44px;padding:10px 14px;border:1px solid transparent;border-radius:9px;font-size:14px;color:var(--muted);line-height:1.4}.tabs a.active{position:relative;color:var(--ink);font-weight:800;background:var(--surface);border:1px solid var(--line)}.tabs a.active::after{content:'';position:absolute;bottom:-1px;height:3px;left:10px;right:10px;background:var(--accent);border-radius:3px}.tabs a svg{width:21px;height:21px;color:var(--accent)}
.workspace-heading{position:absolute;clip-path:inset(50%);height:1px;width:1px;overflow:hidden;margin:0}.test-setup{padding:0;background:transparent;border:0;margin:0 0 17px;border-radius:0}.test-setup>summary{font-size:14px;padding:10px 0}.test-setup[open]>summary{display:none}.workspace-top{display:flex;align-items:center;justify-content:flex-start;gap:18px;margin:0;flex-wrap:wrap}.context{display:flex;align-items:center;gap:12px;flex-wrap:nowrap}.context label{font-size:0;color:transparent;display:block}.context select{display:block;margin:0;min-height:43px;font-size:14px;line-height:1.4;padding:10px 26px 10px 13px;border:1px solid var(--line);background:var(--surface);color:var(--ink);width:auto;max-width:230px}.context label:nth-child(2){order:-1}.context label:last-child{display:none}.durations{display:flex;gap:0;flex-wrap:nowrap;border:1px solid var(--line);border-radius:9px;padding:2px;margin:0;max-width:max-content}.durations button{font-size:13px;border:0;background:transparent;padding:9px 14px;min-width:59px;min-height:38px;font-weight:500}.durations button.selected,.durations button[aria-pressed=true]{background:var(--tint);color:var(--ink);border:0;font-weight:750;box-shadow:none}.workbench-tools{display:flex;gap:10px;align-items:center;margin-left:auto}.size-controls{display:flex;border:1px solid var(--line);padding:2px;border-radius:9px;gap:0}.size-controls button{border:0;border-radius:7px;min-height:38px;min-width:36px;font-size:13px}.workbench-tools>[data-sound-toggle]{font-size:13px;min-height:43px;padding:9px 12px}.workbench-tools svg{width:17px;height:17px}
.practice-bar{display:flex;align-items:center;justify-content:space-between;padding:18px 22px 4px;border:1px solid var(--line);border-bottom:0;border-radius:11px 11px 0 0;margin:0;background:var(--surface);gap:15px}.practice-status{font-size:13px;max-width:65%;gap:8px}.practice-bar .timer{font-size:35px;line-height:1.3;min-width:100px;gap:8px;justify-content:flex-end;letter-spacing:-1px}.practice-bar .timer svg{display:none}.typing-surface{border:1px solid var(--line);border-top:0;border-bottom:0;background:var(--surface);border-radius:0;box-shadow:none}.typing-surface:focus-within{box-shadow:inset 3px 0 var(--accent);border-color:var(--line)}.typing-surface .passage{font-family:var(--reading-font);font-size:var(--passage-size,30px);line-height:1.65;letter-spacing:0;background:transparent;color:var(--passage-muted);height:202px;min-height:0;padding:26px 24px;overflow:hidden;word-break:normal}.typing-surface .preview-passage{padding:26px 24px}.typing-surface .typing-input{font-family:var(--reading-font);font-size:var(--passage-size,30px);line-height:1.65;letter-spacing:0;padding:26px 24px;background:transparent}.passage .correct{color:var(--accent);background:transparent}.passage .current-word{background:transparent}.passage .wrong{color:var(--error);background:transparent;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}.caret{border-left:2px solid var(--accent);margin-left:-2px}.typing-surface.native-input .typing-input{background:var(--surface);color:var(--ink);-webkit-text-fill-color:var(--ink);caret-color:var(--accent)}
.start-row{display:flex;align-items:center;text-align:left;gap:22px;padding:17px 22px;border:1px solid var(--line);border-radius:0 0 11px 11px;background:var(--surface);margin:0}.start-row .primary{min-width:220px;min-height:48px;font-size:15px;padding-inline:23px}.start-row p{margin:0;color:var(--muted);font-size:13px;padding-left:20px;border-left:1px solid var(--line);line-height:1.7}.workbench-settings{margin-left:auto;border:1px solid var(--line);font-size:13px;min-height:43px;white-space:nowrap;background:transparent}.practice-actions{padding:17px 22px;border:1px solid var(--line);border-radius:0 0 11px 11px;margin:0}.practice-actions button{font-size:14px}.practice-foot{padding:11px 4px 0;gap:15px}.practice-foot p,.practice-foot #comparison-note{font-size:12px}.practice-rules{font-size:13px;margin:8px 4px 0}.practice-rules summary{font-size:12px}.practice-rules p{line-height:1.9;padding-top:10px}.home-support{margin:0}.discovery-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:25px 0;gap:0}.discovery-strip>a{display:flex;align-items:center;gap:17px;padding:0 24px;border-right:1px solid var(--line);color:var(--ink);min-width:0}.discovery-strip>a:first-child{padding-left:12px}.discovery-strip>a:last-child{border:0}.discovery-strip>a>svg{margin-left:auto;width:18px;opacity:.5}.discovery-strip h2{font-size:16px;letter-spacing:-.5px}.discovery-strip p{font-size:13px;color:var(--muted);margin-top:5px;line-height:1.7}.feature-icon{display:grid;place-items:center;flex-shrink:0;width:47px;height:47px;border-radius:14px;color:var(--accent);background:var(--tint)}.feature-icon svg{width:25px;height:25px}
.home-routine-grid{display:grid;grid-template-columns:1.2fr .9fr;gap:22px;margin:0 0 22px}.daily-spotlight{position:relative;display:block;padding:30px 30px 28px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(125deg,var(--soft),var(--tint));overflow:hidden}.daily-copy{position:relative;z-index:1;max-width:72%}.daily-copy h2{font-size:34px;line-height:1.13;letter-spacing:-1.5px;margin:0 0 14px}.daily-copy>p:not(.eyebrow){font-size:15px;line-height:1.75;color:var(--muted);max-width:400px;margin:0 0 20px}.routine-label{font-size:13px;font-weight:650;display:block;margin-bottom:9px}.routine-choices{display:flex;gap:5px;max-width:310px;margin-bottom:15px}.routine-choices button{flex:1;border:1px solid var(--line);font-size:13px;background:var(--surface);min-height:42px;padding:8px 15px}.routine-choices [aria-pressed=true]{border-color:#a8cabe;background:var(--tint);color:var(--ink)}.daily-button{display:inline-flex;width:min(310px,100%);font-size:15px;justify-content:space-between}.growth-art{display:flex;gap:13px;position:absolute;right:30px;bottom:80px;align-items:flex-end;transform:rotate(-12deg);opacity:.9}.growth-art>span{width:47px;border-radius:7px 7px 0 0;background:linear-gradient(100deg,#bddfd2,#75bdab);box-shadow:inset 5px 0 8px #ffffff80,6px 6px 0 #70b6a66b;height:72px}.growth-art>span:nth-child(2){height:109px}.growth-art>span:nth-child(3){height:150px;position:relative}.growth-leaf{position:absolute;width:3px;height:52px;background:#3b937c;left:24px;top:-50px;transform:rotate(8deg)}.growth-leaf::before,.growth-leaf::after{content:'';position:absolute;width:22px;height:34px;background:linear-gradient(45deg,#4a9e86,#a8d9c6);border-radius:90% 0 90% 0;top:0;left:0;transform:rotate(8deg)}.growth-leaf::after{left:-21px;top:13px;transform:scaleX(-1)}
.next-steps{padding:28px 28px 15px}.next-steps>.eyebrow{margin-bottom:12px}.next-steps>a{display:flex;align-items:center;gap:18px;padding:21px 0;color:var(--ink);border-bottom:1px solid var(--line)}.next-steps>a:last-child{border:0}.next-steps a>div{flex:1}.next-steps h3{font-size:17px}.next-steps p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.7;margin-top:4px}.next-steps .feature-icon{width:43px;height:43px}.next-steps a>span:last-child{font-size:23px;color:var(--muted)}
.home-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.resource-panel{padding:26px;min-width:0}.resource-panel h2{font-size:29px;margin-bottom:9px}.resource-panel>p:not(.eyebrow){font-size:14px;line-height:1.7;color:var(--muted);margin-bottom:18px}.office-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:9px}.office-shortcuts a{display:flex;align-items:center;gap:9px;color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:10px;font-size:12px;min-height:44px}.office-shortcuts svg{width:18px;height:18px}.office-shortcuts b,.resource-row>b{margin-left:auto;font-weight:500;color:var(--muted)}.resource-row{display:flex;gap:12px;color:var(--ink);align-items:center;border-top:1px solid var(--line);padding:15px 0}.resource-row>div{min-width:0;flex:1}.resource-row h3{font-size:15px}.resource-row p{font-size:12px;line-height:1.6;color:var(--muted);margin-top:4px}.resource-row .feature-icon{width:40px;height:40px;border-radius:12px}.resource-row .feature-icon svg{width:22px;height:22px}
body.focused-practice #main .home-hero,body.focused-practice .home-support{display:none!important}body.focused-practice #main .home-layout{display:block;padding-top:25px}.focused-practice .typing-workspace{max-width:1100px;margin-inline:auto}.focused-practice .typing-surface .passage{height:min(280px,34dvh)}.focused-practice .workspace-heading{display:none}.focused-practice .tabs{display:none}.focused-practice .practice-bar{padding-top:22px}.focused-practice .test-setup{margin:0}.focused-practice .test-setup:not([open]){display:none}
/* Shared secondary pages: aligned rows, quiet artwork, readable controls. */
.learning-tabs{display:flex;flex-wrap:wrap;gap:8px;border-bottom:1px solid var(--line);margin:0 0 22px;padding:0 0 10px}.learning-tabs a{display:flex;align-items:center;gap:9px;font-size:14px;color:var(--muted);border:0;padding:10px 16px;border-radius:8px}.learning-tabs [aria-current=page]{color:var(--ink);background:var(--tint);font-weight:750}.learning-tabs svg{width:20px;height:20px}
.library-toolbar{display:flex;gap:18px;padding:20px;align-items:flex-end}.library-toolbar label{font-size:12px;min-width:145px;flex:1}.library-toolbar select,.library-toolbar input{font-size:14px;width:100%;background:var(--surface)}.library-toolbar .library-search{flex:1.5}.library-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-top:15px}.library-card{display:grid;grid-template-columns:135px minmax(0,1fr) auto;gap:24px;align-items:center;padding:20px;min-width:0}.library-content h2{font-size:24px;line-height:1.4;margin:5px 0 8px}.library-content>.row{justify-content:flex-start;gap:10px}.library-tag{font-size:10px;padding:3px 7px;letter-spacing:1px}.library-content .passage-excerpt{font-size:14px;line-height:1.8;margin:0 0 9px}.library-content .passage-meta{display:flex;align-items:center;gap:14px;font-size:12px;color:var(--muted)}.library-content .passage-meta svg{width:15px;height:15px;margin-right:4px}.library-actions{display:flex;flex-direction:column;gap:10px;align-items:stretch;min-width:170px;font-size:13px}.library-actions .button{font-size:13px;white-space:normal}.library-actions>a:not(.button){text-align:center}.passage-art{position:relative;height:110px;width:135px;border-radius:9px;overflow:hidden;background:linear-gradient(#cae5d4,#f3e7b9);align-self:center}.passage-art::before,.passage-art::after{content:'';position:absolute;inset:0;clip-path:polygon(0 100%,0 80%,28% 34%,55% 75%,80% 26%,100% 58%,100% 100%);background:#769b83}.passage-art::after{transform:translate(25px,22px);background:#3e6c5c}.passage-art span{position:absolute;right:21px;top:18px;width:29px;height:29px;background:#fff3c3;border-radius:50%}.passage-art.art-1{background:linear-gradient(#e6eac9,#c8dfbd)}.passage-art.art-1::before{clip-path:ellipse(15% 42% at 37% 61%);transform:rotate(-35deg);background:#5b8b60}.passage-art.art-1::after{clip-path:ellipse(14% 34% at 61% 38%);transform:rotate(40deg);background:#91b276}.passage-art.art-2{background:linear-gradient(#efe2d2,#e7ece9)}.passage-art.art-2::before{background:#a0b6b4}.passage-art.art-2::after{background:#506f70}.custom-panel{padding:30px;margin-top:26px}.custom-panel h2{font-size:30px}.custom-panel>p{font-size:15px;line-height:1.8;max-width:800px}.custom-panel label{font-size:14px}.custom-panel textarea{font-size:16px;background:var(--surface);min-height:175px}.custom-panel .file-control{font-size:14px}.custom-panel .row{justify-content:space-between}.custom-panel .primary{min-width:230px}.learn-overview{padding:22px;gap:25px}.learn-overview>label{font-size:13px}.learn-overview strong{font-size:28px}.learn-overview span{font-size:13px}.lessons-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-top:20px}.lesson-card{display:grid;grid-template-columns:55px minmax(0,1fr) auto;align-items:center;gap:22px;padding:23px}.lesson-index{display:grid;place-items:center;background:var(--tint);border-radius:50%;height:49px;width:49px;font:650 19px var(--ui-font);color:var(--accent)}.lesson-info h2{font-size:23px;line-height:1.4;margin-bottom:7px}.lesson-info>p{font-size:14px;line-height:1.8;color:var(--muted)}.lesson-info .eyebrow{font-size:10px;letter-spacing:1px;margin-bottom:4px}.lesson-actions{display:flex;flex-direction:column;gap:10px;align-items:flex-end}.lesson-actions .button{font-size:13px;white-space:normal}.lesson-badge{font-size:11px;padding:3px 8px}.tips-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.tip-card{padding:26px;gap:16px}.tip-card h2{font-size:24px}.tip-card>p{font-size:15px}.tip-card .eyebrow{font-size:11px}.tip-card .text-link{font-size:14px}.challenge-grid{gap:22px}.challenge-grid h2{font-size:29px}.challenge-grid p{font-size:15px}.challenge-grid label{font-size:13px}.exercise-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.exercise-card{display:flex;padding:26px;gap:18px;align-items:flex-start}.exercise-card h3{font-size:24px;margin:0 0 8px}.exercise-card p{font-size:14px;line-height:1.8}.exercise-card .eyebrow{font-size:10px;margin:0 0 5px}.exercise-card .exercise-icon{display:grid;place-items:center;border-radius:12px;background:var(--tint);width:43px;height:43px;flex-shrink:0}.exercise-icon svg{width:24px;height:24px}.exercise-link{display:flex;align-items:center;gap:9px;font-size:13px;margin-top:16px;color:var(--accent)}
/* Multi-language practice retains its native textarea and IME path. */
.studio-workspace{padding:25px;border-radius:15px}.studio-subnav{border-bottom:1px solid var(--line);padding-bottom:17px;gap:10px;display:flex}.studio-subnav a{font-size:14px;padding:10px 15px}.studio-setup{gap:16px;align-items:end;grid-template-columns:repeat(5,minmax(0,1fr)) auto}.studio-setup label{font-size:12px}.studio-setup select{font-size:14px;background:var(--surface)}.studio-setup-details summary{font-size:14px}.studio-input-help{font-size:13px;line-height:1.8;padding:12px 0;margin-bottom:10px}.studio-practice-bar{border:1px solid var(--line);border-bottom:0;border-radius:11px 11px 0 0;padding:18px 23px 8px;margin:0;gap:15px}.studio-practice-bar>span{font-size:13px}.studio-practice-bar>strong{font-size:35px;letter-spacing:-1px}.studio-practice-bar button{font-size:13px;min-height:40px;padding:8px 12px}.studio-target{font-family:var(--reading-font);font-size:30px;line-height:1.7;letter-spacing:0;padding:25px 23px;height:260px;border:1px solid var(--line);border-top:0;border-radius:0 0 11px 11px;background:var(--surface);color:var(--passage-muted)}.studio-target[lang=hi],.studio-target[lang=mr]{font-family:'Noto Sans Devanagari',sans-serif;line-height:2}.typed-ok{color:var(--accent);background:transparent}.typed-wrong{color:var(--error);background:transparent;text-decoration:underline;text-underline-offset:5px}.typing-current{border-left:2px solid var(--accent);margin-left:-2px;background:transparent}.studio-entry{margin:17px 0}.studio-entry label{font-size:14px}.studio-entry label span{font-size:12px}.studio-entry textarea{background:var(--surface);font:22px/1.5 var(--reading-font);min-height:83px;max-height:140px;margin-top:7px;padding:14px;border-color:var(--accent)}.studio-practice-actions{margin:17px 0;gap:10px}.studio-practice-actions button{font-size:14px}.studio-practice-actions .primary{min-width:230px}.studio-progress-line{font-size:12px;margin:20px 0 12px}.studio-progress-line span{font-size:12px}.studio-workspace #studio-feedback{font-size:13px}.practice-in-session .studio-head{padding:22px 0}.practice-in-session .studio-head h1{font-size:31px}.practice-in-session .studio-head .design-keycaps{display:none}.practice-in-session .studio-input-help{font-size:12px}.keyboard-guide kbd{font-size:15px;background:var(--surface);border-color:var(--line);box-shadow:0 3px 0 var(--line)}.keyboard-guide .guide-active{background:var(--tint);color:var(--ink)}.lesson-note{font-size:14px}.passage-read>div{font-size:18px;line-height:2}
/* Office: source and entry align one field at a time. */
.office-grid{display:block;margin-top:20px}.office-grid>.source{display:none}.office-grid .office-entry{padding:28px}.office-entry-heading{padding:0 0 22px;margin-bottom:14px;border-bottom:1px solid var(--line)}.office-entry-heading h2{font-size:28px}.office-entry-heading .timer{font-size:30px}.office-entry fieldset{margin:0 0 25px;padding:0 0 25px;border-bottom:1px solid var(--line)}.office-entry legend{font-size:13px;margin-bottom:15px;color:var(--muted)}.office-entry .mobile-source{display:none}.office-entry .entry-fields{grid-template-columns:1fr;gap:0}.office-entry .entry-fields label{display:grid;grid-template-columns:175px minmax(200px,1fr) minmax(220px,1fr);align-items:center;gap:12px 25px;font-size:14px;padding:12px 5px;border-bottom:1px solid var(--line)}.office-entry .entry-fields label:last-child{border:0}.office-entry .mobile-field-source{display:block;font-size:0;line-height:1.5;margin:0;color:var(--muted);grid-column:2;grid-row:1}.office-entry .mobile-field-source b{font-size:20px;color:var(--ink);font-weight:650;display:block;overflow-wrap:anywhere}.office-entry .entry-fields input{grid-column:3;grid-row:1;margin:0;font-size:16px;min-height:47px;width:100%}.office-entry .entry-fields .field-hint{grid-column:3;margin:0;font-size:12px}.office-entry .numeric-source{font-size:20px}.office-entry .entry-fields .field-hint:empty{display:none}.office-entry #office-form>.row{margin-top:20px}.office-entry #office-form>.row button{font-size:15px}.office-rules{font-size:14px;margin:0 0 18px}.office-rules summary{font-size:13px}.office-rules p{padding:12px 0}.form-row label{font-size:14px}.form-row select{font-size:14px}.office-family-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px}.office-family-tabs a{font-size:13px;display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:var(--surface);border-radius:9px;padding:11px 15px;color:var(--ink)}.office-family-tabs a[aria-current=page]{background:var(--tint);border-color:var(--accent)}
/* Games keep the engine and scoring while matching the approved playfields. */
.game-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:26px}.game-head h1{font-size:50px;margin:7px 0}.game-head p{font-size:18px}.game-head a.small{font-size:12px}.game-controls{display:flex;max-width:710px;flex-wrap:wrap;justify-content:flex-end;gap:10px}.game-controls button,.game-controls select{font-size:13px;min-height:44px;padding:10px 13px;border:1px solid var(--line);background:var(--surface)}.game-controls #game-keyboard{max-width:108px}.game-controls svg{width:17px;height:17px}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:22px;align-items:start}.game-main{min-width:0}.game-score-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:19px 25px;border:1px solid var(--line);background:var(--surface);border-radius:12px;margin:0 0 15px}.game-score-strip>div{border-right:1px solid var(--line);padding:0 20px;min-width:0}.game-score-strip>div:first-child{padding-left:0}.game-score-strip>div:last-child{border:0}.game-score-strip span{display:block;font-size:13px;color:var(--muted);margin-bottom:3px}.game-score-strip strong{font-size:29px;line-height:1.3;font-weight:800;letter-spacing:-.7px;white-space:nowrap;font-variant-numeric:tabular-nums}.game-score-strip #game-time{color:var(--accent)}.word-playfield{position:relative;height:440px;isolation:isolate;overflow:hidden;background:linear-gradient(180deg,var(--surface),#d1e8dc);border:1px solid var(--line);border-radius:12px}.word-playfield::before,.word-playfield::after{content:'';position:absolute;z-index:-1;inset:0;pointer-events:none}.word-playfield::before{background:repeating-linear-gradient(90deg,transparent 0,transparent calc(16.66% - 1px),#619c7f17 calc(16.66% - 1px),#619c7f17 16.66%),radial-gradient(ellipse 250px 120px at 10% 80%,#9bcab366,transparent),radial-gradient(ellipse 500px 180px at 80% 80%,#9bcab377,transparent)}.word-playfield::after{inset:50% -10% -30%;border-radius:45% 65% 0 0;background:#87bba44d;transform:rotate(-9deg);box-shadow:0 -25px 0 25px #b1d7c133}.dark .word-playfield{background:linear-gradient(#14271f,#234a39)}.dark .word-playfield::after{background:#60977f30;box-shadow:0 -25px 0 25px #7aab8b10}.field-note{font-size:11px;left:19px;top:13px;color:var(--muted);max-width:calc(100% - 38px)}.falling-word,.queued-word{font-family:var(--ui-font);background:var(--surface);color:var(--ink);font-size:22px;line-height:1.4;border:1px solid var(--line);border-radius:10px;padding:11px 25px;box-shadow:0 7px 17px #143b2820;max-width:80%;overflow-wrap:anywhere}.falling-word{z-index:3;left:50%;border:2px solid var(--accent);box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 8%,transparent),0 6px 20px #0a8f5f22;font-weight:750;will-change:top}.falling-word::before{content:'CURRENT WORD';position:absolute;white-space:nowrap;top:-27px;left:50%;transform:translateX(-50%);font:700 9px var(--ui-font);letter-spacing:.6px;background:var(--tint);color:var(--ink);border-radius:7px;padding:4px 10px}.falling-word[lang=hi],.falling-word[lang=mr],.queued-word[lang=hi],.queued-word[lang=mr]{font-family:'Noto Sans Devanagari',sans-serif}.queued-word{font-size:19px;padding:9px 20px;opacity:.85}.queue-one{left:23%;top:27%}.queue-two{left:77%;top:42%}.word-floor{height:16px;border-top:1px dashed var(--accent);background:#64a78b5c;bottom:0}.static-playfield .falling-word{top:48%!important}.game-overlay{padding:30px;background:color-mix(in srgb,var(--surface) 89%,transparent);backdrop-filter:blur(3px)}.game-overlay strong{font-size:35px}.game-overlay p{font-size:15px;line-height:1.8;max-width:360px}.game-overlay button{font-size:15px}.game-entry{padding:19px 23px;margin-top:16px;border-radius:12px}.game-entry label{font-size:14px}.game-entry #game-flash{font-size:12px}.game-entry-row{display:flex;flex-wrap:nowrap;gap:12px}.game-entry input{font:30px/1.3 var(--reading-font);border:1px solid var(--accent);min-height:59px;padding:10px 16px;background:var(--surface);color:var(--ink)}.game-entry input:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}.game-entry-row .primary{font-size:15px;min-width:180px;min-height:59px}.game-entry p{font-size:12px;margin:9px 0}.game-entry #game-end{font-size:12px;min-height:36px;padding:6px 10px}.game-entry #game-status{font-size:12px}.game-sidebar{padding-top:0;gap:18px}.game-rhythm{padding:25px;min-height:360px}.game-rhythm .eyebrow{font-size:12px;color:var(--ink);letter-spacing:.2px;text-transform:none;font-weight:750}.game-rhythm h2{font-size:30px;margin:14px 0 15px}.game-rhythm>strong{font-size:25px;letter-spacing:-.7px;margin:14px 0 10px}.game-rhythm p:not(.eyebrow){font-size:13px;line-height:1.9}.game-rhythm h3{font-size:16px}.game-rhythm progress{height:9px;margin:0 0 15px;width:100%}.game-rhythm hr{margin:24px 0}.game-last{padding:24px}.game-last .eyebrow{font-size:12px;text-transform:none;letter-spacing:0;color:var(--ink)}.game-last strong{font-size:15px;color:var(--accent);line-height:1.8;margin-top:11px}.game-category{width:max-content;max-width:100%;margin-bottom:18px;padding:4px;border-radius:11px}.game-category button{font-size:14px;min-width:140px;min-height:44px;padding:10px 20px;border-radius:8px}.game-category .selected{background:#087f75;color:white}.dark .game-category .selected{background:#a7e0c5;color:#102d21}.number-task{padding:25px}.task-heading{font-size:12px;letter-spacing:1.3px;padding-bottom:19px}.number-task h2{font-size:22px;margin:25px 0 17px}.number-target{background:var(--soft);padding:20px 10px;border-radius:10px}.number-target>strong{font:800 clamp(50px,7vw,96px)/1.3 'JetBrains Mono',monospace;letter-spacing:-3px;font-variant-numeric:tabular-nums}.number-target>p{font-size:14px;margin-top:10px}.number-task>#game-start{font-size:15px;margin:18px auto 0}.number-game .game-rhythm h2{font-size:70px;line-height:1;margin:20px 0}.number-game .game-rhythm{min-height:300px}.number-game .game-rhythm>strong{font-size:16px;font-weight:500;color:var(--muted)}.number-game .game-rhythm h3,.number-game .game-rhythm hr,.number-game .game-rhythm>p.small{display:none}.number-key-hints{display:flex;align-items:center;justify-content:center;gap:10px;padding:20px;margin-top:20px;border-radius:12px}.number-key-hints kbd{max-width:54px;height:49px;font:600 18px 'JetBrains Mono',monospace;box-shadow:0 3px 0 var(--line);border-color:var(--line);background:var(--surface);border-radius:8px;display:grid;place-items:center;flex:1}.number-key-hints>span{font-size:13px;margin-left:15px;padding-left:22px;border-left:1px solid var(--line);color:var(--muted)}.game-footer{font-size:13px;margin:22px 0}.game-footer .check-label,.game-footer>span{font-size:12px}.game-footer details{font-size:13px;margin:0}.games-gallery{gap:24px}.game-preview>div:last-child{padding:30px}.game-preview h2{font-size:33px}.game-preview p{font-size:15px}.game-preview .eyebrow{font-size:11px}.preview-world,.preview-number{height:240px}.preview-world{background:linear-gradient(155deg,var(--tint),var(--soft));border-bottom:1px solid var(--line)}.preview-world span{font-size:20px}.preview-number strong{font-size:75px}.preview-number small{font-size:14px}.preview-number>span{font-size:15px}
/* Progress uses real, combined history with distinct scoring units. */
.progress-tabs{display:flex;gap:6px;border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:4px;margin:0 0 21px;max-width:max-content}.progress-tabs button{border:0;min-width:135px;min-height:41px;font-size:14px;background:transparent;padding:10px 15px;color:var(--muted)}.progress-tabs [aria-selected=true]{background:var(--tint);color:var(--ink);font-weight:750}.progress-summary{display:flex;align-items:center;gap:0;padding:23px 28px;border:1px solid var(--line);border-radius:12px;background:var(--surface);margin-bottom:20px}.progress-summary>div{display:flex;align-items:center;gap:14px;flex:1;border-right:1px solid var(--line);padding:0 25px}.progress-summary>div:first-child{padding-left:0}.progress-summary>div:last-child{border:0}.progress-summary .feature-icon{width:44px;height:44px}.progress-summary strong{display:block;font-size:25px;line-height:1.3}.progress-summary span:not(.feature-icon){font-size:13px;color:var(--muted)}.progress-overview-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:22px;align-items:start}.progress-chart{grid-column:1/-1;padding:26px}.progress-chart h2{font-size:20px}.progress-chart .row{margin-bottom:15px}.progress-chart .history-line{height:145px;gap:16px;padding-top:18px;margin-top:0;background:repeating-linear-gradient(to top,transparent 0,transparent 35px,var(--line) 36px,transparent 37px);border-bottom:1px solid var(--line)}.progress-chart .bar{background:linear-gradient(160deg,#b6e1d3,#2d9c87);border-radius:5px 5px 0 0;max-width:90px}.progress-chart .bar.zero{background:var(--line)}.progress-chart .bar-labels{margin-top:10px;font-size:12px}.progress-chart .chart-copy{font-size:13px;color:var(--muted)}.progress-recent{padding:26px}.progress-recent h2{font-size:22px}.progress-recent table{font-size:13px}.progress-recent td,.progress-recent th{padding:13px 12px}.progress-recent td small{display:block;color:var(--muted);font-size:11px}.progress-aside{display:grid;gap:20px}.progress-aside .studio-dashboard{display:grid;grid-template-columns:1fr;gap:20px}.progress-aside .panel{padding:23px}.progress-aside h3{font-size:22px;line-height:1.4}.progress-aside label,.studio-dashboard label{font-size:13px}.progress-aside .achievement-list{grid-template-columns:1fr 1fr}.achievement-list span{font-size:12px}.progress-aside .achievement-list span{font-size:11px}.progress-backup-strip{display:flex;align-items:center;gap:20px;padding:20px 24px;margin:22px 0;background:var(--surface);border:1px solid var(--line);border-radius:12px}.progress-backup-strip>div{flex:1}.progress-backup-strip h2{font-size:17px}.progress-backup-strip p{font-size:12px;color:var(--muted);margin-top:3px}.progress-backup-strip button{font-size:13px}.progress-tab-panel>.card,.progress-tab-panel>.studio-dashboard{margin-top:20px}.progress-tab-panel>.card:first-child{margin-top:0}.studio-progress td,.studio-progress th{font-size:13px}.studio-progress td small{font-size:12px}.studio-progress .row>label{font-size:13px}.studio-progress .panel h3{font-size:23px}.studio-best-grid{gap:16px}.best-card{border:1px solid var(--line);padding:23px;border-radius:12px;background:var(--surface);display:block}.best-card strong{font-size:30px;color:var(--ink);line-height:1.4;display:block;margin:12px 0}.best-card small,.best-card .small{font-size:12px}.weak-keys strong{font-size:25px}.weak-keys span{font-size:12px}.studio-dashboard{gap:20px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:12px;gap:0;background:var(--surface);margin:22px 0;overflow:hidden}.stat{border:0;border-right:1px solid var(--line);border-radius:0;background:transparent;padding:23px;text-align:left}.stat:last-child{border:0}.stat strong{font-size:35px;line-height:1.25;letter-spacing:-1px}.stat span{font-size:13px;display:block;margin-top:8px}.studio-result-card .stat strong{font-size:35px}.studio-result-card h2{font-size:31px}.studio-result-card{padding:30px}.badge{font-size:12px;padding:5px 12px}.result-actions{gap:12px;margin:22px 0}.result-actions button,.result-actions a{font-size:14px}.results-diff td{font-size:14px}.scroll{border-color:var(--line)}th{font-size:12px;background:var(--soft)}table{font-size:14px}td,th{border-color:var(--line);padding:13px 14px}.article{padding:38px 42px;max-width:850px}.article h1{font-size:37px}.article p,.article li{font-size:16px;line-height:1.9}.guide-tile h2{font-size:26px}.guide-tile p{font-size:15px}.guide-tile .text-link{font-size:14px}
/* Account screens: focused forms, matching the approved compact preview. */
.account-dialog{width:min(550px,calc(100vw - 36px));max-width:550px;border-radius:17px;max-height:92dvh;background:var(--surface);box-shadow:0 22px 100px #0f302a30}.account-shell{display:block;min-height:0}.account-story{display:none}.account-form-side{padding:30px 36px;position:relative}.account-brand{display:flex;align-items:center;gap:9px;font-size:20px;margin-bottom:26px}.account-brand img{border-radius:8px}.account-close{width:36px;min-height:36px;top:14px;right:13px}.account-form-heading .eyebrow{display:none}.account-form-heading h2{font-size:33px;letter-spacing:-1.3px;margin:0 0 8px}.account-form-heading>p:last-child:not(.eyebrow){font-size:14px;line-height:1.75;margin:0}.account-tabs{background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:0;gap:0;margin:23px 0}.account-tabs button{background:transparent;font-size:14px;min-height:43px;border-radius:0;padding:10px}.account-tabs [aria-selected=true]{position:relative;background:transparent;box-shadow:none;color:var(--ink);font-weight:750}.account-tabs [aria-selected=true]::after{content:'';position:absolute;left:0;right:0;bottom:-1px;background:var(--accent);height:3px;border-radius:3px}.account-google{min-height:47px;font-size:14px}.account-google svg{stroke:none;width:20px;height:20px}.account-or{font-size:12px;margin:22px 0}.account-availability{font-size:13px;line-height:1.8;padding:12px 14px;margin:17px 0}#account-form label:not(.account-check),#account-profile-form label{font-size:13px;color:var(--ink);font-weight:650;margin:16px 0 6px}#account-form input:not([type=checkbox]),#account-profile-form input{font-size:15px;min-height:47px;background:var(--surface);border-color:var(--control)}.account-password-wrap button{font-size:12px;min-height:43px;height:43px;padding-inline:12px}.account-check{font-size:12px;line-height:1.8;gap:10px;margin-top:18px}.account-check input{width:18px;height:18px;min-height:18px;margin:2px 0 0}.account-shared-note{font-size:11px;margin-left:28px}.account-text-link{font-size:13px;min-height:40px}.account-submit{font-size:15px;min-height:48px;margin-top:15px}.account-free-note{font-size:12px;line-height:1.8;margin-top:18px}.account-guest-action{font-size:14px;min-height:47px;border:1px solid var(--line);border-radius:9px;margin-top:13px;background:transparent}.account-feedback p{font-size:13px;line-height:1.8;padding:12px 14px}.account-profile{gap:16px;margin:20px 0}.account-profile h3{font-size:22px}.account-profile p{font-size:14px}.account-verification{font-size:11px;padding:4px 9px}.account-large-avatar{font-size:26px;width:58px;height:58px;border-radius:50%}.account-local-note{font-size:13px;line-height:1.9;margin:20px 0}.account-verification-actions{gap:9px}.account-verification-actions button{font-size:12px;min-height:44px}.account-progress-link{font-size:14px}.account-page{max-width:750px;padding:32px}.account-page p{font-size:14px}.account-page-guest h2{font-size:27px}.account-page .row>*{font-size:14px}#account-profile-form .primary{font-size:14px;min-height:45px}
/* Right-hand comfort drawer; appearance changes never alter practice scores. */
.studio-settings{position:fixed;inset:0 0 0 auto;margin:12px 12px 12px auto;width:min(460px,calc(100vw - 24px));max-height:calc(100dvh - 24px);height:max-content;max-width:460px;border-radius:16px;padding:28px;box-shadow:0 20px 80px #102f2b30}.studio-settings::backdrop{background:#0c201d55;backdrop-filter:blur(3px)}.studio-settings h2{font-size:26px}.studio-settings .settings-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding-bottom:20px;border-bottom:1px solid var(--line)}.studio-settings label{font-size:13px;color:var(--ink);margin-top:20px}.studio-settings p{font-size:13px;line-height:1.8}.studio-settings .appearance-choices{display:flex;gap:10px;margin-top:9px}.appearance-choices button{flex:1;font-size:14px}.appearance-choices [aria-pressed=true]{border-color:var(--accent);background:var(--tint)}.settings-size{display:flex;gap:7px}.settings-size button{flex:1}.studio-settings .check-label{font-size:14px}.studio-settings select{font-size:14px}.settings-privacy{display:flex;align-items:flex-start;gap:12px;background:var(--soft);padding:15px;border:1px solid var(--line);border-radius:10px;margin-top:22px}.settings-privacy p{font-size:12px}.settings-privacy svg{margin-top:3px}.toast{font-size:14px;bottom:25px;border-radius:10px;padding:13px 20px;pointer-events:none}.download-fallback{font-size:13px}.dialog-small{padding:27px}.dialog-small h2{font-size:25px}.dialog-small p{font-size:15px}.dialog-small .row{margin-top:20px}#certificate{padding:28px;border-radius:17px;max-width:1000px}#certificate h2{font-size:28px}#certificate label{font-size:14px}#certificate .row button{font-size:14px}
@media(min-width:1500px){.studio-page{width:min(1320px,calc(100% - 80px))}}
@media(max-width:1199px){.header-inner{gap:20px}.header-inner nav{gap:20px}.header-actions{gap:8px}.header-actions .header-settings{display:none}.brand{font-size:23px}.guest-link{padding-left:8px}.workbench-tools{margin-left:0}.workspace-top{gap:12px}.context select{max-width:210px}.durations button{min-width:53px;padding-inline:10px}.home-resource-grid{gap:16px}.resource-panel{padding:22px}.growth-art{right:20px;opacity:.6}.footer-device{display:none}.studio-setup{grid-template-columns:repeat(3,minmax(0,1fr))}.game-layout{grid-template-columns:minmax(0,1fr) 250px}.game-controls{max-width:570px}.game-controls #game-keyboard{max-width:96px}.game-rhythm{padding:22px}.game-head h1{font-size:44px}.tips-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.exercise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.office-entry .entry-fields label{grid-template-columns:145px minmax(150px,1fr) minmax(180px,1fr);gap:10px 17px}.office-entry .mobile-field-source b{font-size:18px}.office-entry .entry-fields input{font-size:15px}.progress-overview-layout{grid-template-columns:minmax(0,1fr) 280px}}
@media(max-width:980px){.header-inner{gap:15px;min-height:80px}.header-inner nav{gap:16px;width:auto;order:1;justify-content:center}.header-inner nav a{font-size:13px;padding:27px 0}.header-actions{gap:7px}.guest-link{display:none}.brand{font-size:22px}.account-control{font-size:13px;padding:9px 13px}.design-keycaps{width:285px;gap:12px;transform:scale(.85);transform-origin:right center;margin-left:-15px}#main .home-hero{padding-inline:0;gap:15px}#main .home-hero h1{font-size:43px}#main .hero-description{font-size:18px}.hero-utility{font-size:13px}.hero-utility span{padding:0 4px}.home-routine-grid{grid-template-columns:1fr 1fr;gap:18px}.daily-spotlight{padding:25px}.daily-copy{max-width:100%}.daily-copy h2{font-size:30px}.growth-art{display:none}.next-steps{padding:24px 22px 10px}.next-steps>a{gap:13px;padding:20px 0}.next-steps h3{font-size:16px}.next-steps p:not(.eyebrow){font-size:13px}.home-resource-grid{grid-template-columns:1fr 1fr}.resource-panel:last-child{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:12px 25px}.resource-panel:last-child>.eyebrow,.resource-panel:last-child>h2,.resource-panel:last-child>p{grid-column:1/-1}.resource-panel:last-child>p{margin-bottom:0}.resource-panel:last-child .resource-row{align-items:flex-start}.library-card{grid-template-columns:105px minmax(0,1fr);gap:17px}.passage-art{width:105px;height:110px}.library-actions{grid-column:2;flex-direction:row;align-items:center;flex-wrap:wrap;min-width:0}.library-content h2{font-size:22px}.game-head{align-items:flex-start;flex-direction:column;gap:12px}.game-controls{justify-content:flex-start;max-width:none}.game-layout{grid-template-columns:minmax(0,1fr) 230px;gap:17px}.game-score-strip{padding:18px}.game-score-strip>div{padding-inline:12px}.game-score-strip strong{font-size:26px}.game-rhythm>strong{font-size:22px}.game-entry-row .primary{min-width:155px;font-size:13px}.game-entry input{font-size:26px}.progress-overview-layout{grid-template-columns:1fr}.progress-aside .studio-dashboard{grid-template-columns:1fr 1fr}.progress-summary{padding:20px}.progress-summary>div{padding-inline:17px}.progress-summary strong{font-size:23px}.studio-settings{padding:25px}.footer-inner{flex-wrap:wrap;gap:20px}.footer-inner .links{margin-left:auto}.office-entry .entry-fields label{grid-template-columns:130px minmax(120px,1fr) minmax(160px,1fr)}}
@media(max-width:760px){.container,.studio-page{width:calc(100% - 36px)}.header-inner{min-height:75px;gap:12px;padding:0}.header-inner nav{display:none;position:absolute;left:18px;right:18px;top:calc(100% + 8px);background:var(--surface);border:1px solid var(--line);box-shadow:0 15px 40px #102f2b17;border-radius:12px;padding:10px;flex-direction:column;gap:0;align-items:stretch;z-index:30}.header-inner nav a{font-size:15px;padding:13px 15px;border-radius:8px}.header-inner nav a.active{background:var(--tint)}.header-inner nav a.active::after{display:none}.nav-open .header-inner nav{display:flex}.header-actions{margin-left:auto}.header-actions .nav-toggle{display:inline-flex!important}.header-actions .header-settings{display:none}.mobile-settings{display:inline-flex!important;font-size:14px;justify-content:flex-start;margin-top:7px}.account-control>svg{display:block;width:21px;height:21px}.account-control>span:not(.account-avatar){display:none}.account-control{padding:8px;width:39px;min-height:39px;border-radius:50%;background:var(--soft);border:1px solid var(--line);color:var(--ink)}.account-control:has(.account-avatar)>svg{display:none}.header-actions .theme{width:37px;min-height:39px;padding:8px}.brand{font-size:22px}.brand-mark{width:34px;height:34px}.page-head,.studio-head{padding:30px 0 24px;gap:20px}.page-head h1,.studio-head h1{font-size:36px;letter-spacing:-1.4px}.page-head p,.studio-head p:not(.eyebrow){font-size:15px;margin-top:9px}.page-head .design-keycaps,.studio-head>.design-keycaps{display:none}#main .home-hero{padding:30px 0 28px;gap:10px}#main .home-hero h1{font-size:38px;letter-spacing:-1.7px}#main .hero-description{font-size:16px;margin:12px 0}.home-hero .design-keycaps{width:200px;transform:scale(.65);transform-origin:right center;margin-left:-75px}.hero-utility{font-size:12px}.hero-utility-divider{display:none}.hero-utility{max-width:370px}.discovery-strip{padding:22px 0}.discovery-strip>a{padding:0 15px;gap:12px;align-items:flex-start}.discovery-strip .feature-icon{width:38px;height:38px;border-radius:11px}.discovery-strip .feature-icon svg{width:22px;height:22px}.discovery-strip h2{font-size:14px}.discovery-strip p{font-size:12px;line-height:1.6}.discovery-strip>a>svg{display:none}.home-routine-grid{grid-template-columns:1fr}.daily-spotlight{padding:28px}.daily-copy{max-width:75%}.growth-art{display:flex;right:32px;opacity:.65}.next-steps{padding:26px}.next-steps>a{padding:18px 0}.next-steps h3{font-size:17px}.next-steps p:not(.eyebrow){font-size:14px}.library-toolbar{gap:13px;flex-wrap:wrap}.library-toolbar label{min-width:130px}.library-toolbar .library-search{flex-basis:100%}.library-toolbar>a{width:100%}.lesson-card{grid-template-columns:42px minmax(0,1fr);gap:15px;padding:21px}.lesson-index{width:42px;height:42px}.lesson-actions{grid-column:2;flex-direction:row;align-items:center;flex-wrap:wrap}.lesson-info h2{font-size:22px}.game-layout{grid-template-columns:1fr;gap:16px}.game-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:15px}.game-rhythm{min-height:0!important;padding:20px}.game-rhythm h2{font-size:24px;margin:10px 0}.game-rhythm>strong{font-size:20px}.game-rhythm hr,.game-rhythm>h3,.game-rhythm>p.small{display:none}.game-rhythm>p:not(.eyebrow){font-size:12px}.game-last{padding:20px}.word-playfield{height:370px}.game-head h1{font-size:40px}.game-head p{font-size:16px}.game-controls{gap:8px;display:flex;flex-wrap:wrap;width:100%;margin-top:0}.game-controls select,.game-controls button{font-size:12px;padding:9px 12px;min-height:43px}.number-game .game-rhythm h2{font-size:45px}.number-game .game-rhythm progress{margin-bottom:7px}.number-key-hints{gap:7px;padding:15px}.number-key-hints kbd{height:40px;font-size:15px}.number-key-hints>span{display:none}.office-entry .entry-fields label{grid-template-columns:1fr 1fr;column-gap:20px;font-size:13px;padding:14px 0}.office-entry .mobile-field-source{grid-column:1;grid-row:2}.office-entry .mobile-field-source b{font-size:18px}.office-entry .entry-fields input{grid-column:2;grid-row:2}.office-entry .field-hint{grid-column:2!important}.office-entry .entry-fields label:first-line{font-weight:650}.office-entry-heading h2{font-size:25px}.office-entry legend{font-size:13px}.form-row{gap:14px}.exercise-grid{gap:15px}.exercise-card{padding:23px;gap:13px}.exercise-card h3{font-size:23px}.tips-grid{gap:15px}.tip-card{padding:23px}.progress-summary{padding:18px}.progress-summary>div{gap:10px;padding-inline:14px}.progress-summary .feature-icon{display:none}.progress-summary strong{font-size:22px}.progress-summary span:not(.feature-icon){font-size:12px}.progress-tabs{max-width:100%;width:100%;flex-wrap:wrap}.progress-tabs button{min-width:0;flex:1;white-space:nowrap;font-size:12px;padding:10px}.progress-recent{padding:20px}.progress-backup-strip{padding:20px;flex-wrap:wrap;gap:15px}.progress-backup-strip>div{flex-basis:100%}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{padding:20px;border-bottom:1px solid var(--line)}.stat:nth-child(2){border-right:0}.stat:nth-child(3){border-bottom:0}.stat strong,.studio-result-card .stat strong{font-size:31px}.stat span{font-size:12px}.result-actions>*{flex:1}.footer-inner{align-items:flex-start}.footer-support{border-left:0;padding-left:0}.footer-inner .links{margin-left:0;justify-content:flex-start;gap:20px}.studio-practice-bar>strong{font-size:30px}.studio-practice-bar>span{font-size:12px;max-width:180px}.studio-practice-bar .row{gap:5px}.studio-practice-bar button{font-size:12px;padding:7px 9px}.studio-setup{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-target{font-size:26px;height:235px}.practice-in-session .studio-head h1{font-size:28px}.challenge-grid{grid-template-columns:1fr}.studio-best-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.container,.studio-page{width:calc(100% - 28px)}#main{padding-bottom:10px}.header-inner{min-height:68px;padding:0;flex-wrap:nowrap}.brand{font-size:20px;gap:8px}.brand-mark{width:31px;height:31px}.header-actions{gap:4px}.header-actions .theme{width:33px;min-height:37px}.account-control{width:35px;min-height:36px;padding:6px}.header-actions .theme svg,.account-control>svg{width:19px;height:19px}.account-avatar{height:23px;width:23px;font-size:11px}.header-inner nav{left:14px;right:14px}.page-head,.studio-head{padding:26px 0 23px}.page-head h1,.studio-head h1{font-size:32px;line-height:1.18;letter-spacing:-1.3px}.page-head p,.studio-head p:not(.eyebrow){font-size:14px;line-height:1.8}.panel{padding:21px}h2{font-size:26px}.small,.rule-note{font-size:12px}.eyebrow{font-size:10px}#main .home-hero{display:block;padding:25px 0 26px}#main .home-hero h1{font-size:36px;letter-spacing:-1.7px}#main .hero-description{font-size:15px;line-height:1.7;margin:12px 0 8px;max-width:350px}.home-hero .design-keycaps{display:none}.hero-utility{font-size:12px;max-width:100%}.hero-utility span{padding:0 3px}#main .typing-workspace,#main .home-layout .typing-workspace{padding:12px;border-radius:13px}#main .typing-workspace .tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding-bottom:12px;margin-bottom:12px}#main .typing-workspace .tabs a{font-size:12px;min-height:40px;padding:8px 7px;gap:7px}#main .typing-workspace .tabs a svg{width:18px;height:18px}.tabs a.active::after{left:8px;right:8px}.workspace-top{display:grid;grid-template-columns:1fr;gap:11px;align-items:stretch}.context{display:grid;grid-template-columns:1fr 1fr;gap:8px}.context label:first-child{grid-column:auto}.context label:nth-child(2){order:-1}.context select{font-size:12px;max-width:none;width:100%;min-height:43px;padding:9px 25px 9px 9px}.durations{max-width:none;width:100%;border-radius:8px}.durations button{flex:1;min-width:0;font-size:12px;min-height:37px;padding:8px 7px}.workbench-tools{justify-content:space-between;gap:7px;margin:0}.workbench-tools .size-controls{display:none}.workbench-tools>[data-sound-toggle]{font-size:12px;min-height:37px;padding:7px 10px}.test-setup{margin-bottom:12px}.practice-bar{padding:12px 13px 5px;gap:8px}.practice-status{font-size:11px;max-width:60%;line-height:1.6}.practice-bar .timer{font-size:28px;min-width:80px}.typing-surface .passage,.typing-surface .typing-input{font-size:max(18px,calc(var(--passage-size,30px) * .82));line-height:1.65;padding:17px 14px;letter-spacing:0}.typing-surface .passage{height:192px}.typing-surface .preview-passage{padding:17px 14px}.start-row{padding:13px;display:flex;flex-wrap:wrap;gap:12px}.start-row .primary{width:100%;min-width:0;min-height:46px;font-size:14px}.start-row p{font-size:11px;border:0;padding:0;margin:0;flex:1;max-width:180px}.start-row .workbench-settings{min-height:36px;font-size:0;padding:7px;gap:0}.start-row .workbench-settings svg{width:20px;height:20px}.practice-foot p,.practice-foot #comparison-note{font-size:11px}.practice-foot{gap:7px;padding-top:12px}.practice-rules summary{font-size:11px}.practice-rules p{font-size:12px}.practice-actions{padding:13px;flex-wrap:wrap;gap:8px}.practice-actions button{font-size:12px;padding:9px 11px}.practice-actions #input-style{font-size:11px;margin-left:auto}.focused-practice #main .home-layout{padding-top:17px}.focused-practice .typing-surface .passage{height:min(235px,33dvh);min-height:130px}.focused-practice .practice-bar{padding-top:15px}.focused-practice .typing-workspace .tabs{display:none!important}.focused-practice .practice-foot #comparison-note{display:none}.focused-practice .practice-status{max-width:60%}.focused-practice .test-setup{display:none}.discovery-strip{grid-template-columns:1fr;padding:9px 0 15px;gap:0}.discovery-strip>a,.discovery-strip>a:first-child{border:0;border-bottom:1px solid var(--line);padding:16px 4px;align-items:center;gap:14px}.discovery-strip>a:last-child{border-bottom:0}.discovery-strip>a>svg{display:block}.discovery-strip h2{font-size:16px}.discovery-strip p{font-size:13px}.discovery-strip .feature-icon{width:42px;height:42px}.home-routine-grid{gap:16px;margin-bottom:16px}.daily-spotlight{padding:25px}.daily-copy{max-width:100%}.daily-copy h2{font-size:30px;letter-spacing:-1.3px}.daily-copy>p:not(.eyebrow){font-size:14px;max-width:280px}.routine-label{font-size:12px}.growth-art{display:none}.daily-button{font-size:14px;width:100%}.routine-choices{max-width:100%}.next-steps{padding:23px 22px 8px}.next-steps>a{gap:13px}.next-steps h3{font-size:16px}.next-steps p:not(.eyebrow){font-size:13px}.home-resource-grid{grid-template-columns:1fr;gap:16px}.resource-panel,.resource-panel:last-child{display:block;padding:24px}.resource-panel h2{font-size:28px}.resource-panel>p:not(.eyebrow){font-size:14px}.resource-row h3{font-size:16px}.resource-row p{font-size:13px}.office-shortcuts a{font-size:13px;padding:10px}.resource-panel:last-child .resource-row{align-items:center}.library-toolbar{padding:17px;gap:12px}.library-toolbar label{font-size:12px;min-width:100px}.library-toolbar select,.library-toolbar input{font-size:13px}.library-grid{gap:13px}.library-card{padding:19px;gap:13px;grid-template-columns:64px minmax(0,1fr)}.passage-art{width:64px;height:77px;align-self:start}.passage-art span{width:20px;height:20px;right:9px;top:10px}.library-content h2{font-size:21px;line-height:1.5;margin-top:0}.library-content .passage-excerpt{font-size:13px;line-height:1.85}.library-content .passage-meta{font-size:11px;gap:9px;flex-wrap:wrap}.library-content .passage-meta svg{display:none}.library-actions{grid-column:1/-1;justify-content:space-between;font-size:12px}.library-actions .button{font-size:12px;min-height:42px;padding:9px 12px}.custom-panel{padding:23px}.custom-panel h2{font-size:28px}.custom-panel>p{font-size:14px}.custom-panel label{font-size:13px}.custom-panel .row{gap:15px}.custom-panel .primary{width:100%;min-width:0;font-size:14px}.custom-panel textarea{font-size:16px}.learn-overview{padding:20px;gap:16px}.learn-overview>label{flex-basis:100%;font-size:13px}.learn-overview span{font-size:12px}.learn-overview>a{font-size:12px}.lesson-card{padding:19px;gap:13px}.lesson-info h2{font-size:21px}.lesson-info>p{font-size:13px}.lesson-info .eyebrow{font-size:9px}.lesson-actions{grid-column:1/-1;justify-content:space-between;gap:10px}.lesson-actions .button{font-size:13px}.lesson-index{height:38px;width:38px;font-size:16px}.learning-tabs{gap:3px;margin-bottom:17px;padding-bottom:8px}.learning-tabs a{font-size:12px;gap:6px;padding:9px 10px}.learning-tabs svg{width:17px;height:17px}.tips-grid,.exercise-grid{grid-template-columns:1fr;gap:15px}.tip-card{padding:24px}.tip-card h2{font-size:25px}.tip-card>p{font-size:14px}.tip-card .eyebrow{font-size:10px}.challenge-grid h2{font-size:27px}.challenge-grid p{font-size:14px}.studio-workspace{padding:14px;border-radius:13px;display:block}.studio-workspace>*{order:initial!important}.studio-subnav{gap:4px;padding:0 0 12px;margin-bottom:14px}.studio-subnav a{font-size:11px;padding:9px 4px}.studio-setup label{font-size:12px}.studio-setup select{font-size:13px;min-height:44px}.studio-setup{gap:12px;grid-template-columns:1fr 1fr}.studio-setup button{grid-column:1/-1;font-size:13px}.studio-setup-details summary{font-size:13px;line-height:1.8}.studio-input-help,.studio-workspace>.lesson-note{font-size:12px;padding:10px 0;margin-bottom:12px}.studio-workspace>.lesson-note{padding:14px}.studio-practice-bar{padding:12px 13px 5px;gap:8px;flex-wrap:wrap;margin:0}.studio-practice-bar>strong{font-size:28px}.studio-practice-bar>span{font-size:11px;max-width:47%}.studio-practice-bar .row{flex-basis:100%;justify-content:flex-end;gap:5px}.studio-practice-bar button{min-height:35px;font-size:11px;padding:6px 9px}.studio-target{font-size:24px;height:195px;padding:17px 14px;line-height:1.7}.studio-practice-actions{margin:13px 0;display:flex;flex-wrap:wrap;gap:8px}.studio-practice-actions .primary{min-width:0;width:100%;font-size:14px}.studio-practice-actions button{font-size:12px;padding:9px 11px}.studio-entry{margin:12px 0}.studio-entry label{font-size:12px}.studio-entry label span{font-size:11px}.studio-entry textarea{font-size:20px;min-height:72px;max-height:110px;padding:12px}.studio-progress-line{gap:8px;flex-direction:column;align-items:stretch;margin:15px 0 10px}.studio-progress-line span{font-size:10px}.studio-progress-line progress{width:100%}.studio-workspace #studio-feedback{font-size:12px}.practice-in-session .studio-head{padding:17px 0}.practice-in-session .studio-head h1{font-size:26px}.practice-in-session .studio-input-help{display:none}.practice-in-session .studio-target{height:170px}.practice-in-session .studio-practice-bar{flex-wrap:nowrap}.practice-in-session .studio-practice-bar .row{flex-basis:auto}.practice-in-session .studio-practice-bar .row button{font-size:10px;padding:5px;min-width:25px;min-height:34px}.practice-in-session .studio-practice-bar .row [data-sound-toggle]{font-size:0;gap:0}.practice-in-session .studio-practice-bar .row [data-sound-toggle] svg{width:18px;height:18px}.keyboard-guide kbd{width:24px;height:32px;font-size:11px}.keyboard-guide>div{gap:3px}.keyboard-guide+ p{font-size:12px}.studio-result-card{padding:22px}.studio-result-card h2{font-size:27px}.studio-result-card .stats{grid-template-columns:1fr 1fr}.studio-result-card .stat{padding:17px}.studio-result-card .stat strong{font-size:27px}.studio-result-card .stat span{font-size:11px}.office-grid .office-entry{padding:19px}.office-entry-heading{padding-bottom:18px}.office-entry-heading h2{font-size:23px}.office-entry-heading .timer{font-size:25px}.office-entry .entry-fields label{display:block;padding:15px 0;font-size:13px}.office-entry .mobile-field-source{display:block;margin:6px 0 9px;font-size:11px}.office-entry .mobile-field-source b{font-size:20px;display:block;line-height:1.6}.office-entry .entry-fields input{font-size:16px;min-height:47px;margin:0}.office-entry .entry-fields .field-hint{display:block;margin-top:7px;font-size:12px}.office-entry #office-form>.row{gap:9px}.office-entry #office-form>.row button{font-size:13px}.office-entry .rule-note{font-size:12px}.office-family-tabs{gap:7px;margin-bottom:18px}.office-family-tabs a{font-size:11px;gap:6px;padding:9px}.office-family-tabs svg{width:16px;height:16px}.form-row{grid-template-columns:1fr;gap:15px}.form-row label{font-size:13px}.game-head{padding:25px 0 21px;gap:15px}.game-head h1{font-size:35px;letter-spacing:-1.2px}.game-head p:not(.eyebrow){font-size:14px}.game-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.game-controls select,.game-controls button{font-size:11px;min-height:42px;padding:8px 6px;min-width:0;width:100%;max-width:none}.game-controls #game-keyboard{max-width:none}.game-controls svg{width:16px;height:16px}.game-score-strip{padding:14px;margin-bottom:12px}.game-score-strip span{font-size:11px;min-height:0;line-height:1.5;margin-bottom:5px}.game-score-strip strong{font-size:23px;letter-spacing:-.6px}.game-score-strip>div{padding-inline:12px}.game-score-strip #game-time{font-size:22px}.game-layout{gap:14px}.word-playfield{height:300px;border-radius:10px}.field-note{font-size:9px;top:10px;left:12px;max-width:calc(100% - 24px)}.falling-word{font-size:22px;padding:9px 20px;max-width:78%;border-radius:9px}.falling-word::before{font-size:8px;top:-24px;padding:3px 8px}.queued-word{font-size:15px;padding:7px 13px}.queue-one{left:22%;top:24%}.queue-two{left:77%;top:39%}.game-overlay{padding:22px;gap:18px}.game-overlay strong{font-size:28px}.game-overlay p{font-size:13px}.game-overlay button{font-size:14px}.game-entry{padding:15px;margin-top:12px}.game-entry .row:first-child{gap:9px;align-items:center}.game-entry label{font-size:12px}.game-entry #game-flash{font-size:10px;max-width:65%;text-align:right}.game-entry input{font-size:25px;min-height:53px;padding:10px 12px}.game-entry-row{gap:8px;flex-wrap:nowrap}.game-entry-row .primary{font-size:12px;padding:10px 11px;min-width:105px;min-height:53px;width:auto}.game-entry p{font-size:11px;line-height:1.8;margin:8px 0}.game-entry #game-end{font-size:11px;min-height:34px}.game-entry #game-status{font-size:11px}.game-sidebar{grid-template-columns:1fr 1fr;gap:12px}.game-rhythm,.game-last{padding:17px;min-width:0}.game-rhythm .eyebrow,.game-last .eyebrow{font-size:11px}.game-rhythm h2{font-size:22px;margin:10px 0}.game-rhythm>strong{font-size:18px;line-height:1.4}.game-rhythm>p:not(.eyebrow){font-size:11px}.game-rhythm progress{margin-bottom:6px;height:7px}.game-rhythm h3,.game-rhythm hr{display:none}.game-last strong{font-size:13px}.game-category{width:100%;margin:0 0 14px;gap:2px;padding:4px}.game-category button{font-size:12px;min-width:0;padding:9px;min-height:42px;flex:1}.number-task{padding:19px}.task-heading{font-size:10px;letter-spacing:1px;padding-bottom:15px}.task-heading span:last-child{display:none}.number-task h2{font-size:18px;margin:20px 0 15px}.number-target{padding:20px 8px}.number-target>strong{font-size:clamp(40px,13vw,62px);letter-spacing:-2px}.number-target>p{font-size:12px;margin-top:8px}.number-task>#game-start{font-size:13px;min-height:45px;width:100%}.number-game .game-rhythm h2{font-size:43px}.number-game .game-rhythm>strong{font-size:13px}.number-key-hints{gap:4px;padding:12px;margin-top:16px}.number-key-hints kbd{font-size:12px;height:33px;min-width:0}.game-footer{gap:15px;flex-wrap:wrap}.game-footer details{flex-basis:100%;font-size:12px}.game-footer .check-label,.game-footer>span{font-size:11px}.games-gallery{grid-template-columns:1fr;gap:18px}.game-preview>div:last-child{padding:25px}.preview-world,.preview-number{height:210px}.game-preview h2{font-size:30px}.game-preview p{font-size:14px}.game-preview .eyebrow{font-size:10px}.preview-number strong{font-size:64px}.preview-number small{font-size:13px}.preview-number>span{font-size:13px}.progress-tabs{gap:0;padding:3px;display:grid;grid-template-columns:repeat(3,1fr)}.progress-tabs button{min-height:39px;font-size:11px;padding:9px 7px;white-space:normal}.progress-summary{padding:17px 14px;gap:0;align-items:flex-start}.progress-summary>div{padding-inline:10px;display:block}.progress-summary strong{font-size:20px;white-space:nowrap}.progress-summary span:not(.feature-icon){font-size:10px;line-height:1.5;display:block;margin-top:6px}.progress-overview-layout{gap:16px}.progress-chart{padding:20px}.progress-chart h2{font-size:19px}.progress-chart .row{gap:12px}.progress-chart .row .button{font-size:11px;min-height:35px;padding:7px 10px}.progress-chart .history-line{gap:8px;height:125px}.progress-chart .chart-copy,.progress-chart .bar-labels{font-size:11px}.progress-recent{padding:20px}.progress-recent h2{font-size:21px}.progress-recent td,.progress-recent th{font-size:12px;padding:12px}.progress-aside .studio-dashboard{grid-template-columns:1fr}.progress-aside .panel{padding:22px}.progress-backup-strip{padding:20px;gap:12px}.progress-backup-strip h2{font-size:17px}.progress-backup-strip p{font-size:12px}.progress-backup-strip button{font-size:12px;min-height:42px;flex:1;padding:9px}.progress-tab-panel .panel{padding:21px}.studio-dashboard{grid-template-columns:1fr}.studio-dashboard label{font-size:13px;align-items:stretch;flex-direction:column;gap:8px}.studio-dashboard select{max-width:none}.studio-progress .row>label{font-size:12px}.studio-progress .panel h3{font-size:22px}.achievement-list{grid-template-columns:1fr 1fr}.achievement-list span{font-size:11px}.weak-keys strong{font-size:23px}.weak-keys span{font-size:11px}.studio-best-grid{grid-template-columns:1fr}.trend-list strong{font-size:11px}.stats{margin:20px 0}.stat{padding:18px}.stat strong{font-size:30px}.stat span{font-size:12px;line-height:1.6}.result-actions{gap:8px}.result-actions button,.result-actions a{font-size:12px;padding:10px}.article{padding:27px 23px}.article h1{font-size:31px}.article p,.article li{font-size:15px;line-height:1.9}.guide-tile h2{font-size:24px}.guide-tile p{font-size:14px}.account-dialog{width:calc(100vw - 24px);max-height:94dvh;border-radius:15px}.account-form-side{padding:25px 23px}.account-brand{font-size:18px;margin-bottom:25px}.account-brand img{width:27px;height:27px}.account-form-heading h2{font-size:29px;letter-spacing:-1.1px}.account-form-heading>p:last-child:not(.eyebrow){font-size:13px}.account-tabs{margin:21px 0}.account-tabs button{font-size:13px;min-height:43px}.account-google{font-size:13px}.account-or{font-size:11px;margin:19px 0}.account-availability{font-size:12px;padding:12px}#account-form label:not(.account-check),#account-profile-form label{font-size:12px;margin-top:15px}#account-form input:not([type=checkbox]),#account-profile-form input{font-size:16px;min-height:47px}.account-check{font-size:11px;gap:9px}.account-shared-note{font-size:10px}.account-submit{font-size:14px}.account-guest-action{font-size:13px}.account-free-note{font-size:11px}.account-profile h3{font-size:21px}.account-profile p{font-size:12px}.account-local-note{font-size:12px}.account-verification-actions button{font-size:11px}.account-page{padding:23px}.account-page .row>*{width:100%}.account-page p{font-size:13px}.account-page-guest h2{font-size:23px}.account-page-guest{align-items:flex-start;gap:13px}.account-page .account-large-avatar{width:46px;height:46px;font-size:23px}.account-feedback p{font-size:12px}.account-close{top:12px;right:12px}.studio-settings{padding:23px;margin:8px;width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:14px}.studio-settings h2{font-size:24px}.studio-settings .settings-row{gap:12px}.studio-settings label{font-size:12px;margin-top:17px}.studio-settings select{font-size:14px}.studio-settings p{font-size:12px}.studio-settings .check-label{font-size:13px}.appearance-choices button{font-size:13px}.settings-privacy{padding:13px}.footer-inner{display:flex;flex-direction:column;gap:20px}.footer-inner .brand{font-size:20px}.footer-support{font-size:12px}.footer-support small{font-size:11px}.footer-inner .links{font-size:12px;gap:20px;flex-wrap:wrap}.footer-device{display:block;font-size:11px}footer{margin-top:22px;padding:25px 0}.toast{font-size:13px;bottom:17px;padding:12px 17px}.dialog-small{padding:22px}.dialog-small h2{font-size:24px}.dialog-small p{font-size:14px}#certificate{padding:20px}#certificate h2{font-size:24px}#certificate .row button{font-size:12px}}
@media(max-width:360px){.brand{font-size:18px;gap:7px}.brand-mark{width:28px;height:28px}.header-actions{gap:2px}.header-actions .theme{width:31px}.account-control{width:32px}.header-inner{gap:5px}#main .home-hero h1{font-size:32px}.hero-utility{font-size:11px}.tabs a svg{display:none}.context select{font-size:11px}.workbench-tools>[data-sound-toggle]{font-size:11px}.practice-status{font-size:10px}.typing-surface .passage,.typing-surface .typing-input{padding-inline:12px}.game-controls button,.game-controls select{font-size:10px}.game-controls button svg{display:none}.game-score-strip{padding:12px 10px}.game-score-strip>div{padding-inline:8px}.game-score-strip span{font-size:10px}.game-score-strip strong{font-size:21px}.number-target>strong{font-size:42px}.game-entry-row .primary{font-size:11px;min-width:95px;padding:9px}.game-entry input{font-size:23px}.game-sidebar{gap:10px}.game-rhythm,.game-last{padding:15px}.game-rhythm>strong{font-size:17px}.game-rhythm p:not(.eyebrow){font-size:10px}.game-last strong{font-size:12px}.library-card{grid-template-columns:1fr}.passage-art{display:none}.library-actions{grid-column:1}.library-content h2{font-size:21px}.learning-tabs a{font-size:11px;padding:8px}.progress-summary strong{font-size:18px}.progress-summary>div{padding-inline:8px}.account-form-side{padding:24px 18px}.account-form-heading h2{font-size:27px}.number-key-hints{gap:3px;padding:9px}.number-key-hints kbd{font-size:11px}}
@media(max-height:650px) and (max-width:760px){.focused-practice .typing-surface .passage{height:125px;min-height:100px}.practice-in-session .studio-target{height:120px}.practice-in-session .studio-entry textarea{min-height:62px}.practice-in-session .studio-head{display:none}.word-playfield{height:220px}.game-head{padding:17px 0}.game-head p{display:none}.game-controls{gap:5px}.game-score-strip{padding:10px 12px}.game-head h1{font-size:28px}.game-entry{padding:12px;margin-top:9px}.game-entry p,.game-entry .row:last-child{display:none}.game-sidebar{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.reduce-motion *, .reduce-motion *::before,.reduce-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media print{.header-actions,.progress-tabs,.account-dialog,.studio-settings{display:none!important}}

.number-game .game-score-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.number-game .game-score-strip>div{padding-inline:15px}.number-game .game-score-strip>div:first-child{padding-left:0}.learn-next{display:flex;align-items:center;justify-content:space-between;gap:25px}.learn-next .row{max-width:380px;justify-content:flex-end}.learning-tabs a:focus-visible,.progress-tabs button:focus-visible{outline-offset:2px}@media(max-width:760px){.learn-next{display:block}.learn-next .row{max-width:none;justify-content:flex-start}}@media(max-width:600px){.number-key-hints{display:none}.number-game .game-score-strip>div{padding-inline:8px}.number-game .game-score-strip>div>span{font-size:10px}.number-game .game-score-strip strong{font-size:22px}}
/* Reset the legacy centered test width for the approved full-width home. */
#main:not([data-page='results']) .home-layout .typing-workspace{max-width:none;width:100%;margin:0}#main .typing-workspace .start-row .primary{width:auto;flex:0 0 auto}#main .context{flex:0 1 auto}.workbench-tools{margin-left:auto}
@media(max-width:600px){#main .typing-workspace .start-row .primary{width:100%;flex:auto}.workbench-tools{margin-left:0}#main .context{display:grid}}

.game-typed{color:var(--accent)}.game-running .game-overlay[hidden]{display:none!important}
@media(max-width:600px){.game-running .game-head{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;justify-content:space-between;padding:12px 0;gap:10px}.game-running .game-head h1{font-size:24px;letter-spacing:-.8px;margin:0}.game-running .game-head>div:first-child>a,.game-running .game-head>div:first-child>p{display:none}.game-running .game-controls{display:flex;flex-wrap:nowrap;gap:5px;width:auto;flex-shrink:0}.game-running .game-controls select{display:none}.game-running .game-controls button{font-size:0;width:35px;min-width:35px;min-height:37px;padding:8px;gap:0}.game-running .game-controls button svg{display:block;width:18px;height:18px}.game-running .game-score-strip{margin-bottom:10px;padding-block:12px}.game-running .game-category{display:none}.game-running .word-playfield{height:clamp(140px,calc(var(--viewport-height,100dvh) - 365px),300px)}.game-running .game-sidebar{display:none}.game-running .number-task{padding:14px}.game-running .number-task h2{font-size:16px;margin:13px 0}.game-running .task-heading{font-size:9px;padding-bottom:10px}.game-running .number-target{padding:13px 8px}.game-running .number-target>strong{font-size:45px}.game-running .number-target>p{font-size:11px}.game-running .game-entry{margin-top:10px}.game-running .game-entry p{font-size:10px;margin-bottom:0}.game-running .game-entry .row:last-child{display:none}}

@media(max-width:600px){body:has(.game-running) .header-inner{min-height:58px}.game-running .game-head h1{font-size:21px;white-space:nowrap}.game-running .game-controls button{min-height:40px}.game-running .game-score-strip{padding:10px 12px}.game-running .game-score-strip span{font-size:10px;line-height:1.2;white-space:nowrap;min-height:0;margin-bottom:4px}.game-running .game-score-strip strong,.game-running .game-score-strip #game-time{font-size:21px;line-height:1.3}.game-running .number-task{padding:11px}.game-running .number-task h2{font-size:16px;line-height:1.4;margin:8px 0}.game-running .task-heading{font-size:9px;line-height:1.5;padding-bottom:7px}.game-running .number-target{padding:8px}.game-running .number-target>strong{font-size:40px;line-height:1.3}.game-running .number-target>p{font-size:11px;line-height:1.6;margin-top:6px}.game-running .game-entry{padding:12px}.game-running .word-playfield{height:clamp(125px,calc(var(--viewport-height,100dvh) - 350px),300px)}}

@media(max-width:600px){.game-running .game-entry .row:last-child{display:flex!important;justify-content:flex-end;margin-top:8px}.game-running .game-entry #game-status{display:none}.game-running .game-entry #game-end{font-size:11px;min-height:32px;padding:6px 10px}}

.progress-overview-layout>*{min-width:0}.progress-recent .scroll{min-width:0;width:100%}.account-page-guest>div{min-width:0}.form-row>*{min-width:0}.form-row select{width:100%}.progress-chart .bar-labels{gap:12px;flex-wrap:wrap}.progress-summary>div{min-width:0}
@media(max-width:600px){#main .tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding-bottom:12px;margin-bottom:15px}#main .tabs a{min-width:0;font-size:12px;min-height:42px;padding:8px;gap:7px;white-space:normal}#main .tabs svg{width:18px;height:18px}#main[data-page='daily-practice'] .tabs a:last-child{grid-column:1/-1}.progress-overview-layout{grid-template-columns:minmax(0,1fr)}.progress-chart .bar-labels{font-size:10px;gap:8px}.progress-aside .studio-dashboard{min-width:0}.progress-aside .studio-dashboard>section{min-width:0}.progress-backup-strip .feature-icon{display:none}}

.hero-mobile-title{display:none}#main .home-hero h1>span{color:var(--ink)}
@media(max-width:600px){.hero-desktop-title{display:none}.hero-mobile-title{display:block}#main .home-hero{padding:22px 0}#main .home-hero h1{font-size:32px;letter-spacing:-1.4px}#main.home-page .typing-workspace .tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}#main.home-page .typing-workspace .tabs a{font-size:11px;line-height:1.4;padding:7px 4px;min-height:43px;text-align:center}#main.home-page .typing-workspace .tabs a svg{display:none}#main.home-page .typing-surface .preview-passage{height:176px}}

.practice-mode-pills{display:flex;align-items:center;gap:5px;flex-wrap:wrap;width:max-content;max-width:100%;padding:4px;background:var(--surface);border:1px solid var(--line);border-radius:24px;margin:0 0 22px}.practice-mode-pills button,.practice-mode-pills a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border:0;background:transparent;border-radius:20px;padding:10px 22px;color:var(--muted);font-size:14px}.practice-mode-pills [aria-pressed=true]{background:var(--tint);color:var(--ink);font-weight:750}.practice-foot{flex-wrap:wrap}.more-practice-modes{font-size:12px;white-space:nowrap}.hero-utility .hero-utility-note{padding:0}.hero-utility .hero-utility-note::before{content:' ';white-space:pre}.progress-recent,.progress-chart{min-width:0}
@media(max-width:600px){.practice-mode-pills{margin-bottom:17px;border-radius:12px;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.practice-mode-pills button,.practice-mode-pills a{font-size:12px;padding:9px 10px;min-height:40px;border-radius:8px}.more-practice-modes{font-size:11px}.hero-utility .hero-utility-note{display:none}}
.daily-spotlight{color:var(--ink)}.daily-copy>.eyebrow{color:var(--muted)}body.dark .daily-spotlight{background:linear-gradient(125deg,var(--soft),var(--tint));border-color:var(--line)}
.footer-privacy-choice{min-height:32px;padding:0;border:0;background:transparent;color:var(--muted);font-size:12px;font-weight:400;border-radius:4px}.footer-privacy-choice:hover{background:transparent;color:var(--accent);text-decoration:underline}.ad-region:not([hidden]){box-sizing:border-box;min-height:280px;width:100%;max-width:100%;margin:32px 0 0;padding:24px 0;border-top:1px solid var(--line);overflow:hidden;clear:both}.ad-region>p{font-size:11px;color:var(--muted);letter-spacing:1px;text-align:center;margin:0 0 12px}.ad-privacy-dialog{width:min(560px,calc(100vw - 28px));max-height:calc(100dvh - 32px);overflow:auto;padding:30px}.ad-privacy-dialog h2{font-size:27px}.ad-privacy-dialog p{font-size:14px;line-height:1.75;margin:17px 0}.ad-privacy-dialog .small{font-size:12px}.ad-privacy-status{background:var(--tint);padding:14px;border-radius:9px;color:var(--ink)}.ad-privacy-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.ad-privacy-actions button{font-size:13px;padding:12px}.ad-privacy-dialog [data-ad-regional]{font-size:13px}.ad-choice-banner{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);z-index:25;width:min(820px,calc(100vw - 36px));box-sizing:border-box;padding:20px 23px;display:flex;align-items:center;gap:24px;background:var(--surface);border:1px solid var(--control);border-radius:13px;box-shadow:0 8px 35px #102f2b1f}.ad-choice-banner strong{font-size:16px}.ad-choice-banner p{font-size:12px;color:var(--muted);line-height:1.7;margin:5px 0 0}.ad-choice-banner p a{text-decoration:underline}.ad-choice-actions{display:flex;gap:8px;flex-shrink:0}.ad-choice-actions button{font-size:12px;min-height:43px;padding:10px 12px}.focused-practice .ad-region,.focused-practice .ad-choice-banner{display:none!important}
@media(max-width:600px){.ad-privacy-dialog{padding:22px;width:calc(100vw - 24px)}.ad-privacy-dialog h2{font-size:23px}.ad-privacy-actions{grid-template-columns:1fr}.ad-privacy-dialog p{font-size:13px}.ad-privacy-dialog .small{font-size:11px}.ad-choice-banner{bottom:10px;padding:17px;width:calc(100vw - 24px);display:block}.ad-choice-actions{display:grid;grid-template-columns:1fr 1fr;margin-top:13px}.ad-choice-actions button{font-size:11px;white-space:normal}.ad-region:not([hidden]){margin-top:28px;padding-top:20px}}
@media print{.ad-region,.ad-choice-banner,#ad-privacy-dialog,.footer-privacy-choice{display:none!important}}
