/* Studio UI 02 — original Lemon Juice assets + newsletter spin.
   Branding-only revision of Studio UI 01 over harness-0.1.2. No display-stage styles. */
:root {
  color-scheme: light;
  --bg:#efefee; --surface:#fafaf9; --panel:#fff; --panel-2:#e5e5e4;
  --text:#242423; --muted:#646463; --line:#c3c3c2; --soft-line:#d6d6d5;
  --graphite:#282827; --ok:#434342; --warn:#675432; --bad:#8b4138;
  --accent-text:var(--text); --radius:14px;
  --font: -apple-system,BlinkMacSystemFont,"Helvetica Neue","Segoe UI",Arial,sans-serif;
  --mono: ui-monospace,"SF Mono",Menlo,Consolas,monospace;
}
* {box-sizing:border-box;}
html {scroll-behavior:smooth;}
body {margin:0;background:var(--bg);color:var(--text);font:16px/1.5 var(--font);-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;}
button,input,textarea {font:inherit;color:inherit;}
a {color:inherit;text-underline-offset:4px;}
button,a,input,textarea,summary {-webkit-tap-highlight-color:transparent;}
button {cursor:pointer;}
button:disabled,fieldset:disabled button,fieldset:disabled input,fieldset:disabled textarea {cursor:not-allowed;}
img {max-width:100%;height:auto;}
.hidden,[hidden] {display:none!important;}
.wrap {width:calc(100% - 96px);max-width:1192px;margin-inline:auto;}
p,h1,h2,h3 {margin:0;}
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible {outline:3px solid var(--text);outline-offset:5px;}
.skip-link {position:fixed;left:16px;top:-100px;z-index:2000;padding:14px 20px;background:white;}
.skip-link:focus {top:16px;}
.sr-only {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.eyebrow {font:500 10px/1.5 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);}
.small {font-size:13px;line-height:1.5;color:var(--muted);}
.mono {font-family:var(--mono);}
.masthead {min-height:106px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);}
.brand {display:flex;align-items:center;gap:16px;text-decoration:none;}
.lemon-disc {width:56px;height:56px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
/* Original newsletter motion from assets/amsp.css (AMSP Draft 04.64c):
   16s clockwise; 4s reverse on hover/focus. The artwork is the unchanged
   assets/lemon-tight.png from that same archive. */
.lemon-artwork {display:block;width:48px;height:auto;object-fit:contain;animation:amsp-lemon-spin 16s linear infinite;transform-origin:50% 50%;}
.brand:hover .lemon-artwork,.brand:focus-visible .lemon-artwork {animation:amsp-lemon-reverse 4s linear infinite;filter:brightness(1.05);}
.brand-name {display:block;min-width:0;line-height:1.1;}
.brand-logo {display:block;width:142px;max-width:100%;height:auto;object-fit:contain;}
.brand-caption {display:block;font:10px/1.5 var(--mono);letter-spacing:.035em;color:var(--muted);margin-top:5px;}
.masthead-tools {display:flex;gap:25px;align-items:center;}
.nav-link {min-height:44px;display:inline-flex;align-items:center;gap:14px;font-size:12px;text-decoration:none;}
.nav-link:hover {text-decoration:underline;}
.motion-toggle {min-height:44px;padding:8px 10px;display:flex;align-items:center;gap:9px;border:0;border-radius:5px;background:transparent;color:var(--muted);font:10px var(--mono);}
.motion-toggle:hover {background:var(--panel-2);color:var(--text);}
.motion-icon {font:15px var(--mono);}
.motion-toggle:disabled {opacity:.7;}
.is-paused .lemon-artwork,.is-paused .brand:hover .lemon-artwork,.is-paused .brand:focus-visible .lemon-artwork {animation-play-state:paused;}
@keyframes amsp-lemon-spin {to {transform:rotate(360deg);}}
@keyframes amsp-lemon-reverse {to {transform:rotate(-360deg);}}
.hero {padding:66px 0 56px;display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center;}
.lab-title {font-size:clamp(48px,6.9vw,92px);line-height:.98;font-weight:620;letter-spacing:-.063em;margin-top:22px;}
.title-dot {color:#999998;}
.hero-intro {font-size:25px;line-height:1.25;letter-spacing:-.03em;margin-top:28px;}
.hero-description {color:var(--muted);font-size:15px;max-width:39ch;margin-top:14px;}
.edition {display:flex;align-items:center;gap:14px;font:10px var(--mono);letter-spacing:.04em;margin-top:28px;}
.edition>span {border-left:1px solid var(--line);padding-left:14px;color:var(--muted);}
.hero-instrument {background:#dfdfde;border:1px solid #c9c9c8;border-radius:18px;padding:18px;box-shadow:0 22px 40px -27px #28282766, inset 0 1px 0 #fffffea0;}
.instrument-topline,.instrument-bottom {display:flex;justify-content:space-between;align-items:center;gap:12px;font:9px var(--mono);color:#575756;letter-spacing:.08em;}
.instrument-topline {padding:0 3px 15px;}
.hardware-dot {width:6px;height:6px;background:#595958;border-radius:50%;box-shadow:0 0 0 3px #d0d0cf;}
.instrument-stage {background:#30302f;border:1px solid #1a1a19;color:#ededec;border-radius:8px;min-height:328px;padding:26px 30px;display:flex;flex-direction:column;justify-content:center;position:relative;}
.instrument-stage p {font-size:clamp(40px,4.5vw,61px);font-weight:500;line-height:.98;letter-spacing:-.04em;}
.screen-tick {position:absolute;right:20px;top:16px;font:14px var(--mono);color:#989897;}
.stage-small {font:8px var(--mono);letter-spacing:.11em;color:#b1b1b0;margin-top:27px;}
.instrument-bottom {padding:17px 3px 0;font-size:8px;}
.start-section {padding-top:35px;border-top:1px solid var(--line);scroll-margin-top:24px;}
.section-heading {display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:25px;}
.section-heading h2 {font-size:24px;font-weight:500;letter-spacing:-.04em;}
.section-heading p {font-size:13px;color:var(--muted);}
.start-grid {display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.start-card {padding:26px 28px;border:1px solid var(--soft-line);background:var(--surface);border-radius:12px;}
.start-card h3 {font-size:23px;font-weight:540;letter-spacing:-.04em;margin:14px 0 10px;}
.start-card>p:not(.eyebrow) {font-size:14px;color:var(--muted);max-width:48ch;}
.start-actions {display:flex;flex-wrap:wrap;gap:9px;margin:25px 0 18px;}
.btn {appearance:none;min-height:52px;padding:12px 20px;border-radius:8px;border:1px solid #c0c0bf;background:var(--panel-2);font-size:13px;font-weight:570;line-height:1.3;display:inline-flex;align-items:center;justify-content:center;gap:18px;text-decoration:none;box-shadow:inset 0 1px 0 #fffffe90;transition:background .12s,transform .12s;}
.btn:hover:not(:disabled):not([aria-disabled=true]) {background:#dbdbda;}
.btn:active:not(:disabled):not([aria-disabled=true]) {transform:translateY(1px);}
.btn.primary {background:var(--graphite);color:#fbfbfa;border-color:var(--graphite);box-shadow:inset 0 1px 0 #fffffe24;}
.btn.primary:hover {background:#444443;}
.btn.secondary {background:#efefee;}
.btn.blackout {background:#191918;border-color:#191918;color:white;box-shadow:inset 0 1px 0 #fffffe30;}
.btn.blackout:hover:not(:disabled) {background:#393938;}
.btn.restore {background:#d9d9d8;color:#262625;border-color:#b2b2b1;}
.btn:disabled, .btn[aria-disabled=true] {color:#777776;background:#e8e8e7;border-color:#d9d9d8;box-shadow:none;opacity:.8;}
.btn[aria-disabled=true] {cursor:not-allowed;}
.setup-note {font:12px/1.55 var(--font);color:var(--muted);max-width:none!important;}
.setup-note[data-ready=false] {border-left:2px solid #959594;padding-left:12px;}
.instruction-stack {margin-top:34px;border-top:1px solid var(--line);}
.instructions {border-bottom:1px solid var(--line);}
.instructions>summary {list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:70px;padding:18px 0;font-size:16px;font-weight:540;letter-spacing:-.02em;}
.instructions>summary::-webkit-details-marker {display:none;}
.instructions>summary>span:first-child {display:flex;align-items:center;gap:24px;}
.section-no {font:10px var(--mono);letter-spacing:.04em;color:var(--muted);min-width:20px;}
.disclosure-word {display:flex;align-items:center;gap:18px;font:10px var(--mono);letter-spacing:.02em;color:var(--muted);}
.disclosure-icon {position:relative;width:14px;height:14px;}
.disclosure-icon:before,.disclosure-icon:after {content:'';position:absolute;background:currentColor;left:0;top:6px;width:14px;height:1px;}
.disclosure-icon:after {transform:rotate(90deg);transition:transform .15s;}
.instructions[open]>summary .disclosure-icon:after {transform:rotate(0deg);}
.when-open {display:none;}
.instructions[open]>summary .when-open {display:inline;}
.instructions[open]>summary .when-closed {display:none;}
.instructions[open]>summary {padding-bottom:20px;}
.instruction-body {padding:4px 44px 28px;max-width:100%;font-size:14px;color:var(--muted);}
.instruction-body strong {color:var(--text);font-weight:600;}
.instruction-columns {display:grid;grid-template-columns:1fr 1fr;gap:50px;}
.instruction-columns h3 {font-size:17px;letter-spacing:-.02em;color:var(--text);margin-bottom:6px;}
ol {padding-left:20px;margin:16px 0;}
li {padding-left:5px;margin-bottom:8px;}
.instruction-body a {text-decoration-thickness:1px;}
.instruction-note {margin-top:20px;padding:18px 20px;background:#e4e4e3;border-radius:6px;}
.instruction-body.compact p+p {margin-top:13px;}
.end-note {font-size:12px;color:var(--muted);margin:23px 0 0;}
.studio-footer {background:#2b2b2a;color:#ebebea;margin-top:70px;padding:42px 0 22px;}
.footer-inner {display:grid;grid-template-columns:.78fr 1.4fr;gap:58px;}
.studio-footer .eyebrow {color:#babab9;margin-bottom:15px;}
.footer-wordmark {display:flex;align-items:center;gap:20px;width:fit-content;max-width:100%;text-decoration:none;line-height:1.1;min-height:44px;}
.footer-logo {display:block;width:clamp(160px,18vw,240px);max-width:calc(100% - 46px);height:auto;object-fit:contain;}
.footer-wordmark span {font-size:26px;font-weight:400;}
.footer-wordmark:hover span {text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px;}
.footer-note {font-size:12px;color:#b4b4b3;margin-top:15px;}
.footer-columns {display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.footer-columns nav a {display:flex;justify-content:space-between;gap:12px;min-height:34px;align-items:center;text-decoration:none;font-size:12px;}
.footer-columns nav a:hover {text-decoration:underline;}
.feedback-block p {font-size:15px;line-height:1.45;}
.feedback-link {display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:44px;margin-top:5px;font-size:13px;}
.feedback-block .email-address {font-size:10px;color:#bdbdbc;overflow-wrap:anywhere;}
.footer-release {border-top:1px solid #535352;margin-top:30px;padding-top:15px;color:#b4b4b3;font:9px/1.6 var(--mono);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;}
.studio-footer a:focus-visible {outline-color:#f2f2f1;}
/* Remote: the engine still owns status, preview and enabled states. */
.remote {padding-top:39px;}
.remote-heading {display:flex;justify-content:space-between;gap:28px;align-items:flex-end;}
.remote-title {font-size:clamp(42px,5.7vw,74px);margin-top:14px;line-height:1.04;}
.remote-mode {flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:12px;padding-bottom:5px;}
.badge {display:inline-block;border:1px solid #acacab;border-radius:4px;background:#e7e7e6;color:#424241;font:10px/1.4 var(--mono);padding:6px 9px;text-transform:uppercase;letter-spacing:.035em;}
.badge.local {background:#dfdfde;}
.remote-intro {font-size:17px;color:var(--muted);margin-top:16px;}
.remote>.setup-note {margin-top:15px;}
.remote-instructions {margin-top:26px;margin-bottom:25px;}
.remote-instructions .instructions>summary {min-height:58px;font-size:14px;padding-block:15px;}
.local-banner {background:#dadad9;color:#434342;text-align:center;font:10px/1.5 var(--mono);padding:9px 20px;letter-spacing:.02em;}
.status {display:grid;grid-template-columns:1fr 1fr 1fr;border:1px solid var(--line);border-radius:9px;background:#e8e8e7;margin-bottom:20px;overflow:hidden;}
.pill {min-width:0;padding:12px 16px;}
.pill+.pill {border-left:1px solid var(--line);}
.pill b {display:block;font:9px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:5px;}
.pill span {font-size:12px;line-height:1.4;display:block;overflow-wrap:anywhere;}
.pill[data-tone=ok] span:before {content:'● ';color:var(--ok);font-size:10px;}
.pill[data-tone=warn] span:before {content:'◐ ';color:var(--warn);font-size:11px;}
.pill[data-tone=bad] span:before {content:'! ';color:var(--bad);font-weight:700;}
.notice {padding:14px 18px;border-left:3px solid var(--warn);background:#e6e6e5;border-radius:5px;font-size:14px;margin-bottom:20px;}
.notice.bad {border-left-color:var(--bad);}
.console-grid {display:grid;grid-template-columns:1fr 1.05fr;gap:26px;align-items:start;}
.preview-panel,.edit-panel {background:var(--surface);border:1px solid var(--soft-line);border-radius:12px;padding:24px;min-width:0;}
.panel-heading {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px;}
.panel-heading .small {font-size:10px;}
.preview {border-radius:6px;border:1px solid #929291;aspect-ratio:16/9;display:flex;flex-direction:column;justify-content:center;padding:6% 7%;overflow:hidden;position:relative;background:#343433;color:#efefee;}
.preview .h {font-weight:650;font-size:clamp(20px,2.6vw,32px);line-height:1.06;letter-spacing:-.035em;overflow-wrap:anywhere;}
.preview .s {font-size:clamp(11px,1.1vw,15px);opacity:.88;margin-top:9px;overflow-wrap:anywhere;}
.preview .bo {position:absolute;inset:0;background:#000;color:#969695;display:flex;align-items:center;justify-content:center;font:10px var(--mono);letter-spacing:.12em;}
.caption {font:10px/1.6 var(--mono);color:var(--muted);margin-top:12px;}
.actions {display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:26px 0 15px;}
.actions .btn {min-height:64px;font-size:16px;gap:18px;}
.button-symbol {font:18px var(--mono);}
fieldset {min-width:0;border:0;margin:0;padding:0;}
.field {margin-bottom:22px;}
label,.label {display:flex;align-items:baseline;justify-content:space-between;font-size:12px;font-weight:560;margin-bottom:8px;}
.count {font:10px var(--mono);color:var(--muted);font-weight:400;}
input[type=text],textarea {width:100%;font-size:17px;padding:13px 14px;background:#f2f2f1;border:1px solid #cbcbca;border-radius:7px;box-shadow:inset 0 1px 2px #28282710;}
input::placeholder,textarea::placeholder {color:#7a7a79;font-size:15px;}
textarea {resize:vertical;min-height:80px;line-height:1.45;}
.colors {display:grid;grid-template-columns:1fr 1fr;gap:22px;padding-top:19px;border-top:1px solid var(--line);margin-top:7px;}
.color-control {min-width:0;}
.color-row {display:flex;align-items:center;gap:10px;min-height:52px;}
input[type=color] {width:46px;height:46px;background:none;border:1px solid #929291;padding:3px;border-radius:7px;flex:none;cursor:pointer;}
input[type=color]::-webkit-color-swatch-wrapper {padding:0;}
input[type=color]::-webkit-color-swatch {border:0;border-radius:3px;}
input[type=color]::-moz-color-swatch {border:0;border-radius:3px;}
.hex {font:11px var(--mono);color:var(--muted);}
.color-picker-label {display:none;}
.gray-control {margin-top:18px;}
.control-label-row {display:flex;justify-content:space-between;gap:8px;align-items:baseline;}
.control-label-row label {font-size:11px;font-weight:500;margin:0;}
.control-label-row output {font:10px var(--mono);color:var(--muted);}
.tactile-slider {appearance:none;-webkit-appearance:none;width:100%;height:44px;display:block;background:transparent;margin:0;cursor:pointer;accent-color:#3a3a39;}
.tactile-slider::-webkit-slider-runnable-track {height:5px;border-radius:9px;background:#c5c5c4;border:1px solid #939392;}
.tactile-slider::-moz-range-track {height:4px;border-radius:9px;background:#c5c5c4;border:1px solid #939392;}
.tactile-slider::-webkit-slider-thumb {appearance:none;-webkit-appearance:none;width:23px;height:23px;border-radius:50%;margin-top:-10px;border:4px solid #f2f2f1;background:#393938;box-shadow:0 0 0 1px #919190,0 2px 4px #1f1f1e26;}
.tactile-slider::-moz-range-thumb {width:15px;height:15px;border-radius:50%;border:4px solid #f2f2f1;background:#393938;box-shadow:0 0 0 1px #919190;}
fieldset:disabled .tactile-slider {opacity:.4;}
.range-endpoints {display:flex;justify-content:space-between;color:#727271;font:9px var(--mono);margin-top:-2px;}
#grayHelp {font-size:11px;margin-top:17px;}
.swatch-options {margin-top:17px;}
.swatch-options summary {min-height:44px;list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted);border-top:1px solid var(--line);}
.swatch-options summary::-webkit-details-marker {display:none;}
.swatches {display:flex;flex-wrap:wrap;gap:8px;padding:3px 0;}
.swatch {width:44px;height:44px;border-radius:7px;border:1px solid #919190;padding:0;}
.contrast {font:10px/1.5 var(--mono);color:var(--muted);margin-top:16px;}
.contrast.low {color:var(--warn);}
fieldset:disabled input,fieldset:disabled textarea {opacity:.6;}
.session-disclosure {margin-top:25px;border-top:1px solid var(--line);}
.session-disclosure summary {font-size:12px;min-height:52px;}
.foot {display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;font:11px/1.6 var(--mono);padding-inline:0;}
.foot button {border:0;background:transparent;text-decoration:underline;min-height:44px;font-size:12px;}
.pair {display:grid;grid-template-columns:1fr 1fr;gap:36px;padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:12px;}
.pair h2 {font-size:28px;font-weight:540;letter-spacing:-.04em;margin:8px 0 12px;}
.pair p {font-size:14px;color:var(--muted);}
.pair form {display:flex;gap:10px;}
.pair input {min-width:0;font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;}
.pair form .btn {flex:none;}
#pairMsg {margin-top:13px;min-height:1em;}
.pair .small {margin-top:14px;font-size:12px;}
@media(min-width:1050px){.preview-panel{position:sticky;top:22px;}}
@media(max-width:1000px){
  .wrap {width:calc(100% - 56px);}
  .hero {gap:30px;}
  .hero-instrument {padding:14px;}
  .instrument-stage {min-height:285px;padding:22px;}
  .start-card {padding:23px;}
  .start-actions {flex-direction:column;}
  .btn {justify-content:space-between;}
  .console-grid {grid-template-columns:1fr;max-width:720px;margin-inline:auto;}
  .actions .btn {justify-content:center;}
  .preview .h {font-size:36px;}
  .preview .s {font-size:16px;}
  .footer-inner {gap:35px;grid-template-columns:.75fr 1.4fr;}
  .footer-columns {gap:22px;grid-template-columns:1fr;}
  .footer-logo {width:180px;}
  .pair {grid-template-columns:1fr;gap:20px;}
}
@media(max-width:600px){
  .wrap {width:calc(100% - 36px);}
  .masthead {min-height:87px;gap:14px;}
  .brand {gap:10px;}
  .lemon-disc {width:39px;height:48px;}
  .lemon-artwork {width:35px;}
  .brand-logo {width:112px;}
  .brand-caption {font-size:8px;}
  .masthead-tools {gap:4px;}
  .motion-toggle {width:44px;padding:10px;justify-content:center;}
  .motion-label {display:none;}
  .nav-link {font-size:10px;gap:6px;}
  .hero {display:block;padding:38px 0 33px;}
  .hero .lab-title {font-size:clamp(52px,13.5vw,76px);margin-top:20px;}
  .hero-intro {font-size:22px;margin-top:24px;}
  .hero-intro br {display:block;}
  .hero-intro br:after {content:' ';}
  .hero-description {font-size:14px;max-width:40ch;}
  .edition {margin-top:21px;}
  .hero-instrument {margin-top:35px;border-radius:13px;}
  .instrument-stage {min-height:252px;padding:25px;}
  .instrument-stage p {font-size:49px;}
  .section-heading {display:block;margin-bottom:20px;}
  .section-heading h2 {font-size:23px;}
  .section-heading p {margin-top:5px;}
  .start-section {padding-top:27px;}
  .start-grid {grid-template-columns:1fr;gap:14px;}
  .start-card {padding:22px;}
  .start-actions {margin-top:21px;}
  .instructions>summary {font-size:15px;min-height:65px;}
  .instructions>summary>span:first-child {gap:14px;}
  .disclosure-word {gap:12px;}
  .disclosure-word .when-open,.disclosure-word .when-closed {display:none!important;}
  .instruction-body {padding:5px 0 23px;font-size:14px;}
  .instruction-columns {grid-template-columns:1fr;gap:25px;}
  .instruction-note {padding:15px;}
  .studio-footer {margin-top:43px;padding-top:32px;}
  .footer-inner {grid-template-columns:1fr;gap:33px;}
  .footer-logo {width:218px;}
  .footer-columns {grid-template-columns:1fr;gap:27px;}
  .footer-columns nav a {min-height:44px;font-size:14px;}
  .footer-columns .eyebrow {margin-bottom:10px;}
  .footer-release {font-size:9px;gap:7px;}
  .remote {padding-top:27px;}
  .remote-heading {display:block;}
  .remote-title {font-size:clamp(37px,9.4vw,56px);max-width:10ch;line-height:1.02;}
  .remote-mode {flex-direction:row;justify-content:space-between;align-items:center;margin-top:22px;}
  .remote-intro {font-size:14px;margin-top:9px;}
  .remote-instructions {margin-top:21px;margin-bottom:20px;}
  .local-banner {font-size:9px;padding:9px 14px;}
  .status {margin-bottom:16px;}
  .pill {padding:10px 9px;}
  .pill span {font-size:11px;}
  .pill b {font-size:9px;}
  .preview-panel,.edit-panel {padding:19px;border-radius:10px;}
  .console-grid {gap:16px;}
  .panel-heading {margin-bottom:17px;}
  .panel-heading .small {max-width:14ch;text-align:right;}
  .preview .h {font-size:clamp(21px,6.2vw,31px);}
  .preview .s {font-size:12px;}
  .actions {margin-top:20px;gap:10px;}
  .actions .btn {min-height:57px;font-size:14px;padding:12px;gap:11px;}
  .colors {gap:16px;}
  .color-row {flex-wrap:wrap;gap:5px 9px;}
  .hex {font-size:10px;}
  .control-label-row {align-items:start;flex-direction:column;gap:4px;}
  .control-label-row output {font-size:10px;}
  .pair {padding:22px;}
  .pair form {flex-direction:column;}
  .pair .btn {justify-content:center;}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto;}
 .lemon-artwork,.brand:hover .lemon-artwork,.brand:focus-visible .lemon-artwork{animation:none!important;}
 .btn,.disclosure-icon:after{transition:none;}
}
@media(forced-colors:active){
 .btn,.pill,.preview,.start-card {border:1px solid CanvasText;}
 .tactile-slider {forced-color-adjust:auto;appearance:auto;}
}

/* Keep the skip link truly hidden until keyboard focus, including full-page captures. */
.skip-link:not(:focus) {width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}

/* Studio UI 03 — navigation, functional color study, larger typography, clear status.
   Only the interface is styled here. The fullscreen stage and protocol are unchanged. */
.studio-nav {display:flex;gap:25px;align-items:center;font-size:12px;}
.elsewhere-menu {position:relative;z-index:20;}
.elsewhere-menu>summary {list-style:none;min-height:48px;display:flex;gap:18px;align-items:center;cursor:pointer;}
.elsewhere-menu>summary::-webkit-details-marker {display:none;}
.elsewhere-panel {position:absolute;right:0;top:100%;width:272px;padding:12px;border:1px solid var(--line);background:#f8f8f6;border-radius:8px;box-shadow:0 16px 40px #20202018;}
.elsewhere-panel a {display:flex;align-items:center;min-height:44px;padding:8px 12px;text-decoration:none;border-radius:4px;font-size:13px;}
.elsewhere-panel a:hover {background:var(--panel-2);}
.hero {grid-template-columns:1.16fr 1fr;gap:42px;padding:50px 0;align-items:center;}
.hero .lab-title {margin-top:18px;letter-spacing:-.07em;}
.title-garage {display:block;font-size:clamp(88px,9.7vw,144px);line-height:.88;}
.title-screen {display:block;font-size:clamp(58px,6.5vw,96px);line-height:1.02;white-space:nowrap;}
.hero-instrument {min-width:0;}
.instrument-topline h2 {font:inherit;text-transform:uppercase;color:#343433;}
.instrument-topline>span {font-size:8px;letter-spacing:.05em;}
.instrument-stage {min-height:280px;}
.instrument-stage p {overflow-wrap:anywhere;white-space:pre-wrap;}
.instrument-stage .stage-small {color:inherit;opacity:.75;}
.quick-controls {padding:18px 2px 4px;}
.quick-controls input[type=text] {font-size:16px;padding:10px 12px;background:#f3f3f1;}
.quick-controls label {font-size:11px;}
.quick-controls label .small {font-size:10px;}
.quick-palettes,.room-palettes {display:flex;flex-wrap:wrap;gap:6px;margin-top:12px;}
.palette-button {display:flex;gap:7px;align-items:center;border:1px solid transparent;border-radius:7px;background:transparent;padding:5px;min-height:46px;font:10px var(--mono);}
.palette-button:hover {background:#eeeeec;}
.palette-button[aria-pressed=true] {border-color:#727371;background:#fafaf7;}
.palette-dot {display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid #5555;border-radius:4px;font:10px var(--font);}
.palette-set {padding-top:5px;margin-bottom:20px;}
.palette-set>.small {font-size:10px;margin-top:6px;}
.palette-set .palette-button {font-size:11px;}
.palette-button:disabled {opacity:.45;}
.instrument-bottom {align-items:flex-start;letter-spacing:0;line-height:1.6;font-size:9px;flex-wrap:wrap;gap:7px;}
.instrument-bottom a {min-height:36px;display:inline-flex;align-items:flex-start;text-underline-offset:3px;}
.motion-preference {margin-top:20px;padding-top:12px;border-top:1px solid var(--line);}
.motion-preference label {display:flex;align-items:center;justify-content:flex-start;gap:12px;min-height:44px;width:fit-content;margin:0;font-size:13px;cursor:pointer;}
.motion-preference input {width:22px;height:22px;accent-color:#3a3a38;}
.motion-preference .small {display:block;font-size:11px;}
.remote-home {display:inline-flex;font-size:12px;min-height:36px;align-items:center;margin-top:12px;}
.remote-launch {display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:20px;}
.display-launch {background:#dce6dc;border-color:#a7b7a8;color:#233e2a;}
.display-launch:hover {background:#ceddce;}
.screen-signal {font:11px/1.5 var(--mono);color:var(--muted);display:flex;align-items:center;gap:10px;max-width:48ch;}
.signal-light {display:block;flex:none;width:8px;height:8px;border-radius:50%;background:#818280;box-shadow:0 0 0 4px #dedfdb;}
.screen-signal[data-signal=applied] .signal-light {background:#2b7547;box-shadow:0 0 0 4px #d5e4d7;}
.screen-signal[data-signal=waiting] .signal-light {background:#8b6b31;box-shadow:0 0 0 4px #eee3ce;}
.screen-signal[data-signal=unavailable] .signal-light {background:#8b4138;box-shadow:0 0 0 4px #eddeda;}
#pScreen[data-tone=ok] span:before {color:#267042;}
.tester-details {margin-top:0;}
@media(max-width:1000px){
 .hero {gap:25px;}.title-garage{font-size:clamp(77px,10.3vw,125px);}.title-screen{font-size:clamp(51px,6.7vw,82px);}
 .palette-button {font-size:9px;gap:5px;}.instrument-stage {padding:23px;}
}
@media(max-width:700px){
 .hero{display:block;}.hero-instrument{margin-top:32px;max-width:560px;}.title-garage{font-size:clamp(89px,18vw,134px);}.title-screen{font-size:clamp(60px,12vw,89px);}
 .studio-nav{gap:14px;}.palette-button{font-size:10px;}.remote-title{font-size:clamp(40px,9.4vw,62px);}
}
@media(max-width:390px){
 .studio-nav{gap:10px;}.studio-nav .nav-link{display:none;}.title-garage{font-size:27.2vw;}.title-screen{font-size:18.3vw;}
 .elsewhere-panel{width:260px;}.remote-launch{gap:14px;}.screen-signal{font-size:10px;}
}
