.learn-hub{--learn-border:color-mix(in srgb, var(--sub-alt-text-color) 48%, transparent);--learn-muted:color-mix(in srgb, var(--text-color) 60%, var(--bg-color));width:100%;max-width:1080px;margin:0 auto;padding:40px 0 28px}.learn-hub h1,.learn-hub h2,.learn-hub h3{opacity:1;font-weight:500;letter-spacing:-.035em}.learn-hub p{margin:0}.learn-eyebrow{color:var(--learn-muted);font-size:11px;letter-spacing:.1em}.learn-intro{display:flex;justify-content:space-between;align-items:center;gap:48px;margin-bottom:42px}.learn-intro h1{font-size:clamp(30px,3.2vw,44px);line-height:1.15;color:var(--text-color);margin:13px 0 16px}.learn-intro p{color:var(--learn-muted);font-size:14px;line-height:1.8}.learn-progress-summary{width:230px;flex-shrink:0;padding-left:28px;border-left:1px solid var(--learn-border)}.learn-progress-count{display:flex;align-items:baseline;gap:12px;margin:10px 0 12px}.learn-progress-count strong{color:var(--main-color);font-size:27px;font-weight:500;font-variant-numeric:tabular-nums}.learn-progress-count strong span{color:var(--learn-muted);font-size:18px}.learn-progress-count>span{color:var(--learn-muted);font-size:11px}.learn-progress-track{display:flex;gap:5px}.learn-progress-track span{height:3px;background:var(--learn-border);flex:1;border-radius:2px}.learn-progress-track span[data-completed=true]{background:var(--main-color)}.learn-progress-summary p{font-size:11px;margin-top:12px}.learn-preview{display:grid;grid-template-columns:.8fr 1.2fr;gap:32px;padding:32px;border:1px solid var(--learn-border);border-radius:12px;background:color-mix(in srgb,var(--alt-bg-color) 35%,var(--bg-color))}.learn-preview-copy{align-self:center}.learn-preview h2{margin:12px 0;font-size:27px;color:var(--text-color)}.learn-preview-copy p{color:var(--learn-muted);line-height:1.75;font-size:13px;max-width:280px}.learn-primary-action{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--main-color);color:var(--bg-color);border-radius:6px;padding:11px 16px;margin-top:24px;font-size:13px;font-weight:600;transition:opacity .15s}.learn-primary-action:hover{opacity:.85}.learn-session-note{display:block;margin-top:10px;font-size:11px;color:var(--learn-muted)}.learn-preview-map{min-width:0}.learn-finger-switcher{display:flex;justify-content:center;gap:4px;margin:0 auto 24px}.learn-finger-switcher button{border:1px solid transparent;background:0 0;border-radius:5px;padding:7px 12px;font-size:11px;color:var(--learn-muted);cursor:pointer;transition:color .15s,background .15s}.learn-finger-switcher button:hover{color:var(--text-color)}.learn-finger-switcher button[aria-pressed=true]{color:var(--main-color);background:color-mix(in srgb,var(--main-color) 8%,var(--bg-color));border-color:color-mix(in srgb,var(--main-color) 20%,transparent)}.lesson-keyboard{display:flex;flex-direction:column;align-items:center;gap:5px;width:100%}.lesson-keyboard-row{display:flex;justify-content:center;gap:4px;width:100%}.lesson-keyboard .lesson-key{flex:0 1 31px;min-width:0;width:31px;height:33px;padding:0;font-weight:400;font-size:11px;color:var(--learn-muted);background:0 0;border-color:var(--learn-border);position:relative;transition:background .18s,color .18s,border-color .18s}.lesson-keyboard .lesson-key[data-active=true]{color:var(--main-color);background:color-mix(in srgb,var(--main-color) 10%,var(--bg-color));border-color:color-mix(in srgb,var(--main-color) 40%,transparent)}.lesson-key[data-home=true]:after{content:"";position:absolute;bottom:5px;width:8px;height:2px;border-radius:1px;background:var(--main-color)}.lesson-keyboard .lesson-space{width:145px;height:26px;background:0 0;border-color:var(--learn-border);font-size:9px;font-weight:400;color:var(--learn-muted)}.learn-keyboard-caption{display:flex;justify-content:center;gap:20px;margin-top:18px;font-size:10px;color:var(--learn-muted)}.learn-keyboard-caption>span{display:flex;align-items:center;gap:5px}.learn-keyboard-caption i{width:6px;height:6px;border-radius:50%;background:var(--main-color)}.learn-keyboard-caption kbd{color:var(--main-color);font-family:inherit}.learn-lessons{margin-top:32px}.learn-section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:16px}.learn-section-heading h2{color:var(--text-color);font-size:16px;margin:0;letter-spacing:-.02em}.learn-section-heading>span{font-size:11px;color:var(--learn-muted)}.learn-lesson-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.learn-lesson-card{display:flex;flex-direction:column;padding:20px;border:1px solid var(--learn-border);border-radius:9px;color:var(--text-color);transition:border-color .15s,background .15s}.learn-lesson-card:hover{border-color:color-mix(in srgb,var(--main-color) 60%,transparent);background:color-mix(in srgb,var(--main-color) 3%,var(--bg-color))}.learn-lesson-top{display:flex;justify-content:space-between;align-items:center;gap:5px;color:var(--learn-muted);font-size:10px}.learn-lesson-number{font-variant-numeric:tabular-nums}.learn-lesson-status{display:inline-flex;align-items:center;gap:3px;font-size:9px}.learn-lesson-card[data-recommended=true] .learn-lesson-status{color:var(--main-color)}.learn-home-keys{display:flex;gap:6px;margin:24px 0 18px}.learn-home-keys .analytics-key{min-width:34px;height:35px;color:var(--text-color);background:color-mix(in srgb,var(--alt-bg-color) 70%,var(--bg-color));border-color:var(--learn-border);font-size:13px;font-weight:400}.learn-lesson-card h3{color:var(--text-color);font-size:17px;margin:0 0 9px}.learn-lesson-card>p{color:var(--learn-muted);font-size:12px;line-height:1.75;flex:1}.learn-lesson-bottom{display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid var(--learn-border);padding-top:14px;margin-top:22px;font-size:10px;color:var(--learn-muted)}.learn-lesson-bottom>div{display:flex;flex-direction:column;gap:8px}.learn-lesson-bottom>svg{flex-shrink:0}.learn-lesson-card:hover .learn-lesson-bottom>svg{color:var(--main-color)}.learn-best-stats strong{font-weight:500;color:var(--text-color)}.learn-best-stats>span{margin:0 3px}.learn-guidance{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:24px;color:var(--learn-muted);font-size:11px;line-height:1.7}.learn-guidance>div{display:flex;align-items:center;gap:9px}.learn-guidance svg{flex-shrink:0;color:var(--main-color)}.learn-guidance strong{color:var(--text-color);font-weight:500}.learn-guidance>span{flex-shrink:0}.learn-utility-links{display:flex;justify-content:center;gap:28px;padding-top:28px}.learn-utility-links a{display:flex;align-items:center;gap:6px;color:var(--learn-muted);font-size:11px}.learn-utility-links a:hover{color:var(--main-color)}.learn-hub :is(a,button):focus-visible,.finger-practice-container :is(a,button):focus-visible{outline:2px solid var(--main-color);outline-offset:4px}@media (max-width:1100px){.learn-lesson-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.learn-preview{gap:24px;padding:24px}}@media (max-width:760px){.learn-hub{padding-top:24px}.learn-intro{gap:24px;align-items:flex-start;flex-direction:column;margin-bottom:28px}.learn-progress-summary{border-left:0;padding-left:0;width:100%;max-width:300px}.learn-preview{grid-template-columns:1fr;gap:30px}.learn-preview-copy p{max-width:none}.learn-preview-map{width:100%}.learn-section-heading{align-items:flex-start;flex-direction:column;gap:5px}.learn-guidance{align-items:flex-start;flex-direction:column;gap:8px}.learn-guidance>span{padding-left:25px}}@media (max-width:420px){.learn-preview{padding:20px 14px}.learn-lesson-grid{grid-template-columns:1fr}.learn-finger-switcher button{padding:7px 10px}.learn-utility-links{gap:18px;flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){.learn-hub *,.finger-practice-container *{transition:none;animation:none}}.practice-workspace{--learn-border:color-mix(in srgb, var(--sub-alt-text-color) 48%, transparent);--learn-muted:color-mix(in srgb, var(--text-color) 60%, var(--bg-color));max-width:1040px;padding:24px 0 32px}.practice-workspace :is(h1,h2){color:var(--text-color);opacity:1;font-weight:500;letter-spacing:-.035em}.practice-workspace p{margin:0}.practice-navigation{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:36px}.practice-navigation>a{display:inline-flex;gap:8px;align-items:center;color:var(--learn-muted);font-size:12px}.practice-navigation a:hover{color:var(--main-color)}.practice-lesson-steps{display:flex;gap:24px}.practice-lesson-steps a{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--learn-muted)}.practice-lesson-steps a>span:first-child{font-size:9px;opacity:.65;font-variant-numeric:tabular-nums}.practice-lesson-steps a[aria-current=page]{color:var(--main-color)}.practice-heading{display:flex;justify-content:space-between;gap:32px;align-items:center;margin-bottom:28px}.practice-heading h1{font-size:clamp(28px,3vw,36px);margin:9px 0 10px;line-height:1.2}.practice-heading p{font-size:13px;line-height:1.7;color:var(--learn-muted)}.practice-personal-best{text-align:right}.practice-personal-best p{margin-top:10px;font-size:11px}.practice-personal-best strong{color:var(--text-color);font-weight:500;font-variant-numeric:tabular-nums}.practice-personal-best p>span{margin:0 6px}.practice-session{border:1px solid var(--learn-border);border-radius:10px;background:color-mix(in srgb,var(--alt-bg-color) 22%,var(--bg-color));overflow:hidden}.practice-session-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:19px 24px;font-size:11px;color:var(--learn-muted)}.practice-session-status{display:inline-flex;align-items:center;gap:7px}.practice-session-status i{width:5px;height:5px;border-radius:50%;background:var(--learn-muted)}.practice-session-status i[data-active=true]{background:var(--main-color)}.practice-live-stats{display:flex;gap:24px;align-items:baseline}.practice-live-stats strong{font-size:14px;font-weight:500;color:var(--text-color);font-variant-numeric:tabular-nums}.practice-live-stats strong>span{color:var(--learn-muted);font-size:11px;font-weight:400}.practice-progress{height:2px;background:var(--learn-border)}.practice-progress>span{display:block;height:100%;background:var(--main-color);transition:width .2s ease}.practice-writing-area{padding:36px 28px 28px;position:relative}.practice-workspace #keyboard-container{width:100%;margin:0}.practice-workspace #keyboard-container .letter{animation:none}.practice-workspace #keyboard-wrapper{height:calc(var(--num-lines)*var(--line-height))}.practice-workspace #kb-hidden-input{padding:0;inset:0;font-size:16px;cursor:text}.practice-workspace #keyboard-overlay{border:0;background:color-mix(in srgb,var(--bg-color) 80%,transparent);border-radius:0;backdrop-filter:blur(3px);font-size:13px;gap:9px;padding:0;pointer-events:none}.practice-workspace #keyboard[data-kb-focused="0"] #paragraph-content{filter:blur(3px)}.practice-workspace .letter{font-size:clamp(22px,2.3vw,29px)}.practice-workspace .pipe{height:29px;z-index:0}.practice-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--learn-muted);font-size:13px}.practice-session-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--learn-border);padding:13px 24px}.practice-session-footer p{font-size:11px;line-height:1.6;color:var(--learn-muted)}.practice-session-footer button{display:inline-flex;align-items:center;gap:6px;background:0 0;border:0;padding:7px 0 7px 8px;color:var(--learn-muted);cursor:pointer;font-size:11px}.practice-session-footer button:hover{color:var(--main-color)}.practice-guide{display:grid;grid-template-columns:.85fr 1.15fr;gap:40px;align-items:center;margin-top:38px}.practice-guide-copy h2{margin:10px 0 17px;font-size:21px}.practice-home-anchors{display:flex;gap:6px;align-items:center;margin-bottom:14px}.practice-home-anchors .analytics-key{width:30px;min-width:30px;height:31px;font-size:12px;font-weight:400;background:0 0;border-color:var(--learn-border)}.practice-home-anchors>span{margin-left:6px;color:var(--learn-muted);font-size:10px}.practice-guide-copy p{max-width:300px;color:var(--learn-muted);line-height:1.8;font-size:12px}.practice-guide-copy>a{display:inline-flex;align-items:center;gap:6px;color:var(--learn-muted);font-size:10px;margin-top:17px}.practice-guide-copy>a:hover{color:var(--main-color)}.practice-key-map{min-width:0}.practice-key-map-heading{display:flex;justify-content:space-between;gap:12px;margin-bottom:19px;font-size:10px;color:var(--learn-muted)}.practice-key-map-heading>span:first-child{color:var(--text-color)}.practice-key-map-heading>span:first-child>span{margin-left:7px;font-size:9px;color:var(--learn-muted)}.practice-physical-keyboard .lesson-key{width:32px;flex-basis:32px;height:34px}.practice-physical-keyboard button.lesson-key{cursor:pointer}.practice-physical-keyboard button.lesson-key:hover{border-color:var(--main-color);color:var(--main-color)}.practice-physical-keyboard button.lesson-key:disabled{cursor:default}.practice-physical-keyboard kbd.lesson-key{opacity:.4}.practice-physical-keyboard .lesson-key[data-next=true],.practice-physical-keyboard .lesson-space[data-next=true]{color:var(--bg-color);background:var(--main-color);border-color:var(--main-color)}.practice-physical-keyboard .lesson-key[data-next=true]:after{background:var(--bg-color)}.practice-physical-keyboard button.lesson-key[data-next=true]:hover{color:var(--bg-color)}.practice-key-legend{display:flex;gap:15px;align-items:center;justify-content:center;margin-top:16px;font-size:9px;color:var(--learn-muted)}.practice-key-legend>span{display:inline-flex;align-items:center;gap:4px}.practice-key-legend i{width:6px;height:6px;border:1px solid var(--main-color);border-radius:2px}.practice-key-legend>span:nth-child(2) i{background:var(--main-color)}.practice-closing-note{text-align:center;color:var(--learn-muted);font-size:10px;padding-top:30px}.practice-result{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 24px;border:1px solid color-mix(in srgb,var(--main-color) 30%,transparent);background:color-mix(in srgb,var(--main-color) 4%,var(--bg-color));border-radius:10px;margin-top:16px}.practice-result-label{display:flex;gap:6px;align-items:center;color:var(--main-color);font-size:10px}.practice-result h2{font-size:19px;margin:8px 0}.practice-result p{color:var(--learn-muted);font-size:11px;line-height:1.7}.practice-result .star-display{margin-top:12px}.learn-completion-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;flex-shrink:0}.learn-completion-actions .learn-primary-action{margin:0;font-size:11px;gap:14px}.practice-secondary-action{padding:10px 0;background:0 0;color:var(--learn-muted);border:0;font-size:11px;cursor:pointer}.practice-secondary-action:hover{color:var(--main-color)}@media (max-width:900px){.practice-guide{grid-template-columns:.7fr 1.3fr;gap:24px}.practice-key-map-heading{flex-direction:column;gap:5px}.practice-result{align-items:flex-start;flex-direction:column;gap:16px}}@media (max-width:660px){.practice-workspace{padding-top:20px}.practice-navigation{gap:12px;margin-bottom:26px}.practice-lesson-steps{gap:14px}.practice-lesson-steps a>span:last-child{display:none}.practice-lesson-steps a>span:first-child{font-size:11px;opacity:1}.practice-heading{flex-direction:column;align-items:flex-start;gap:15px;margin-bottom:22px}.practice-personal-best{text-align:left}.practice-personal-best>.learn-eyebrow{font-size:9px}.practice-personal-best p{display:inline;margin-left:9px;font-size:10px}.practice-session-toolbar{padding:16px;gap:14px;flex-wrap:wrap}.practice-live-stats{gap:18px}.practice-writing-area{padding:24px 12px 18px}.practice-workspace .letter{font-size:23px}.practice-workspace .pipe{height:25px}.practice-session-footer{padding:10px 16px;gap:15px;align-items:flex-start}.practice-session-footer p{font-size:10px}.practice-session-footer button{white-space:nowrap}.practice-guide{grid-template-columns:1fr;gap:26px;margin-top:30px}.practice-guide-copy p{max-width:none}.practice-key-map-heading{flex-direction:row;align-items:baseline}.practice-key-map-heading>span:last-child{max-width:120px;text-align:right;line-height:1.5}.practice-physical-keyboard .lesson-key{height:34px}.practice-key-legend{gap:10px;flex-wrap:wrap;font-size:9px}.practice-result{padding:20px}}@media (prefers-reduced-motion:reduce){.practice-workspace *{transition:none;animation:none}}