/* Shared, compact navigation for all three keyboard and mouse tools. */
body:is([data-page="typing"],[data-page="peripheral"]) main{max-width:none;padding-top:16px}
body:is([data-page="typing"],[data-page="peripheral"]) .editorial{max-width:none;margin:0 auto;padding-top:0;container-type:inline-size}
.peripheral-toolbar{position:sticky;top:0;z-index:4;display:flex;align-items:center;gap:16px;min-height:48px;margin:0 0 12px;padding:6px 0;background:var(--bg);border-bottom:1px solid var(--line)}
.peripheral-toolbar h1{flex:0 0 112px;margin:0;font-size:24px;line-height:1.4;white-space:nowrap}
.peripheral-toolbar .peripheral-tabs{display:grid;grid-template-columns:repeat(3,108px);gap:4px;margin:0;padding:3px;background:var(--soft);border:1px solid var(--line);border-radius:8px}
.peripheral-toolbar .peripheral-tabs a{display:block;margin:0;padding:6px 8px;text-align:center;border:0;border-radius:5px;font-size:13px;line-height:1.5;text-decoration:none;color:var(--muted);background:transparent;white-space:nowrap}
.peripheral-toolbar .peripheral-tabs a:hover{background:var(--surface);color:var(--accent)}
.peripheral-toolbar .peripheral-tabs a[aria-current]{background:var(--accent);color:white}
.peripheral-toolbar>.btn,.peripheral-toolbar>.typing-local{margin-left:auto;font-size:12px;white-space:nowrap}
.peripheral-toolbar>.btn{min-height:34px;padding:7px 12px}
@media(max-width:780px){.peripheral-toolbar{gap:10px}.peripheral-toolbar h1{flex-basis:96px;font-size:21px}.peripheral-toolbar .peripheral-tabs{grid-template-columns:repeat(3,90px)}.peripheral-toolbar>.typing-local{display:none}}
@media(max-width:600px){.peripheral-toolbar{flex-wrap:wrap;gap:7px;padding:5px 0 8px}.peripheral-toolbar h1{flex:1}.peripheral-toolbar .peripheral-tabs{order:3;width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}.peripheral-toolbar .peripheral-tabs a{font-size:12px;padding:5px 6px}}
.peripheral-toolbar h1{min-height:34px;display:flex;align-items:center}
.peripheral-mobile-note{display:flex;align-items:flex-start;gap:12px;margin:0 0 12px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.peripheral-mobile-note p{margin:0;font-size:12px;line-height:1.7;flex:1}
.peripheral-note-close{flex:none;min-width:32px;min-height:32px;border:0;background:transparent;color:var(--muted);font-size:22px;line-height:1}
#typing-keyboard-details{border:0;padding:0}
#typing-keyboard-details>summary{display:none}
.typing-keyboard-scroll{overflow-x:auto}
@media(max-width:780px){
 #typing-keyboard-details>summary{display:list-item;padding:8px 0;color:var(--accent)}
 #typing-keyboard-details #typing-keyboard:not(.numpad){min-width:700px;max-width:none}
 #typing-keyboard-details .typing-key-row{gap:5px;margin:5px 0}
 #typing-keyboard-details .typing-key{height:34px;font-size:11px;border-radius:5px}
}
/* Use the tool's available width, including when the sidebar is visible. */
@container (min-width:1320px){
 #keyboard-test{--key-height:clamp(43px,3.2cqi,56px)}
 .input-key{min-height:var(--key-height);font-size:13px}
 .keyboard-number{padding-top:calc(var(--key-height) + 7px)}
 .typing-layout{grid-template-columns:minmax(0,1fr) 270px;gap:20px}
 #typing-keyboard:not(.numpad){max-width:none}
 .typing-key{height:clamp(36px,2.7cqi,46px);font-size:12px}
 .mouse-workspace{grid-template-columns:minmax(0,1fr) 310px;gap:24px}
 #mouse-test{padding-top:42px;padding-bottom:30px}
}

#keyboard-status:empty,#mouse-status:empty,#drag-status:empty,#typing-status:empty,#typing-key-response:empty{display:none}
