/* Laboratory chrome. The scene, apparatus and simulation are independent. */
:root{--lab-font:-apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue",Arial,sans-serif;font-family:var(--lab-font);color:var(--fg);background:var(--bg)}
button,input,select,textarea{font-family:inherit}
button,a,input,select{touch-action:manipulation}
#workshop{color:var(--fg)}
#workshop :focus-visible{outline:2px solid var(--fg);outline-offset:4px}
.masthead,.lab-toolbar,.lab-readings,.view-mode,.save-badge,.grab-controls,.book-controls,.notebook-tools,.notebook-heading,.transformer-inspector,.touch-controls{
  background:var(--surface);color:var(--fg);border:1px solid var(--line);box-shadow:var(--shadow),inset 0 1px 0 #ffffff24;
  -webkit-backdrop-filter:blur(22px) saturate(135%);backdrop-filter:blur(22px) saturate(135%);
}
.masthead{position:fixed;top:max(20px,env(safe-area-inset-top));left:max(24px,env(safe-area-inset-left));right:max(24px,env(safe-area-inset-right));height:62px;padding:10px 15px 10px 22px;gap:20px;border-radius:23px;z-index:25;pointer-events:auto}
.logo{font:750 18px/1 var(--lab-font);letter-spacing:-.7px;color:var(--fg);white-space:nowrap}
.logo .logo-period{color:var(--fg)}
.masthead-rule{height:24px;background:var(--line)}
.masthead .lab-header-title{font-size:13px;letter-spacing:0;font-weight:600;line-height:1.3}
.masthead .lab-header-title>span{font-size:11px;letter-spacing:0;color:var(--muted);font-weight:400;margin-top:3px}
.masthead .live-label{margin-left:auto;font-size:11px;letter-spacing:0;font-weight:500;color:var(--muted);gap:8px}
.live-label i{width:5px;height:5px;background:var(--fg);box-shadow:0 0 0 4px color-mix(in srgb,var(--fg) 6%,transparent)}
.masthead .theme-switch{margin-left:4px}
.masthead .theme-switch button{min-height:36px}
.lab-toolbar{position:fixed;z-index:24;left:50%;bottom:max(26px,env(safe-area-inset-bottom));transform:translateX(-50%);display:flex;align-items:center;gap:4px;padding:6px;border-radius:22px;width:max-content;max-width:calc(100vw - 24px)}
.lab-toolbar button,.lab-toolbar .lab-help{position:static;display:flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:10px 17px;border:0;border-radius:16px;background:transparent;color:var(--fg);font-size:13px;font-weight:500;white-space:nowrap}
.lab-toolbar button:first-child{background:var(--fg);color:var(--bg)}
.lab-toolbar button:hover{background:var(--field)}
.lab-toolbar button:first-child:hover{opacity:.82;background:var(--fg)}
.lab-toolbar kbd{font:10px/1.2 var(--lab-font);opacity:.65;border:1px solid currentColor;border-radius:4px;padding:3px}
.lab-readings{top:104px;left:24px;max-width:min(360px,43vw);gap:7px;padding:14px 16px;border-radius:20px}
.readings-label{font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:1px}
.lab-readings .meter-readout,.lab-readings .circuit-warning,.lab-readings .circuit-status{position:static;background:transparent;color:var(--fg);border:0;border-radius:0;padding:0;max-width:none;margin:0;font-family:inherit;box-shadow:none}
.lab-readings .circuit-status{font-size:12px;line-height:1.55;width:auto;color:var(--muted)}
.lab-readings .meter-readout{font-size:15px;line-height:1.4;font-weight:600;letter-spacing:-.25px;font-variant-numeric:tabular-nums}
.lab-readings .circuit-warning{font-size:12px;line-height:1.6;padding-top:9px;border-top:1px solid var(--line)}
.lab-readings .circuit-status[data-state=error]{color:var(--fg);font-weight:600}
.view-mode{top:104px;right:24px;left:auto;transform:none;border-radius:15px;padding:10px 13px;font-size:9px;letter-spacing:.07em;z-index:23;max-width:calc(50vw - 30px);overflow:hidden;text-overflow:ellipsis}
#zoom-level{border-color:var(--line);color:var(--muted);flex:none}
.save-badge{top:150px;right:24px;padding:8px 11px;border-radius:12px;font:11px/1.4 var(--lab-font);max-width:260px;text-align:right}
.scene-footer{left:24px;right:24px;bottom:28px;z-index:23;max-width:calc(50vw - 255px);font-size:10px}
.scene-footer #look-help{font:11px/1.6 var(--lab-font);color:white;text-shadow:0 1px 5px #000c}
.scene-footer .footer-mark{display:none}
.scene-footer kbd{color:inherit;background:#ffffff18;border-color:#ffffff55;box-shadow:none;font-family:inherit}
.context-prompts{bottom:100px;left:50%;right:auto;transform:translateX(-50%);width:max-content;max-width:min(680px,calc(100vw - 32px));padding:9px 14px;border-radius:13px;background:#0008;color:#fff;font-size:11px;line-height:1.6;text-shadow:none}
.grab-controls{top:194px;right:24px;left:auto;bottom:auto;transform:none;border-radius:17px;max-width:260px;padding:12px 15px}
.grab-controls>span:first-child{font-size:12px;color:var(--fg);font-weight:500}
.object-label{background:var(--surface-strong);color:var(--fg);border-color:var(--line);box-shadow:var(--shadow);bottom:102px;font-size:12px}
.interaction-status{bottom:100px;color:var(--fg);background:var(--surface-strong);border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow);font:12px/1.6 var(--lab-font)}
.loading{background:var(--bg);color:var(--muted);font:13px/1.5 var(--lab-font)}
.loading span{border-color:var(--line);border-top-color:var(--fg)}

/* The first action is always the way into the lab. */
#pause-menu{background:#00000024;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:100;padding:22px}
.pause-card{width:min(620px,100%);max-width:620px;max-height:calc(100dvh - 44px);padding:30px 34px 22px;border-radius:30px;border:1px solid var(--line);background:var(--surface-strong);color:var(--fg);box-shadow:var(--shadow),inset 0 1px 0 #ffffff30;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
.pause-eyebrow{display:flex;align-items:center;gap:16px;letter-spacing:0;font-size:11px;line-height:1.5;margin-bottom:28px;font-weight:500;color:var(--fg)}
.pause-emblem{font:750 18px/1 var(--lab-font);letter-spacing:-.7px;color:var(--fg);padding-right:17px;border-color:var(--line)}
.pause-eyebrow small{font:11px/1.6 var(--lab-font);letter-spacing:0;color:var(--muted)}
.pause-kicker{font-size:9px;letter-spacing:.12em;color:var(--muted);font-weight:600;margin:0 0 9px}
.pause-card h1,.pause-card h2{font-family:inherit;font-size:32px;font-weight:600;letter-spacing:-1.15px;line-height:1.16;margin:0 0 11px;color:var(--fg)}
.pause-card h2{font-size:29px}
.pause-copy{font:13px/1.65 var(--lab-font);color:var(--muted);margin:0 0 22px;max-width:460px}
.pause-actions{grid-template-columns:minmax(0,1fr) 146px;gap:9px}
.pause-actions button{min-height:49px;border-radius:14px;padding:13px 17px;font-size:13px;font-weight:600}
.pause-actions .menu-primary{background:var(--fg);border:1px solid var(--fg);color:var(--bg);box-shadow:0 3px 8px #00000012}
.pause-actions .menu-primary:hover{background:var(--fg);opacity:.85}
.pause-actions .menu-secondary{background:var(--field);color:var(--fg);border-color:var(--line)}
.pause-actions .menu-secondary:hover{background:var(--surface)}
.menu-secondary span{color:var(--muted)}
.menu-status{color:var(--muted);font:12px/1.6 var(--lab-font);margin-top:10px}
.pause-appearance{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:20px 0 0;color:var(--muted);font-size:12px}
.pause-card .theme-switch button{min-height:36px!important;font-size:11px}
#project-controls{padding:19px 0 18px;margin:18px 0 0;border-block:1px solid var(--line);font-family:inherit}
#project-controls>label{font-size:12px;font-weight:500;color:var(--fg);margin-bottom:8px}
#project-controls>input{background:var(--field);color:var(--fg);border:1px solid var(--line);border-radius:11px;min-height:44px;padding:11px 13px;font:13px/1.4 var(--lab-font)}
#project-controls>input::placeholder{color:var(--muted);opacity:.8}
.project-save-row{gap:8px;margin-top:10px;flex-wrap:wrap}
.project-save-row button{font:500 12px/1.4 var(--lab-font);min-height:40px;padding:9px 13px;border:1px solid var(--line);border-radius:10px;background:var(--field);color:var(--fg)}
.project-save-row button:hover{background:var(--surface)}
.autosave-label{margin-left:auto;color:var(--muted);gap:6px;font-size:11px;min-height:40px}
.autosave-label input{width:16px;height:16px;accent-color:var(--fg)}
#project-controls p{font:11px/1.5 var(--lab-font);color:var(--muted);margin:9px 0 0}
.desk-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:13px}
.desk-actions button{min-height:44px;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--muted);font:11px/1.3 var(--lab-font);padding:8px}
.desk-actions button:hover{color:var(--fg);background:var(--field);text-decoration:none}
.pause-shortcuts{font:10px/1.5 var(--lab-font);gap:10px 15px;padding:16px 0;margin:0;color:var(--muted);border-bottom:1px solid var(--line)}
.pause-shortcuts kbd{font:10px/1.4 var(--lab-font);color:var(--fg);border-color:var(--line);background:var(--field);border-radius:5px}
.lab-nav{gap:8px 18px;margin:8px 0 -4px;align-items:center;font:11px/1.4 var(--lab-font)}
.lab-nav a,.lab-nav button{display:flex;align-items:center;color:var(--muted);text-decoration:none;font:inherit;min-height:40px}
.lab-nav a:hover,.lab-nav button:hover{color:var(--fg);text-decoration:underline;text-underline-offset:4px}
.settings-back{display:inline-flex;align-items:center;gap:6px;font:12px/1.5 var(--lab-font);color:var(--muted);padding:6px 0;margin-bottom:12px}
.settings-back:hover{color:var(--fg)}
.control-tabs{gap:5px;margin:20px 0 12px;padding:5px;border-radius:13px;background:var(--field)}
.control-tabs button{flex:1;padding:7px 10px;font-size:12px;border-radius:9px;border-color:transparent;background:transparent;color:var(--muted)}
.control-tabs button[aria-selected=true]{background:var(--surface-strong);color:var(--fg);box-shadow:0 1px 5px #0000000d}
.control-field{padding:12px 0;border-color:var(--line);font:13px/1.5 var(--lab-font);color:var(--fg);gap:15px}
.control-field>span{min-width:0}
.control-category input:not([type=checkbox]),.control-field select{background:var(--field);color:var(--fg);border:1px solid var(--line);border-radius:9px;font:13px/1.4 var(--lab-font);padding:9px;min-width:0}
.control-category input[type=search]{margin:8px 0 12px}
.control-field input[type=range]{padding:0;border:0;background:transparent;accent-color:var(--fg)}
.control-field input[type=checkbox]{accent-color:var(--fg);width:20px;height:20px}
.control-field output{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}
.control-category p,.control-notice,.control-confirm p,#settings-save{color:var(--muted);font:12px/1.65 var(--lab-font)}
.control-resets{padding-top:4px;margin:18px 0 14px}
.control-resets button,.binding-table button,.control-notice button,.control-confirm button{background:var(--field);color:var(--fg);border-color:var(--line);border-radius:9px;font-family:inherit}
.control-confirm{border:1px solid var(--line);background:var(--field);padding:16px;border-radius:13px}
.binding-table{font:12px/1.5 var(--lab-font);color:var(--fg)}
.binding-table th,.binding-table td{border-color:var(--line);padding:10px 6px}
.binding-table thead{background:var(--surface-strong)}
.binding-table .clear-bind{color:var(--muted)}

/* Inspection and reference tools inherit the same surfaces and type. */
.workbench-panel{background:#00000038;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.workbench-panel>div{width:min(100%,620px);background:var(--surface-strong);color:var(--fg);border:1px solid var(--line);padding:28px;border-radius:26px;box-shadow:var(--shadow);max-height:calc(100dvh - 48px);scrollbar-width:thin}
.workbench-panel h2{font:600 28px/1.2 var(--lab-font);letter-spacing:-.9px;margin:4px 90px 22px 0;color:var(--fg)}
.workbench-panel dl{font:13px/1.6 var(--lab-font);grid-template-columns:minmax(110px,1fr) minmax(0,1.2fr);gap:12px 18px;margin:18px 0;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--field)}
.workbench-panel dt{font-weight:500;color:var(--muted)}
.workbench-panel dd{overflow-wrap:anywhere;color:var(--fg)}
.workbench-panel p{font:13px/1.7 var(--lab-font);color:var(--muted)}
.workbench-panel label{font:12px/1.5 var(--lab-font);color:var(--fg);margin:16px 0}
.workbench-panel button,.workbench-panel input{font:13px/1.5 var(--lab-font);min-height:42px;background:var(--field);color:var(--fg);border-color:var(--line);border-radius:10px;padding:10px 13px}
.workbench-panel input{font-size:15px}
.workbench-panel input[type=range]{accent-color:var(--fg);padding:0}
.workbench-panel .panel-close{min-height:36px;font-size:11px;margin-top:-4px;padding:7px 11px;border-radius:10px}
.workbench-panel [data-panel-body]>button{margin:0 7px 8px 0}
.workbench-panel form button{background:var(--fg);color:var(--bg);border-color:var(--fg)}
.workbench-panel a{display:inline-block;color:var(--fg);font-size:13px;text-underline-offset:4px;margin:8px 0}
.transformer-inspector{right:24px;width:300px;padding:24px;border-radius:24px}
.transformer-inspector h2{font:600 25px/1.2 var(--lab-font);letter-spacing:-.7px;color:var(--fg)}
.transformer-eyebrow,.transformer-copy,.transformer-inspector label span{color:var(--muted);font-family:inherit}
.transformer-inspector label,.transformer-ratio{color:var(--fg);font-family:inherit}
.transformer-turns button,.transformer-turns input,.transformer-polarity{color:var(--fg);background:var(--field);border-color:var(--line);border-radius:10px;font-family:inherit;min-height:42px}
.transformer-close{background:var(--fg);color:var(--bg);font-family:inherit;border-radius:12px;min-height:44px}
.transformer-ratio{border-color:var(--line)}
.transformer-status{color:var(--fg)}
.book-controls,.notebook-tools{border-radius:21px;bottom:24px;padding:7px;gap:5px}
.book-controls button,.book-controls .page-arrow,.book-controls .contents-button,.notebook-tools button{background:transparent;color:var(--fg);border-radius:14px;font-family:inherit;min-height:42px}
.book-controls button:hover,.notebook-tools button:hover{background:var(--field)}
.book-controls #return-book,.notebook-tools #note-close,.notebook-tools button[aria-pressed=true]{background:var(--fg);color:var(--bg);font-family:inherit}
#book-page-range,#note-page,.note-size,#note-save-status{color:var(--muted);font-family:inherit}
.notebook-heading{top:104px;border-radius:15px;color:var(--fg)}
.notebook-heading>span{font-size:10px;letter-spacing:.08em}
.note-tool-group+.note-tool-group{border-color:var(--line)}
.note-size input{accent-color:var(--fg)}
.notebook-tools .note-colors button,.notebook-tools .note-colors button[aria-pressed=true]{min-height:0;background:var(--ink)}
.touch-controls{padding:6px;border-radius:20px;gap:5px;max-width:min(90vw,410px)}
.touch-controls button{background:transparent;color:var(--fg);border:0;border-radius:14px;font:500 12px/1.4 var(--lab-font)}
.touch-controls button:hover{background:var(--field)}
.touch-controls button[data-action=openMenu]{background:var(--fg);color:var(--bg)}
[data-controls=touch] .lab-toolbar{display:none}
/* Captured desktop play has no clickable chrome. Escape exposes the menu,
   where appearance, saving, help and view controls remain available. */
[data-controls=mouse][data-input-mode=look] .masthead,
[data-controls=mouse][data-input-mode=look] .lab-toolbar,
[data-controls=mouse][data-input-mode=look] .scene-hotspot,
[data-controls=mouse][data-input-mode=look] .grab-controls>div{display:none}
[data-controls=mouse][data-input-mode=look] .lab-readings{top:24px}
[data-controls=mouse][data-input-mode=look] .view-mode{top:24px}
[data-controls=mouse][data-input-mode=look] .save-badge{top:70px}
[data-controls=mouse][data-input-mode=look] .scene-footer{display:block;left:50%;right:auto;bottom:24px;transform:translateX(-50%);width:max-content;max-width:calc(100vw - 48px);padding:10px 15px;border:1px solid var(--line);border-radius:15px;background:var(--surface);box-shadow:var(--shadow);pointer-events:none}
[data-controls=mouse][data-input-mode=look] .scene-footer #look-help{color:var(--fg);text-shadow:none;text-align:center;font-size:11px}
[data-paused=true] .lab-toolbar{visibility:hidden;pointer-events:none}
#workshop:not([data-book-state=desk]) .lab-toolbar,#workshop:not([data-notebook-state=desk]) .lab-toolbar,[data-transformer-state=inspection] .lab-toolbar{visibility:hidden;pointer-events:none}
.performance-panel,#input-debug{background:var(--surface-strong);color:var(--fg);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}
.interaction-status{bottom:112px;margin:0;background:var(--surface-strong);color:var(--fg);border:1px solid var(--line);border-radius:12px;font-family:inherit;font-size:12px;line-height:1.5;box-shadow:var(--shadow)}
[data-controls=touch] .interaction-status{bottom:180px}

@media(max-width:480px){.masthead .lab-header-title,.masthead-rule{display:none}}
@media(max-width:1000px){
  .masthead .live-label{display:none}.masthead .theme-switch{margin-left:auto}
  .scene-footer{max-width:calc(50vw - 200px)}.scene-footer #look-help{font-size:10px}
}
@media(max-width:700px){
  .masthead{top:max(12px,env(safe-area-inset-top));left:12px;right:12px;height:58px;border-radius:20px;padding:9px 11px 9px 17px;gap:14px}
  .logo{font-size:17px}.masthead .lab-header-title{font-size:12px}.masthead .lab-header-title>span{display:none}
  .lab-readings{top:84px;left:12px;right:auto;max-width:calc(100vw - 150px);padding:11px 13px;border-radius:17px;gap:6px}
  .readings-label{font-size:9px}.lab-readings .circuit-status{font-size:11px}.lab-readings .meter-readout{font-size:13px}.lab-readings .circuit-warning{font-size:11px}
  .view-mode{top:84px;right:12px;padding:10px;max-width:126px;white-space:normal;line-height:1.5;gap:7px;font-size:8px;letter-spacing:0;border-radius:13px}
  #zoom-level{padding-left:7px;min-width:0}.save-badge{right:12px;top:145px;max-width:126px;font-size:10px}
  .grab-controls{right:12px;top:194px;max-width:200px;padding:10px 12px}
  .lab-toolbar{bottom:max(18px,env(safe-area-inset-bottom));padding:5px;border-radius:20px;gap:2px}
  .lab-toolbar button,.lab-toolbar .lab-help{padding:10px 14px;min-height:44px;font-size:12px;border-radius:15px}
  .lab-toolbar kbd{display:none}.scene-footer{display:none}
  .context-prompts{font-size:10px;bottom:88px;max-width:calc(100vw - 24px);padding:8px 12px}
  [data-controls=touch] .context-prompts{bottom:90px}
  #pause-menu{padding:12px}.pause-card{max-height:calc(100dvh - 24px);padding:24px;border-radius:25px}
  .pause-eyebrow{margin-bottom:25px}.pause-card h1{font-size:29px}.pause-card h2{font-size:27px}
  .pause-actions{grid-template-columns:minmax(0,1fr) 114px}.pause-actions button{padding:12px 14px;font-size:12px}
  .desk-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.pause-shortcuts{gap:9px 12px;font-size:9px}
  .project-save-row{gap:7px}.project-save-row button{padding:9px 11px;font-size:11px}.autosave-label{font-size:10px}
  .lab-nav{gap:4px 15px;font-size:11px}.control-tabs button{font-size:11px;padding:7px 8px;flex:1 1 auto}
  .control-field{font-size:12px;gap:10px}.control-field select{font-size:12px;max-width:54%}
  .control-category input:not([type=checkbox]){font-size:13px}.control-field>div{gap:5px}
  .binding-table{font-size:11px}.binding-table button{font-size:11px;padding:7px}.binding-table td{min-width:120px}
  .workbench-panel{padding:12px}.workbench-panel>div{padding:21px;max-height:calc(100dvh - 24px);border-radius:24px}
  .workbench-panel h2{font-size:24px}.workbench-panel dl{padding:12px;font-size:12px;gap:10px 13px;grid-template-columns:minmax(90px,1fr) minmax(0,1.2fr)}
  .workbench-panel p{font-size:12px}.workbench-panel input{font-size:16px}
  .transformer-inspector{bottom:20px;right:12px;width:280px;padding:20px;max-height:70dvh}
  .notebook-heading{top:84px;font-size:9px}.notebook-tools{bottom:16px}
}
@media(max-width:460px){
  .masthead .lab-header-title,.masthead-rule{display:none}.masthead .theme-switch{margin-left:auto}
  .pause-card{padding:22px 20px}.pause-card h1{font-size:28px}.pause-eyebrow{font-size:10px}.pause-eyebrow small{font-size:10px}
  .pause-actions{grid-template-columns:minmax(0,1fr) 105px}.pause-actions button{font-size:12px;padding:12px}
  .pause-copy{font-size:12px}.pause-appearance{margin-top:17px}.autosave-label{margin-left:0}
  .control-field{flex-wrap:wrap}.control-field>span{flex:1 1 45%}.control-field select{max-width:58%}
  .lab-readings{max-width:calc(100vw - 146px)}
}
@media(max-height:540px) and (min-width:701px){
  .masthead{display:flex;top:10px;height:50px}.masthead .lab-header-title>span{display:none}
  .lab-readings{top:72px}.view-mode{top:72px}.save-badge{top:115px}
  .lab-toolbar{bottom:14px}.context-prompts{bottom:82px}.scene-footer{display:none}
  #pause-menu{padding:12px}.pause-card{max-height:calc(100dvh - 24px);padding:24px 28px}.pause-eyebrow{display:flex;margin-bottom:20px}
}
@media(prefers-reduced-transparency:reduce){
  .masthead,.lab-toolbar,.lab-readings,.view-mode,.save-badge,.grab-controls,.book-controls,.notebook-tools,.notebook-heading,.transformer-inspector,.touch-controls{background:var(--surface-strong);backdrop-filter:none;-webkit-backdrop-filter:none}
}

/* A quiet pause screen; the less frequent controls stay one step away. */
#pause-menu{place-items:center}
.pause-card{width:min(580px,100%);max-width:780px;padding:30px;scrollbar-gutter:stable}
#pause-menu[data-view=settings] .pause-card{width:min(780px,100%)}
#pause-menu[data-view=settings] .pause-eyebrow{display:none}
.pause-eyebrow{margin-bottom:24px}
.pause-actions{grid-template-columns:1fr;gap:8px}
.pause-actions button{min-height:52px;font-size:14px}
.pause-actions .menu-secondary{background:transparent}
.menu-status:empty,.control-notice:empty{display:none}
.pause-disclosure{border-bottom:1px solid var(--line)}
.pause-disclosure:first-of-type{margin-top:18px;border-top:1px solid var(--line)}
.pause-disclosure>summary,.control-advanced>summary{display:flex;align-items:center;gap:12px;min-height:52px;cursor:pointer;list-style:none;font:500 13px/1.4 var(--lab-font);color:var(--fg)}
.pause-disclosure>summary::-webkit-details-marker,.control-advanced>summary::-webkit-details-marker{display:none}
.pause-disclosure>summary::after,.control-advanced>summary::after{content:'+';margin-left:auto;font-size:20px;font-weight:400;color:var(--muted)}
.pause-disclosure[open]>summary::after,.control-advanced[open]>summary::after{content:'−'}
.pause-disclosure>summary>span{font-size:11px;font-weight:400;color:var(--muted)}
.pause-disclosure #project-controls{border:0;padding:0 0 18px;margin:0}
.pause-disclosure .desk-actions{grid-template-columns:repeat(2,minmax(0,1fr));margin:0 0 8px}
.pause-disclosure .pause-shortcuts{border:0;padding:12px 0}
.pause-disclosure .lab-nav{margin:0 0 12px}
.pause-appearance{margin:18px 0}
.menu-exit{display:flex;align-items:center;justify-content:space-between;min-height:58px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:var(--field);font:600 17px/1.4 var(--lab-font);color:var(--fg);text-decoration:none}
.menu-exit:hover{background:var(--fg);color:var(--bg)}
.settings-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.settings-heading>span{font-size:11px;color:var(--muted)}
.settings-heading .settings-back{margin:0;padding:0}
#pause-settings h2{margin-bottom:16px}
.control-tabs{flex-wrap:nowrap;margin:0 0 12px;gap:3px}
.control-tabs button{font-size:12px;white-space:nowrap;padding:8px 10px}
.binding-instructions{margin:0 0 8px}
.control-category input[type=search]{width:100%;margin:0 0 12px;min-height:42px;padding:10px 13px}
.binding-table-wrap{max-height:clamp(180px,39dvh,380px);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent;border:1px solid var(--line);border-radius:13px;padding:0 14px}
.binding-group h3{position:sticky;top:0;z-index:1;background:var(--surface-strong);margin:0;padding:14px 0 8px;font:600 10px/1.5 var(--lab-font);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.binding-row{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:54px;border-bottom:1px solid var(--line)}
.binding-row:last-child{border-bottom:0}
.binding-action{font:13px/1.5 var(--lab-font);color:var(--fg);min-width:0}
.binding-action small{display:block;font-size:10px;color:var(--muted);max-width:240px}
.binding-keys{display:flex;gap:6px;align-items:center;flex-shrink:0}
#pause-menu .binding-key,.binding-fixed{display:inline-flex;align-items:center;justify-content:center;min-width:90px;max-width:155px;min-height:38px;border:1px solid var(--line);border-radius:8px;padding:7px 10px;font:500 12px/1.4 var(--lab-font);background:var(--field);color:var(--fg);overflow-wrap:anywhere;text-align:center}
#pause-menu .binding-key:hover{background:var(--fg);color:var(--bg);border-color:var(--fg)}
#pause-menu .binding-empty{color:var(--muted);font-weight:400;background:transparent;border-style:dashed}
.binding-fixed{background:transparent;color:var(--muted);border-color:transparent;cursor:default}
.binding-fixed::after{content:'fixed';font-size:9px;font-weight:400;margin-left:7px;opacity:.75}
.binding-fixed-note{padding:6px 0;font-size:11px!important}
.mouse-jobs{margin:18px 0 0;padding:15px;border:1px solid var(--line);border-radius:12px;font:12px/1.5 var(--lab-font)}
.mouse-jobs h3{font:600 11px var(--lab-font);margin:0 0 12px;color:var(--muted)}
.mouse-jobs dl{display:grid;grid-template-columns:100px 1fr;gap:10px;margin:0}.mouse-jobs dt{color:var(--muted)}.mouse-jobs dd{margin:0;color:var(--fg)}
.control-advanced{margin-top:12px;border-top:1px solid var(--line)}
.control-advanced>summary{font-size:11px;min-height:44px;color:var(--muted)}
.control-advanced>p{font-size:11px;color:var(--muted)}
.control-advanced .control-resets{margin:12px 0;gap:8px}
.control-notice{margin:10px 0 0}
#settings-save{margin-top:6px;font-size:11px}
.control-dialog{position:fixed;inset:0;z-index:110;display:grid;place-items:center;background:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:0;border-radius:0;padding:24px}
.control-dialog[hidden]{display:none}
.control-dialog-card{width:min(400px,100%);max-height:calc(100dvh - 48px);overflow:auto;background:var(--surface-strong);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);padding:28px;text-align:center}
.control-dialog-card h3{margin:5px 0 15px;font:600 26px/1.2 var(--lab-font);letter-spacing:-.7px;color:var(--fg)}
.control-dialog-card p{font:13px/1.6 var(--lab-font);color:var(--muted)}
.control-dialog-card .capture-action{margin:0 0 10px;font-size:12px;color:var(--fg)}
.capture-key{display:grid;place-items:center;width:76px;height:70px;margin:20px auto;border:1px solid var(--line);border-bottom-width:4px;border-radius:14px;background:var(--field);font-size:28px;color:var(--fg)}
.control-dialog-actions{display:flex;gap:8px;margin-top:24px}
.control-dialog-actions button{flex:1;min-height:44px;border:1px solid var(--line);border-radius:11px;padding:10px;background:var(--field);color:var(--fg);font:500 13px var(--lab-font)}
.control-dialog-actions button:last-child{background:var(--fg);color:var(--bg);border-color:var(--fg)}
.control-dialog-card>small{display:block;margin-top:16px;font-size:11px;color:var(--muted)}
#pause-menu :focus-visible{outline:2px solid var(--fg);outline-offset:3px}
@media(max-width:600px){
 .pause-card{padding:22px 20px}.pause-eyebrow{margin-bottom:20px}
 .pause-disclosure>summary>span{display:none}.menu-exit{min-height:56px}
 .settings-heading>span{font-size:10px}.control-tabs button{font-size:10px;padding:8px 6px}
 .binding-table-wrap{padding:0 10px;max-height:42dvh}.binding-row{gap:6px;min-height:64px}
 .binding-action{font-size:11px}.binding-keys{gap:4px}
 #pause-menu .binding-key,.binding-fixed{min-width:58px;max-width:95px;padding:7px 5px;font-size:10px}
 .binding-fixed{flex-direction:column}.binding-fixed::after{margin-left:0;font-size:8px}
 .control-dialog-card{padding:24px 20px}
}
