@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+Devanagari:wght@400;500;600;700;800&display=swap");*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }
/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--font-noto),sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.container-app{max-width:64rem}.container-app,.container-marketing{width:100%;margin-inline:auto;padding-inline:1rem}.container-marketing{max-width:72rem}@media(min-width:640px){.container-app,.container-marketing{padding-inline:1.5rem}}.btn{display:inline-flex;height:2.25rem;align-items:center;justify-content:center;gap:.5rem;border:1px solid transparent;border-radius:.5rem;background:#bd1935;padding-inline:.75rem;color:#fff;font-size:.875rem;font-weight:600;box-shadow:0 1px 2px #10243b1a;transition:background-color .15s ease}.btn:hover{background:#9f1230}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-quiet{border-color:#e2e8f0;background:#fff;color:#334155}.btn-quiet:hover{background:#f8fafc}.card{border:1px solid #e2e8f0;border-radius:.5rem;background:#fff;padding:1rem;box-shadow:0 1px 2px #10243b12}@media(min-width:640px){.card{padding:1.25rem}}.sr-only{border-width:0}.block{display:block}.inline{display:inline}.flex{display:flex}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{--crimson:#bd1935;--ink:#10243b;--muted:#68798b;--line:#e7e9ed}*{box-sizing:border-box}body{margin:0;background:#fffaf4;font-family:Noto Sans Devanagari,system-ui,sans-serif}a{color:inherit;text-decoration:none}.container{width:min(1160px,calc(100% - 40px));margin:auto}.site-header{background:#fff;position:sticky;top:0;z-index:5}.nav{height:70px;justify-content:space-between;gap:20px}.brand,.nav{display:flex;align-items:center}.brand{font-weight:800;color:var(--ink);font-size:1.25rem;gap:9px}.brand-mark{width:36px;height:36px;display:grid;place-items:center;background:var(--crimson);border-radius:11px;color:#fff;font-size:22px}.nav-links{display:flex;gap:24px;color:#435366;font-size:.94rem}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--crimson);border:0;color:#fff;padding:12px 19px;border-radius:10px;font:inherit;font-weight:700;cursor:pointer}.button.secondary{color:var(--ink);background:#eef2f6}.button.subtle{padding:7px 12px;background:#edf1f5;color:var(--ink)}.button.small{padding:7px 12px;font-size:.85rem;margin-left:8px}.hero{padding:70px 0 58px}.hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:50px}.eyebrow{color:var(--crimson);font-weight:700;letter-spacing:.04em}.hero h1{font-size:clamp(2.3rem,5vw,4.1rem);line-height:1.17;margin:15px 0}.hero p,.muted{color:var(--muted);line-height:1.8}.hero-actions{display:flex;gap:12px;margin:25px 0}.demo-card,.feature-card,.lesson-card,.practice-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 12px 38px #1631510c}.demo-line{font-size:1.7rem;color:var(--ink);padding:18px 0}.demo-caret{color:var(--crimson);animation:blink 1s infinite}@keyframes blink{50%{opacity:0}}.section{padding:58px 0}.section h2{font-size:2rem;color:var(--ink);margin:0 0 12px}.section-head{text-align:center;max-width:680px;margin:0 auto 32px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature-card h3{color:var(--ink);margin:5px 0}.feature-icon{font-size:28px}.level-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.level-card{background:#fff;border-radius:16px;padding:24px;border:1px solid var(--line)}.level-number{font-size:2.2rem;color:var(--crimson);font-weight:800}.split{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.keyboard-wrap{overflow:auto;padding:8px 0}.keyboard{min-width:570px;display:grid;gap:5px}.key-row{gap:5px}.key,.key-row{display:flex;justify-content:center}.key{width:42px;height:47px;background:#f4f6f8;border:1px solid #dfe3e8;border-radius:7px;flex-direction:column;align-items:center;position:relative;color:#283a4e;font-size:.85rem}.key small{font-size:.6rem;color:#8a96a3;height:10px}.key i{position:absolute;bottom:1px;font-style:normal;color:#8d9aa9}.key-active{background:#ffe7eb;border-color:var(--crimson);color:var(--crimson);box-shadow:0 0 0 2px #bd193525}.space-key{width:240px}.practice-card{padding:22px}.practice-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.practice-toolbar select{border:1px solid var(--line);padding:8px;border-radius:8px;margin-left:7px;background:#fff}.target-text{font-size:1.8rem;line-height:2.1;padding:22px 10px;color:#34465b}.typed-correct{color:#279766}.typed-wrong{color:#d5233e;background:#ffe1e6}.typing-input{width:100%;height:85px;border:1px solid #d9dfe6;border-radius:10px;padding:13px;font:inherit;font-size:1.15rem;resize:vertical}.live-stats{display:flex;gap:24px;margin:14px 0;color:var(--ink);font-weight:700}.result-banner{background:#eff9f3;border:1px solid #cdebd8;padding:14px;border-radius:10px;margin:15px 0}.hint{color:var(--muted);font-size:.88rem}.lesson-list{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:25px 0}.lesson-card h3{margin:0;color:var(--ink)}.lesson-card p{color:var(--muted)}.site-footer{padding:34px 0;background:var(--ink);color:#e8edf4}.footer-row{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.faq details{background:#fff;padding:17px;border-radius:10px;border:1px solid var(--line);margin:9px 0}.blurred{filter:blur(4px);-webkit-user-select:none;-moz-user-select:none;user-select:none}.auth-card{max-width:480px;margin:56px auto;padding:28px;background:#fff;border-radius:16px}.auth-card input{display:block;width:100%;margin:12px 0;padding:12px;border:1px solid var(--line);border-radius:8px}@media(max-width:760px){.nav-links{display:none}.hero-grid,.split{grid-template-columns:1fr;gap:26px}.hero{padding:42px 0}.cards,.lesson-list,.level-grid{grid-template-columns:1fr}.container{width:min(100% - 28px,1160px)}.target-text{font-size:1.4rem}}.lesson-sections{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:28px 0}.lesson-card{position:relative;display:grid;grid-template-columns:72px 1fr;align-items:center;gap:12px;min-height:190px;transition:transform .2s ease,box-shadow .2s ease;animation:card-in .3s ease both}.lesson-card:hover:not(.lesson-locked){transform:translateY(-4px);box-shadow:0 18px 42px #16315118}.lesson-glyph{display:grid;place-items:center;width:70px;height:70px;border-radius:20px;background:linear-gradient(140deg,#fff0f2,#e9f0f9);color:var(--crimson);font-size:2.5rem}.lesson-card-meta h3{margin:0;color:var(--ink);font-size:1.08rem}.lesson-card-meta p{margin:6px 0;font-size:.92rem;overflow:hidden}.lesson-badge{display:inline-block;border-radius:99px;padding:4px 9px;background:#eef2f6;color:#586b80;font-size:.78rem}.lesson-completed .lesson-badge{background:#e8f7ef;color:#1a8051}.lesson-locked{opacity:.62}.lesson-locked:after{content:"🔒";position:absolute;inset:0;display:grid;place-items:center;background:#10243b22;border-radius:18px;font-size:2rem;pointer-events:none}.lesson-stars{position:absolute;right:22px;top:16px;color:#e2a51a}.lesson-card .button{grid-column:1/-1;width:100%;margin-top:4px}.progress-summary{display:flex;flex-wrap:wrap;gap:12px 24px;padding:18px 22px;border-radius:16px;background:linear-gradient(110deg,#fff0f2,#eef4fb);color:var(--ink);margin:22px 0}.lesson-skeleton{height:190px;border-radius:18px;background:linear-gradient(90deg,#edf0f4 25%,#f7f8fa 40%,#edf0f4 60%);background-size:220% 100%;animation:shimmer 1.2s infinite}.lesson-player{max-width:1152px;padding:36px 0 56px}.player-top{display:flex;align-items:center;gap:20px;justify-content:space-between;flex-wrap:wrap;margin-bottom:20px}.player-top h1{font-size:clamp(1.5rem,3vw,2.25rem);color:var(--ink);margin:3px 0}.player-progress{height:8px;background:#e9edf2;border-radius:99px;overflow:hidden}.player-progress>span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--crimson),#e76c7f);transition:width .25s ease}.typing-card{min-height:300px;margin:22px 0 18px;padding:24px 30px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(150deg,#fff,#fff9f7);box-shadow:0 16px 48px #10243b0d;transition:background-color .25s ease}.target-large{font-size:clamp(2.25rem,5vw,3.5rem);line-height:1.75;min-height:190px}.pending-char{color:#a8b1bc}.current-char{color:var(--ink);background:#ffe8ec;border-radius:5px;animation:caret-pulse 1s ease-in-out infinite alternate}.player-input{height:64px;resize:none;background:#fff}.player-top .live-stats{display:flex;gap:10px}.player-top .live-stats span{padding:8px 12px;border-radius:99px;background:#edf2f7;color:var(--ink);font-size:.88rem}.keyboard-wrap{overflow-x:auto;padding:12px 0}.keyboard{min-width:0;width:100%;max-width:900px;margin:0 auto;gap:7px}.key-row{gap:clamp(3px,.65vw,8px)}.key{flex:1;width:auto;height:clamp(42px,5.5vw,58px);border-radius:10px;box-shadow:0 3px 0 #d9dee5;background:#f7f8fa;transition:transform .12s ease,opacity .2s ease,background-color .12s ease}.key-active{background:#eaf0ff;border-color:#5573aa;color:#1d3c69;animation:expected-pulse 1s ease-in-out infinite alternate}.key-correct{background:#c9f4db!important;border-color:#29a66a!important;box-shadow:0 1px 0 #8ecba8!important}.key-correct,.key-wrong{transform:translateY(2px)}.key-wrong{background:#ffd5dc!important;border-color:#d72d49!important;box-shadow:0 1px 0 #d99aa5!important}.finger-legend{font-size:.75rem;color:var(--muted);text-align:center;margin-top:10px}.modal-backdrop{position:fixed;inset:0;display:grid;place-items:center;background:#10243b88;z-index:20;padding:18px}.completion-modal{max-width:500px;width:100%;padding:32px;border-radius:22px;background:#fff;text-align:center;box-shadow:0 24px 80px #08182a44;animation:card-in .25s ease}.completion-modal h2{font-size:2.5rem;color:#e2a51a;margin:8px}.modal-actions{display:flex;justify-content:center;gap:10px;margin-top:18px}.sentence-progress{display:flex;align-items:center;gap:16px;margin-top:22px}.sentence-progress .player-progress{flex:1}.sentence-success{background:#f2fff7;border-color:#a4dfba}.inline-summary{max-width:none;margin:28px 0}.mobile-hint{display:none}.current-char,.key-active,.key-correct,.key-wrong{will-change:transform,opacity}@keyframes caret-pulse{to{box-shadow:0 0 0 3px #bd19352b}}@keyframes expected-pulse{to{box-shadow:0 0 0 3px #5573aa38}}@keyframes card-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{to{background-position:-220% 0}}@media(max-width:900px){.lesson-sections{grid-template-columns:repeat(2,minmax(0,1fr))}.key{height:44px}.key i{display:none}}@media(max-width:600px){.lesson-sections{grid-template-columns:1fr}.lesson-player{padding-top:22px}.typing-card{padding:18px 14px;min-height:260px}.target-large{font-size:clamp(1.9rem,9vw,2.6rem);line-height:1.7}.player-top{align-items:flex-start}.player-top .live-stats{width:100%}.keyboard{min-width:680px}.keyboard-wrap{margin-inline:-8px}.mobile-hint{display:block}.lesson-card{min-height:170px}.progress-summary{gap:8px 14px}}@media(prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}@media(prefers-color-scheme:dark){:root{--ink:#e7edf6;--muted:#aab8c8;--line:#29384a}body{background:#101923;color:#e8edf3}.auth-card,.completion-modal,.demo-card,.faq details,.feature-card,.lesson-card,.practice-card,.site-header,.typing-card{background:#172331;color:#e8edf3}.lesson-glyph{background:linear-gradient(140deg,#39242c,#24364b)}.progress-summary{background:linear-gradient(110deg,#33222a,#1b2c40)}.typing-card{background:linear-gradient(150deg,#172331,#1a2734)}.player-input,.practice-toolbar select{background:#111c28;color:#e8edf3;border-color:#35475b}.key{background:#263444;color:#dbe5ef;border-color:#394b5e;box-shadow:0 3px 0 #17212d}.key-active{background:#263b5a;color:#dbe9ff}.player-top .live-stats span{background:#263444;color:#dbe5ef}.button.secondary,.button.subtle{background:#2a3949;color:#edf3fa}.current-char{color:#f5f8ff;background:#5a2834}.pending-char{color:#738298}.player-progress{background:#293848}}.typing-surface-wrap{width:100%}.typing-surface{position:relative;height:390px;min-height:390px;max-height:390px;overflow:auto;outline:none;cursor:text;white-space:pre-wrap;overflow-wrap:anywhere;scroll-behavior:smooth;transition:filter .15s ease,border-color .15s ease}.typing-surface:focus-visible{border-color:#8ca6cc;box-shadow:0 0 0 3px #5573aa24}.typing-surface.is-blurred .grapheme-target{filter:blur(2px);-webkit-user-select:none;-moz-user-select:none;user-select:none}.typing-focus-overlay{position:absolute;inset:0;display:grid;place-items:center;padding:24px;text-align:center;color:#fff;font-weight:700;font-size:1.1rem;background:#10243b92;border-radius:22px;cursor:pointer;backdrop-filter:blur(2px)}.grapheme-target{white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal;padding:18px 4px}.grapheme-target>span{transition:color .12s ease,background-color .12s ease,opacity .12s ease;scroll-margin:55px}.grapheme-target .current-char{text-decoration:underline;text-decoration-color:var(--crimson);text-decoration-thickness:3px;text-underline-offset:8px;animation:none}.grapheme-target [data-partial=true]{background:linear-gradient(transparent 55%,#f4cf6b75 0);border-radius:4px}.grapheme-target .typing-space{display:inline-block;min-width:.32em}.grapheme-target .typing-space.typed-wrong:after{content:"·";color:#d5233e;background:#d5233e18;border-radius:50%;position:absolute;transform:translateX(-.35em)}.setting-toggle{display:inline-flex;align-items:center;gap:7px;color:var(--ink);font-size:.9rem}.setting-toggle input{accent-color:var(--crimson);width:16px;height:16px}.typing-card{scroll-margin-top:84px}@media(max-width:600px){.typing-surface{height:340px;min-height:340px;max-height:340px;padding:14px}.typing-focus-overlay{font-size:1rem}}@media(prefers-reduced-motion:reduce){.grapheme-target>span,.typing-surface{scroll-behavior:auto;transition:none!important}.grapheme-target .current-char{animation:none!important}}@media(prefers-color-scheme:dark){.typing-focus-overlay{background:#08111dcc}.grapheme-target [data-partial=true]{background:linear-gradient(transparent 55%,#92732188 0)}.setting-toggle{color:#e7edf6}}.grapheme-target .current-char{text-decoration:none;position:relative}.grapheme-target .current-char:after{content:"";position:absolute;left:0;right:0;bottom:.08em;height:3px;background:var(--crimson);transform:scaleX(1);transform-origin:left;opacity:1;animation:typing-caret 1s ease-in-out infinite alternate}.grapheme-target .typing-space{position:relative}@keyframes typing-caret{to{opacity:.35;transform:scaleX(.72)}}@media(prefers-reduced-motion:reduce){.grapheme-target .current-char:after{animation:none;opacity:1}}+:root{--crimson:#bd1935;--ink:#10243b;--muted:#68798b;--line:#e7e9ed;--surface:#fff;--page:#fffaf4}+:root,body,html{font-size:16px}body{background:var(--page);color:#1b2938;line-height:1.5}.container{width:min(1024px,calc(100% - 32px));margin-inline:auto}.container.container-marketing{max-width:1152px}.section{padding-block:36px}.section-compact{padding-block:24px}.site-header{height:56px;background:var(--surface);border-bottom:1px solid var(--line);z-index:50}.site-header .nav{height:56px;gap:16px}.brand{font-size:16px;gap:7px;white-space:nowrap}.brand-mark{width:24px;height:24px;border-radius:7px;font-size:16px}.nav-links{gap:18px;font-size:14px;white-space:nowrap}.nav-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.mobile-drawer select,.nav-actions select{height:32px;max-width:130px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);padding:0 7px;font-size:12px}.nav-hamburger,.nav-icon,.nav-language{width:32px;height:32px;padding:0;border:0;border-radius:7px;background:transparent;color:var(--ink);cursor:pointer}.nav-icon{font-size:18px}.nav-language{font-size:13px;font-weight:700}.leaderboard-link{display:inline-flex;align-items:center;gap:5px}.leaderboard-link svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}.guest-actions{display:flex;gap:6px}.guest-actions .btn{height:34px;padding-inline:10px;font-size:13px}.avatar-menu{position:relative}.avatar-button{width:32px;height:32px;border:0;border-radius:50%;background:#e9eef5;color:var(--ink);font-weight:700;overflow:hidden;cursor:pointer}.avatar-button img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.avatar-dropdown{position:absolute;right:0;top:40px;z-index:60;display:grid;min-width:190px;gap:4px;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--surface);box-shadow:0 8px 24px #10243b20;font-size:13px}.avatar-dropdown>*{padding:7px 8px}.avatar-dropdown button{border:0;background:none;text-align:left;color:inherit;font:inherit;cursor:pointer}.mobile-drawer,.nav-hamburger{display:none}.hero{min-height:min(70vh,620px);padding:42px 0;background:radial-gradient(ellipse at 85% 35%,#f8dce1 0,transparent 35%),linear-gradient(180deg,#fffaf4,#fff)}.hero-grid{gap:36px}.hero h1{font-size:clamp(2.25rem,4vw,3rem);line-height:1.2;margin:10px 0;color:var(--ink)}.hero h2{font-size:18px!important;margin:0 0 12px}.hero p{font-size:15px;line-height:1.65;margin:8px 0}.hero-actions{gap:8px;margin:16px 0}.button,.hero .button{height:38px;padding:0 14px;border-radius:8px;font-size:14px}.button.secondary{background:#edf1f5}.demo-card,.feature-card,.lesson-card,.level-card,.practice-card{border-radius:9px;padding:16px;box-shadow:0 2px 10px #1631510a}.demo-line{font-size:24px;padding:12px 0}.demo-card .keyboard{max-width:100%}.section h2{font-size:24px;margin-bottom:8px}.section-head{margin-bottom:22px}.cards,.level-grid{gap:12px}.level-card{padding:16px}.level-number{font-size:28px}.section.faq{padding-block:40px}.site-footer{padding:22px 0;font-size:13px}.footer-row{gap:14px}.lesson-player{max-width:1024px;padding:12px 0 20px}.player-top{gap:12px;margin:0 0 8px}.player-top h1{font-size:20px;line-height:1.25}.player-top .live-stats{gap:6px}.player-top .live-stats span{padding:4px 8px;font-size:12px}.player-progress{height:4px}.typing-surface{height:188px!important;min-height:188px!important;max-height:188px!important;margin:12px auto 8px!important;padding:10px 16px!important;max-width:820px;border-radius:9px}.grapheme-target{max-width:800px;margin:auto;padding:4px 0;font-size:clamp(24px,2vw,30px);line-height:1.8;min-height:100%;text-align:left}.practice-toolbar{gap:8px;font-size:13px}.practice-toolbar select{height:32px;padding:4px 7px;font-size:13px}.keyboard-wrap{max-width:760px;margin:0 auto;padding:6px 0}.keyboard{max-width:760px;gap:4px}.key-row{gap:4px}.key{height:42px;min-width:0;border-radius:6px;font-size:13px;box-shadow:0 2px 0 #d9dee5}.key small{height:9px;font-size:9px}.key i{font-size:6px}.key.space-key{flex:5}.finger-legend{margin-top:4px;font-size:10px}.lesson-sections{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}.lesson-card{grid-template-columns:42px 1fr;gap:8px;min-height:152px;padding:12px}.lesson-glyph{width:40px;height:40px;border-radius:9px;font-size:28px}.lesson-card-meta h3{font-size:14px;padding-right:28px}.lesson-card-meta p{font-size:11px;margin:3px 0;line-height:1.3}.lesson-badge{padding:2px 6px;font-size:10px}.lesson-stars{top:9px;right:10px;font-size:11px}.lesson-card .button{height:32px;margin-top:0;font-size:12px}.progress-summary{padding:10px 14px;gap:8px 16px;margin:12px 0;font-size:13px;border-radius:9px}.lesson-skeleton{height:152px;border-radius:9px}.auth-page{display:grid;min-height:calc(100svh - 56px);place-items:start center;padding-block:28px}.auth-card{width:min(100%,420px);margin:0;padding:20px;border-radius:10px;background:var(--surface);border:1px solid var(--line);box-shadow:0 4px 20px #10243b12}.auth-card h1{margin:0 0 4px;font-size:24px;color:var(--ink)}.auth-card .muted{margin:0 0 14px;font-size:14px}.oauth-stack{display:grid;gap:8px}.oauth-button{display:flex;width:100%;height:40px;align-items:center;justify-content:center;gap:9px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);font-size:14px;font-weight:600;cursor:pointer}.oauth-mark{display:grid;width:19px;height:19px;place-items:center;border-radius:50%;font-weight:800}.oauth-google{color:#4285f4}.oauth-github{color:#111}.oauth-facebook{background:#1877f2;color:#fff}.auth-divider{display:flex;align-items:center;gap:10px;margin:14px 0;color:var(--muted);font-size:12px}.auth-divider:after,.auth-divider:before{content:"";height:1px;flex:1;background:var(--line)}.auth-card form{display:grid;gap:10px}.auth-card form>label{display:grid;gap:4px;color:var(--ink);font-size:13px;font-weight:600}.auth-card form input:not([type=checkbox]){width:100%;height:38px;margin:0;padding:7px 10px;border:1px solid #cbd4df;border-radius:7px;background:var(--surface);color:var(--ink);font:inherit;font-size:14px}.auth-inline{display:flex;justify-content:space-between;align-items:center;font-size:12px}.auth-foot a,.auth-inline a,.terms-check a{color:var(--crimson);font-weight:600}.check-label{display:flex;align-items:center;gap:6px;font-size:12px}.check-label input{accent-color:var(--crimson)}.terms-check{flex-wrap:wrap;line-height:1.5}.password-field{display:flex;position:relative}.password-field input{padding-right:52px!important}.password-field button{position:absolute;right:5px;top:4px;height:30px;border:0;background:transparent;color:var(--muted);font-size:12px;cursor:pointer}.password-hint{font-size:11px;color:var(--muted);font-weight:400}.auth-submit{width:100%;height:40px;margin-top:2px}.auth-foot{margin:14px 0 0;text-align:center;font-size:13px}.form-error,.form-success{padding:8px 10px;border-radius:7px;font-size:13px}.form-error{background:#fff0f1;color:#b4233c}.form-success{background:#edf9f1;color:#217347}.auth-prompt-modal{position:relative;display:grid;gap:10px;width:min(100%,360px);padding:24px;border-radius:12px;background:var(--surface);text-align:center;box-shadow:0 20px 60px #08182a40}.auth-prompt-modal h2{margin:0;font-size:22px}.auth-prompt-modal p{margin:0 0 4px;color:var(--muted);font-size:14px}.modal-close{position:absolute;right:12px;top:7px;font-size:24px;color:var(--muted)}.leaderboard-trophy{font-size:28px}.section-heading h1{font-size:26px;margin:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:1500px){.lesson-sections{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:900px){.lesson-sections{grid-template-columns:repeat(3,minmax(0,1fr))}.nav-links{gap:10px}.nav-actions{gap:4px}.nav-layout select{max-width:110px}}@media(max-width:700px){.site-header .nav{gap:8px}.nav-actions>.avatar-menu,.nav-actions>.guest-actions,.nav-actions>.nav-icon,.nav-actions>.nav-language,.nav-actions>.nav-layout,.nav-links{display:none}.nav-hamburger{display:grid;align-content:center;justify-content:center;gap:4px}.nav-hamburger span{display:block;width:18px;height:2px;background:var(--ink)}.mobile-drawer{position:absolute;top:56px;left:0;right:0;display:grid;gap:2px;padding:10px 16px 14px;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:0 8px 20px #10243b14}.mobile-drawer>a,.mobile-drawer>button,.mobile-drawer>label{padding:9px 6px;border:0;background:transparent;color:var(--ink);font:inherit;text-align:left}.mobile-drawer>label{display:grid;grid-template-columns:75px 1fr;align-items:center}.mobile-drawer select{max-width:100%}.hero{min-height:auto;padding:28px 0}.hero-grid{grid-template-columns:1fr;gap:20px}.hero h1{font-size:32px}.demo-card{display:none}.section{padding-block:28px}.lesson-sections{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-card{min-height:144px}.player-top .live-stats{width:auto}.typing-surface{height:174px!important;min-height:174px!important;max-height:174px!important}.keyboard-wrap{max-width:100%;padding-inline:0}.keyboard{gap:3px}.key-row{gap:2px}.key{height:34px;padding:0;font-size:10px}.key small{font-size:7px}.key i{display:none}.keyboard-wrap .keyboard{min-width:0}.practice-toolbar{align-items:center}.live-stats{gap:8px;font-size:12px}.auth-page{padding-block:18px}.auth-card{padding:16px}}@media(max-width:380px){.brand{font-size:14px}.lesson-card{grid-template-columns:34px 1fr;padding:9px;gap:6px}.lesson-glyph{width:34px;height:34px;font-size:24px}.lesson-card-meta h3{font-size:12px}.lesson-stars{font-size:9px}.player-top{gap:6px}.player-top .live-stats span{font-size:10px;padding:3px 5px}.key{height:30px;font-size:9px}}html.dark{--ink:#e7edf6;--muted:#aab8c8;--line:#29384a;--surface:#172331;--page:#101923;color-scheme:dark}html.dark body{background:var(--page);color:#e8edf3}html.dark .auth-card,html.dark .auth-prompt-modal,html.dark .card,html.dark .mobile-drawer,html.dark .site-header{background:var(--surface);color:#e8edf3}html.dark .auth-card form input:not([type=checkbox]),html.dark .mobile-drawer select,html.dark .nav-actions select{background:#111c28;color:#e8edf3;border-color:#35475b}html.dark .btn-quiet{background:#263444;color:#e8edf3;border-color:#3b4b5d}html.dark .oauth-button{background:#172331;color:#e8edf3}html.dark .key{background:#263444;color:#dbe5ef;border-color:#394b5e;box-shadow:0 2px 0 #17212d}html.dark .key-active{background:#263b5a;color:#dbe9ff}html.dark .player-top .live-stats span{background:#263444;color:#dbe5ef}html.dark .progress-summary{background:linear-gradient(110deg,#33222a,#1b2c40)}html.dark .lesson-glyph{background:linear-gradient(140deg,#39242c,#24364b)}html.dark .form-success{background:#163727;color:#b7edca}html.dark .form-error{background:#3a2028;color:#ffc2ca}html.light{color-scheme:light;--ink:#10243b;--muted:#68798b;--line:#e7e9ed;--surface:#fff;--page:#fffaf4}html.light body{background:var(--page);color:#1b2938}html.light .auth-card,html.light .auth-prompt-modal,html.light .site-header{background:var(--surface);color:#1b2938}.footer-columns{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:18px}.footer-columns>div{display:grid;align-content:start;gap:4px}.footer-columns p{margin:2px 0;color:#bdc7d3}.footer-columns a{color:#d7dfe8}.auth-modal-shell{position:relative;width:min(100%,460px);max-height:calc(100svh - 32px);overflow:auto;border-radius:12px}.auth-modal-shell .auth-card{width:100%;max-height:none;box-shadow:none}.auth-modal-close{position:absolute;right:10px;top:8px;z-index:3;width:30px;height:30px;border:0;border-radius:7px;background:#f1f3f6;color:#34465b;font-size:21px;cursor:pointer}.typing-footer-hints{display:flex;justify-content:space-between;gap:12px;max-width:800px;margin:2px auto 8px;color:var(--muted);font-size:11px}.keyboard-toggle{height:32px;padding:0 9px;font-size:12px}.timer-result{width:min(100%,640px);margin:10px auto;padding:16px;text-align:center}.result-numbers{display:flex;justify-content:center;gap:40px;margin-bottom:6px}.result-numbers strong{display:block;color:var(--ink);font-size:clamp(32px,5vw,48px);line-height:1.05}.result-numbers span{color:var(--muted);font-size:12px}.wpm-chart{display:block;width:100%;height:76px;margin:8px auto 12px}.wpm-chart polyline{fill:none;stroke:var(--crimson);stroke-width:2}.result-actions{display:flex;justify-content:center;gap:8px}.result-actions .btn{min-width:82px}.lesson-card .btn,.lesson-card .button{height:32px}.auth-page>.form-success{width:min(100%,420px);margin-bottom:10px}html.dark .auth-modal-close{background:#263444;color:#e7edf6}html.light .hero{background:radial-gradient(ellipse at 85% 35%,#f8dce1 0,transparent 35%),linear-gradient(180deg,#fffaf4,#fff)}html.light .button.secondary{background:#edf1f5;color:#10243b}html.light .demo-card,html.light .feature-card,html.light .level-card,html.light .typing-card{background:#fff}@media(max-width:700px){.footer-columns{grid-template-columns:repeat(2,1fr)}.footer-columns>div:first-child{grid-column:1/-1}.typing-footer-hints{font-size:10px;gap:4px}.result-numbers{gap:24px}}.section h1{font-size:28px;line-height:1.2;margin:0 0 8px;color:var(--ink)}@media(max-width:700px){.keyboard{min-width:0}}html.dark .hero{background:radial-gradient(ellipse at 85% 35%,#35242b 0,transparent 35%),linear-gradient(180deg,#101923,#121d29)}html.dark main>section[style]{background:#131e2a!important}