.commerce{background:var(--bg);min-height:100dvh;color:var(--text)}.commerce-header{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:24px;padding:22px max(24px,50vw - 620px);display:flex}.commerce-header nav,.commerce-tools,.commerce-actions{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.commerce-header nav{flex:1}.commerce-header a,.commerce-footer a{font-size:14px}.commerce-tools{gap:6px}.commerce-main{max-width:1240px;margin:auto;padding:40px 24px 64px}.commerce-intro{max-width:780px;margin-bottom:32px}.commerce h1{letter-spacing:-1.5px;font-size:clamp(32px,4vw,52px);font-weight:500;line-height:1.15}.commerce h2{font-size:24px;font-weight:500}.commerce h3{font-size:18px}.commerce p{color:var(--muted);font-size:16px;line-height:1.65}.commerce button,.commerce input,.commerce select,.commerce textarea{font:inherit;font-size:14px}.commerce button{border:1px solid var(--line);background:var(--bg-card);color:var(--text);cursor:pointer;border-radius:6px;padding:10px 14px}.commerce button:disabled{opacity:.55;cursor:default}.commerce button[aria-pressed=true]{border-color:var(--accent)}.commerce :is(button,a,input,select,textarea):focus-visible{outline:2px solid var(--accent);outline-offset:4px}.commerce .lp-btn.primary{color:#20271d;background:#c5f46b}.commerce-free{border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;align-items:center;gap:16px 32px;margin:24px 0;padding:24px;display:flex}.commerce-free p{flex:1;min-width:min(100%,240px)}.offer-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:32px 0;display:grid}.offer-card{border:1px solid var(--line);background:var(--bg-card);border-radius:12px;flex-direction:column;gap:14px;min-width:0;padding:24px;display:flex}.offer-card h2,.offer-card p{margin:0}.offer-card>p:not(.offer-price):not(.offer-note){flex:1}.offer-card .offer-price{color:var(--text);font-size:38px}.offer-price small{color:var(--muted);font-size:14px;display:block}.commerce .offer-note,.commerce .commerce-note{font-size:14px}.commerce-form{gap:16px;max-width:580px;margin:24px 0;display:grid}.commerce-form label{gap:8px;font-size:14px;display:grid}.commerce-form input,.commerce-form select,.commerce-form textarea{border:1px solid var(--line);width:100%;min-width:0;color:var(--text);background:var(--bg-card);border-radius:6px;padding:12px}.commerce-form .consent{align-items:start;display:flex}.commerce-form input[type=checkbox]{width:auto;margin-top:4px}.commerce-table{margin:24px 0;overflow-x:auto}.commerce table{border-collapse:collapse;text-align:left;width:100%;font-size:14px}.commerce th,.commerce td{border-bottom:1px solid var(--line);padding:14px}.commerce caption{text-align:left;margin-bottom:12px}.report-metrics,.team-forms{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.team-forms{grid-template-columns:repeat(2,minmax(0,1fr))}.program-report{border-top:1px solid var(--line);margin-top:40px;padding-top:24px}.exercise-metrics{font:16px var(--font-mono);gap:24px;margin:20px 0;display:flex}.program-exercise .prompt{font-size:26px}.library-item{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px;padding:14px 0;display:flex}.library-item h3{flex:1}.commerce-footer{border-top:1px solid var(--line);flex-wrap:wrap;gap:24px;max-width:1240px;margin:auto;padding:24px;display:flex}@media (width<=1000px){.offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.commerce-header{gap:14px}}@media (width<=600px){.offer-grid,.report-metrics,.team-forms{grid-template-columns:minmax(0,1fr)}.commerce-main{padding:24px 18px}.commerce-header{padding:18px}.commerce-header nav{flex-basis:100%;order:3;gap:12px}.commerce-tools{margin-left:auto}.commerce .brand{font-size:22px}.commerce-free{padding:18px}}.commerce-practicing{flex-direction:column;display:flex}.commerce-practicing .commerce-header{gap:8px 18px;padding-top:8px;padding-bottom:8px}.commerce-practicing .commerce-main{width:100%;padding:clamp(8px,2dvh,20px) 18px}.program-exercise{gap:clamp(6px,1.5dvh,16px);display:grid}.program-exercise h1{margin:0;font-size:clamp(24px,4dvh,36px)}.program-exercise p{margin:0;font-size:14px;line-height:1.4}.program-exercise .exercise-metrics{margin:0}.program-exercise .text-board{margin:0;padding:clamp(8px,2dvh,20px)}.program-exercise .prompt{font-size:clamp(18px,3.5dvh,26px);line-height:1.5}.program-exercise .keyboard{--key-unit:clamp(10px, min(4.5vw, 3.8dvh), 34px);--cap-face:var(--bg-hover);--cap-side:var(--bg-elev);box-shadow:none;background:0 0;padding:4px}.program-exercise .keyboard .khalf{gap:3px}.program-exercise .keyboard .kkey.next .kcap{background:var(--accent-dim);color:var(--accent)}.program-exercise .keyboard .kkey.wrong{outline:2px solid var(--danger)}.program-exercise .keyboard .kkey.wrong .kcap{background:var(--danger);color:var(--bg-card)}@media (height<=650px){.commerce-practicing .commerce-header{gap:4px 12px}.commerce-practicing .commerce-header nav{gap:10px}.commerce-practicing button{padding:6px 10px}.program-exercise{gap:6px}.program-exercise .keyboard{--key-unit:clamp(10px, min(4.2vw, 3.4dvh), 24px)}}.program-exercise .prompt-window{height:calc(var(--prompt-lines,3) * 1.5em);font-size:clamp(18px,3.5dvh,26px);line-height:1.5}.program-exercise .text-board{min-height:0}.commerce .icon-tool{width:36px;height:36px;padding:8px}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#14100d;--bg-elev:#1e1714;--bg-card:#2a221c;--bg-hover:#3a2f26;--edge:#080605;--edge-soft:#100c09;--line:#ffe8cd17;--text:#fbf3e8;--muted:#a89684;--faint:#77685a;--accent:#ffa733;--accent-2:#ff6b5a;--accent-dim:#ffa73329;--gold:#ffcf5c;--gold-dim:#ffcf5c2e;--danger:#ff6b5a;--danger-dim:#ff6b5a2e;--hit:#8ede5a;--miss:#ff6b5a;--shadow:0 18px 46px #0000006b;--keycap:0 6px 0 var(--edge), 0 10px 22px #0006;--keycap-sm:0 4px 0 var(--edge-soft);--radius:22px;--font-ui:"Outfit", "Segoe UI", sans-serif;--font-display:"Outfit", "Segoe UI", sans-serif;--font-type:"IBM Plex Sans", "Segoe UI", sans-serif;--key-unit:clamp(21px, 3vw, 38px)}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4ebdd;--bg-elev:#fffaf1;--bg-card:#fffdf8;--bg-hover:#ece0cd;--edge:#d8c8b1;--edge-soft:#e4d7c4;--line:#3c280f1a;--text:#1d1610;--muted:#6d5c4a;--faint:#9c8a75;--accent:#e07a1f;--accent-2:#e0503f;--accent-dim:#e07a1f24;--gold:#d99b13;--gold-dim:#d99b1329;--danger:#e0503f;--danger-dim:#e0503f24;--hit:#52a32c;--miss:#e0503f;--shadow:0 14px 34px #5037141a}*{box-sizing:border-box}html,body,#root{min-height:100%}body{font-family:var(--font-ui);background:radial-gradient(1100px 520px at 12% -12%, #ffa73321, transparent 55%), radial-gradient(900px 460px at 108% 4%, #ff6b5a1a, transparent 50%), var(--bg);color:var(--text);letter-spacing:.01em;background-attachment:fixed;margin:0}button,input,select,textarea{color:inherit;font-family:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}.shell{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr);min-height:100dvh;display:grid}.shell>*{min-width:0}.topbar{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--bg-elev) 78%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:20;flex-wrap:wrap;align-items:center;gap:12px 18px;min-width:0;padding:14px 22px;display:flex;position:sticky;top:0}.brand{font-family:var(--font-display);letter-spacing:-.03em;align-items:center;gap:10px;font-size:22px;font-weight:800;display:flex}.brand-mark{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#07110d;width:32px;height:32px;box-shadow:0 0 24px var(--accent-dim);border-radius:10px;place-items:center;font-size:16px;font-weight:800;display:grid}.nav{flex-wrap:wrap;flex:auto;gap:4px;min-width:0;display:flex}.nav a{color:var(--muted);border-radius:999px;padding:8px 12px;font-size:14px;font-weight:500}.nav a.active,.nav a:hover{color:var(--text);background:var(--bg-hover)}.hud{flex-wrap:wrap;align-items:center;gap:12px;min-width:0;display:flex}.xp-chip,.streak-chip,.level-chip,.keys-chip{box-shadow:var(--keycap-sm);background:var(--bg-card);border:1px solid var(--line);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:8px;padding:6px 10px;font-size:12px;display:flex}.xp-track{background:var(--bg-hover);border-radius:99px;width:88px;height:6px;overflow:hidden}.xp-track>span{background:linear-gradient(90deg, var(--accent-2), var(--accent));border-radius:inherit;height:100%;display:block}.streak-chip{color:var(--accent-2);font-weight:700}.level-chip{color:var(--accent);font-weight:700}.icon-btn,.ghost-btn{box-shadow:var(--keycap-sm);background:var(--bg-card);border:1px solid var(--line);color:var(--muted);border-radius:12px;padding:8px 10px;transition:transform 80ms,box-shadow 80ms,background .12s}.icon-btn:hover,.ghost-btn:hover{color:var(--text);background:var(--bg-hover)}.icon-btn:active,.ghost-btn:active{box-shadow:none;transform:translateY(3px)}.ghost-btn{padding:8px 14px;font-weight:600}.page{width:min(1180px,100% - 32px);margin:0 auto;padding:20px 0 28px}.practice-grid{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:22px;display:grid}.practice-grid>*{min-width:0}.gauges{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:12px;display:grid}.gauge{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);min-height:74px;box-shadow:var(--keycap-sm);padding:12px 16px}.gauge .label{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:12px}.gauge .value{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:4px;font-size:clamp(26px,2.4vw,34px);font-weight:700;line-height:1}.gauge .value em{margin-left:5px;font-size:13px}.gauges .gauge:first-child .value{color:var(--accent)}.gauges .gauge:nth-child(2) .value{color:var(--hit)}.gauges .gauge:nth-child(3) .value{color:var(--text)}.gauge.combo{transition:box-shadow .2s;position:relative;overflow:hidden}.gauge.combo .value{color:var(--accent-2);transition:color .2s,font-size .15s}.gauge-fill{background:var(--accent-2);height:3px;transition:width .18s ease-out,background .2s;position:absolute;bottom:0;left:0}.gauge.combo.tier-1 .value,.gauge.combo.tier-2 .value{color:var(--accent)}.gauge.combo.tier-1 .gauge-fill,.gauge.combo.tier-2 .gauge-fill{background:var(--accent)}.gauge.combo.tier-3,.gauge.combo.tier-4,.gauge.combo.tier-5{box-shadow:var(--keycap-sm), 0 0 30px -10px var(--gold)}.gauge.combo.tier-3 .value,.gauge.combo.tier-4 .value,.gauge.combo.tier-5 .value{color:var(--gold)}.gauge.combo.tier-3 .gauge-fill,.gauge.combo.tier-4 .gauge-fill,.gauge.combo.tier-5 .gauge-fill{background:var(--gold)}.gauge.combo.tier-5{animation:1.2s ease-in-out infinite combo-pulse}@keyframes combo-pulse{0%,to{box-shadow:var(--keycap-sm), 0 0 30px -10px var(--gold)}50%{box-shadow:var(--keycap-sm), 0 0 44px -6px var(--gold)}}.gauge .value em{color:var(--muted);margin-left:4px;font-size:13px;font-style:normal}.gauge.combo .value{color:var(--gold)}.letter-rail{scrollbar-width:none;align-items:center;gap:4px;margin:0 0 12px;padding-bottom:2px;display:flex;overflow-x:auto}.letter-rail::-webkit-scrollbar{display:none}.letter-count{letter-spacing:.1em;color:var(--faint);flex:none;margin-left:auto;padding-left:10px;font-size:11px;font-weight:700}.letter{width:26px;height:26px;box-shadow:var(--keycap-sm);color:#07110d;border:1px solid #0000;border-radius:8px;flex:none;place-items:center;font-size:11px;font-weight:700;transition:transform .12s;display:grid;position:relative}.letter.excluded{background:var(--bg-hover);color:var(--faint)}.letter.excluded:after{content:"";border-top:2px solid var(--faint);position:absolute;inset:6px;transform:rotate(-28deg)}.letter.focused{outline:2px solid var(--gold);box-shadow:0 0 0 4px var(--gold-dim)}.text-board{background:var(--bg-card);border:1px solid var(--line);border-radius:calc(var(--radius) + 10px);min-height:212px;box-shadow:var(--keycap), var(--shadow);outline:none;padding:26px 30px;transition:box-shadow .2s,border-color .2s;position:relative}.text-board:focus{border-color:color-mix(in srgb, var(--accent) 50%, var(--line))}.prompt{font-family:var(--font-type);letter-spacing:.01em;flex-wrap:wrap;align-items:baseline;font-size:clamp(26px,3.2vw,36px);font-weight:400;line-height:1.45;display:flex}.word{white-space:nowrap}.prompt-window{height:calc(var(--prompt-lines,3) * 1.45em);font-size:clamp(26px,3.2vw,36px);overflow:hidden}.prompt-window .prompt{font-size:inherit;will-change:transform;transition:transform .14s cubic-bezier(.22,1,.36,1)}@media (prefers-reduced-motion:reduce){.prompt-window .prompt{transition:none}}.ch.miss.cursor{background:var(--danger-dim);box-shadow:0 0 0 1px var(--miss);color:var(--miss)}.ch{color:var(--muted)}.ch.hit{color:var(--hit)}.ch.miss{color:var(--miss);background:var(--danger-dim);border-radius:4px}.ch.pending{color:var(--muted)}.ch.cursor{color:var(--text);background:color-mix(in srgb, var(--accent) 28%, transparent);box-shadow:0 0 0 1px var(--accent);border-radius:4px;animation:1s step-end infinite caret}.ch.space{opacity:.55}.hint{color:var(--faint);font-size:12px;position:absolute;bottom:12px;right:18px}.fx-canvas{pointer-events:none;z-index:60;position:fixed;inset:0}.text-board.tier-1{border-color:color-mix(in srgb, var(--accent) 30%, var(--line))}.text-board.tier-2{border-color:color-mix(in srgb, var(--accent) 55%, var(--line));box-shadow:var(--keycap), 0 0 0 1px var(--accent-dim), var(--shadow)}.text-board.tier-3{border-color:var(--accent);box-shadow:var(--keycap), 0 0 34px -6px var(--accent), var(--shadow)}.text-board.tier-4{border-color:var(--gold);box-shadow:var(--keycap), 0 0 46px -4px var(--gold), var(--shadow)}.text-board.tier-5{border-color:var(--gold);box-shadow:var(--keycap), 0 0 64px -2px var(--gold), 0 0 120px -30px var(--accent-2), var(--shadow)}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-7px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(2px)}}.text-board.shake{animation:.22s ease-out shake}@keyframes ch-pop{0%{transform:scale(1)}45%{transform:scale(1.22)}to{transform:scale(1)}}.ch.hit{animation:.16s ease-out ch-pop}.ch{display:inline-block}@media (prefers-reduced-motion:reduce){.text-board.shake,.combo-float.tier-5,.ch.hit{animation:none}.combo-float{transition:none}.combo-float.tier-2,.combo-float.tier-3,.combo-float.tier-4,.combo-float.tier-5{transform:none}}.controls{gap:8px;margin:14px 0 18px;display:flex}.keyboard{--plate:#0d0a08;--cap-face:#574a40;--cap-side:#322a24;--cap-skirt:.24;gap:calc(var(--key-unit) * .14);min-width:0;padding:calc(var(--key-unit) * .46);border-radius:calc(var(--radius) + 10px);background:linear-gradient(180deg, #fff0dc17, transparent 12%), linear-gradient(180deg, #1a1410 0%, var(--plate) 40%, #070505 100%);border:1px solid var(--line);box-shadow:inset 0 1px 0 #fff0dc17, inset 0 -14px 26px #00000073, 0 10px 0 var(--edge), 0 26px 46px #00000073;display:grid}.krow{gap:calc(var(--key-unit) * .14);justify-content:center;display:flex}.kkey{height:var(--key-unit);border-radius:calc(var(--key-unit) * .2);background:linear-gradient(180deg, var(--cap-face) 0%, var(--cap-side) 62%, #1b1512 100%);transition:transform 55ms ease-out,box-shadow 55ms ease-out,background .16s;position:relative;box-shadow:inset 0 1.5px #fff6e84d,inset 1px 0 #fff6e80f,inset -1px 0 #0006,inset 0 -4px 8px #0000009e,0 3px #0b0807,0 6px 12px #000000b8}.kcap{top:7%;left:8%;right:8%;bottom:calc(var(--cap-skirt) * 100%);border-radius:calc(var(--key-unit) * .13);color:#d8cabb;font-size:clamp(9px, calc(var(--key-unit) * .3), 13px);letter-spacing:.02em;text-shadow:0 1px #00000073;background:radial-gradient(130% 160% at 50% -10%,#fff8ec29,#0000 62%),linear-gradient(#6a5b4e 0%,#493d34 58%,#3d332c 100%);place-items:center;font-weight:700;display:grid;position:absolute;box-shadow:inset 0 1.5px #fff8ec42,inset 0 -3px 6px #0000006b}.keyboard.shape-staggered .krow-1{--cap-skirt:.24}.keyboard.shape-staggered .krow-2{--cap-skirt:.26}.keyboard.shape-staggered .krow-3{--cap-skirt:.28}.keyboard.shape-staggered .krow-4{--cap-skirt:.3}.kkey.lit{background:linear-gradient(180deg, color-mix(in srgb, var(--cap) 62%, #1a1410) 0%, color-mix(in srgb, var(--cap) 42%, #140f0c) 64%, #171210 100%)}.kkey.lit .kcap{background:radial-gradient(120% 150% at 50% 0%, #ffffff38, transparent 58%), linear-gradient(180deg, var(--cap) 0%, color-mix(in srgb, var(--cap) 80%, black) 100%);color:#0b1410;text-shadow:0 1px #ffffff40}.kkey.active{transform:translateY(3px);box-shadow:inset 0 1px #fff0dc1a,inset 0 -2px 5px #0000008c,0 0 #120e0b,0 1px 3px #00000080}.kkey.active .kcap{filter:brightness(1.14)}.kkey.next{box-shadow:inset 0 1px 0 #fff0dc33, inset 0 -3px 6px #00000080, 0 5px 0 #120e0b, 0 9px 16px #0000008c, 0 0 0 2px var(--accent), 0 0 26px var(--accent-dim);transform:translateY(-2px)}.kkey.next .kcap{color:var(--text)}.kkey.next.lit .kcap{color:#0b1410}.keyboard.finger-guide .kkey.finger-tint{box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--finger,transparent) 35%, transparent)}.keyboard.finger-guide .kkey.finger-tint .kcap{box-shadow:inset 0 -2px 0 color-mix(in oklab, var(--finger,transparent) 45%, transparent)}.keyboard.finger-guide .kkey.finger-next:not(.lit){outline:2px solid color-mix(in oklab, var(--finger,var(--accent)) 70%, transparent);outline-offset:1px}.keyboard.finger-guide .kkey.finger-lp{--finger:#7aa2ff}.keyboard.finger-guide .kkey.finger-lr{--finger:#6ec6ff}.keyboard.finger-guide .kkey.finger-lm{--finger:#5ad0c6}.keyboard.finger-guide .kkey.finger-li{--finger:#7ddf8a}.keyboard.finger-guide .kkey.finger-rt{--finger:#c9b8ff}.keyboard.finger-guide .kkey.finger-ri{--finger:#f0c05a}.keyboard.finger-guide .kkey.finger-rm{--finger:#f0a06a}.keyboard.finger-guide .kkey.finger-rr{--finger:#e8899a}.keyboard.finger-guide .kkey.finger-rp{--finger:#d48ad8}.keyboard.teach .kkey.teach-zone:not(.teach-pair){box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--gold) 38%, transparent)}.keyboard.teach .kkey.teach-pair{outline:2px solid var(--gold);outline-offset:1px;box-shadow:inset 0 1px 0 #fff0dc33, 0 0 18px color-mix(in srgb, var(--gold) 40%, transparent)}.keyboard.teach .kkey.teach-to{outline-color:var(--accent)}.keyboard.ghosting .kkey.ghost-from{animation:1.8s ease-in-out infinite coach-ghost-from}.keyboard.ghosting .kkey.ghost-to{animation:1.8s ease-in-out infinite coach-ghost-to}@keyframes coach-ghost-from{0%,14%{filter:brightness(1.22);transform:translateY(3px)}22%,to{filter:none;transform:none}}@keyframes coach-ghost-to{0%,24%{filter:none;transform:none}32%,48%{filter:brightness(1.22);transform:translateY(3px)}56%,to{filter:none;transform:none}}@media (prefers-reduced-motion:reduce){.keyboard.ghosting .kkey.ghost-from,.keyboard.ghosting .kkey.ghost-to{animation:none}}.kkey.homing .kcap:after{content:"";background:#0006;border-radius:2px;width:26%;height:2px;position:absolute;bottom:14%;box-shadow:0 1px #ffffff29}@media (prefers-reduced-motion:reduce){.kkey{transition:background .16s}.kkey.next{transform:none}}.side{gap:14px;display:grid}.card{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--keycap-sm);padding:18px}.card h3{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 12px;font-size:13px;font-weight:600}.focus-letter{border-radius:18px;place-items:center;width:72px;height:72px;margin-bottom:8px;font-size:34px;font-weight:800;display:grid}.quest{gap:6px;margin-bottom:12px;display:grid}.quest .row{justify-content:space-between;gap:8px;font-size:13px;display:flex}.quest .row>span:first-child{overflow-wrap:anywhere;min-width:0}.quest .row>span:last-child{white-space:nowrap}.bar{background:var(--edge-soft);border-radius:99px;height:9px;overflow:hidden}.bar>span{background:linear-gradient(90deg, var(--accent), var(--gold));border-radius:99px;height:100%;transition:width .35s cubic-bezier(.22,1,.36,1);display:block}.goal-ring{align-items:center;gap:12px;display:flex}.rank-name{font-family:var(--font-display);margin:0;font-size:22px}.drawer-backdrop{z-index:30;background:#00000073;position:fixed;inset:0}.drawer{background:var(--bg-elev);border-left:1px solid var(--line);z-index:31;width:min(420px,100%);height:100%;padding:22px;position:fixed;top:0;right:0;overflow:auto}.field{gap:6px;margin-bottom:14px;display:grid}.field label{color:var(--muted);font-size:13px}.field input,.field select,.field textarea{background:var(--bg-card);border:1px solid var(--line);border-radius:12px;padding:10px 12px}.field textarea{resize:vertical;min-height:90px}.toggle{justify-content:space-between;align-items:center;display:flex}.toasts{z-index:40;pointer-events:none;gap:8px;max-width:min(320px,100vw - 40px);display:grid;position:fixed;bottom:20px;left:20px}.toast{background:var(--bg-elev);border-left:3px solid var(--accent);box-shadow:var(--keycap-sm);border-radius:12px;padding:10px 14px;animation:.22s ease-out toast-in}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.toast.quest{border-left-color:var(--gold)}.toast.streak{border-left-color:var(--accent-2)}.toast .title{font-weight:700}.toast .body{color:var(--muted);font-size:13px}.stats-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:22px;display:grid}.chart-card{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:16px;padding:16px}.chart-card h2{margin:0 0 12px;font-size:16px}.heat{gap:3px;display:grid}.heat-row{color:var(--muted);grid-template-columns:18px 1fr;align-items:center;gap:8px;font-size:11px;display:grid}.heat-cells{gap:1px;height:10px;display:flex}.heat-cells i{background:var(--bg-hover);border-radius:1px;flex:1}.ach-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.ach{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);opacity:.45;gap:6px;padding:16px;display:grid}.ach.on{opacity:1;box-shadow:0 0 0 1px color-mix(in srgb, var(--gold) 35%, transparent)}.ach .icon{font-size:28px}.ach h3{margin:0;font-size:16px}.ach p{color:var(--muted);margin:0;font-size:13px}.help{max-width:720px}.help h1{font-family:var(--font-display);letter-spacing:-.04em;font-size:42px}.help p{color:var(--muted);font-size:17px;line-height:1.65}.test-hero{text-align:center;padding:12px 0 24px}.test-hero h1{font-family:var(--font-display);margin:0 0 8px;font-size:40px}.timer{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--accent);font-size:48px;font-weight:700}.duration-picks{background:var(--bg-card);border:1px solid var(--line);border-radius:999px;gap:6px;margin:0 auto 14px;padding:4px;display:inline-flex}.duration-pick{appearance:none;color:var(--muted);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:6px 12px;font-weight:700}.duration-pick:hover:not(:disabled){color:var(--text);background:var(--bg-hover)}.duration-pick.on{color:var(--bg);background:var(--accent)}.duration-pick:disabled{opacity:.55;cursor:default}.mobile-nav{display:none}@media (width<=960px){.practice-grid,.stats-grid,.gauges{grid-template-columns:1fr 1fr}.practice-grid{grid-template-columns:1fr}.nav{display:none}.topbar{flex-wrap:wrap}.keyboard{overflow-x:auto}.mobile-nav{background:color-mix(in srgb, var(--bg-elev) 90%, transparent);border-top:1px solid var(--line);padding:10px 8px calc(10px + env(safe-area-inset-bottom));z-index:20;justify-content:space-around;display:flex;position:sticky;bottom:0}.mobile-nav a{color:var(--muted);font-size:12px;font-weight:600}.mobile-nav a.active{color:var(--accent)}}@media (width<=640px){.result-card{min-height:180px;padding:20px 16px 16px}.result-wpm strong{font-size:42px}.gauges,.stats-grid{grid-template-columns:1fr 1fr}.page{width:calc(100% - 16px);padding-bottom:96px}.prompt,.prompt-window{font-size:28px}.xp-chip span{display:none}.topbar{gap:8px;padding:10px 12px}.practice-grid .keyboard{display:none}.controls{bottom:calc(52px + env(safe-area-inset-bottom));z-index:15;background:color-mix(in srgb, var(--bg) 92%, transparent);flex-wrap:wrap;gap:8px;padding:8px 0;display:flex;position:sticky}.controls .ghost-btn{min-height:44px;padding:10px 16px}.mobile-practice-note,.lp-mobile-note,.gate-mobile-note{display:block}}.board-wrap{min-height:212px;position:relative}.board-wrap>.result-card{box-sizing:border-box;width:100%}.flow{align-items:center;gap:10px;margin:0 0 10px;display:flex}.flow-track{background:var(--bg-hover);border-radius:99px;flex:1;height:6px;position:relative;overflow:hidden}.flow-track>span{background:var(--muted);height:100%;transition:width .12s linear,background .2s;display:block}.flow.above .flow-track>span{background:var(--accent)}.flow.best .flow-track>span{background:var(--gold)}.flow-mark{background:var(--faint);opacity:.7;width:2px;height:10px;position:absolute;top:-2px}.flow-label{letter-spacing:.1em;text-transform:uppercase;color:var(--faint);text-align:right;min-width:92px;font-size:11px}.flow.above .flow-label{color:var(--accent)}.flow.best .flow-label{color:var(--gold)}.result-card{border-radius:calc(var(--radius) + 10px);border:1px solid var(--line);background:var(--bg-card);min-height:212px;box-shadow:var(--keycap), var(--shadow);align-content:center;gap:14px;padding:24px 28px 20px;animation:.18s ease-out card-in;display:grid;position:relative}@keyframes card-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.result-card.pb{border-color:color-mix(in srgb, var(--gold) 45%, var(--line))}.result-headline{flex-wrap:wrap;align-items:baseline;gap:20px;display:flex}.result-wpm{align-items:baseline;gap:7px;display:flex}.result-wpm strong{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:52px;font-weight:700;line-height:1}.result-wpm em{color:var(--muted);font-size:14px;font-style:normal}.result-wpm span{font-size:15px;font-weight:700}.result-acc{color:var(--muted);font-size:20px;font-weight:600}.up{color:var(--hit)}.down{color:var(--danger)}.result-xp{flex-wrap:wrap;align-items:baseline;gap:14px;font-size:14px;display:flex}.result-xp strong{color:var(--gold);font-size:17px}.result-highlight{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:9px;padding-top:14px;font-size:15px;display:flex}.result-highlight strong{color:var(--text)}.result-highlight.unlock strong,.result-highlight.target strong,.result-highlight.best strong{color:var(--accent)}.result-highlight-label{color:var(--faint)}.result-highlight code{font-family:var(--font-type);background:var(--bg-hover);color:var(--text);letter-spacing:.1em;border-radius:6px;padding:2px 9px;font-size:18px}.result-highlight.transition strong{color:var(--danger)}.result-highlight-cause{color:var(--faint);font-size:13px}.result-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.result-share{appearance:none;border:1px solid var(--line);background:var(--bg-hover);color:var(--text);font:inherit;cursor:pointer;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600}.result-share:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--line))}.result-dismiss{color:var(--faint);letter-spacing:.12em;text-transform:uppercase;font-size:11px}.letter.mastered{box-shadow:0 0 0 2px color-mix(in srgb, var(--gold) 55%, transparent)}.focus-bigram{border-top:1px solid var(--line);color:var(--muted);align-items:center;gap:8px;margin-top:12px;padding-top:12px;font-size:12px;display:flex}.focus-bigram strong{font-family:var(--font-type);color:var(--text);letter-spacing:.1em;font-size:16px}.mastery{flex-wrap:wrap;gap:6px;display:flex}.mastery-key{width:38px;height:38px;box-shadow:var(--keycap-sm);border:1px solid var(--line);color:var(--faint);border-radius:12px;place-items:center;font-size:13px;font-weight:700;display:grid}.mastery-key.tier-0{opacity:.4}.mastery-key.tier-1,.mastery-key.tier-2,.mastery-key.tier-3,.mastery-key.tier-4{color:#07110d;border-color:#0000}.mastery-key.tier-3{box-shadow:0 0 0 2px color-mix(in srgb, var(--gold) 45%, transparent)}.mastery-key.tier-4{box-shadow:0 0 0 2px var(--gold), 0 0 16px color-mix(in srgb, var(--gold) 40%, transparent)}.transitions{gap:8px;margin:0;padding:0;list-style:none;display:grid}.transitions li{flex-wrap:wrap;align-items:baseline;gap:12px;font-size:14px;display:flex}.transitions code{font-family:var(--font-type);background:var(--bg-hover);letter-spacing:.1em;border-radius:6px;padding:2px 9px;font-size:17px}.transitions strong{color:var(--danger)}.transitions span{color:var(--muted);font-size:13px}.coaching h2,.coaching h3{margin:0 0 8px}.coaching-lead{color:var(--muted);margin:0 0 12px;font-size:15px;line-height:1.45}.coaching-empty{color:var(--muted);margin:0;font-size:14px;line-height:1.45}.coaching.dense .coaching-empty{font-size:13px}.coaching-list li.active{outline:1px solid color-mix(in srgb, var(--accent) 45%, transparent);border-radius:10px;margin:-6px -8px;padding:6px 8px}.coaching-practice{margin-left:auto;padding:4px 10px;font-size:12px}.coaching.dense h3{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:13px;font-weight:600}.coaching.dense .transitions li{gap:8px;font-size:13px}.coaching.dense .coaching-practice{width:100%;margin-left:0}.heat-row.wide{grid-template-columns:100px 1fr 40px}.heat-row.wide em{text-align:right;color:var(--muted);font-style:normal}.auto-tag{color:var(--accent);text-transform:uppercase;letter-spacing:.1em;margin-left:8px;font-size:11px;font-style:normal}.field-hint{color:var(--faint);font-size:12px;line-height:1.4}@media (prefers-reduced-motion:reduce){.result-card{animation:none}.flow-track>span{transition:none}}.tour{z-index:70;pointer-events:none;position:fixed;inset:0}.tour-hole{box-shadow:0 0 0 9999px #080503c7, 0 0 0 2px var(--accent);border-radius:14px;transition:top .28s cubic-bezier(.22,1,.36,1),left .28s cubic-bezier(.22,1,.36,1),width .28s cubic-bezier(.22,1,.36,1),height .28s cubic-bezier(.22,1,.36,1);position:absolute}.tour-card{pointer-events:auto;background:var(--bg-card);border:1px solid var(--line);width:380px;max-width:calc(100vw - 24px);box-shadow:var(--keycap), var(--shadow);border-radius:20px;gap:8px;padding:18px 20px 16px;transition:top .28s cubic-bezier(.22,1,.36,1),left .28s cubic-bezier(.22,1,.36,1);display:grid;position:absolute}.tour-step{letter-spacing:.16em;color:var(--accent);margin:0;font-size:11px;font-weight:700}.tour-card strong{font-family:var(--font-display);letter-spacing:-.02em;font-size:20px}.tour-body{color:var(--muted);margin:0;font-size:14px;line-height:1.55}.tour-legend{color:var(--muted);grid-template-columns:1fr 1fr;gap:6px 12px;margin:4px 0 0;padding:0;font-size:12px;list-style:none;display:grid}.tour-legend li{align-items:center;gap:7px;display:flex}.tour-legend i{border-radius:5px;flex:none;width:15px;height:15px}.tour-legend i.locked{background:var(--bg-hover);position:relative}.tour-legend i.locked:after{content:"";border-top:2px solid var(--faint);position:absolute;inset:3px;transform:rotate(-28deg)}.tour-actions{justify-content:space-between;align-items:center;gap:10px;margin-top:6px;display:flex}.tour-nav{gap:8px;display:flex}.tour-card .lp-btn{padding:9px 16px;font-size:14px}.tour-skip{color:var(--faint);background:0 0;border:0;padding:6px 2px;font-size:13px}.tour-skip:hover{color:var(--text)}.ghost-btn.icon-only{padding:8px 13px;font-weight:800}@media (prefers-reduced-motion:reduce){.tour-hole,.tour-card{transition:none}}.boss{max-width:860px}.boss-head{text-align:center;justify-items:center;gap:10px;margin-bottom:22px;display:grid}.boss-eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--accent-2);margin:0;font-size:11px;font-weight:700}.boss-avatar{width:max-content;min-width:108px;height:108px;font-family:var(--font-display);letter-spacing:-.04em;color:#1a1109;background:linear-gradient(160deg, var(--accent), var(--accent-2));box-shadow:var(--keycap), 0 0 60px -14px var(--accent-2);border-radius:30px;place-items:center;padding:0 22px;font-size:46px;font-weight:800;display:grid}.boss-avatar.pair{letter-spacing:-.02em;font-size:40px}.boss-avatar.hurt{animation:.9s ease-in-out infinite boss-hurt}@keyframes boss-hurt{0%,to{transform:translate(0)rotate(0)}25%{transform:translate(-4px)rotate(-2deg)}75%{transform:translate(4px)rotate(2deg)}}.boss-kind{color:var(--muted);margin:0;font-size:14px}.boss-health-label{letter-spacing:.16em;text-transform:uppercase;color:var(--faint);margin:6px 0 0;font-size:11px;font-weight:700}.boss-health{background:var(--edge);border-radius:99px;width:min(520px,100%);height:18px;overflow:hidden;box-shadow:inset 0 2px 6px #00000080}.boss-health>span{background:linear-gradient(90deg, var(--accent-2), var(--accent));border-radius:99px;height:100%;transition:width .22s cubic-bezier(.22,1,.36,1);display:block}.boss-bar-to-beat{color:var(--muted);text-align:center;max-width:46ch;margin:2px 0 0;font-size:13px}.boss-meta{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:18px;font-size:13px;font-weight:600;display:flex}.boss-meta .urgent{color:var(--danger)}.boss-board{position:relative}.boss-brief{border-radius:inherit;background:color-mix(in srgb, var(--bg-card) 96%, transparent);text-align:left;align-content:center;gap:10px;padding:22px 30px;display:grid;position:absolute;inset:0}.boss-brief strong{font-family:var(--font-display);letter-spacing:-.03em;font-size:22px}.boss-brief ol{color:var(--muted);gap:5px;margin:0;padding-left:20px;font-size:14px;line-height:1.5;display:grid}.boss-brief li::marker{color:var(--accent);font-weight:700}.boss-go{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:700}.boss-outcome{border-radius:var(--radius);background:var(--bg-card);border:1px solid var(--line);box-shadow:var(--keycap-sm);text-align:center;justify-items:center;gap:10px;margin-top:22px;padding:26px;display:grid}.boss-outcome strong{font-family:var(--font-display);letter-spacing:-.03em;font-size:32px}.boss-outcome strong.win{color:var(--hit)}.boss-outcome strong.lose{color:var(--muted)}.boss-gain{color:var(--gold);font-weight:700}.boss-outcome span{color:var(--muted);max-width:44ch;font-size:14px}.boss-actions{flex-wrap:wrap;gap:10px;margin-top:6px;display:flex}.boss-link{color:var(--accent-2)}@media (prefers-reduced-motion:reduce){.boss-avatar.hurt{animation:none}.boss-health>span{transition:none}}.celebration{z-index:55;pointer-events:none;place-items:center;display:grid;position:fixed;inset:0}.celebration-card{background:var(--bg-card);border:1px solid color-mix(in srgb, var(--gold) 45%, var(--line));box-shadow:var(--keycap), 0 0 70px -18px var(--gold), var(--shadow);text-align:center;border-radius:28px;justify-items:center;gap:8px;padding:30px 46px 34px;animation:1.7s cubic-bezier(.22,1,.36,1) both celebrate;display:grid}.celebration-icon{color:var(--gold);filter:drop-shadow(0 0 14px var(--gold-dim));font-size:40px;line-height:1}.celebration-card strong{font-family:var(--font-display);letter-spacing:-.03em;font-size:28px}.celebration-body{color:var(--muted);font-size:15px}.celebration.letter .celebration-card{border-color:color-mix(in srgb, var(--accent) 50%, var(--line));box-shadow:var(--keycap), 0 0 70px -18px var(--accent), var(--shadow)}.celebration.letter .celebration-icon{color:var(--accent)}@keyframes celebrate{0%{opacity:0;transform:scale(.82)translateY(10px)}14%{opacity:1;transform:scale(1.05)translateY(0)}24%{transform:scale(1)}82%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.97)translateY(-6px)}}@media (prefers-reduced-motion:reduce){.celebration-card,.toast{animation:none}}.lp-showcase{grid-template-columns:1.05fr 1fr;align-items:center;gap:34px;margin-top:34px;display:grid}.lp-showcase.reverse>.viz{order:2}.lp-showcase-copy h3{font-family:var(--font-display);letter-spacing:-.03em;margin:0 0 10px;font-size:clamp(21px,2.4vw,27px);line-height:1.15}.lp-showcase-copy p{color:var(--muted);margin:0;font-size:15px;line-height:1.65}.lp-ticks{gap:9px;margin:16px 0 0;padding:0;list-style:none;display:grid}.lp-ticks li{color:var(--text);padding-left:26px;font-size:14px;font-weight:600;position:relative}.lp-ticks li:before{content:"";border-left:2px solid var(--accent);border-bottom:2px solid var(--accent);width:9px;height:5px;position:absolute;top:6px;left:4px;transform:rotate(-45deg)}.viz{border-radius:var(--radius);background:var(--bg-card);border:1px solid var(--line);box-shadow:var(--keycap-sm);margin:0;padding:26px}.viz figcaption{color:var(--faint);text-align:center;margin-top:14px;font-size:13px}.viz-anatomy{justify-items:center;gap:4px;display:grid}.viz-word{font-family:var(--font-type);color:var(--muted);letter-spacing:.02em;font-size:clamp(30px,4vw,44px)}.viz-pair{color:var(--danger);background:var(--danger-dim);border-radius:6px;align-items:baseline;gap:6px;padding:0 6px;display:inline-flex;position:relative}.viz-pair b{font-weight:700}.viz-arc{border:2px solid var(--danger);border-bottom:0;border-radius:10px 10px 0 0;height:12px;position:absolute;top:-13px;left:6%;right:6%}.viz-cost{color:var(--danger);margin-bottom:12px;font-size:17px;font-weight:800}.viz-keys{gap:4px;display:grid}.viz-krow{justify-content:center;gap:4px;display:flex}.viz-key{background:var(--bg-elev);width:22px;height:22px;color:var(--faint);text-transform:uppercase;border-radius:6px;place-items:center;font-size:10px;font-weight:700;display:grid}.viz-key.lit{background:var(--bg-hover);color:var(--text)}.viz-key.same{background:var(--danger);color:#1a0e0b;box-shadow:0 0 14px -2px var(--danger)}.viz-alphabet{gap:16px;display:grid}.viz-stage{gap:6px;display:grid}.viz-stage-label{letter-spacing:.14em;text-transform:uppercase;color:var(--faint);font-size:11px;font-weight:700}.viz-strip{align-items:center;gap:3px;display:flex}.viz-letter{background:var(--bg-hover);border-radius:5px;flex:1;height:20px}.viz-letter.off{opacity:.34}.viz-stage-count{color:var(--faint);flex:none;margin-left:8px;font-size:11px;font-weight:700}.viz-target svg{width:100%;height:170px;display:block}.viz-line-target{fill:none;stroke:var(--accent);stroke-width:2px;stroke-dasharray:5 4;opacity:.85}.viz-line-speed{fill:none;stroke:var(--hit);stroke-width:2.6px}.viz-target figcaption{justify-content:center;gap:18px;display:flex}.viz-legend{align-items:center;gap:7px;display:flex}.viz-legend:before{content:"";border-radius:2px;width:16px;height:3px}.viz-legend.target:before{background:var(--accent)}.viz-legend.speed:before{background:var(--hit)}.lp-points{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px 30px;margin:40px 0 0;padding:0;list-style:none;display:grid}.lp-points li{border-top:1px solid var(--line);gap:3px;padding:14px 0;display:grid}.lp-points strong{font-size:15px}.lp-points span{color:var(--muted);font-size:14px;line-height:1.55}@media (width<=860px){.lp-showcase{grid-template-columns:1fr;gap:22px}.lp-showcase.reverse>.viz{order:0}}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.landing{--lp-max:1080px;min-height:100dvh}.lp-topbar{z-index:20;background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid color-mix(in srgb, var(--line) 55%, transparent);width:100%;position:sticky;top:0}.lp-topbar-inner{min-width:0;max-width:var(--lp-max);flex-wrap:wrap;align-items:center;gap:12px 18px;margin:0 auto;padding:16px 24px;display:flex}.lp-nav{flex-wrap:wrap;flex:auto;gap:6px;min-width:0;display:flex}.lp-nav a{color:var(--muted);border-radius:999px;padding:8px 12px;font-size:14px;font-weight:500}.lp-nav a:hover{color:var(--text);background:var(--bg-hover)}.lp-lang{border:1px solid var(--line);border-radius:999px;display:flex;overflow:hidden}.lp-lang button{color:var(--faint);letter-spacing:.08em;background:0 0;border:0;padding:6px 10px;font-size:12px;font-weight:700}.lp-btn{border:1px solid var(--line);color:var(--text);background:0 0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-size:15px;font-weight:600;transition:transform .15s,background .15s,box-shadow .15s;display:inline-flex}.lp-btn:hover{transform:translateY(-1px)}.lp-btn.ghost:hover{background:var(--bg-hover)}.lp-btn.primary{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#07110d;box-shadow:var(--keycap-sm), 0 10px 26px #ffa73342;border-color:#0000}.lp-btn.primary:disabled{opacity:.6;cursor:progress;transform:none}.lp-btn.wide{width:100%}.lp-topbar .lp-btn{padding:9px 16px;font-size:14px}.lp-hero{max-width:var(--lp-max);text-align:center;margin:0 auto;padding:48px 24px 24px}.lp-eyebrow{border:1px solid var(--line);color:var(--accent);letter-spacing:.12em;text-transform:uppercase;background:0 0;border-radius:999px;margin:0 0 22px;padding:6px 14px;font-size:12px;font-weight:600;display:inline-block}.lp-hero h1{font-family:var(--font-display);letter-spacing:-.04em;max-width:22ch;box-shadow:none;text-shadow:none;background:0 0;margin:0 auto 16px;font-size:clamp(32px,5vw,54px);line-height:1.12}.lp-sub{color:var(--muted);max-width:48ch;margin:0 auto 32px;font-size:clamp(16px,2vw,19px);line-height:1.65}.lp-cta{flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;margin-bottom:8px;display:flex}.lp-cta-link{color:var(--muted);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--muted) 45%, transparent);text-decoration-color:color-mix(in srgb, var(--muted) 45%, transparent);text-underline-offset:4px;background:0 0;border:0;padding:4px 2px;font-size:15px;font-weight:500}.lp-cta-link:hover{color:var(--text);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.lp-test-link{color:var(--muted);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--muted) 40%, transparent);text-decoration-color:color-mix(in srgb, var(--muted) 40%, transparent);text-underline-offset:3px;margin:10px 0 0;font-size:14px;font-weight:500;display:inline-block}.lp-test-link:hover{color:var(--text)}.lp-proof{flex-wrap:wrap;justify-content:center;gap:10px;margin:28px 0 0;padding:0;list-style:none;display:flex}.lp-proof li{color:var(--muted);border:1px solid var(--line);background:color-mix(in srgb, var(--bg-card) 70%, transparent);border-radius:999px;padding:7px 14px;font-size:13px}.lp-demo{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 14%, transparent), color-mix(in srgb, var(--bg-card) 92%, #fff 4%)), var(--bg-card);border:1px solid color-mix(in srgb, var(--accent) 32%, var(--line));border-radius:calc(var(--radius) + 4px);max-width:680px;box-shadow:var(--keycap-sm), 0 10px 28px #00000038;text-align:left;margin:36px auto 0;padding:16px 20px 22px}.lp-demo-head{align-items:center;gap:6px;padding-bottom:12px;display:flex}.lp-demo-kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-size:10px;font-weight:700}.lp-demo-box{border:1px solid var(--line);background:var(--bg-elev);cursor:text;border-radius:14px;align-content:center;min-height:96px;padding:16px;transition:border-color .2s,box-shadow .2s;display:grid;position:relative}.lp-demo-box:focus{outline:none}.lp-demo-box.armed{border-color:color-mix(in srgb, var(--accent) 55%, var(--line));box-shadow:0 0 0 3px var(--accent-dim)}.lp-demo-text{font-family:var(--font-type);color:var(--muted);flex-wrap:wrap;align-items:baseline;margin:0;font-size:clamp(17px,2.6vw,23px);line-height:1.55;display:flex}.lp-dch{color:var(--muted)}.lp-dch.hit{color:var(--hit)}.lp-dch.miss{color:var(--miss);background:var(--danger-dim);border-radius:3px}.lp-dch.space{opacity:.45}.lp-dch.found{color:var(--danger);background:var(--danger-dim);box-shadow:0 0 0 2px var(--danger);border-radius:4px}.lp-dch.cursor{color:var(--text);border-bottom:3px solid var(--accent);border-radius:2px}.lp-demo-hint{pointer-events:none;text-align:center;color:var(--faint);letter-spacing:.02em;margin:0;font-size:13px;font-weight:500;position:absolute;bottom:12px;left:16px;right:16px}.lp-demo-aha{color:var(--muted);margin:0;font-size:14px;line-height:1.55}.lp-demo-stats{align-items:center;gap:22px;margin-top:14px;display:flex}.lp-demo-stats>div{align-items:baseline;gap:5px;display:flex}.lp-demo-stats strong{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:26px;font-weight:700}.lp-demo-stats em{color:var(--muted);font-size:12px;font-style:normal}.lp-demo-progress{background:var(--bg-hover);border-radius:99px;flex:1;height:4px;overflow:hidden}.lp-demo-progress>span{background:var(--accent);height:100%;transition:width .12s linear;display:block}.lp-demo-result{border-top:1px solid var(--line);gap:14px;margin-top:16px;padding-top:16px;display:grid}.lp-demo-finding{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:9px;margin:0;font-size:15px;display:flex}.lp-demo-finding code{font-family:var(--font-type);background:var(--bg-hover);color:var(--text);letter-spacing:.1em;border-radius:6px;padding:2px 9px;font-size:19px}.lp-demo-finding strong{color:var(--danger)}.lp-demo-finding span{color:var(--faint);font-size:13px}.lp-demo-actions{flex-wrap:wrap;gap:10px;display:flex}.lp-section{max-width:var(--lp-max);margin:0 auto;padding:80px 24px}.lp-steps{counter-reset:lpstep;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:980px;margin:0 auto 48px;padding:0;list-style:none;display:grid}.lp-steps li{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);counter-increment:lpstep;gap:10px;padding:22px 20px 20px;display:grid;position:relative}.lp-steps li:before{content:counter(lpstep);width:28px;height:28px;color:var(--accent);background:var(--accent-dim);border:1px solid color-mix(in srgb, var(--accent) 35%, var(--line));border-radius:999px;place-items:center;font-size:13px;font-weight:700;display:grid}.lp-steps strong{letter-spacing:-.02em;font-size:16px}.lp-steps span{color:var(--muted);font-size:14px;line-height:1.55}.lp-mid-cta{text-align:center;border-radius:var(--radius);border:1px solid var(--line);background:color-mix(in srgb, var(--bg-card) 80%, transparent);justify-items:center;gap:12px;max-width:520px;margin:48px auto 0;padding:28px 24px;display:grid}.lp-mid-cta h3{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:22px}.lp-mid-cta p{color:var(--muted);margin:0;font-size:15px;line-height:1.55}.lp-pricing-foot{text-align:center;color:var(--faint);margin:28px auto 0;font-size:14px}.lp-support{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;max-width:560px;margin:0 auto;display:flex}.lp-section.narrow{max-width:760px}.lp-section h2{font-family:var(--font-display);letter-spacing:-.04em;text-align:center;margin:0 0 10px;font-size:clamp(26px,4vw,38px)}.lp-section-sub{color:var(--muted);text-align:center;max-width:60ch;margin:0 auto 34px;line-height:1.6}.lp-plans{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:820px;margin:0 auto;display:grid}.lp-plan h3{margin:0 0 8px;font-size:17px}.lp-section h2+.lp-faq{margin-top:34px}.lp-plan{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;padding:26px 24px;display:flex;position:relative}.lp-plan.pro{border-color:color-mix(in srgb, var(--gold) 40%, var(--line));box-shadow:0 0 0 1px color-mix(in srgb, var(--gold) 18%, transparent), var(--shadow)}.lp-badge{background:var(--gold-dim);color:var(--gold);border:1px solid color-mix(in srgb, var(--gold) 40%, transparent);letter-spacing:.1em;text-transform:uppercase;border-radius:999px;padding:4px 12px;font-size:11px;font-weight:700;position:absolute;top:-11px;left:24px}.lp-price{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin:6px 0 18px;font-size:42px;font-weight:700}.lp-price em{font-style:normal;font-family:var(--font-ui);color:var(--muted);letter-spacing:0;margin-left:8px;font-size:13px;font-weight:500}.lp-plan ul{flex:1;gap:10px;margin:0 0 22px;padding:0;list-style:none;display:grid}.lp-plan li{color:var(--muted);padding-left:24px;font-size:14px;line-height:1.5;position:relative}.lp-plan li:before{content:"";border-left:2px solid var(--accent);border-bottom:2px solid var(--accent);width:9px;height:5px;position:absolute;top:6px;left:4px;transform:rotate(-45deg)}.lp-form{gap:10px;display:grid}.lp-form input{border:1px solid var(--line);background:var(--bg-elev);border-radius:12px;padding:12px 14px;font-size:15px}.lp-form input:focus{border-color:color-mix(in srgb, var(--accent) 55%, var(--line));outline:none}.lp-note,.lp-msg{color:var(--faint);margin:12px 0 0;font-size:13px;line-height:1.5}.lp-msg.ok{color:var(--accent)}.lp-msg.bad{color:var(--danger)}.lp-faq{gap:10px;display:grid}.lp-faq details{background:var(--bg-card);border:1px solid var(--line);border-radius:14px;padding:16px 18px}.lp-faq summary{cursor:pointer;font-weight:600;list-style:none}.lp-faq summary::-webkit-details-marker{display:none}.lp-faq summary:after{content:"+";float:right;color:var(--muted);font-weight:400}.lp-faq details[open] summary:after{content:"−"}.lp-faq p{color:var(--muted);margin:12px 0 0;font-size:14px;line-height:1.65}.lp-footer{max-width:var(--lp-max);border-top:1px solid var(--line);color:var(--faint);flex-wrap:wrap;justify-content:space-between;gap:12px;margin:0 auto;padding:28px 24px 44px;font-size:14px;display:flex}.lp-footer a:hover{color:var(--text)}@media (width<=860px){.lp-plans,.lp-steps{grid-template-columns:1fr}.lp-nav{display:none}.lp-topbar-inner{gap:12px}.lp-topbar-inner .brand{flex:1}.lp-section{padding:56px 20px}.lp-hero{padding-top:44px}}@media (width<=520px){.lp-lang{display:none}.lp-demo-stats{gap:14px}}@media (prefers-reduced-motion:reduce){.lp-demo-progress>span{transition:none}}.account{min-width:0;display:flex;position:relative}.account-trigger{align-items:center;gap:8px;min-width:0;max-width:190px;display:inline-flex}.account-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.account-trigger.is-in{color:var(--text)}.account-avatar{object-fit:cover;background:var(--bg-hover);border-radius:999px;flex:none;width:22px;height:22px}.account-avatar-letter{color:var(--bg);background:linear-gradient(160deg, var(--gold), var(--accent));place-items:center;font-size:12px;font-weight:800;display:grid}.sync-dot{background:var(--faint);border-radius:999px;flex:none;width:7px;height:7px}.sync-dot.sync-synced{background:var(--hit)}.sync-dot.sync-error{background:var(--danger)}.sync-dot.sync-syncing{background:var(--accent);animation:1.1s ease-in-out infinite sync-pulse}@keyframes sync-pulse{50%{opacity:.25}}.account-menu{z-index:40;border:1px solid var(--line);background:var(--bg-card);width:min(288px,100vw - 32px);box-shadow:0 6px 0 var(--edge), 0 22px 40px #00000073;border-radius:16px;gap:10px;padding:14px;display:grid;position:absolute;top:calc(100% + 10px);right:0}.account-who{align-items:center;gap:10px;min-width:0;display:flex}.account-who .account-avatar{width:34px;height:34px;font-size:15px}.account-who-text{min-width:0;display:grid}.account-who-text strong,.account-who-text span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account-who-text span{color:var(--muted);font-size:12px}.account-pitch{margin:0;font-size:14px;line-height:1.45}.account-local,.account-sync{color:var(--muted);margin:0;font-size:12px}.account-sync.is-error{color:var(--danger)}.account-action{text-align:center;width:100%}.google-btn{width:100%;font:inherit;color:#1f1f1f;cursor:pointer;background:#fff;border:0;border-radius:12px;justify-content:center;align-items:center;gap:10px;padding:10px 14px;font-weight:600;display:flex;box-shadow:0 3px #b9b2aa}.google-btn:hover{background:#f3f3f3}.google-btn:active{box-shadow:none;transform:translateY(3px)}@media (width<=900px){.account-trigger .account-label{display:none}.account-trigger{max-width:none}}.legal{background:var(--bg);min-height:100vh}.legal-top{border-bottom:1px solid var(--line);align-items:center;padding:18px 22px;display:flex}.legal-body{width:min(720px,100% - 40px);margin:0 auto;padding:40px 0 72px}.legal-body h1{font-family:var(--font-display);letter-spacing:-.03em;margin:0 0 6px;font-size:clamp(30px,5vw,40px)}.legal-updated{color:var(--faint);margin:0 0 26px;font-size:13px}.legal-intro{color:var(--text);font-size:17px;line-height:1.6}.legal-body h2{font-family:var(--font-display);letter-spacing:-.02em;margin:34px 0 8px;font-size:20px}.legal-body p{color:var(--muted);margin:0 0 12px;line-height:1.65}.legal-body section p:last-child{margin-bottom:0}.lp-footer-links{flex-wrap:wrap;gap:18px;display:flex}.account-founding{color:var(--gold);margin:0;font-size:12px;font-weight:700}.switch-picker{gap:8px;display:grid}.switch-option{text-align:left;font:inherit;color:var(--muted);background:var(--bg-card);border:1px solid var(--line);box-shadow:0 3px 0 var(--edge);cursor:pointer;border-radius:12px;gap:2px;padding:10px 12px;display:grid}.switch-option strong{color:var(--text);font-size:14px;font-weight:700}.switch-option span{color:var(--faint);font-size:12px}.switch-option:hover{background:var(--bg-hover)}.switch-option:active{box-shadow:none;transform:translateY(3px)}.switch-option.is-on{border-color:var(--accent);background:var(--accent-dim);box-shadow:0 3px 0 var(--edge)}.switch-option.is-on strong{color:var(--accent)}.keyboard.shape-split{justify-content:center;align-items:flex-start;gap:clamp(18px,5vw,64px);display:flex}.khalf{gap:6px;display:grid}.shape-split .khalf:first-child .kthumbs{justify-content:flex-end}.shape-split .khalf:last-child .kthumbs{justify-content:flex-start}.kthumbs{margin-top:6px}.keyboard.shape-ortho .krow{justify-content:center}.gate{background:radial-gradient(900px 500px at 50% -10%, #ffa7331a, transparent 70%), var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.gate-card{text-align:center;border:1px solid var(--line);background:var(--bg-card);width:min(420px,100%);box-shadow:0 6px 0 var(--edge), 0 26px 50px #00000073;border-radius:20px;justify-items:center;gap:16px;padding:34px 28px;display:grid}.gate-brand{margin-bottom:4px}.gate-card h1{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:28px}.gate-card p{color:var(--muted);margin:0;line-height:1.6}.gate-card .google-btn{margin-top:4px}.gate-error{color:var(--danger);font-size:13px}.gate-back{color:var(--faint);font-size:13px}.gate-back:hover{color:var(--text)}.gate-checking{color:var(--faint)}.onboard{z-index:80;background:#080503c7;place-items:center;padding:20px 14px;display:grid;position:fixed;inset:0;overflow:auto}.onboard-card{background:var(--bg-card);border:1px solid var(--line);width:min(560px,100%);box-shadow:var(--keycap), var(--shadow);border-radius:22px;gap:14px;padding:28px 24px 22px;display:grid}.onboard-eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin:0;font-size:11px;font-weight:700}.onboard-card h1{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:clamp(22px,4vw,30px)}.onboard-body{color:var(--muted);margin:0;font-size:15px;line-height:1.55}.onboard-brand{font-family:var(--font-display);color:var(--text);letter-spacing:-.02em;margin:0;font-size:18px}.onboard-choices{gap:10px;margin-top:4px;display:grid}.onboard-choices .lp-btn{justify-content:center;width:100%}.onboard-skip{color:var(--faint);background:0 0;border:0;justify-self:start;padding:6px 2px;font-size:13px}.onboard-skip:hover{color:var(--text)}.onboard-box{border:1px solid var(--line);background:var(--bg);border-radius:16px;min-height:88px;padding:18px 16px;position:relative}.onboard-box.armed{cursor:text}.onboard-text{font-family:var(--font-type);flex-wrap:wrap;align-items:baseline;margin:0;font-size:clamp(16px,2.4vw,21px);line-height:1.55;display:flex}.onboard-live{color:var(--muted);gap:18px;font-size:14px;display:flex}.onboard-live strong{color:var(--text);font-size:18px}.onboard-stats{gap:22px;display:flex}.onboard-stats>div{align-items:baseline;gap:5px;display:flex}.onboard-stats strong{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:36px;font-weight:700}.onboard-stats em{color:var(--muted);font-size:13px;font-style:normal}.onboard-finding{gap:10px;display:grid}.onboard-card .lp-btn.primary{justify-self:start;margin-top:4px}.test-finish{justify-items:start;gap:10px;max-width:640px;margin-top:18px;display:grid}.test-finish-summary{color:var(--muted);margin:0}.test-finish-even{color:var(--faint);margin:0;font-size:14px}@media (width<=640px){.onboard-card{padding:22px 16px 18px}.onboard-choices .lp-btn{padding:12px 14px}}.typing-capture-face{pointer-events:none}.typing-capture-input{opacity:0;color:#0000;caret-color:#0000;z-index:2;background:0 0;border:0;width:100%;height:100%;margin:0;padding:0;font-size:16px;position:absolute;inset:0}.text-board:focus-within{border-color:color-mix(in srgb, var(--accent) 50%, var(--line))}.mobile-practice-note,.lp-mobile-note,.gate-mobile-note{color:var(--muted);text-wrap:pretty;margin:0 0 12px;font-size:13px;line-height:1.4;display:none}.lp-mobile-note{text-align:center;max-width:46ch;margin:14px auto 0}.gate-mobile-note{margin:0 0 16px}@media (width<=640px){.onboard-box .typing-capture-input,.lp-demo-box .typing-capture-input{min-height:3.2em}}.mode-bar{background:color-mix(in srgb, var(--bg-card) 78%, transparent);border:1px solid var(--line);margin:0 0 14px;border-radius:999px;flex-wrap:wrap;justify-content:center;gap:4px;width:fit-content;max-width:100%;margin-inline:auto;padding:4px;transition:opacity .28s,filter .28s;display:flex}.mode-bar-btn{appearance:none;color:var(--muted);font:inherit;letter-spacing:.02em;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600;line-height:1.2;transition:color .15s,background .15s}.mode-bar-btn:hover{color:var(--text);background:var(--bg-hover)}.mode-bar-btn.is-on{color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent)}.mode-bar-btn:active{transform:translateY(1px)}.mode-bar.is-faded{opacity:.22;filter:saturate(.7);pointer-events:none}@media (prefers-reduced-motion:reduce){.mode-bar,.mode-bar-btn{transition:none}}@media (width<=640px){.mode-bar{border-radius:14px;gap:2px;padding:3px}.mode-bar-btn{min-height:40px;padding:8px 10px;font-size:12px}}.coach-card{border:1px solid color-mix(in srgb, var(--accent) 32%, var(--line));background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 14%, transparent), color-mix(in srgb, var(--bg-card) 92%, #fff 4%)), var(--bg-card);box-shadow:var(--keycap-sm), 0 10px 28px #00000038;border-radius:14px;margin:0 0 12px;padding:0;overflow:hidden}.coach-card.heat-warn{border-color:color-mix(in srgb, var(--gold) 45%, var(--line))}.coach-card.heat-critical{border-color:color-mix(in srgb, var(--accent-2) 55%, var(--line));box-shadow:var(--keycap-sm), 0 0 24px -8px var(--gold)}.coach-card-body{grid-template-columns:auto 1fr;align-items:start;gap:12px;padding:12px 14px;display:grid}.coach-card-icon{width:36px;height:36px;color:var(--gold);background:color-mix(in srgb, var(--gold) 16%, transparent);border:1px solid color-mix(in srgb, var(--gold) 28%, transparent);border-radius:11px;place-items:center;font-size:16px;display:grid;box-shadow:inset 0 1px #ffffff0f}.coach-card-label{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:2px;font-size:10px;font-weight:700;display:block}.coach-card-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text);margin:0 0 4px;font-size:15px;display:block}.coach-card-text{color:var(--muted);margin:0;font-size:13px;line-height:1.4}.coach-heat-warn{background:color-mix(in srgb, var(--gold) 12%, transparent);border-bottom:1px solid color-mix(in srgb, var(--gold) 25%, transparent);align-items:flex-start;gap:10px;padding:10px 14px;display:flex}.coach-heat-warn strong{color:var(--gold);font-size:13px;display:block}.coach-heat-warn p{color:var(--muted);margin:2px 0 0;font-size:12.5px;line-height:1.35}.coach-why{color:var(--accent);font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;margin-top:6px;padding:0;font-size:12.5px;font-weight:650;text-decoration:underline}.coach-why.ghost{color:var(--muted);font-weight:600;text-decoration:none}.result-coach-close{border:1px solid color-mix(in srgb, var(--accent) 28%, var(--line));background:color-mix(in srgb, var(--accent) 10%, transparent);border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:10px 14px;margin-top:10px;padding:10px 12px;display:grid}.result-coach-copy p{color:var(--text);margin:0;font-size:13.5px;line-height:1.4}.coach-pair-caps{flex:none;align-items:center;gap:8px;display:flex}.coach-pair-cap{width:36px;height:36px;font-family:var(--font-display);text-transform:uppercase;color:var(--text);background:color-mix(in srgb, var(--bg-card) 80%, #fff 8%);border:1px solid color-mix(in srgb, var(--gold) 40%, var(--line));box-shadow:var(--keycap-sm);border-radius:8px;place-items:center;font-size:18px;font-weight:700;display:grid}.coach-pair-arrow{color:var(--gold);font-size:16px;font-weight:700}.coach-brief{border-radius:inherit;box-sizing:border-box;flex-direction:column;flex:auto;justify-content:center;gap:6px;min-height:0;padding:clamp(14px,2.4vh,32px) clamp(18px,2vw,28px);display:flex}.coach-brief-label{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-size:10px;font-weight:700}.coach-brief-pair{font-family:var(--font-display);letter-spacing:.04em;color:var(--text);margin:0;font-size:clamp(28px,4vw,44px)}.coach-brief-title{font-family:var(--font-display);color:var(--text);font-size:18px}.coach-brief-body,.coach-brief-finger,.coach-brief-miss,.coach-brief-hint{color:var(--muted);margin:0;font-size:13.5px;line-height:1.4}.coach-brief-finger{color:var(--gold);font-weight:650}.coach-brief-bar{background:color-mix(in srgb, var(--line) 80%, transparent);border-radius:99px;height:4px;margin-top:8px;overflow:hidden}.coach-brief-bar i{transform-origin:0;background:var(--accent);border-radius:inherit;width:100%;height:100%;display:block}.coach-brief-skip{border:1px solid var(--line);background:var(--bg-card);color:var(--text);font:inherit;cursor:pointer;border-radius:10px;flex-direction:column;align-self:flex-start;align-items:flex-start;gap:2px;margin-top:8px;padding:8px 12px;font-size:13px;font-weight:650;display:flex}.coach-brief-skip em{color:var(--muted);font-size:11px;font-style:normal;font-weight:500}.result-coach-tip,.onboard-coach-tip,.coaching-tip{color:var(--muted);margin:8px 0 0;font-size:13px;font-style:normal;font-weight:400;line-height:1.45}.coaching-tip{flex-basis:100%;order:5;width:100%;display:block}.coaching-list li{flex-wrap:wrap}.onboard-body.muted{color:var(--muted)}.onboard-choices .choice-rich{text-align:left;gap:4px;display:grid}.onboard-choices .choice-rich strong{font-size:15px}.onboard-choices .choice-rich span{color:var(--muted);font-size:12.5px;font-weight:400;line-height:1.35}.onboard-home-keys{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.onboard-home-keys .home-key{border:1px solid var(--border);background:var(--panel);border-radius:10px;justify-items:center;gap:4px;padding:10px 6px;display:grid}.onboard-home-keys kbd{font:600 18px/1 var(--mono,ui-monospace, monospace);color:var(--text)}.onboard-home-keys span{color:var(--muted);text-align:center;font-size:11px}.onboard-home-tips{color:var(--muted);gap:4px;margin:14px 0 0;padding-left:18px;font-size:13.5px;line-height:1.45;display:grid}.onboard-home-actions{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}@media (width<=520px){.onboard-home-keys{grid-template-columns:repeat(2,minmax(0,1fr))}}.onboard-progress{justify-content:center;gap:6px;margin:0 0 14px;padding:0;list-style:none;display:flex}.onboard-progress li{background:var(--border);border-radius:50%;width:8px;height:8px;transition:background .15s,transform .15s}.onboard-progress li.done{background:color-mix(in srgb, var(--accent,#6ea8fe) 55%, var(--border))}.onboard-progress li.current{background:var(--accent,#6ea8fe);transform:scale(1.25)}.onboard-choices .choice-rich.is-selected{border-color:var(--accent,#6ea8fe);box-shadow:0 0 0 1px color-mix(in srgb, var(--accent,#6ea8fe) 45%, transparent)}.onboard-choices-row{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=520px){.onboard-choices-row{grid-template-columns:1fr}}.onboard-volume{color:var(--muted);gap:6px;margin-top:14px;font-size:13px;display:grid}.onboard-volume input[type=range]{width:100%}.onboard-nav{grid-template-columns:1fr auto;align-items:center;gap:10px 12px;margin-top:18px;display:grid}.onboard-nav .onboard-skip{grid-column:1/-1;justify-self:center;margin-top:2px}.onboard-nav .lp-btn.primary{justify-self:end}.modern-hud{align-items:stretch;gap:8px}.modern-hud .streak-chip,.modern-hud .level-chip,.modern-hud .xp-chip,.modern-hud .keys-chip,.modern-hud .heat-chip{background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 88%, #fff), var(--bg-card));border:1px solid color-mix(in srgb, var(--line) 80%, transparent);box-shadow:var(--keycap-sm), inset 0 1px 0 #ffffff0a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:999px;align-items:center;gap:6px;padding:6px 10px;display:flex}.modern-hud .streak-chip strong,.modern-hud .level-chip strong,.modern-hud .keys-chip strong{font-family:var(--font-display);letter-spacing:-.02em;font-weight:700}.modern-hud .shields{letter-spacing:1px;color:var(--accent-2);opacity:.9;font-size:10px}.modern-hud .heat-chip{color:var(--gold);gap:8px}.modern-hud .heat-rings{gap:3px;display:flex}.modern-hud .heat-rings i{background:var(--bg-hover);width:6px;height:6px;box-shadow:inset 0 0 0 1px var(--line);border-radius:50%}.modern-hud .heat-rings i.on{background:var(--gold);box-shadow:0 0 10px var(--gold-dim)}.modern-hud .heat-chip.h4,.modern-hud .heat-chip.h5{box-shadow:var(--keycap-sm), 0 0 18px -6px var(--gold)}.modern-hud .keys-chip{color:var(--accent);box-shadow:var(--keycap-sm), inset 0 1px 0 #ffffff0a;border-radius:999px;outline:none}.modern-hud .keys-chip:focus:not(:focus-visible){outline:none}.modern-hud .keys-chip .keys-ico{box-shadow:none;background:0 0;border:0;outline:none;display:block;overflow:visible}.modern-hud .xp-track{background:var(--bg-hover);border-radius:999px;min-width:72px;height:4px;overflow:hidden}.modern-hud .xp-track>span{border-radius:inherit;background:linear-gradient(90deg, var(--accent-2), var(--accent), var(--gold));height:100%;box-shadow:0 0 12px var(--accent-dim);transition:width .35s cubic-bezier(.22,1,.36,1);display:block}.modern-side .card{background:linear-gradient(165deg, color-mix(in srgb, var(--bg-card) 92%, #fff 4%), var(--bg-card));border:1px solid color-mix(in srgb, var(--line) 90%, transparent);box-shadow:var(--keycap-sm), 0 12px 28px #00000038}.modern-side .streak-hero{align-items:center;gap:14px;display:flex}.modern-side .streak-hero>strong{font-family:var(--font-display);color:var(--accent-2);text-shadow:0 0 24px color-mix(in srgb, var(--accent-2) 35%, transparent);font-size:42px;line-height:1}.modern-side .shield-row span,.shield-row mini i,.shield-row.mini i{background:var(--bg-hover);color:#0000;border-radius:2px;width:10px;height:10px;margin-right:4px;font-size:10px;display:inline-block}.modern-side .shield-row span.on,.shield-row.mini i.on{background:var(--accent-2);box-shadow:0 0 10px color-mix(in srgb, var(--accent-2) 50%, transparent);color:var(--accent-2)}.modern-side .repair-hint{color:var(--gold);margin:10px 0 0;font-size:12px}.modern-side .goal-ring .ring{--p:0%;background:radial-gradient(circle at center, var(--bg-card) 58%, transparent 59%), conic-gradient(var(--accent) var(--p), var(--bg-hover) 0);width:54px;height:54px;box-shadow:inset 0 0 0 1px var(--line);border-radius:50%;place-items:center;display:grid}.modern-side .goal-ring .ring strong{font-size:12px;font-family:var(--font-display)}.modern-side .quest{border-top:1px solid var(--line);padding:10px 0}.modern-side .quest:first-of-type{border-top:0}.modern-side .quest.done{opacity:.72}.modern-side .quest-slot{letter-spacing:.08em;text-transform:uppercase;color:var(--faint);font-size:10px}.modern-side .quest.slot-target .quest-slot{color:var(--accent)}.modern-side .quest.slot-skill .quest-slot{color:var(--gold)}.modern-side .quest-xp{color:var(--gold);font-size:11px;font-weight:600}.modern-side .quest .bar,.quest-tile .bar,.ach-mini .bar,.ach-bar .bar{background:var(--bg-hover);border-radius:999px;height:5px;margin-top:6px;overflow:hidden}.modern-side .quest .bar>span,.quest-tile .bar>span,.ach-mini .bar>span,.ach-bar .bar>span{border-radius:inherit;background:linear-gradient(90deg, var(--accent-2), var(--accent));height:100%;transition:width .4s cubic-bezier(.22,1,.36,1);display:block}.modern-side .quest.slot-target .bar>span{background:linear-gradient(90deg, var(--accent), var(--gold))}.modern-side .title-equip{color:var(--gold);margin:4px 0 0;font-size:14px}.modern-side .rank-meta{color:var(--muted);margin-top:6px;font-size:13px}.modern-side .week-race{color:var(--muted);margin-top:10px;font-size:12px}.modern-side .week-race.up{color:var(--hit)}.modern-side .week-race.down{color:var(--accent-2)}.result-card.modern{background:linear-gradient(165deg, color-mix(in srgb, var(--bg-elev) 70%, #2a1c12), var(--bg-card));border:1px solid color-mix(in srgb, var(--accent) 22%, var(--line));box-shadow:var(--keycap), 0 0 0 1px color-mix(in srgb, var(--gold) 8%, transparent), 0 24px 60px #00000073;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:20px;padding:18px 18px 14px;position:relative;overflow:visible}.result-card.modern .result-glow{pointer-events:none;background:radial-gradient(#ffa7332e,#0000 65%);height:70%;position:absolute;inset:-40% -20% auto}.result-card.modern.pb{border-color:color-mix(in srgb, var(--gold) 55%, var(--line));box-shadow:var(--keycap), 0 0 40px -8px var(--gold)}.result-card.modern.chest{border-color:color-mix(in srgb, var(--accent-2) 40%, var(--line))}.result-card.modern .result-top{grid-template-columns:1.3fr 1fr 1fr;gap:10px;display:grid;position:relative}.result-card.modern .result-metric{background:color-mix(in srgb, var(--bg) 55%, transparent);border:1px solid var(--line);border-radius:14px;padding:10px 12px}.result-card.modern .result-metric.primary{background:linear-gradient(160deg, color-mix(in srgb, var(--accent) 16%, transparent), transparent);border-color:color-mix(in srgb, var(--accent) 28%, var(--line))}.result-card.modern .result-metric.xp{background:linear-gradient(160deg, color-mix(in srgb, var(--gold) 14%, transparent), transparent)}.result-card.modern .result-metric-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:4px;font-size:11px;display:block}.result-card.modern .result-metric strong{font-family:var(--font-display);letter-spacing:-.03em;font-size:28px;line-height:1}.result-card.modern .result-metric.primary strong{color:var(--accent)}.result-card.modern .result-metric.xp strong{color:var(--gold)}.result-card.modern .result-xp-parts{color:var(--muted);flex-wrap:wrap;gap:6px 10px;margin-top:10px;font-size:12px;display:flex;position:relative}.result-card.modern .result-xp-parts .heat-tag{color:var(--gold)}.result-loop{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex;position:relative}.result-chip{background:color-mix(in srgb, var(--bg) 60%, transparent);border:1px solid var(--line);border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;display:inline-flex}.result-chip em{color:var(--muted);margin-left:2px;font-style:normal}.result-chip.streak{color:var(--accent-2)}.result-chip.heat{color:var(--gold)}.result-chip.keys{color:var(--accent)}.result-quests-done{color:var(--hit);flex-direction:column;gap:4px;margin-top:10px;font-size:12px;display:flex;position:relative}.result-chest{background:linear-gradient(135deg, color-mix(in srgb, var(--accent-2) 18%, transparent), color-mix(in srgb, var(--gold) 12%, transparent));border:1px solid color-mix(in srgb, var(--gold) 30%, var(--line));border-radius:14px;align-items:center;gap:12px;margin-top:12px;padding:12px;animation:.5s cubic-bezier(.22,1,.36,1) chest-pop;display:flex;position:relative}.result-chest .chest-icon{font-size:28px}.result-chest strong{color:var(--gold);display:block}.result-chest span{color:var(--text);font-size:13px}@keyframes chest-pop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.result-records{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex;position:relative}.result-records span{background:var(--gold-dim);color:var(--gold);border:1px solid color-mix(in srgb, var(--gold) 35%, transparent);border-radius:999px;padding:4px 8px;font-size:11px}.result-repair,.result-week{margin-top:8px;font-size:12px;position:relative}.result-repair{color:var(--gold)}.result-week.up{color:var(--hit)}.result-week.down{color:var(--muted)}.result-card.modern .result-actions{gap:8px;margin-top:14px;display:flex;position:relative}.result-card.modern .result-again{font:inherit;color:#1a1008;background:linear-gradient(135deg, var(--accent), var(--accent-2));box-shadow:0 6px 0 color-mix(in srgb, var(--accent-2) 55%, #000), 0 10px 24px #00000059;cursor:pointer;border:0;border-radius:12px;flex:1;padding:12px 14px;font-weight:650}.result-card.modern .result-again:active{box-shadow:0 3px 0 color-mix(in srgb, var(--accent-2) 55%, #000);transform:translateY(3px)}.result-card.modern .result-share{border:1px solid var(--line);background:color-mix(in srgb, var(--bg) 50%, transparent);color:var(--text);font:inherit;cursor:pointer;border-radius:12px;padding:12px 14px}.result-card.modern.heat-4,.result-card.modern.heat-5{box-shadow:var(--keycap), 0 0 48px -10px var(--gold)}.profile-page .profile-hero{background:radial-gradient(700px 240px at 10% -20%, #ffa7332e, transparent 55%), linear-gradient(160deg, color-mix(in srgb, var(--bg-elev) 80%, #3a2414), var(--bg-card));border:1px solid color-mix(in srgb, var(--accent) 18%, var(--line));box-shadow:var(--keycap), 0 20px 50px #00000047;border-radius:22px;grid-template-columns:1.4fr 1fr;gap:18px;margin-bottom:18px;padding:20px;display:grid}.profile-page .eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:0 0 6px;font-size:11px}.profile-page .profile-hero h1{letter-spacing:-.03em;margin:0;font-size:clamp(28px,4vw,40px)}.profile-page .hero-title{color:var(--gold);font-weight:600}.profile-page .level-panel{max-width:420px;margin-top:16px}.profile-page .level-row{color:var(--muted);justify-content:space-between;margin-bottom:8px;font-size:13px;display:flex}.profile-page .level-row strong{color:var(--text);font-size:15px}.xp-track.xl{background:var(--bg-hover);border-radius:999px;height:10px;overflow:hidden}.xp-track.xl>span{border-radius:inherit;background:linear-gradient(90deg, var(--accent-2), var(--accent), var(--gold));height:100%;box-shadow:0 0 18px var(--accent-dim);display:block}.hero-stats{grid-template-columns:1fr 1fr;gap:10px;display:grid}.hero-stat{background:color-mix(in srgb, var(--bg) 45%, transparent);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:2px;padding:12px;display:flex}.hero-stat strong{font-family:var(--font-display);letter-spacing:-.03em;font-size:26px}.hero-stat.streak strong{color:var(--accent-2)}.hero-stat em{color:var(--muted);font-size:12px;font-style:normal}.hero-stat small{font-size:11px}.hero-stat .up{color:var(--hit)}.hero-stat .down{color:var(--accent-2)}.shield-row.mini{margin-top:6px}.chart-card.glass{background:linear-gradient(165deg, color-mix(in srgb, var(--bg-card) 90%, #fff 3%), var(--bg-card));border:1px solid color-mix(in srgb, var(--line) 90%, transparent);box-shadow:var(--keycap-sm), 0 16px 36px #0003}.quest-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.quest-tile{background:color-mix(in srgb, var(--bg) 40%, transparent);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:8px;min-height:140px;padding:14px;display:flex}.quest-tile.slot-target{border-color:color-mix(in srgb, var(--accent) 35%, var(--line));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 10%, transparent)}.quest-tile.slot-skill{border-color:color-mix(in srgb, var(--gold) 30%, var(--line))}.quest-tile.done{opacity:.75;background:color-mix(in srgb, var(--hit) 8%, var(--bg))}.quest-tile header{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;gap:8px;font-size:11px;display:flex}.quest-tile strong{flex:1;font-size:15px;line-height:1.35}.quest-tile footer{color:var(--muted);font-size:12px}.records-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.records-grid>div{background:color-mix(in srgb, var(--bg) 40%, transparent);border:1px solid var(--line);border-radius:14px;padding:12px}.records-grid em{color:var(--muted);margin-bottom:6px;font-size:12px;font-style:normal;display:block}.records-grid strong{font-family:var(--font-display);letter-spacing:-.02em;font-size:22px}.records-grid small{color:var(--muted);font-size:12px}.title-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.title-tile{text-align:left;border:1px solid var(--line);background:color-mix(in srgb, var(--bg) 45%, transparent);color:var(--muted);cursor:pointer;font:inherit;border-radius:14px;padding:12px}.title-tile.on{color:var(--text)}.title-tile.equipped{border-color:color-mix(in srgb, var(--gold) 45%, var(--line));box-shadow:0 0 0 1px color-mix(in srgb, var(--gold) 20%, transparent), 0 0 24px -10px var(--gold)}.title-tile:disabled{cursor:default;opacity:.45}.title-tile .rarity{letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:10px;display:block}.title-tile.rarity-rare .rarity{color:#7eb6ff}.title-tile.rarity-epic .rarity{color:#c084fc}.title-tile.rarity-legendary .rarity{color:var(--gold)}.title-tile strong{margin-bottom:4px;display:block}.title-tile em{color:var(--faint);font-size:11px;font-style:normal}.ach-progress-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;display:grid}.ach-mini{border:1px solid var(--line);background:color-mix(in srgb, var(--bg) 40%, transparent);border-radius:14px;padding:12px}.ach-mini.on{border-color:color-mix(in srgb, var(--gold) 35%, var(--line))}.ach-mini strong{margin-bottom:8px;font-size:14px;display:block}.ach-mini em{color:var(--muted);font-size:11px;font-style:normal}.modern-ach .ach{background:linear-gradient(165deg, color-mix(in srgb, var(--bg-card) 92%, #fff 3%), var(--bg-card));border:1px solid var(--line);box-shadow:var(--keycap-sm);transition:transform .2s,border-color .2s}.modern-ach .ach-bar{margin-top:8px}.modern-ach .ach-reward{color:var(--gold);margin-top:8px;font-size:12px}.cal-frozen{outline:1px solid color-mix(in srgb, var(--accent-2) 50%, transparent)}@media (width<=900px){.profile-page .profile-hero,.quest-grid{grid-template-columns:1fr}.records-grid,.result-card.modern .result-top{grid-template-columns:1fr 1fr}.result-card.modern .result-metric.xp{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){.result-chest{animation:none}.modern-hud .xp-track>span,.modern-side .quest .bar>span,.quest-tile .bar>span{transition:none}}.practice-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 14px;margin:12px 0 16px;display:flex}.practice-controls-secondary{flex-wrap:wrap;gap:8px;display:flex}.practice-controls .ctrl-btn{appearance:none;border:1px solid color-mix(in srgb, var(--line) 70%, var(--accent) 12%);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 70%, #fff 8%), var(--bg-elevated,var(--bg-card)));color:var(--text);font:inherit;letter-spacing:.01em;box-shadow:var(--keycap-sm), inset 0 1px 0 #ffffff0d;cursor:pointer;border-radius:12px;align-items:center;gap:7px;padding:10px 16px;font-size:13px;font-weight:650;text-decoration:none;transition:transform 80ms,box-shadow 80ms,color .12s,border-color .12s,background .12s;display:inline-flex}.practice-controls .ctrl-btn:hover{color:var(--text);border-color:color-mix(in srgb, var(--accent) 45%, var(--line));background:linear-gradient(180deg, color-mix(in srgb, var(--bg-card) 55%, var(--accent) 8%), var(--bg-card))}.practice-controls .ctrl-btn:active{box-shadow:none;transform:translateY(2px)}.practice-controls .ctrl-btn.primary{color:#1a1008;background:linear-gradient(135deg, var(--accent), var(--accent-2));box-shadow:0 4px 0 color-mix(in srgb, var(--accent-2) 55%, #000), 0 10px 22px #00000052, 0 0 24px -8px var(--accent);border:0;margin-left:auto;padding:11px 18px;font-size:14px;font-weight:750}.practice-controls .ctrl-btn.primary:hover{filter:brightness(1.05);background:linear-gradient(135deg, var(--accent), var(--accent-2));border:0}.practice-controls .ctrl-btn.primary:active{box-shadow:0 2px 0 color-mix(in srgb, var(--accent-2) 55%, #000)}.side.hud-side{flex-direction:column;gap:10px;max-height:calc(100vh - 88px);display:flex;position:sticky;top:12px;overflow:hidden}.side.hud-side .side-focus{background:linear-gradient(165deg, color-mix(in srgb, var(--bg-card) 92%, #fff 4%), var(--bg-card));border:1px solid color-mix(in srgb, var(--line) 90%, transparent);box-shadow:var(--keycap-sm);border-radius:14px;align-items:center;gap:10px;padding:10px 12px;display:flex}.side.hud-side .focus-letter.sm{border-radius:12px;flex-shrink:0;width:44px;height:44px;margin:0;font-size:22px}.side-focus-meta{gap:2px;min-width:0;display:grid}.side-focus-meta strong{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:650}.side-focus-meta span{color:var(--text);font-size:13px}.side-focus-meta em{color:var(--faint);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;font-style:normal;overflow:hidden}.focus-bigram-inline{color:var(--gold)!important;font-size:11.5px!important}.hud-block{grid-template-columns:1fr 1fr;gap:8px;display:grid}.hud-cell{background:linear-gradient(165deg, color-mix(in srgb, var(--bg-card) 92%, #fff 4%), var(--bg-card));border:1px solid color-mix(in srgb, var(--line) 90%, transparent);box-shadow:var(--keycap-sm);border-radius:14px;gap:4px;min-width:0;padding:10px 11px;display:grid}.hud-k{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:650}.hud-v{font-family:var(--font-display);letter-spacing:-.02em;font-size:22px;line-height:1}.hud-v small{color:var(--muted);margin-left:2px;font-size:12px;font-weight:600}.hud-cell.streak .hud-v{color:var(--accent-2)}.hud-cell.heat .hud-v{color:var(--gold)}.hud-cell.rank .rank-name{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:15px;overflow:hidden}.hud-sub{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px;font-size:11px;display:flex}.hud-sub em{color:var(--faint);font-style:normal}.hud-cell .goal-ring.compact{align-items:center;gap:8px;display:flex}.hud-cell .goal-ring.compact .ring{flex-shrink:0;width:40px;height:40px}.hud-cell .goal-ring.compact .ring strong{font-size:11px}.hud-cell.heat .heat-rings{margin-top:2px}.repair-hint.compact{margin:0;padding:0 2px;font-size:11.5px}.quests-compact{background:linear-gradient(165deg, color-mix(in srgb, var(--bg-card) 92%, #fff 4%), var(--bg-card));border:1px solid color-mix(in srgb, var(--line) 90%, transparent);min-height:0;box-shadow:var(--keycap-sm);border-radius:14px;flex-direction:column;flex:1;padding:10px 11px 8px;display:flex;overflow:hidden}.quests-head{justify-content:space-between;align-items:baseline;margin-bottom:6px;display:flex}.quests-head h3{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0;font-size:11px;font-weight:650}.quests-head span{font-variant-numeric:tabular-nums;color:var(--gold);font-size:12px;font-weight:650}.quest-rows{scrollbar-width:thin;flex-direction:column;gap:6px;min-height:0;display:flex;overflow:auto}.quest-row{border-left:2px solid #0000;border-radius:10px;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 6px;display:grid}.quest-row.slot-volume{border-left-color:color-mix(in srgb, var(--accent) 50%, transparent)}.quest-row.slot-skill{border-left-color:color-mix(in srgb, var(--gold) 50%, transparent)}.quest-row.slot-target{border-left-color:color-mix(in srgb, var(--accent-2) 50%, transparent)}.quest-row.done{background:color-mix(in srgb, var(--hit) 8%, transparent);border-left-color:var(--hit);opacity:1}.quest-row.done .quest-title{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:color-mix(in srgb, var(--muted) 50%, transparent);text-decoration-color:color-mix(in srgb, var(--muted) 50%, transparent)}.quest-ico{color:var(--muted);text-align:center;font-size:12px}.quest-row.done .quest-ico{color:var(--hit);font-weight:700}.quest-main{gap:4px;min-width:0;display:grid}.quest-title-row{justify-content:space-between;align-items:baseline;gap:6px;display:flex}.quest-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.quest-xp{color:var(--gold);flex-shrink:0;font-size:11px;font-weight:650}.quest-done-label{letter-spacing:.06em;text-transform:uppercase;color:var(--hit);flex-shrink:0;font-size:10px;font-weight:700}.quest-frac{font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap;text-align:right;flex-shrink:0;min-width:3.6em;font-size:11px}.quest-frac.done,.quest-row.done .quest-frac{color:var(--hit);letter-spacing:.06em;text-transform:uppercase;min-width:0;font-size:10px;font-weight:750}.bar.thin{background:var(--bg-hover);border-radius:99px;height:3px;margin:0;overflow:hidden}.bar.thin>span{border-radius:inherit;background:linear-gradient(90deg, var(--accent-2), var(--accent));height:100%;display:block}.quest-row.done .bar.thin>span{background:linear-gradient(90deg, var(--hit), color-mix(in srgb, var(--hit) 70%, var(--gold)))}.week-race.compact{margin:0;padding:0 4px;font-size:11px}.modern-hud .heat-chip.labeled{align-items:center;gap:7px;display:inline-flex}.modern-hud .heat-chip .heat-label{letter-spacing:.08em;text-transform:uppercase;color:var(--gold);font-size:10px;font-weight:700}.modern-hud .heat-chip .heat-rings i{width:7px;height:7px}.modern-hud .heat-chip:not(.lit){opacity:.55}.modern-hud .heat-chip:not(.lit) .heat-label{color:var(--muted)}.modern-hud .heat-chip em{font-variant-numeric:tabular-nums;font-size:12px;font-style:normal;font-weight:700}.result-heat-beat{background:linear-gradient(135deg, color-mix(in srgb, var(--gold) 16%, transparent), color-mix(in srgb, var(--accent-2) 10%, transparent));border:1px solid color-mix(in srgb, var(--gold) 35%, var(--line));border-radius:16px;margin-top:12px;padding:12px 14px;position:relative;box-shadow:inset 0 1px #ffffff0d,0 10px 28px #0003}.result-heat-beat.h4,.result-heat-beat.h5{box-shadow:inset 0 1px 0 #ffffff0f, 0 0 36px -8px var(--gold)}.result-heat-beat.reset{border-color:color-mix(in srgb, var(--muted) 40%, var(--line));background:color-mix(in srgb, var(--bg) 40%, transparent)}.heat-beat-top{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.heat-beat-fire{font-size:22px;line-height:1}.heat-beat-level{gap:0;display:grid}.heat-beat-label{letter-spacing:.12em;text-transform:uppercase;color:var(--gold);font-size:10px;font-weight:700}.heat-beat-level strong{font-family:var(--font-display);color:var(--text);font-size:26px;line-height:1}.heat-beat-level small{color:var(--muted);margin-left:2px;font-size:13px}.heat-rings.lg{gap:5px;margin-left:auto;display:flex}.heat-rings.lg i{background:var(--bg-hover);width:10px;height:10px;box-shadow:inset 0 0 0 1px var(--line);border-radius:50%}.heat-rings.lg i.on{background:var(--gold);box-shadow:0 0 12px var(--gold-dim)}.heat-beat-mult{justify-items:end;gap:2px;margin-left:4px;display:grid}.heat-beat-mult em{color:var(--gold);font-variant-numeric:tabular-nums;font-size:15px;font-style:normal;font-weight:750}.heat-beat-mult span{color:var(--muted);font-size:11px}.heat-beat-cta{border-top:1px solid color-mix(in srgb, var(--gold) 22%, transparent);margin-top:10px;padding-top:10px}.heat-beat-cta strong{color:var(--text);margin-bottom:2px;font-size:14px;display:block}.heat-beat-cta p{color:var(--muted);margin:0;font-size:12.5px;line-height:1.4}.heat-beat-cta .heat-teach{color:var(--gold);margin-top:6px;font-size:12px}.quest-tile.done{outline:1px solid color-mix(in srgb, var(--hit) 45%, transparent);background:color-mix(in srgb, var(--hit) 8%, var(--bg-card))}.quest-tile.done strong{color:var(--muted)}.quest-tile .quest-done-badge{color:var(--hit);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:700}.celebration.heat .celebration-card{border-color:color-mix(in srgb, var(--gold) 50%, transparent);box-shadow:0 0 40px -8px var(--gold)}@media (width<=960px){.side.hud-side{max-height:none;position:static;overflow:visible}}.ach-page .ach-hero{margin-bottom:18px}.ach-page .ach-hero h1{margin:4px 0 8px}.ach-page .ach-count{color:var(--muted);align-items:baseline;gap:4px;margin:0;display:flex}.ach-page .ach-count strong{font-family:var(--font-display);color:var(--gold);font-size:28px;line-height:1}.modern-ach .ach{transition:transform .15s,border-color .15s,box-shadow .2s}.modern-ach .ach.on{border-color:color-mix(in srgb, var(--gold) 40%, var(--line));box-shadow:0 0 24px -10px var(--gold)}.modern-ach .ach:not(.on):hover{border-color:color-mix(in srgb, var(--accent) 30%, var(--line));transform:translateY(-2px)}@keyframes heat-pip-on{0%{opacity:.25;filter:brightness(.7);transform:scale(.35)}55%{opacity:1;filter:brightness(1.25);transform:scale(1.28)}to{opacity:1;filter:none;transform:scale(1)}}@keyframes heat-glow-pulse{0%,to{box-shadow:var(--keycap-sm), 0 0 18px -10px var(--gold)}50%{box-shadow:var(--keycap-sm), 0 0 28px -6px var(--gold)}}@keyframes heat-mult-pop{0%{opacity:.4;transform:scale(.7)}55%{opacity:1;transform:scale(1.18)}to{transform:scale(1)}}@keyframes heat-card-in{0%{opacity:.7;transform:translateY(4px)}to{opacity:1;transform:none}}.heat-rings i.on{animation:.45s cubic-bezier(.22,1,.36,1) both heat-pip-on}.heat-rings.sm{gap:3px;margin-top:4px;display:flex}.heat-rings.sm i{background:var(--bg-hover);width:6px;height:6px;box-shadow:inset 0 0 0 1px var(--line);border-radius:50%}.heat-rings.sm i.on{background:var(--gold);box-shadow:0 0 8px var(--gold-dim)}.modern-hud .heat-chip.juice,.hud-cell.heat.juice,.hero-stat.heat.juice,.result-heat-beat.juice{animation:1.8s ease-in-out infinite heat-glow-pulse}.heat-mult-pop,.heat-beat-mult.pop em{animation:.5s cubic-bezier(.22,1,.36,1) both heat-mult-pop;display:inline-block}.result-heat-beat.juice{animation:.35s ease-out heat-card-in,1.8s ease-in-out .35s infinite heat-glow-pulse}@media (prefers-reduced-motion:reduce){.heat-rings i.on,.modern-hud .heat-chip.juice,.hud-cell.heat.juice,.hero-stat.heat.juice,.result-heat-beat.juice,.heat-mult-pop,.heat-beat-mult.pop em{animation:none}}.toast.heatbeat{border-left-color:var(--gold);background:linear-gradient(135deg, color-mix(in srgb, var(--gold) 14%, transparent), var(--bg-card));min-width:min(320px,92vw);box-shadow:0 12px 32px #00000059, 0 0 24px -10px var(--gold)}.toast.heatbeat.h4,.toast.heatbeat.h5{box-shadow:0 12px 32px #00000059, 0 0 36px -8px var(--gold)}.toast-heat-row{align-items:center;gap:8px;margin-bottom:6px;display:flex}.toast-heat-fire{font-size:16px;line-height:1}.practice-page .gauges .gauge{background:linear-gradient(165deg, color-mix(in srgb, var(--bg-card) 92%, #fff 4%), var(--bg-card));border:1px solid color-mix(in srgb, var(--line) 90%, transparent);border-radius:14px;min-height:68px;padding:10px 12px}.practice-page .gauges .gauge .label{letter-spacing:.1em;font-size:10px;font-weight:650}.practice-page .gauges .gauge .value{font-size:clamp(22px,2.1vw,28px)}.practice-page .letter-rail{background:color-mix(in srgb, var(--bg-card) 70%, transparent);border:1px solid color-mix(in srgb, var(--line) 85%, transparent);border-radius:12px;gap:3px;margin-bottom:10px;padding:6px 8px;box-shadow:inset 0 1px #ffffff08}.practice-page .letter{border-radius:7px;width:24px;height:24px;font-size:10.5px}.practice-page .letter.mastered{box-shadow:var(--keycap-sm), 0 0 10px -4px var(--hit);outline:1px solid color-mix(in srgb, var(--hit) 45%, transparent)}.practice-page .letter.focused{outline:2px solid var(--gold);box-shadow:0 0 0 3px var(--gold-dim), 0 0 16px -4px var(--gold);transform:translateY(-1px)}.practice-page .letter-count{font-variant-numeric:tabular-nums;color:var(--muted)}.practice-page .mode-bar{background:color-mix(in srgb, var(--bg-card) 85%, transparent);border-color:color-mix(in srgb, var(--line) 90%, transparent);box-shadow:var(--keycap-sm)}.practice-page .mode-bar-btn.is-on{color:var(--text);background:color-mix(in srgb, var(--accent) 18%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 35%, transparent), 0 0 18px -8px var(--accent)}.practice-page .keyboard{border-color:color-mix(in srgb, var(--line) 80%, #5a4636);box-shadow:inset 0 1px 0 #fff0dc1a, inset 0 -14px 26px #00000073, 0 10px 0 var(--edge), 0 26px 46px #00000073, 0 0 0 1px color-mix(in srgb, var(--accent) 8%, transparent)}.practice-page .flow{margin-bottom:10px}.profile-page.hub{flex-direction:column;gap:16px;display:flex}.profile-page.hub .profile-hero{margin-bottom:0}.hub-strip{border-radius:16px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:12px;display:grid}.hub-strip.glass{background:linear-gradient(165deg, color-mix(in srgb, var(--bg-card) 90%, #fff 3%), var(--bg-card));border:1px solid color-mix(in srgb, var(--line) 90%, transparent);box-shadow:var(--keycap-sm)}.hub-chip{background:color-mix(in srgb, var(--bg) 40%, transparent);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.hub-chip em{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:11px;font-style:normal}.hub-chip strong{font-family:var(--font-display);letter-spacing:-.02em;font-size:22px}.hub-section-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.hub-section-head h2{margin:0}.hub-section-head span{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:650}.hub-split{grid-template-columns:1.35fr 1fr;gap:16px;display:grid}.hub-split>section{margin:0}.inventory-board .title-tile{transition:transform .15s,box-shadow .2s,border-color .2s}.inventory-board .title-tile.on:hover{transform:translateY(-2px)}.inventory-board .title-tile.rarity-legendary.on{background:radial-gradient(120% 80% at 50% 0%, color-mix(in srgb, var(--gold) 18%, transparent), transparent 60%), color-mix(in srgb, var(--bg) 45%, transparent)}.inventory-board .title-tile.rarity-epic.on{background:radial-gradient(120% 80% at 50% 0%, #c084fc29, transparent 60%), color-mix(in srgb, var(--bg) 45%, transparent)}.trophy-board .records-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.trophy-board .trophy{background:color-mix(in srgb, var(--bg) 40%, transparent);border:1px solid var(--line);border-radius:14px;padding:12px;position:relative;overflow:hidden}.trophy-board .trophy:before{content:"";background:linear-gradient(90deg, var(--gold), transparent);opacity:.55;width:100%;height:2px;position:absolute;inset:0 auto auto 0}.trophy-board .trophy em{color:var(--muted);margin-bottom:6px;font-size:12px;font-style:normal;display:block}.trophy-board .trophy strong{font-family:var(--font-display);letter-spacing:-.02em;font-size:22px}.mastery.premium{gap:6px}.mastery.premium .mastery-key{width:34px;height:34px;box-shadow:var(--keycap-sm);border-radius:10px;font-weight:750}.mastery.premium .mastery-key.tier-3,.mastery.premium .mastery-key.tier-4{box-shadow:var(--keycap-sm), 0 0 14px -4px var(--hit)}.hub-analytics{border:1px solid var(--line);background:color-mix(in srgb, var(--bg-card) 88%, transparent);border-radius:18px;padding:0;overflow:hidden}.hub-analytics>summary{cursor:pointer;color:var(--text);justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;font-weight:650;list-style:none;display:flex}.hub-analytics>summary::-webkit-details-marker{display:none}.hub-analytics>summary em{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;font-style:normal}.hub-analytics>summary:after{content:"▾";color:var(--muted);transition:transform .15s}.hub-analytics[open]>summary:after{transform:rotate(180deg)}.hub-analytics[open]>summary{border-bottom:1px solid var(--line)}.hub-analytics>:not(summary){margin:14px 16px}.hub-analytics .stats-grid.dense{margin-top:14px}.hero-stat.heat .heat-rings.sm{margin-top:6px}.hero-stat.currency strong{color:var(--accent)}.hero-stat.heat strong{color:var(--gold)}@media (width<=960px){.hub-split{grid-template-columns:1fr}.hub-strip{grid-template-columns:1fr 1fr}}.modern-ach .ach{opacity:.55;background:linear-gradient(165deg, color-mix(in srgb, var(--bg-card) 92%, #fff 3%), var(--bg-card));position:relative;overflow:hidden}.modern-ach .ach.locked{filter:saturate(.75)}.modern-ach .ach.on{opacity:1;filter:none}.modern-ach .ach-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.modern-ach .ach-rarity{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:700}.modern-ach .ach.rarity-rare .ach-rarity{color:#7eb6ff}.modern-ach .ach.rarity-epic .ach-rarity{color:#c084fc}.modern-ach .ach.rarity-legendary .ach-rarity{color:var(--gold)}.modern-ach .ach.rarity-rare.on{border-color:color-mix(in srgb, #7eb6ff 45%, var(--line));box-shadow:0 0 28px -12px #7eb6ff}.modern-ach .ach.rarity-epic.on{border-color:color-mix(in srgb, #c084fc 50%, var(--line));box-shadow:0 0 30px -10px #c084fc}.modern-ach .ach.rarity-legendary.on{border-color:color-mix(in srgb, var(--gold) 55%, var(--line));box-shadow:0 0 36px -8px var(--gold);background:radial-gradient(120% 70% at 50% -10%, color-mix(in srgb, var(--gold) 18%, transparent), transparent 55%), linear-gradient(165deg, color-mix(in srgb, var(--bg-card) 90%, #fff 3%), var(--bg-card))}.modern-ach .ach .icon{background:color-mix(in srgb, var(--bg) 50%, transparent);border:1px solid var(--line);border-radius:12px;place-items:center;width:44px;height:44px;font-size:24px;display:grid}.modern-ach .ach.on .icon{border-color:color-mix(in srgb, var(--gold) 35%, var(--line));box-shadow:0 0 18px -8px var(--gold)}.modern-ach .ach.on .icon.pop{animation:.55s cubic-bezier(.22,1,.36,1) both heat-mult-pop}.modern-ach .ach-bar{grid-template-columns:1fr auto;align-items:center;gap:8px;margin-top:4px;display:grid}.modern-ach .ach-bar em{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px;font-style:normal}.modern-ach .ach.on .ach-bar .bar>span{background:linear-gradient(90deg, var(--gold), color-mix(in srgb, var(--gold) 60%, var(--accent)))}.mode-bar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mode-bar-btn.is-on{box-shadow:0 0 18px -8px var(--accent)}.text-board.premium-board{background:radial-gradient(900px 220px at 12% -30%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 55%), linear-gradient(165deg, color-mix(in srgb, var(--bg-card) 90%, #fff 5%), var(--bg-card));border:1px solid color-mix(in srgb, var(--accent) 22%, var(--line));box-shadow:var(--keycap), 0 18px 44px #00000047, inset 0 1px 0 #ffffff0a}.text-board.premium-board:focus-within{border-color:color-mix(in srgb, var(--accent) 55%, var(--line));box-shadow:var(--keycap), 0 0 0 1px color-mix(in srgb, var(--accent) 35%, transparent), 0 22px 50px #00000052, 0 0 40px -18px var(--accent)}.text-board.heat-ambient.h3,.text-board.heat-ambient.h4,.text-board.heat-ambient.h5{box-shadow:var(--keycap), 0 0 36px -12px var(--gold), inset 0 1px 0 #ffffff0d}.board-chrome{align-items:center;gap:10px;min-height:22px;margin:-6px 0 12px;display:flex}.board-chrome-label{letter-spacing:.14em;text-transform:uppercase;color:var(--faint);font-size:10px;font-weight:700}.board-chrome-hint{color:var(--faint);margin-left:auto;font-size:12px}.typing-capture{position:relative}.typing-capture.needs-focus .typing-capture-face{filter:saturate(.82)brightness(.72)}.board-focus-overlay{z-index:3;cursor:pointer;background:radial-gradient(520px 180px at 50% 42%, color-mix(in srgb, var(--accent) 22%, transparent), transparent 70%), color-mix(in srgb, var(--bg) 55%, transparent);-webkit-backdrop-filter:blur(1.5px);color:inherit;font:inherit;border:0;place-items:center;margin:0;padding:16px;display:grid;position:absolute;inset:0}.board-focus-overlay-card{text-align:center;border:1px solid color-mix(in srgb, var(--accent) 45%, var(--line));background:linear-gradient(165deg, color-mix(in srgb, var(--bg-card) 82%, #fff 6%), var(--bg-card));max-width:28ch;box-shadow:var(--keycap), 0 0 0 1px color-mix(in srgb, var(--accent) 20%, transparent), 0 18px 40px #00000059, 0 0 36px -12px var(--accent);border-radius:16px;justify-items:center;gap:6px;padding:16px 22px;animation:1.8s ease-in-out infinite focus-cue-pulse;display:grid}.board-focus-overlay-card strong{letter-spacing:.01em;color:var(--text);text-wrap:balance;font-size:16px;font-weight:750}@keyframes focus-cue-pulse{0%,to{box-shadow:var(--keycap), 0 0 0 1px color-mix(in srgb, var(--accent) 20%, transparent), 0 18px 40px #00000059, 0 0 28px -14px var(--accent)}50%{box-shadow:var(--keycap), 0 0 0 1px color-mix(in srgb, var(--accent) 40%, transparent), 0 18px 40px #00000059, 0 0 42px -8px var(--accent)}}@media (prefers-reduced-motion:reduce){.board-focus-overlay-card{animation:none}}.board-combo{color:var(--gold);letter-spacing:.02em;text-shadow:0 0 18px color-mix(in srgb, var(--gold) 45%, transparent);margin-left:auto;font-size:12px;font-weight:700}.board-combo em{font-style:normal;font-family:var(--font-display);margin-right:4px;font-size:15px}.board-heat-chip{letter-spacing:.04em;color:var(--gold);background:color-mix(in srgb, var(--gold) 14%, transparent);border:1px solid color-mix(in srgb, var(--gold) 35%, var(--line));border-radius:999px;padding:3px 8px;font-size:11px;font-weight:700}.board-heat-chip i{color:var(--muted);font-style:normal;font-weight:600}.ch.cursor{color:var(--text);background:color-mix(in srgb, var(--accent) 32%, transparent);box-shadow:0 0 0 1px var(--accent), 0 0 18px color-mix(in srgb, var(--accent) 55%, transparent);border-radius:5px}.kkey.next{box-shadow:inset 0 1px 0 #fff0dc38, inset 0 -3px 6px #00000080, 0 6px 0 #120e0b, 0 10px 18px #0000008c, 0 0 0 2px var(--accent), 0 0 28px var(--accent-dim), 0 0 42px color-mix(in srgb, var(--accent) 35%, transparent);animation:1.6s ease-in-out infinite key-focus-glow;transform:translateY(-3px)}.kkey.next .kcap{color:var(--text);text-shadow:0 0 12px color-mix(in srgb, var(--accent) 40%, transparent)}@keyframes key-focus-glow{0%,to{box-shadow:inset 0 1px 0 #fff0dc38, inset 0 -3px 6px #00000080, 0 6px 0 #120e0b, 0 10px 18px #0000008c, 0 0 0 2px var(--accent), 0 0 26px var(--accent-dim), 0 0 36px color-mix(in srgb, var(--accent) 28%, transparent)}50%{box-shadow:inset 0 1px 0 #fff0dc42, inset 0 -3px 6px #00000080, 0 6px 0 #120e0b, 0 10px 18px #0000008c, 0 0 0 2px color-mix(in srgb, var(--accent) 85%, #fff), 0 0 34px var(--accent), 0 0 52px color-mix(in srgb, var(--accent) 45%, transparent)}}@media (prefers-reduced-motion:reduce){.kkey.next{animation:none}}.keyboard{border-color:color-mix(in srgb, var(--accent) 14%, var(--line))}.run-beat{border:1px solid color-mix(in srgb, var(--line) 90%, transparent);background:linear-gradient(135deg, color-mix(in srgb, var(--bg-card) 92%, #fff 4%), var(--bg-card));box-shadow:var(--keycap-sm), 0 10px 24px #0003;border-radius:14px;gap:8px;margin:0 0 10px;padding:10px 12px;animation:.28s ease-out run-beat-in;display:grid}.run-beat.emphasize{border-color:color-mix(in srgb, var(--gold) 40%, var(--line));background:linear-gradient(135deg, color-mix(in srgb, var(--gold) 14%, transparent), color-mix(in srgb, var(--accent-2) 8%, transparent)), var(--bg-card);box-shadow:var(--keycap-sm), 0 0 28px -10px var(--gold)}.run-beat.reset{border-color:color-mix(in srgb, var(--muted) 40%, var(--line))}.run-beat-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.run-beat-stats>div{gap:2px;min-width:0;display:grid}.run-beat-stats em{letter-spacing:.12em;text-transform:uppercase;color:var(--faint);font-size:10px;font-style:normal}.run-beat-stats strong{font-family:var(--font-display);letter-spacing:-.02em;font-size:18px;line-height:1.1}.run-beat-heat strong small{color:var(--gold);margin-left:4px;font-size:12px;font-weight:700}.run-beat-copy{color:var(--muted);gap:2px;font-size:13px;display:grid}.run-beat-milestone{color:var(--gold);font-size:13px}.run-beat-copy em{color:var(--faint);font-style:normal}.run-beat-keep{color:var(--faint);margin:0;font-size:12px}@keyframes run-beat-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@media (width<=720px){.run-beat-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.profile-page.empty-hub .empty-hero{margin-bottom:16px}.profile-page .empty-lead{color:var(--text);max-width:46ch;margin:10px 0 6px;font-size:16px;line-height:1.45}.profile-page .empty-sub{color:var(--muted);max-width:48ch;margin:0 0 16px;font-size:14px;line-height:1.5}.profile-page .empty-cta{text-decoration:none;display:inline-flex}.hero-stats.ghost .hero-stat,.ghost-strip .hub-chip{opacity:.55}.empty-panel .empty-inventory{gap:6px;padding:18px 4px 8px;display:grid}.empty-panel .empty-inventory strong{font-size:15px}.empty-panel .empty-inventory p{color:var(--muted);max-width:42ch;margin:0;font-size:14px;line-height:1.5}.boss.coach-boss .boss-head.glass{background:radial-gradient(700px 220px at 50% -30%, color-mix(in srgb, var(--accent-2) 18%, transparent), transparent 55%), linear-gradient(165deg, color-mix(in srgb, var(--bg-elev) 82%, #3a2414), var(--bg-card));border:1px solid color-mix(in srgb, var(--accent) 20%, var(--line));box-shadow:var(--keycap), 0 18px 44px #00000047;border-radius:22px;gap:14px;padding:18px 18px 16px}.boss-identity{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;display:flex}.boss-identity-meta{text-align:left;gap:4px;min-width:min(240px,100%);display:grid}.boss-health-block{gap:6px;width:min(420px,100%);display:grid}.boss-health-row{justify-content:space-between;align-items:baseline;display:flex}.boss-health-row em{color:var(--muted);font-size:12px;font-style:normal;font-weight:700}.boss-health.critical>span{background:linear-gradient(90deg, var(--accent), var(--accent-2));box-shadow:0 0 18px color-mix(in srgb, var(--accent-2) 45%, transparent)}.boss-meta.hud-meta{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.boss-chip{color:var(--text);background:color-mix(in srgb, var(--bg-hover) 88%, transparent);border:1px solid var(--line);border-radius:999px;align-items:center;gap:4px;padding:5px 10px;font-size:12px;font-weight:700;display:inline-flex}.boss-chip.urgent{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 45%, var(--line));background:color-mix(in srgb, var(--danger) 12%, transparent)}.boss-chip.hot{color:var(--gold);border-color:color-mix(in srgb, var(--gold) 40%, var(--line))}.boss-brief{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(160deg, color-mix(in srgb, var(--bg-card) 88%, #fff 4%), color-mix(in srgb, var(--bg-card) 94%, transparent));border:1px solid color-mix(in srgb, var(--accent) 28%, var(--line));box-shadow:var(--keycap-sm), 0 16px 36px #00000047}.boss-outcome.glass{background:linear-gradient(160deg, color-mix(in srgb, var(--bg-elev) 85%, #3a2414), var(--bg-card));border:1px solid color-mix(in srgb, var(--accent) 18%, var(--line));box-shadow:var(--keycap), 0 16px 40px #00000047;border-radius:18px;margin-top:14px;padding:18px}.help.coach-help .help-cards{gap:10px;margin:18px 0;display:grid}.help-card{border:1px solid color-mix(in srgb, var(--line) 90%, transparent);background:linear-gradient(165deg, color-mix(in srgb, var(--bg-card) 92%, #fff 4%), var(--bg-card));box-shadow:var(--keycap-sm);border-radius:14px;grid-template-columns:auto 1fr;align-items:start;gap:12px;padding:12px 14px;display:grid}.help-card>span{background:color-mix(in srgb, var(--accent) 14%, transparent);border:1px solid color-mix(in srgb, var(--accent) 28%, var(--line));border-radius:11px;place-items:center;width:36px;height:36px;display:grid}.help-card strong{margin-bottom:4px;font-size:14px;display:block}.help-card p{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.keys-ico{vertical-align:-.12em;flex:none;width:1.05em;height:1.05em;display:inline-block}.keys-ico.inline{width:.95em;height:.95em;margin-left:2px}.modern-hud .keys-chip .keys-ico{width:14px;height:14px}.modern-hud{position:relative}button.hud-chip{appearance:none;font:inherit;color:inherit;cursor:pointer;text-align:left}button.hud-chip:hover,button.hud-chip.is-open{border-color:color-mix(in srgb, var(--accent) 40%, var(--line));box-shadow:var(--keycap-sm), 0 0 18px -8px var(--accent-dim)}button.hud-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hud-panel{z-index:40;border:1px solid color-mix(in srgb, var(--line) 85%, var(--accent) 15%);background:linear-gradient(165deg, color-mix(in srgb, var(--bg-card) 92%, #fff 5%), var(--bg-card));width:min(360px,100vw - 24px);box-shadow:var(--keycap), 0 22px 48px #00000073;color:var(--text);border-radius:16px;padding:14px 16px 16px;position:absolute;top:calc(100% + 10px);right:0}.hud-panel-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.hud-panel-head strong{font-family:var(--font-display);letter-spacing:-.02em;font-size:15px}.hud-panel-close{appearance:none;border:1px solid var(--line);background:var(--bg-hover);color:var(--muted);border-radius:9px;place-items:center;width:28px;height:28px;font-size:18px;line-height:1;display:grid}.hud-panel-close:hover{color:var(--text)}.hud-panel-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hud-panel-body{color:var(--muted);gap:10px;font-size:13px;line-height:1.45;display:grid}.hud-panel-body>p{margin:0}.hud-aside{color:var(--faint);margin:0;font-size:12.5px}.hud-aside.warn{color:var(--accent-2)}.hud-facts{background:color-mix(in srgb, var(--bg) 55%, transparent);border:1px solid var(--line);border-radius:12px;gap:6px;margin:0;padding:8px 10px;list-style:none;display:grid}.hud-facts li{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.hud-facts em{color:var(--faint);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-style:normal}.hud-facts strong{color:var(--text);font-variant-numeric:tabular-nums}.hud-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:12.5px}.hud-table caption{caption-side:top;text-align:left;color:var(--faint);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:11px}.hud-table th,.hud-table td{border-bottom:1px solid var(--line);text-align:left;padding:5px 8px}.hud-table th{color:var(--faint);font-weight:600}.hud-table tr.is-now td{color:var(--gold);background:color-mix(in srgb, var(--gold) 8%, transparent);font-weight:700}.hud-ranks{gap:4px;max-height:220px;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.hud-ranks li{border:1px solid #0000;border-radius:10px;justify-content:space-between;gap:10px;padding:6px 8px;display:flex}.hud-ranks li.unlocked{color:var(--text);background:color-mix(in srgb, var(--accent) 8%, transparent)}.hud-ranks li.locked{color:var(--faint);opacity:.75}.hud-ranks li.current{border-color:color-mix(in srgb, var(--accent) 45%, var(--line));box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 20%, transparent)}.hud-ranks em{color:var(--faint);font-variant-numeric:tabular-nums;font-size:11px;font-style:normal}.hud-xp-track{background:var(--bg-hover);border-radius:99px;height:6px;overflow:hidden}.hud-xp-track>span{background:linear-gradient(90deg, var(--accent-2), var(--accent), var(--gold));height:100%;display:block}.shell.practice-fit{flex-direction:column;height:100dvh;min-height:0;max-height:100dvh;display:flex;overflow:hidden}html:has(.shell.practice-fit){height:100%;max-height:100dvh;overflow:hidden}body:has(.shell.practice-fit){height:100%;max-height:100dvh;overflow:hidden}#root:has(.shell.practice-fit){height:100%;max-height:100dvh;overflow:hidden}.shell.practice-fit .topbar{z-index:30;flex-wrap:nowrap;flex:none;gap:8px 12px;padding:8px 16px;position:sticky;top:0}.shell.practice-fit .topbar .brand{font-size:20px}.shell.practice-fit .topbar .brand-mark{border-radius:9px;width:28px;height:28px;font-size:14px}.shell.practice-fit .topbar .nav a{padding:6px 10px;font-size:13px}.shell.practice-fit .topbar .ghost-btn{padding:6px 12px}.shell.practice-fit .modern-hud .streak-chip,.shell.practice-fit .modern-hud .level-chip,.shell.practice-fit .modern-hud .xp-chip,.shell.practice-fit .modern-hud .keys-chip,.shell.practice-fit .modern-hud .heat-chip{gap:5px;padding:5px 8px}.shell.practice-fit>.page.practice-page{box-sizing:border-box;flex-direction:column;flex:auto;width:min(1400px,100% - 24px);min-height:0;margin:0 auto;padding:10px 0 12px;display:flex;overflow:visible}.shell.practice-fit .practice-grid{flex:auto;align-items:stretch;gap:14px;min-height:0}.shell.practice-fit .practice-main{flex-direction:column;flex:auto;gap:12px;min-width:0;height:100%;min-height:0;display:flex;overflow:visible}.shell.practice-fit .practice-page .mode-bar{flex:none;gap:2px;margin:0 auto;padding:3px}.shell.practice-fit .practice-page .mode-bar-btn{padding:5px 10px;font-size:12.5px}.shell.practice-fit .practice-page .gauges{flex:none;gap:8px;margin-bottom:0}.shell.practice-fit .practice-page .gauges .gauge{border-radius:12px;min-height:52px;padding:8px 12px}.shell.practice-fit .practice-page .gauges .gauge .label{letter-spacing:.08em;font-size:9px}.shell.practice-fit .practice-page .gauges .gauge .value{margin-top:2px;font-size:clamp(16px,1.7vw,24px)}.shell.practice-fit .practice-page .letter-rail{flex:none;gap:3px;margin-bottom:0;padding:4px 6px}.shell.practice-fit .practice-page .letter{border-radius:6px;width:22px;height:22px;font-size:10px}.shell.practice-fit .practice-page .letter-count{padding-left:6px;font-size:10px}.shell.practice-fit .practice-page .flow{flex:none;gap:8px;margin-bottom:0}.shell.practice-fit .practice-page .flow-track{height:4px}.shell.practice-fit .practice-page .flow-label{min-width:72px;font-size:10px}.shell.practice-fit .coach-card{border-radius:12px;flex:none;margin-bottom:0}.shell.practice-fit .coach-card-body{align-items:center;gap:10px;padding:8px 12px}.shell.practice-fit .coach-card-icon{border-radius:9px;width:28px;height:28px;font-size:13px}.shell.practice-fit .coach-card-label{margin-bottom:0;font-size:9px}.shell.practice-fit .coach-card-title{margin:0 0 2px;font-size:13.5px}.shell.practice-fit .coach-card-text{font-size:12.5px;line-height:1.35}.shell.practice-fit .coach-heat-warn{gap:8px;padding:7px 10px}.shell.practice-fit .board-wrap{flex-direction:column;flex:auto;justify-content:stretch;min-height:168px;max-height:min(38vh,440px);margin-bottom:0;display:flex;overflow:visible}.shell.practice-fit .text-board,.shell.practice-fit .text-board.premium-board,.shell.practice-fit .board-wrap>.result-card,.shell.practice-fit .board-wrap>.coach-brief{box-sizing:border-box;flex-direction:column;flex:auto;justify-content:center;min-height:0;padding:clamp(14px,2.4vh,32px) clamp(18px,2vw,28px);display:flex;overflow:visible}.shell.practice-fit .board-chrome{flex:none;gap:8px;min-height:18px;margin:0 0 10px}.shell.practice-fit .prompt,.shell.practice-fit .prompt-window{font-size:clamp(22px,2.55vw,34px)}.shell.practice-fit .prompt-window{box-sizing:content-box;flex:none;padding-bottom:6px}.shell.practice-fit .practice-controls{flex:none;gap:8px 10px;margin:0}.shell.practice-fit .practice-controls .ctrl-btn{border-radius:10px;padding:7px 12px;font-size:12.5px}.shell.practice-fit .practice-controls .ctrl-btn.primary{padding:8px 14px;font-size:13px}.shell.practice-fit .practice-page .keyboard{--key-unit:clamp(18px, 3.1vw, 40px);box-sizing:border-box;flex:none;width:100%;max-width:100%;margin-top:auto}.shell.practice-fit .run-beat{flex:none;margin-bottom:0;padding:8px 10px}.shell.practice-fit .side.hud-side{overscroll-behavior:contain;align-self:stretch;gap:8px;max-height:calc(100dvh - 64px);padding-right:2px;top:8px;overflow:hidden auto}.shell.practice-fit .side.hud-side .hud-cell,.shell.practice-fit .side.hud-side .side-focus{border-radius:12px;padding:7px 9px}.shell.practice-fit .side.hud-side .focus-letter.sm{border-radius:10px;width:36px;height:36px;font-size:18px}@media (height<=960px){.shell.practice-fit .practice-main{gap:10px}.shell.practice-fit .practice-page .flow{display:none}.shell.practice-fit .coach-card-text{font-size:12px;line-height:1.3}.shell.practice-fit .coach-card-body{padding:6px 10px}.shell.practice-fit .practice-page .gauges .gauge{min-height:46px;padding:6px 10px}.shell.practice-fit .practice-page .letter{width:20px;height:20px}.shell.practice-fit .text-board,.shell.practice-fit .text-board.premium-board,.shell.practice-fit .board-wrap>.result-card,.shell.practice-fit .board-wrap>.coach-brief{padding:clamp(12px,1.8vh,22px) clamp(16px,1.8vw,24px)}.shell.practice-fit .prompt,.shell.practice-fit .prompt-window{font-size:clamp(20px,2.4vw,30px)}.shell.practice-fit .practice-page .keyboard{--key-unit:clamp(17px, 2.9vw, 36px)}}@media (height<=720px){.shell.practice-fit .practice-page .letter-rail,.shell.practice-fit .practice-page .gauges,.shell.practice-fit .practice-controls-secondary,.shell.practice-fit .coach-card-text:not(.is-open){display:none}.shell.practice-fit .practice-main{gap:8px}.shell.practice-fit .practice-page .mode-bar{margin-bottom:0}.shell.practice-fit .practice-page .keyboard{--key-unit:clamp(16px, 2.7vw, 34px)}}@media (width<=640px){.shell.practice-fit{height:auto;min-height:0;max-height:none;overflow:visible}.shell.practice-fit>.page.practice-page{overflow:visible}.shell.practice-fit .side.hud-side{max-height:none;position:static;overflow:visible}}.shell.practice-fit:has(.practice-results){overflow:hidden auto}html:has(.shell.practice-fit .practice-results){max-height:none;overflow:auto}body:has(.shell.practice-fit .practice-results){max-height:none;overflow:auto}#root:has(.shell.practice-fit .practice-results){max-height:none;overflow:auto}.shell.practice-fit .practice-page.practice-results{flex:1 0 auto;height:auto;min-height:0;padding-bottom:20px;overflow:visible}.shell.practice-fit .practice-page.practice-results .practice-grid{flex:none;align-items:start;height:auto;min-height:0}.shell.practice-fit .practice-page.practice-results .practice-main{gap:12px;height:auto;min-height:0;overflow:visible}.shell.practice-fit .practice-page.practice-results .board-wrap{flex:none;justify-content:flex-start;height:auto;min-height:0;max-height:none;overflow:visible}.shell.practice-fit .practice-page.practice-results .board-wrap>.result-card{justify-content:initial;box-sizing:border-box;flex:none;align-content:start;width:100%;height:auto;min-height:0;max-height:none;padding:18px 18px 14px;display:grid;overflow:visible}.shell.practice-fit .practice-page.practice-results .practice-controls,.shell.practice-fit .practice-page.practice-results .keyboard{display:none}.shell.practice-fit .practice-page.practice-results .mode-bar,.shell.practice-fit .practice-page.practice-results .gauges,.shell.practice-fit .practice-page.practice-results .letter-rail,.shell.practice-fit .practice-page.practice-results .flow,.shell.practice-fit .practice-page.practice-results .coach-card,.shell.practice-fit .practice-page.practice-results .run-beat{display:none!important}@media (height<=960px){.shell.practice-fit .practice-page.practice-results .board-wrap>.result-card{padding:14px 14px 12px}}:root{--bg:#151715;--bg-elev:#191c19;--bg-card:#1e211e;--bg-hover:#2b3029;--edge:#10120f;--edge-soft:#151815;--line:#30352e;--text:#edefe8;--muted:#a0a79b;--faint:#858e80;--accent:#c5f46b;--accent-2:#aed65d;--accent-dim:#c5f41212;--gold:#d1e8a3;--gold-dim:#c5f41215;--danger:#ee8e82;--danger-dim:#ee8e821c;--hit:#d8ecb8;--miss:#ee8e82;--shadow:0 20px 70px #0003;--keycap:0 0 transparent;--keycap-sm:0 0 transparent;--radius:12px;--text-meta:.75rem;--text-small:.875rem;--text-body:1rem;--font-ui:"Manrope", sans-serif;--font-display:"Space Grotesk", sans-serif;--font-type:"IBM Plex Mono", monospace;--font-mono:"IBM Plex Mono", monospace}:root[data-theme=light]{--bg:#f4f5ef;--bg-elev:#fafbf7;--bg-card:#fff;--bg-hover:#e9ecdf;--edge:#d7dccf;--edge-soft:#e6e9de;--line:#dce1d3;--text:#23291e;--muted:#606b57;--faint:#69745f;--accent:#547d1c;--accent-2:#5e7b32;--accent-dim:#6b911410;--gold:#6c812e;--gold-dim:#6b911418;--danger:#b33a32;--danger-dim:#b33a3212;--hit:#4c771b;--miss:#b33a32;--shadow:0 20px 50px #1d29100d}body{background:var(--bg);letter-spacing:0;-webkit-font-smoothing:antialiased}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button:disabled{cursor:default}:where(button,a,input,select,textarea,summary):focus-visible{outline:2px solid var(--accent);outline-offset:5px}::selection{background:var(--accent);color:var(--bg)}.skip-link{z-index:200;background:var(--accent);color:var(--bg);border-radius:6px;padding:12px 18px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:12px}.brand{color:var(--text);font-family:var(--font-display);letter-spacing:-1.2px;gap:11px;font-size:25px;font-weight:600}.brand-mark{color:#23291b;width:34px;height:34px;box-shadow:none;background:#c5f46b;border-radius:8px}.brand-mark svg{width:27px;height:27px}.brand-period{color:#6f962d}.studio-eyebrow{font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);align-items:center;gap:9px;font-weight:500;line-height:1.6;display:flex}.status-dot{background:var(--accent);border-radius:50%;flex:0 0 6px;width:6px;height:6px;display:inline-block}.lp-btn,.ctrl-btn,.ghost-btn,.icon-btn{box-shadow:none;border-radius:7px}.lp-btn.primary,.ctrl-btn.primary{background:var(--accent);color:var(--bg);box-shadow:none}.lp-btn{font-size:var(--text-small);border:1px solid #0000;justify-content:center;align-items:center;gap:22px;padding:15px 23px;font-weight:700;transition:background .18s,transform .18s;display:inline-flex}.lp-btn.primary:hover{background:color-mix(in srgb, var(--accent) 90%, var(--text));transform:translateY(-2px)}.lp-lang{background:0 0;border:0;gap:1px;padding:3px;display:flex}.lp-lang button{color:var(--muted);font-family:var(--font-mono);font-size:var(--text-meta);background:0 0;border:0;border-radius:4px;padding:6px 7px}.lp-lang button.on{background:var(--bg-hover);color:var(--text)}.studio-tool{color:var(--muted);font-size:var(--text-small);background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:7px 10px;transition:color .15s,background .15s;display:inline-flex}.studio-tool:hover{background:var(--bg-hover);color:var(--text)}.studio-tool[aria-pressed=true]{color:var(--accent);background:var(--accent-dim)}.icon-tool{flex-shrink:0;width:34px;height:34px;padding:7px}kbd{font-family:var(--font-mono);font-size:var(--text-meta);color:var(--faint);border:1px solid var(--line);white-space:nowrap;border-radius:3px;padding:2px 4px;font-weight:400}.studio-landing{--bg:#f5f5ee;--bg-elev:#f5f5ee;--bg-card:#fff;--bg-hover:#e9ebdf;--text:#252a21;--muted:#626a58;--faint:#6b735f;--line:#dcdfd1;--accent:#577d22;--accent-dim:#678b1b14;background:var(--bg);color:var(--text)}.studio-landing .lp-topbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);z-index:30;background:#f5f5eef2;padding:0 40px;position:sticky;top:0}.studio-landing .lp-topbar-inner{align-items:center;gap:28px;width:min(1240px,100%);min-height:84px;margin:auto;padding:0;display:flex}.studio-landing .lp-topbar .brand{flex:1}.studio-landing .lp-nav{flex:initial;gap:16px}.studio-landing .lp-nav a{font-size:var(--text-small);padding:6px 0;font-weight:600}.studio-landing .lp-nav a:hover{color:#252a21;background:0 0}.studio-landing .lp-btn.primary{color:#26301c;background:#c5f46b;border-color:#b5e261}.studio-landing .lp-btn.primary:hover{background:#b9e963}.studio-landing .lp-topbar .lp-btn{font-size:var(--text-small);padding:12px 17px}.studio-hero.lp-hero{text-align:left;grid-template-columns:1.2fr 1fr;align-items:center;gap:0 30px;width:min(1240px,100% - 80px);max-width:1240px;margin:0 auto;padding:66px 0 0;display:grid}.hero-copy{z-index:1;padding:5px 0 35px;position:relative}.hero-copy .studio-eyebrow{color:#535f40;font-size:var(--text-meta);letter-spacing:1.5px;margin:0 0 26px}.studio-hero h1{font-family:var(--font-display);letter-spacing:-.075em;max-width:none;margin:0 0 29px;font-size:clamp(56px,6.5vw,94px);font-weight:500;line-height:1.03}.studio-hero h1>span{white-space:nowrap;display:block}.hero-flow{color:#6b7f43;width:max-content;position:relative}.type-caret{background:#91ba40;width:5px;height:.77em;margin-left:10px;display:inline-block;transform:translateY(6px)}.studio-hero .lp-sub{font-size:var(--text-body);color:#646c59;max-width:410px;margin:0;line-height:1.85}.studio-hero .lp-cta{justify-content:flex-start;gap:26px;margin:28px 0 0}.hero-demo-link{font-size:var(--text-small);border-bottom:1px solid #adb4a0;align-items:center;gap:12px;padding:10px 0;font-weight:700;display:inline-flex}.hero-demo-link:hover{border-color:#252a21}.hero-free{font-size:var(--text-small);color:#657154;align-items:center;gap:7px;margin:21px 0 0;display:flex}.hero-free>span{background:#879076;border-radius:50%;width:3px;height:3px;margin:0 4px}.hero-baseline{border-top:1px solid var(--line);color:#727b65;font-size:var(--text-small);grid-column:1/-1;justify-content:space-between;align-items:center;margin-top:30px;padding:22px 0;display:flex}.hero-baseline>span:last-child{font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:1.2px}.hero-baseline>span:last-child span{margin-left:12px;font-size:16px}.key-sculpture{isolation:isolate;place-items:center;min-width:0;height:440px;display:grid;position:relative}.sculpture-orbit{z-index:-1;border:1px solid #dde2d1;border-radius:50%;position:absolute;inset:30px -12px;transform:rotate(-25deg)scaleY(.75)}.orbit-two{border-style:dashed;border-color:#d5dac8;inset:5px 25px;transform:rotate(40deg)scaleY(.9)}.sculpture-coordinate{color:#7b846e;font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:1px;position:absolute;top:0;right:12px}.sculpture-board{background:linear-gradient(145deg,#41483b,#20261e);border:1px solid #5b6351;border-radius:22px;gap:13px;padding:20px;transition:transform .5s;display:grid;transform:perspective(900px)rotateX(30deg)rotateY(-12deg)rotate(-24deg);box-shadow:1px 3px #20241b,3px 6px #20241b,4px 10px #181e14,8px 15px #1e241a,25px 44px 34px #38422226,45px 70px 65px #53693324}.key-sculpture:hover .sculpture-board{transform:perspective(900px)rotateX(25deg)rotateY(-8deg)rotate(-20deg)translateY(-5px)}.sculpture-row{gap:12px;display:flex}.sculpture-key{color:#d4dacb;width:88px;height:86px;font-family:var(--font-display);background:linear-gradient(145deg,#454c40 0%,#363e30 50%,#30362b);border:1px solid #5c6452;border-radius:11px;align-items:flex-start;padding:18px;font-size:30px;font-weight:400;display:flex;position:relative;box-shadow:inset 2px 2px 2px #ffffff14,inset -4px -6px 8px #11160f5c,1px 3px #181e13,2px 6px #181e13,3px 8px #181e13,6px 12px 6px #10140f66}.sculpture-key:after{content:"";pointer-events:none;border:1px solid #e8f4cd08;border-radius:7px;position:absolute;inset:6px 6px 12px}.sculpture-key.dim{color:#89947a}.sculpture-key.small-label{align-items:flex-end;font-size:16px}.sculpture-key.accent-key{color:#31451d;background:linear-gradient(145deg,#d4fa95,#b6e970 60%,#a3d558);border-color:#dcffac;width:188px;padding-top:0;font-size:56px;box-shadow:inset 2px 2px 3px #ffffcfb3,inset -3px -6px 5px #81a44466,1px 3px #789b40,2px 6px #779a40,3px 9px #678733,7px 14px 9px #10140f66}.accent-key small{font-size:var(--text-meta);font-family:var(--font-mono);letter-spacing:-.4px;position:absolute;bottom:15px;right:17px}.sculpture-caption{font-family:var(--font-mono);font-size:var(--text-meta);color:#636d54;letter-spacing:1px;align-items:center;gap:8px;display:flex;position:absolute;bottom:0;right:8px}.sculpture-caption i{background:#87ae44;border-radius:50%;width:5px;height:5px}.sculpture-plus{font-family:var(--font-mono);color:#889476;font-size:26px;font-weight:400;position:absolute;bottom:18px;left:10px}.studio-demo-section{--text:#edefe8;--muted:#a1ac95;--faint:#99a78a;--bg:#20271d;--bg-card:#262e22;--bg-hover:#353e2d;--line:#424d37;--accent:#c5f46b;--hit:#d5edaf;--miss:#ffa89a;--danger-dim:#ff928325;width:min(1240px,100% - 80px);color:var(--text);background:#20271d;border-radius:14px;grid-template-columns:.85fr 1.5fr;align-items:center;gap:60px;margin:30px auto 0;padding:42px 44px;scroll-margin-top:110px;display:grid}.studio-demo-intro .studio-eyebrow{font-size:var(--text-meta);letter-spacing:1.4px;margin:0 0 18px}.studio-demo-intro h2{font-family:var(--font-display);letter-spacing:-1.3px;margin:0 0 12px;font-size:30px;font-weight:500;line-height:1.2}.studio-demo-intro .brand-period{color:#c5f46b}.studio-demo-intro>p:not(.studio-eyebrow){font-size:var(--text-body);color:#acb89d;line-height:1.7}.demo-no-account{font-size:var(--text-small);color:#a1ae91;align-items:center;gap:8px;margin-top:24px;display:flex}.studio-demo-section .lp-demo{width:100%;min-width:0;max-width:none;box-shadow:none;text-align:left;background:0 0;border:0;border-radius:0;margin:0;padding:0}.studio-demo-section .lp-demo-head{justify-content:space-between;padding:0 0 16px}.studio-demo-section .lp-demo-kicker{color:#a7b69a;font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:.5px;align-items:center;gap:8px;display:flex}.demo-language{font-family:var(--font-mono);font-size:var(--text-meta);color:#a1ad96}.demo-language>span{color:#758464;margin:0 9px}.studio-demo-section .lp-demo-box,.studio-demo-section .lp-demo-box.armed{min-height:110px;box-shadow:none;background:0 0;border:0;border-top:1px solid #424d37;border-radius:0;padding:20px 0 12px}.studio-demo-section .lp-demo-text{font-family:var(--font-type);letter-spacing:-.5px;margin:0;font-size:22px;line-height:1.9}.studio-demo-section .lp-dch{color:#acb79b}.studio-demo-section .lp-dch.hit{color:#dcf5bb}.studio-demo-section .lp-dch.miss{color:#ffa89a}.studio-demo-section .lp-dch.cursor{color:#e8f4d9;background:0 0;border:0;border-bottom:2px solid #c5f46b}.studio-demo-section .lp-demo-hint{font-size:var(--text-small);color:#a4b58e;text-align:left;margin:10px 0 0;position:static}.studio-demo-section .lp-demo-stats{border-top:1px solid #424d37;align-items:center;gap:28px;margin-top:17px;padding-top:14px;display:flex}.studio-demo-section .lp-demo-stats>div:not(.lp-demo-progress){flex-wrap:wrap;gap:4px;position:relative}.demo-stat-label{font-family:var(--font-mono);font-size:var(--text-meta);text-transform:uppercase;letter-spacing:.7px;color:#a6b299;flex-basis:100%}.studio-demo-section .lp-demo-stats strong{font-family:var(--font-display);font-size:26px;font-weight:400}.studio-demo-section .lp-demo-stats em{font-family:var(--font-mono);font-size:var(--text-meta);color:#b5c1a6}.studio-demo-section .lp-demo-progress{background:#3f4a35;border-radius:1px;flex:1;height:3px}.studio-demo-section .lp-demo-progress>span{background:#c5f46b}.demo-reset{color:#b3c19f;background:0 0;border:1px solid #4a553e;border-radius:5px;place-items:center;width:32px;height:32px;display:grid}.demo-reset:hover{color:#e0f8bf;background:#3d4833}.studio-demo-section .lp-demo-result{border-top:1px solid #424d37;margin-top:20px}.studio-demo-section .lp-demo-finding{color:#d7e5c9}.studio-demo-section .lp-demo-finding span{color:#acbb9c}.studio-demo-section .lp-demo-aha{color:#a6b799}.studio-demo-section .lp-btn{font-size:var(--text-small);padding:11px 15px}.studio-landing .lp-section{width:min(1240px,100% - 80px);max-width:1240px;margin:0 auto;padding:100px 0;scroll-margin-top:50px}.method-heading{justify-content:space-between;align-items:flex-end;gap:80px;display:flex}.studio-method h2,.studio-bottom-cta h2{font-family:var(--font-display);letter-spacing:-2px;white-space:pre-line;text-align:left;margin:16px 0 0;font-size:45px;font-weight:500;line-height:1.12}.method-heading .lp-section-sub{max-width:310px;font-size:var(--text-body);text-align:left;margin:0;line-height:1.85}.studio-steps{grid-template-columns:repeat(3,1fr);gap:35px;margin:44px 0 0;padding:0;list-style:none;display:grid}.studio-steps li{border-top:1px solid #cfd5c1;padding-top:22px}.step-top{color:#63794b;font-family:var(--font-mono);font-size:var(--text-meta);justify-content:space-between;align-items:center;display:flex}.step-top svg{width:24px;height:24px}.studio-steps h3{font-family:var(--font-display);letter-spacing:-.5px;margin:30px 0 12px;font-size:21px;font-weight:500}.studio-steps p{color:var(--muted);font-size:var(--text-body);max-width:320px;margin:0;line-height:1.85}.studio-anatomy{background:#e9edde;border-radius:12px;grid-template-columns:1fr 1fr;align-items:center;gap:70px;margin-top:80px;padding:40px;display:grid}.anatomy-copy h3{font-family:var(--font-display);letter-spacing:-1px;margin:15px 0;font-size:29px;font-weight:500;line-height:1.2}.anatomy-copy>p:last-child{color:#626f50;font-size:var(--text-body);max-width:390px;line-height:1.9}.anatomy-visual{min-width:0}.anatomy-visual .viz{box-shadow:none;background:0 0;border:0}.studio-manifesto{color:#293b1b;background:#c5f46b;padding:64px max(40px,50% - 620px)}.studio-manifesto .studio-eyebrow{color:#49622f}.studio-manifesto h2{font-family:var(--font-display);letter-spacing:-.055em;max-width:880px;margin:30px 0 40px;font-size:clamp(38px,4.6vw,66px);font-weight:500;line-height:1.15}.manifesto-bottom{border-top:1px solid #91b64f;justify-content:space-between;align-items:center;padding-top:24px;display:flex}.manifesto-bottom>span{font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:1px}.studio-faq{grid-template-columns:.8fr 1.4fr;gap:70px;display:grid}.studio-faq h2{text-align:left;font-family:var(--font-display);letter-spacing:-2px;margin-top:20px;font-size:46px;font-weight:500}.studio-faq .lp-faq{gap:0}.studio-faq .lp-faq details{box-shadow:none;background:0 0;border:0;border-bottom:1px solid #d4dac6;border-radius:0;padding:23px 0}.studio-faq .lp-faq details:first-child{border-top:1px solid #d4dac6}.studio-faq .lp-faq summary{padding-right:30px;font-size:14px;font-weight:600;position:relative}.studio-faq .lp-faq summary:after{color:#596c42;font-size:20px;font-weight:400;right:2px}.studio-faq .lp-faq p{font-size:var(--text-body);max-width:540px;line-height:1.9}.studio-bottom-cta{border:1px solid #d6ddc8;border-radius:12px;justify-content:space-between;align-items:center;gap:40px;width:min(1240px,100% - 80px);margin:0 auto 80px;padding:45px;display:flex}.studio-bottom-cta h2{font-size:41px}.studio-bottom-cta p:not(.studio-eyebrow){color:var(--muted);font-size:var(--text-meta);max-width:380px;margin-top:20px;line-height:1.8}.bottom-cta-actions{flex-shrink:0;justify-items:center;gap:20px;display:grid}.studio-bottom-cta .lp-test-link{font-size:var(--text-small);margin:0}.studio-landing .lp-footer{border-top:1px solid var(--line);width:min(1240px,100% - 80px);font-size:var(--text-small);align-items:center;gap:30px;margin:0 auto;padding:32px 0;display:flex}.studio-landing .lp-footer .brand{color:#303d23;font-size:21px}.studio-landing .lp-footer .brand-mark{width:26px;height:26px}.studio-landing .lp-footer .brand-mark svg{width:22px;height:22px}.studio-landing .lp-footer p{font-size:var(--text-small);margin-bottom:0}.studio-landing .lp-footer-links{gap:22px}.shell.studio-shell{grid-template-rows:auto;grid-template-columns:208px minmax(0,1fr);align-items:start;min-height:100dvh;display:grid}.studio-sidebar{background:var(--bg-elev);border-right:1px solid var(--line);flex-direction:column;height:100dvh;padding:29px 18px 20px;display:flex;position:sticky;top:0}.studio-sidebar>.brand{gap:8px;padding-left:4px;font-size:23px}.studio-sidebar .brand-mark{border-radius:7px;width:30px;height:30px}.sidebar-edition{font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:2px;color:var(--faint);margin:15px 0 42px 6px}.studio-nav.nav{flex:none;display:block}.studio-nav p{font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:1.2px;text-transform:uppercase;color:var(--faint);margin:0 0 12px 11px;font-weight:400}.studio-nav>div:nth-of-type(4)>p{margin-top:33px}.studio-nav.nav a{font-size:var(--text-small);color:var(--muted);border:1px solid #0000;border-radius:6px;align-items:center;gap:11px;margin-bottom:4px;padding:12px 11px;font-weight:500;display:flex}.studio-nav.nav a svg{flex-shrink:0;width:17px;height:17px}.studio-nav.nav a.active{background:var(--accent-dim);color:var(--accent);border-color:color-mix(in srgb, var(--accent) 18%, var(--line))}.studio-nav.nav a:hover{color:var(--text);background:var(--bg-hover)}.nav-active-dot{background:currentColor;border-radius:50%;width:5px;height:5px;margin-left:auto;display:none}.active .nav-active-dot{display:block}.sidebar-bottom{margin-top:auto;padding-top:35px}.sidebar-goal{border:1px solid var(--line);background:var(--bg-card);border-radius:9px;margin-bottom:20px;padding:16px 13px}.sidebar-goal>svg{color:var(--accent);width:19px;height:19px;margin-bottom:12px}.sidebar-goal>strong{font-family:var(--font-display);letter-spacing:-.4px;font-size:15px;font-weight:500;line-height:1.4;display:block}.sidebar-goal>p{font-size:var(--text-small);color:var(--muted);margin:8px 0 20px;line-height:1.7}.sidebar-goal-numbers{font-size:var(--text-small);color:var(--muted);justify-content:space-between;gap:5px;display:flex}.sidebar-goal-numbers>span:last-child{font-family:var(--font-mono);color:var(--text)}.sidebar-goal-track{background:var(--bg-hover);border-radius:2px;height:3px;margin-top:9px;overflow:hidden}.sidebar-goal-track>span{background:var(--accent);height:100%;display:block}.sidebar-help{color:var(--muted);font-size:var(--text-small);background:0 0;border:0;border-radius:5px;align-items:center;gap:10px;width:100%;padding:9px 11px;display:flex}.sidebar-help svg{width:16px;height:16px}.sidebar-help:hover{background:var(--bg-hover);color:var(--text)}.sidebar-help>span{margin-left:auto}.sidebar-signature{text-align:center;font-family:var(--font-mono);font-size:var(--text-meta);color:var(--faint);letter-spacing:1px;margin:24px 0 0;display:block}.studio-workspace{min-width:0}.studio-topbar.topbar{background:color-mix(in srgb, var(--bg) 93%, transparent);border-bottom:1px solid var(--line);z-index:30;flex-wrap:nowrap;gap:20px;height:67px;min-height:67px;padding:0 32px;position:sticky;top:0}.studio-breadcrumb{font-size:var(--text-small);color:var(--faint);align-items:center;gap:15px;display:flex}.studio-breadcrumb strong{font-size:var(--text-small);color:var(--text);font-weight:500}.studio-topbar-actions{align-items:center;gap:12px;min-width:0;margin-left:auto;display:flex}.studio-topbar .mobile-brand{display:none}.studio-progression{position:relative}.studio-progression>summary{font-size:var(--text-small);color:var(--muted);cursor:pointer;border-radius:5px;align-items:center;gap:8px;padding:8px;list-style:none;display:flex}.studio-progression>summary::-webkit-details-marker{display:none}.studio-progression[open]>summary{background:var(--bg-hover);color:var(--text)}.studio-progression-content{border:1px solid var(--line);background:var(--bg-card);width:300px;max-width:calc(100vw - 30px);box-shadow:var(--shadow);border-radius:10px;padding:17px;position:absolute;top:calc(100% + 12px);right:0}.studio-progression-content .hud{justify-content:flex-start;gap:12px}.studio-progression-content .hud-pop{position:fixed;top:120px;left:auto;right:30px}.studio-shell .page{width:calc(100% - 64px);max-width:1420px;margin:0 auto;padding:30px 0}.practice-heading{justify-content:space-between;align-items:center;gap:24px;margin-bottom:27px;display:flex}.practice-heading .studio-eyebrow{color:var(--accent);font-size:var(--text-meta);letter-spacing:1.5px;margin:0 0 8px}.practice-heading h1{font-family:var(--font-display);letter-spacing:-1.5px;margin:0;font-size:34px;font-weight:500;line-height:1.15}.practice-heading>div>p:last-child{color:var(--muted);font-size:var(--text-small);margin:9px 0 0}.practice-status{color:var(--muted);font-family:var(--font-mono);font-size:var(--text-meta);white-space:nowrap;align-items:center;gap:7px;display:flex}.practice-status .status-dot{flex-basis:5px;width:5px;height:5px}.studio-shell .practice-grid{grid-template-columns:minmax(0,1fr) 246px;align-items:start;gap:25px}.studio-shell .practice-main{flex-direction:column;gap:16px;min-width:0;display:flex}.studio-shell .studio-gauges{border:1px solid var(--line);border-radius:9px;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0 0 4px;padding:0;display:grid;overflow:hidden}.studio-shell .studio-gauges .gauge{border:0;border-right:1px solid var(--line);background:var(--bg-elev);min-width:0;min-height:109px;box-shadow:none;border-radius:0;padding:15px 18px 13px;animation:none}.studio-shell .studio-gauges .gauge:last-child{border-right:0}.studio-shell .studio-gauges .gauge .label{font-family:var(--font-mono);font-size:var(--text-meta);text-transform:uppercase;color:var(--muted);letter-spacing:.6px;justify-content:space-between;align-items:center;gap:5px;font-weight:400;display:flex}.studio-shell .studio-gauges .gauge .label svg{color:var(--faint);width:13px;height:13px}.studio-shell .studio-gauges .gauge .value{font-family:var(--font-display);letter-spacing:-2px;color:var(--text);margin:8px 0 5px;font-size:39px;font-weight:400;line-height:1.2}.studio-shell .studio-gauges .gauge:first-child .value{color:var(--accent)}.studio-shell .studio-gauges .gauge .value em{font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:0;color:var(--muted);margin-left:7px}.gauge-note{color:var(--faint);font-size:var(--text-meta);line-height:1.5}.gauge-note>span{color:var(--muted);font-family:var(--font-mono);padding-left:4px}.practice-mode-row{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.studio-shell .practice-page .mode-bar{border:1px solid var(--line);background:var(--bg-elev);box-shadow:none;scrollbar-width:none;border-radius:7px;justify-content:flex-start;gap:3px;min-width:0;margin:0;padding:4px;display:flex;overflow-x:auto}.studio-shell .practice-page .mode-bar-btn{font-size:var(--text-small);color:var(--muted);white-space:nowrap;border:0;border-radius:4px;flex-shrink:0;padding:7px 10px;font-weight:500}.studio-shell .practice-page .mode-bar-btn.is-on{color:var(--text);background:var(--bg-hover);box-shadow:none}.practice-tools{align-items:center;gap:3px;display:flex}.studio-shell .practice-page .flow{margin:-7px 0 -6px;padding:0}.studio-shell .practice-page .flow-track{height:2px}.studio-shell .practice-page .flow-label{font-size:var(--text-meta)}.studio-shell .board-wrap{min-height:0;margin:0}.studio-shell .studio-board.text-board{border:1px solid var(--line);background:var(--bg-elev);box-shadow:none;border-radius:10px;min-height:218px;padding:21px 25px 28px;overflow:hidden}.studio-shell .studio-board.text-board:focus-within{border-color:color-mix(in srgb, var(--accent) 46%, var(--line));box-shadow:none}.studio-shell .board-chrome{justify-content:space-between;gap:10px;min-height:14px;margin:0 0 24px;display:flex}.studio-shell .board-chrome-label{font-family:var(--font-mono);font-size:var(--text-meta);color:var(--muted);letter-spacing:1px;align-items:center;gap:7px;font-weight:400;display:flex}.board-position{font-family:var(--font-mono);font-size:var(--text-meta);color:var(--accent)}.board-position>span{color:var(--faint)}.studio-shell .prompt,.studio-shell .prompt-window{font-family:var(--font-type);letter-spacing:-.7px;font-size:clamp(20px,1.8vw,27px);line-height:1.75}.studio-shell .prompt-window{height:calc(var(--prompt-lines,3) * 1.75em)}.studio-shell .prompt .ch{color:var(--faint);text-shadow:none;animation:none}.studio-shell .prompt .ch.hit{color:var(--text)}.studio-shell .prompt .ch.miss{color:var(--danger);background:var(--danger-dim)}.studio-shell .prompt .ch.cursor{color:var(--text);background:var(--accent-dim);box-shadow:-2px 0 var(--accent);border-radius:1px;outline:none;animation:none}.studio-board-progress{background:0 0;height:2px;position:absolute;bottom:0;left:0;right:0}.studio-board-progress>span{background:var(--accent);height:100%;transition:width .15s;display:block}.studio-shell .typing-capture.needs-focus .typing-capture-face{filter:blur(2px);opacity:.6}.studio-shell .board-focus-overlay{background:color-mix(in srgb, var(--bg-elev) 28%, transparent);-webkit-backdrop-filter:none;backdrop-filter:none}.studio-shell .board-focus-overlay-card{border:1px solid var(--line);background:var(--bg-card);border-radius:7px;max-width:100%;padding:12px 18px;animation:none;box-shadow:0 5px 20px #0002}.studio-shell .board-focus-overlay-card strong{font-size:var(--text-small);color:var(--text);font-weight:500}.studio-shell .board-focus-overlay-card span{font-size:var(--text-small);color:var(--muted)}.studio-shell .practice-controls{z-index:auto;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;gap:8px;width:auto;margin:-6px 0 1px;padding:0;display:flex;position:static;inset:auto}.studio-shell .practice-controls-secondary{gap:2px}.studio-shell .practice-controls .ctrl-btn{font-size:var(--text-small);color:var(--muted);box-shadow:none;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:7px 5px;font-weight:400;display:inline-flex;transform:none}.studio-shell .practice-controls .ctrl-btn:hover{color:var(--text);background:var(--bg-hover)}.studio-shell .practice-controls .boss-link{color:var(--accent);gap:8px;margin-left:auto}.studio-keyboard-area{border-top:1px solid var(--line);padding-top:14px}.keyboard-caption{color:var(--muted);font-size:var(--text-meta);justify-content:space-between;gap:15px;margin-bottom:13px;display:flex}.keyboard-layout-label{font-family:var(--font-mono);text-transform:uppercase;font-size:var(--text-meta);color:var(--faint);margin-left:8px}.keyboard-caption>span:last-child{color:var(--faint);font-size:var(--text-meta)}.studio-shell .practice-page .keyboard{--key-unit:clamp(20px, 2.6vw, 34px);--cap-face:var(--bg-hover);--cap-side:var(--bg-elev);box-shadow:none;background:0 0;border:0;border-radius:8px;gap:5px;width:100%;max-width:100%;padding:8px 0 5px;display:grid}.studio-shell .keyboard .kkey{background:var(--bg-hover);border:1px solid var(--line);box-shadow:0 2px 0 var(--edge);border-radius:5px}.studio-shell .keyboard .kcap{background:var(--bg-card);box-shadow:none;color:var(--muted);font-family:var(--font-mono);font-size:var(--text-meta);text-shadow:none;border-radius:3px;font-weight:400;inset:2px 2px 3px}.studio-shell .keyboard .kkey.lit .kcap{background:color-mix(in srgb, var(--cap) 10%, var(--bg-card));color:var(--text)}.studio-shell .keyboard.finger-guide .kkey.finger-tint .kcap{box-shadow:inset 0 -1px color-mix(in srgb, var(--finger) 28%, transparent)}.studio-shell .keyboard .kkey.next{outline:1px solid var(--accent);outline-offset:1px;box-shadow:none;transform:none}.studio-shell .keyboard .kkey.next .kcap,.studio-shell .keyboard .kkey.active .kcap{background:var(--accent);color:var(--bg)}.studio-shell .keyboard .kkey.active{box-shadow:none;transform:translateY(2px)}.studio-shell .keyboard.shape-split{justify-content:center;display:flex}.studio-letter-area{border-top:1px solid var(--line);align-items:center;gap:14px;padding:15px 0 0;display:flex}.studio-letter-area>.studio-eyebrow{font-size:var(--text-meta);letter-spacing:.5px;flex-shrink:0}.studio-shell .practice-page .letter-rail{min-width:0;box-shadow:none;background:0 0;border:0;flex:1;gap:3px;margin:0;padding:0}.studio-shell .practice-page .letter{width:23px;height:26px;font-family:var(--font-mono);font-size:var(--text-meta);box-shadow:none;border-radius:3px;font-weight:400}.studio-shell .practice-page .letter.focused{outline:1px solid var(--accent);outline-offset:2px;box-shadow:none}.studio-shell .practice-page .letter-count{font-family:var(--font-mono);font-size:var(--text-meta)}.studio-shell .coach-card{border:1px solid var(--line);border-left:2px solid var(--accent);background:var(--bg-elev);box-shadow:none;border-radius:6px;margin:0}.studio-shell .coach-card-body{gap:11px;padding:11px 13px}.studio-shell .coach-card-icon{background:var(--accent-dim);width:27px;height:27px;color:var(--accent);box-shadow:none;font-size:var(--text-small);border:0;border-radius:5px}.studio-shell .coach-card-label{color:var(--accent);font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:.8px}.studio-shell .coach-card-title{font-size:var(--text-small);margin:3px 0;line-height:1.5}.studio-shell .coach-card-text{font-size:var(--text-small);color:var(--muted);line-height:1.6}.studio-shell .coach-heat-warn{background:var(--bg-card);border-color:var(--line);box-shadow:none;font-size:var(--text-small)}.studio-shell .run-beat{background:var(--accent-dim);border:1px solid var(--line);box-shadow:none;border-radius:6px;margin:0}.studio-insights.side{flex-direction:column;gap:0;display:flex}.insight-focus{background:var(--bg-elev);border:1px solid var(--line);border-radius:9px;padding:19px}.insight-heading{align-items:center;gap:7px;display:flex}.insight-heading>svg{color:var(--accent);width:15px;height:15px}.insight-heading h2{font-size:var(--text-small);letter-spacing:-.1px;margin:0;font-weight:600}.insight-heading .status-dot{flex-basis:4px;width:4px;height:4px;margin-left:auto}.insight-key-row{align-items:center;gap:14px;margin:23px 0;display:flex}.insight-key{border:1px solid color-mix(in srgb, var(--accent) 30%, var(--line));background:var(--accent-dim);width:55px;height:59px;color:var(--accent);font-family:var(--font-display);border-radius:8px;flex-shrink:0;place-items:center;font-size:29px;display:grid}.insight-key-row strong{font-size:var(--text-small);font-weight:500}.insight-key-row p{font-size:var(--text-small);color:var(--muted);margin:6px 0 0;line-height:1.7}.insight-confidence{background:var(--bg-hover);border-radius:2px;height:3px;margin-bottom:17px;overflow:hidden}.insight-confidence>span{background:var(--accent);height:100%;display:block}.insight-target{justify-content:space-between;align-items:center;gap:8px;display:flex}.insight-target>span{font-size:var(--text-small);color:var(--muted)}.insight-target>strong{font-family:var(--font-mono);font-size:var(--text-meta);font-weight:500}.insight-target small{font-size:var(--text-small);color:var(--faint);font-weight:400}.insight-pair{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:16px;padding-top:14px;display:flex}.insight-pair>span{font-size:var(--text-small);color:var(--muted)}.insight-pair strong{font-family:var(--font-mono);color:var(--accent);font-size:16px;font-weight:400}.insight-pair strong>span{color:var(--faint);font-size:var(--text-small)}.insight-note{font-size:var(--text-small);color:var(--muted);margin:14px 0 0}.studio-daily{margin-top:28px;padding:0 4px}.daily-count{font-family:var(--font-mono);color:var(--faint);font-size:var(--text-meta);margin-left:auto}.studio-insights .quest-rows{gap:0;margin-top:9px}.studio-insights .quest-row{border:0;border-bottom:1px solid var(--line);box-shadow:none;background:0 0;border-radius:0;align-items:flex-start;gap:10px;padding:18px 0;display:flex}.studio-insights .quest-ico{background:var(--bg-hover);color:var(--muted);border:1px solid var(--line);width:23px;height:23px;font-family:var(--font-mono);font-size:var(--text-meta);border-radius:5px;flex-shrink:0;place-items:center;display:grid}.studio-insights .quest-main{flex:1;display:block}.studio-insights .quest-title{font-size:var(--text-small);color:var(--muted);font-weight:400;line-height:1.6;display:block}.studio-insights .quest-row.done .quest-ico{color:var(--accent)}.studio-insights .quest-row .bar.thin{background:var(--bg-hover);height:2px;margin:9px 0 5px}.studio-insights .quest-row .bar>span{background:var(--accent)}.studio-insights .quest-frac{color:var(--faint);font-family:var(--font-mono);font-size:var(--text-meta)}.insight-profile{border:1px solid var(--line);border-radius:7px;align-items:center;gap:10px;margin:22px 0;padding:14px 12px;display:flex}.insight-profile:hover{background:var(--bg-hover)}.profile-symbol{background:var(--bg-hover);width:30px;height:30px;color:var(--accent);border-radius:5px;place-items:center;display:grid}.profile-symbol svg{width:17px;height:17px}.insight-profile strong{font-size:var(--text-small);font-weight:500;display:block}.insight-profile small{font-size:var(--text-small);color:var(--muted);margin-top:5px;display:block}.insight-profile>svg{color:var(--faint);margin-left:auto}.insight-details>summary{font-size:var(--text-small);color:var(--muted);cursor:pointer;justify-content:space-between;padding:8px 4px;list-style:none;display:flex}.insight-details>summary::-webkit-details-marker{display:none}.insight-details[open]>summary>span{transform:rotate(45deg)}.insight-details dl{font-size:var(--text-small);margin:10px 4px}.insight-details dl>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:7px 0;display:flex}.insight-details dt{color:var(--muted)}.insight-details dd{font-family:var(--font-mono);margin:0}.insight-signoff{font-family:var(--font-mono);font-size:var(--text-meta);color:var(--faint);justify-content:space-between;margin:27px 4px 0;display:flex}.insight-signoff span{color:var(--accent)}.studio-shell :is(.panel,.stat-card,.profile-card,.result-card,.coach-brief,.boss-arena,.boss-intro,.achievement-card,.help-card,.quest-tile,.profile-hero){background:var(--bg-elev);box-shadow:none;border-color:var(--line);border-radius:10px}.studio-shell :is(.result-card h2,.profile-head h1,.help-head h1,.boss-head h1){font-family:var(--font-display);letter-spacing:-1px;font-weight:500}.studio-shell .result-card{overflow:visible}.studio-shell .result-card .primary{background:var(--accent);color:var(--bg);box-shadow:none}.studio-shell .coach-pair-cap{background:var(--bg-hover);border:1px solid var(--line);box-shadow:0 2px var(--edge);color:var(--accent);border-radius:7px}.studio-shell .coach-pair-arrow{color:var(--muted)}.gate{background:var(--bg)}.gate-card{border:1px solid var(--line);background:var(--bg-elev);box-shadow:none;border-radius:15px;padding:42px}.gate-card h1{font-family:var(--font-display);letter-spacing:-1px;font-size:32px;font-weight:500}.gate-card p{color:var(--muted);font-size:var(--text-small);line-height:1.9}.studio-shell :is(.drawer,.tour-card,.onboarding-card){background:var(--bg-card);border-color:var(--line);box-shadow:var(--shadow);border-radius:12px}.studio-shell :is(.onboarding-card,.tour-card) h2{font-family:var(--font-display);font-weight:500}.studio-shell .streak-chip,.studio-shell .level-chip,.studio-shell .xp-chip,.studio-shell .keys-chip,.studio-shell .heat-chip{background:var(--bg-elev);border-color:var(--line);box-shadow:none;border-radius:6px}.studio-shell.is-focused{grid-template-columns:minmax(0,1fr)}.studio-shell.is-focused .studio-sidebar,.studio-shell.is-focused .studio-insights,.studio-shell.is-focused .practice-heading,.studio-shell.is-focused .studio-gauges,.studio-shell.is-focused .studio-letter-area{display:none}.studio-shell.is-focused .practice-page{width:min(1040px,100% - 80px);padding-top:70px}.studio-shell.is-focused .practice-grid{grid-template-columns:minmax(0,1fr)}.studio-shell.is-focused .studio-board{min-height:300px;padding-top:32px;padding-bottom:40px}.studio-shell.is-focused .prompt,.studio-shell.is-focused .prompt-window{font-size:29px}.studio-shell.is-focused .studio-keyboard-area{margin-top:15px}@media (width>=1600px){.studio-shell .page{padding-top:40px}.practice-heading{margin-bottom:35px}.practice-heading h1{font-size:40px}.studio-shell .practice-main{gap:20px}.studio-shell .practice-grid{grid-template-columns:minmax(0,1fr) 275px;gap:30px}.studio-shell .studio-gauges .gauge{padding:20px 23px}.studio-shell .studio-gauges .gauge .value{font-size:45px}.studio-shell .studio-board.text-board{padding:29px 35px 35px}.studio-shell .practice-page .keyboard{--key-unit:40px}}@media (width<=1200px){.shell.studio-shell:not(.is-focused){grid-template-columns:180px minmax(0,1fr)}.studio-sidebar{padding-left:12px;padding-right:12px}.studio-sidebar>.brand{font-size:20px}.studio-shell .page{width:calc(100% - 40px)}.studio-topbar.topbar{padding:0 20px}.studio-shell .practice-grid{grid-template-columns:minmax(0,1fr) 210px;gap:18px}.studio-shell .studio-gauges .gauge{padding:13px 12px}.studio-shell .studio-gauges .gauge .value{font-size:34px}.studio-shell .studio-gauges .gauge .label svg,.practice-controls kbd{display:none}.studio-shell .practice-page .mode-bar-btn{font-size:var(--text-small);padding:7px}.practice-tools{gap:0}.practice-tools .icon-tool{width:29px;height:29px}.studio-shell .practice-page .keyboard{--key-unit:clamp(20px, 2.55vw, 30px)}.practice-status{display:none}.insight-focus{padding:16px}.studio-insights .insight-heading h2{font-size:var(--text-small)}.keyboard-caption>span:last-child{display:none}.studio-letter-area{display:block}.studio-letter-area>.studio-eyebrow{margin:0 0 10px;display:block}.studio-hero h1{font-size:clamp(55px,6.3vw,78px)}.key-sculpture{transform-origin:50%;transform:scale(.9)}.studio-hero .lp-cta{gap:17px}.hero-demo-link{font-size:var(--text-small)}.studio-landing .lp-topbar-inner{gap:22px}.studio-landing .lp-nav{gap:12px}.studio-demo-section{gap:35px;padding:35px}.studio-demo-intro h2{font-size:26px}.studio-demo-section .lp-demo-text{font-size:19px}}@media (width<=1020px){.studio-shell .practice-grid{grid-template-columns:minmax(0,1fr)}.studio-insights.side{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:22px;padding-top:25px;display:grid}.studio-daily{margin-top:0}.studio-insights .insight-profile{margin:0}.studio-insights .insight-signoff{display:none}.studio-progression>summary{font-size:var(--text-small)}.studio-shell .practice-page .mode-bar-btn{font-size:var(--text-small);padding:7px 10px}.studio-shell .practice-page .keyboard{--key-unit:32px}.studio-letter-area{display:flex}.studio-letter-area>.studio-eyebrow{margin:0}.studio-landing .lp-topbar .lp-nav{display:none}.studio-hero.lp-hero{grid-template-columns:1.1fr 1fr;gap:0 5px;padding-top:48px}.studio-hero h1{font-size:58px}.key-sculpture{transform:scale(.77)}.hero-copy .studio-eyebrow{font-size:var(--text-meta);letter-spacing:.8px}.studio-hero .lp-sub{font-size:var(--text-body)}.studio-hero .lp-cta{flex-direction:column;align-items:flex-start;gap:20px}.hero-demo-link{padding:0 0 7px}.studio-demo-section{grid-template-columns:.85fr 1.2fr;gap:25px}.studio-demo-intro h2{font-size:24px}.studio-demo-section .lp-demo-text{font-size:17px}.method-heading{gap:35px}.studio-method h2{font-size:35px}.studio-steps{gap:24px}.studio-steps h3{font-size:18px}.studio-anatomy{gap:25px;padding:30px}.studio-bottom-cta{padding:35px}.studio-bottom-cta h2{font-size:32px}}@media (width<=760px){.shell.studio-shell{padding-bottom:74px;display:block}.studio-sidebar{display:none}.studio-topbar.topbar{gap:15px;height:60px;min-height:60px;padding:0 20px}.studio-topbar .mobile-brand{display:flex}.studio-topbar .mobile-brand .brand-mark{width:29px;height:29px}.studio-breadcrumb>span{display:none}.studio-topbar-actions{gap:6px}.studio-progression{display:none}.studio-shell .page{width:calc(100% - 40px);padding-top:27px}.practice-heading h1{font-size:30px}.practice-heading>div>p:last-child{max-width:300px;line-height:1.7}.studio-mobile-nav.mobile-nav{z-index:40;border-top:1px solid var(--line);background:var(--bg-elev);padding:9px 8px max(10px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);justify-content:space-around;align-items:stretch;gap:0;display:flex;position:fixed;bottom:0;left:0;right:0}.studio-mobile-nav.mobile-nav>a,.studio-mobile-nav.mobile-nav>button{font-size:var(--text-small);color:var(--muted);background:0 0;border:0;border-radius:4px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:5px;padding:5px 2px;display:flex}.studio-mobile-nav.mobile-nav>a.active{color:var(--accent)}.studio-mobile-nav svg{width:18px;height:18px}.studio-shell .studio-board.text-board{min-height:244px;padding:20px}.studio-shell .practice-page .mode-bar{max-width:100%}.studio-shell .practice-page .mode-bar-btn{font-size:var(--text-small);padding:7px 9px}.studio-shell .studio-gauges .gauge{min-height:99px;padding:12px 10px}.studio-shell .studio-gauges .gauge .value{font-size:32px}.studio-shell .studio-gauges .gauge .label{font-size:var(--text-meta);letter-spacing:.2px}.gauge-note{font-size:var(--text-meta)}.studio-shell .studio-letter-area{display:block}.studio-shell .studio-letter-area>.studio-eyebrow{margin-bottom:10px}.studio-shell .practice-page .keyboard{--key-unit:clamp(21px, 4.2vw, 32px)}.studio-shell.is-focused .practice-page{width:calc(100% - 40px);padding-top:30px}.studio-shell.is-focused .prompt,.studio-shell.is-focused .prompt-window{font-size:23px}.focus-exit{font-size:var(--text-small);gap:5px;padding:5px}.focus-exit kbd,.studio-shell.is-focused .studio-breadcrumb{display:none}.studio-landing .lp-topbar{padding:0 22px}.studio-landing .lp-topbar-inner{gap:14px;min-height:72px}.studio-landing .lp-topbar .brand{gap:8px;font-size:22px}.studio-landing .lp-topbar .lp-btn{font-size:var(--text-small);gap:13px;padding:10px 12px}.studio-landing .lp-topbar .lp-btn svg{width:16px;height:16px}.studio-hero.lp-hero{flex-direction:column;width:calc(100% - 44px);padding:42px 0 0;display:flex}.hero-copy{width:100%;padding:0}.hero-copy .studio-eyebrow{font-size:var(--text-meta);letter-spacing:1px;margin-bottom:20px}.studio-hero h1{max-width:none;margin-bottom:23px;font-size:clamp(55px,10.5vw,80px)}.studio-hero .lp-sub{font-size:var(--text-body);max-width:410px;line-height:1.85}.studio-hero .lp-cta{flex-direction:row;align-items:center;gap:22px;margin-top:24px}.hero-demo-link{font-size:var(--text-small);padding-bottom:6px}.studio-hero .lp-btn{font-size:var(--text-small);gap:18px;padding:13px 16px}.hero-free{font-size:var(--text-small);margin-top:17px}.key-sculpture{width:370px;max-width:100%;height:365px;margin:12px 0 -8px;transform:scale(.78)}.sculpture-coordinate{right:-15px}.sculpture-caption{bottom:-25px;right:0}.hero-baseline{width:100%;font-size:var(--text-small);margin-top:5px;padding:17px 0}.hero-baseline>span:last-child{font-size:var(--text-small);letter-spacing:.5px}.hero-baseline>span:first-child{max-width:230px}.studio-hero .lp-mobile-note{font-size:var(--text-small);width:100%;margin:6px 0 10px;line-height:1.8}.studio-demo-section{border-radius:10px;grid-template-columns:1fr;gap:28px;width:calc(100% - 44px);margin-top:22px;padding:27px 24px}.studio-demo-intro h2{font-size:29px}.studio-demo-intro .studio-eyebrow{margin-bottom:13px}.demo-no-account{margin-top:16px}.studio-demo-section .lp-demo-text{font-size:20px}.studio-demo-section .lp-demo-box{min-height:110px}.studio-landing .lp-section{width:calc(100% - 44px);padding:65px 0}.method-heading{display:block}.method-heading .lp-section-sub{max-width:420px;font-size:var(--text-body);margin-top:22px}.studio-method h2{letter-spacing:-1.6px;font-size:35px}.studio-steps{grid-template-columns:1fr;gap:29px;margin-top:35px}.studio-steps h3{margin-top:20px;font-size:22px}.studio-steps p{max-width:420px}.studio-anatomy{grid-template-columns:1fr;gap:15px;margin-top:45px;padding:24px}.anatomy-copy h3{font-size:27px}.anatomy-visual{width:100%}.studio-manifesto{padding:40px 24px}.studio-manifesto h2{margin:24px 0 30px;font-size:39px}.manifesto-bottom{padding-top:20px}.manifesto-bottom>span{font-size:var(--text-small)}.manifesto-bottom svg{width:35px;height:35px}.studio-faq{display:block}.studio-faq h2{margin-top:15px;font-size:36px}.studio-faq .lp-faq{margin-top:30px}.studio-faq .lp-faq summary{font-size:var(--text-small)}.studio-bottom-cta{width:calc(100% - 44px);margin-bottom:45px;padding:27px;display:block}.studio-bottom-cta h2{font-size:34px}.bottom-cta-actions{justify-items:start;margin-top:25px}.studio-landing .lp-footer{width:calc(100% - 44px);padding:27px 0;display:block}.studio-landing .lp-footer-links{font-size:var(--text-small);gap:18px;margin-top:28px}}@media (width<=520px){.studio-landing .lp-topbar-inner{flex-wrap:wrap;gap:10px;min-height:68px;padding:14px 0}.studio-landing .lp-topbar .brand{font-size:20px}.studio-landing .lp-topbar .brand-mark{width:28px;height:28px}.studio-landing .lp-topbar .lp-btn{font-size:var(--text-small);gap:8px;padding:10px}.studio-landing .lp-topbar .lp-lang{flex-basis:100%;order:3;justify-content:flex-end;margin-top:-4px;padding:0;display:flex}.studio-landing .lp-topbar .lp-lang button{font-size:var(--text-meta);padding:2px 6px}.studio-hero h1{font-size:clamp(44px,12vw,62px)}.studio-hero .lp-cta{gap:19px}.hero-demo-link{font-size:var(--text-small);gap:6px}.studio-hero .lp-btn{font-size:var(--text-small);gap:12px;padding:12px 14px}.studio-demo-section .lp-demo-stats{gap:18px}.studio-demo-section .lp-demo-text{font-size:18px}.hero-baseline>span:first-child{max-width:180px;line-height:1.7}.hero-baseline>span:last-child{letter-spacing:0;font-size:var(--text-small)}.studio-shell .mobile-practice-note{font-size:var(--text-small);background:var(--bg-elev);border:1px solid var(--line);border-radius:6px;margin:0 0 22px;padding:10px;line-height:1.7;display:block}.studio-shell .practice-page .studio-gauges{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-shell .studio-gauges .gauge{min-height:96px;padding:13px 15px}.studio-shell .studio-gauges .gauge:nth-child(2){border-right:0}.studio-shell .studio-gauges .gauge:nth-child(-n+2){border-bottom:1px solid var(--line)}.studio-shell .studio-gauges .gauge .label{font-size:var(--text-meta)}.studio-shell .studio-gauges .gauge .value{margin:5px 0;font-size:34px}.gauge-note{font-size:var(--text-meta)}.practice-mode-row{flex-wrap:wrap}.studio-shell .practice-page .mode-bar{flex-basis:100%;justify-content:space-between}.practice-tools{margin-top:3px;margin-left:auto}.keyboard-toggle,.studio-keyboard-area{display:none}.studio-shell .practice-controls{flex-wrap:wrap}.studio-shell .practice-controls .ctrl-btn{padding:8px 6px}.studio-shell .practice-controls .boss-link{margin:0}.studio-shell .prompt,.studio-shell .prompt-window{font-size:20px}.studio-shell .studio-board.text-board{min-height:225px;padding:20px 17px 27px}.studio-shell .board-chrome{margin-bottom:20px}.studio-shell .board-chrome-label{font-size:var(--text-meta)}.studio-insights.side{grid-template-columns:1fr;gap:24px}.studio-shell .lp-lang{display:flex}.studio-topbar-actions{gap:1px}.studio-topbar .lp-lang button{font-size:var(--text-meta);padding:5px}.studio-topbar .account-cta,.studio-topbar .studio-breadcrumb strong,.focus-exit{font-size:var(--text-small)}.focus-exit svg{width:14px;height:14px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.studio-shell .result-card.modern{background:var(--bg-elev);border:1px solid var(--line);box-shadow:none;border-radius:10px;padding:29px;animation:none}.studio-result-heading{align-items:center;gap:15px;margin-bottom:30px;display:flex}.result-check{border:1px solid color-mix(in srgb, var(--accent) 30%, var(--line));background:var(--accent-dim);width:42px;height:42px;color:var(--accent);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.studio-result-heading .studio-eyebrow{font-size:var(--text-meta);color:var(--accent);margin:0 0 6px}.studio-shell .studio-result-heading h2{letter-spacing:-1px;margin:0;font-size:25px;font-weight:500;line-height:1.3}.studio-shell .result-card.modern .result-top{border:1px solid var(--line);border-radius:7px;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;display:grid;overflow:hidden}.studio-shell .result-card.modern .result-metric,.studio-shell .result-card.modern .result-metric.primary{box-shadow:none;border:0;border-right:1px solid var(--line);background:0 0;border-radius:0;padding:19px}.studio-shell .result-card.modern .result-metric:last-child{border-right:0}.studio-shell .result-card.modern .result-metric strong{font-family:var(--font-display);color:var(--text);letter-spacing:-1px;font-size:43px;font-weight:400}.studio-shell .result-card.modern .result-metric.primary strong{color:var(--accent)}.studio-shell .result-card.modern .result-metric-label{color:var(--muted);font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:.7px}.studio-shell .result-card.modern .result-highlight{background:var(--accent-dim);border:1px solid var(--line);font-size:var(--text-small);box-shadow:none;border-radius:6px;margin:22px 0;padding:16px}.studio-shell .result-card.modern .result-coach-close{background:var(--bg-card);border-color:var(--line);box-shadow:none;border-radius:7px;margin:22px 0}.studio-result-details{border-top:1px solid var(--line);margin-top:25px}.studio-result-details>summary{cursor:pointer;font-size:var(--text-small);color:var(--muted);justify-content:space-between;gap:18px;padding:17px 0;list-style:none;display:flex}.studio-result-details>summary::-webkit-details-marker{display:none}.studio-result-details>summary>span{font-family:var(--font-mono);font-size:var(--text-meta);color:var(--accent)}.studio-result-details>summary>span>span{margin-left:10px}.studio-reward-content{padding:8px 0 20px}.studio-shell .result-heat-beat{border:1px solid var(--line);background:var(--bg-card);box-shadow:none;border-radius:7px;animation:none}.studio-shell .result-card.modern .result-actions{gap:12px;margin-top:14px}.studio-shell .result-card.modern .result-again{background:var(--accent);color:var(--bg);font-weight:600;font-size:var(--text-small);box-shadow:none;border:0;border-radius:6px;justify-content:center;align-items:center;gap:25px;padding:14px 23px;display:inline-flex;transform:none}.studio-shell .result-card.modern .result-again:hover{filter:brightness(1.08)}.studio-shell .result-card.modern .result-share{font-size:var(--text-small);border-color:var(--line);box-shadow:none;background:0 0;border-radius:6px;padding:12px 19px}.studio-shell .celebration{z-index:45;background:0 0;width:min(320px,100% - 40px);display:block;inset:auto 24px 24px auto}.studio-shell .celebration .celebration-card{border:1px solid var(--line);border-left:2px solid var(--accent);background:var(--bg-card);text-align:left;border-radius:7px;grid-template-columns:30px 1fr;align-items:center;gap:3px 10px;width:100%;min-width:0;padding:15px 18px;animation:none;display:grid;box-shadow:0 8px 24px #0002}.studio-shell .celebration .celebration-icon{color:var(--accent);grid-row:1/3;margin:0;font-size:20px}.studio-shell .celebration .celebration-card strong{font-size:var(--text-small);letter-spacing:0;font-weight:600}.studio-shell .celebration .celebration-body{font-size:var(--text-small);color:var(--muted)}.studio-shell .toasts{max-width:320px;bottom:100px;left:auto;right:24px}.studio-shell .toast{background:var(--bg-card);border:1px solid var(--line);box-shadow:none;border-radius:7px;padding:12px 16px}.studio-shell .toast .title,.studio-shell .toast .body{font-size:var(--text-small)}.studio-shell :is(.glass,.chart-card,.title-tile,.trophy,.hub-chip,.ach-mini,.ach-card,.profile-stat){background:var(--bg-elev);border-color:var(--line);box-shadow:none;border-radius:9px}.studio-shell .title-tile.equipped{background:var(--accent-dim);border-color:var(--accent);box-shadow:none}.studio-shell .title-tile .rarity{color:var(--muted)}.studio-shell .profile-hero{padding:25px}.studio-shell .hub-analytics.studio-analytics{background:0 0;border:0;border-radius:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:0;padding:0;display:grid}.studio-analytics>.stats-grid{grid-column:1/-1;margin:0}.studio-analytics>.chart-card{min-width:0;margin:0;padding:23px}.studio-analytics>.chart-card h2{font-family:var(--font-display);letter-spacing:-.4px;margin-bottom:19px;font-size:17px;font-weight:500}.studio-analytics>.chart-card>svg{background:repeating-linear-gradient(to top, transparent, transparent calc(25% - 1px), var(--line) calc(25% - 1px), var(--line) 25%)}.studio-profile-details{border:1px solid var(--line);border-radius:9px;margin-top:28px}.studio-profile-details>summary{cursor:pointer;font-size:var(--text-small);justify-content:space-between;align-items:center;padding:21px;list-style:none;display:flex}.studio-profile-details>summary::-webkit-details-marker{display:none}.studio-profile-details[open]>summary>span{transform:rotate(45deg)}.studio-profile-rewards{padding:0 20px 20px}.studio-profile-rewards>:last-child{margin-bottom:0}.studio-shell .profile-page.empty-hub{max-width:1150px}.studio-shell .test-page h1{font-family:var(--font-display);letter-spacing:-1.5px;font-weight:500}@media (width<=760px){.studio-shell .hub-analytics.studio-analytics{grid-template-columns:minmax(0,1fr)}.studio-analytics>.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-shell .celebration{bottom:85px;right:20px}.studio-shell .toasts{bottom:170px;right:20px}.studio-shell .result-card.modern{padding:20px}.studio-shell .studio-result-heading h2{font-size:21px}.studio-shell .result-card.modern .result-metric,.studio-shell .result-card.modern .result-metric.primary{padding:13px 10px}.studio-shell .result-card.modern .result-metric strong{font-size:30px}.studio-shell .result-card.modern .result-metric-label{font-size:var(--text-meta)}.studio-shell .profile-page .practice-heading{flex-direction:column;align-items:flex-start;gap:20px}}.studio-chart-empty{min-height:140px;font-size:var(--text-small);color:var(--muted);text-align:center;border:1px dashed var(--line);border-radius:6px;place-items:center;padding:20px;line-height:1.8;display:grid}.studio-shell .celebration .celebration-card{justify-items:start}@media (width<=520px){.studio-shell .studio-gauges .gauge:nth-child(n+3){display:none}.studio-shell .studio-gauges .gauge:nth-child(-n+2){border-bottom:0}.studio-shell .mobile-practice-note{margin:25px 0 0}}.key-sculpture{grid-template-columns:minmax(0,1fr)}.anatomy-visual .viz{min-width:0;margin:0;padding-left:0;padding-right:0}.anatomy-visual .viz-keys{width:100%;max-width:256px;margin-left:auto;margin-right:auto}.anatomy-visual .viz-key{width:clamp(13px,4vw,22px)}.anatomy-visual .viz-krow{gap:3px}@media (width<=380px){.key-sculpture{height:320px;margin-top:0;transform:scale(.66)}.studio-demo-intro h2{font-size:25px}.studio-bottom-cta h2{font-size:29px}}.studio-anatomy .viz-key{font-size:var(--text-small);width:24px;height:26px}.studio-anatomy .viz figcaption{font-size:var(--text-body);line-height:1.6}@media (width<=520px){.studio-anatomy .viz-krow{gap:2px}.studio-anatomy .viz-key{width:20px}.studio-landing .lp-topbar-inner{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.studio-landing .lp-topbar .brand{grid-area:1/1}.studio-landing .lp-topbar .theme-toggle{grid-area:1/2;justify-self:end}.studio-landing .lp-topbar .lp-btn{grid-area:2/1;justify-self:start}.studio-landing .lp-topbar .lp-lang{grid-area:2/2;margin:0}.studio-demo-section .lp-demo-head{flex-wrap:wrap;gap:12px}.studio-demo-section .lp-demo-kicker,.demo-language{white-space:nowrap}}.typing-test-landing .lp-hero{padding-top:64px}.typing-test-landing .lp-cta{justify-content:center}.typing-test-landing .lp-section{padding-top:64px;padding-bottom:64px}.typing-test-landing .lp-section.narrow{max-width:760px}.typing-test-landing .lp-section h2{font-weight:500}.typing-test-landing .lp-points strong,.typing-test-landing .lp-faq summary{color:var(--text)}.typing-test-landing .lp-points span{font-size:var(--text-body);line-height:1.7}.typing-test-landing .lp-footer{justify-content:space-between}@media (width<=760px){.typing-test-landing .lp-hero{padding-top:36px}.typing-test-landing .lp-section{padding-top:40px;padding-bottom:40px}}.studio-shell.is-practice{height:100dvh;min-height:0}.is-practice .studio-workspace{flex-direction:column;height:100%;min-height:0;display:flex}.is-practice .studio-topbar{height:52px;min-height:52px}.is-practice #studio-main{flex:1;min-height:0;display:flex}.studio-shell.is-practice .practice-page{flex-direction:column;width:calc(100% - 40px);min-height:0;padding:14px 0;display:flex}.is-practice .practice-heading{flex-shrink:0;gap:12px;margin:0 0 12px}.is-practice .practice-heading h1{letter-spacing:-1px;font-size:25px}.is-practice .practice-heading .studio-eyebrow,.is-practice .practice-heading>div>p:last-child{display:none}.is-practice .practice-heading .hud{flex-wrap:nowrap;gap:7px;margin:0;display:flex}.is-practice .practice-heading .hud-chip{min-height:32px;box-shadow:none;background:var(--bg-elev);border:1px solid var(--line);border-radius:6px;padding:5px 9px}.is-practice .practice-heading .xp-chip{flex-direction:column;align-items:stretch;gap:3px;width:140px}.is-practice .practice-heading .xp-chip>span{font:var(--text-meta) var(--font-mono);white-space:nowrap;display:block}.is-practice .practice-heading .xp-track{width:100%;height:3px}.is-practice .practice-heading .xp-track>span{display:block}.is-practice .practice-heading .hud-chip{font-size:var(--text-small);height:34px}.is-practice .practice-heading .level-chip strong{color:var(--accent)}.is-practice .studio-progression{display:none}.studio-shell.is-practice .practice-grid{flex:1;grid-template-columns:minmax(0,1fr) 280px;align-items:stretch;gap:20px;min-height:0}.studio-shell.is-practice .practice-main{gap:9px;min-height:0}.studio-shell.is-practice .studio-gauges{flex-shrink:0;margin:0}.studio-shell.is-practice .studio-gauges .gauge{min-height:0;padding:9px 14px;position:relative}.studio-shell.is-practice .studio-gauges .gauge .value{margin:3px 0;font-size:32px}.studio-shell.is-practice .studio-gauges .gauge .label{font-size:var(--text-meta)}.combo-track{background:var(--accent-dim);height:3px;position:absolute;bottom:0;left:0;right:0}.combo-track>span{background:var(--accent);height:100%;transition:width .1s;display:block}.studio-shell .combo-gauge:not(.tier-0){background:var(--accent-dim)}.studio-shell .combo-gauge:not(.tier-0) .value{color:var(--accent)}.is-practice .practice-mode-row{flex-shrink:0}.studio-shell.is-practice .practice-page .mode-bar{flex-wrap:nowrap}.studio-shell.is-practice .practice-page .mode-bar-btn{padding:6px 8px}.studio-shell.is-practice .practice-page .flow{flex-shrink:0;margin:0}.studio-shell.is-practice .board-wrap{flex:1;min-height:142px;display:flex}.studio-shell.is-practice .studio-board.text-board{flex-direction:column;justify-content:center;width:100%;min-height:0;padding:14px 20px;display:flex}.studio-shell.is-practice .board-chrome{margin:0 0 12px}.studio-shell.is-practice .prompt,.studio-shell.is-practice .prompt-window{font-size:clamp(20px,1.8vw,27px);line-height:1.6}.studio-shell.is-practice .prompt-window{height:calc(var(--prompt-lines,3) * 1.6em)}.studio-shell.is-practice .practice-controls{flex-shrink:0;margin:0}.studio-shell.is-practice .practice-controls .ctrl-btn{padding:4px}.studio-shell.is-practice .studio-keyboard-area{flex-shrink:0;margin:0;padding-top:8px;display:block}.is-practice .keyboard-caption{margin:0 0 5px}.studio-shell.is-practice .practice-page .keyboard{--key-unit:clamp(22px, min(2.5vw, 4.3dvh), 38px);padding:3px 0;display:grid}.studio-shell.is-practice .practice-page .keyboard.shape-split{display:flex}.is-practice .keyboard .khalf{gap:4px}.is-practice .studio-letter-area{flex-shrink:0;padding:0}.is-practice .mobile-practice-note{display:none}.practice-coaching{scrollbar-gutter:stable;flex-direction:column;gap:12px;min-height:0;display:flex;overflow-y:auto}.practice-coaching .coach-card{flex-shrink:0}.practice-coaching .coach-card-text{font-size:var(--text-small)}.practice-coaching .insight-focus{padding:12px}.practice-coaching .insight-key-row{margin:12px 0}.practice-coaching .insight-key{width:40px;height:42px;font-size:24px}.practice-coaching .studio-daily{margin-top:16px}.practice-coaching .quest-row{padding:9px 0}.practice-coaching .quest-title{font-size:var(--text-small)}.practice-coaching .insight-profile{margin:12px 0;padding:9px}.practice-coaching .insight-signoff,.practice-coaching .insight-details{display:none}.practice-coach-popover{position:relative}.practice-coach-popover>summary{cursor:pointer;list-style:none}.practice-coach-popover>summary::-webkit-details-marker{display:none}.practice-coach-popover>div{z-index:40;background:var(--bg-card);border:1px solid var(--line);width:310px;max-width:calc(100vw - 32px);max-height:min(65dvh,620px);box-shadow:var(--shadow);border-radius:12px;padding:16px;position:fixed;top:min(260px,30dvh);right:16px;overflow-y:auto}.practice-coach-popover .side{flex-direction:column;padding-top:14px;display:flex}.is-practice .run-beat{z-index:40;width:min(500px,100vw - 32px);position:fixed;top:60px;left:50%;transform:translate(-50%)}.is-practice .board-wrap>.coach-brief{width:100%;margin:0;padding:16px;overflow-y:auto}.is-practice .hud-panel{max-height:calc(100dvh - 140px);position:fixed;top:110px;right:24px;overflow-y:auto}.studio-shell.is-practice.is-focused .practice-page{max-width:1040px;padding-top:20px}.studio-shell.is-practice.is-focused .practice-coaching{display:none}.studio-shell.is-practice.is-focused .practice-grid{grid-template-columns:minmax(0,1fr)}.studio-shell.is-practice:has(.practice-results){height:auto;min-height:100dvh}.studio-shell.is-practice .practice-results .board-wrap{display:block}.studio-shell .prompt .ch.miss,.studio-shell .prompt .ch.miss.cursor{color:var(--danger);background:var(--danger-dim);text-underline-offset:5px;text-decoration:underline;text-decoration-thickness:2px}.studio-shell .prompt .ch.miss.cursor{box-shadow:-2px 0 var(--danger)}.studio-demo-section .lp-dch.miss{color:#ffa89a;text-underline-offset:5px;background:#ff928325;text-decoration:underline;text-decoration-thickness:2px}.studio-demo-section .lp-dch.miss.cursor{border-color:#ffa89a}.studio-shell .keyboard .kkey.next .kcap{background:var(--accent-dim);color:var(--accent)}.studio-shell .keyboard .kkey.active .kcap{background:var(--accent);color:var(--bg)}.studio-shell .keyboard .kkey.wrong{outline:2px solid var(--danger);outline-offset:1px;border-color:var(--danger)}.studio-shell .keyboard .kkey.wrong .kcap{background:var(--danger);color:var(--bg-card)}.studio-shell .keyboard .kkey.lit{background:var(--bg-hover);border-color:var(--line)}.studio-shell .keyboard .kkey.lit .kcap{background:var(--bg-card);box-shadow:inset 0 -2px color-mix(in srgb, var(--cap) 65%, transparent)}.studio-shell .keyboard .kkey.lit.next .kcap{background:var(--accent-dim);color:var(--accent)}.studio-shell .keyboard .kkey.lit.active .kcap{background:var(--accent);color:var(--bg)}.studio-shell .keyboard .kkey.lit.wrong .kcap{background:var(--danger);color:var(--bg-card)}:root[data-theme=dark] .studio-landing{--bg:#171b16;--bg-elev:#1f251c;--bg-card:#262e22;--bg-hover:#303a29;--text:#edf1e6;--muted:#b0bba4;--faint:#98a58b;--line:#3a4432;--accent:#c5f46b;--accent-dim:#c5f46b14}.studio-landing .lp-topbar{background:color-mix(in srgb, var(--bg) 95%, transparent)}:root[data-theme=dark] .studio-landing :is(.studio-hero h1,.lp-footer .brand,.lp-nav a:hover){color:var(--text)}:root[data-theme=dark] .studio-landing :is(.studio-hero .lp-sub,.hero-free,.hero-baseline,.sculpture-caption,.sculpture-coordinate,.anatomy-copy>p:last-child){color:var(--muted)}:root[data-theme=dark] .studio-landing .studio-anatomy{background:var(--bg-elev)}:root[data-theme=dark] .studio-landing :is(.studio-steps li,.studio-faq .lp-faq details,.studio-bottom-cta,.sculpture-orbit){border-color:var(--line)}:root[data-theme=dark] .studio-landing .step-top{color:var(--accent)}.studio-demo-section .sound-toggle{color:var(--muted);margin-left:auto}@media (height<=850px){.is-practice .sidebar-edition{margin-bottom:24px}.is-practice .sidebar-bottom{padding-top:16px}.is-practice .sidebar-goal>svg,.is-practice .sidebar-goal>strong,.is-practice .sidebar-goal>p,.is-practice .sidebar-signature{display:none}}@media (width<=1200px),(height<=800px){.studio-shell.is-practice .practice-grid{grid-template-columns:minmax(0,1fr)}.practice-coaching,.is-practice .practice-heading .heat-chip,.is-practice .practice-heading .keys-chip{display:none}}@media (width<=760px){.studio-shell.is-practice{padding-bottom:100px}.studio-shell.is-practice .practice-page{width:calc(100% - 28px);padding:10px 0}.is-practice .practice-heading h1{font-size:18px}.is-practice .practice-heading .streak-chip{display:none}.is-practice .practice-heading .hud-chip{padding:4px 6px}.is-practice .practice-heading .xp-chip{width:118px}.is-practice .studio-breadcrumb>span,.is-practice .practice-controls kbd,.is-practice .practice-controls .boss-link{display:none}.studio-shell.is-practice .practice-page .keyboard{--key-unit:clamp(14px, 4.5vw, 30px)}.studio-shell.is-practice .studio-gauges .gauge{padding:7px 10px}.studio-shell.is-practice .studio-gauges .gauge .value{font-size:26px}.studio-shell.is-practice .studio-gauges .gauge-note{font-size:var(--text-meta)}.is-practice .practice-heading{margin-bottom:9px}.studio-shell.is-practice .practice-main{gap:7px}.studio-shell.is-practice .practice-page .mode-bar{flex-basis:auto}.is-practice .practice-mode-row{flex-wrap:nowrap}.is-practice .practice-tools{margin:0}.is-practice .keyboard-toggle{display:inline-flex}.is-practice .studio-letter-area{display:none}.studio-shell.is-practice .board-wrap{min-height:118px}.studio-shell.is-practice .studio-board.text-board{padding:12px}}@media (width<=520px){.studio-shell.is-practice .practice-page .studio-gauges{grid-template-columns:repeat(3,minmax(0,1fr))}.studio-shell.is-practice .studio-gauges .gauge:nth-child(4){display:block}.studio-shell.is-practice .studio-gauges .gauge:nth-child(2){border-right:1px solid var(--line)}.studio-shell.is-practice .studio-gauges .gauge .label{font-size:var(--text-meta)}.is-practice .practice-mode-row{flex-wrap:nowrap}.is-practice .practice-tools{margin:0}.studio-shell.is-practice .practice-page .mode-bar{flex:1;justify-content:flex-start;width:auto}.is-practice .practice-heading .lvl{font-size:var(--text-meta)}.is-practice .studio-topbar-actions{gap:1px}.studio-landing .lp-topbar-inner{gap:8px}}@media (height<=700px){.studio-shell.is-practice .practice-page{padding-top:8px;padding-bottom:8px}.is-practice .practice-heading{margin-bottom:8px}.studio-shell.is-practice .practice-main{gap:6px}.studio-shell.is-practice .studio-gauges .gauge{padding-top:6px;padding-bottom:6px}.studio-shell.is-practice .studio-gauges .gauge-note{display:none}.studio-shell.is-practice .practice-page .keyboard{--key-unit:clamp(14px, min(4.5vw, 3.9dvh), 28px)}.is-practice .studio-letter-area,.is-practice .sidebar-goal,.is-practice .sidebar-signature{display:none}}@media (prefers-reduced-motion:reduce){.combo-track>span{transition:none}}:root[data-theme=dark] .studio-landing :is(.hero-flow,.hero-copy .studio-eyebrow){color:var(--accent)}.session-reward{border:1px solid color-mix(in srgb, var(--accent) 40%, var(--line));background:var(--accent-dim);color:var(--accent);white-space:nowrap;border-radius:9px;align-items:center;gap:7px;margin-left:auto;padding:12px 16px;display:flex}.session-reward strong{font:500 25px var(--font-display)}.session-reward small{font:var(--text-meta) var(--font-mono)}@media (width<=520px){.session-reward{gap:4px;padding:8px}.session-reward svg{display:none}.session-reward strong{font-size:18px}}@media (width<=760px){.studio-shell.is-practice .practice-page .mode-bar{min-height:38px;padding:3px}.studio-shell.is-practice .practice-page .mode-bar-btn{min-height:30px;padding:5px 8px;line-height:1.4}}.studio-shell.is-practice .studio-gauges .gauge .flow{gap:0;margin:0;position:absolute;bottom:0;left:0;right:0}.studio-shell.is-practice .studio-gauges .flow-track{height:3px}.studio-shell.is-practice .studio-gauges .flow-label{display:none}:root[data-theme=dark] .studio-landing :is(.studio-method h2,.studio-steps h3,.anatomy-copy h3,.studio-faq h2,.studio-faq summary,.studio-bottom-cta h2,.hero-demo-link){color:var(--text)}.is-practice .studio-letter-area{flex-wrap:wrap;gap:5px}.is-practice .studio-letter-area>.studio-eyebrow{flex-basis:100%;margin:0}.studio-shell .practice-page .letter-count{white-space:nowrap}@media (width<=760px){.studio-shell.is-practice .keyboard .kcap{letter-spacing:-.7px;inset:1px}}@media (width<=520px){.studio-shell.is-practice .studio-gauges .gauge{padding-left:7px;padding-right:7px}.studio-shell.is-practice .studio-gauges .gauge .label{letter-spacing:0}.studio-shell.is-practice .studio-gauges .gauge-note{display:none}.is-practice .practice-heading{flex-wrap:wrap;gap:6px}.is-practice .practice-heading h1{letter-spacing:-.5px}}@media (width>=761px) and (height<=800px){.studio-shell.is-practice .practice-page .keyboard{--key-unit:clamp(22px, 3.8dvh, 32px)}}
