.tool-panel{border:1px solid var(--control-border);background:var(--surface-muted);border-radius:12px;min-width:0;padding:16px}.tool-actions{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.tool-button{border:1px solid var(--control-border);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;min-height:44px;padding:10px 16px;font-weight:600;display:inline-flex}.tool-button:hover{background:var(--primary-soft)}.tool-button-primary{background:var(--accent);color:var(--ink);border-color:var(--ink)}.tool-button-primary:hover{background:#f8e586}.tool-button:disabled{opacity:.6;cursor:not-allowed}.tool-field{gap:6px;min-width:0;font-weight:500;display:grid}.tool-status{border:1px solid var(--control-border);background:var(--surface-muted);overflow-wrap:anywhere;border-left-width:4px;border-radius:8px;margin-top:16px;padding:16px}.tool-status[data-state=success]{border-color:var(--status-success)}.tool-status[data-state=warning]{border-color:var(--status-warning)}.tool-status[data-state=error]{border-color:var(--status-error)}.tool-status strong{color:var(--text-primary)}.tool-status[data-state=success] strong{color:var(--status-success)}.tool-status[data-state=warning] strong{color:var(--status-warning)}.tool-status[data-state=error] strong{color:var(--status-error)}.tool-section{border-top:1px solid var(--border);max-width:64rem;margin-top:32px;padding-top:32px}.tool-section p,.tool-section ol,.tool-section ul{margin-top:16px;line-height:1.65}.tool-section ol{padding-left:24px;list-style:decimal}.tool-section li+li{margin-top:8px}.tool-section a,.tool-return{min-height:44px;color:var(--primary);text-underline-offset:4px;align-items:center;text-decoration:underline;display:inline-flex}.tool-section-links{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.tool-section-link{align-items:center;gap:18px;max-width:100%;display:flex}.tool-section-link+.tool-section-link:before{content:"";background:var(--border);flex-shrink:0;width:1px;height:24px}.tool-section-links a{gap:8px;min-width:0;text-decoration:none}@media (hover:hover){.tool-section-links a:hover{text-decoration:underline}}.tool-section-links a span{overflow-wrap:anywhere;min-width:0}.tool-section-links .icon{flex-shrink:0}.tool-section details{border:1px solid var(--border);border-radius:8px;margin-top:12px;padding:0 14px 12px}.tool-section summary{cursor:pointer;min-height:44px;padding-top:10px;font-weight:600}.tool-section summary:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.tool-section details:not([open]){padding-bottom:0}.tool-section h3{margin-top:24px;font-size:20px;font-weight:600}.tool-metrics{flex-wrap:wrap;gap:12px 32px;margin-top:32px;margin-bottom:16px;display:flex}.tool-metrics dt{color:var(--text-muted);font-size:14px}.tool-metrics dd{overflow-wrap:anywhere;font-size:20px;font-weight:600}.level-meter{width:100%;height:24px;accent-color:var(--primary);margin-block:12px}.tool-audio{width:100%;max-width:36rem;margin-top:16px}.camera-preview{background:var(--ink);border-radius:8px;margin-top:16px;overflow:hidden}.camera-preview video{object-fit:contain;width:100%;min-height:160px;max-height:56vh;display:block}.camera-preview video[data-mirrored=true]{transform:scaleX(-1)}.camera-preview [data-exit-fullscreen]{display:none}.camera-preview:fullscreen{background:var(--ink);place-items:center;display:grid;position:relative}.camera-preview:fullscreen [data-exit-fullscreen]{background:var(--surface-muted);color:var(--text-primary);display:inline-flex;position:absolute;top:16px;right:16px}.camera-preview:fullscreen video{height:100%;max-height:100vh}.snapshot-preview{border-radius:8px;max-width:100%;max-height:360px;margin-top:16px;display:block}.keyboard-options{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:12px;margin-block:16px;display:grid}.keyboard-zone{border:2px solid var(--control-border);outline-offset:4px;border-radius:8px;margin-top:16px;padding:12px}.keyboard-zone:focus-visible{outline:3px solid var(--focus)}.keyboard-row{gap:3px;margin-top:3px;display:flex}.keyboard-spacer{flex:var(--key-width,1) 1 0;min-width:0}.keyboard-key{line-height:1.15;position:relative}[data-iso=true] .keyboard-key[data-code=Enter]:after{content:"";z-index:1;background:var(--surface-muted);border:1px solid var(--control-border);border-top:0;border-radius:0 0 4px 4px;width:75%;height:calc(100% + 4px);position:absolute;top:100%;right:-1px}[data-iso=true] .keyboard-key[data-code=Enter][data-tested=true]:after{border-color:var(--status-success);box-shadow:inset 0 -3px var(--status-success)}[data-iso=true] .keyboard-key[data-code=Enter][data-pressed=true]:after{background:var(--accent);border-color:var(--ink);box-shadow:none}.keyboard-key{flex:var(--key-width,1) 1 0;border:1px solid var(--control-border);overflow-wrap:anywhere;text-align:center;border-radius:4px;justify-content:center;align-items:center;min-width:0;min-height:34px;font-size:clamp(9px,1.4vw,14px);display:flex}.keyboard-key[data-tested=true]{border-color:var(--status-success);box-shadow:inset 0 -3px var(--status-success)}.keyboard-key[data-pressed=true]{background:var(--accent);color:var(--ink);border-color:var(--ink);box-shadow:none}.keyboard-extra{grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;max-width:240px;margin-top:12px;display:grid}.keyboard-secondary{align-items:flex-end;gap:24px;max-width:444px;margin-top:24px;display:flex}.keyboard-navigation{flex:3 1 0;min-width:0}.keyboard-secondary .keyboard-extra{margin-top:0}.keyboard-navigation .keyboard-extra+.keyboard-extra{margin-top:12px}.keyboard-secondary>.keyboard-numpad{flex:4 1 0;min-width:0}.keyboard-extra .keyboard-key{min-height:38px}.keyboard-numpad{grid-template-columns:repeat(4,minmax(0,1fr))}.keyboard-numpad [data-code=NumpadAdd],.keyboard-numpad [data-code=NumpadEnter]{grid-row:span 2}.keyboard-numpad [data-code=Numpad0]{grid-column:span 2}.keyboard-log{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}@media (width>=768px){.tool-panel{padding:24px}.keyboard-key{min-height:44px}}.audio-toolbar{flex-wrap:wrap;align-items:end;gap:16px;display:flex}.audio-toolbar .tool-field{flex:200px}.audio-toolbar input[type=range]{width:100%;min-height:44px;accent-color:var(--primary)}.audio-playback-status{min-height:3em}.audio-modes{min-height:248px}[data-mode=call] .audio-modes{min-height:0}.audio-assessment{border-top:1px solid var(--control-border);padding-top:20px}.audio-assessment legend{float:left;width:100%;margin-bottom:16px;font-size:20px}.audio-questions{clear:both;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:24px;display:grid}.audio-answer-hint{min-height:6em;margin-top:8px}@media (width>=768px){.audio-modes{min-height:172px}}.tool-panel input[type=number],.tool-panel textarea{border:1px solid var(--control-border);background:var(--surface-muted);min-width:0;max-width:100%;min-height:44px;color:var(--text-primary);border-radius:8px;padding:10px}.tool-panel input[type=number]{width:150px}.call-progress{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.call-progress button{overflow-wrap:anywhere;flex-direction:column;gap:4px;width:100%;height:100%;min-height:108px;padding-inline:8px;font-size:14px}.call-progress button[aria-current=step]{border-width:2px;border-color:var(--primary)}.call-progress span{font-size:12px;font-weight:400}@media (width<=359px){.call-progress{grid-template-columns:1fr}.call-progress button{flex-direction:row;justify-content:space-between;min-height:64px}}.mouse-zone{border:2px solid var(--control-border);user-select:none;border-radius:12px;min-height:240px;padding:16px}.mouse-buttons{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.mouse-buttons span{border:1px solid var(--control-border);text-align:center;overflow-wrap:anywhere;border-radius:8px;padding:10px 4px}.mouse-buttons [data-tested=true]{border-color:var(--status-success)}.mouse-buttons [data-pressed=true]{background:var(--accent);color:var(--ink)}.mouse-log{border:1px solid var(--border);overflow-wrap:anywhere;border-radius:8px;height:160px;padding:12px;font-size:14px;overflow:auto}.cps-zone{border:2px solid var(--control-border);background:var(--primary-soft);white-space:pre-line;touch-action:none;user-select:none;cursor:pointer;border-radius:12px;width:100%;min-height:220px;padding:24px 16px;font-weight:600;display:block}.cps-zone:active{background:var(--accent);color:var(--ink)}.cps-zone:disabled{cursor:default;opacity:.7}.cps-graph{width:100%;max-height:240px;fill:var(--primary);display:block}.tool-table{text-align:left;width:100%;margin-top:16px;font-size:14px}.tool-table th,.tool-table td{border-bottom:1px solid var(--border);padding:8px}.typing-target{white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid var(--control-border);border-radius:8px;max-height:220px;padding:12px;line-height:1.8;position:relative;overflow:auto}.typing-target [data-state=correct]{color:var(--status-success)}.typing-target [data-state=wrong]{color:var(--status-error);text-decoration:underline wavy}.typing-target [data-current=true]{outline:1px solid var(--text-primary);outline-offset:1px}.tool-panel textarea{resize:vertical;width:100%}.record-guidance{min-height:6em;margin-bottom:16px}.record-actions{grid-template-columns:1fr;gap:12px;max-width:720px;display:grid}.record-metrics{font-variant-numeric:tabular-nums;grid-template-columns:repeat(2,minmax(0,1fr));max-width:600px;min-height:96px;display:grid}.record-workspace-full{grid-template-columns:minmax(0,1fr);align-items:start;gap:24px;display:grid}.record-control-column{min-width:0}.record-workspace-full .record-metrics-rows{grid-template-columns:minmax(0,1fr);align-content:start;gap:16px;min-height:96px}.record-metrics-rows>div{flex-wrap:wrap;align-items:baseline;gap:4px 8px;display:flex}.record-metrics-rows dt,.record-metrics-rows dd{font-size:16px}.record-workspace-full>.recording-stage,.record-workspace-full>[data-record-quota]{margin-top:0}.record-workspace-full [data-recordings]{scroll-margin-top:24px}.record-input-panel{border:1px solid var(--control-border);border-radius:8px;min-width:0;padding:16px}[data-recorder][data-compact=false] .tool-button{justify-content:flex-start;gap:8px}[data-recorder][data-compact=false] .tool-button .icon{flex-shrink:0}@media (width<=959px){.record-workspace-full .record-metrics-rows{min-height:60px}}@media (width>=960px){.record-workspace-full{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.record-workspace-full>.record-control-column{grid-area:1/1}.record-workspace-full>.record-input-panel{grid-area:1/2/span 2}.record-workspace-full>.recording-stage{grid-area:2/1}.record-workspace-full>[data-record-quota]{grid-area:3/1/auto/-1}.record-workspace-full .record-actions{grid-template-columns:minmax(0,1fr) minmax(152px,1fr) minmax(0,1fr);gap:8px}.record-workspace-full .record-actions .tool-button{gap:6px;padding-inline:8px}.record-workspace-full .record-actions .icon{width:20px;height:20px}.record-workspace-full .record-guidance{min-height:4.5em}}.recording-stage-compact{min-height:188px}.recording-stage .tool-audio{height:54px;display:block}.tool-details{border:1px solid var(--control-border);border-radius:8px;padding:0 12px 12px}.tool-details:not([open]){padding-bottom:0}.tool-details summary{cursor:pointer;min-height:44px;padding-block:10px;font-weight:600;display:list-item}.tool-details summary:focus-visible,.call-step-title:focus,#call-result:focus{outline:3px solid var(--focus);outline-offset:4px}.call-step-title{scroll-margin-top:24px;font-size:20px;font-weight:600}.call-camera-preview,.webcam-camera-preview{place-items:center;height:56vh;min-height:160px;display:grid}.call-camera-preview p,.webcam-camera-preview p{text-align:center;color:#fff;padding:16px}.call-camera-preview video,.webcam-camera-preview video{width:100%;height:100%;min-height:0;max-height:100%}.call-actions{grid-template-columns:1fr;gap:12px;display:grid}.call-summary{gap:8px;display:grid}.call-summary button{flex-wrap:wrap;gap:6px;width:100%}#call-result{scroll-margin-top:24px}#call-mic-result{min-height:130px}[data-camera-status]{min-height:4.5em}[data-camera-hint],[data-mic-hint]{min-height:6em}.mouse-state{min-height:4.5em}.mouse-buttons span{place-items:center;min-height:72px;display:grid}.mouse-held{min-height:3em}.mouse-summary,.mouse-wheel-summary{min-height:4.5em}.typing-scorebar{z-index:1;border:1px solid var(--control-border);background:var(--surface-muted);font-variant-numeric:tabular-nums;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:16px;padding:12px 8px;display:grid;position:sticky;top:8px}.typing-scorebar span{font-size:14px}.typing-scorebar p{font-weight:600}.typing-secondary{font-variant-numeric:tabular-nums;grid-template-columns:repeat(2,minmax(0,1fr));font-size:14px;display:grid}.typing-state{min-height:4.5em}[data-typing-input],.typing-target{scroll-margin-top:108px}@media (width<=639px){.typing-target{max-height:180px}}@media (width>=360px){.record-guidance,.audio-answer-hint,[data-camera-hint],[data-mic-hint]{min-height:4.5em}}@media (width>=375px){.record-guidance{min-height:3.5em}}@media (width>=640px){.record-guidance{min-height:3em}.record-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.record-metrics{min-height:72px}.call-actions{grid-template-columns:2fr 1fr 1fr}.call-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.call-progress button{min-height:80px}.mouse-state,.mouse-summary,.mouse-wheel-summary,.typing-state{min-height:3em}#call-mic-result{min-height:106px}.audio-answer-hint,[data-camera-status],[data-camera-hint],[data-mic-hint]{min-height:3em}}
