.keyboard-scan-history{--scan-paper: var(--ioc-paper, #f8f6ed);--scan-paper-raised: var(--ioc-paper-2, #ece9de);--scan-ink: var(--ioc-ink, #161711);--scan-muted: var(--ioc-muted, #585951);--scan-line: var(--ioc-line-strong, #9a9a90);--scan-accent: var(--ioc-signal, #d9ff43);padding:clamp(14px,2.5vw,22px);min-width:0;border:1px solid var(--scan-line);background:var(--scan-paper);color:var(--scan-ink)}.site-dark-mode .keyboard-scan-history{--scan-paper: var(--ioc-paper, #171814);--scan-paper-raised: var(--ioc-paper-2, #22241d);--scan-ink: var(--ioc-ink, #f4f1e8);--scan-muted: var(--ioc-muted, #c0beb5);--scan-line: var(--ioc-line-strong, #77786e)}.keyboard-scan-history__heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 18px}.keyboard-scan-history__heading>div{flex:1 1 220px}.keyboard-scan-history__heading h2{margin:0;font-size:clamp(1.25rem,2.5vw,1.65rem);font-weight:750;line-height:1.15}.keyboard-scan-history__heading p,.keyboard-scan-history__empty,.keyboard-scan-history__notice{margin:7px 0 0;color:var(--scan-muted);font-size:.86rem}.keyboard-scan-history__notice:empty{margin:0}.keyboard-scan-history :is(button,summary){cursor:pointer;font:inherit}.keyboard-scan-history :focus-visible{outline:2px solid var(--scan-ink);outline-offset:3px}.keyboard-scan-history button{min-height:44px;border:1px solid var(--scan-line);padding:7px 12px;font-size:.9rem;font-weight:750}.keyboard-scan-history__save{display:inline-flex;align-items:center;gap:7px;background:var(--scan-accent);color:#161711}.keyboard-scan-history__save:disabled{cursor:default;background:var(--scan-paper-raised);color:var(--scan-muted)}.keyboard-scan-history__clear{margin-top:12px;background:var(--scan-paper);color:var(--scan-ink)}.keyboard-scan-history__clear:hover{background:var(--scan-paper-raised)}.keyboard-scan-history__list{display:grid;gap:7px;margin:15px 0 0;padding:0;list-style:none}.keyboard-scan-history details{border:1px solid var(--scan-line)}.keyboard-scan-history summary{display:grid;grid-template-columns:minmax(0,1fr) auto 17px;align-items:center;gap:8px;min-height:48px;padding:8px 10px;background:var(--scan-paper-raised);list-style:none}.keyboard-scan-history summary::-webkit-details-marker{display:none}.keyboard-scan-history details[open] summary>svg{transform:rotate(180deg)}.keyboard-scan-history__date time{display:block;color:var(--scan-muted);font-size:.8rem;overflow-wrap:anywhere}.keyboard-scan-history__tested{color:var(--scan-muted);font-size:.8rem;text-align:right}.keyboard-scan-history__tested strong{color:var(--scan-ink);font-variant-numeric:tabular-nums}.keyboard-scan-history dl{display:flex;flex-wrap:wrap;gap:8px 18px;margin:0;padding:9px 10px;font-size:.85rem}.keyboard-scan-history dt{color:var(--scan-muted)}.keyboard-scan-history dd{margin:0;color:var(--scan-ink);font-weight:700;font-variant-numeric:tabular-nums}.keyboard-tester-guide{--keyboard-guide-ink: #1c1917;--keyboard-guide-muted: #475569;--keyboard-guide-line: #cbd5e1;--keyboard-guide-paper: #f8fafc;max-width:66rem;margin-inline:auto;padding-block:clamp(28px,4vw,52px);border-top:1px solid var(--keyboard-guide-line);color:var(--keyboard-guide-ink)}.site-dark-mode .keyboard-tester-guide{--keyboard-guide-ink: #e7ecf4;--keyboard-guide-muted: #b9c6d7;--keyboard-guide-line: #475569;--keyboard-guide-paper: #0f172a}.keyboard-tester-guide h2,.keyboard-tester-guide h3{margin:0;color:var(--keyboard-guide-ink);font-weight:800;line-height:1.15}.keyboard-tester-guide h2{margin-bottom:clamp(16px,3vw,30px);font-size:clamp(1.75rem,4vw,2.875rem);letter-spacing:-.045em}.keyboard-tester-guide h3{margin-bottom:10px;font-size:clamp(1.2rem,2.2vw,1.625rem);letter-spacing:-.03em}.keyboard-tester-guide-grid,.keyboard-tester-guide-related ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,2.5vw,24px)}.keyboard-tester-guide-grid>article{min-width:0;padding:clamp(16px,2.5vw,26px);border:1px solid var(--keyboard-guide-line);border-radius:10px;background:var(--keyboard-guide-paper)}.keyboard-tester-guide-grid p,.keyboard-tester-guide-related li span{color:var(--keyboard-guide-muted);font-size:clamp(1rem,.95rem + .23vw,1.0625rem);line-height:1.65}.keyboard-tester-guide-grid p{margin:0}.keyboard-tester-guide-grid p+p{margin-top:12px}.keyboard-tester-guide-grid :is(strong,code){color:var(--keyboard-guide-ink)}.keyboard-tester-guide-related{margin-top:clamp(24px,4vw,42px)}.keyboard-tester-guide-related ul{margin:0;padding:0;list-style:none}.keyboard-tester-guide-related li{min-width:0;padding-block:8px 12px;border-top:1px solid var(--keyboard-guide-line)}.keyboard-tester-guide-related li span{display:block}.keyboard-tester-guide a{color:var(--keyboard-guide-ink);font-weight:700;text-decoration:underline;text-underline-offset:3px}.keyboard-tester-guide a:focus-visible{outline:2px solid currentColor;outline-offset:3px}.keyboard-tester-guide-return{display:inline-flex;align-items:center;gap:6px;min-height:44px;margin-top:10px}#keyboard-tester-title{scroll-margin-block-start:9rem}@media (max-width: 760px){.keyboard-tester-guide-grid,.keyboard-tester-guide-related ul{grid-template-columns:minmax(0,1fr)}}.keyboard-tester{--keyboard-paper: #f8f9f6;--keyboard-panel: #e9ece6;--keyboard-line: #afb9b1;--keyboard-text: #17221b;--keyboard-muted: #47574c;--keyboard-accent: #31533c;--keyboard-held: #d9ff43;--keyboard-tested: #b6d7bc;display:grid;gap:24px;padding-bottom:44px;color:var(--keyboard-text)}.site-dark-mode .keyboard-tester{--keyboard-paper: #1a211d;--keyboard-panel: #111713;--keyboard-line: #53665a;--keyboard-text: #f2f4ed;--keyboard-muted: #c4d0c6;--keyboard-accent: #c0d9c6;--keyboard-tested: #396248}.keyboard-tester__heading h1{margin:0;font-size:clamp(1.85rem,4.1vw,3.7rem);font-weight:800;letter-spacing:-.052em;line-height:1.04}.keyboard-tester__heading p{margin:8px 0 0;color:var(--keyboard-muted)}.keyboard-tester__mobile-help{display:none}.keyboard-tester__panel{min-width:0;border:1px solid var(--keyboard-line);background:var(--keyboard-paper)}.keyboard-tester__toolbar,.keyboard-tester__readout,.keyboard-tester__section-heading{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px 16px}.keyboard-tester__toolbar,.keyboard-tester__readout{padding:10px 13px;border-bottom:1px solid var(--keyboard-line)}.keyboard-tester__layouts,.keyboard-tester__actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.keyboard-tester__layout-label{margin-right:4px;font-size:.78rem;font-weight:700;color:var(--keyboard-muted)}.keyboard-tester :is(.keyboard-tester__toolbar,.keyboard-tester__actions,.keyboard-tester__settings) button,.keyboard-tester :is(.keyboard-tester__group-picker,.keyboard-tester__settings) select{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;border:1px solid var(--keyboard-line);background:var(--keyboard-paper);color:var(--keyboard-text);padding:5px 10px;font-size:.82rem;font-weight:700}.keyboard-tester :is(.keyboard-tester__toolbar,.keyboard-tester__actions,.keyboard-tester__settings) button:not(:disabled){cursor:pointer}.keyboard-tester__actions button:disabled{opacity:.55}.keyboard-tester__actions button svg{width:15px;height:15px}.keyboard-tester .keyboard-tester__toolbar button[aria-pressed=true]{border-color:var(--keyboard-accent);box-shadow:inset 0 -3px var(--keyboard-accent)}.keyboard-tester .keyboard-tester__toolbar .keyboard-tester__start{border-color:#6d8020;background:var(--keyboard-held);color:#18200d}.keyboard-tester :is(button,select,summary):focus-visible{outline:2px solid var(--keyboard-accent);outline-offset:2px}.keyboard-tester__readout{background:var(--keyboard-panel)}.keyboard-tester__readout dl{min-width:0;flex:1;display:grid;grid-template-columns:minmax(66px,1.25fr) repeat(2,minmax(53px,1fr));gap:8px;margin:0}.keyboard-tester__readout dl>div{min-width:0}.keyboard-tester__readout dt,.keyboard-tester__results-metrics dt{color:var(--keyboard-muted);font-size:.78rem}.keyboard-tester__readout dd,.keyboard-tester__results-metrics dd{margin:0;font-weight:800;font-variant-numeric:tabular-nums}.keyboard-tester__readout dd{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.keyboard-tester__capture-status{color:var(--keyboard-muted);font-size:.78rem;white-space:nowrap}.keyboard-tester__capture-status[data-listening=true]{color:var(--keyboard-accent);font-weight:750}.keyboard-tester__capture{min-width:0;min-height:42px;padding:12px;cursor:text}.keyboard-tester__capture:focus{outline:2px solid var(--keyboard-accent);outline-offset:-2px}.keyboard-tester__matrix{position:relative;width:100%;max-width:1126px;margin:0 auto;container-type:inline-size}.keyboard-tester__cap{position:absolute;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:1px;overflow:hidden;white-space:nowrap;font-size:clamp(8px,1.13cqw,14px)}.keyboard-tester__cap small:empty{display:none}.keyboard-tester__cap small{font-size:.78em;font-weight:600}.keyboard-tester__cap,.keyboard-tester__group-keys span{border:1px solid var(--keyboard-line);background:var(--keyboard-panel);color:var(--keyboard-text);font-weight:750;line-height:1.1}.keyboard-tester :is(.keyboard-tester__cap,.keyboard-tester__group-keys span,.keyboard-tester__legend span)[data-state=tested]{background:var(--keyboard-tested)}.keyboard-tester :is(.keyboard-tester__cap,.keyboard-tester__group-keys span,.keyboard-tester__legend span)[data-state=held]{background:var(--keyboard-held);color:#18200d;border-color:#6d8020;box-shadow:inset 0 -3px #6d8020}.keyboard-tester__legend{display:flex;gap:8px;flex-wrap:wrap;padding:0 12px 10px}.keyboard-tester__legend span{border:1px solid var(--keyboard-line);background:var(--keyboard-panel);padding:2px 6px;font-size:.71rem}.keyboard-tester__group-picker,.keyboard-tester__group-keys{display:none}.keyboard-tester__results{display:grid;gap:10px}.keyboard-tester__section-heading h2{font-size:clamp(1.35rem,3vw,2rem);font-weight:800;margin:0}.keyboard-tester__results-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}.keyboard-tester__results-metrics div{min-width:0;padding:10px;border:1px solid var(--keyboard-line);background:var(--keyboard-paper)}.keyboard-tester__results-metrics dd{font-size:clamp(1.05rem,2.5vw,1.55rem)}.keyboard-tester__results-metrics small,.keyboard-tester__log small{display:block;color:var(--keyboard-muted);font-size:.72rem}.keyboard-tester__details{border:1px solid var(--keyboard-line);background:var(--keyboard-paper)}.keyboard-tester__details summary{padding:10px 12px;font-weight:700;cursor:pointer}.keyboard-tester__details>p,.keyboard-tester__settings{margin:0;padding:0 12px 12px;color:var(--keyboard-muted)}.keyboard-tester__coverage{display:grid;gap:4px;margin:0;padding:0 12px 12px;list-style:none}.keyboard-tester__coverage li{display:grid;grid-template-columns:minmax(90px,1fr) 4fr;gap:8px;font-size:.84rem}.keyboard-tester__log{overflow-wrap:anywhere}.keyboard-tester__log table{width:100%;border-collapse:collapse;text-align:left;font-size:.82rem}.keyboard-tester__log :is(th,td){padding:7px 8px;border-top:1px solid var(--keyboard-line);vertical-align:top}.keyboard-tester__log th{color:var(--keyboard-muted);font-size:.76rem}.keyboard-tester__settings{display:flex;gap:8px 14px;flex-wrap:wrap}.keyboard-tester__sound-profile{display:inline-flex;align-items:center;gap:6px}@media (pointer: coarse){.keyboard-tester__mobile-help{display:block}}@media (max-width: 680px){.keyboard-tester{gap:16px}.keyboard-tester__heading p{font-size:.82rem;margin-top:5px}.keyboard-tester__mobile-help{display:block}.keyboard-tester__toolbar,.keyboard-tester__readout{padding:7px 9px;gap:6px}.keyboard-tester__readout{flex-wrap:nowrap}.keyboard-tester__readout dl{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) minmax(0,.8fr)}.keyboard-tester :is(.keyboard-tester__toolbar,.keyboard-tester__group-picker) :is(button,select){min-height:36px}.keyboard-tester__layout-label,.keyboard-tester__capture-status{font-size:.72rem}.keyboard-tester__capture{padding:8px}.keyboard-tester__matrix{display:none}.keyboard-tester__group-picker{display:flex;justify-content:space-between;align-items:center;gap:6px;padding:6px 9px 0;font-size:.8rem}.keyboard-tester__group-keys{display:grid;grid-template-columns:repeat(auto-fit,minmax(25px,1fr));gap:4px}.keyboard-tester__group-keys[data-wide=true]{grid-template-columns:repeat(auto-fit,minmax(56px,1fr))}.keyboard-tester__group-keys span{display:grid;place-items:center;min-height:31px;padding:2px;font-size:.84rem;text-align:center}.keyboard-tester__results-metrics div{padding:7px}.keyboard-tester__results-metrics small{font-size:.68rem}.keyboard-tester__log :is(th,td){padding:6px 4px}}@media (max-width: 360px){.keyboard-tester{gap:12px}.keyboard-tester:not(:lang(en)) .keyboard-tester__heading h1{font-size:1.72rem}.keyboard-tester:not(:lang(en)) :is(.keyboard-tester__toolbar,.keyboard-tester__readout){padding-block:6px}.keyboard-tester:not(:lang(en)) .keyboard-tester__layouts{gap:4px}.keyboard-tester:not(:lang(en)) .keyboard-tester__layouts button{padding-inline:6px}.keyboard-tester:not(:lang(en)) .keyboard-tester__toolbar>.keyboard-tester__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.keyboard-tester:not(:lang(en)) .keyboard-tester__toolbar>.keyboard-tester__actions button{min-width:0;line-height:1.15;overflow-wrap:anywhere}.keyboard-tester:not(:lang(en)) .keyboard-tester__toolbar>.keyboard-tester__actions svg{display:none}.keyboard-tester:not(:lang(en)) .keyboard-tester__readout dt{line-height:1.18;overflow-wrap:break-word}.keyboard-tester:not(:lang(en)) .keyboard-tester__capture-status{max-width:35%;white-space:normal;text-align:right}.keyboard-tester__group-picker select{min-width:0;max-width:65%}.keyboard-tester:not(:lang(en)) .keyboard-tester__group-picker{padding-block-start:4px}}
