*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow-x:hidden}body{background:var(--bg);color:var(--fg);font-family:var(--font-sans);font-feature-settings:"liga";font-size:var(--step-0);-webkit-font-smoothing:antialiased;min-height:100dvh;margin:0;padding:0;line-height:1.6;overflow-x:hidden}:lang(ne){font-family:var(--font-ne);letter-spacing:0;text-transform:none;font-synthesis:none;font-style:normal;line-height:1.8}a{color:var(--accent);text-decoration-color:color-mix(in srgb, var(--accent) 45%, transparent);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--accent-hover);text-decoration-color:currentColor}main p a{display:inline-block}button,a,summary,label,textarea,input,select{touch-action:manipulation}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--radius-sm)}.counter,.metric{font-variant-numeric:tabular-nums}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{min-height:var(--target);background:var(--accent);color:var(--accent-fg);z-index:40;align-items:center;padding:.6rem 1rem;display:inline-flex;position:absolute;top:0;left:-9999px}.skip-link:focus{left:max(0px, var(--safe-left))}.site-header{z-index:30;box-sizing:border-box;min-height:calc(var(--header-height) + var(--safe-top));padding-top:var(--safe-top);border-bottom:1px solid var(--ink-border);background:var(--ink);color:var(--ink-fg);align-items:stretch;display:flex;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:var(--gap-min) .5rem;flex-wrap:wrap;width:100%;display:flex}@media (width>=1024px){.header-inner{flex-wrap:nowrap}}.logo{white-space:nowrap;min-height:var(--target);min-width:var(--target);font-weight:600;font-size:var(--brand);letter-spacing:-.01em;color:var(--ink-fg);flex:none;align-items:center;gap:.5rem;text-decoration:none;display:inline-flex}.site-header button{border-color:var(--ink-control);color:var(--ink-fg);background:0 0;flex:none;padding:.5rem .75rem}.site-header button:hover:not(:disabled){border-color:var(--ink-accent);box-shadow:none}.menu-toggle{align-items:center;gap:.4rem;display:inline-flex}.site-nav{width:100%;display:none}.site-nav.is-open{max-height:calc(100dvh - var(--header-height) - var(--safe-top));overscroll-behavior:contain;display:block;overflow-y:auto}.site-nav ul{gap:var(--gap-min);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.site-nav a{min-height:var(--target);min-width:var(--target);color:var(--ink-muted);letter-spacing:0;border-radius:var(--radius-sm);align-items:center;padding:.5rem .75rem;font-size:.9375rem;font-weight:500;text-decoration:none;transition:color .15s;display:flex}.site-nav a:hover{color:var(--ink-fg)}.site-nav a.active{color:var(--ink-accent)}@media (width>=1024px){.menu-toggle{display:none}.site-nav{flex:none;width:auto;margin-left:auto;display:block}.site-nav ul{flex-flow:row;gap:.125rem}.site-nav a{font-size:var(--nav);white-space:nowrap;padding:.5rem}}main{background:var(--bg);max-width:none;margin:0;padding:0;display:block}.wrap{width:100%;max-width:var(--container-max);padding-inline:var(--gutter);margin-inline:auto}.masthead{background:var(--ink);color:var(--ink-fg);border-bottom:1px solid var(--ink-border);flex:none;padding-block:clamp(1.5rem,.9rem + 2vw,4rem) clamp(.75rem,.7rem + .4vw,1.25rem)}.masthead .sub{color:var(--ink-muted)}.masthead .sub [lang=ne]{font-weight:500;line-height:1.6}.masthead .breadcrumbs ol{margin-bottom:0}.fit{height:calc(100dvh - var(--header-height) - var(--safe-top));flex-direction:column;min-height:0;display:flex}@media (height<=700px){.fit{height:auto}}.fit:has(.keyboard){height:auto}.fit:has(.keyboard) .stage{padding-bottom:.7rem}@media (width<=767px){.fit .tool{overflow-x:clip}}.band{padding-block:clamp(2rem,1.4rem + 3vw,3.6rem)}.band-surface{background:var(--surface);border-block:1px solid var(--border)}.band-prose{background:var(--bg)}.band-ink{background:var(--ink);color:var(--ink-fg);border-top:1px solid var(--ink-border)}.stage{min-height:0;padding-block:.5rem calc(var(--bar-height) + var(--safe-bottom));background:var(--bg);flex-direction:column;flex:auto;display:flex;position:relative}.stage>.wrap{flex-direction:column;flex:auto;min-height:0;display:flex}.fit{background:var(--ink)}.fit .masthead{border-bottom:0}.fit .stage{background:var(--ink)}.flow>*+*{margin-top:var(--space-4)}.flow>h2:not(:first-child){margin-top:var(--space-8)}h1{font-size:var(--step-3);letter-spacing:-.045em;text-wrap:balance;max-width:22ch;margin:0;font-weight:600;line-height:1.1}h2{font-size:var(--step-2);letter-spacing:-.03em;margin:var(--space-6) 0 var(--space-3);text-wrap:balance;max-width:34ch;font-weight:600;line-height:1.2}h3{font-size:var(--step-1);letter-spacing:-.02em;margin:var(--space-4) 0 var(--space-2);font-weight:600;line-height:1.3}.sub{color:var(--muted);font-size:var(--lede);text-wrap:pretty;max-width:48rem;margin-top:clamp(.5rem,.4rem + .4vw,1rem);margin-bottom:0;line-height:1.6}main p,main ol,main ul,main details,main .contact-email{max-width:var(--measure)}main ul.ex,main ul.keys,main .keyboard{max-width:none}main :is(h1,h2,h3,p,li,.sub,.contact-email,.drill-label),.results{overflow-wrap:anywhere}.band-prose section+section{margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--border)}.band-prose section>h2:first-child{margin-top:0}.breadcrumbs ol{margin:0 0 var(--space-3);font-size:var(--step--1);color:var(--ink-muted);letter-spacing:.01em;flex-wrap:wrap;align-items:center;gap:.2rem;padding:0;list-style:none;display:flex}.breadcrumbs li{align-items:center;display:inline-flex}.breadcrumbs li+li:before{content:"›";color:var(--accent);margin-right:.35rem}.breadcrumbs a{min-height:var(--target);min-width:var(--target);color:var(--ink-muted);align-items:center;padding:0 .2rem;display:inline-flex}.breadcrumbs a:hover{color:var(--ink-fg);text-decoration:underline}.breadcrumbs [aria-current=page]{color:var(--ink-fg);font-weight:500}.tool{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--raised);min-height:min-content;box-shadow:var(--shadow-2);flex-direction:column;flex:auto;margin:0;padding:clamp(.5rem,.4rem + .5vw,.9rem);display:flex;position:relative;overflow-x:hidden}.tool:has(.keyboard){min-height:0}.tool>label,.tool>.bar,.tool>.secondary-bar,.tool>.hint,.tool>.progress,.tool>.results{flex:none}.tool>.hint{margin-top:.25rem}.fit .tool:has(.editor-panes){min-height:0}.tool.is-fullscreen{z-index:50;background:var(--raised);padding:var(--space-4);border-radius:0;margin:0;position:fixed;inset:0;overflow:auto}.tool label{font-weight:600;font-size:var(--step--1);color:var(--muted);margin:0 0 var(--space-1);letter-spacing:0;display:block}.pane textarea+textarea{margin-top:var(--space-1)}.editor-panes~.bar:not(.secondary-bar){margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border)}.tool .privacy-note{margin:var(--space-1) 0 0;border-top:0;padding-top:0}@media (width<=767px){.tool>.hint,.tool .privacy-note{margin-top:0}.fit .tool:has(.editor-panes){padding-bottom:var(--space-1)}.editor-panes~.bar:not(.secondary-bar){margin-top:.625rem;padding-top:.625rem}}@media (width<=430px) and (height<=500px) and (orientation:landscape){body:has(.editor-panes){height:100dvh;overflow-y:hidden}body:has(.editor-panes) main{height:calc(100dvh - var(--header-height) - var(--safe-top));overflow:hidden}body:has(.editor-panes) .site-footer{display:none}.fit:has(.editor-panes){height:calc(100dvh - var(--header-height) - var(--safe-top))}.fit:has(.editor-panes) .masthead,.tool:has(.editor-panes)>.hint,.tool:has(.editor-panes)>.privacy-note{display:none}.fit:has(.editor-panes) .stage{padding-block:var(--space-1) 0}.fit:has(.editor-panes) .editor-panes{gap:var(--space-2);grid-template-rows:minmax(min-content,1fr);grid-template-columns:repeat(2,minmax(0,1fr))}.tool:has(.editor-panes) .pane textarea{resize:none}.tool:has(.editor-panes) .bar:not(.secondary-bar){grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.tool:has(.editor-panes) .secondary-bar{grid-template-columns:minmax(0,1fr) auto;display:grid}.tool:has(.editor-panes) .secondary-bar .switch{min-width:0;padding-right:0;font-size:.75rem;line-height:1.25}}textarea{width:100%;min-height:96px;font:inherit;font-size:max(1rem, var(--step-0));padding:var(--space-3) var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--raised);color:inherit;box-shadow:var(--shadow-1);margin-bottom:var(--space-3);resize:vertical;transition:border-color .15s,box-shadow .15s}textarea:focus-visible{outline:2px solid var(--focus);outline-offset:0;border-color:var(--focus)}textarea[lang=ne]{line-height:1.8}.editor-panes{gap:var(--space-3);flex:auto;grid-template-rows:minmax(min-content,1fr) minmax(min-content,1fr);grid-template-columns:minmax(0,1fr);min-height:min-content;display:grid}.pane{flex-direction:column;min-width:0;display:flex}.pane textarea{flex:auto;margin-bottom:0}.pane [lang=ne],.pane:has(textarea[lang=ne]) textarea{font-size:max(1.35rem, calc(var(--step-0) * 1.35))}.pane:has(textarea[lang=ne]) textarea{background:var(--accent-soft)}.pane:has(textarea[lang=ne]) label{color:var(--accent)}@media (width>=900px){.editor-panes{gap:var(--space-4);grid-template-rows:minmax(min-content,1fr);grid-template-columns:repeat(2,minmax(0,1fr))}}button{font:inherit;min-height:var(--target);min-width:var(--target);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--raised);color:inherit;cursor:pointer;justify-content:center;align-items:center;gap:.4rem;padding:.65rem 1.1rem;font-weight:500;transition:background-color .15s,border-color .15s,color .15s,transform .15s,box-shadow .15s;display:inline-flex}button:hover:not(:disabled){border-color:var(--fg);box-shadow:var(--shadow-1)}button:active:not(:disabled){transform:translateY(.5px)}button.primary{background:var(--accent);color:var(--accent-fg);border-color:var(--accent);box-shadow:0 1px 2px #34261633}button.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}button[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:500}button:disabled{opacity:.45;cursor:not-allowed}.tool .bar button.primary{padding-inline:1.4rem;font-weight:600}input[type=checkbox]{width:1.5rem;min-width:1.5rem;height:1.5rem;accent-color:var(--accent);margin:0}.btn-icon{flex:none}.bar{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tool button{padding:.4rem .7rem;font-size:.875rem}.secondary-bar{margin-top:var(--space-1);padding-top:var(--space-1);border-top:1px solid var(--border)}.switch{min-height:var(--target);align-items:center;gap:.5rem;padding-right:.5rem;font-weight:400;display:inline-flex}.status,.counter,.metric,.hint,.privacy-note,.drill-label{color:var(--muted);font-size:var(--step--1)}.hint{margin:.9rem 0 0}.warning{color:var(--bad);font-size:var(--step--1)}.contact-email{overflow-wrap:anywhere}.contact-email a{min-height:var(--target);align-items:center;display:inline-flex}.ex{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--raised);box-shadow:var(--shadow-1);margin:0;padding:0;list-style:none;overflow:hidden}.ex li{gap:var(--space-1) var(--space-4);padding:var(--space-3) var(--space-4);grid-template-columns:minmax(0,1fr);align-items:baseline;transition:background-color .15s;display:grid}.ex li+li{border-top:1px solid var(--border)}.ex li:hover{background:var(--surface)}.ex li>*{min-width:0}.ex code{overflow-wrap:anywhere;font-family:var(--font-mono);font-size:var(--step--1);color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);justify-self:start;padding:.15rem .5rem}.ex li [lang=ne]{font-size:var(--step-1);color:var(--fg);line-height:1.7}.phrases li [lang=ne]{font-size:var(--step-0)}@media (width>=768px){.ex li{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.steps{gap:var(--space-3);flex-direction:column;margin:0;padding:0 0 0 1.5rem;display:flex}.steps li{max-width:calc(var(--measure) - 1.5rem);padding-left:.25rem}.steps li::marker{color:var(--accent);font-weight:600}.faq{max-width:var(--measure);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--raised);box-shadow:var(--shadow-1);overflow:hidden}details{padding:0 var(--space-4);background:0 0;border:0;margin:0;transition:background-color .15s}details+details{border-top:1px solid var(--border)}details:hover{background:var(--surface)}details[open]{padding-bottom:var(--space-4);background:var(--surface)}details p{margin:var(--space-3) 0 0}summary{cursor:pointer;font-weight:500;font-size:var(--step-0);min-height:var(--target);align-items:center;gap:var(--space-3);letter-spacing:-.01em;list-style:none;display:flex}summary::-webkit-details-marker{display:none}summary:before{content:"";border-right:2px solid var(--accent);border-bottom:2px solid var(--accent);flex:none;width:.55rem;height:.55rem;transition:transform .15s;transform:rotate(-45deg)}details[open] summary:before{transform:rotate(45deg)}summary:hover{color:var(--accent)}.related ul{gap:var(--space-2);flex-wrap:wrap;max-width:none;margin:0;padding:0;list-style:none;display:flex}.band-ink .related h2{color:var(--ink-fg)}.related a{min-height:var(--target);border:1px solid var(--ink-control);border-radius:var(--radius-sm);color:var(--ink-fg);background:0 0;align-items:center;padding:.5rem 1rem;text-decoration:none;transition:border-color .15s,color .15s,background-color .15s;display:inline-flex}.related a:hover{border-color:var(--ink-accent);color:var(--ink-accent);background:#ffffff0d}.keyboard{--kb-gap:clamp(3px, .35vw, 7px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);flex:none;min-height:0;padding:6px 0}.tool:has(.keyboard){padding:.25rem}.tool:has(.keyboard)>textarea{height:clamp(96px,18dvh,132px);min-height:96px;margin-bottom:var(--space-2);flex:none}.tool:has(.drill-target)>textarea{flex:auto;min-height:96px}.kb-hint{margin:0 0 var(--space-2);font-size:var(--step--1);color:var(--muted);display:none}.kb-scroll{overscroll-behavior-x:contain;padding-bottom:2px;overflow-x:auto}.kb{gap:var(--kb-gap);min-width:calc(15 * var(--target) + 14 * var(--kb-gap));flex-direction:column;display:flex}.kb-row{gap:var(--kb-gap);display:flex}.key{flex:var(--w,1) 1 0;min-width:var(--target);min-height:var(--target);-webkit-user-select:none;user-select:none;border-radius:var(--radius-sm);box-shadow:0 2px 0 0 var(--border-strong);justify-content:center;align-items:center;padding:.3rem .35rem;font-size:1rem;line-height:1.4;display:flex;position:relative}.key:active:not(:disabled){box-shadow:0 0 0 0 var(--border-strong);transform:translateY(2px)}.key.is-armed{outline:2px solid var(--accent);outline-offset:-2px}.key-deco{color:var(--fg);box-shadow:none;border:1px dashed var(--border-strong);font-size:.72rem}.key-deco,.key-backspace,.key-enter,.key-shift,.key-capsLock,.key-space{font-size:.78rem}.key-deco.key-tab,.key-deco.key-modifier{justify-content:flex-start;padding-left:.55rem}.key-symbol{font-size:1rem;line-height:1.4}.z-left-pinky{background:color-mix(in srgb, var(--focus) 14%, var(--raised))}.z-left-ring{background:color-mix(in srgb, var(--focus) 11%, var(--raised))}.z-left-middle{background:color-mix(in srgb, var(--focus) 8%, var(--raised))}.z-left-index{background:color-mix(in srgb, var(--focus) 5%, var(--raised))}.z-right-index{background:color-mix(in srgb, var(--accent) 5%, var(--raised))}.z-right-middle{background:color-mix(in srgb, var(--accent) 8%, var(--raised))}.z-right-ring{background:color-mix(in srgb, var(--accent) 11%, var(--raised))}.z-right-pinky{background:color-mix(in srgb, var(--accent) 14%, var(--raised))}.z-thumb{background:color-mix(in srgb, var(--ok) 12%, var(--raised))}.key-glyph{font-size:1.15rem;line-height:1.6}.key-shift-glyph{color:var(--fg);font-size:.75rem;line-height:1.6;position:absolute;top:1px;left:6px}.key-shift-latin{color:var(--fg);font-size:.7rem;line-height:1.5;position:absolute;top:1px;right:6px}.key-latin{color:var(--fg);font-size:.72rem;line-height:1.3;position:absolute;bottom:0;right:6px}.kb-legend{margin:var(--space-2) 0 0;color:var(--muted);flex-wrap:wrap;gap:1px 12px;padding:0;font-size:.7rem;list-style:none;display:flex}.kb-legend li{align-items:center;gap:5px;display:inline-flex}.kb-swatch{border:1px solid var(--border-strong);border-radius:3px;width:12px;height:12px}.suggestions{z-index:25;background:var(--raised);border:1px solid var(--border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-2);font-family:var(--font-ne);overflow-wrap:anywhere;max-width:calc(100vw - 1rem);max-height:min(16.25rem,50dvh);margin:0;padding:4px;list-style:none;position:fixed;overflow-y:auto}.suggestions[data-mode=keyboard]{gap:var(--gap-min);overscroll-behavior-x:contain;scroll-snap-type:x proximity;max-height:3.5rem;display:flex;overflow:auto hidden}.suggestion{border-radius:var(--radius-sm);cursor:pointer;min-height:44px;color:var(--fg);align-items:center;gap:.5rem;padding:.35rem .6rem;font-size:1.15rem;line-height:1.6;display:flex}.suggestions[data-mode=keyboard] .suggestion{min-width:var(--target);scroll-snap-align:start;flex:none}.suggestion.is-active{background:var(--accent-soft);color:var(--accent)}.suggestion-raw{font-family:var(--font-sans);color:var(--muted)}.suggestion-number{font-family:var(--font-sans);color:var(--muted);font-size:.8rem}@media (prefers-reduced-motion:reduce){.suggestion{transition:none}}.layout-tool{--kb-gap:clamp(2px, .28vw, 6px)}.layout-tabs{gap:var(--gap-min);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.layout-tabs button[role=tab]{min-height:var(--target);font-size:var(--step--1);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--raised);color:var(--fg);padding:.4rem .8rem}.layout-tabs button.is-active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:650}.layout-board{gap:var(--kb-gap);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;padding:6px;display:flex;overflow:hidden}.layout-row{gap:var(--kb-gap);display:flex}.laycap{min-width:26px;min-height:38px;font:inherit;color:var(--fg);background:var(--raised);border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:0 2px 0 0 var(--border-strong);cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;transition:background-color var(--dur-fast), transform var(--dur-fast);flex:1 1 0;justify-content:center;align-items:center;padding:.2rem;display:flex;position:relative}@media (hover:none),(pointer:coarse){.laycap:hover:not(:disabled){border-color:var(--border-strong);box-shadow:0 2px 0 0 var(--border-strong)}}.laycap-deco{flex:0 0 calc(var(--w,1) * 2.2rem);color:var(--muted);box-shadow:none;cursor:default;border-style:dashed;justify-content:flex-start;padding-left:.5rem;font-size:.72rem}.laycap-wide{flex:0 0 calc(var(--target) * 1.7);font-size:.72rem}.laycap-enter{flex:0 0 calc(var(--target) * 2);font-size:.9rem}.laycap-space{flex:1 1 0}.laycap-glyph{font-size:clamp(.95rem,2.4vw,1.35rem);line-height:1.3}.laycap-latin{color:var(--muted);font-size:.62rem;position:absolute;bottom:0;right:4px}.laycap-shift{color:var(--muted);font-size:.68rem;line-height:1.4;position:absolute;top:0;left:4px}.laycap.is-pressed{background:var(--accent-soft);box-shadow:none;transform:translateY(2px)}.laycap.is-next{outline:2px solid var(--accent);outline-offset:-2px}.laycap.needs-shift{box-shadow:0 0 0 2px var(--accent)}.laycap.is-armed{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.preeti-layout-chart{width:min(100%,26.25rem);margin:0 0 var(--space-3);padding:var(--space-2);background:var(--raised);border:1px solid var(--border);border-radius:var(--radius-sm)}.preeti-layout-chart img{width:100%;height:auto;display:block}.layout-chart{margin:var(--space-2) 0 0}.layout-chart img{max-width:100%;height:auto;margin-inline:auto;display:block}.layout-chart figcaption p{margin:0}@media (width<=400px){.preeti-layout-chart{width:min(100%,18.75rem)}.laycap{min-width:22px;min-height:34px}.laycap-glyph{font-size:.85rem}}@media (prefers-reduced-motion:reduce){.laycap{transition:none}}@media (width<=767px){.kb-hint{display:block}}.drill-target{overflow-wrap:anywhere;margin:var(--space-2) 0;max-width:none;font-size:clamp(1.15rem,1rem + .8vw,1.5rem);line-height:1.7}.ch{border-radius:var(--radius-sm)}.ch-correct{color:var(--ok);text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--ok) 55%, transparent);text-underline-offset:.18em}.ch-incorrect{color:var(--bad);background:color-mix(in srgb, var(--bad) 18%, transparent);text-decoration:underline wavy}.ch-pending{color:var(--muted)}.ch-active{color:var(--ink-fg);text-decoration:underline dotted;text-decoration-color:var(--border-strong);text-underline-offset:.18em}.practice-levels,.practice-modes{padding-bottom:var(--space-3);margin-bottom:var(--space-3);border-bottom:1px solid var(--border)}.practice-modes{margin-bottom:var(--space-5)}.tool:has(.drill-target){padding:clamp(.4rem,.3rem + .4vw,.7rem)}.tool:has(.drill-target) .practice-levels,.tool:has(.drill-target) .practice-modes{padding-bottom:var(--space-1);margin-bottom:var(--space-1)}.tool:has(.drill-target) .bar{gap:4px}.tool:has(.drill-target) .drill-label{margin:0}.tool:has(.drill-target) .drill-target{margin:var(--space-1) 0;line-height:1.55}.tool:has(.drill-target)>label{margin-bottom:2px}.tool:has(.drill-target)>.hint{margin-top:var(--space-1)}.tool:has(.drill-target)>.progress{margin:var(--space-1) 0}.tool:has(.drill-target) button{padding:.35rem .55rem}.progress{border-radius:var(--radius-sm);background:var(--border);height:6px;margin:var(--space-2) 0;overflow:hidden}.progress-fill{background:var(--accent);border-radius:var(--radius-sm);height:100%;transition:width .12s linear}.results{border:1px solid var(--accent);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-top:var(--space-3);background:var(--accent-soft);overflow-wrap:anywhere}.results h3{color:var(--accent);margin-top:0}.tool.typeshala{min-height:0;padding:clamp(.4rem,.3rem + .4vw,.7rem);overflow:hidden}.ts-controls{padding-bottom:var(--space-1);border-bottom:1px solid var(--border)}.ts-group{flex-wrap:wrap;align-items:center;gap:4px;display:inline-flex}.ts-group-label{color:var(--muted);font-size:var(--step--1);margin-right:2px}.typeshala .ts-hint{margin:var(--space-1) 0}.ts-hint kbd{font-family:var(--font-mono);font-size:var(--step--1);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);border-bottom-width:2px;padding:0 .35rem}.ts-surface{min-height:96px;margin:var(--space-1) 0;flex:auto;position:relative}.ts-words{overflow-wrap:anywhere;user-select:none;cursor:text;height:100%;font-size:clamp(1.1rem,1rem + .6vw,1.6rem);line-height:1.9;overflow:hidden}.ts-input{opacity:0;resize:none;cursor:text;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.ts-caret{position:relative}.ts-caret:before{content:"";background:var(--accent);width:2px;animation:1.1s step-end infinite ts-blink;position:absolute;top:.1em;bottom:.1em;left:-1px}@keyframes ts-blink{50%{opacity:0}}.ts-metrics{padding-top:var(--space-1);border-top:1px solid var(--border)}.ts-deck-hint{margin:var(--space-1) 0 0;font-size:var(--step--1);color:var(--muted)}.ts-keyboard{margin-top:var(--space-2);overscroll-behavior-x:contain;flex:none;overflow-x:auto}.ts-keyboard .layout-board{width:max-content;min-width:100%}.ts-keyboard .laycap{min-width:var(--target);min-height:var(--target)}@media (width<=47.99rem){.ts-keyboard .laycap{min-width:clamp(1.75rem, 7vw, var(--target));min-height:var(--target);font-size:clamp(.625rem,2.6vw,.8125rem)}}.ts-results .ts-result-line{margin:0 0 var(--space-1)}.ts-chart{height:56px;margin:var(--space-2) 0;align-items:flex-end;gap:2px;display:flex}.ts-bar{background:var(--accent);border-radius:2px 2px 0 0;flex:1 1 0;min-width:2px}.fit:has(.ts-keyboard){height:auto}.fit:has(.ts-keyboard) .stage{padding-bottom:.7rem}@media (prefers-reduced-motion:reduce){.ts-caret:before{animation:none}}.site-footer{border-top:1px solid var(--ink-border);background:var(--ink);color:var(--ink-muted);padding:var(--space-7) 0 calc(var(--bar-height) + var(--space-7) + var(--safe-bottom));font-size:max(.8125rem, var(--step--1))}.footer-nav{margin-top:var(--space-4);gap:var(--space-3) 2rem;grid-template-columns:minmax(0,1fr);display:grid}@media (width>=768px){.footer-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}.footer-nav ul{flex-direction:column;gap:.15rem;margin:0;padding:0;list-style:none;display:flex}.site-footer a{min-height:var(--target);min-width:var(--target);color:var(--ink-muted);align-items:center;padding:.35rem 0;text-decoration:none;display:inline-flex}.site-footer a:hover{color:var(--ink-accent);text-decoration:underline}.tagline{font-weight:600;font-size:var(--step-1);letter-spacing:-.02em;color:var(--ink-fg);margin:0 0 var(--space-2);max-width:none}.site-footer .privacy-note{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--ink-border);max-width:60ch;color:var(--ink-muted)}@media (width>=768px){.stage{padding-block:.7rem 0}.site-footer{padding-bottom:3rem}}@media (prefers-reduced-motion:no-preference){.site-nav a,button,textarea,summary,summary:before,.key,.ex li,details,.related a{transition-property:color,background-color,border-color,box-shadow,transform;transition-duration:.15s;transition-timing-function:ease}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (forced-colors:active){.tool,.results,.ex,.faq,.keyboard,button,textarea,input,summary{border:1px solid canvastext}:focus-visible{outline:2px solid highlight}.tool:before{background:canvastext}.ch-correct,.ch-incorrect,.ch-pending,.ch-active,.warning{color:canvastext}.site-nav a.active{text-decoration:underline}}@media print{.site-header,.site-footer,.skip-link,.breadcrumbs,.related,.tool .bar,.tool .hint,button{display:none!important}body{color:#000;background:#fff;font-size:12pt}main{max-width:none;padding:0}.wrap,.masthead,.band,.band-ink,.band-prose,.stage{color:#000;background:0 0;border:0;max-width:none;padding:0}.masthead .sub{color:#000}main h1,main h2,main h3,main p,main .sub,main ol,main ul,main details,main .related{max-width:none}.tool{box-shadow:none;background:0 0;border:0;padding:0}.tool:before{display:none}.ex,.ex li,.faq,details,.keyboard,.results{box-shadow:none;background:0 0;border:0}.ex li+li,details+details,.band-prose section+section{border-top:0}textarea{color:#000;resize:none;background:0 0;border:0;height:auto;min-height:0;overflow:visible}}.letter-guide{max-width:none}.lg-tabs{margin:var(--space-4) 0 var(--space-3);flex-wrap:wrap;gap:6px;display:none}.lg-tabs button{font-size:var(--step--1);padding:.4rem .8rem}.lg-tabs [aria-selected=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}.letter-guide.is-js .lg-tabs{display:flex}.letter-guide.is-js .lg-group{display:none}.letter-guide.is-js .lg-group.is-active{display:block}.lg-group{margin-top:var(--space-5);min-width:0}.lg-group h3{margin-top:0}.lg-group table{border-collapse:collapse;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--raised);width:100%;box-shadow:var(--shadow-1);overflow:hidden}.lg-table-scroll{overscroll-behavior-x:contain;max-width:100%;overflow-x:auto}.lg-group th,.lg-group td{text-align:left;vertical-align:middle;padding:var(--space-2) var(--space-3);border-top:1px solid var(--border)}.lg-group thead th{font-size:var(--step--1);color:var(--muted);border-top:0;font-weight:600}.lg-char{font-size:clamp(1.5rem,1.3rem + .8vw,1.9rem);line-height:1.6}.lg-input code,.lg-example code{font-family:var(--font-mono);font-size:var(--step--1);color:var(--fg)}.lg-example [lang=ne]{margin-left:.4rem;font-size:1.25rem;line-height:1.6}.lg-alt,.lg-note{color:var(--muted);font-size:var(--step--1)}.lg-note{margin-top:2px;display:block}
