:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#080b10;--bg-2:#0d121a;--panel:#fff1;--panel-strong:#ffffff1b;--text:#eef4fb;--muted:#9aa8b8;--line:#ffffff1f;--accent:#7dd3fc;--accent-2:#818cf8;--success:#34d399;--warning:#fbbf24;--error:#fb7185;--shadow:0 24px 80px #0000005c;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f7f9fc;--bg-2:#fff;--panel:#09101c0e;--panel-strong:#09101c17;--text:#101828;--muted:#596579;--line:#09101c21;--accent:#0369a1;--accent-2:#4f46e5;--shadow:0 18px 50px #121d311f}:root[data-contrast=true]{--panel:#ffffff24;--line:#ffffff52;--muted:#d1d9e4}*{box-sizing:border-box}html,body,#root{max-width:100%;overflow-x:hidden}body{background:radial-gradient(circle at 20% 0%, #7dd3fc1f, transparent 26rem), var(--bg);min-width:320px;margin:0}button,input,select,textarea{font:inherit}button,.button,select{border:1px solid var(--line);background:var(--panel);min-height:42px;color:var(--text);border-radius:8px;padding:.62rem .85rem}button,.button{cursor:pointer;justify-content:center;align-items:center;gap:.45rem;display:inline-flex}button:hover,.button:hover{background:var(--panel-strong)}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid color-mix(in srgb, var(--accent), white 20%);outline-offset:3px}.primary{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#041018;border-color:#0000;font-weight:800}:root[data-theme=light] .primary{color:#fff}.app{min-height:100vh}.topbar{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:color-mix(in srgb, var(--bg), transparent 12%);justify-content:space-between;align-items:center;gap:1rem;padding:1rem clamp(1rem,4vw,3rem);display:flex;position:sticky;top:0}.brand{background:0 0;border:0;flex-direction:column;align-items:flex-start;padding:0;line-height:1}.brand span{letter-spacing:0;font-size:1.25rem;font-weight:900}.brand small{color:var(--muted);margin-top:.25rem}nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.35rem;display:flex}nav button,nav a,nav summary{min-height:36px;color:var(--text);cursor:pointer;border:0;border-radius:8px;align-items:center;padding:.45rem .7rem;text-decoration:none;display:inline-flex}nav button.active,nav a.active{color:var(--accent);background:var(--panel-strong)}.more-tools{position:relative}.more-tools summary{background:var(--panel);border:1px solid var(--line);list-style:none}.more-tools summary::-webkit-details-marker{display:none}.more-tools div{z-index:30;border:1px solid var(--line);background:var(--bg-2);min-width:220px;box-shadow:var(--shadow);border-radius:8px;gap:.2rem;padding:.45rem;display:grid;position:absolute;top:calc(100% + .4rem);right:0}.more-tools div a{justify-content:flex-start}main{padding:clamp(.85rem,3vw,2rem)}.hero{max-width:1180px;min-height:auto;margin:0 auto;padding:clamp(1rem,3vw,2.25rem) 0 .85rem;display:block}.hero-copy h1{letter-spacing:0;max-width:780px;margin:0 0 .7rem;font-size:clamp(2rem,4vw,3.65rem);line-height:1.04}.hero-copy p{color:var(--muted);max-width:740px;font-size:clamp(1rem,1.4vw,1.12rem);line-height:1.58}.hero-copy .tool-copy{margin-top:1.1rem;font-size:.92rem}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:var(--accent)!important;font-size:.78rem!important}.actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.product-preview,.panel,.trainer,.metric,.feature-grid article,.philosophy article{border:1px solid var(--line);background:linear-gradient(180deg, var(--panel-strong), var(--panel));box-shadow:var(--shadow)}.product-preview{border-radius:8px;gap:1.25rem;padding:clamp(1rem,3vw,2rem);display:grid}.metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.metrics.big{grid-template-columns:repeat(6,minmax(0,1fr))}.metric{min-width:0;box-shadow:none;border-radius:8px;padding:.85rem}.metric svg{width:18px;color:var(--accent)}.metric span{color:var(--muted);margin-bottom:.25rem;font-size:.78rem;display:block}.metric strong{color:var(--text);overflow-wrap:anywhere;font-size:clamp(1.05rem,2vw,1.55rem);display:block}.typing-line,.typing-text{border:1px solid var(--line);background:#0000002e;border-radius:8px;font-family:SFMono-Regular,Cascadia Code,Roboto Mono,ui-monospace,monospace}.typing-line{padding:2rem;font-size:clamp(1.4rem,3vw,2.6rem);line-height:1.45}.done,.correct{color:var(--success)}.pending{color:var(--muted)}.incorrect{color:var(--error);text-decoration:underline;text-decoration-thickness:.12em}.corrected{color:var(--warning)}.current{background:color-mix(in srgb, var(--accent), transparent 72%);color:var(--text);border-radius:4px}.cursor{border-bottom:3px solid var(--accent);width:.55em;min-height:1.2em;display:inline-block}.mini-map{grid-template-columns:repeat(5,1fr);gap:.5rem;display:grid}.mini-map span{background:var(--panel-strong);border-radius:999px;height:7px}.mini-map span:nth-child(-n+3){background:var(--accent)}.philosophy,.feature-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;margin-top:3rem;display:grid}.philosophy h2{grid-column:1/-1;max-width:900px;margin:.5rem 0;font-size:clamp(1.75rem,3vw,3rem)}.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.philosophy article,.feature-grid article{box-shadow:none;border-radius:8px;padding:1.15rem}article h3,.panel h2,.finger-guide h2{margin:0 0 .55rem}article p,.panel p,.trainer-head p,.hint{color:var(--muted);line-height:1.65}.workspace,.trainer,.panel,.product-preview,.keyboard,.key-row{min-width:0;max-width:100%}.workspace{grid-template-columns:minmax(240px,320px) minmax(0,1fr);align-items:start;gap:1rem;width:100%;display:grid}.home-test{max-width:1180px;margin:0 auto}.home-test-head{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1rem;display:flex}.home-test-head h2{margin:0 0 .45rem}.home-test-head p{max-width:650px;color:var(--muted);margin:0;line-height:1.6}.home-test .workspace{display:block}.home-test .side{display:none}.duration-picker{flex-wrap:wrap;justify-content:flex-end;gap:.4rem;display:flex}.duration-picker button{min-height:38px;padding:.5rem .7rem;font-size:.85rem}.duration-picker button.active{color:var(--accent);border-color:var(--accent);background:color-mix(in srgb, var(--accent), transparent 88%)}.side{gap:1rem;display:grid;position:sticky;top:92px}.panel,.trainer{border-radius:8px;padding:1rem}.trainer{gap:1rem;display:grid;overflow:hidden}.trainer-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}h1{letter-spacing:0;margin:0 0 .5rem;font-size:clamp(2rem,4vw,4rem)}.key-strip{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.key-strip span{border:1px solid var(--line);background:var(--panel-strong);min-width:38px;min-height:34px;color:var(--text);border-radius:7px;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.typing-text{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;contain:layout paint;cursor:text;outline:none;width:100%;max-width:100%;height:clamp(150px,24vh,230px);min-height:0;padding:clamp(1rem,3vw,2rem);overflow:hidden}.typing-text span{overflow-wrap:anywhere;word-break:break-word}.start-hint{color:var(--muted);margin:-.35rem 0 0;font-size:.86rem}.pause-notice{color:var(--warning);margin:-.35rem 0 0;font-size:.86rem}.edge-fade{color:var(--accent);opacity:.65}.sr-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.keyboard{-webkit-user-select:none;user-select:none;gap:.42rem;display:grid}.key-row{justify-content:center;gap:.42rem;display:flex}.key{border:1px solid var(--line);background:var(--panel);width:min(6.7vw,54px);min-width:30px;height:42px;color:var(--muted);border-radius:7px;justify-content:center;align-items:center;font-family:ui-monospace,monospace;font-size:.84rem;display:flex}.key-row:last-child .key{width:min(42vw,360px)}.compact .key{width:min(4.3vw,36px);height:30px;font-size:.7rem}.target{background:color-mix(in srgb, var(--accent), transparent 45%);color:var(--text);border-color:var(--accent)}.next{box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--warning), transparent 35%)}.last{color:var(--success)}.wrong{background:color-mix(in srgb, var(--error), transparent 60%);color:var(--text)}.left-pinky{border-bottom-color:#f472b6}.left-ring{border-bottom-color:#fb7185}.left-middle{border-bottom-color:#fbbf24}.left-index{border-bottom-color:#34d399}.right-index{border-bottom-color:#22d3ee}.right-middle{border-bottom-color:#60a5fa}.right-ring{border-bottom-color:#a78bfa}.right-pinky{border-bottom-color:#c084fc}.thumbs{border-bottom-color:#94a3b8}.finger-guide{border:1px solid var(--line);background:var(--panel);border-radius:8px;grid-template-columns:220px 1fr;align-items:center;gap:1rem;padding:1rem;display:grid}.hands{grid-template-columns:repeat(9,minmax(0,1fr));gap:.4rem;display:grid}.hands span{border:1px solid var(--line);text-align:center;min-height:58px;color:var(--muted);border-radius:999px 999px 8px 8px;justify-content:center;align-items:center;padding:.35rem;font-size:.78rem;display:flex}.hands span.active{background:color-mix(in srgb, var(--accent), transparent 55%);color:var(--text);border-color:var(--accent)}.lesson{border:1px solid var(--line);text-align:left;border-radius:8px;justify-items:start;gap:.2rem;width:100%;margin-bottom:.5rem;padding:.7rem;display:grid}.lesson-nav{flex-wrap:wrap;justify-content:space-between;gap:.75rem;display:flex}.tool-copy{margin:0;font-size:.9rem}.seo-section{max-width:1180px;margin:clamp(3rem,7vw,6rem) auto 0}.section-intro{max-width:700px;color:var(--muted);line-height:1.65}.indicator-row{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.85rem;margin-top:1.25rem;display:grid}.indicator-row article{border:1px solid var(--line);background:var(--panel);border-radius:8px;min-width:0;padding:1rem}.indicator-row p{margin:.35rem 0 0;font-size:.9rem;line-height:1.55}.link-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:1.25rem;display:grid}.link-grid a{border:1px solid var(--line);min-width:0;color:var(--text);background:var(--panel);border-radius:8px;gap:.35rem;padding:1rem;text-decoration:none;transition:border-color .12s,background .12s;display:grid}.link-grid a:hover{border-color:var(--accent);background:var(--panel-strong)}.link-grid a span{color:var(--muted);font-size:.88rem;line-height:1.5}.compact-links{grid-template-columns:repeat(3,minmax(0,1fr))}.two-column-copy{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;display:grid}.two-column-copy p{color:var(--muted);line-height:1.7}.inline-links{flex-wrap:wrap;gap:.45rem .75rem;display:flex}.inline-links a{color:var(--accent)}.faq-section{max-width:900px;padding-bottom:3rem}.faq-section details{border-top:1px solid var(--line);padding:1rem 0}.faq-section summary{cursor:pointer;font-weight:700}.faq-section details p{max-width:760px;color:var(--muted);margin-bottom:0;line-height:1.65}.ad-slot{border:1px dashed var(--line);min-height:90px;color:var(--muted);place-items:center;margin:2rem auto;font-size:.75rem;display:grid}.legal-page{width:min(820px,100%);margin:0 auto}.legal-page h2{margin-top:2rem}.legal-page p{color:var(--muted);line-height:1.75}.site-footer{border-top:1px solid var(--line);max-width:1180px;color:var(--muted);justify-content:space-between;align-items:center;gap:1rem;margin:0 auto;padding:1.5rem clamp(1rem,4vw,3rem) 2rem;font-size:.82rem;display:flex}.site-footer nav{gap:.15rem}.site-footer a{min-height:30px;color:var(--muted);align-items:center;padding:.3rem .45rem;font-size:.82rem;text-decoration:none;display:inline-flex}.site-footer a:hover{color:var(--accent)}.lesson span,.lesson small{color:var(--muted);font-size:.78rem}.lesson.active{border-color:var(--accent);background:color-mix(in srgb, var(--accent), transparent 88%)}.segment{flex-wrap:wrap;gap:.45rem;margin:.7rem 0;display:flex}.segment button{min-height:34px;font-size:.85rem}.segment .active{color:var(--accent);border-color:var(--accent)}.inline-toggle{color:var(--muted);align-items:center;gap:.5rem;font-size:.9rem;display:inline-flex}.inline-toggle input{accent-color:var(--accent)}.custom,textarea{border:1px solid var(--line);width:100%;min-height:110px;color:var(--text);resize:vertical;background:#00000029;border-radius:8px;padding:.8rem}.result{z-index:50;background:#00000094;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.result-card{border:1px solid var(--line);background:var(--bg-2);width:min(760px,100%);box-shadow:var(--shadow);border-radius:8px;padding:clamp(1rem,4vw,2rem)}.sparkline{width:100%;height:120px;color:var(--accent);background:linear-gradient(180deg, transparent, var(--panel));border-radius:8px;margin:1rem 0}.rhythm-grid,.grid-two,.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.rhythm-page,.dashboard,.settings-page{gap:1rem;display:grid}.coach-title{justify-content:space-between;align-items:center;gap:1rem;display:flex}.coach-title h2{margin:0}.beat{border:1px solid var(--line);background:var(--panel);border-radius:50%;width:180px;height:180px;margin:1rem auto;transition:transform 80ms,background 80ms}.beat.on{background:color-mix(in srgb, var(--accent), transparent 45%);transform:scale(1.08)}.heatmap{color:var(--muted);grid-template-columns:auto 1fr auto;align-items:center;gap:.7rem;display:grid}.heatmap div{background:linear-gradient(90deg, var(--warning), var(--success), var(--error));border-radius:999px;height:8px;position:relative}.heatmap i{background:var(--text);border-radius:50%;width:18px;height:18px;position:absolute;top:50%;transform:translate(-50%,-50%)}.settings-grid label{color:var(--muted);align-items:center;gap:.6rem;margin:.6rem 0;display:flex}.settings-grid h2{align-items:center;gap:.45rem;display:flex}.tool-form label{color:var(--muted);gap:.35rem;margin:.75rem 0;display:grid}.tool-form input,.panel input[type=number]{border:1px solid var(--line);width:100%;min-height:42px;color:var(--text);background:#00000029;border-radius:8px;padding:.55rem .7rem}.certificate{border:1px solid var(--line);background:linear-gradient(180deg, var(--panel-strong), var(--panel));text-align:center;width:min(760px,100%);box-shadow:var(--shadow);border-radius:8px;margin:0 auto;padding:clamp(1.25rem,4vw,2.5rem)}.certificate h2{margin:.25rem 0;font-size:clamp(2.5rem,9vw,5rem)}.certificate small{color:var(--muted);max-width:520px;margin:1rem auto;line-height:1.5;display:block}.utility-test{width:min(980px,100%);margin:0 auto}.data-entry-record{gap:.55rem;display:grid}.data-entry-record .eyebrow{margin:0 0 .35rem}.data-field{color:var(--muted);border:1px solid #0000;border-radius:8px;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:1rem;padding:.75rem .9rem;display:grid}.data-field span{text-transform:uppercase;letter-spacing:.06em;font-size:.82rem}.data-field strong{color:var(--text);overflow-wrap:anywhere;font-family:SFMono-Regular,Cascadia Code,Roboto Mono,ui-monospace,monospace}.data-field.active{border-color:var(--accent);background:color-mix(in srgb, var(--accent), transparent 88%)}.data-entry-input{gap:.55rem;display:grid}.data-entry-input label{color:var(--muted);font-weight:700}.data-entry-input input{border:1px solid var(--accent);width:100%;min-height:48px;color:var(--text);background:#00000029;border-radius:8px;padding:.65rem .8rem;font-family:SFMono-Regular,Cascadia Code,Roboto Mono,ui-monospace,monospace}.numeric-prompt{letter-spacing:.04em;font-size:clamp(1.25rem,3vw,2rem)!important}.inline-result{width:100%}.dashboard>.workspace{max-width:1180px;margin:0 auto}.seo-prerender{border-top:1px solid var(--line);max-width:1180px;margin:clamp(2rem,6vw,4rem) auto;padding-top:1.5rem}.seo-prerender h2{margin:0 0 .75rem;font-size:clamp(1.55rem,3vw,2.5rem)}.seo-prerender p{max-width:820px;color:var(--muted);line-height:1.7}.seo-prerender nav{flex-wrap:wrap;gap:.65rem;margin-top:1rem;display:flex}.seo-prerender nav a{color:var(--accent);border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:.55rem .75rem;text-decoration:none}.seo-prerender nav a:hover{background:var(--panel-strong)}.not-found-page{place-items:center;min-height:100vh;padding:clamp(1rem,4vw,3rem);display:grid}.not-found-page .panel{width:min(900px,100%)}.focus-active main{padding:0}.focus-active .workspace{display:block}.focus-active .side,.focus-active .trainer-head,.focus-active .metrics,.focus-active .keyboard,.focus-active .finger-guide{display:none}.focus-active .trainer{min-height:100vh;box-shadow:none;background:0 0;border:0;border-radius:0;justify-content:center}.focus-active .typing-text{background:0 0;border:0;height:min(55vh,520px)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}:root[data-motion=reduced] *,:root[data-motion=reduced] :before,:root[data-motion=reduced] :after{transition-duration:.01ms!important;animation-duration:.01ms!important}@media (max-width:900px){.hero,.workspace,.rhythm-grid,.grid-two,.settings-grid{grid-template-columns:1fr}.hero{min-height:auto}.home-test-head,.two-column-copy{flex-direction:column;grid-template-columns:1fr;align-items:stretch}.duration-picker{justify-content:flex-start}.indicator-row{grid-template-columns:repeat(3,minmax(0,1fr))}.link-grid,.compact-links{grid-template-columns:repeat(2,minmax(0,1fr))}.side{order:2;position:static}.metrics,.metrics.big,.philosophy,.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finger-guide{grid-template-columns:1fr}.hands{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:520px){main,.topbar{padding:.85rem}.topbar{flex-direction:column;align-items:flex-start}nav{justify-content:flex-start}.metrics,.metrics.big,.philosophy,.feature-grid{grid-template-columns:1fr}.trainer-head{flex-direction:column}.coach-title{flex-direction:column;align-items:flex-start}.hero{padding-top:1.5rem}.hero-copy h1{font-size:clamp(2.15rem,10vw,3rem)}.hero-copy p{font-size:1rem}.home-test-head{align-items:stretch}.duration-picker{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.duration-picker button{width:100%}.indicator-row,.link-grid,.compact-links{grid-template-columns:1fr}.key{width:7.2vw;min-width:22px;height:34px;font-size:.65rem}.typing-text{min-height:150px}.data-field{grid-template-columns:1fr;gap:.25rem}.data-field span{font-size:.72rem}.site-footer{flex-direction:column;align-items:flex-start}}
:root{--content-width:1120px;--soft-line:color-mix(in srgb, var(--line), transparent 28%);--soft-panel:color-mix(in srgb, var(--panel), transparent 18%)}body{background:radial-gradient(circle at 15% -10%, color-mix(in srgb, var(--accent), transparent 91%), transparent 28rem), var(--bg)}.topbar{background:color-mix(in srgb, var(--bg), transparent 5%);border-bottom-color:var(--soft-line);min-height:58px;padding:.62rem clamp(.9rem,3vw,2rem)}.brand span{font-size:1.12rem}.brand small{display:none}nav{gap:.15rem}nav button,nav a,nav summary{min-height:32px;padding:.36rem .58rem;font-size:.88rem}main{padding:clamp(.7rem,1.8vw,1.25rem)}.hero{max-width:var(--content-width);padding:.65rem 0 .55rem}.hero-copy{gap:.2rem;display:grid}.hero-copy .eyebrow{letter-spacing:.1em;margin:0;font-size:.68rem!important}.hero-copy h1,.home .hero-copy h1{letter-spacing:-.025em;max-width:none;margin:0;font-size:clamp(1.45rem,2.6vw,2.15rem);line-height:1.12}.hero-copy>p:not(.eyebrow){max-width:820px;margin:.2rem 0 0;font-size:.92rem;line-height:1.45}.home-test{max-width:var(--content-width)}.home-test-head{align-items:center;gap:.75rem;margin-bottom:.55rem}.home-test-head h2{margin:0 0 .18rem;font-size:1.04rem}.home-test-head p{font-size:.82rem;line-height:1.35}.duration-picker{gap:.28rem}.duration-picker button{border-radius:7px;min-height:32px;padding:.34rem .56rem;font-size:.78rem}.trainer{border-color:var(--soft-line);background:color-mix(in srgb, var(--bg-2), var(--panel) 16%);border-radius:12px;gap:.62rem;padding:clamp(.75rem,1.6vw,1rem);box-shadow:0 16px 52px #00000038}.trainer-head{align-items:center}.trainer-head h2,.trainer-head h3{margin:0;font-size:1rem}.trainer-head p{margin:.18rem 0 0;font-size:.78rem;line-height:1.35}.metrics,.metrics.big{border-block:1px solid var(--soft-line);flex-wrap:wrap;gap:0;padding:.15rem 0;display:flex}.metric{border:0;border-right:1px solid var(--soft-line);background:0 0;border-radius:0;flex:120px;min-width:105px;padding:.48rem .72rem}.metric:last-child{border-right:0}.metric svg{display:none}.metric span{text-transform:uppercase;letter-spacing:.055em;margin:0 0 .08rem;font-size:.68rem}.metric strong{font-size:clamp(1rem,1.8vw,1.25rem)}.typing-text{border-color:var(--soft-line);letter-spacing:.012em;background:#0000001f;border-radius:10px;height:clamp(135px,20vh,190px);padding:clamp(.85rem,2vw,1.35rem);font-size:clamp(1.12rem,2.15vw,1.55rem);line-height:1.72}.start-hint,.pause-notice{margin:-.1rem 0 0;font-size:.76rem}.finger-guide{border-color:var(--soft-line);background:var(--soft-panel);border-radius:10px;grid-template-columns:175px 1fr;gap:.65rem;padding:.62rem .75rem}.finger-guide h2{font-size:.92rem}.finger-guide p{margin:.2rem 0 0;font-size:.76rem}.hands{gap:.25rem}.hands span{min-height:42px;padding:.2rem;font-size:.68rem}.keyboard,.key-row{gap:.28rem}.key{background:color-mix(in srgb, var(--panel), transparent 14%);border-radius:6px;height:34px;font-size:.76rem}.ad-slot{border:1px dashed color-mix(in srgb, var(--line), transparent 15%);background:color-mix(in srgb, var(--panel), transparent 42%);width:min(100%,970px);color:var(--muted);letter-spacing:.08em;text-transform:uppercase;border-radius:10px;place-items:center;margin:clamp(1rem,2.5vw,1.8rem) auto;font-size:.68rem;display:grid}.seo-section{max-width:var(--content-width);margin-top:clamp(2.2rem,5vw,4rem)}.seo-section h2{letter-spacing:-.02em}.philosophy h2{font-size:clamp(1.5rem,2.5vw,2.25rem)}@media (max-width:820px){.topbar{align-items:flex-start}.brand{padding-top:.3rem}.home-test-head{flex-direction:column;align-items:flex-start}.duration-picker{justify-content:flex-start}.finger-guide{grid-template-columns:1fr}.hands{padding-bottom:.2rem;overflow-x:auto}.hands span{min-width:58px}}@media (max-width:620px){.topbar{flex-direction:column;gap:.35rem;position:static}nav{flex-wrap:nowrap;justify-content:flex-start;width:100%;padding-bottom:.15rem;overflow-x:auto}nav a,nav summary{white-space:nowrap}.hero{padding-top:.35rem}.hero-copy .eyebrow{display:none}.hero-copy h1,.home .hero-copy h1{font-size:1.35rem}.hero-copy>p:not(.eyebrow){font-size:.82rem}.metric{border-bottom:1px solid var(--soft-line);flex-basis:50%}.metric:nth-child(2n){border-right:0}.typing-text{height:150px;font-size:1.05rem;line-height:1.62}.key{min-width:24px;height:31px;font-size:.68rem}}
.home{flex-direction:column;display:flex}.home>.ad-slot[data-placement=after-home-test]{order:1;width:min(100%,960px);margin:.25rem auto 1rem;min-height:84px!important}.home>.hero{order:2}.home>.home-test{order:3}.home>.seo-section,.home>.ad-slot:not([data-placement=after-home-test]){order:4}.topbar{background:#040d18f0;border-bottom:1px solid #4a8fca3d;min-height:58px;padding:.55rem clamp(1rem,4vw,3rem)}.brand{align-items:flex-start;min-width:170px;position:relative}.brand span{font-size:0}.brand span:before{content:"WPMTEST";letter-spacing:.025em;color:#f8fbff;font-size:1.22rem;font-weight:900}.brand span:after{content:".";color:var(--accent);font-size:1.22rem}.brand:after{content:"TYPE FASTER. GO FURTHER.";color:#7790aa;letter-spacing:.13em;margin-top:.16rem;font-size:.55rem;font-weight:700}.brand small{display:none!important}.topbar nav a,.topbar nav summary{font-size:.87rem;font-weight:600}.topbar nav a.active{color:#f7fbff;background:0 0;position:relative}.topbar nav a.active:after{content:"";background:var(--accent);border-radius:999px;height:2px;position:absolute;bottom:-.38rem;left:.6rem;right:.6rem}.home .hero{width:100%;max-width:1180px;padding:.35rem 0 .4rem}.home .hero-copy .eyebrow{display:none}.home .hero-copy h1{margin:0;font-size:0;line-height:1}.home .hero-copy h1:after{content:"How fast can you type?";color:var(--text);letter-spacing:-.035em;font-size:clamp(1.75rem,3.1vw,2.65rem);font-weight:850;line-height:1.08;display:block}.home .hero-copy>p:not(.eyebrow){max-width:700px;margin:.35rem 0 0;font-size:0}.home .hero-copy>p:not(.eyebrow):after{content:"Choose a time, start typing, and see your results instantly.";color:var(--muted);font-size:.93rem;line-height:1.4;display:block}.home-test{width:100%;max-width:1180px}.home-test-head{justify-content:flex-end;min-height:3rem;margin:-3.45rem 0 .7rem}.home-test-head>div:first-child{display:none}.duration-picker{flex-wrap:nowrap;gap:.55rem}.duration-picker button{background:#111f30b8;border-color:#6999ca59;border-radius:12px;min-width:104px;min-height:42px;padding:.52rem .85rem;font-size:.82rem}.duration-picker button.active{color:#fff;background:linear-gradient(135deg,#087fe7,#2aa7ff);border-color:#2a9cff;box-shadow:0 8px 26px #1391ff47}.home-test .trainer{box-shadow:none;background:0 0;border:0;gap:.65rem;padding:0}.home-test .trainer-head{display:none}.home-test .metrics,.home-test .metrics.big{background:#0c1b2bd1;border:1px solid #4782b633;border-radius:12px;grid-template-columns:1fr 1fr 1.35fr;gap:.55rem;padding:.35rem;display:grid}.home-test .metric{background:#030e1a9e;border:0;border-radius:9px;min-height:68px;padding:.65rem .85rem}.home-test .metric:nth-child(n+4){display:none}.home-test .metric span{text-transform:none;letter-spacing:0;color:#9bb7d2;font-size:.73rem}.home-test .metric strong{font-size:clamp(1.35rem,2.5vw,1.8rem)}.home-test .typing-text{letter-spacing:.08em;background:linear-gradient(#051422e6,#05101dc2);border:1px solid #5197d35c;border-radius:12px;height:clamp(142px,19vh,184px);padding:clamp(1rem,2vw,1.35rem);font-size:clamp(1.12rem,2vw,1.48rem);line-height:1.75;box-shadow:inset 0 0 30px #1268af0a}.home-test .pending{color:#70869d}.home-test .current{color:#fff;background:linear-gradient(135deg,#0987f3,#3aa9ff);box-shadow:0 0 18px #1b97ff61}.home-test .start-hint{color:#9fb7cc;background:#0a1b2a9e;border:1px solid #4984b638;border-radius:10px;order:20;margin:.1rem 0 0;padding:.7rem .85rem}.home-test .finger-guide{display:none}.home-test .keyboard{isolation:isolate;background:#071421b8;border:1px solid #4380b647;border-radius:13px;width:min(100%,910px);margin:.15rem auto 0;padding:.55rem .65rem 1.15rem;position:relative;overflow:visible}.home-test .key-row{z-index:3;gap:.34rem;position:relative}.home-test .key{z-index:3;color:#d9e7f5;background:#132538d1;border-color:#6391be4d;border-radius:7px;height:38px;position:relative;box-shadow:inset 0 -2px #00000038}.home-test .key.target{z-index:6;color:#fff;background:linear-gradient(#168ef0,#0878d6);border-color:#2aa7ff;box-shadow:0 0 18px #1997ff85,inset 0 0 0 1px #ffffff2e}.home-test .keyboard:before,.home-test .keyboard:after{content:"";z-index:4;pointer-events:none;opacity:.24;filter:drop-shadow(0 0 14px #399eff57);background-position:bottom;background-repeat:no-repeat;background-size:contain;width:39%;height:185px;position:absolute;bottom:-52px}.home-test .keyboard:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 360 210'%3E%3Cg fill='%234ca8ff' fill-opacity='.28' stroke='%237bc3ff' stroke-opacity='.72' stroke-width='2'%3E%3Cpath d='M92 205c-19-38-24-78-19-116l6-48c2-13 20-12 20 2v52h8V26c0-15 21-15 21 0v67h9V18c0-15 22-15 22 0v75h9V27c0-15 21-15 21 0v70h9V48c0-15 21-15 21 0v69c0 13 5 21 16 11l25-24c11-10 25 2 17 14l-32 48c-14 21-26 30-32 39z'/%3E%3C/g%3E%3C/svg%3E");left:9%}.home-test .keyboard:after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 360 210'%3E%3Cg fill='%238d72ff' fill-opacity='.25' stroke='%23b7a7ff' stroke-opacity='.68' stroke-width='2'%3E%3Cpath d='M92 205c-19-38-24-78-19-116l6-48c2-13 20-12 20 2v52h8V26c0-15 21-15 21 0v67h9V18c0-15 22-15 22 0v75h9V27c0-15 21-15 21 0v70h9V48c0-15 21-15 21 0v69c0 13 5 21 16 11l25-24c11-10 25 2 17 14l-32 48c-14 21-26 30-32 39z'/%3E%3C/g%3E%3C/svg%3E");right:9%;transform:scaleX(-1)}.home-test .key.target:after{content:"";z-index:-1;transform-origin:50% 0;pointer-events:none;opacity:.6;background:linear-gradient(#97daffeb,#207edc24);border:1px solid #a4e0ff9e;border-radius:999px;width:17px;height:94px;animation:.18s ease-out finger-reach;position:absolute;top:60%;left:50%;transform:translate(-50%);box-shadow:0 0 18px #3daeff80}.home-test .key.right-index.target:after,.home-test .key.right-middle.target:after,.home-test .key.right-ring.target:after,.home-test .key.right-pinky.target:after{background:linear-gradient(#d7b1ffe6,#704ae624);border-color:#dbbaff9e;box-shadow:0 0 18px #9565ff7a}.home-test .key.left-pinky.target:after,.home-test .key.right-pinky.target:after{height:80px}.home-test .key.left-index.target:after,.home-test .key.right-index.target:after{height:104px}.home-test .key.thumbs.target:after{width:22px;height:55px;transform:translate(-50%)rotate(18deg)}@keyframes finger-reach{0%{opacity:0;transform:translate(-50%)scaleY(.65)}to{opacity:.6;transform:translate(-50%)scaleY(1)}}.home .seo-section{width:100%;max-width:1180px}@media (max-width:900px){.home-test-head{justify-content:flex-start;margin:0 0 .6rem}.duration-picker{flex-wrap:wrap}.duration-picker button{min-width:88px}.home-test .keyboard:before,.home-test .keyboard:after{opacity:.18;bottom:-38px}}@media (max-width:620px){.brand{min-width:145px}.brand span:before,.brand span:after{font-size:1.04rem}.brand:after{font-size:.48rem}.home .hero-copy h1:after{font-size:1.7rem}.home-test .metrics,.home-test .metrics.big{grid-template-columns:1fr 1fr}.home-test .metric:nth-child(3){grid-column:1/-1}.home-test .typing-text{letter-spacing:.035em;font-size:1rem}.home-test .keyboard{padding-inline:.25rem;overflow-x:auto}.home-test .keyboard:before,.home-test .keyboard:after,.home-test .key.target:after{display:none}}@media (prefers-reduced-motion:reduce){.home-test .key.target:after{animation:none}}
:root{--wpm-blue:#1e9cff;--wpm-cyan:#32d5ff;--wpm-green:#3fe08f;--wpm-yellow:#ffca4b;--wpm-orange:#ff8b61;--wpm-pink:#ff6bd6;--wpm-violet:#9b7cff}body{background:radial-gradient(circle at 50% -15%,#1f8fff1f,#0000 34rem),linear-gradient(#06111e 0%,#07111c 48%,#050d16 100%)}.home .hero,.home-test,.home .seo-section{max-width:1220px}.home .hero-copy h1:after{font-size:clamp(2rem,3.8vw,3.05rem);font-weight:900}.home .hero-copy h1:after,.brand span:after,.home-test .duration-picker button.active{text-shadow:0 0 24px #1e9cff2e}.home-test .metrics,.home-test .metrics.big{background:linear-gradient(#0c1f31eb,#071422e6);border-color:#4d92d24d;box-shadow:0 16px 42px #0003}.home-test .metric{background:linear-gradient(#05121fdb,#06111dc2)}.home-test .typing-text{background:linear-gradient(#051422f7,#06101beb);border-color:#479be66b;min-height:164px;box-shadow:inset 0 0 40px #197ed20d,0 14px 35px #00000029}.home-test .keyboard{background:linear-gradient(#061422f0,#05101ceb);border-color:#4b97da5c;width:min(100%,1030px);padding:.7rem .85rem 1rem;box-shadow:inset 0 0 36px #2380cd0d,0 20px 55px #00000040}.home-test .key-row{gap:.4rem}.home-test .key{color:#f0f7ff;background:linear-gradient(#162b41f2,#0d1f30f2);border-color:#689ccd52;border-radius:8px;height:43px;transition:transform .12s,box-shadow .12s,border-color .12s,background .12s;box-shadow:inset 0 1px #ffffff0b,inset 0 -3px #0000003d}.home-test .key.left-pinky{border-bottom-color:var(--wpm-blue)}.home-test .key.left-ring{border-bottom-color:#26b9ff}.home-test .key.left-middle{border-bottom-color:#39d8c5}.home-test .key.left-index{border-bottom-color:var(--wpm-green)}.home-test .key.right-index{border-bottom-color:var(--wpm-yellow)}.home-test .key.right-middle{border-bottom-color:var(--wpm-orange)}.home-test .key.right-ring{border-bottom-color:var(--wpm-pink)}.home-test .key.right-pinky{border-bottom-color:var(--wpm-violet)}.home-test .key.thumbs{border-bottom-color:#4ba4ff}.home-test .key.target{color:#fff;border-color:currentColor;transform:translateY(-2px)scale(1.035);box-shadow:0 0 0 1px #ffffff2e,0 0 24px,inset 0 0 20px #ffffff1f}.home-test .key.left-pinky.target{color:var(--wpm-blue);background:#146fd6e0}.home-test .key.left-ring.target{color:#26b9ff;background:#0f82d4e0}.home-test .key.left-middle.target{color:#39d8c5;background:#168e7fdb}.home-test .key.left-index.target{color:var(--wpm-green);background:#159156e0}.home-test .key.right-index.target{color:var(--wpm-yellow);background:#ae7a12e6}.home-test .key.right-middle.target{color:var(--wpm-orange);background:#b44a2ce6}.home-test .key.right-ring.target{color:var(--wpm-pink);background:#9d348de6}.home-test .key.right-pinky.target{color:var(--wpm-violet);background:#5d45b1e6}.home-test .key.thumbs.target{color:#58a8ff;background:#2261b0e6}.home-test .keyboard:before,.home-test .keyboard:after,.home-test .key:after,.home-test .key.target:after,.articulated-hands,.art-hand,.art-finger,.art-palm{content:none!important;display:none!important}.home-test .start-hint{background:linear-gradient(#071929d1,#05121fcc);border-color:#4393da47;width:min(100%,1220px);margin:.2rem auto 0}@media (max-width:620px){.home-test .key{height:34px}}
