:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:#233e34;background:#f1f4ee;font-synthesis:none;--green:#27654d;--ink:#233e34;--muted:#819087;--line:#e2e8df;--cyan:#339caa;--purple:#8c79b5}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.4;cursor:not-allowed}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible{outline:2px solid #3e8060}[hidden]{display:none!important}
.navrail{position:fixed;inset:0 auto 0 0;width:88px;background:#f9faf5;border-right:1px solid var(--line);display:flex;align-items:center;flex-direction:column;z-index:20}.logo{display:grid;place-items:center;margin:23px 0 28px;width:43px;height:43px;background:#2c614c;border-radius:14px}.logo svg{width:30px;fill:#e3edcf;stroke:#345c45;stroke-width:2}.navrail nav{width:100%;padding:0 9px;display:flex;flex-direction:column;gap:10px}.navrail nav button{border:0;background:none;display:flex;flex-direction:column;gap:7px;align-items:center;padding:13px 0;border-radius:12px;font-size:10px;color:#78857b;white-space:nowrap}.navrail nav button span{font-size:25px;line-height:1}.navrail nav button.active{background:#e1ebdc;color:#2a624a}.navrail nav button:hover{background:#eaf0e4}.legacy-link{margin-top:auto;padding:20px 4px;font-size:9px;color:#849082}.rail-version{font-size:9px;letter-spacing:2px;margin:0 0 23px;color:#a0a99a}
.app{margin-left:88px}.topbar{height:81px;display:flex;align-items:center;padding:0 35px;border-bottom:1px solid var(--line);background:rgba(250,251,247,.85)}.brand{font-size:22px;font-weight:700;letter-spacing:2px;display:flex;align-items:center;gap:14px}.brand small{font-size:10px;letter-spacing:2px;color:#7f8c7c;font-weight:500}.top-divider{height:20px;width:1px;background:#d4ddcf;margin:0 22px}.top-title{font-size:13px;color:#65786a}.top-actions{display:flex;gap:13px;align-items:center;margin-left:auto}.mode-badge{font-size:11px;background:#edf2e8;border:1px solid #dce6d4;padding:7px 10px;border-radius:30px;color:#57734e;display:flex;align-items:center;gap:6px}.mode-badge i{width:5px;height:5px;border-radius:50%;background:#83a25e}select{background:#fff;border:1px solid #dce4d6;border-radius:6px;padding:7px 10px;font-size:11px;color:#52644f}.icon-btn{display:grid;place-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;min-width:33px;height:33px;font-size:20px}
main{max-width:1800px;padding:28px 35px 0;margin:auto}.heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:20px}.eyebrow{font-size:9px;font-weight:600;letter-spacing:2px;color:#81917d;margin:0 0 9px}h1{font-size:28px;letter-spacing:-.7px;margin:0;font-weight:600}h1 span{color:#8aa46f}h2{font-size:15px;margin:0;font-weight:600}.heading p:not(.eyebrow){font-size:12px;color:#80907f;margin:11px 0 0}.dimension{text-align:right;display:flex;flex-direction:column;gap:6px}.dimension span{font-size:10px;color:#899481}.dimension strong{font-size:20px;font-weight:500;font-variant-numeric:tabular-nums}.dimension em{font-size:12px;color:#afbaa8;padding:0 5px;font-style:normal}.dimension small{font-size:10px}
.metric-row{display:grid;grid-template-columns:repeat(4,1fr);background:#fcfdf8;border:1px solid var(--line);border-radius:13px;margin-bottom:22px;padding:20px 0}.metric-row>div{display:flex;align-items:center;gap:13px;padding:0 24px;border-right:1px solid var(--line)}.metric-row>div:last-child{border:0}.metric-row p{font-size:11px;color:#697d6b;margin:0;position:relative;flex:1}.metric-row small{font-size:8px;color:#a1ab99;margin-left:6px}.metric-row strong{display:block;font-size:25px;font-weight:500;letter-spacing:-.7px;color:var(--ink);margin-top:6px}.metric-row strong em{font-size:10px;color:#91a087;margin-left:5px;font-style:normal}.metric-symbol{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-size:24px}.mint{background:#e6efde;color:#6c8c5b}.sky{background:#e5f0ee;color:#588e91}.violet{background:#edeaf4;color:#917aaf}.sand{background:#f2eddf;color:#a88e52;font-size:12px}
.main-grid{display:grid;grid-template-columns:minmax(0,1fr) 335px;gap:21px;align-items:start}.scene-card{background:#fcfdf8;border:1px solid var(--line);border-radius:14px;overflow:hidden;min-width:0}.scene-toolbar{display:flex;align-items:center;justify-content:space-between;padding:15px 19px;border-bottom:1px solid var(--line)}.scene-toolbar>div{display:flex;align-items:center;gap:9px}.scene-toolbar strong{font-size:12px;font-weight:600}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#6d9b68;margin-right:2px}.small-tag{display:inline-block;font-size:9px;font-weight:400;color:#8a9583;padding:4px 7px;background:#f0f3e9;border-radius:5px;white-space:nowrap}.scene-stage{position:relative;height:535px;background:#eaf0e6;overflow:hidden}#scene{width:100%;height:100%}#scene canvas{display:block;touch-action:none}#scene-loading{position:absolute;inset:0;display:grid;place-items:center;background:#eaf0e6;color:#7c9274;font-size:13px;pointer-events:none}.scene-overlay{position:absolute;top:16px;display:flex;gap:7px;pointer-events:none}.scene-overlay.left{left:16px;flex-direction:column}.route-chip{background:#fbfdf7e3;box-shadow:0 1px 10px #35513505;border-radius:6px;font-size:10px;padding:7px 10px;color:#75866b;display:flex;align-items:center;gap:6px}.route-chip i{width:5px;height:5px;border-radius:50%}.route-chip.cyan i{background:var(--cyan)}.route-chip.purple i{background:var(--purple)}.scene-overlay.right{right:16px;flex-direction:column;text-align:right;font-size:9px;color:#91a187;line-height:1.6}.scene-bottom-note{position:absolute;bottom:13px;left:18px;right:18px;display:flex;justify-content:space-between;gap:12px;color:#8c9b83;font-size:9px;pointer-events:none}.scene-controls{display:flex;justify-content:space-between;align-items:center;padding:13px 15px;gap:10px}.segmented{background:#eef2e7;border-radius:7px;display:flex;padding:3px;gap:2px}.segmented button{border:0;background:transparent;border-radius:5px;padding:6px 12px;font-size:10px;color:#829078}.segmented button.active{background:white;box-shadow:0 1px 3px #1e402a12;color:#3e694e}.layer-controls{display:flex;gap:3px;flex-wrap:wrap}.layer-controls button{border:0;background:transparent;padding:6px 7px;border-radius:5px;font-size:10px;color:#8c9782}.layer-controls button.active{color:#35634c;background:#edf3e7}.layer-explanation{border-top:1px solid #edf0e8;font-size:10px;padding:12px 17px;line-height:1.6;color:#84937a;min-height:40px}
.inspector{display:flex;flex-direction:column;gap:18px}.panel{background:#fcfdf8;border:1px solid var(--line);border-radius:13px;padding:20px}.panel-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.panel-title .eyebrow{font-size:8px;margin-bottom:7px}.scan-path{display:flex;align-items:center;justify-content:space-between;margin:26px 0 35px}.scan-node{position:relative;width:42px;height:42px;border:1px solid;border-radius:12px;display:grid;place-items:center;font-size:14px;font-weight:600}.scan-node.cyan{color:#3793a0;border-color:#acd4d5;background:#edf6f2}.scan-node.purple{color:#8a75ab;border-color:#d6c9e5;background:#f4f0f8}.scan-node small,.plant-node small{position:absolute;top:49px;width:100px;text-align:center;left:50%;transform:translateX(-50%);font-size:8px;white-space:nowrap;font-weight:400;color:#899580}.plant-node{position:relative;width:35px;height:35px;background:#e5eddc;border-radius:50%;display:grid;place-items:center;font-size:13px;color:#769365}.plant-node small{top:45px}.path-line{height:1px;flex:1;border-top:1px dashed #c9d8c0;margin:0 9px}.scan-info{display:flex;justify-content:space-between;font-size:10px;color:#8c987e}.progress{height:4px;border-radius:4px;background:#e9eee1;margin:9px 0 17px;overflow:hidden}.progress i{height:100%;display:block;width:0;background:#659577;border-radius:4px;transition:width .2s}.scan-buttons{display:flex;gap:7px}.btn{border:1px solid var(--line);border-radius:7px;background:#fff;padding:9px 13px;font-size:11px;white-space:nowrap}.btn.primary{background:#2e634d;border-color:#2e634d;color:white}.btn.primary:hover{background:#244f3e}.scan-buttons .primary{flex:1;text-align:left;display:flex;justify-content:space-between}.scan-buttons .icon-btn{height:auto;min-width:32px;font-size:17px}.scan-settings{display:flex;gap:12px;margin-top:17px}.scan-settings label{font-size:9px;color:#87937e;display:flex;align-items:center;gap:6px}.scan-settings select{font-size:9px;padding:5px}.fine-print{font-size:10px;line-height:1.7;color:#929d86;margin:13px 0 0}.detail-panel{padding-bottom:15px}.detail-panel .panel-title{margin-bottom:12px}.detail-desc{font-size:11px;line-height:1.8;color:#7c8d75;margin:0 0 13px}.value-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}.value-grid>div{padding:9px 0;border-bottom:1px solid #e9eee2}.value-grid span{font-size:9px;color:#8b987e;display:block;margin-bottom:6px}.value-grid strong{font-size:14px;font-weight:500}.value-grid em{font-size:9px;color:#8a9781;font-style:normal}.detail-link{display:block;border:0;background:none;padding:13px 0 0;color:#477454;font-size:10px}.detail-empty{padding:16px;border-radius:8px;background:#f1f4e9;color:#8b967f;font-size:11px;line-height:1.7}
.context-panel{margin:22px 0}.overview-strip{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:12px;background:#f9fbf5;padding:20px;gap:28px}.overview-strip>div{display:flex;gap:13px}.overview-strip .num{font-size:26px;color:#b6c5a5;font-weight:300}.overview-strip h3{font-size:12px;margin:2px 0 6px}.overview-strip p{font-size:10px;color:#8c9982;margin:0;line-height:1.7}.bottom-grid{display:grid;grid-template-columns:1.8fr 1fr;gap:20px}.data-flow{display:flex;justify-content:space-between;align-items:center;gap:15px}.data-flow div{display:flex;flex-direction:column;gap:7px}.data-flow span{font-size:9px;color:#95a886;letter-spacing:1px}.data-flow strong{font-size:12px;font-weight:500}.data-flow small{font-size:9px;color:#929f85}.data-flow b{font-size:15px;color:#bac7ae;font-weight:400}.event-list{list-style:none;padding:0;margin:0;max-height:120px;overflow:auto}.event-list li{display:flex;gap:12px;font-size:10px;line-height:1.7;margin-bottom:8px;color:#7a8a72}.event-list time{font-size:9px;color:#a0aa96;white-space:nowrap}footer{display:flex;justify-content:space-between;color:#9aa68e;padding:23px 0;font-size:9px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#244b3e;color:white;border-radius:9px;padding:13px 22px;font-size:12px;max-width:80%;z-index:100;opacity:0;pointer-events:none;transition:opacity .2s}#toast.visible{opacity:1}
.section-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.section-head h2{font-size:19px}.section-head p{color:#87957e;font-size:11px;margin:8px 0 0}.section-actions{display:flex;gap:8px}.archive-list{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.plant-card{border:1px solid #e0e7d7;border-radius:11px;padding:14px;text-align:left;background:#fafcf6;min-width:0}.plant-card.selected{border-color:#69916a;box-shadow:0 0 0 2px #7b9e6620}.plant-card:hover{background:#f0f5e8}.plant-card .plant-id{display:flex;justify-content:space-between;align-items:center;font-size:12px;margin-bottom:10px}.plant-card small{font-size:9px;color:#8e9d80}.plant-card svg{display:block;width:100%;height:85px}.plant-card p{font-size:10px;color:#8d9b80;margin:8px 0 0}.plant-card .stamp{font-size:9px;color:#6e9165}.archive-table-wrap{margin-top:20px;overflow:auto;max-height:350px}table{border-collapse:collapse;width:100%;font-size:11px;text-align:left}th{font-weight:500;color:#7e8f72;background:#f3f6ed;padding:12px;white-space:nowrap}td{padding:12px;border-bottom:1px solid #eaf0e2;color:#718566;white-space:nowrap}td button{background:none;border:0;color:#2d7252;font-size:11px}.empty-state{padding:35px;text-align:center;color:#8d9c80;font-size:12px;background:#f3f6ee;border-radius:10px}
.curve-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:22px}.curve-tools{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.curve-tools button{font-size:11px;background:#f0f5e8;border:1px solid transparent;border-radius:20px;padding:7px 13px}.curve-tools button.active{background:#e0ecd4;border-color:#c4d7b5;color:#37654a}.chart{width:100%;height:auto;display:block;background:#f8fbf3;border:1px solid #e8eedd;border-radius:10px}.chart text{font-family:inherit;font-size:10px;fill:#97a58a}.chart-legend{display:flex;gap:20px;font-size:10px;color:#849679;padding:10px 0}.chart-legend i{display:inline-block;width:20px;height:2px;vertical-align:middle;margin-right:5px;background:#477d59}.chart-legend .actual{background:#c69c5a}.curve-editor{border:1px solid var(--line);border-radius:10px;padding:17px}.curve-editor h3{font-size:12px;margin:0 0 15px}.curve-point{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#839474;margin:8px 0}.curve-point input{width:100px;padding:7px;border:1px solid #d9e4cf;background:#fff;border-radius:6px;font-variant-numeric:tabular-nums;color:#416138}.curve-editor .btn{width:100%;margin-top:13px}.error-line{font-size:10px;color:#b36350;line-height:1.7;min-height:17px}.target-summary{display:flex;gap:22px;flex-wrap:wrap;margin:15px 0}.target-summary span{font-size:10px;color:#7e9272}.target-summary strong{font-size:17px;display:block;margin-top:5px;color:#3e6849;font-weight:500}
.sensor-table input[type=number]{width:86px;border:1px solid #dfe7d6;border-radius:5px;padding:6px;color:#4b6640;background:white}.sensor-table select{font-size:10px}.equipment-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}.equipment-box{border:1px solid var(--line);border-radius:10px;padding:16px;background:#f8fbf2}.equipment-box h3{font-size:12px;margin:0 0 10px}.equipment-box strong{font-size:22px;font-weight:500}.equipment-box p{font-size:10px;color:#879b78;line-height:1.6;margin:10px 0 0}.note-box{padding:14px 17px;background:#f3f1e5;border:1px solid #e8e3ce;border-radius:9px;font-size:11px;line-height:1.8;color:#97865c;margin:15px 0}.water-flow{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#eef5ed;border-radius:10px;padding:22px}.water-flow div{text-align:center;font-size:12px;color:#557a5b}.water-flow small{display:block;font-size:10px;margin-top:7px;color:#8ca181}.water-flow b{font-size:14px;color:#a2b597}.schematic{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.schematic article{border:1px solid var(--line);background:#f8fbf4;border-radius:10px;padding:18px}.schematic h3{font-size:13px;margin:0 0 10px}.schematic p{font-size:11px;line-height:1.9;color:#83977b;margin:0}.schematic .chip{font-size:10px;background:#e2ecd9;padding:6px 9px;display:inline-block;border-radius:4px;margin-top:10px}
dialog{border:1px solid var(--line);border-radius:17px;padding:30px;width:min(880px,92vw);max-height:90vh;overflow:auto;color:var(--ink);background:#fcfdf8;box-shadow:0 30px 100px #183b3429}dialog::backdrop{background:#1a332755;backdrop-filter:blur(4px)}.dialog-close{position:absolute;top:18px;right:18px}.record-views{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:20px 0}.record-view{background:#f0f5e9;border:1px solid var(--line);border-radius:10px;overflow:hidden}.record-view h3{font-size:11px;padding:13px 15px;margin:0;border-bottom:1px solid var(--line)}.record-view svg{display:block;width:100%;height:180px}.record-view small{display:block;padding:10px 15px;font-size:9px;color:#8fa17d}.record-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:20px 0}.record-meta div{font-size:10px;color:#91a182}.record-meta strong{display:block;font-size:15px;color:#45673c;margin-top:6px;font-weight:500}.record-json{background:#f1f5e9;white-space:pre-wrap;overflow-wrap:anywhere;padding:15px;border-radius:10px;font-size:10px;color:#6f865f;max-height:200px;overflow:auto}
.scene-card:fullscreen{width:100vw;height:100vh;display:flex;flex-direction:column}.scene-card:fullscreen .scene-stage{height:auto;flex:1}.mode-hardware .mode-badge{background:#eee;border-color:#ddd;color:#888}.mode-hardware .mode-badge i{background:#aaa}
@media(min-width:1500px){.scene-stage{height:600px}.main-grid{grid-template-columns:minmax(0,1fr) 355px}.metric-row>div{padding:0 30px}}
@media(max-width:1180px){main{padding:24px}.topbar{padding:0 24px}.brand small,.top-title{display:none}.main-grid{grid-template-columns:minmax(0,1fr) 300px;gap:15px}.scene-stage{height:535px}.metric-row>div{padding:0 13px}.metric-row small{display:none}.metric-row strong{font-size:22px}.scene-toolbar .small-tag{display:none}.layer-controls button{padding:6px 5px;font-size:9px}.segmented button{padding:6px 8px}.panel{padding:17px}.archive-list{grid-template-columns:repeat(4,1fr)}h1{font-size:25px}}
@media(max-width:940px){.main-grid{grid-template-columns:1fr}.inspector{display:grid;grid-template-columns:1fr 1fr}.scene-stage{height:520px}.scene-overlay.left{flex-direction:row}.metric-row{grid-template-columns:repeat(2,1fr);gap:20px}.metric-row>div:nth-child(2){border:0}.bottom-grid{grid-template-columns:1fr}.curve-layout{grid-template-columns:1fr 250px}.heading{align-items:start}.dimension strong{font-size:16px}.overview-strip{gap:15px}.equipment-grid{grid-template-columns:repeat(2,1fr)}.archive-list{grid-template-columns:repeat(3,1fr)}.schematic{grid-template-columns:1fr}}
@media(max-width:640px){.navrail{width:60px}.app{margin-left:60px}.logo{width:35px;height:35px;margin-top:17px}.navrail nav{padding:0 5px;gap:5px}.navrail nav button{font-size:8px;gap:6px;padding:11px 0}.navrail nav button span{font-size:21px}.legacy-link{font-size:8px}.topbar{height:66px;padding:0 14px}.brand{font-size:18px}.top-divider,.mode-badge,.top-actions>.icon-btn{display:none}.top-actions{gap:5px}.top-actions select{font-size:10px;padding:5px}.heading{flex-direction:column;gap:15px;margin-bottom:18px}.dimension{text-align:left;flex-direction:row;align-items:center;gap:9px}.dimension span{font-size:8px}.dimension span:first-child{display:none}.dimension strong{font-size:15px}main{padding:20px 13px 0}h1{font-size:22px;line-height:1.5}.heading p:not(.eyebrow){font-size:10px;line-height:1.7}.eyebrow{font-size:8px}.metric-row{padding:16px 0;gap:17px;margin-bottom:15px}.metric-symbol{width:28px;height:28px;font-size:20px}.metric-symbol.sand{font-size:9px}.metric-row>div{gap:9px;padding:0 12px}.metric-row p{font-size:9px}.metric-row strong{font-size:20px}.scene-stage{height:420px}.scene-toolbar{padding:12px}.scene-toolbar strong{font-size:11px}.scene-overlay.right{display:none}.scene-overlay.left{left:10px;top:12px;gap:5px}.route-chip{font-size:8px;padding:5px 7px}.scene-bottom-note{font-size:8px;left:10px;right:10px}.scene-bottom-note span:last-child{display:none}.scene-controls{flex-wrap:wrap;padding:10px;gap:9px}.layer-controls{margin-left:auto}.layer-explanation{font-size:9px}.inspector{grid-template-columns:1fr}.overview-strip{grid-template-columns:1fr;padding:17px;gap:18px}.context-panel{margin:16px 0}.bottom-grid{gap:15px}.data-flow{gap:8px}.data-flow strong{font-size:10px}.data-flow small{font-size:8px;line-height:1.7}.data-flow b{display:none}footer{font-size:8px;flex-direction:column;gap:9px;line-height:1.7}.archive-list{grid-template-columns:repeat(2,1fr);gap:8px}.plant-card{padding:10px}.section-head{align-items:start;flex-direction:column}.section-head h2{font-size:17px}.curve-layout{grid-template-columns:1fr}.curve-point{display:inline-flex;width:48%;gap:6px}.curve-point input{width:70px}.curve-tools{gap:5px}.curve-tools button{font-size:10px;padding:6px 9px}.water-flow{padding:14px 8px;gap:6px;flex-wrap:wrap}.water-flow div{font-size:10px}.water-flow small{font-size:8px}.equipment-grid{gap:8px}.equipment-box{padding:13px}.record-views{grid-template-columns:1fr}.record-meta{grid-template-columns:1fr 1fr}dialog{padding:23px;width:94vw}}

.mechanical-controls{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:10px 15px;border-top:1px solid #e5ebdf;background:#f5f8ef}.mechanical-controls>span{font-size:10px;color:#87947e;margin-right:3px}.mechanical-controls button{border:1px solid #dce5d4;background:#fff;color:#54704b;border-radius:5px;padding:7px 9px;font-size:10px}.mechanical-controls button.active{background:#e1ebd9;border-color:#94b27e}.mechanical-controls label{font-size:10px;color:#657d59;display:flex;gap:5px;align-items:center;margin-left:auto}.mechanical-controls input{accent-color:#4f7956}.mechanical-controls button:hover{background:#eaf1e3}

/* The restored workspaces keep the model beside the experiment instead of burying the controls. */
.studio-workspace{min-width:0}.studio-tabs{display:flex;gap:5px;border-bottom:1px solid var(--line);margin-bottom:18px;padding-bottom:12px}.studio-tabs button{border:0;border-radius:7px;background:transparent;padding:10px 15px;font-size:12px;color:#819475}.studio-tabs button[aria-selected=true]{background:#dce8d2;color:#41653c;font-weight:600}.studio-page .metric-row,.studio-page .inspector,.studio-page .bottom-grid{display:none}.studio-page .heading{margin-bottom:24px}.studio-page .studio-workspace{display:grid;grid-template-columns:minmax(300px,.65fr) minmax(0,1.35fr);gap:24px;align-items:start}.studio-page .main-grid{display:block;position:sticky;top:16px;margin:0;min-width:0}.studio-page .context-panel{min-width:0;margin:0}.studio-page .scene-stage{height:470px}.studio-page .scene-toolbar{padding:12px}.studio-page .scene-toolbar strong{font-size:12px}.studio-page .scene-toolbar .small-tag{display:none}.studio-page .scene-overlay.left{left:10px;top:12px;gap:5px;flex-direction:column}.studio-page .scene-overlay.right{display:none}.studio-page .route-chip{font-size:9px;padding:6px 8px}.studio-page .scene-bottom-note span:last-child{display:none}.studio-page .scene-controls{flex-wrap:wrap;gap:9px}.studio-page .scene-controls>div{margin:0}.studio-page .mechanical-controls{gap:5px;padding:10px}.studio-page .mechanical-controls>span{width:100%}.studio-page .mechanical-controls label{margin:4px 0 0}.studio-page .layer-explanation{font-size:10px;line-height:1.8;padding:10px 13px}.studio-page .dimension{display:none}.studio-page .curve-layout{grid-template-columns:1fr}.studio-page .curve-point{display:inline-flex;width:48%;gap:12px}.studio-page .curve-tools{flex-wrap:wrap}.studio-page .curve-tools button{font-size:11px}.studio-page .section-head{flex-wrap:wrap}.studio-page .section-head h2{font-size:19px}.studio-page .section-actions{flex-wrap:wrap}.studio-page .target-summary strong{font-size:17px}.growth-scene-badge{position:absolute;left:12px;right:12px;bottom:40px;z-index:2;border:1px solid #bbcdb0;background:#f5faedee;padding:10px 12px;border-radius:8px;color:#527445;font-size:10px;line-height:1.6}.growth-preview-active .mechanical-controls{display:none}.growth-preview-active .scene-overlay.left{display:none}.studio-tabs button:focus-visible{outline:2px solid #779565;outline-offset:2px}
@media(min-width:1600px){.studio-page .studio-workspace{grid-template-columns:minmax(390px,.75fr) minmax(0,1.25fr)}.studio-page .scene-stage{height:580px}}
@media(max-width:1100px){.studio-page .studio-workspace{grid-template-columns:1fr}.studio-page .main-grid{position:static;grid-row:2}.studio-page .context-panel{grid-row:1}.studio-page .scene-stage{height:460px}.studio-page .mechanical-controls>span{width:auto}.studio-page .scene-controls{justify-content:space-between}}
@media(max-width:640px){.studio-tabs button{padding:9px 10px;font-size:11px}.studio-page .scene-stage{height:390px}.studio-page .heading{margin-bottom:15px}.studio-page .studio-workspace{gap:18px}.studio-page .curve-point{display:flex;width:100%}.navrail nav{gap:3px}.navrail nav button{padding:9px 0}}

/* A circuit needs its own readable width inside the split studio. */
.signal-page .sl-workbench{grid-template-columns:150px minmax(0,1fr)}
.signal-page .sl-inspector{grid-column:1/-1;max-height:none}
.signal-page .sl-inspector dl{display:grid;grid-template-columns:120px minmax(0,1fr);gap:3px 14px}
.signal-page .sl-inspector dt{margin-top:3px}
.signal-page .sl-inspector label{display:inline-flex;vertical-align:top;width:30%;margin-right:2%}
.signal-page .sl-inspector button{max-width:235px;display:flex}
.signal-page .sl-firmware-workbench{grid-template-columns:minmax(0,1fr)}
.signal-page .sl-circuit-scroll>[data-sl=circuit]{min-width:460px}
.signal-page .sl-experiment-grid{grid-template-columns:1fr}
@media(min-width:1800px){.signal-page .sl-workbench{grid-template-columns:165px minmax(0,1fr) 235px}.signal-page .sl-inspector{grid-column:auto;max-height:710px}.signal-page .sl-inspector dl{display:block}.signal-page .sl-inspector label{width:100%;margin-right:0}.signal-page .sl-firmware-workbench{grid-template-columns:minmax(0,1fr) 255px}}
@media(max-width:640px){.signal-page .sl-workbench{grid-template-columns:minmax(0,1fr)}.signal-page .sl-inspector label{width:100%;margin-right:0}.signal-page .sl-inspector dl{grid-template-columns:95px minmax(0,1fr)}}
