@font-face{font-family:DemoUrdu;src:local('Noto Nastaliq Urdu'),local('Noto Naskh Arabic'),local('Urdu Typesetting');font-display:swap}
:root{--bg:#081c2d;--panel:#122f46;--panel2:#1d455f;--text:#f1f9ff;--muted:#b2ccdd;--accent:#8dcfff;--accent2:#7ee3db;--error:#ffb3ae;--line:#51778f;--on-accent:#081c2d;--soft:rgba(141,207,255,.08);--shadow:0 18px 42px rgba(0,8,18,.23);--key-bottom:#071c2c;--correct:#7ee3db;--font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color-scheme:dark}
html[data-theme=light]{--bg:#edf5fa;--panel:#fff;--panel2:#e5f0f7;--text:#142d40;--muted:#425f74;--accent:#15649c;--accent2:#08766d;--error:#b12f3d;--line:#93b0c3;--on-accent:#fff;--soft:rgba(21,100,156,.06);--shadow:0 16px 38px rgba(21,59,83,.09);--key-bottom:#adc2cf;--correct:#08766d;color-scheme:light}
html[data-theme=contrast]{--bg:#000;--panel:#080808;--panel2:#161616;--text:#fff;--muted:#eee;--accent:#ffe600;--accent2:#7dffcd;--error:#ffb4b4;--line:#bfbfbf;--on-accent:#000;--soft:rgba(255,230,0,.06);--shadow:none;--key-bottom:#999;--correct:#7dffcd;color-scheme:dark}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:14px;line-height:1.55;min-width:320px}button,select,textarea{font:inherit}button,select{touch-action:manipulation}button,a,select,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}button{color:inherit}a{color:inherit}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--accent2);outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.2;letter-spacing:-.035em}h2{font-size:21px}h3{font-size:16px}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}.skip-link{position:fixed;left:20px;top:-70px;z-index:1000;background:var(--accent);color:var(--on-accent);padding:12px 18px;border-radius:10px}.skip-link:focus{top:14px}.ambient{pointer-events:none;position:absolute;z-index:-1;border-radius:50%;filter:blur(85px);opacity:.11}.ambient-one{top:50px;left:12%;width:460px;height:300px;background:#58bcff}.ambient-two{top:520px;right:0;width:400px;height:400px;background:#52c8bd}.site-header{max-width:1480px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:27px 44px 21px;border-bottom:1px solid color-mix(in srgb,var(--line),transparent 72%)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:21px;font-weight:780;letter-spacing:-.8px;line-height:1.18}.brand-accent{color:var(--accent);font-weight:450}.brand small{display:block;font-size:8px;letter-spacing:2px;color:var(--muted);margin-top:6px;font-weight:650}.brand-mark{width:43px;height:43px;display:grid;grid-template-columns:repeat(3,1fr);gap:3px;padding:10px 7px;background:linear-gradient(140deg,var(--accent),var(--accent2));border-radius:12px;box-shadow:0 6px 15px rgba(0,0,0,.15);transform:rotate(-5deg)}.brand-mark i{height:7px;background:var(--on-accent);border-radius:2px;opacity:.86}.brand-mark i:last-child{grid-column:2/4}.header-actions{display:flex;align-items:center;gap:10px}.button{border:1px solid var(--line);background:var(--panel2);border-radius:9px;padding:9px 14px;display:inline-flex;gap:8px;align-items:center;justify-content:center;font-size:12px;font-weight:650;text-decoration:none;white-space:nowrap;transition:background .15s,transform .15s,border-color .15s}.button:hover:not(:disabled){border-color:var(--accent);background:var(--panel)}.button:active:not(:disabled){transform:translateY(1px)}.button.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.button.primary:hover{filter:brightness(1.08)}.button.subtle{background:transparent;border-color:color-mix(in srgb,var(--line),transparent 55%);color:var(--muted)}.button.icon-button{width:34px;height:34px;padding:0;border-radius:50%;font-size:17px}.button.danger{background:var(--error);border-color:var(--error);color:var(--on-accent)}select{border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:8px 28px 8px 10px;color:var(--text);font-size:12px;max-width:100%}.theme-control select{border:0;background:transparent;padding-left:0;color:var(--muted)}.shell{max-width:1480px;padding:0 44px;margin:0 auto}.intro{display:flex;justify-content:space-between;gap:35px;align-items:center;padding:36px 0 30px}.eyebrow{font-size:9px;letter-spacing:1.55px;font-weight:750;color:var(--muted);display:block}.intro .eyebrow{display:flex;align-items:center;gap:8px;color:var(--accent2);font-size:9px;letter-spacing:1.8px;margin-bottom:9px}.live-dot{display:inline-block;width:6px;height:6px;background:var(--accent2);border-radius:50%;box-shadow:0 0 12px color-mix(in srgb,var(--accent2),transparent 30%);flex-shrink:0}.intro h1{font-size:clamp(30px,3.2vw,45px);font-weight:720;letter-spacing:-1.8px;margin-bottom:11px}.intro p{color:var(--muted);font-size:13px;max-width:650px}.preview-note{display:flex;gap:13px;align-items:center;border-left:1px solid var(--line);padding-left:28px;min-width:245px}.preview-note strong{font-size:12px;display:block;margin-bottom:4px}.preview-note span:not(.note-icon){font-size:10px;color:var(--muted);display:block}.note-icon{color:var(--accent2);font-size:25px}.notice{padding:12px 16px;background:var(--panel2);border:1px solid var(--line);border-radius:10px;margin-bottom:18px;color:var(--muted)}.app-grid{display:grid;grid-template-columns:255px minmax(0,1fr);gap:20px;align-items:start}.panel{border:1px solid color-mix(in srgb,var(--line),transparent 55%);border-radius:16px;background:var(--panel);box-shadow:var(--shadow)}.lesson-panel{padding:21px 15px 17px;position:sticky;top:16px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:0 7px}.panel-heading h2{margin-top:8px;font-size:19px}.panel-heading .eyebrow{font-size:8px;letter-spacing:1.2px}.count-badge{font-size:10px;font-weight:700;color:var(--accent);padding:4px 7px;border:1px solid var(--line);border-radius:6px}.language-switch{display:grid;grid-template-columns:repeat(3,1fr);border-radius:9px;padding:4px;background:var(--bg);margin-top:20px;margin-bottom:16px;gap:3px}.language-switch button{border:0;border-radius:6px;background:transparent;padding:8px 5px;font-size:11px;color:var(--muted);font-weight:600}.language-switch button.selected{background:var(--panel2);color:var(--text);box-shadow:0 2px 6px rgba(0,0,0,.15)}.lesson-list{display:flex;flex-direction:column;gap:6px}.lesson-button{width:100%;display:flex;gap:10px;align-items:center;text-align:left;background:transparent;border:1px solid transparent;border-radius:10px;padding:11px 9px;color:var(--text);transition:background .15s,border-color .15s}.lesson-button:hover{background:var(--soft);border-color:var(--line)}.lesson-button.selected{background:var(--soft);border-color:var(--accent)}.lesson-index{width:27px;height:27px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--line),transparent 55%);border-radius:7px;font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0}.lesson-button.selected .lesson-index{color:var(--on-accent);background:var(--accent);border-color:var(--accent)}.lesson-button strong{font-size:11px;line-height:1.35;font-weight:650;display:block}.lesson-button small{font-size:9px;color:var(--muted);margin-top:3px;display:block;letter-spacing:.25px}.lesson-check{margin-left:auto;color:var(--accent2);font-size:12px}.lesson-tip{margin:18px 7px 0;padding-top:16px;border-top:1px solid color-mix(in srgb,var(--line),transparent 55%);display:flex;align-items:start;gap:9px;color:var(--accent2)}.lesson-tip p{font-size:10px;color:var(--muted);line-height:1.65}.workspace{min-width:0;scroll-margin-top:16px}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:17px}.stat-card{border:1px solid color-mix(in srgb,var(--line),transparent 55%);background:linear-gradient(130deg,var(--panel),color-mix(in srgb,var(--panel2),var(--panel) 65%));border-radius:12px;padding:16px 18px 13px;min-height:112px;box-shadow:0 5px 18px rgba(0,0,0,.06)}.stat-label{font-size:8px;letter-spacing:1.45px;font-weight:750;color:var(--muted);display:block}.stat-card>div{display:flex;gap:6px;align-items:baseline;line-height:1.25;margin:8px 0 3px;font-variant-numeric:tabular-nums}.stat-card strong{font-size:29px;font-weight:650;letter-spacing:-1px}.stat-card>div>span{font-size:10px;color:var(--muted);font-weight:600}.stat-card small{font-size:9px;color:var(--muted)}.stat-card.accent-card{background:linear-gradient(125deg,color-mix(in srgb,var(--accent2),var(--panel) 95%),var(--panel));border-color:color-mix(in srgb,var(--accent2),transparent 67%)}.accent-card strong{color:var(--accent2)}.practice-panel{overflow:hidden}.practice-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 19px;border-bottom:1px solid color-mix(in srgb,var(--line),transparent 66%);background:color-mix(in srgb,var(--panel2),var(--panel) 75%)}.mode-switch{display:flex;gap:4px}.mode-switch button{border:1px solid transparent;background:transparent;display:flex;align-items:center;gap:7px;padding:8px 11px;font-size:11px;font-weight:600;border-radius:8px;color:var(--muted)}.mode-switch button.selected{border-color:color-mix(in srgb,var(--line),transparent 45%);background:var(--panel2);color:var(--text)}.mode-switch button>span:first-child{font-size:16px;color:var(--accent)}.restart-button{padding:6px 10px;font-size:10px;background:transparent}.restart-button>span:first-child{font-size:17px}.session-heading{display:flex;gap:15px;justify-content:space-between;align-items:center;padding:23px 25px 15px}.session-heading h2{margin-top:7px;font-size:22px}.session-heading .eyebrow{color:var(--accent2);font-size:8px;letter-spacing:1.7px}.state-badge{font-size:8px;letter-spacing:1.1px;font-weight:750;background:var(--soft);color:var(--accent);padding:6px 9px;border:1px solid color-mix(in srgb,var(--line),transparent 55%);border-radius:6px;white-space:nowrap}.state-badge.running{color:var(--accent2);border-color:var(--accent2)}.state-badge.finished{color:var(--accent2)}.session-options{display:flex;gap:18px;align-items:center;flex-wrap:wrap;padding:0 25px 17px}.check-control{display:flex;gap:6px;align-items:center;font-size:10px;color:var(--muted);cursor:pointer;user-select:none}.check-control input{accent-color:var(--accent);width:13px;height:13px;margin:0}.session-options>label:first-child:not(.check-control){font-size:10px;color:var(--muted);display:flex;align-items:center;gap:8px}.session-options select{padding:4px 23px 4px 7px;font-size:10px;background:var(--bg)}.typing-stage{margin:0 20px 20px;border:1px solid color-mix(in srgb,var(--line),transparent 45%);background:var(--bg);border-radius:12px;overflow:hidden;transition:border-color .2s}.typing-stage:focus-within{border-color:var(--accent)}.passage-caption{display:flex;justify-content:space-between;gap:12px;font-size:8px;letter-spacing:1.4px;font-weight:700;color:var(--muted);padding:15px 19px 0}.passage{padding:19px 19px 17px;font-size:clamp(20px,2.05vw,29px);line-height:1.9;letter-spacing:.5px;color:color-mix(in srgb,var(--muted),transparent 18%);min-height:123px;font-family:'Cascadia Code','SFMono-Regular',Consolas,'Liberation Mono',monospace;overflow-wrap:anywhere;white-space:pre-wrap;cursor:text;user-select:none}.passage.urdu{font-family:DemoUrdu,'Noto Naskh Arabic','Segoe UI',serif;direction:rtl;font-size:30px;line-height:2.1;letter-spacing:0}.passage .character{position:relative;border-radius:3px}.passage .character.correct{color:var(--correct)}.passage .character.incorrect{color:var(--error);background:color-mix(in srgb,var(--error),transparent 88%);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}.passage .character.current{color:var(--on-accent);background:var(--accent);box-shadow:0 0 0 2px var(--accent);text-decoration:none}.passage .character.current::after{content:'';position:absolute;left:-2px;right:-2px;bottom:-8px;height:2px;background:var(--accent);border-radius:2px}.typing-stage textarea{display:block;resize:none;min-height:42px;height:42px;width:100%;border:0;border-top:1px solid color-mix(in srgb,var(--line),transparent 70%);background:var(--soft);padding:11px 18px;color:var(--text);font-size:11px;line-height:18px;outline-offset:-3px}.typing-stage textarea::placeholder{color:var(--muted);opacity:.8}.typing-stage textarea:disabled{opacity:.6}.input-help{display:flex;align-items:center;gap:7px;padding:8px 18px 11px;color:var(--muted);font-size:9px;line-height:1.5}.focus-indicator{width:5px;height:5px;border-radius:50%;background:var(--line);flex-shrink:0}.typing-stage:focus-within .focus-indicator{background:var(--accent2)}.session-progress{height:3px;background:var(--bg)}.session-progress>div{height:100%;width:0;background:linear-gradient(90deg,var(--accent),var(--accent2));transition:width .15s linear}.session-summary{display:flex;gap:12px;align-items:center;padding:19px 23px;background:color-mix(in srgb,var(--accent2),var(--panel) 94%);border-top:1px solid color-mix(in srgb,var(--accent2),transparent 70%)}.summary-icon{display:grid;place-items:center;width:30px;height:30px;color:var(--accent2);border:1px solid var(--accent2);border-radius:50%;font-size:17px;flex-shrink:0}.session-summary>div{flex:1}.session-summary strong{font-size:14px}.session-summary p{font-size:10px;color:var(--muted);margin-top:4px}.session-summary .button{font-size:10px}.keyboard-panel{padding:19px 24px;margin-top:17px}.keyboard-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:19px}.next-key-group{display:flex;gap:12px;align-items:center}.key-cap{display:grid;place-items:center;min-width:45px;height:45px;padding:0 8px;border-radius:10px;color:var(--accent);background:var(--soft);border:1px solid var(--accent);box-shadow:0 3px 0 var(--key-bottom);font-size:24px;font-weight:650}.next-key-group .eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:3px}.next-key-group strong{display:block;font-size:12px;font-weight:650}.next-key-group small{font-size:9px;color:var(--muted);display:block;margin-top:4px}.keyboard-meta{display:flex;flex-direction:column;align-items:end;gap:6px}.pill{display:inline-block;padding:4px 8px;border:1px solid color-mix(in srgb,var(--line),transparent 40%);border-radius:5px;font-size:8px;letter-spacing:1px;font-weight:700;color:var(--muted);white-space:nowrap}.keyboard-help{font-size:9px;color:var(--muted)}.keyboard{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:6px}.keyboard-row{display:flex;gap:5px;justify-content:center}.keyboard-key{flex:1 1 0;min-width:0;height:37px;position:relative;display:flex;align-items:center;justify-content:center;padding:0 1px;background:linear-gradient(145deg,color-mix(in srgb,var(--panel2),var(--panel) 30%),var(--panel));color:var(--muted);border:1px solid color-mix(in srgb,var(--line),transparent 40%);border-bottom:3px solid var(--key-bottom);border-radius:6px;font-size:11px;box-shadow:0 1px 2px rgba(0,0,0,.15);transition:background .1s,transform .1s,border-color .1s}.keyboard-key.wide{flex:1.5 1 0;font-size:8px}.keyboard-key.extra-wide{flex:2.1 1 0;font-size:8px}.keyboard-key.space{flex:6.5 1 0;font-size:8px;letter-spacing:2px}.keyboard-key.muted-key{opacity:.42;cursor:default}.keyboard-key.anchor::after{content:'';position:absolute;bottom:5px;width:9px;height:1px;background:var(--muted)}.keyboard-key.next{background:var(--accent);color:var(--on-accent);border-color:var(--accent);border-bottom-color:color-mix(in srgb,var(--accent),#000 35%);font-weight:800;box-shadow:0 0 18px color-mix(in srgb,var(--accent),transparent 78%)}.keyboard-key.next::after{background:var(--on-accent)}.keyboard-key.pressed,.keyboard-key:active:not(:disabled){transform:translateY(2px);border-bottom-width:1px;background:var(--accent2);color:var(--on-accent);border-color:var(--accent2)}.keyboard.blind .keyboard-key:not(.wide):not(.extra-wide):not(.space){color:transparent}.keyboard.blind .keyboard-key.next{background:linear-gradient(145deg,color-mix(in srgb,var(--panel2),var(--panel) 30%),var(--panel));border-color:color-mix(in srgb,var(--line),transparent 40%);border-bottom-color:var(--key-bottom);box-shadow:none}.keyboard.blind .keyboard-key.next::after{background:var(--muted)}.blind-note{font-size:10px;color:var(--muted);text-align:center;margin-top:13px}.rocket-stage{margin:0 20px 17px;padding:15px 18px;background:var(--bg);border:1px solid color-mix(in srgb,var(--line),transparent 45%);border-radius:10px}.race-caption{display:flex;align-items:center;justify-content:space-between;font-size:8px;letter-spacing:1px;color:var(--muted);gap:10px}.race-caption strong{font-size:10px;letter-spacing:0;font-weight:500;color:var(--accent2);text-align:center}.race-track{position:relative;height:65px;margin:7px 14px 9px;border-bottom:1px dashed var(--line)}.race-stars{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-evenly;color:var(--line);font-size:20px;letter-spacing:17px;overflow:hidden;white-space:nowrap}.rocket{position:absolute;bottom:3px;left:0;font-size:35px;line-height:1;transform:rotate(43deg);z-index:2;transition:left .18s ease}.finish-flag{position:absolute;right:-10px;bottom:-2px;font-size:37px;color:var(--accent2)}.race-trail{position:absolute;bottom:14px;left:0;width:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent2));opacity:.7;transition:width .18s ease}.rocket-stage p{font-size:9px;color:var(--muted)}.progress-section{padding-top:34px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:17px}.section-heading h2{font-size:22px;margin-top:8px}.section-heading .eyebrow{font-size:8px;letter-spacing:1.5px}.section-heading>.button{font-size:10px}.progress-grid{display:grid;grid-template-columns:255px minmax(0,1fr);gap:20px}.progress-total{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:21px;min-height:176px}.total-icon{font-size:19px;color:var(--accent2);margin-bottom:4px}.progress-total>strong{font-size:35px;font-weight:650;line-height:1.1;color:var(--accent);font-variant-numeric:tabular-nums}.progress-total>span:not(.total-icon){font-size:11px;margin-top:6px}.progress-total>small{font-size:9px;color:var(--muted);margin-top:5px}.history-panel{padding:19px 22px;min-height:176px}.history-title{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:13px}.history-title h3{font-size:14px;letter-spacing:-.2px}.local-badge{display:flex;gap:6px;align-items:center;font-size:7px;letter-spacing:1.2px;color:var(--muted)}.local-badge .live-dot{width:4px;height:4px}.history-empty{padding:15px 0 10px;color:var(--muted);font-size:11px}.history-row{display:grid;grid-template-columns:minmax(0,1fr) 80px 75px 85px;gap:10px;align-items:center;border-top:1px solid color-mix(in srgb,var(--line),transparent 70%);padding:11px 0;font-size:10px}.history-row:first-child{border-top:0}.history-row strong{font-weight:650;font-size:11px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-row small{font-size:8px;color:var(--muted);display:block;margin-top:2px}.history-row>span{color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}.history-row>span.speed{color:var(--accent2);font-size:12px;font-weight:700}.scope-panel{display:flex;align-items:center;gap:20px;padding:22px 26px;margin-top:29px;box-shadow:none;background:color-mix(in srgb,var(--panel),var(--bg) 35%)}.scope-symbol{font-size:27px;color:var(--accent);flex-shrink:0}.scope-panel h2{font-size:15px;letter-spacing:-.2px;margin-bottom:7px}.scope-panel p{color:var(--muted);font-size:10px;max-width:860px;line-height:1.75}.scope-panel>.pill{margin-left:auto;align-self:center;font-size:7px}footer{display:flex;justify-content:space-between;gap:20px;padding:25px 2px 30px;font-size:9px;color:var(--muted)}dialog{max-width:580px;width:calc(100% - 32px);background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:18px;padding:32px;box-shadow:0 40px 90px rgba(0,0,0,.45)}dialog::backdrop{background:rgba(0,10,20,.75);backdrop-filter:blur(5px)}dialog h2{font-size:27px;margin:10px 0 16px}dialog p,dialog li{font-size:12px;line-height:1.85;color:var(--muted)}dialog ul{padding-left:20px;margin:15px 0}dialog li{margin:7px 0}dialog .dialog-note{padding:14px;background:var(--bg);border-radius:10px;margin:18px 0}.dialog-close{position:absolute;right:15px;top:15px}.dialog-actions{display:flex;gap:10px;justify-content:end;margin-top:24px}.noscript{padding:25px;position:fixed;inset:0;background:var(--bg);z-index:2000;text-align:center}.labels-urdu [data-ur]{font-family:DemoUrdu,'Segoe UI',sans-serif;letter-spacing:0}.labels-urdu .intro h1{font-size:35px;line-height:1.7;letter-spacing:0}.labels-urdu .eyebrow{font-size:11px}.labels-urdu .stat-label{font-size:10px}.labels-urdu .check-control{font-size:11px}
@media(min-width:1450px){.passage{font-size:29px}.keyboard-key{height:40px}.lesson-button{padding:12px 9px}}
@media(max-width:1120px){.site-header{padding:23px 28px 20px}.shell{padding:0 28px}.app-grid,.progress-grid{grid-template-columns:220px minmax(0,1fr);gap:16px}.preview-note{display:none}.stat-card{padding:13px 13px 11px;min-height:103px}.stat-card strong{font-size:27px}.mode-switch button{padding:8px 7px;font-size:10px}.practice-toolbar{padding:11px 15px}.session-heading{padding:21px 21px 14px}.session-heading h2{font-size:20px}.session-options{padding:0 21px 16px;gap:12px}.keyboard-panel{padding:17px 18px}.keyboard-key{height:34px}.keyboard{gap:5px}.keyboard-row{gap:4px}.keyboard-top{margin-bottom:15px}.scope-panel>.pill{display:none}.history-row{grid-template-columns:minmax(0,1fr) 65px 65px 70px}}
@media(max-width:860px){.app-grid{grid-template-columns:1fr}.lesson-panel{position:static;padding:17px}.panel-heading{padding:0}.panel-heading h2{font-size:17px}.panel-heading .eyebrow{display:none}.language-switch{margin:13px 0 12px;width:270px;max-width:100%}.lesson-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.lesson-button{padding:9px 8px;gap:7px;border-color:color-mix(in srgb,var(--line),transparent 65%)}.lesson-button strong{font-size:10px}.lesson-button small{font-size:8px}.lesson-index{width:22px;height:24px;font-size:9px}.lesson-tip{display:none}.lesson-check{display:none}.stat-grid{gap:10px}.stat-card{padding:15px 17px}.progress-grid{grid-template-columns:190px minmax(0,1fr);gap:16px}.keyboard-key{height:39px}.scope-panel{gap:15px}.intro{padding:29px 0 23px}.intro h1{font-size:38px}.session-options{gap:16px}.passage{font-size:25px}}
@media(max-width:600px){.site-header{padding:19px 17px 17px;gap:10px}.brand{font-size:17px;gap:9px}.brand small{font-size:6px;letter-spacing:1.35px}.brand-mark{height:35px;width:35px;padding:8px 6px;gap:2px}.brand-mark i{height:6px}.header-actions{gap:6px}.theme-control select{max-width:32px;padding:4px;font-size:0}.theme-control select option{font-size:12px}.theme-control select:focus{max-width:145px;font-size:11px}.header-actions .button.subtle{padding:7px;font-size:10px}.header-actions .icon-button{width:28px;height:28px;font-size:14px}.shell{padding:0 16px}.intro{padding:24px 0 20px}.intro .eyebrow{font-size:7px;letter-spacing:1.2px}.intro h1{font-size:32px;letter-spacing:-1.3px}.intro p{font-size:11px;line-height:1.8}.lesson-panel{padding:15px 13px;border-radius:12px}.lesson-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.lesson-button{min-height:55px}.lesson-button strong{font-size:10px}.language-switch{width:100%;margin-top:12px}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-bottom:12px}.stat-card{padding:12px 8px 10px;min-height:95px;border-radius:9px}.stat-label{font-size:6px;letter-spacing:.8px}.stat-card strong{font-size:23px}.stat-card>div{gap:3px;margin-top:7px}.stat-card>div>span{font-size:7px}.stat-card small{font-size:7px;line-height:1.4;display:block}.practice-toolbar{padding:9px 10px;gap:5px;flex-wrap:wrap}.mode-switch{flex:1;gap:2px}.mode-switch button{gap:4px;padding:8px 6px;font-size:9px}.mode-switch button>span:first-child{font-size:13px}.restart-button{padding:5px 6px;font-size:8px;gap:4px}.restart-button>span:first-child{font-size:14px}.session-heading{padding:19px 15px 13px;align-items:start;gap:8px}.session-heading h2{font-size:19px}.state-badge{font-size:6px;letter-spacing:.6px;padding:5px;white-space:normal;text-align:center;max-width:92px}.session-options{padding:0 15px 15px;gap:11px 12px}.check-control{font-size:9px}.check-control input{height:12px;width:12px}.typing-stage{margin:0 11px 13px;border-radius:9px}.passage-caption{padding:12px 13px 0;font-size:6px;letter-spacing:.8px}.passage{padding:15px 13px 18px;font-size:22px;line-height:1.9;min-height:132px}.passage.urdu{font-size:27px;line-height:2}.typing-stage textarea{font-size:10px;padding-left:13px;min-height:46px;height:46px}.input-help{font-size:8px;padding:8px 13px 10px}.keyboard-panel{padding:16px 10px;margin-top:12px;border-radius:12px;overflow:hidden}.keyboard-top{gap:8px;margin-bottom:17px;padding:0 4px}.key-cap{min-width:36px;height:38px;font-size:20px;border-radius:8px}.next-key-group{gap:9px}.next-key-group strong{font-size:10px}.next-key-group small{font-size:7px;max-width:180px}.keyboard-meta .keyboard-help{display:none}.keyboard-meta .pill{font-size:6px;padding:4px 5px;letter-spacing:.6px}.keyboard-row{gap:2px}.keyboard{gap:4px}.keyboard-key{height:33px;font-size:9px;border-radius:4px;border-bottom-width:2px}.keyboard-key.wide,.keyboard-key.extra-wide{font-size:6px}.keyboard-key.space{font-size:6px}.keyboard-key.anchor::after{width:6px;bottom:4px}.keyboard.blind .keyboard-key:not(.wide):not(.extra-wide):not(.space){color:transparent}.progress-section{padding-top:26px}.section-heading{align-items:center;gap:12px}.section-heading h2{font-size:19px;max-width:230px}.section-heading .eyebrow{font-size:6px;letter-spacing:1px}.section-heading>.button{font-size:8px;padding:7px}.progress-grid{grid-template-columns:1fr;gap:12px}.progress-total{min-height:auto;display:grid;grid-template-columns:30px 55px minmax(0,1fr);gap:10px;padding:16px 18px;align-items:center}.progress-total .total-icon{margin:0}.progress-total>strong{font-size:28px}.progress-total>span:not(.total-icon){font-size:10px;margin:0}.progress-total>small{grid-column:3;margin:0;font-size:8px}.history-panel{padding:17px 18px;min-height:150px}.history-row{grid-template-columns:minmax(0,1fr) 55px 52px 62px;font-size:9px;gap:6px}.history-row strong{font-size:10px}.history-row>span.speed{font-size:11px}.scope-panel{margin-top:22px;padding:19px 17px;align-items:start;gap:12px}.scope-symbol{font-size:23px}.scope-panel h2{font-size:13px;line-height:1.4}.scope-panel p{font-size:9px}.scope-panel>.pill{display:none}footer{font-size:8px;flex-direction:column;gap:5px;padding:21px 0 25px}.session-summary{padding:15px 13px;gap:9px;flex-wrap:wrap}.session-summary strong{font-size:12px}.session-summary p{font-size:9px}.session-summary>.button{margin-left:39px;font-size:9px}.summary-icon{width:29px;height:29px}.rocket-stage{margin:0 11px 14px;padding:12px 13px}.race-caption{font-size:6px}.race-caption strong{font-size:8px}.rocket-stage p{font-size:8px}.race-track{height:58px}.rocket{font-size:31px}.race-stars{font-size:15px;letter-spacing:10px}.finish-flag{font-size:31px}dialog{padding:27px 22px}dialog h2{font-size:23px}dialog p,dialog li{font-size:11px}.labels-urdu .intro h1{font-size:29px}.labels-urdu .eyebrow{font-size:9px}.labels-urdu .stat-label{font-size:8px}.labels-urdu .check-control{font-size:10px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.ambient{display:none}}
