
:root{--app-accent:#ff8a1f;--accent-text:#ffad64;--bg:#10181d;--panel:#172228;--raised:#213138;--line:#34454b;--fg:#eef3f1;--muted:#a8b9bd} :root[data-theme=light]{--bg:#f3f1e9;--panel:#fffef8;--raised:#eeede5;--line:#d8dcd2;--fg:#263d38;--muted:#586c67;--accent-text:#a34b08}
body{--app-accent:#ff8a1f}h1,h2,h3{font-family:var(--font)}h2{font-size:27px;letter-spacing:-.035em}button{font-size:12px}button.primary,button.primary[aria-pressed=true]{background:#ff8a1f;color:#2e1b0b}button[aria-pressed=true]{border-color:#ff8a1f}.eyebrow,output{color:var(--accent-text)!important}.app-header{min-height:65px}.app-header a:before{content:none}.app-header strong{font:11px var(--mono);letter-spacing:.09em}.app-header strong span{color:var(--accent-text);margin-left:10px}.app-main{max-width:1520px;padding-top:44px}.intro{display:grid;grid-template-columns:1.4fr 1fr;gap:90px;align-items:center;margin-bottom:45px}.intro h1{font:600 clamp(42px,4.7vw,69px)/1.08 var(--font);letter-spacing:-.06em}.intro h1 span{color:var(--accent-text)}.intro>div>p:not(.eyebrow){max-width:560px;margin-top:19px;color:var(--muted);font-size:15px;line-height:1.8}.text-link{display:inline-flex;align-items:center;gap:40px;min-height:44px;margin-top:13px;font-size:13px;color:var(--accent-text);text-decoration:none}.text-link span{font-size:24px}.intro-principles article{display:flex;gap:19px;padding:18px 0;border-bottom:1px solid var(--line)}.intro-principles article:last-child{border:0}.intro-principles b{font:11px var(--mono);color:var(--accent-text);padding-top:4px}.intro-principles h2{font-size:16px;letter-spacing:-.02em}.intro-principles p{font-size:12px;color:var(--muted);margin-top:6px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px}.section-heading .eyebrow{margin-bottom:8px}.section-heading>p{font-size:12px;color:var(--muted)}.experiment-shelf{margin-bottom:28px}.experiment-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:19px}.experiment-cards button{position:relative;display:grid;gap:7px;text-align:left;background:var(--panel);padding:18px;border-radius:12px;overflow:hidden}.experiment-cards button:before{content:'';position:absolute;border:1px solid color-mix(in srgb,var(--app-accent) 24%,transparent);width:60px;height:60px;border-radius:50%;right:-15px;top:-20px}.experiment-cards .exp-icon{font:19px var(--mono);color:var(--accent-text)}.experiment-cards strong{font-size:13px}.experiment-cards small{font-size:11px;color:var(--muted);line-height:1.6;font-weight:400}.workbench{border:1px solid var(--line);background:var(--panel);border-radius:18px;overflow:hidden;scroll-margin-top:15px}.bench-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px}.bench-heading .eyebrow{margin-bottom:7px}.bench-heading h2{font-size:25px}.bench-heading button{font-size:11px}.transport{display:flex;align-items:center;gap:15px;flex-wrap:wrap;padding:12px 18px;border-block:1px solid var(--line);background:color-mix(in srgb,var(--bg) 45%,var(--panel))}.transport .readout{margin-left:auto;font:10px var(--mono);color:var(--muted)}.inline-label{display:inline-flex;align-items:center;gap:10px;font-size:11px}.inline-label select{width:auto;max-width:240px;font-size:12px}.tool-rack{display:flex;gap:6px;flex-wrap:wrap;padding:12px 18px;border-bottom:1px solid var(--line)}.tool-rack button{background:transparent;font-size:11px}.tool-rack [aria-pressed=true]{color:var(--accent-text);background:color-mix(in srgb,var(--app-accent) 9%,var(--panel))}.history-tools{display:flex;gap:6px;margin-left:auto}.stage-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px}.stage-main{min-width:0}.view-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 18px}.view-tools>span{font:10px var(--mono);color:var(--muted)}.view-tools button{font-size:11px;background:transparent}.canvas-wrap{height:clamp(470px,43vw,650px);overflow:hidden;background:#172d32;isolation:isolate}#stage,#stage3d{position:absolute;inset:0;width:100%;height:100%;display:block}#stage{touch-action:none}#stage3d canvas{display:block;width:100%;height:100%}.scene-badge{position:absolute;left:15px;top:13px;pointer-events:none;padding:6px 10px;background:#172c32d9;color:#f2f0df;border:1px solid #ffffff22;border-radius:20px;font:9px var(--mono);letter-spacing:.06em}.canvas-zoom{position:absolute;bottom:14px;left:14px;display:flex;gap:6px}.canvas-zoom button{background:#172c32e6;color:#fff;border-color:#6b8281;width:44px;padding:0}.win{position:absolute;right:14px;bottom:14px;max-width:290px;display:grid;gap:5px;padding:15px 18px;border:1px solid #ff8a1f;background:#17252bef;border-radius:12px;color:#f4f0df}.win strong{font-size:18px}.win span{font-size:11px}.win button{font-size:11px;margin-top:4px}.run-progress{height:3px;background:var(--line)}.run-progress i{display:block;height:100%;width:0;background:#ff8a1f}.visual-tools{display:flex;align-items:center;flex-wrap:wrap;gap:3px 17px;padding:5px 18px}.visual-tools label{display:inline-flex;align-items:center;gap:7px;min-height:44px;font-size:11px;color:var(--fg)}input[type=checkbox]{width:17px;height:17px;accent-color:#ff8a1f}.visual-tools>span{font:9px var(--mono);color:var(--muted);margin-left:auto}.stage-caption{font-size:11px;line-height:1.8;padding:8px 18px 13px;border:0;min-height:48px}.live-guide{padding:20px 18px;border-left:1px solid var(--line);background:color-mix(in srgb,var(--bg) 20%,var(--panel));min-width:0}.live-guide .eyebrow{font-size:9px}.live-guide h3{font-size:19px;letter-spacing:-.03em}.live-guide p{font-size:11px;line-height:1.8;color:var(--muted);margin-top:9px}.live-guide>div{margin-top:20px}.live-guide b{font-size:10px;color:var(--accent-text)}.live-guide .challenge-status{margin-top:23px;padding:12px;border:1px solid var(--line);border-radius:8px;color:var(--fg)}.live-guide>button{width:100%;font-size:11px;margin-top:10px}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--line)}.stat strong{font:500 29px var(--font);margin:5px 0}.stat strong small{display:inline;font:11px var(--mono)}.stat>small{font-size:9px}.stat>span{font-size:9px}.editor-deck,.launch-deck{padding:23px 24px}.deck-heading{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.deck-heading>div:first-child{margin-right:auto}.deck-heading .eyebrow{font-size:9px;margin-bottom:5px}.deck-heading h3{font-size:20px;letter-spacing:-.03em}.deck-heading .button-row button{font-size:11px}.part-editor{display:grid;grid-template-columns:1.4fr 1fr;gap:30px;margin-top:20px}#inspector{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:13px 17px}.part-field label{font-size:11px}.part-field input{margin-top:5px;font:12px var(--mono)}.part-field small{font-size:9px;color:var(--muted)}.part-help{border-left:2px solid #ff8a1f;padding-left:19px}.part-help h4{margin:0;font-size:15px}.part-help p{font-size:11px;line-height:1.8;color:var(--muted);margin-top:5px}.part-help b{color:var(--fg);font-weight:500}.edit-note{margin-top:15px;font-size:10px;color:var(--muted)}.launch-deck{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:28px}.launch-deck .eyebrow{font-size:9px;margin-bottom:7px}.launch-deck h3{font-size:18px}.launch-deck .field{margin:0;font-size:11px;display:block}.field output{float:right;font-size:11px}.field input{display:block;clear:both}.field small{font-size:9px}.domino-builder{grid-column:1/-1;border-top:1px solid var(--line);padding-top:12px}.domino-builder summary{font-size:12px;cursor:pointer;min-height:44px;display:flex;align-items:center}.domino-builder>div{display:flex;align-items:center;flex-wrap:wrap;gap:18px}.domino-builder label{max-width:165px;font-size:11px}.domino-builder p{max-width:490px;color:var(--muted);font-size:11px}.status{font-size:11px}.prediction-strip{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:24px;margin:27px 0;border:1px solid var(--line);border-left:3px solid #ff8a1f;border-radius:12px;background:color-mix(in srgb,var(--app-accent) 4%,var(--panel))}.prediction-strip h3{font-size:19px;letter-spacing:-.025em}.prediction-strip p:not(.eyebrow){font-size:12px;color:var(--muted);margin-top:10px}.prediction-strip .eyebrow{font-size:10px;margin-bottom:7px}.prediction-strip label{font-size:11px}.prediction-strip textarea{margin-top:8px;min-height:85px}.evidence{border:1px solid var(--line);padding:24px;background:var(--panel);border-radius:15px}.evidence .button-row button{font-size:11px}.evidence-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:25px;margin-top:24px}.chart-panel{min-width:0}.chart-tools{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}#chartLegend{font:9px var(--mono);color:var(--muted)}#historyChart{display:block;width:100%;height:260px;margin-top:12px}#chartNote{font-size:10px;color:var(--muted);line-height:1.8}.baseline-strip{display:flex;align-items:center;gap:15px;justify-content:space-between;padding:13px 0;margin-top:12px;border-top:1px solid var(--line)}.baseline-strip p{font-size:11px;color:var(--muted)}.baseline-strip button{font-size:10px;flex-shrink:0}.event-panel{padding-left:23px;border-left:1px solid var(--line)}.event-panel .eyebrow{font-size:9px;margin-bottom:5px}.event-panel h3{font-size:18px}.event-panel ol{padding:0;list-style:none;margin:12px 0 0;max-height:300px;overflow-y:auto}.event-panel li{font-size:11px;color:var(--muted);line-height:1.7;padding:9px 0;border-bottom:1px solid var(--line)}.event-panel time{font:10px var(--mono);color:var(--accent-text);display:block}#dataDetails summary,.model-notes summary{cursor:pointer;min-height:50px;display:flex;align-items:center;font-size:12px}#dataDetails{border-top:1px solid var(--line);margin-top:18px}.table-scroll{overflow:auto;max-height:420px}table{border-collapse:collapse;width:100%;font:11px var(--mono);text-align:right}th,td{padding:9px;border-bottom:1px solid var(--line);white-space:nowrap}caption{text-align:left;color:var(--muted);font-size:11px;padding:10px 0}th{color:var(--accent-text)}.learn-grid article{padding:24px;border:1px solid var(--line);border-radius:12px}.learn-grid .eyebrow{font-size:9px}.learn-grid h3{font-size:18px;letter-spacing:-.025em}.learn-grid p:not(.eyebrow){font-size:12px;line-height:1.8;color:var(--muted);margin-top:10px}.model-notes{margin-top:20px;border-block:1px solid var(--line);padding:0 20px}.model-notes>div{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:0 0 20px}.model-notes p{font-size:12px;color:var(--muted);line-height:1.8}footer{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:10px;color:var(--muted);padding-top:25px}
@media(max-width:1100px){.stage-layout{grid-template-columns:minmax(0,1fr) 235px}.live-guide{padding:17px 14px}.intro{gap:35px}.history-tools{margin-left:0}.evidence-layout{grid-template-columns:minmax(0,1fr) 240px}.launch-deck{gap:18px}}
@media(max-width:850px){.intro{grid-template-columns:1fr;gap:25px}.intro-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.intro-principles article{display:block;border:0;padding:0}.intro-principles b{display:block;margin-bottom:10px}.stage-layout{grid-template-columns:1fr}.live-guide{border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}.live-guide>.eyebrow,.live-guide>h3,.live-guide>p{grid-column:1/-1}.live-guide>div{margin:0}.live-guide .challenge-status{grid-column:auto;margin:10px 0}.live-guide>button{align-self:center}.canvas-wrap{height:480px}.part-editor{gap:20px;grid-template-columns:1.3fr 1fr}.launch-deck{grid-template-columns:repeat(3,minmax(0,1fr))}.launch-deck>div:first-child{grid-column:1/-1}.evidence-layout{grid-template-columns:1fr}.event-panel{border-left:0;border-top:1px solid var(--line);padding:18px 0 0}.event-panel ol{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;max-height:220px}.section-heading{flex-wrap:wrap}.transport .readout{margin-left:0}.inline-label select{font-size:16px}.part-field input{font-size:16px}}
@media(max-width:520px){.app-main{padding:26px 12px}.app-header strong{font-size:9px}.app-header strong span{display:none}.intro h1{font-size:43px}.intro>div>p:not(.eyebrow){font-size:13px}.intro{margin-bottom:28px}.intro-principles{gap:12px}.intro-principles h2{font-size:12px;line-height:1.5}.intro-principles p{font-size:10px}.experiment-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.experiment-cards button{padding:13px}.experiment-cards strong{font-size:12px}.experiment-cards small{font-size:10px}.section-heading h2{font-size:23px}.section-heading>p{font-size:11px}.bench-heading{padding:18px 14px;flex-wrap:wrap}.bench-heading h2{font-size:21px}.bench-heading .button-row{width:100%}.bench-heading button{font-size:10px;padding-inline:9px}.transport{padding:12px;gap:9px}.transport>.button-row{display:grid;grid-template-columns:1fr 1fr;width:100%}.transport .inline-label{justify-content:space-between;width:100%}.transport .inline-label select{width:65%}.transport .readout{font-size:10px}.tool-rack{padding:10px;gap:5px}.tool-rack>button{flex:1 1 28%;padding-inline:7px;font-size:10px}.history-tools{width:100%}.history-tools button{flex:1}.view-tools{padding:10px;flex-wrap:wrap;gap:5px}.view-tools>.button-row{width:100%}.view-tools button{font-size:10px;padding-inline:8px}.canvas-wrap{height:370px}.scene-badge{font-size:8px;left:10px;top:10px;max-width:calc(100% - 20px)}.visual-tools{padding:6px 10px;gap:2px 10px}.visual-tools label{font-size:10px}.visual-tools>span{margin:0;width:100%;padding:5px 0}.stage-caption{font-size:10px;padding:5px 12px 12px}.canvas-zoom{left:10px;bottom:10px}.win{max-width:210px;right:10px;bottom:10px;padding:12px}.win strong{font-size:15px}.win span{font-size:10px}.live-guide{padding:18px 14px;gap:10px 18px}.live-guide h3{font-size:18px}.live-guide p{font-size:12px}.live-guide>div{grid-column:1/-1}.live-guide .challenge-status{font-size:11px}.stat-grid{grid-template-columns:1fr 1fr}.stat{padding:13px}.stat strong{font-size:26px}.editor-deck,.launch-deck{padding:18px 14px}.deck-heading{gap:12px}.deck-heading .inline-label{width:100%;justify-content:space-between}.deck-heading .inline-label select{max-width:75%;width:75%}.deck-heading .button-row{width:100%}.part-editor{grid-template-columns:1fr;gap:18px}#inspector{grid-template-columns:1fr 1fr;gap:12px}.part-help p{font-size:12px}.launch-deck{grid-template-columns:1fr;gap:17px}.domino-builder label{max-width:140px}.domino-builder>div{gap:12px}.prediction-strip{grid-template-columns:1fr;gap:17px;padding:18px 14px}.prediction-strip h3{font-size:17px}.prediction-strip textarea{font-size:16px}.evidence{padding:18px 14px}.evidence-layout{gap:15px}.evidence .section-heading>.button-row{width:100%}.evidence .section-heading button{font-size:11px}.chart-tools{gap:9px}#historyChart{height:230px}.baseline-strip{align-items:start;flex-wrap:wrap}.event-panel ol{grid-template-columns:1fr;max-height:260px}.learn-grid{gap:12px}.learn-grid article{padding:20px 16px}.model-notes{padding-inline:14px}.model-notes>div{grid-template-columns:1fr;gap:15px}.model-notes summary{font-size:11px}footer span{display:none}}
@media(max-height:520px) and (min-width:600px){.canvas-wrap{height:350px}}

.journal-note{font-size:10px;line-height:1.7;color:var(--muted);margin-top:8px}

#zoomOut,#zoomIn{flex:0 0 44px;min-width:44px;padding-inline:0}

/* A non-modal editor stays inside the scene; the board remains interactive. */
.quick-editor{position:absolute;z-index:5;width:min(330px,calc(100% - 24px));max-height:calc(100% - 24px);display:flex;flex-direction:column;background:var(--panel);color:var(--fg);border:1px solid var(--app-accent);border-radius:14px;box-shadow:0 15px 45px #0005;overflow:hidden;outline-offset:-3px}
.quick-editor[hidden]{display:none}.quick-handle{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--app-accent) 8%,var(--panel));cursor:move;touch-action:none;user-select:none;flex-shrink:0}.quick-handle span{font:8px var(--mono);letter-spacing:.04em;color:var(--accent-text)}.quick-handle h3{font-size:18px;letter-spacing:-.025em;margin-top:4px}.quick-handle button{width:44px;height:44px;flex:0 0 44px;padding:0;font-size:24px;background:transparent;cursor:pointer}.quick-body{padding:14px;overflow-y:auto;overscroll-behavior:contain;min-height:0}#quickFields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#quickFields label{font-size:10px}#quickFields input{font-size:16px;min-height:44px;width:100%;padding:9px 10px}.quick-about{margin-top:13px;border-top:1px solid var(--line)}.quick-about summary{display:flex;align-items:center;min-height:44px;font-size:11px;cursor:pointer;color:var(--accent-text)}.quick-about summary:before{content:'+';margin-right:9px}.quick-about[open] summary:before{content:'−'}.quick-about p,.quick-status{font-size:11px;line-height:1.6;color:var(--muted)}.quick-status{margin-top:7px}.quick-status.error{color:#e16a54}.quick-actions{display:flex;flex-wrap:nowrap;gap:6px;padding:10px 12px;border-top:1px solid var(--line);flex-shrink:0}.quick-actions button{font-size:10px;padding:9px;min-height:44px}.quick-actions .primary{flex:1}.view-tools>.button-row{flex-wrap:wrap}#editSelected[aria-expanded=true]{color:var(--accent-text);border-color:var(--app-accent)}
@media(max-width:520px){.quick-editor{border-radius:11px}.quick-handle{padding:7px 10px}.quick-handle h3{font-size:16px}.quick-handle span{font-size:7px}.quick-body{padding:10px}#quickFields{gap:9px}.quick-actions{padding:8px}.quick-about{margin-top:7px}.quick-status{font-size:10px}.view-tools button{flex:1}}
@media(max-width:520px){.view-tools>.button-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}}

/* Direct manipulation: one projected handle layer for the 3D and 2D views. */
#tools{display:none}.viewport-studio{position:absolute;inset:0;z-index:3;pointer-events:none}.viewport-studio button,.viewport-studio label,.studio-add{pointer-events:auto}.viewport-studio button{min-height:40px;padding:8px 11px;font-size:11px;background:var(--panel);box-shadow:0 2px 8px #0002}.viewport-studio button[aria-pressed=true]{background:#ff8a1f;color:#241a10;border-color:#ff8a1f}.transform-toolbar,.studio-actions,.studio-play{position:absolute;display:flex;gap:5px;align-items:center}.transform-toolbar{top:12px;left:12px;right:12px;flex-wrap:wrap}.studio-actions{top:60px;left:12px}.studio-actions button{min-width:40px}.studio-add{position:absolute;top:108px;left:12px;display:grid;grid-template-columns:1fr 1fr;gap:6px;width:min(290px,calc(100% - 24px));padding:12px;border:1px solid var(--app-accent);border-radius:12px;background:var(--panel);box-shadow:0 10px 35px #0004;z-index:4}.studio-add[hidden]{display:none}.studio-add strong,.studio-add small{grid-column:1/-1;font-size:11px}.studio-add small{color:var(--muted);line-height:1.6}.studio-add button{text-align:left}.studio-play{bottom:12px;right:12px}.studio-play label{display:flex;align-items:center;gap:5px;min-height:40px;font-size:11px;background:var(--panel);padding:5px 10px;border:1px solid var(--line);border-radius:8px}.studio-play button[data-action=run]{background:#ff8a1f;color:#241a10}.studio-readout{position:absolute;left:12px;bottom:12px;display:grid;gap:5px;max-width:calc(100% - 245px);background:var(--panel);border:1px solid var(--line);border-radius:9px;padding:9px 12px;color:var(--fg)}.studio-readout strong{font-size:11px}.studio-readout span{font:9px/1.5 var(--mono);color:var(--muted)}.transform-gizmo{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;pointer-events:none;outline:none;z-index:-1;touch-action:none}.gizmo-line{fill:none;stroke:#ff931f;stroke-width:2;vector-effect:non-scaling-stroke;filter:drop-shadow(0 1px 1px #0008)}.gizmo-hit{fill:none;stroke:transparent;stroke-width:22;pointer-events:stroke;cursor:grab}.gizmo-knob{fill:#fff4db;stroke:#e56c00;stroke-width:2;vector-effect:non-scaling-stroke;pointer-events:all;cursor:grab}.gizmo-touch{fill:transparent;pointer-events:all;cursor:grab}.axis-x{stroke:#fa6753;fill:#fa6753}.axis-y{stroke:#50d1ad;fill:#50d1ad}.gizmo-line.axis-x,.gizmo-line.axis-y{fill:none;stroke-width:3}.gizmo-label{font:bold 13px system-ui;fill:#ff8a1f;paint-order:stroke;stroke:#13232d;stroke-width:3px;pointer-events:none}.gizmo-label.axis-x{fill:#ff7965}.gizmo-label.axis-y{fill:#70e4c2}.bounds-outline{stroke-dasharray:5 3}.is-2d .bounds-outline{stroke-dasharray:none;stroke:#ff8a1f}.scene-badge{display:none}.quick-editor{z-index:8;max-height:calc(100% - 124px)}.canvas-wrap:fullscreen{width:100vw;height:100dvh;max-height:none;border-radius:0}.canvas-wrap:fullscreen .quick-editor{max-height:calc(100% - 124px)}
@media(max-width:850px){.canvas-wrap{height:550px}.studio-readout{bottom:62px;max-width:calc(100% - 24px)}.studio-play{left:12px;right:auto}}
@media(max-width:520px){.canvas-wrap{height:570px}.transform-toolbar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.transform-toolbar button{min-height:44px;padding:7px;font-size:10px}.studio-actions{top:110px}.studio-actions button{min-height:44px}.studio-add{top:160px}.quick-editor,.canvas-wrap:fullscreen .quick-editor{max-height:calc(100% - 178px)}.studio-readout{max-width:calc(100% - 24px)}.studio-readout span{font-size:9px}.gizmo-touch{r:17px}}
@media(max-height:520px) and (min-width:600px){.canvas-wrap{height:480px}}

.canvas-wrap{height:clamp(620px,48vw,760px);background:var(--panel)}#stage,#stage3d{top:106px;bottom:84px;height:calc(100% - 190px)}.transform-toolbar{flex-wrap:nowrap}.studio-readout{max-width:calc(100% - 245px)}.studio-readout strong{color:var(--fg)}
@media(max-width:850px){.canvas-wrap{height:600px}.studio-readout{bottom:62px;max-width:calc(100% - 24px)}#stage,#stage3d{bottom:115px;height:calc(100% - 221px)}}
@media(max-width:520px){.canvas-wrap{height:620px}#stage,#stage3d{top:166px;bottom:115px;height:calc(100% - 281px)}}
@media(max-height:520px) and (min-width:600px){.canvas-wrap{height:530px}}

/* Motor controls report actual contacts beside the experiment. */
.motor-station{padding:20px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--app-accent) 5%,var(--panel))}.motor-station[hidden]{display:none}.motor-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.motor-heading .eyebrow{margin:0 0 6px}.motor-heading h3{font-size:19px;letter-spacing:-.03em}.motor-state{font:10px var(--mono);padding:8px 10px;border:1px solid var(--line);border-radius:20px;color:var(--accent-text)}.motor-state.touching{background:#75e5bc22;color:#27846b;border-color:#75e5bc}.motor-hint{font-size:12px;line-height:1.6;margin:12px 0;color:var(--muted)}.motor-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:10px;overflow:hidden}.motor-metrics>div{display:grid;gap:6px;padding:12px;border-right:1px solid var(--line)}.motor-metrics>div:last-child{border:0}.motor-metrics span{font-size:10px;color:var(--muted)}.motor-metrics strong{font:12px var(--mono)}.motor-actions{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0 10px}.motor-actions button{min-height:44px;font-size:11px}.motor-station>small{display:block;font-size:10px;line-height:1.6;color:var(--muted)}.motor-mode{grid-column:1/-1}.motor-mode select{width:100%;font-size:13px;min-height:44px}.motor-mode small{display:block;margin-top:7px;font-size:10px;line-height:1.5;color:var(--muted)}.studio-add .motor-demo{grid-column:1/-1;color:var(--accent-text)}
@media(max-width:600px){.motor-station{padding:15px}.motor-heading{align-items:start;flex-direction:column}.motor-metrics{grid-template-columns:1fr 1fr}.motor-metrics>div{border-bottom:1px solid var(--line)}.motor-metrics>div:nth-child(2){border-right:0}.motor-actions{display:grid;grid-template-columns:1fr 1fr}.motor-actions button{padding:8px}.motor-heading h3{font-size:18px}}
.win{bottom:96px;z-index:4}@media(max-width:850px){.win{bottom:128px}}

/* Touch targets: viewer actions and playback stay at least 44 px on touch screens and phones. */
@media (pointer:coarse),(max-width:850px){.studio-play button,.studio-play label,.studio-actions button{min-height:44px;min-width:44px}}
@media (max-width:520px){.bench-heading .button-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.bench-heading .button-row #clear{grid-column:1/-1}}
