/* Studio is an instrument workspace: the selected signal owns the page. */
.lab-page{--studio-surface:#f8f9f5;--studio-inset:#e9eee7;--studio-quiet:#68756e}
.lab-page .lab-shell{max-width:1600px;padding:12px 24px 28px}
.lab-page .lab-heading{align-items:flex-start;gap:12px}
.lab-page .lab-heading h1{display:flex;align-items:baseline;gap:18px;margin:0 0 5px;font-family:"Space Grotesk",var(--sans);font-size:30px;font-weight:500;letter-spacing:-1.3px;line-height:1.2}
.lab-page .lab-heading h1 span{font-family:var(--sans);font-size:14px;letter-spacing:0;color:var(--muted);font-weight:400}
.lab-page #lab-record-status{margin:0;font-size:12px}
.lab-page .lab-heading>a{font-size:12px;min-height:44px;text-decoration:none;white-space:nowrap}
.lab-page .lab-views{margin:18px 0 0;padding:0;gap:22px;border-bottom:1px solid var(--line)}
.lab-page .lab-views button{position:relative;padding:10px 0 13px;border:0;border-radius:0;font-size:13px;color:var(--muted);background:none;min-height:44px}
.lab-page .lab-views button[aria-pressed=true]{background:none;color:var(--green)}
.lab-page .lab-views button[aria-pressed=true]:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--green)}
.lab-page .studio-data{border:0;border-radius:0;background:transparent;padding:0;margin:0}
.studio-data :is(button,input,select){min-height:44px;font-size:12px;line-height:1.45;border-radius:6px}
.studio-data button{padding:9px 13px;border:1px solid var(--line);background:transparent;color:var(--green);font-weight:500}
.studio-data button:hover:not(:disabled){background:var(--studio-inset);border-color:#9aafa1}
.studio-data button:active:not(:disabled){transform:translateY(1px)}
.studio-data button.studio-primary{background:var(--green);border-color:var(--green);color:#fff}
.studio-data button.studio-primary:hover:not(:disabled){background:#23483f;border-color:#23483f}
.studio-data button:disabled{cursor:not-allowed;opacity:.44}
.studio-data input:not([type=checkbox]),.studio-data select{background:var(--studio-surface);border:1px solid #ccd5ca;padding:8px 10px;width:100%;min-width:0}
.studio-data input::placeholder{color:#7a857d}
.studio-data input[type=checkbox]{appearance:auto;width:18px;min-height:18px;margin:0;accent-color:var(--green);flex:none}
.studio-data p{margin:6px 0;font-size:12px;line-height:1.75}
.studio-data h2{font-size:15px;line-height:1.5;font-weight:500;margin:0}
.studio-data h3{font-size:16px;line-height:1.6;font-weight:500;margin:0}
.studio-notice{margin:12px 0 0;padding:10px 13px;border-left:2px solid #75917d;background:#e7eee5;color:var(--green);font-size:12px;overflow-wrap:anywhere}
.studio-notice.is-error{background:#f1e8e0;border-color:#9f654c;color:#874c3b}
.studio-commandbar,.studio-toolbar,.studio-source-state,.studio-device-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.studio-commandbar{justify-content:space-between;padding:13px 0}
.studio-source-state{font-size:12px;color:var(--muted);gap:12px}
.studio-badge{padding:3px 8px;border-radius:3px;background:#dfe8dc;color:#365743;font-size:12px;white-space:nowrap}
.studio-toolbar button{min-height:44px;padding:7px 11px;border-color:transparent}
.studio-toolbar button:first-child{background:var(--studio-surface);border-color:var(--line)}
.studio-workspace{display:grid;grid-template-columns:210px minmax(0,1fr);min-height:500px;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--studio-surface)}
.studio-records{border-right:1px solid var(--line);padding:18px 12px 20px;background:#edf0e9;min-width:0}
.studio-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}
.studio-panel-head>span{font-size:12px;color:var(--muted)}
.studio-panel-head button{min-height:44px;padding:4px 8px;border-color:transparent}
.studio-records>.studio-panel-head{padding-inline:8px}
.studio-data button.studio-record{display:block;width:100%;text-align:left;border:1px solid transparent;padding:11px 10px;border-radius:5px;background:transparent;min-height:68px;color:var(--ink);margin:0 0 5px}
.studio-record strong,.studio-record span{display:block;overflow-wrap:anywhere}
.studio-record strong{font-size:12px;font-weight:500;line-height:1.65}
.studio-record span{font-size:12px;line-height:1.8;color:var(--muted);margin-top:2px}
.studio-data button.studio-record[aria-pressed=true]{background:#f8faf5;border-color:#bbcbb9}
.studio-data details.studio-export{padding:12px 8px 0;border-top:1px solid var(--line);margin:16px 0 0}
.studio-data summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;list-style:none;min-height:44px;padding:10px 0;font-size:12px;font-weight:500;color:var(--ink)}
.studio-data summary:after{content:"+";font-family:var(--sans);font-size:17px;color:var(--muted);font-weight:400}
.studio-data details[open]>summary:after{content:"−"}
.studio-export summary{font-size:12px}
.studio-export p{font-size:12px;color:var(--muted)}
#studio-export-links{display:flex;flex-wrap:wrap;gap:4px 12px}
#studio-export-links a{min-height:44px;display:inline-flex;align-items:center;font-size:12px;text-decoration:none}
.studio-inspector{min-width:0;padding:22px 26px 26px}
.studio-signal-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px}
.studio-signal-heading h2{font-size:18px;letter-spacing:-.02em;overflow-wrap:anywhere}
.studio-signal-heading p{font-size:12px;color:var(--muted);margin:4px 0 0}
.studio-capture{display:flex;align-items:center;gap:8px;flex-shrink:0}
.studio-capture>span{font-size:12px;color:var(--muted);white-space:nowrap}
.studio-capture button{min-height:44px;padding:6px 10px;font-size:12px}
.studio-capture .is-recording{color:#a14f44}
.studio-capture .is-recording:before{content:"";display:inline-block;width:5px;height:5px;background:#a14f44;border-radius:50%;vertical-align:middle;margin-right:5px}
.studio-chart-tabs{display:flex;gap:16px;align-items:center;flex-wrap:wrap;border-top:1px solid #dbe1d6;border-bottom:1px solid #dbe1d6;margin-bottom:8px}
.studio-chart-tabs button{padding:9px 0;border:0;border-radius:0;min-height:44px;font-size:12px;background:transparent}
.studio-chart-tabs button[aria-selected=true]{box-shadow:0 1px var(--green);color:var(--green)}
#studio-processing-label{font-size:12px;color:var(--muted);margin-left:auto}
.studio-waveforms{min-height:170px}
.studio-waveform{margin:0;border-bottom:1px solid #e1e6db;min-width:0}
.studio-waveform figcaption{display:flex;align-items:center;justify-content:space-between;padding:9px 0 0;gap:12px;font-size:12px;color:var(--muted)}
.studio-waveform figcaption strong{font-weight:500;color:var(--ink);font-size:12px}
.studio-waveform canvas{display:block;width:100%;height:126px;min-width:0}
#studio-spectra .studio-waveform canvas{height:156px}
.studio-chart-empty{min-height:170px;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--muted)}
.studio-help,.studio-data p.studio-help{color:var(--muted);font-size:12px;line-height:1.8}
.studio-data #studio-preview-note{margin:9px 0 14px;font-size:12px;color:var(--muted)}
.studio-table-scroll{overflow:auto;max-width:100%;margin:13px 0 0}
.studio-table-scroll table{width:100%;border-collapse:collapse;font-size:12px;text-align:left;white-space:nowrap}
.studio-table-scroll th,.studio-table-scroll td{padding:8px 10px;border-bottom:1px solid var(--line)}
.studio-table-scroll th{font-weight:500}
.studio-settings,.studio-markers,.studio-identity{border-top:1px solid var(--line)}
.studio-settings>summary>span:last-child{font-size:12px;color:var(--muted);font-weight:400;margin-left:auto}
.studio-settings>form{margin:0 0 12px}
.studio-data fieldset{border:0;margin:0 0 10px;padding:0}
.studio-data legend{font-size:12px;color:var(--muted);margin-bottom:7px}
.studio-channel-picker{display:flex;align-items:center;flex-wrap:wrap;gap:5px 16px}
.studio-channel-picker label{display:flex;align-items:center;gap:7px;min-height:44px;font-size:12px;cursor:pointer}
.studio-form-inline{display:flex;align-items:flex-end;gap:8px 12px;flex-wrap:wrap}
.studio-form-inline>label{display:flex;flex-direction:column;gap:5px;flex:1;min-width:100px;max-width:180px;font-size:12px;color:var(--muted)}
.studio-form-inline>button{margin-top:14px;flex:none}
.studio-markers #studio-marker-list{list-style:none;margin:10px 0 16px;padding:0;max-height:180px;overflow:auto}
.studio-markers li{display:flex;gap:18px;padding:6px 0;font-size:12px;border-bottom:1px solid #e2e6df;overflow-wrap:anywhere}
.studio-markers time{min-width:54px;font-variant-numeric:tabular-nums;color:var(--muted)}
.studio-nur-entry{padding:23px 0;border-top:1px solid var(--line);margin-top:4px}
.studio-nur-entry p{max-width:650px;color:var(--muted);font-size:12px}
.studio-task-buttons{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:14px 0 20px}
#studio-goal-form>label{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}
.studio-goal-field{display:flex;align-items:stretch;gap:8px;max-width:720px}
.studio-goal-field input{flex:1;min-width:0}
.studio-goal-field button{flex:none}
.studio-identity pre{background:#edf0e9;padding:14px;max-height:340px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.8}
.studio-identity p{font-size:12px;color:var(--muted)}
.studio-fold-panel{padding:18px 20px;background:var(--studio-surface);border:1px solid var(--line);border-radius:6px;margin:0 0 14px}
.studio-import{border-top:1px solid var(--line);margin:18px 0 0;padding:18px 0 0;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.studio-file-button{display:inline-flex;align-items:center;padding:9px 13px;border:1px solid var(--line);border-radius:5px;min-height:44px;cursor:pointer;font-size:12px;color:var(--green);font-weight:500}
.studio-file-button:focus-within{outline:2px solid var(--green);outline-offset:3px}
.studio-import>p{flex:1;min-width:200px;max-width:480px;color:var(--muted);font-size:12px}
.studio-import>label:not(.studio-file-button){display:flex;flex-direction:column;gap:4px;font-size:12px;max-width:170px;color:var(--muted)}
.studio-device-actions{margin:12px 0}
.studio-device-readings{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0 0;border-top:1px solid var(--line);padding:14px 0 0}
.studio-device-readings div{min-width:0}
.studio-device-readings dt{font-size:12px;color:var(--muted)}
.studio-device-readings dd{margin:5px 0 0;font-size:12px;overflow-wrap:anywhere}
.studio-pairing{padding:13px 16px;margin:12px 0;border-left:2px solid #86a086;background:#e7eee3;font-size:12px}
.studio-pairing pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}
@media(min-width:1440px){.studio-workspace{grid-template-columns:230px minmax(0,1fr)}.studio-inspector{padding:26px 36px 30px}.studio-waveform canvas{height:142px}}
@media(max-width:1000px){.studio-workspace{grid-template-columns:175px minmax(0,1fr)}.studio-inspector{padding:18px}.studio-records{padding:16px 8px}.studio-signal-heading{flex-wrap:wrap}.studio-capture{margin-top:0}.studio-device-readings{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.lab-page .lab-shell{padding:10px 14px 24px}.lab-page .lab-heading h1{font-size:27px;gap:0;display:block}.lab-page .lab-heading h1 span{display:none}.lab-page .lab-heading>a{font-size:12px}.lab-page #lab-record-status{font-size:12px;max-width:250px}.lab-page .lab-views{gap:0;margin-top:12px;justify-content:space-between}.lab-page .lab-views button{font-size:12px;flex:none;padding-inline:0}.studio-commandbar{align-items:flex-start;gap:9px;padding:11px 0}.studio-source-state{width:100%;gap:8px;font-size:12px}.studio-toolbar{width:100%;justify-content:flex-start;gap:5px}.studio-toolbar button{font-size:12px;min-height:44px}.studio-workspace{display:block;border-radius:6px}.studio-records{border-right:0;border-bottom:1px solid var(--line);padding:10px 12px}.studio-records>.studio-panel-head{padding:0;margin:0 0 5px}.studio-records>.studio-panel-head h2{font-size:12px}#studio-record-list{display:flex;overflow-x:auto;gap:5px;scroll-snap-type:x proximity}.studio-data button.studio-record{min-width:165px;width:165px;flex-shrink:0;margin:0;min-height:58px;padding:7px 9px;scroll-snap-align:start}.studio-record strong{font-size:12px}.studio-record span{font-size:12px}.studio-data details.studio-export{margin:7px 0 0;padding:2px 0 0}.studio-export summary{min-height:44px;padding:5px 0;font-size:12px}.studio-inspector{padding:16px 12px 12px}.studio-signal-heading{gap:10px;margin-bottom:12px}.studio-signal-heading h2{font-size:16px}.studio-signal-heading p{font-size:12px}.studio-capture{width:100%;justify-content:space-between}.studio-capture button{min-height:44px}.studio-chart-tabs{gap:18px}.studio-chart-tabs button{font-size:12px;min-height:44px}#studio-processing-label{width:100%;margin:0 0 5px;font-size:12px}.studio-waveform canvas{height:116px}.studio-data summary{font-size:12px;min-height:44px;gap:6px}.studio-settings>summary>span:last-child{font-size:12px}.studio-data .studio-form-inline{gap:8px}.studio-form-inline>label{min-width:95px;max-width:none}.studio-form-inline>button{flex:1 0 100%;width:100%;min-height:44px;white-space:normal;margin-top:0}.studio-task-buttons{display:grid;grid-template-columns:1fr 1fr;gap:7px}.studio-task-buttons>button:first-child{grid-column:1/-1}.studio-task-buttons button{padding:10px 9px;font-size:12px;min-height:44px}.studio-nur-entry{padding:17px 0}.studio-nur-entry h3{font-size:14px}.studio-nur-entry p{font-size:12px}.studio-goal-field{gap:6px}.studio-goal-field input{font-size:12px}.studio-goal-field button{padding:8px 10px;font-size:12px}.studio-fold-panel{padding:14px 12px}.studio-fold-panel .studio-form-inline>button{flex:1 0 100%}.studio-import{gap:10px}.studio-import>p{min-width:160px;margin:0}.studio-import>label:not(.studio-file-button){max-width:none;flex:1;min-width:100px}.studio-device-actions{display:grid;grid-template-columns:1fr 1fr}.studio-device-actions button{min-height:44px;text-align:left;font-size:12px}.studio-device-readings{gap:10px}.studio-device-readings dd{font-size:12px}.studio-data .studio-help{font-size:12px}.studio-identity p{font-size:12px}}
@media(prefers-reduced-motion:no-preference){.studio-data button{transition:background-color 160ms ease,border-color 160ms ease,transform 120ms ease}.studio-fold-panel{animation:studio-panel-in 180ms ease both}@keyframes studio-panel-in{from{opacity:.7;transform:translateY(-3px)}to{opacity:1;transform:none}}}

/* Keep small-screen controls readable without enlarging the workspace heading. */
.studio-data :is(button,a,input,select,summary):focus-visible,.lab-page .lab-views button:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.studio-data button{touch-action:manipulation}
.studio-live{border-top:1px solid var(--line);margin-top:16px}
.studio-live summary{flex-wrap:wrap}
#studio-live-state,.studio-band-unit{font-size:12px;color:var(--muted);font-weight:400}
.studio-live .studio-waveforms:empty{min-height:0}
.studio-device-command-status p{overflow-wrap:anywhere}
#studio-draft-note{color:#785d43}
.studio-data [hidden]{display:none!important}
.studio-data .studio-form-inline>button{flex-shrink:0}
@media(max-width:700px){
  .studio-data input:not([type=checkbox]),.studio-data select{font-size:16px}
  .studio-data .studio-channel-picker label{min-height:44px}
  .studio-data .studio-form-inline>label{min-width:100px;flex:1 1 calc(50% - 8px)}
  .studio-data .studio-form-inline>button{flex:1 0 100%;width:100%;margin-top:0}
  .studio-data .studio-goal-field{flex-wrap:wrap}
  .studio-goal-field input{flex:1 0 100%;width:100%}
  .studio-goal-field button{min-height:44px;width:100%}
  .studio-data #studio-export-links a{min-height:44px;min-width:44px;justify-content:center}
  .studio-signal-heading>div:first-child{width:100%}
  .studio-task-buttons button{font-size:12px}
  .studio-chart-tabs{gap:14px}
}

/* Lab owns data/results; the existing Nur conversation docks beside them. */
.lab-page{--lab-nur-width:390px}
.lab-page .content-layout,.lab-page .content-layout.has-context,.lab-page .content-layout.has-task-workspace{display:block;max-width:1600px}
.lab-page[data-lab-view=data] .content-layout{display:block}
.lab-page .lab-context-banner{display:none!important}
.lab-page .conversation{display:none!important}
.lab-page[data-lab-view=data] .task-workspace{display:none!important}
.lab-page.lab-nur-open .conversation{display:flex!important;flex-direction:column;position:fixed;z-index:35;top:112px;right:0;bottom:0;width:var(--lab-nur-width);max-width:none;height:calc(100dvh - 112px);min-height:0;padding:0 20px;border-left:1px solid var(--line);background:var(--paper);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.lab-page.lab-nur-open :is(#lab-shell,#lab-result-empty,.content-layout){margin-right:var(--lab-nur-width);max-width:none}
.lab-page.lab-nur-open .conversation .messages{flex:none;padding-top:16px}
.lab-page.lab-nur-open .conversation .composer{margin-top:auto;position:sticky;bottom:0;padding:12px 0;z-index:2}
.lab-page .lab-nur-heading{position:sticky;top:0;z-index:3;background:var(--paper);display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0 12px;border-bottom:1px solid var(--line);flex-shrink:0}
.lab-nur-heading h2{margin:0;font:500 20px/1.3 'Space Grotesk',var(--sans);letter-spacing:-.03em}
.lab-nur-heading p{margin:4px 0 0;font-size:12px;color:var(--muted)}
.lab-nur-heading[hidden],.lab-nur-backdrop[hidden],#lab-nur-toggle[hidden]{display:none!important}
.lab-page .lab-views{justify-content:flex-start;gap:24px}
.lab-page .lab-views button{flex:none}
.lab-page .content-layout .task-workspace{border-top:1px solid var(--line);border-left:0}
.lab-nur-backdrop{position:fixed;inset:0;z-index:49;border:0;background:rgb(28 44 38 / 22%)}
.lab-page.lab-nur-modal{overflow:hidden}
.lab-page .studio-task-buttons{display:flex;flex-wrap:wrap;margin-bottom:0}
.lab-page .studio-task-buttons>button{grid-column:auto;min-height:44px}
@media(min-width:901px){.lab-page.lab-nur-open .studio-workspace{grid-template-columns:165px minmax(0,1fr)}.lab-page.lab-nur-open .studio-inspector{padding:18px}}
@media(max-width:900px){
 .lab-page.lab-nur-open :is(#lab-shell,#lab-result-empty,.content-layout){margin-right:0}
 .lab-page.lab-nur-open .conversation{top:0;bottom:0;right:0;width:min(440px,100%);height:100dvh;max-height:100dvh;padding:0 16px;z-index:50;border-left:1px solid var(--line)}
 .lab-page .lab-nur-heading{padding-top:max(14px,env(safe-area-inset-top))}
 .lab-page.lab-nur-open .conversation .composer{padding-bottom:max(12px,env(safe-area-inset-bottom))}
 .lab-page.lab-nur-open .message-content{font-size:14px}
}
@media(prefers-reduced-motion:no-preference){.lab-page.lab-nur-open .conversation{animation:studio-panel-in 160ms ease both}}

@media(max-width:700px){.lab-page .page-actions .control-label{display:none}.lab-page .page-actions .icon-control{min-width:44px;min-height:44px}.lab-page .page-actions{gap:6px}}

/* A folded local playground, separate from Nur's analysis and device controls. */
.lab-playground{margin-top:18px;border:1px solid var(--line);border-radius:6px;background:var(--studio-surface)}
.lab-playground>summary{padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;min-height:56px;font-size:14px;list-style:none}
.lab-playground>summary::-webkit-details-marker{display:none}
.lab-playground>summary>span:last-child{font-size:12px;color:var(--muted)}
.lab-playground>summary::after{content:'+';margin-left:auto}.lab-playground[open]>summary::after{content:'−'}
.lab-play-body{padding:0 20px 20px}.lab-play-body>p{font-size:13px;max-width:76ch;line-height:1.8;color:var(--muted)}
.lab-play-controls{display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,1fr);gap:24px;align-items:end;margin:20px 0 12px}
.lab-play-controls label{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;color:var(--ink)}
.lab-play-controls select{width:100%;min-height:44px}.lab-play-controls output{margin-left:auto;font-size:12px;color:var(--green)}
.lab-play-controls input[type=range]{width:100%;padding:0;min-height:44px;accent-color:var(--green)}
.lab-play-pipeline{display:flex;flex-wrap:wrap;gap:10px 24px;margin:18px 0;padding:0;list-style:none;color:var(--green);font-size:12px}
.lab-play-pipeline li+li::before{content:'→';margin-right:16px;color:var(--muted)}
#lab-play-canvas{display:block;width:100%;height:150px;border-block:1px solid var(--line)}
.lab-play-readout{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px;margin:8px 0 18px;font-variant-numeric:tabular-nums}
.lab-play-track{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:0;list-style:none;margin:18px 0}
.lab-play-track li{display:grid;place-items:center;min-height:52px;border:1px solid var(--line);border-radius:4px;font-size:13px;color:var(--muted)}
.lab-play-track li.is-complete{background:var(--sage);color:var(--green)}
.lab-play-track li[aria-current]{background:var(--green);border-color:var(--green);color:var(--paper);font-weight:600}
.lab-play-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.lab-play-actions button{min-height:44px}.lab-play-actions>span{margin-left:auto;font-size:13px;color:var(--green)}
.lab-play-status{min-height:24px}
.lab-playground :is(button,input,select,summary):focus-visible{outline:2px solid var(--green);outline-offset:3px}
@media(max-width:700px){.lab-playground>summary{padding:14px 12px;flex-wrap:wrap;gap:4px 8px}.lab-playground>summary>span:last-child{order:3;width:100%}.lab-play-body{padding:0 12px 16px}.lab-play-controls{grid-template-columns:minmax(0,1fr);gap:12px}.lab-play-track{gap:5px}.lab-play-pipeline{gap:8px 12px}.lab-play-pipeline li+li::before{margin-right:8px}.lab-play-controls select{font-size:16px}}
@media(prefers-reduced-motion:no-preference){
 @keyframes lab-view-in{from{opacity:.6;transform:translateY(3px)}to{opacity:1;transform:none}}
 .lab-page[data-lab-view=data] #lab-data,.lab-page[data-lab-view=result] .task-workspace{animation:lab-view-in 180ms ease both}
 .lab-play-track li{transition:background-color 160ms ease,color 160ms ease}
}
.lab-play-actions button,.lab-play-controls select{border:1px solid var(--line);border-radius:5px;background:var(--studio-surface);color:var(--green);font:inherit;min-height:44px;padding:9px 13px}
.lab-play-actions button{font-size:13px;touch-action:manipulation}
.lab-play-actions .studio-primary{background:var(--green);border-color:var(--green);color:#fff}
.lab-play-controls select{font-size:13px}
.lab-page[data-lab-view=result] #lab-playground{display:none}
@media(max-width:700px){.lab-play-controls select{font-size:16px}.lab-play-readout{flex-wrap:wrap;overflow-wrap:anywhere}}
@media(hover:hover) and (pointer:fine){.lab-play-actions button:hover{background:var(--sage)}.lab-play-actions .studio-primary:hover{background:#21433e}}

/* Complete reading controls stay visible; specialist panels have named entry points. */
.studio-tools{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 16px}
.studio-tools button{text-align:left;min-width:0;padding:12px 14px;background:var(--studio-surface)}
.studio-tools strong,.studio-tools span{display:block;overflow-wrap:anywhere}
.studio-tools strong{font-size:13px;font-weight:500}.studio-tools span{font-size:12px;color:var(--muted);margin-top:4px;font-weight:400}
.studio-tools button[aria-pressed=true]{border-color:#86a18e;background:#e7eee4}
.studio-data :is(#studio-chart-time,#studio-processing-section,.studio-fold-panel){scroll-margin-top:125px}
.studio-reader-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:16px 0 10px}
.studio-reader-heading h3{font-size:14px}.studio-reader-scope{font-size:12px;color:var(--muted)}
.studio-reader-controls,.studio-reader-settings{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px;margin:0 0 10px}
.studio-reader-field{display:flex;flex-direction:column;gap:5px;min-width:90px;max-width:200px;flex:0 1 auto;font-size:12px;color:var(--muted)}
.studio-reader-field input{max-width:180px}.studio-reader-controls button{white-space:nowrap}
.studio-reader-position{display:grid;grid-template-columns:minmax(80px,1fr) auto;align-items:center;gap:12px;margin:0 0 10px}
.studio-data .studio-reader-position input[type=range]{padding:0;min-width:0;width:100%;border:0;background:none;accent-color:var(--green)}
.studio-reader-page{font-size:12px;font-variant-numeric:tabular-nums;color:var(--muted);overflow-wrap:anywhere}
.studio-reader-check{display:inline-flex;align-items:center;gap:7px;min-height:44px;font-size:12px;cursor:pointer}
.studio-reader-channel-options{display:flex;flex-wrap:wrap;gap:4px 16px}
.studio-reader-channels{margin:14px 0 0!important}.studio-reader-channels legend{margin:0}
.studio-reader-status{color:var(--muted)}.studio-reader-status.is-error{color:#874c3b}
.studio-reader-figure{margin:0;min-width:0;border-bottom:1px solid var(--line)}
.studio-reader-caption{font-size:12px;color:var(--ink);padding:12px 0 0}
.studio-reader-canvas{display:block;min-width:0;max-width:100%;touch-action:pan-y;cursor:crosshair;border-radius:3px}
.studio-reader-readout{min-height:44px;overflow-wrap:anywhere;background:#edf1e9;padding:10px 12px;font-variant-numeric:tabular-nums}
.studio-display-preview{border-top:1px solid var(--line);margin-top:16px}
.studio-processing-section{border-top:1px solid var(--line);padding:14px 0 8px}.studio-processing-section h3{font-size:14px}
#studio-processing-form{margin-top:14px}#studio-processing-status{color:var(--muted)}
.studio-device-section{border-top:1px solid var(--line);padding:18px 0 4px;margin-top:16px}
.studio-device-section h3{font-size:14px;margin:0 0 9px}.studio-device-section fieldset{margin:14px 0}
.studio-device-channels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-width:920px}
.studio-device-channel{display:flex;align-items:center;gap:8px;padding:6px 9px;border:1px solid var(--line);border-radius:5px;min-width:0}
.studio-device-channel>label:first-child{display:flex;align-items:center;gap:6px;font-size:12px;min-height:44px;flex-shrink:0}
.studio-device-channel .studio-gain-label{flex:1;min-width:0}.studio-data .studio-gain-label select{min-width:60px;padding-inline:6px}
#studio-device-config-readback,#studio-lsl-readback{overflow-wrap:anywhere}
.studio-device-command-status{max-height:220px;overflow:auto;border-left:2px solid #a8bba8;padding:0 12px;margin:14px 0 8px}
.studio-device-command-status p{padding:7px 0;border-bottom:1px solid var(--line);margin:0}
@media(max-width:1050px){.studio-tools{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-device-channels{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-reader-position{grid-template-columns:minmax(0,1fr)}.studio-reader-page{margin-top:-8px}}
@media(max-width:700px){
 .studio-tools{gap:6px;margin-bottom:12px}.studio-tools button{padding:10px;min-height:74px}.studio-tools span{font-size:12px;line-height:1.6}
 .studio-data :is(#studio-chart-time,#studio-processing-section,.studio-fold-panel){scroll-margin-top:90px}
 .studio-reader-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.studio-reader-controls>.studio-reader-field{grid-column:1/3;max-width:none}.studio-reader-controls>button{padding:8px 6px;font-size:12px;white-space:normal}.studio-reader-controls>button:nth-child(2),.studio-reader-controls>button:nth-child(3){grid-column:span 1}
 .studio-reader-controls>button:last-child{grid-column:span 2}.studio-reader-settings{gap:6px 12px}.studio-reader-settings>.studio-reader-field{flex:1;max-width:none}.studio-reader-settings .studio-reader-check{width:100%}
 .studio-reader-heading{padding-top:12px}.studio-reader-canvas{height:154px!important}.studio-reader-page{font-size:12px}
 .studio-device-channel{padding:3px 6px;gap:5px}.studio-device-channel>label:first-child{gap:4px}.studio-device-channels{gap:6px}.studio-device-channel .studio-gain-label select{font-size:14px;min-width:54px}
 .studio-device-section .studio-form-inline>label{max-width:none}.studio-device-command-status{padding-left:10px}
}
@media(prefers-reduced-motion:reduce){.studio-data{scroll-behavior:auto}.studio-data button{transition:none;transform:none!important}.studio-fold-panel{animation:none}}

/* Saved-record controls: compact, close to the data, never a second task bar. */
.studio-scope{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 0 16px}
.studio-scope>summary{min-height:44px;padding:10px 0;font-size:12px;color:var(--muted)}
.studio-scope-body{display:grid;grid-template-columns:1fr 1fr;gap:16px 28px;padding:0 0 14px}
.studio-scope-body h2{font-size:13px;font-weight:500;margin:0 0 6px}
.studio-scope-body p{font-size:12px;line-height:1.8;color:var(--muted);margin:0;max-width:65ch}
.studio-data .studio-capture-note{font-size:12px;line-height:1.8;color:var(--green);border-left:2px solid #92a88d;padding-left:9px;margin:8px 0 0;max-width:60ch}
.studio-record .studio-record-scope{color:var(--green);font-size:12px;margin-top:4px}
.studio-reader-playback{display:flex;align-items:flex-end;gap:8px 12px;flex-wrap:wrap;padding:0 0 12px;margin:0 0 12px;border-bottom:1px solid var(--line)}
.studio-reader-playback>.studio-reader-field{min-width:100px}
.studio-reader-playback button{min-height:44px;min-width:88px}
.studio-reader-clock{flex:1;min-width:180px;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums;line-height:1.7}
.studio-reader-amplitude-tools{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap;min-width:0}
.studio-reader-amplitude-tools .studio-reader-field{min-width:100px;max-width:180px}
.studio-reader-amplitude-fields{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap;min-width:0}
.studio-reader-amplitude-tools input{width:100%;min-width:0}
.studio-reader-amplitude-note{font-size:12px;color:var(--muted);line-height:1.8;margin:0 0 10px;overflow-wrap:anywhere}
.studio-markers li{align-items:center;flex-wrap:wrap;gap:6px 14px;padding:8px 0}
.studio-markers time{flex:0 1 145px}
.studio-marker-description{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;flex:1;min-width:90px;overflow-wrap:anywhere}
.studio-marker-code{color:var(--green);font-variant-numeric:tabular-nums}
.studio-data button.studio-marker-focus{min-height:44px;flex:none;font-size:12px;padding:6px 10px}
@media(max-width:700px){
 .studio-scope-body{grid-template-columns:minmax(0,1fr);gap:14px}
 .studio-reader-playback{gap:8px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .studio-reader-playback>.studio-reader-field{min-width:0;max-width:none}
 .studio-reader-clock{grid-column:1/-1;min-width:0;margin:0}
 .studio-reader-playback select,.studio-reader-amplitude-tools input{max-width:100%;font-size:16px}
 .studio-reader-amplitude-tools{width:100%;gap:8px}
 .studio-reader-amplitude-fields{width:100%;gap:8px}
 .studio-reader-amplitude-tools .studio-reader-field{flex:1 1 100px;max-width:none}
 .studio-reader-amplitude-tools>button{flex:1 0 100%;min-height:44px}
 .studio-markers li{gap:6px 10px}
 .studio-markers time{flex-basis:100%;min-width:0}
 .studio-marker-description{min-width:0}
}
