@font-face{font-family:"Exo 2";font-style:normal;font-weight:400 700;font-display:swap;src:url(assets/fonts/exo2.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 600;font-display:swap;src:url(assets/fonts/jetbrains-mono.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Orbitron;font-style:normal;font-weight:500 900;font-display:swap;src:url(assets/fonts/orbitron.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--primary-solid: #5b3df5;--accent-solid: #10b9a5;--primary: #5b3df5;--accent: #10b9a5;--bg: #f7f7fc;--surface: #ffffff;--surface-2: #f1f1f8;--ink: #0e1230;--ink-2: #2a2f52;--muted: #646a8c;--faint: #a3a7c2;--line: #e4e5f0;--ok: #12a26b;--bad: #e0445b;--gold: #d99a0b;--primary-soft: color-mix(in srgb, var(--primary) 11%, transparent);--shadow: 0 1px 2px rgba(14, 18, 48, .05), 0 10px 30px -12px rgba(14, 18, 48, .16);--shadow-lg: 0 30px 60px -24px rgba(31, 22, 110, .3);--radius: 18px;--font: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono: "JetBrains Mono", ui-monospace, Consolas, monospace;--text-size: 26px;--f-lp: #ef4f5f;--f-lr: #f59e0b;--f-lm: #22b55e;--f-li: #3b82f6;--f-ri: #8b5cf6;--f-rm: #0fb5a5;--f-rr: #ec4899;--f-rp: #f97316;--f-th: #64748b;--hand: rgba(205, 160, 128, .34);--hand-edge: rgba(140, 92, 62, .22);--hand-palm: rgba(205, 160, 128, .22);--nail: rgba(255, 255, 255, .85);color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--primary: #8b7bff;--accent: #2dd4bf;--bg: #0b0d1c;--surface: #13162b;--surface-2: #1b1f3a;--ink: #eef0ff;--ink-2: #cdd0ea;--muted: #9599bb;--faint: #5c6088;--line: #262a4a;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 12px 30px -12px rgba(0, 0, 0, .6);--shadow-lg: 0 30px 60px -24px rgba(0, 0, 0, .7);--hand: rgba(235, 200, 175, .2);--hand-edge: rgba(255, 230, 210, .14);--hand-palm: rgba(235, 200, 175, .12);--nail: rgba(255, 255, 255, .55);color-scheme:dark}}:root[data-theme=dark]{--primary: #8b7bff;--accent: #2dd4bf;--bg: #0b0d1c;--surface: #13162b;--surface-2: #1b1f3a;--ink: #eef0ff;--ink-2: #cdd0ea;--muted: #9599bb;--faint: #5c6088;--line: #262a4a;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 12px 30px -12px rgba(0, 0, 0, .6);--shadow-lg: 0 30px 60px -24px rgba(0, 0, 0, .7);--hand: rgba(235, 200, 175, .2);--hand-edge: rgba(255, 230, 210, .14);--hand-palm: rgba(235, 200, 175, .12);--nail: rgba(255, 255, 255, .55);color-scheme:dark}:root[data-size=s]{--text-size: 21px}:root[data-size=l]{--text-size: 32px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--bg);color:var(--ink);font:400 16px/1.6 var(--font);-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}a{color:var(--primary);text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}kbd{display:inline-block;min-width:1.6em;padding:1px 6px;border:1px solid var(--line);border-bottom-width:3px;border-radius:6px;background:var(--surface);font:600 .82em var(--mono);text-align:center;color:var(--ink)}:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 50%,transparent);outline-offset:2px}.skip{position:absolute;left:-9999px;z-index:100;padding:8px 12px;border-radius:8px;background:var(--ink);color:var(--bg)}.skip:focus{left:8px;top:8px}.wrap{width:100%;max-width:1120px;margin:0 auto;padding:0 20px}.muted{color:var(--muted)}.center{text-align:center}.ok{color:var(--ok)}.bad{color:var(--bad)}.i{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 18px;border:1.5px solid transparent;border-radius:12px;font-weight:600;font-size:15px;line-height:1.2;cursor:pointer;transition:transform .15s,background-color .15s,border-color .15s,box-shadow .15s,color .15s;white-space:nowrap}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn--sm{padding:7px 12px;font-size:14px}.btn--lg{padding:14px 24px;font-size:16px}.btn--primary{background:var(--primary);color:#fff;box-shadow:0 10px 22px -10px var(--primary)}.btn--primary:hover{background:color-mix(in srgb,var(--primary) 88%,#000)}.btn--ghost{background:var(--surface);border-color:var(--line);color:var(--ink)}.btn--ghost:hover{border-color:var(--primary);color:var(--primary)}.icon-btn{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--line);border-radius:11px;background:var(--surface);cursor:pointer;transition:border-color .15s,color .15s}.icon-btn:hover{border-color:var(--primary);color:var(--primary)}.icon-btn svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.badge{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;font-size:13px;font-weight:700}.badge--gold{background:color-mix(in srgb,var(--gold) 16%,transparent);color:var(--gold)}.eyebrow{display:block;margin-bottom:6px;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--primary)}.topbar{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:saturate(170%) blur(12px);-webkit-backdrop-filter:saturate(170%) blur(12px)}.topbar__inner{display:flex;align-items:center;gap:20px;height:66px}.logo{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-size:18px;font-weight:800;letter-spacing:-.02em}.logo__mark{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,var(--primary-solid),var(--accent-solid));color:#fff;font:800 17px var(--mono);white-space:nowrap}.logo__mark i{font-style:normal;animation:blink 1s steps(1) infinite}.logo__text b{margin-left:2px;color:var(--primary)}.nav{display:flex;gap:4px;margin-left:auto}.nav a{padding:8px 13px;border-radius:10px;color:var(--ink-2);font-size:15px;font-weight:600;transition:background-color .15s,color .15s}.nav a:hover{background:var(--surface-2);color:var(--ink)}.nav a.is-active{background:var(--primary-soft);color:var(--primary)}.topbar__tools{display:flex;align-items:center;gap:8px}.streak{padding:6px 11px;border-radius:999px;background:color-mix(in srgb,#f97316 14%,transparent);color:#ea580c;font-size:14px;font-weight:700}.nav-toggle{display:none}.main{flex:1;padding-top:36px;padding-bottom:64px;outline:none}.footer{border-top:1px solid var(--line);color:var(--muted);font-size:14px}.footer__inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding-top:20px;padding-bottom:20px}.page-intro{margin-bottom:26px}.page-intro h1,.lesson-head h1{font-size:clamp(28px,3.6vw,40px);font-weight:800;line-height:1.15;letter-spacing:-.03em}.page-intro p,.lesson-head p{margin-top:8px;max-width:640px;color:var(--muted);font-size:17px}.page-intro--row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px}.back{display:inline-block;margin-bottom:18px;font-weight:600;font-size:15px}.card{padding:26px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.card h2{font-size:20px;font-weight:700;margin-bottom:8px}.card+.card,.stats-grid+.card,.card--chart{margin-top:20px}.empty{max-width:560px;margin:40px auto;padding:48px 32px;border:1px solid var(--line);border-radius:24px;background:var(--surface);text-align:center;box-shadow:var(--shadow)}.empty h1{font-size:30px;font-weight:800;letter-spacing:-.02em}.empty p{margin:12px 0 26px;color:var(--muted)}.empty__icon{display:inline-grid;place-items:center;width:72px;height:72px;margin-bottom:16px;border-radius:50%;background:color-mix(in srgb,var(--gold) 15%,transparent);color:var(--gold)}.empty__icon .i{width:36px;height:36px}.toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 10px;width:fit-content;max-width:100%;margin:0 auto 26px;padding:8px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}.toolbar__sep{width:1px;height:22px;background:var(--line)}.toolbar [hidden]{display:none}.seg{display:flex;gap:2px}.seg button{padding:7px 12px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:14px;font-weight:600;cursor:pointer;transition:background-color .15s,color .15s}.seg button:hover{color:var(--ink)}.seg button[aria-pressed=true]{background:var(--primary-soft);color:var(--primary)}.hint{margin-top:22px;text-align:center;color:var(--muted);font-size:14px}.live{display:flex;align-items:flex-end;gap:30px;margin-bottom:10px}.live__item strong{display:block;font:700 30px/1 var(--mono);color:var(--primary);font-variant-numeric:tabular-nums}.live__item small{color:var(--muted);font-size:13px}.live__restart{margin-left:auto}.progress{height:4px;margin-bottom:18px;border-radius:4px;background:var(--surface-2);overflow:hidden}.progress span{display:block;width:0;height:100%;border-radius:4px;background:linear-gradient(90deg,var(--primary),var(--accent));transition:width .2s linear}.tb{position:relative;padding:22px 26px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow);cursor:text}.tb__view{position:relative;height:calc(var(--text-size) * 1.65 * 3);overflow:hidden}.tb__text{position:relative;font:400 var(--text-size)/1.65 var(--mono);color:var(--faint);transition:transform .2s ease;word-break:normal}.tb__text .w{display:inline-block;white-space:pre}.tb__text .ok{color:var(--ink)}.tb__text .bad{color:var(--bad);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}.tb__text .sp.bad{background:color-mix(in srgb,var(--bad) 22%,transparent);border-radius:3px;text-decoration:none}.tb__text .bad-try{color:var(--bad)}.tb__text .shake{display:inline-block;animation:shake .25s}@keyframes shake{25%{transform:translate(-3px)}75%{transform:translate(3px)}}.tb__caret{position:absolute;top:0;left:0;width:3px;border-radius:2px;background:var(--primary);transition:transform .09s ease-out;animation:blink 1.05s steps(1) infinite;pointer-events:none}.tb.is-running .tb__caret{animation:none}.tb[data-caret=block] .tb__caret{opacity:.3;border-radius:4px}.tb[data-caret=underline] .tb__caret{height:3px!important;margin-top:calc(var(--text-size) * 1.2)}@keyframes blink{50%{opacity:0}}.tb__input{position:absolute;top:0;left:0;width:1px;height:1px;opacity:0;border:0;padding:0;resize:none}.tb__blur{position:absolute;top:0;right:0;bottom:0;left:0;display:none;place-items:center;border:0;border-radius:20px;background:color-mix(in srgb,var(--surface) 70%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);color:var(--ink);font-size:16px;font-weight:600;cursor:pointer}.tb.is-blurred:not(.is-done) .tb__blur{display:grid}.kb-wrap{margin-top:26px}.kb-stage{position:relative;max-width:800px;margin:0 auto;display:flow-root;container-type:inline-size}.kb{position:relative;display:grid;gap:5px;padding:12px;border:1px solid var(--line);border-radius:18px;background:var(--surface-2);-webkit-user-select:none;user-select:none}.has-hands .kb{margin-bottom:calc((100cqw - 24px) / 15 * 2.3)}.kb__row{display:flex;gap:5px;height:calc((100cqw - 24px - 70px) / 15);min-height:28px}.kb__row:last-child{justify-content:center}.key{position:relative;flex:1 1 0;display:flex;align-items:center;justify-content:center;border-radius:8px;background:var(--surface);box-shadow:inset 0 -3px color-mix(in srgb,var(--fc, var(--line)) 55%,transparent),0 1px 2px #0e123014;color:var(--ink-2);font:600 clamp(10px,2.1cqw,15px) var(--mono);text-transform:uppercase;transition:transform .08s,background-color .12s,box-shadow .12s,color .12s}.key.wide-15{flex-grow:1.5}.key.wide-18{flex-grow:1.8}.key.wide-2{flex-grow:2}.key.wide-22{flex-grow:2.2}.key.wide-24{flex-grow:2.4}.key.wide-28{flex-grow:2.6}.key.space{flex:0 0 42%}.key[data-k=Backspace],.key[data-k=Tab],.key[data-k=Caps],.key[data-k=Enter],.key[data-k=Shift]{font-size:clamp(8px,1.5cqw,12px);text-transform:none;color:var(--muted)}.key.bump:after{content:"";position:absolute;bottom:22%;width:26%;height:2px;border-radius:2px;background:currentColor;opacity:.5}.f-lp{--fc: var(--f-lp)}.f-lr{--fc: var(--f-lr)}.f-lm{--fc: var(--f-lm)}.f-li{--fc: var(--f-li)}.f-ri{--fc: var(--f-ri)}.f-rm{--fc: var(--f-rm)}.f-rr{--fc: var(--f-rr)}.f-rp{--fc: var(--f-rp)}.f-lt,.f-rt{--fc: var(--f-th)}.key.is-next{background:var(--fc);color:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--fc) 30%,transparent),0 8px 18px -6px var(--fc);transform:translateY(-1px)}.key.is-hit{animation:key-hit .18s}.key.is-miss{animation:key-miss .3s}@keyframes key-hit{40%{transform:translateY(2px) scale(.96)}}@keyframes key-miss{0%,60%{background:var(--bad);color:#fff}}.kb--heat .key{background:color-mix(in srgb,var(--bad) calc(var(--heat, 0) * 100%),var(--surface));color:var(--ink)}.kb__hint{display:flex;align-items:center;justify-content:center;gap:8px;min-height:28px;margin-top:10px;color:var(--muted);font-size:15px;text-align:center}.kb__hint b{color:var(--fc, var(--ink))}.t-lp{--fc: var(--f-lp)}.t-lr{--fc: var(--f-lr)}.t-lm{--fc: var(--f-lm)}.t-li{--fc: var(--f-li)}.t-ri{--fc: var(--f-ri)}.t-rm{--fc: var(--f-rm)}.t-rr{--fc: var(--f-rr)}.t-rp{--fc: var(--f-rp)}.t-lt,.t-rt{--fc: var(--f-th)}.dot{width:10px;height:10px;border-radius:50%;background:var(--fc)}.hands{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none}.hand-palm{fill:var(--hand-palm);stroke:var(--hand-edge);stroke-width:1.5}.hand-edge{stroke:var(--hand-edge);stroke-linecap:round}.hand-finger{stroke:var(--hand);stroke-linecap:round;transition:stroke .2s}.hand-finger.is-active{stroke:color-mix(in srgb,var(--fc) 45%,transparent)}.hand-tip{fill:var(--nail);stroke:color-mix(in srgb,var(--fc) 70%,transparent);stroke-width:2;transition:fill .2s}.hand-tip.is-active{fill:var(--fc);stroke:#fff}.result{padding:30px;border:1px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:var(--shadow-lg);animation:pop .35s ease}@keyframes pop{0%{opacity:0;transform:translateY(8px) scale(.99)}}.result__head{display:grid;grid-template-columns:auto auto 1fr;gap:36px;align-items:center;margin-bottom:18px}.big small{display:block;color:var(--muted);font-size:15px;font-weight:600}.big strong{font:700 clamp(48px,7vw,72px)/1 var(--mono);color:var(--primary)}.big em{font-style:normal;font-size:.5em}.result__level h3{margin-top:6px;font-size:22px;font-weight:800}.result__level p{color:var(--muted);font-size:15px}.scale{display:flex;gap:4px;margin-top:10px}.scale span{flex:1;padding-top:8px;border-top:5px solid var(--surface-2);font-size:11px;font-weight:600;text-align:center;color:var(--faint)}.scale span.on{border-color:var(--primary);color:var(--primary)}.chart-wrap{margin:10px 0 6px}.chart{display:block;width:100%;height:220px}.chart__grid{stroke:var(--line);stroke-width:1;vector-effect:non-scaling-stroke}.chart__label{fill:var(--muted);font:500 11px var(--mono)}.chart__legend{display:flex;justify-content:center;gap:18px;font-size:13px;color:var(--muted)}.chart__legend span{display:inline-flex;align-items:center;gap:6px}.chart__legend i{width:12px;height:4px;border-radius:2px}.result__grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:18px 0}.result__grid div{padding:12px 14px;border-radius:12px;background:var(--surface-2)}.result__grid dt{color:var(--muted);font-size:13px}.result__grid dd{margin:0;font:700 20px var(--mono)}.result__keys{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:20px;font-size:14px;color:var(--muted)}.result__keys kbd,.chips kbd{position:relative;padding:4px 10px;font-size:15px}.result__keys kbd small,.chips kbd small{margin-left:6px;color:var(--bad);font-size:11px}.chips kbd small{color:var(--muted)}.result__actions{display:flex;flex-wrap:wrap;gap:10px}.course-progress{display:flex;align-items:center;gap:16px}.ring{--p: 0;display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:conic-gradient(var(--primary) calc(var(--p) * 1%),var(--surface-2) 0)}.ring span{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;background:var(--bg);font:700 13px var(--mono)}.lesson-group{margin-top:30px}.lesson-group h2{display:flex;align-items:center;gap:10px;margin-bottom:14px;font-size:19px;font-weight:700}.lesson-group__icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:var(--primary-soft);color:var(--primary);font-size:16px}.lesson-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}.lesson-card{position:relative;display:flex;flex-direction:column;gap:8px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);transition:transform .15s,border-color .15s,box-shadow .15s}.lesson-card:hover{transform:translateY(-3px);border-color:var(--primary);box-shadow:var(--shadow)}.lesson-card.is-next{border:2px solid var(--primary);box-shadow:0 0 0 4px var(--primary-soft)}.lesson-card.is-done{background:color-mix(in srgb,var(--ok) 5%,var(--surface))}.lesson-card__num{position:absolute;top:12px;right:14px;font:600 12px var(--mono);color:var(--faint)}.lesson-card strong{font-size:16px}.lesson-card__keys{display:flex;gap:4px;min-height:26px;font-size:13px}.lesson-card__foot{display:flex;align-items:center;justify-content:space-between;margin-top:auto;font-size:12px;color:var(--muted)}.stars{display:inline-flex;gap:1px;color:var(--line)}.stars .i{width:17px;height:17px;fill:currentColor;stroke:none}.stars .on{color:var(--gold)}.lesson-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px}.lesson-goal{padding:12px 18px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.lesson-goal small{display:block;color:var(--muted);font-size:12px}.lesson-goal strong{font-family:var(--mono)}.guide{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:28px;padding:28px;border:1px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:var(--shadow);animation:pop .35s ease}.guide__steps{display:grid;gap:20px;margin:0;padding:0;list-style:none}.guide__steps li{display:flex;gap:14px}.guide__n{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:50%;background:var(--primary);color:#fff;font-weight:800;font-size:14px}.guide__steps strong{display:block;font-size:17px}.guide__steps p{margin-top:2px;color:var(--muted);font-size:15px}.newkeys{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.newkey{display:flex;align-items:center;gap:10px;padding:8px 12px 8px 8px;border-radius:12px;background:color-mix(in srgb,var(--fc) 12%,transparent)}.newkey kbd{min-width:38px;padding:6px 8px;border-color:var(--fc);background:var(--fc);color:#fff;font-size:18px;text-transform:uppercase}.newkey span{font-size:14px;font-weight:600;color:var(--fc)}.guide__demo .kb-wrap,.guide__demo>div{margin:0}.guide__actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:12px;padding-top:20px;border-top:1px solid var(--line)}.guide__actions .muted{font-size:14px}.lesson-verdict{display:flex;align-items:center;gap:18px;margin:-6px 0 22px;padding:18px 20px;border-radius:16px}.lesson-verdict.is-pass{background:color-mix(in srgb,var(--ok) 10%,transparent)}.lesson-verdict.is-fail{background:color-mix(in srgb,var(--gold) 12%,transparent)}.lesson-verdict .stars .i{width:30px;height:30px}.lesson-verdict h2{font-size:20px;font-weight:800}.lesson-verdict p{color:var(--muted)}.practice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.practice-grid .card{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.practice-grid .card p{color:var(--muted);font-size:15px}.practice-grid .card .btn{margin-top:auto}.card__icon{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:var(--primary-soft);color:var(--primary)}.chips{display:flex;flex-wrap:wrap;gap:6px}.chips--inline{display:inline-flex;vertical-align:middle}.textarea,.field input,.field select{width:100%;padding:11px 13px;border:1.5px solid var(--line);border-radius:12px;background:var(--bg);font-size:15px}.textarea:focus,.field input:focus,.field select:focus{outline:none;border-color:var(--primary)}.textarea{resize:vertical}.game{border:1px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:var(--shadow-lg);overflow:hidden}.game__hud{display:flex;flex-wrap:wrap;gap:10px 28px;padding:14px 22px;border-bottom:1px solid var(--line);font-size:14px;color:var(--muted)}.game__hud strong{margin-left:6px;font:700 18px var(--mono);color:var(--ink)}.game__hud .hearts{color:var(--bad);letter-spacing:2px}.game__field{position:relative;height:460px;overflow:hidden;background:radial-gradient(600px 300px at 50% 0,var(--primary-soft),transparent 70%),linear-gradient(var(--line) 1px,transparent 1px) 0 0 / 100% 46px}.game__field.is-hit{animation:field-hit .35s}@keyframes field-hit{30%{box-shadow:inset 0 0 0 4px var(--bad)}}.game__ground{position:absolute;left:0;right:0;bottom:0;height:8px;background:linear-gradient(90deg,var(--primary),var(--accent));opacity:.7}.drop{position:absolute;top:0;padding:6px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:var(--shadow);font:600 17px var(--mono);color:var(--ink);white-space:nowrap;will-change:transform}.drop b{color:var(--ok);font-weight:700}.drop.is-target{border-color:var(--ok);box-shadow:0 0 0 3px color-mix(in srgb,var(--ok) 25%,transparent);z-index:2}.drop.is-cleared{animation:cleared .35s forwards}.drop.is-lost{animation:lost .35s forwards}@keyframes cleared{to{opacity:0;scale:1.4;filter:blur(2px)}}@keyframes lost{to{opacity:0;background:var(--bad);color:#fff}}.game__overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;display:grid;place-content:center;justify-items:center;gap:12px;padding:20px;background:color-mix(in srgb,var(--surface) 82%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);text-align:center}.game__overlay[hidden]{display:none}.game__overlay h2{font-size:34px;font-weight:800}.game__overlay p{max-width:420px;color:var(--muted)}.game__input{display:block;width:100%;padding:18px 22px;border:0;border-top:1px solid var(--line);background:var(--surface);font:600 20px var(--mono);text-align:center}.game__input:focus{outline:none;background:var(--surface-2)}.tiles{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.tile{padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.tile small{display:block;color:var(--muted);font-size:13px}.tile strong{font:700 26px var(--mono)}.tile em{margin-left:4px;font-style:normal;font-size:14px;color:var(--muted)}.stats-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:20px;margin-top:20px}.stats-grid .card .btn,.stats-grid .kb-wrap,.stats-grid [data-heat]{margin-top:14px}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:14px}.table th,.table td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.table th{color:var(--muted);font-weight:600;font-size:13px}.tag{padding:2px 8px;border-radius:6px;font-size:12px;font-weight:600;background:var(--surface-2)}.tag--test{background:var(--primary-soft);color:var(--primary)}.tag--lesson{background:color-mix(in srgb,var(--ok) 12%,transparent);color:var(--ok)}.tag--practice{background:color-mix(in srgb,var(--gold) 14%,transparent);color:var(--gold)}.cert-tools{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:20px}.cert-tools .field{flex:1;max-width:380px}.cert-frame{padding:14px;border:1px solid var(--line);border-radius:20px;background:var(--surface-2)}.cert-frame canvas{display:block;width:100%;height:auto;border-radius:10px;box-shadow:var(--shadow-lg)}.modal{width:min(460px,calc(100% - 32px));padding:0;border:1px solid var(--line);border-radius:22px;background:var(--surface);color:var(--ink);box-shadow:var(--shadow-lg)}.modal::backdrop{background:#080a1973;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal__box{display:grid;gap:14px;padding:24px}.modal__head,.modal__foot{display:flex;align-items:center;justify-content:space-between;gap:10px}.modal__head h2{font-size:22px;font-weight:800}.field span{display:flex;justify-content:space-between;margin-bottom:6px;font-size:14px;font-weight:600}.field input[type=range]{padding:0;border:0;background:none;accent-color:var(--primary)}.toggle{display:flex;align-items:center;gap:10px;font-size:15px;cursor:pointer}.toggle input{width:18px;height:18px;accent-color:var(--primary)}.modal__foot{margin-top:8px;padding-top:16px;border-top:1px solid var(--line)}.toast{position:fixed;left:50%;bottom:24px;z-index:200;padding:12px 20px;border-radius:12px;background:var(--ink);color:var(--bg);font-weight:600;box-shadow:var(--shadow-lg);opacity:0;transform:translate(-50%,20px);transition:opacity .25s,transform .25s;pointer-events:none}.toast.is-on{opacity:1;transform:translate(-50%)}@media (max-width: 1020px){.nav-toggle{display:grid}.topbar__tools{margin-left:auto}.nav{position:absolute;top:66px;left:0;right:0;display:none;flex-direction:column;padding:12px 20px 18px;border-bottom:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-lg)}.nav.is-open{display:flex}.nav a{padding:12px 14px;font-size:16px}.guide{grid-template-columns:1fr}.tiles{grid-template-columns:repeat(3,minmax(0,1fr))}.stats-grid,.practice-grid{grid-template-columns:1fr}.result__head{grid-template-columns:auto auto}.result__level{grid-column:1 / -1}}@media (max-width: 640px){.wrap{padding:0 16px}:root{--text-size: 20px}:root[data-size=l]{--text-size: 24px}:root[data-size=s]{--text-size: 17px}.main{padding-top:24px}.logo__text{font-size:16px}.toolbar{width:100%}.toolbar__sep{display:none}.live{gap:18px}.live__item strong{font-size:24px}.tb{padding:16px}.kb{padding:6px;gap:3px;border-radius:12px}.kb__row{gap:3px;min-height:22px}.key{border-radius:5px}.result{padding:20px}.result__grid{grid-template-columns:repeat(2,1fr)}.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.guide{padding:18px}.game__field{height:380px}.footer__keys{display:none}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.stats-grid .card{margin-top:0}@property --spin{syntax: "<angle>"; initial-value: 0deg; inherits: false;}:root{--display: "Orbitron", "Exo 2", system-ui, sans-serif;--font: "Exo 2", system-ui, -apple-system, "Segoe UI", sans-serif;--neon-a: #22e5ff;--neon-b: #ff3dbb;--neon-c: #8b5cf6;--neon-grad: linear-gradient(100deg, var(--neon-a), var(--neon-c) 50%, var(--neon-b));--glow-a: 0 0 18px color-mix(in srgb, var(--neon-a) 55%, transparent);--glow-b: 0 0 18px color-mix(in srgb, var(--neon-b) 55%, transparent);--cut: 12px}:root:not([data-theme=light]){--primary-solid: #8b5cf6;--accent-solid: #22e5ff;--primary: #b06bff;--accent: #22e5ff;--bg: #07060f;--surface: rgba(22, 19, 46, .72);--surface-2: rgba(40, 34, 82, .55);--ink: #f3f1ff;--ink-2: #d6d2f5;--muted: #9a94c7;--faint: #57518a;--line: rgba(160, 140, 255, .16);--ok: #4dff9a;--bad: #ff4d6d;--gold: #ffc94d;--primary-soft: rgba(176, 107, 255, .16);--shadow: 0 0 0 1px rgba(160, 140, 255, .06), 0 18px 40px -18px rgba(0, 0, 0, .8);--shadow-lg: 0 0 0 1px rgba(160, 140, 255, .08), 0 30px 70px -24px rgba(0, 0, 0, .9), 0 0 60px -30px var(--neon-c);--hand: rgba(16, 18, 46, .6);--hand-edge: rgba(34, 229, 255, .5);--hand-palm: rgba(16, 18, 46, .55);--nail: rgba(255, 255, 255, .7);--f-lp: #ff4d6d;--f-lr: #ffb02e;--f-lm: #4dff9a;--f-li: #3da9ff;--f-ri: #b06bff;--f-rm: #22e5ff;--f-rr: #ff3dbb;--f-rp: #ff7a2e;--f-th: #8a94b8;color-scheme:dark}:root[data-theme=light]{--primary: #7c3aed;--accent: #0891b2;--neon-a: #06b6d4;--neon-b: #db2777;--neon-c: #7c3aed;--bg: #f4f2ff}body{position:relative;font-family:var(--font);font-size:16.5px;background:var(--bg);isolation:isolate}body:before,body:after{content:"";position:fixed;z-index:-1;pointer-events:none}body:before{top:0;right:0;bottom:0;left:0;background:radial-gradient(800px 500px at 12% -5%,color-mix(in srgb,var(--neon-c) 32%,transparent),transparent 70%),radial-gradient(700px 500px at 95% 10%,color-mix(in srgb,var(--neon-b) 18%,transparent),transparent 70%),radial-gradient(900px 500px at 50% 115%,color-mix(in srgb,var(--neon-a) 22%,transparent),transparent 70%)}body:after{left:-50%;right:-50%;bottom:-10vh;height:55vh;background:linear-gradient(color-mix(in srgb,var(--neon-c) 35%,transparent) 1px,transparent 1px) 0 0 / 70px 70px,linear-gradient(90deg,color-mix(in srgb,var(--neon-c) 35%,transparent) 1px,transparent 1px) 0 0 / 70px 70px;transform:perspective(420px) rotateX(62deg);transform-origin:center top;mask-image:linear-gradient(transparent,#000 40%,transparent 95%);-webkit-mask-image:linear-gradient(transparent,#000 40%,transparent 95%);opacity:.35;animation:grid-run 6s linear infinite}:root[data-theme=light] body:after{opacity:.18}@keyframes grid-run{to{background-position:0 70px,0 0}}.page-intro h1,.lesson-head h1,.empty h1,.game__overlay h2,.modal__head h2{font-family:var(--display);font-weight:800;letter-spacing:.01em;text-transform:uppercase;background:var(--neon-grad);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 22px color-mix(in srgb,var(--neon-c) 45%,transparent))}.page-intro h1,.lesson-head h1{font-size:clamp(26px,3.4vw,40px)}.card h2,.lesson-group h2,.guide__steps strong,.result__level h3,.lesson-verdict h2{font-family:var(--display);font-weight:700;letter-spacing:.02em;text-transform:uppercase;font-size:17px}.eyebrow{font-family:var(--display);color:var(--accent);text-shadow:var(--glow-a)}.topbar{background:color-mix(in srgb,var(--bg) 70%,transparent);border-bottom:1px solid transparent;border-image:var(--neon-grad) 1;box-shadow:0 10px 40px -20px var(--neon-c)}.logo{font-family:var(--display);text-transform:uppercase;letter-spacing:.04em;font-size:17px}.logo__mark{background:var(--neon-grad);box-shadow:var(--glow-b);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);border-radius:0}.logo__text b{color:var(--accent);text-shadow:var(--glow-a)}.nav a{padding:8px 9px;white-space:nowrap;font-family:var(--display);font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;border-radius:8px}.nav a.is-active{background:transparent;color:var(--accent);text-shadow:var(--glow-a);box-shadow:inset 0 -2px 0 var(--accent);border-radius:0}.icon-btn{background:var(--surface);border-color:var(--line)}.icon-btn:hover{border-color:var(--accent);color:var(--accent);box-shadow:var(--glow-a)}.streak{background:#ff7a2e24;color:#ff9a4d;font-family:var(--display);font-size:13px;box-shadow:0 0 14px -4px #ff7a2e}.player{display:flex;align-items:center;gap:10px;padding:4px 12px 4px 4px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);cursor:pointer;transition:border-color .2s,box-shadow .2s}.player:hover{border-color:var(--primary);box-shadow:0 0 18px -6px var(--primary)}.player__lvl{--p: 0;position:relative;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:conic-gradient(var(--accent) calc(var(--p) * 1%),rgba(255,255,255,.08) 0)}.player__lvl span{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:var(--bg);font:800 12px var(--display);color:var(--accent)}.player__info{display:grid;line-height:1.1}.player__info strong{font:700 11px var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--rank, var(--ink))}.player__info small{font-size:11px;color:var(--muted)}.card,.tb,.result,.guide,.game,.toolbar,.lesson-card,.tile,.lesson-goal,.empty,.cert-frame,.modal{background:var(--surface);border-color:var(--line);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.card,.result,.guide,.empty{position:relative;box-shadow:var(--shadow-lg)}.card:before,.result:before,.guide:before,.empty:before,.tb:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;padding:1px;border-radius:inherit;background:linear-gradient(140deg,color-mix(in srgb,var(--neon-a) 70%,transparent),transparent 35%,transparent 65%,color-mix(in srgb,var(--neon-b) 70%,transparent));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:.7}.btn{font-family:var(--display);font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border-radius:0;clip-path:polygon(var(--cut) 0,100% 0,100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,0 100%,0 var(--cut))}.btn--lg{padding:16px 26px;font-size:14px}.btn--primary{background:var(--neon-grad);background-size:200% 100%;color:#fff;box-shadow:none;filter:drop-shadow(0 0 14px color-mix(in srgb,var(--neon-c) 60%,transparent));text-shadow:0 1px 2px rgba(0,0,0,.35);transition:background-position .4s,transform .15s,filter .2s}.btn--primary:hover{background:var(--neon-grad);background-size:200% 100%;background-position:100% 0;filter:drop-shadow(0 0 22px color-mix(in srgb,var(--neon-b) 70%,transparent))}.btn--ghost{background:color-mix(in srgb,var(--neon-c) 10%,transparent);border:0;box-shadow:inset 0 0 0 1px var(--line);color:var(--ink)}.btn--ghost:hover{color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);filter:drop-shadow(0 0 10px color-mix(in srgb,var(--neon-a) 40%,transparent))}.toolbar{border-radius:0;clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px)}.seg button{font-family:var(--display);font-size:12px;letter-spacing:.06em;text-transform:uppercase;border-radius:6px}.seg button[aria-pressed=true]{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);text-shadow:var(--glow-a);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}.live__item strong{font-family:var(--display);font-weight:800;color:var(--accent);text-shadow:var(--glow-a)}.live__item:nth-child(2) strong{color:var(--neon-b);text-shadow:var(--glow-b)}.live__item small{font-family:var(--display);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase}.progress{height:5px;background:#ffffff0f}.progress span{background:var(--neon-grad);box-shadow:0 0 12px var(--neon-a)}.combo{display:flex;align-items:baseline;gap:6px;min-width:120px;font-family:var(--display);opacity:.35;transition:opacity .2s}.combo.is-on{opacity:1}.combo strong{display:inline-block;font-size:30px;font-weight:900;line-height:1;color:var(--combo, var(--gold));text-shadow:0 0 16px var(--combo, var(--gold))}.combo strong.pop{animation:combo-pop .18s ease-out}.combo small{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.combo em{font-style:normal;font-size:13px;font-weight:800;color:var(--combo, var(--gold))}.combo.is-broken strong{animation:combo-break .4s}@keyframes combo-pop{50%{transform:scale(1.35)}}@keyframes combo-break{30%{transform:translate(-4px);color:var(--bad)}60%{transform:translate(4px)}}.tb{border-radius:18px;box-shadow:var(--shadow-lg)}.tb__text{color:var(--faint)}.tb__text .ok{color:var(--ink);text-shadow:0 0 10px color-mix(in srgb,var(--neon-a) 35%,transparent)}.tb__text .bad{color:var(--bad);text-shadow:0 0 10px color-mix(in srgb,var(--bad) 70%,transparent)}.tb__caret{background:var(--accent);box-shadow:0 0 12px var(--accent),0 0 3px #fff}.tb.is-shake{animation:tb-shake .28s}@keyframes tb-shake{20%{transform:translate(-6px)}40%{transform:translate(5px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}.tb__blur{background:color-mix(in srgb,var(--bg) 70%,transparent);font-family:var(--display);letter-spacing:.1em;text-transform:uppercase;font-size:14px;color:var(--accent);text-shadow:var(--glow-a)}.kb{background:#080714c7;border:0;border-radius:16px;box-shadow:0 30px 60px -30px #000,inset 0 0 0 1px #ffffff0a;isolation:isolate}.kb:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;z-index:-1;border-radius:18px;background:conic-gradient(from var(--spin),var(--f-lp),var(--f-lr),var(--f-lm),var(--f-rm),var(--f-li),var(--f-ri),var(--f-rr),var(--f-lp));animation:rgb-spin 6s linear infinite;filter:blur(1px)}.kb:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;border-radius:16px;background:#0b0a1c}:root[data-theme=light] .kb:after{background:#1a1733}@keyframes rgb-spin{to{--spin: 360deg}}.key{background:linear-gradient(#1c1a36,#151329);color:#cfd0f5;box-shadow:inset 0 1px #ffffff12,inset 0 -3px color-mix(in srgb,var(--fc, #555) 70%,transparent),0 2px 10px -4px color-mix(in srgb,var(--fc, #555) 80%,transparent);text-shadow:0 0 6px color-mix(in srgb,var(--fc, #fff) 60%,transparent)}.key[data-k=Backspace],.key[data-k=Tab],.key[data-k=Caps],.key[data-k=Enter],.key[data-k=Shift]{color:#8c8ab8}.key.is-next{background:var(--fc);color:#08070f;text-shadow:none;box-shadow:0 0 0 2px #fff,0 0 22px 4px var(--fc),0 0 50px 6px color-mix(in srgb,var(--fc) 40%,transparent);animation:key-pulse 1s ease-in-out infinite}@keyframes key-pulse{50%{box-shadow:0 0 0 2px #fff,0 0 30px 8px var(--fc),0 0 70px 10px color-mix(in srgb,var(--fc) 40%,transparent)}}.key.is-hit{animation:key-hit-neon .22s}@keyframes key-hit-neon{0%{background:#fff;color:#000;box-shadow:0 0 30px 6px var(--fc)}}.kb--heat .key{background:color-mix(in srgb,var(--bad) calc(var(--heat, 0) * 100%),#1a1833);color:#fff}.kb__hint{font-size:15px}.kb__hint b{text-shadow:0 0 10px var(--fc)}.hand-finger.is-active{stroke:color-mix(in srgb,var(--fc) 55%,transparent);filter:drop-shadow(0 0 6px var(--fc))}.hand-tip.is-active{filter:drop-shadow(0 0 8px var(--fc))}.big small,.result__grid dt,.tile small,.lesson-goal small{font-family:var(--display);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase}.big strong{font-family:var(--display);font-weight:900;background:var(--neon-grad);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 18px color-mix(in srgb,var(--neon-c) 60%,transparent))}.result__grid div,.tile{background:color-mix(in srgb,var(--neon-c) 8%,transparent);border:1px solid var(--line)}.result__grid dd,.tile strong,.lesson-goal strong{font-family:var(--display);font-weight:700}.scale span{font-family:var(--display);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;border-top-color:#ffffff12}.scale span.on{border-color:var(--rank, var(--accent));color:var(--rank, var(--accent));text-shadow:0 0 10px var(--rank, var(--accent))}.rank-badge{display:inline-flex;align-items:center;gap:8px;padding:4px 12px 4px 6px;border-radius:999px;background:color-mix(in srgb,var(--rank) 14%,transparent);color:var(--rank);font:800 12px var(--display);letter-spacing:.1em;text-transform:uppercase;box-shadow:0 0 18px -6px var(--rank)}.rank-badge i{font-style:normal;font-size:18px}.xp-gain{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin:18px 0;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--neon-a) 6%,transparent)}.xp-gain__amount{font:900 26px var(--display);color:var(--accent);text-shadow:var(--glow-a)}.xp-gain__bar{flex:1;min-width:200px}.xp-gain__bar small{display:flex;justify-content:space-between;margin-bottom:6px;font:600 11px var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.xpbar{height:10px;border-radius:10px;background:#ffffff12;overflow:hidden}.xpbar span{display:block;height:100%;border-radius:10px;background:var(--neon-grad);box-shadow:0 0 14px var(--neon-a);transition:width 1.2s cubic-bezier(.2,.8,.2,1)}.xp-gain__list{display:flex;flex-wrap:wrap;gap:6px;width:100%;font-size:13px;color:var(--muted)}.xp-gain__list span{padding:2px 8px;border-radius:6px;background:#ffffff0d}.unlocked-list{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.lesson-card{border-radius:14px}.lesson-card:hover{border-color:var(--accent);box-shadow:0 0 24px -8px var(--accent)}.lesson-card.is-next{border-color:var(--neon-b);box-shadow:0 0 0 1px var(--neon-b),0 0 30px -8px var(--neon-b);animation:next-glow 2s ease-in-out infinite}@keyframes next-glow{50%{box-shadow:0 0 0 1px var(--neon-b),0 0 40px -4px var(--neon-b)}}.lesson-card.is-done{background:color-mix(in srgb,var(--ok) 7%,var(--surface))}.lesson-card strong{font-family:var(--display);font-size:13.5px;letter-spacing:.04em;text-transform:uppercase}.lesson-group__icon,.card__icon,.guide__n{background:var(--neon-grad);color:#fff;box-shadow:var(--glow-b)}.ring{background:conic-gradient(var(--accent) calc(var(--p) * 1%),rgba(255,255,255,.08) 0);box-shadow:0 0 20px -6px var(--accent)}.ring span{font-family:var(--display)}.stars .on{color:var(--gold);filter:drop-shadow(0 0 6px var(--gold))}.stars{color:#ffffff1f}.newkey kbd{box-shadow:0 0 16px -2px var(--fc)}.game__field{background:radial-gradient(600px 300px at 50% 0,color-mix(in srgb,var(--neon-c) 25%,transparent),transparent 70%),linear-gradient(color-mix(in srgb,var(--neon-c) 18%,transparent) 1px,transparent 1px) 0 0 / 100% 46px}.game__hud strong{font-family:var(--display);color:var(--accent);text-shadow:var(--glow-a)}.game__ground{background:var(--neon-grad);box-shadow:0 0 20px var(--neon-b);opacity:1}.drop{background:#0e0c20e6;border-color:color-mix(in srgb,var(--neon-a) 40%,transparent);color:#e8e6ff;box-shadow:0 0 16px -6px var(--neon-a)}.drop b{color:var(--ok);text-shadow:0 0 8px var(--ok)}.game__input{font-family:var(--mono);background:transparent;color:var(--accent)}.ach-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin-top:14px}.ach{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#ffffff08}.ach__icon{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:12px;background:#ffffff0d;font-size:22px;filter:grayscale(1) opacity(.4)}.ach strong{display:block;font:700 12px var(--display);letter-spacing:.05em;text-transform:uppercase}.ach small{display:block;font-size:12.5px;line-height:1.35;color:var(--muted)}.ach.is-on{border-color:color-mix(in srgb,var(--gold) 45%,transparent);background:color-mix(in srgb,var(--gold) 7%,transparent);box-shadow:0 0 22px -10px var(--gold)}.ach.is-on .ach__icon{filter:none;background:color-mix(in srgb,var(--gold) 18%,transparent);box-shadow:0 0 16px -4px var(--gold)}.toast{background:#100d24f2;color:#fff;border:1px solid color-mix(in srgb,var(--neon-a) 50%,transparent);font-family:var(--display);font-size:13px;letter-spacing:.06em;box-shadow:0 0 30px -8px var(--neon-a)}.ach-pop{position:fixed;top:84px;right:20px;z-index:300;display:flex;align-items:center;gap:14px;max-width:340px;padding:14px 18px 14px 14px;border:1px solid color-mix(in srgb,var(--gold) 60%,transparent);border-radius:14px;background:#120e26f5;color:#fff;box-shadow:0 0 40px -8px var(--gold),0 20px 40px -20px #000;animation:ach-in .5s cubic-bezier(.2,1.4,.4,1),ach-out .4s ease-in 3.6s forwards}.ach-pop__icon{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:color-mix(in srgb,var(--gold) 20%,transparent);font-size:26px}.ach-pop small{display:block;font:700 10px var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}.ach-pop strong{font:800 14px var(--display);letter-spacing:.04em;text-transform:uppercase}.ach-pop p{font-size:13px;color:#b9b5df}@keyframes ach-in{0%{opacity:0;transform:translate(60px) scale(.9)}}@keyframes ach-out{to{opacity:0;transform:translate(60px)}}.levelup{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;display:grid;place-content:center;justify-items:center;gap:8px;background:radial-gradient(circle,#140a32c7,#04030ceb);text-align:center;animation:lvl-fade .3s ease,lvl-fade .4s ease 2.6s reverse forwards;cursor:pointer}.levelup small{font:800 16px var(--display);letter-spacing:.4em;color:var(--accent);text-shadow:var(--glow-a)}.levelup strong{font:900 clamp(90px,18vw,180px)/1 var(--display);background:var(--neon-grad);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 40px var(--neon-c));animation:lvl-zoom .7s cubic-bezier(.2,1.6,.4,1)}.levelup span{font:700 18px var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--rank, #fff);text-shadow:0 0 16px var(--rank, #fff)}@keyframes lvl-fade{0%{opacity:0}}@keyframes lvl-zoom{0%{transform:scale(.2) rotate(-8deg);opacity:0}}.fx{position:fixed;top:0;right:0;bottom:0;left:0;z-index:350;width:100%;height:100%;pointer-events:none}kbd{background:#ffffff0f;border-color:var(--line);color:var(--ink)}.textarea,.field input,.field select{background:#00000040;border-color:var(--line)}:root[data-theme=light] .textarea,:root[data-theme=light] .field input,:root[data-theme=light] .field select{background:#fff}.table th{font-family:var(--display);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase}.tag{font-family:var(--display);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.footer{border-top:1px solid var(--line);background:color-mix(in srgb,var(--bg) 70%,transparent)}.chart__label{fill:var(--muted)}@media (max-width: 1020px){.player__info{display:none}.player{padding:3px}.nav{background:#0a0818f7}:root[data-theme=light] .nav{background:#fff}}@media (max-width: 640px){.combo{min-width:0}.combo strong{font-size:22px}.live__item small,.combo small{font-size:9px}.btn{font-size:11.5px}}.player,.player__info,.streak{white-space:nowrap}.topbar__inner{gap:14px}@media (max-width: 1260px){.player__info{display:none}.player{padding:3px}}.lesson-card__keys{flex-wrap:wrap}.kb-stage{--skin-1: #e8b48d;--skin-2: #c98f66;--skin-3: #a26a45;--skin-edge: rgba(100, 55, 30, .55);--crease: rgba(110, 60, 35, .55);--nail-1: #fbe6dc;--nail-2: #e3b9a6;--knuckle: rgba(255, 235, 220, .22);--sleeve: #17142e}.kb-stage[data-hand=light]{--skin-1: #ffe1cc;--skin-2: #f2c3a3;--skin-3: #d99d7a;--skin-edge: rgba(150, 90, 60, .5);--crease: rgba(160, 95, 65, .5);--nail-1: #fff6f1;--nail-2: #f1cfc2}.kb-stage[data-hand=deep]{--skin-1: #a7704b;--skin-2: #835234;--skin-3: #5e3820;--skin-edge: rgba(40, 20, 8, .6);--crease: rgba(45, 22, 10, .55);--nail-1: #e7c4ae;--nail-2: #b98d73;--knuckle: rgba(255, 220, 190, .16)}.kb-stage[data-hand=glove]{--skin-1: #2f2858;--skin-2: #201b40;--skin-3: #130f29;--skin-edge: rgba(34, 229, 255, .7);--crease: rgba(255, 61, 187, .65);--nail-1: #9ff6ff;--nail-2: #22e5ff;--knuckle: rgba(34, 229, 255, .35)}.kb-stage[data-hand=holo]{--skin-1: rgba(110, 220, 255, .28);--skin-2: rgba(80, 140, 255, .22);--skin-3: rgba(60, 70, 200, .28);--skin-edge: rgba(34, 229, 255, .85);--crease: rgba(34, 229, 255, .4);--nail-1: rgba(255, 255, 255, .6);--nail-2: rgba(34, 229, 255, .4);--knuckle: rgba(34, 229, 255, .25)}.hands__g{opacity:var(--hand-op, .88);filter:drop-shadow(0 10px 14px rgba(0,0,0,.5))}.hand-back,.hand-body{stroke:var(--skin-edge);stroke-width:1.2;stroke-linejoin:round}.hand-crease,.hand-tendon{fill:none;stroke:var(--crease);stroke-width:1.3;stroke-linecap:round}.hand-tendon{opacity:.35}.hand-knuckle{fill:var(--knuckle)}.hand-nail{stroke:var(--skin-edge);stroke-width:.8}.kb-stage[data-hand=glove] .hand-nail{filter:drop-shadow(0 0 4px #22e5ff)}.hand-sleeve{fill:var(--sleeve);stroke:#ffffff14}.hand-cuff{fill:var(--neon-a, #22e5ff);filter:drop-shadow(0 0 6px var(--neon-a, #22e5ff))}.hand-finger-g .hand-body{transition:stroke .15s,stroke-width .15s}.hand-finger-g.is-active .hand-body{stroke:var(--fc);stroke-width:2.6;filter:drop-shadow(0 0 8px var(--fc))}.hand-finger-g.is-active .hand-nail{fill:var(--fc);stroke:#fff;filter:drop-shadow(0 0 6px var(--fc))}.music-btn{position:relative}.music-btn .eq{position:absolute;right:4px;bottom:4px;display:none;gap:1.5px;align-items:flex-end;height:9px}.music-btn .eq i{width:2px;height:100%;background:var(--accent);animation:eq .9s ease-in-out infinite}.music-btn .eq i:nth-child(2){animation-delay:-.3s}.music-btn .eq i:nth-child(3){animation-delay:-.6s}.music-btn.is-on{color:var(--accent);border-color:var(--accent);box-shadow:var(--glow-a)}.music-btn.is-on .eq{display:flex}@keyframes eq{0%,to{height:25%}50%{height:100%}}body.is-typing .topbar,body.is-typing .toolbar,body.is-typing .page-intro,body.is-typing .hint,body.is-typing .tip-strip,body.is-typing .footer,body.is-typing .daily-banner,body.is-typing .back{opacity:.08;transition:opacity .4s}.topbar,.toolbar,.page-intro,.hint,.footer{transition:opacity .3s}.daily-banner{margin:-8px auto 18px;padding:12px 18px;border:1px solid color-mix(in srgb,var(--gold) 45%,transparent);border-radius:14px;background:color-mix(in srgb,var(--gold) 9%,transparent);text-align:center;font-size:15px;box-shadow:0 0 26px -12px var(--gold)}.daily-banner strong{margin-right:6px;font-family:var(--display);font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--gold)}.tip-strip{display:flex;align-items:center;gap:10px;max-width:860px;margin:18px auto 0;padding:12px 16px;border:1px dashed var(--line);border-radius:14px;color:var(--ink-2);font-size:14.5px;transition:border-color .2s}.tip-strip:hover{border-color:var(--accent)}.tip-strip span{font-size:22px}.tip-strip strong{color:var(--accent);white-space:nowrap}.tip-strip em{margin-left:auto;font-style:normal;color:var(--accent);white-space:nowrap}.nudge{display:flex;align-items:center;gap:14px;margin-bottom:18px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--neon-a) 40%,transparent);border-radius:14px;background:color-mix(in srgb,var(--neon-a) 7%,transparent)}.nudge>span{font-size:26px}.nudge p{flex:1;font-size:14.5px;color:var(--ink-2)}.modal--wide{width:min(560px,calc(100% - 32px))}.tabs{display:flex;gap:4px;padding:4px;border-radius:12px;background:#ffffff0a;overflow-x:auto}.tabs button{flex:1;padding:9px 10px;border:0;border-radius:9px;background:transparent;color:var(--muted);font:600 13px var(--font);white-space:nowrap;cursor:pointer}.tabs button[aria-selected=true]{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 40%,transparent)}.tab-panel{display:grid;gap:14px;min-height:240px;align-content:start}.tab-panel[hidden]{display:none}.toggle small,.field small{display:block;font-size:12.5px;font-weight:400;color:var(--muted)}fieldset.field{margin:0;padding:0;border:0}fieldset.field legend{margin-bottom:8px;font-size:14px;font-weight:600}.swatches{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.swatches label{display:grid;justify-items:center;gap:6px;padding:8px 4px;border:1px solid var(--line);border-radius:12px;cursor:pointer;text-align:center}.swatches input{position:absolute;opacity:0}.swatches i{width:34px;height:34px;border-radius:50%}.swatches small{font-size:11.5px;color:var(--muted)}.swatches input:checked+i{box-shadow:0 0 0 3px var(--bg),0 0 0 5px var(--accent),0 0 18px -2px var(--accent)}.swatches input:focus-visible+i{outline:3px solid color-mix(in srgb,var(--accent) 50%,transparent);outline-offset:4px}.kb-stage[data-skin=retro] .kb:before{background:#8d8670;animation:none}.kb-stage[data-skin=retro] .kb:after{background:#c9c2aa}.kb-stage[data-skin=retro] .key{background:linear-gradient(#f3eedc,#e2dcc4);color:#3b372c;text-shadow:none;box-shadow:inset 0 -4px #bdb59a,0 2px #9e977f}.kb-stage[data-skin=retro] .key[data-k=Shift],.kb-stage[data-skin=retro] .key[data-k=Enter],.kb-stage[data-skin=retro] .key[data-k=Tab],.kb-stage[data-skin=retro] .key[data-k=Caps],.kb-stage[data-skin=retro] .key[data-k=Backspace]{background:linear-gradient(#b9b29b,#a39c84);color:#2b2820}.kb-stage[data-skin=pastel] .kb:before{background:linear-gradient(90deg,#ffb3d9,#b5f0ff,#d8c2ff,#c2ffd8);animation:none}.kb-stage[data-skin=pastel] .kb:after{background:#fdf3ff}.kb-stage[data-skin=pastel] .key{background:linear-gradient(#fff,color-mix(in srgb,var(--fc, #ddd) 22%,#fff));color:#5a4a6e;text-shadow:none;box-shadow:inset 0 -3px color-mix(in srgb,var(--fc, #ccc) 45%,#fff),0 2px 6px -2px #7850a04d}.kb-stage[data-skin=carbon] .kb:before{background:#2a2a2e;animation:none}.kb-stage[data-skin=carbon] .kb:after{background:repeating-linear-gradient(45deg,#111114 0 4px,#16161a 4px 8px)}.kb-stage[data-skin=carbon] .key{background:linear-gradient(#232327,#19191c);color:#e8e8ee;text-shadow:none;box-shadow:inset 0 1px #ffffff0f,inset 0 -3px #0c0c0e}.kb-stage[data-skin=matrix] .kb:before{background:#0f6;animation:none;filter:blur(3px);opacity:.6}.kb-stage[data-skin=matrix] .kb:after{background:#020a04}.kb-stage[data-skin=matrix] .key{background:#031a0a;color:#3f8;text-shadow:0 0 8px #00ff66;box-shadow:inset 0 0 0 1px #00ff6640,0 0 10px -4px #0f6}.kb-stage[data-skin] .key.is-next{background:var(--fc);color:#08070f;text-shadow:none}.arcade{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.arcade__card{position:relative;display:flex;flex-direction:column;gap:10px;min-height:330px;padding:26px;border:1px solid var(--line);border-radius:22px;background:var(--surface);color:var(--ink);overflow:hidden;isolation:isolate;transition:transform .2s,box-shadow .2s,border-color .2s}.arcade__card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;opacity:.55;transition:opacity .3s}.arcade__card--race:before{background:radial-gradient(400px 220px at 80% 0,rgba(255,61,187,.4),transparent 70%),repeating-linear-gradient(90deg,transparent 0 46px,rgba(255,255,255,.04) 46px 50px)}.arcade__card--blaster:before{background:radial-gradient(400px 220px at 80% 0,rgba(34,229,255,.35),transparent 70%),radial-gradient(1.5px 1.5px at 20% 30%,#fff,transparent),radial-gradient(1.5px 1.5px at 60% 70%,#fff,transparent),radial-gradient(1px 1px at 85% 45%,#fff,transparent)}.arcade__card--rain:before{background:radial-gradient(400px 220px at 80% 0,rgba(139,92,246,.45),transparent 70%),repeating-linear-gradient(100deg,transparent 0 22px,rgba(160,200,255,.06) 22px 24px)}.arcade__card:hover{transform:translateY(-6px);border-color:var(--accent);box-shadow:0 0 40px -12px var(--accent)}.arcade__card:hover:before{opacity:1}.arcade__icon{font-size:54px;line-height:1;filter:drop-shadow(0 0 18px rgba(255,255,255,.25));transition:transform .3s}.arcade__card:hover .arcade__icon{transform:scale(1.12) rotate(-6deg)}.arcade__tag{position:absolute;top:22px;right:22px;padding:3px 10px;border-radius:999px;background:#ffffff12;font:700 10px var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.arcade__card h2{margin-top:8px;font:800 20px var(--display);letter-spacing:.03em;text-transform:uppercase}.arcade__card p{flex:1;color:var(--muted);font-size:15px}.arcade__foot{display:flex;align-items:center;justify-content:space-between;font-size:14px;color:var(--muted)}.arcade__foot strong{color:var(--accent);font-family:var(--display)}.race{position:relative;margin-bottom:14px;padding:14px 18px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,#14122cd9,#0a0918e6);box-shadow:var(--shadow-lg);overflow:hidden}.race__track{position:relative;display:grid;gap:8px}.lane{display:grid;grid-template-columns:150px 1fr;align-items:center;gap:12px}.lane__name{font-size:13px;font-weight:600;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lane__name small{color:var(--muted);font-weight:400}.lane--you .lane__name{color:var(--accent);text-shadow:var(--glow-a)}.lane--ghost{opacity:.65}.lane__road{position:relative;height:44px;border-radius:8px;background:linear-gradient(90deg,transparent 0 calc(100% - 26px),repeating-conic-gradient(#fff 0 25%,#111 0 50%) calc(100% - 26px) 0 / 12px 12px),repeating-linear-gradient(90deg,rgba(255,255,255,.18) 0 18px,transparent 18px 40px) 0 50% / 100% 2px no-repeat,#1b1932}.lane--you .lane__road{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 60%,transparent),0 0 18px -8px var(--accent)}.lane__car{position:absolute;top:50%;left:0;font-size:30px;line-height:1;transform:translateY(-50%) scaleX(-1);transition:left .15s linear;filter:drop-shadow(0 4px 6px rgba(0,0,0,.5))}.race__count{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#04030c8c;font:900 90px var(--display);color:#fff;text-shadow:0 0 40px var(--neon-b)}.race__count[hidden]{display:none}.race__count.pop{animation:lvl-zoom .5s cubic-bezier(.2,1.6,.4,1)}.race__live{display:flex;gap:26px;margin-bottom:12px;font-size:13px;color:var(--muted);font-family:var(--display);letter-spacing:.08em;text-transform:uppercase}.race__live strong{margin-left:6px;font-size:22px;color:var(--accent);text-shadow:var(--glow-a)}.race__actions{margin-top:16px;text-align:center}.race-podium{display:flex;align-items:center;gap:20px}.race-podium__medal{font-size:72px;line-height:1;filter:drop-shadow(0 0 20px var(--gold))}.race-podium h2{font:900 30px var(--display);text-transform:uppercase;background:var(--neon-grad);-webkit-background-clip:text;background-clip:text;color:transparent}.race-podium p{color:var(--ink-2)}.blaster__field{position:relative;height:540px;background:radial-gradient(800px 400px at 50% 110%,rgba(139,92,246,.3),transparent 70%),#05040d}.blaster__field.is-hit{animation:field-hit .35s}.blaster canvas{display:block;width:100%;height:100%}.tip-hero{display:flex;gap:20px;align-items:center;margin-bottom:22px;padding:24px;border:1px solid color-mix(in srgb,var(--neon-b) 40%,transparent);border-radius:22px;background:linear-gradient(120deg,color-mix(in srgb,var(--neon-c) 18%,transparent),color-mix(in srgb,var(--neon-b) 10%,transparent));box-shadow:0 0 40px -18px var(--neon-b)}.tip-hero__icon{display:grid;place-items:center;flex:none;width:72px;height:72px;border-radius:20px;background:#ffffff14;font-size:40px}.tip-hero small{font:700 11px var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.tip-hero h2{margin:4px 0;font:800 22px var(--display);text-transform:uppercase;letter-spacing:.02em}.tip-hero p{color:var(--ink-2)}.tip-filter{flex-wrap:wrap;margin-bottom:18px}.tip-filter a{padding:7px 14px;border-radius:8px;color:var(--muted);font:600 12px var(--display);letter-spacing:.06em;text-transform:uppercase}.tip-filter a[aria-pressed=true]{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}.tips-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}.tip-card{display:flex;flex-direction:column;gap:6px;padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--surface);transition:transform .2s,border-color .2s}.tip-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 50%,transparent)}.tip-card__icon{font-size:30px}.tip-card small{font:700 10px var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--neon-b)}.tip-card h3{font-size:17px;font-weight:700}.tip-card p{flex:1;color:var(--muted);font-size:14.5px}.tip-card__link{margin-top:6px;font-weight:700;font-size:14px;color:var(--accent)}.acct-form{display:grid;gap:14px}.avatars{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}.avatars input{position:absolute;opacity:0}.avatars span{display:grid;place-items:center;aspect-ratio:1;border:1px solid var(--line);border-radius:12px;font-size:22px;cursor:pointer;transition:transform .15s,border-color .15s}.avatars span:hover{transform:scale(1.08)}.avatars input:checked+span{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent);box-shadow:0 0 16px -4px var(--accent)}.avatars input:focus-visible+span{outline:3px solid color-mix(in srgb,var(--accent) 50%,transparent)}.form-error{min-height:1em;color:var(--bad);font-size:14px}.form-error:empty{display:none}.players{display:grid;gap:8px}.player-card{display:flex;align-items:center;gap:14px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:#ffffff08;color:var(--ink);text-align:left;cursor:pointer;transition:border-color .15s}.player-card:hover,.player-card.is-current{border-color:var(--accent)}.player-card__av{font-size:30px}.player-card strong{display:block;font-size:16px}.player-card small{color:var(--muted);font-size:13px}.pin-row{display:flex;align-items:flex-end;gap:10px}.pin-row[hidden]{display:none}.pin-row .field{flex:1}.acct-hero{display:flex;gap:18px;align-items:center;padding:18px;border-radius:18px;background:linear-gradient(120deg,color-mix(in srgb,var(--rank) 16%,transparent),transparent);border:1px solid color-mix(in srgb,var(--rank) 35%,transparent)}.acct-hero__av{display:grid;place-items:center;flex:none;width:74px;height:74px;border-radius:50%;background:#ffffff0f;box-shadow:0 0 0 3px var(--rank),0 0 24px -4px var(--rank);font-size:40px}.acct-hero__info{flex:1;display:grid;gap:6px}.acct-hero h3{font:800 22px var(--display);text-transform:uppercase}.acct-hero p{color:var(--muted);font-size:14px}.acct-hero .rank-badge{justify-self:start}.acct-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.acct-stats div{padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#ffffff08}.acct-stats strong{display:block;font:800 20px var(--display);color:var(--accent)}.acct-stats small{color:var(--muted);font-size:12px}.acct-sub{margin:6px 0 0;font:700 13px var(--display);letter-spacing:.08em;text-transform:uppercase}.table tr.is-me td{color:var(--accent);background:color-mix(in srgb,var(--accent) 7%,transparent)}.acct-actions,.acct-foot-left{display:flex;flex-wrap:wrap;gap:8px}.acct-actions label.btn{cursor:pointer}#profile .modal__box{max-height:calc(100vh - 60px);overflow-y:auto}.seo{display:none;padding-bottom:60px;color:var(--ink-2)}body.route-test .seo{display:block}.seo h2{margin:40px 0 14px;font:800 22px var(--display);letter-spacing:.02em;text-transform:uppercase;color:var(--ink)}.seo__lead{max-width:820px;font-size:17px;color:var(--muted)}.seo__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px}.seo__grid article{padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.seo__grid h3{margin-bottom:6px;font:700 14px var(--display);letter-spacing:.05em;text-transform:uppercase;color:var(--accent)}.seo__grid p{font-size:14.5px;color:var(--muted)}.seo__table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.seo__faq{display:grid;gap:10px}.seo__faq details{padding:14px 18px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.seo__faq summary{font-weight:700;cursor:pointer}.seo__faq p{margin-top:8px;color:var(--muted)}@media (max-width: 1020px){.arcade,.seo__grid{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.arcade,.seo__grid,.acct-stats{grid-template-columns:1fr 1fr}.lane{grid-template-columns:1fr;gap:2px}.swatches{grid-template-columns:repeat(3,1fr)}.blaster__field{height:420px}.tip-strip em{display:none}.nudge{flex-wrap:wrap}}[hidden]{display:none!important}.game-input{display:block;width:100%;padding:16px 20px;border:0;border-top:1px solid var(--line);background:transparent;color:var(--accent);font:600 18px var(--mono);text-align:center}.game-input:focus{outline:none;background:color-mix(in srgb,var(--accent) 6%,transparent)}.game-input:disabled{opacity:.5}.boss__arena{position:relative;display:grid;grid-template-rows:1fr auto;min-height:470px;padding:22px;overflow:hidden;background:radial-gradient(500px 260px at 50% 30%,rgba(255,61,187,.22),transparent 70%),radial-gradient(700px 260px at 50% 110%,rgba(34,229,255,.18),transparent 70%),linear-gradient(#0b0920,#070615)}.boss__arena.is-hurt:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;box-shadow:inset 0 0 120px #ff2850b3;animation:hurt-flash .45s forwards}.boss__arena.is-miss .boss__word{animation:tb-shake .28s}@keyframes hurt-flash{to{opacity:0}}.boss__foe{display:grid;justify-items:center;align-content:start;gap:8px}.boss__name{font:800 15px var(--display);letter-spacing:.1em;text-transform:uppercase;color:#ff9ad5;text-shadow:0 0 12px #ff3dbb}.boss__sprite{font-size:clamp(90px,16vw,140px);line-height:1.1;filter:drop-shadow(0 0 30px rgba(255,61,187,.55));animation:boss-idle 2.4s ease-in-out infinite}.boss__sprite.is-hit{animation:boss-hit .3s}.boss__sprite.is-dead{animation:boss-dead .8s forwards}.boss__sprite.is-enter{animation:lvl-zoom .6s cubic-bezier(.2,1.6,.4,1)}@keyframes boss-idle{50%{transform:translateY(-8px) scale(1.02)}}@keyframes boss-hit{30%{transform:translate(-10px) rotate(-6deg);filter:brightness(2.2) drop-shadow(0 0 30px #fff)}60%{transform:translate(8px) rotate(4deg)}}@keyframes boss-dead{to{transform:scale(.2) rotate(40deg);opacity:0;filter:blur(4px)}}.bar{position:relative;width:min(420px,100%);height:18px;border-radius:999px;background:#ffffff14;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff1a}.bar span{display:block;height:100%;border-radius:999px;transition:width .25s}.bar em{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font:700 11px var(--display);font-style:normal;letter-spacing:.08em;color:#fff;text-shadow:0 1px 2px #000}.bar--hp span{background:linear-gradient(90deg,#ff3dbb,#ff4d6d);box-shadow:0 0 14px #ff3dbb}.bar--atk{height:10px;width:min(300px,80%)}.bar--atk span{background:linear-gradient(90deg,#ffb02e,#ff4d6d);transition:none}.bar--atk em{display:none}.bar--you span{background:linear-gradient(90deg,#4dff9a,#22e5ff);box-shadow:0 0 14px #4dff9a}.boss__you{display:grid;justify-items:center;gap:12px;margin-top:16px}.boss__spell{text-align:center}.boss__spell small{font:700 11px var(--display);letter-spacing:.2em;text-transform:uppercase;color:#9a94c7}.boss__word{font:700 clamp(28px,5vw,44px) var(--mono);letter-spacing:.04em;color:#e9e6ff}.boss__word .ok{color:#4dff9a;text-shadow:0 0 12px #4dff9a}.boss__word .bad{color:#ff4d6d;text-decoration:underline}.float-txt{position:absolute;top:32%;z-index:4;font:900 26px var(--display);color:#fff;text-shadow:0 0 14px #ff3dbb;pointer-events:none;animation:float-up 1s ease-out forwards}.float-txt.is-crit{color:#ffc94d;font-size:34px;text-shadow:0 0 18px #ffc94d}.float-txt.is-hurt{top:70%;color:#ff4d6d;text-shadow:0 0 14px #ff4d6d}.float-txt.is-big{left:50%!important;transform:translate(-50%);font-size:36px;white-space:nowrap;color:#4dff9a;text-shadow:0 0 20px #4dff9a}@keyframes float-up{to{translate:0 -70px;opacity:0}}.hero__stage{position:relative;height:520px;background:linear-gradient(90deg,transparent 24.8%,rgba(255,255,255,.06) 25%,transparent 25.2%,transparent 49.8%,rgba(255,255,255,.06) 50%,transparent 50.2%,transparent 74.8%,rgba(255,255,255,.06) 75%,transparent 75.2%),radial-gradient(600px 300px at 50% 100%,rgba(139,92,246,.35),transparent 70%),#06051a;overflow:hidden;touch-action:manipulation}.hero__stage canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.hero__lanes{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(4,1fr);height:70px}.hero__pad{margin:0;border:0;border-top:3px solid var(--c);background:linear-gradient(transparent,color-mix(in srgb,var(--c) 22%,transparent));color:var(--c);font:900 22px var(--display);text-shadow:0 0 12px var(--c);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.hero__pad.is-press{animation:pad-press .18s}@keyframes pad-press{0%{background:color-mix(in srgb,var(--c) 70%,transparent);color:#fff}}.hero__judge{position:absolute;left:0;right:0;top:38%;text-align:center;font:900 34px var(--display);letter-spacing:.06em;text-shadow:0 0 20px currentColor;pointer-events:none;opacity:0}.hero__judge.pop{animation:judge-pop .6s ease-out}@keyframes judge-pop{0%{opacity:1;transform:scale(1.4)}70%{opacity:1;transform:scale(1)}to{opacity:0}}.memory__stage{position:relative;display:grid;place-content:center;justify-items:center;gap:18px;min-height:380px;padding:30px 20px;background:radial-gradient(500px 260px at 50% 40%,rgba(34,229,255,.15),transparent 70%),#07061a}.memory__timer{position:absolute;top:0;left:0;right:0;height:5px;background:#ffffff0f}.memory__timer span{display:block;height:100%;background:var(--neon-grad);box-shadow:0 0 12px var(--neon-a)}.memory__card{max-width:100%;padding:26px 34px;border:2px solid rgba(255,255,255,.12);border-radius:20px;background:#ffffff0a;font:700 clamp(24px,4.5vw,40px) var(--mono);color:#fff;text-align:center;overflow-wrap:anywhere;transition:border-color .2s,box-shadow .2s,color .2s}.memory__card.is-show{border-color:#22e5ff;box-shadow:0 0 40px -6px #22e5ff}.memory__card.is-hidden{color:#57518a;letter-spacing:.1em}.memory__card.is-ok{border-color:#4dff9a;color:#4dff9a;box-shadow:0 0 40px -6px #4dff9a}.memory__card.is-bad{border-color:#ff4d6d;color:#ff9aac;box-shadow:0 0 40px -6px #ff4d6d}.memory__hint{color:#b9b5df;font-size:16px;text-align:center}.memory__hint strong{color:#fff}.arcade__card--boss:before{background:radial-gradient(400px 220px at 80% 0,rgba(255,77,109,.4),transparent 70%)}.arcade__card--hero:before{background:radial-gradient(400px 220px at 80% 0,rgba(77,255,154,.3),transparent 70%),repeating-linear-gradient(90deg,transparent 0 24.5%,rgba(255,255,255,.05) 24.5% 25%)}.arcade__card--memory:before{background:radial-gradient(400px 220px at 80% 0,rgba(255,201,77,.32),transparent 70%)}.boss__arena,.hero__stage,.memory__stage,.blaster__field{color-scheme:dark}:root[data-theme=light]{--primary-solid: #7c3aed;--accent-solid: #0891b2;--primary: #7c3aed;--accent: #0e7490;--neon-a: #06b6d4;--neon-b: #db2777;--neon-c: #7c3aed;--bg: #f1edff;--surface: rgba(255, 255, 255, .86);--surface-2: rgba(237, 233, 254, .85);--ink: #140f33;--ink-2: #2f2862;--muted: #5b5687;--faint: #a7a1d4;--line: rgba(124, 58, 237, .2);--ok: #059669;--bad: #e11d48;--gold: #c2410c;--primary-soft: rgba(124, 58, 237, .12);--glow-a: 0 0 14px rgba(6, 182, 212, .45);--glow-b: 0 0 14px rgba(219, 39, 119, .45);--shadow: 0 1px 0 rgba(255, 255, 255, .8) inset, 0 14px 34px -18px rgba(76, 29, 149, .35);--shadow-lg: 0 30px 60px -28px rgba(76, 29, 149, .45), 0 0 0 1px rgba(124, 58, 237, .08)}:root[data-theme=light] body:before{background:radial-gradient(800px 500px at 8% -5%,rgba(124,58,237,.32),transparent 70%),radial-gradient(700px 500px at 100% 0%,rgba(219,39,119,.22),transparent 70%),radial-gradient(900px 500px at 50% 115%,rgba(6,182,212,.28),transparent 70%),#f1edff}:root[data-theme=light] body:after{opacity:.45}:root[data-theme=light] .topbar{background:#ffffffb8;box-shadow:0 10px 40px -24px #7c3aed99}:root[data-theme=light] .card,:root[data-theme=light] .result,:root[data-theme=light] .guide,:root[data-theme=light] .tb,:root[data-theme=light] .lesson-card,:root[data-theme=light] .arcade__card,:root[data-theme=light] .tip-card,:root[data-theme=light] .tile,:root[data-theme=light] .toolbar{box-shadow:var(--shadow-lg)}:root[data-theme=light] .live__item strong,:root[data-theme=light] .combo strong{text-shadow:0 0 18px color-mix(in srgb,currentColor 45%,transparent)}:root[data-theme=light] .tb__text .ok{color:var(--ink);text-shadow:none}:root[data-theme=light] .arcade__card{background:linear-gradient(160deg,#fffffff2,#f0ebffe6)}:root[data-theme=light] .arcade__card:hover{box-shadow:0 0 0 2px var(--primary),0 30px 60px -24px #7c3aed99}:root[data-theme=light] .race{background:linear-gradient(180deg,#1c1640,#0d0a24)}:root[data-theme=light] .race .lane__name{color:#e3dfff}:root[data-theme=light] .game,:root[data-theme=light] .game__hud{background:#fff}:root[data-theme=light] .ach-pop,:root[data-theme=light] .toast{background:#140f33f2}:root[data-theme=light] .streak{color:#c2410c}@media (max-width: 640px){.topbar__inner{gap:8px;height:60px}.nav{top:60px}.logo__mark{width:32px;height:32px;font-size:15px}.logo__text{font-size:13px}.topbar__tools{gap:5px}.icon-btn{width:36px;height:36px}.streak{display:none}.player__lvl{width:30px;height:30px}.player__lvl span{width:24px;height:24px}.page-intro h1,.lesson-head h1{font-size:24px}.page-intro p{font-size:15px}.toolbar{gap:6px;padding:6px}.seg button{padding:7px 9px;font-size:11px}.live{flex-wrap:wrap;gap:10px 16px}.live__restart{margin-left:0}.arcade{grid-template-columns:1fr}.arcade__card{min-height:0}.game__hud{gap:6px 16px;padding:12px 14px;font-size:12.5px}.boss__arena{min-height:400px;padding:14px}.hero__stage{height:440px}.hero__lanes{height:84px}.memory__stage{min-height:300px}.blaster__field{height:380px}.race__live{gap:14px;font-size:11px}.race__live strong{font-size:18px}.race-podium,.tip-hero{flex-direction:column;text-align:center}.result__head{gap:16px}.cert-tools{flex-direction:column;align-items:stretch}.cert-tools .field{max-width:none}.acct-hero{flex-direction:column;text-align:center}.acct-hero .rank-badge{justify-self:center}.avatars{grid-template-columns:repeat(6,1fr)}.modal__box{padding:18px}.page-intro--row .seg{width:100%}.page-intro--row .seg button{flex:1}.seg button,.tabs button{min-height:36px}input,select,textarea{font-size:16px}}@media (max-width: 380px){.logo__text{display:none}}.kb .key{flex-direction:column;gap:0;line-height:1.05;text-transform:none;font-size:clamp(11px,2.2cqw,16px);font-weight:700}.kb .key small{font-size:.66em;font-weight:600;opacity:.7}.kb .key.mod{color:#e4e2ff;font:700 clamp(8px,1.55cqw,12.5px) var(--font);letter-spacing:.02em;white-space:nowrap}.kb .key.is-next small{opacity:.9}.kb-stage[data-skin=white] .kb:before{background:#cfd2dc;animation:none;filter:none}.kb-stage[data-skin=white] .kb:after{background:linear-gradient(#f5f6f9,#e4e6ed)}.kb-stage[data-skin=white] .key{background:linear-gradient(#fff,#f2f3f7);color:#262935;text-shadow:none;box-shadow:0 1px #c3c7d2,0 2px 4px #14182824,inset 0 -2px color-mix(in srgb,var(--fc, #ccc) 40%,#e6e8ee)}.kb-stage[data-skin=white] .key.mod{color:#4a4e5e}.kb-stage[data-skin=carbon] .key.mod,.kb-stage[data-skin=matrix] .key.mod{color:inherit}.kb-stage[data-skin=retro] .key.mod{color:#2b2820}.kb-stage[data-skin=pastel] .key.mod{color:#5a4a6e}.hands__g{opacity:var(--hand-op, .96);filter:none}.hands__palms{filter:drop-shadow(0 12px 16px rgba(0,0,0,.35))}.hand-back,.hand-body{stroke:var(--skin-edge);stroke-width:1;stroke-linejoin:round}.hand-shine{fill:none;stroke:#ffffff38;stroke-linecap:round}.kb-stage[data-hand=deep] .hand-shine{stroke:#ffe6d229}.kb-stage[data-hand=glove] .hand-shine{stroke:#22e5ff40}.hand-crease{stroke-width:1.1;opacity:.7}.hand-cuff{display:none}.kb-stage[data-hand=glove] .hand-cuff,.kb-stage[data-hand=holo] .hand-cuff{display:block}.has-hands .kb{margin-bottom:calc((100cqw - 24px) / 15 * 2.6)}.card,.tb,.result,.guide,.game,.toolbar,.lesson-card,.tile,.lesson-goal,.empty,.cert-frame{backdrop-filter:none;-webkit-backdrop-filter:none}:root:not([data-theme=light]){--surface: rgba(21, 18, 44, .94)}body:after{background-position:0 0;animation:grid-run-gpu 3.5s linear infinite;will-change:transform}@keyframes grid-run-gpu{0%{transform:perspective(420px) rotateX(62deg) translateY(0)}to{transform:perspective(420px) rotateX(62deg) translateY(70px)}}.key.is-next{will-change:box-shadow}@media (max-width: 640px){body:after{animation:none}.kb .key.mod{font-size:8px}.kb .key small{display:none}}#app{min-height:calc(100vh - 66px)}.combo{opacity:1}.combo:not(.is-on) strong,.combo:not(.is-on) em{opacity:.4}.combo small{color:var(--muted)}@media (max-width: 640px){.kb:before,.key.is-next,.lesson-card.is-next{animation:none}}@media (prefers-reduced-motion: reduce){body:after{animation:none}}.seo,.footer{content-visibility:auto;contain-intrinsic-size:auto 1800px}.footer{contain-intrinsic-size:auto 70px}.kb:before{filter:none}@media (max-width: 1020px){.topbar{backdrop-filter:none;-webkit-backdrop-filter:none;background:color-mix(in srgb,var(--bg) 96%,transparent)}}.hand-nail-hi{fill:#ffffff8c}.kb-stage[data-hand=robot]{--skin-1: #d5dce6;--skin-2: #9aa5b5;--skin-3: #5d6676;--skin-edge: #2a3140;--crease: rgba(34, 229, 255, .75);--nail-1: #9ff6ff;--nail-2: #0aa3c2;--knuckle: rgba(255, 255, 255, .45)}.kb-stage[data-hand=robot] .hand-crease{stroke-width:2}.kb-stage[data-hand=robot] .hand-nail{filter:drop-shadow(0 0 4px #22e5ff)}.kb-stage[data-hand=robot] .hand-tendon{opacity:.8;stroke:#22e5ff80;stroke-dasharray:4 5}.kb-stage[data-hand=cartoon]{--skin-1: #ffd9b8;--skin-2: #ffd2ad;--skin-3: #f2b48a;--skin-edge: #3a2416;--crease: rgba(58, 36, 22, .7);--nail-1: #ffffff;--nail-2: #ffe9e0;--knuckle: rgba(255, 255, 255, .5)}.kb-stage[data-hand=cartoon] .hand-back,.kb-stage[data-hand=cartoon] .hand-body{stroke-width:2.6}.kb-stage[data-hand=cartoon] .hand-tendon{display:none}.kb-stage[data-hand=cartoon] .hand-shine{stroke:#fff9}.kb-stage[data-hand=neon]{--skin-1: rgba(14, 10, 36, .55);--skin-2: rgba(14, 10, 36, .5);--skin-3: rgba(14, 10, 36, .6);--skin-edge: #ff3dbb;--crease: rgba(34, 229, 255, .8);--nail-1: #ff9ad5;--nail-2: #ff3dbb;--knuckle: rgba(34, 229, 255, .35)}.kb-stage[data-hand=neon] .hand-back,.kb-stage[data-hand=neon] .hand-body{stroke-width:2}.kb-stage[data-hand=neon] .hands__palms{filter:drop-shadow(0 0 6px rgba(255,61,187,.7))}.kb-stage[data-hand=neon] .hand-shine{stroke:#22e5ff59}.hands__shadow{opacity:.9}.kb-stage[data-hand=neon] .hands__shadow,.kb-stage[data-hand=holo] .hands__shadow{display:none}.kb-stage[data-skin=mac] .kb:before{background:#b9bcc4;animation:none}.kb-stage[data-skin=mac] .kb:after{background:linear-gradient(#e9eaee,#cfd2d8)}.kb-stage[data-skin=mac] .key{border-radius:6px;background:linear-gradient(#fff,#f1f2f4);color:#2b2d33;font-weight:500;text-shadow:none;box-shadow:0 1px 1px #00000040,0 0 0 .5px #0000001f,inset 0 -1.5px color-mix(in srgb,var(--fc, #ccc) 45%,#e6e7ea)}.kb-stage[data-skin=mac] .key.mod{color:#55585f;font-weight:500}.kb-stage[data-skin=typewriter] .kb:before{background:linear-gradient(135deg,#3a3a3a,#111);animation:none}.kb-stage[data-skin=typewriter] .kb:after{background:radial-gradient(ellipse at 50% 0,#3b3b3b,#161616)}.kb-stage[data-skin=typewriter] .key{border-radius:999px;border:3px solid #1e1e1e;background:radial-gradient(circle at 40% 35%,#fffaf0,#e9dfc7);color:#1d1b16;font-family:Georgia,Times New Roman,serif;font-weight:700;text-shadow:none;box-shadow:0 0 0 2px #8b8b8b,0 4px #0b0b0b,0 6px 8px #00000080}.kb-stage[data-skin=typewriter] .key.mod{color:#2b2820;font-family:Georgia,serif}.kb-stage[data-skin=typewriter] .kb__row{gap:7px}.kb-stage[data-skin=neon] .kb:before{background:linear-gradient(90deg,#ff3dbb,#22e5ff);animation:none}.kb-stage[data-skin=neon] .kb:after{background:#04030b}.kb-stage[data-skin=neon] .key{background:transparent;color:var(--fc, #fff);text-shadow:0 0 8px var(--fc, #fff);box-shadow:inset 0 0 0 1.5px var(--fc, #888),0 0 10px -3px var(--fc, #888)}.kb-stage[data-skin=neon] .key.mod{color:var(--fc, #fff)}.kb-stage[data-skin=wood] .kb:before{background:#3b2416;animation:none}.kb-stage[data-skin=wood] .kb:after{background:repeating-linear-gradient(92deg,rgba(0,0,0,.08) 0 3px,transparent 3px 11px),linear-gradient(180deg,#6b4126,#4a2b18)}.kb-stage[data-skin=wood] .key{background:linear-gradient(#f3dfbd,#e2c494);color:#4a2b18;text-shadow:none;box-shadow:inset 0 -3px #c9a46f,0 2px 3px #00000059}.kb-stage[data-skin=wood] .key.mod{color:#4a2b18}.kb-picker{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 14px;margin-top:8px}.kb-picker label{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--muted)}.kb-picker select{padding:6px 28px 6px 10px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font:600 13px var(--font);cursor:pointer}.kb-picker select:hover,.kb-picker select:focus{border-color:var(--accent);outline:none}.hands{-webkit-mask-image:linear-gradient(#000 calc(100% - 70px),transparent);mask-image:linear-gradient(#000 calc(100% - 70px),transparent)}.hand-tendon{opacity:.2}.hand-back{stroke:none}.hand-edge-line{fill:none;stroke:var(--skin-edge);stroke-width:1.2;stroke-linecap:round}.kb-stage[data-hand=cartoon] .hand-edge-line{stroke-width:2.6}.kb-stage[data-hand=neon] .hand-edge-line{stroke-width:2}.kb-stage[data-hand=glass]{--skin-1: rgba(255, 255, 255, .17);--skin-2: rgba(210, 230, 255, .09);--skin-3: rgba(180, 210, 255, .05);--skin-edge: rgba(235, 245, 255, .85);--crease: rgba(255, 255, 255, .22);--nail-1: rgba(255, 255, 255, .42);--nail-2: rgba(255, 255, 255, .12);--knuckle: rgba(255, 255, 255, .07)}.kb-stage[data-hand=glass] .hands__g{opacity:1}.kb-stage[data-hand=glass] .hands__shadow,.kb-stage[data-hand=glass] .hand-tendon,.kb-stage[data-hand=glass] .hand-nail-hi{display:none}.kb-stage[data-hand=glass] .hands__palms,.kb-stage[data-hand=glass] .hands__fingers{filter:drop-shadow(0 0 5px rgba(140,220,255,.35))}.kb-stage[data-hand=glass] .hand-body,.kb-stage[data-hand=glass] .hand-edge-line{stroke-width:1.5}.kb-stage[data-hand=glass] .hand-shine{stroke:#ffffff29}.kb-stage[data-hand=glass] .hand-nail{stroke:#fff9;stroke-width:1}.kb-stage[data-hand=glass] .hand-finger-g.is-active .hand-body{fill:color-mix(in srgb,var(--fc) 32%,transparent);stroke:var(--fc);stroke-width:2;filter:drop-shadow(0 0 10px var(--fc))}.kb-stage[data-hand=glass] .hand-finger-g.is-active .hand-nail{fill:#fff;stroke:#fff;filter:drop-shadow(0 0 8px var(--fc))}.kb-stage[data-hand=glass][data-skin=white],.kb-stage[data-hand=glass][data-skin=mac],.kb-stage[data-hand=glass][data-skin=wood],.kb-stage[data-hand=glass][data-skin=retro],.kb-stage[data-hand=glass][data-skin=pastel],.kb-stage[data-hand=glass][data-skin=typewriter]{--skin-1: rgba(120, 100, 255, .14);--skin-2: rgba(100, 80, 220, .08);--skin-3: rgba(80, 60, 200, .05);--skin-edge: rgba(70, 50, 150, .7);--crease: rgba(70, 50, 150, .25);--nail-1: rgba(255, 255, 255, .7);--nail-2: rgba(200, 190, 255, .4)}.kb-stage[data-hand=glass][data-skin=white] .hands__palms,.kb-stage[data-hand=glass][data-skin=white] .hands__fingers,.kb-stage[data-hand=glass][data-skin=mac] .hands__palms,.kb-stage[data-hand=glass][data-skin=mac] .hands__fingers{filter:none}.swatches{grid-template-columns:repeat(3,1fr)}
