:root{color:#111;font-synthesis:none;text-rendering:optimizelegibility;--black:#111;--paper:#f7f7f3;--white:#fff;--line:#cfcfca;--muted:#70706c;--green:#009d5b;--yellow:#f2cf00;--blue:#009fe3;background:#ecece8;font-family:Inter,Helvetica Neue,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{overflow:hidden}button,input,select{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--yellow);outline-offset:2px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.micro-label{color:var(--muted);letter-spacing:.13em;text-transform:uppercase;margin:0 0 4px;font:700 9px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.mechanarium-app{background:var(--paper);grid-template-rows:54px 1fr;height:100vh;min-height:620px;display:grid}.app-bar{border-bottom:2px solid var(--black);background:var(--white);z-index:20;grid-template-columns:238px minmax(180px,1fr) auto auto;align-items:center;display:grid}.wordmark{height:100%;color:var(--black);border-right:1px solid var(--black);align-items:center;gap:10px;padding:0 14px;text-decoration:none;display:flex}.wordmark-title{color:var(--black);align-items:center;text-decoration:none;display:flex}.wordmark-m-btn{color:#fff;cursor:pointer;background:#111;border:0;border-radius:4px;place-items:center;width:30px;height:30px;font:800 14px/1 ui-monospace,monospace;transition:transform .15s,background .15s;display:grid}.wordmark-m-btn:hover{color:#fff;background:#2563eb;transform:scale(1.05)}.wordmark strong{letter-spacing:.17em;font:800 12px/1 ui-monospace,monospace}.scenario-identity{min-width:0;padding:0 16px}.scenario-identity small,.scenario-identity strong{display:block}.scenario-identity small{color:var(--muted);letter-spacing:.12em;font:700 8px/1.2 ui-monospace,monospace}.scenario-identity strong{text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:12px;overflow:hidden}.run-controls,.file-actions{border-left:1px solid var(--line);align-items:center;gap:5px;height:100%;padding:0 8px;display:flex}.run-controls button,.file-actions button{border:1px solid var(--black);background:var(--white);cursor:pointer;justify-content:center;align-items:center;gap:6px;min-width:34px;height:32px;display:inline-flex}.run-controls button:hover,.file-actions button:hover{color:#fff;background:#111}.run-controls button:disabled{opacity:.3;cursor:not-allowed}.run-controls .run-button{color:#fff;background:#111;min-width:76px}.run-controls .run-button:hover{background:#30302d}.speed-select select{border:1px solid var(--black);background:#fff;border-radius:0;height:32px;padding:0 6px;font:700 10px ui-monospace,monospace}.studio-layout{grid-template-columns:238px minmax(520px,1fr) 316px;min-height:0;display:grid}.builder-rail,.data-rail{background:var(--white);min-height:0;overflow-y:auto}.builder-rail{border-right:1px solid var(--black)}.data-rail{border-left:1px solid var(--black)}.rail-tabs{border-bottom:1px solid var(--black);grid-template-columns:repeat(4,1fr);display:grid}.rail-tabs button{border:0;border-right:1px solid var(--line);background:var(--white);letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:3px;min-width:0;height:42px;padding:0 2px;font:700 8px ui-monospace,monospace;display:flex;overflow:hidden}.rail-tabs button svg{flex:none;width:13px;height:13px}.rail-tabs button[aria-selected=true]{color:#fff;background:#111}.rail-content{padding:14px}.panel-intro{padding:3px 2px 15px}.panel-intro h1{letter-spacing:-.04em;margin:0;font-size:23px;font-weight:650}.panel-intro p:last-child{max-width:190px;color:var(--muted);margin:7px 0 0;font-size:11px;line-height:1.45}.element-grid{border-top:1px solid var(--black);border-left:1px solid var(--black);grid-template-columns:1fr 1fr;display:grid}.element-grid button{border:0;border-right:1px solid var(--black);border-bottom:1px solid var(--black);cursor:pointer;background:#fff;flex-direction:column;justify-content:space-between;align-items:flex-start;height:82px;padding:12px;display:flex;position:relative}.element-grid button:hover,.element-grid button.active{color:#fff;background:#111}.element-grid button span{font-size:11px;font-weight:700}.element-grid button small{font:700 13px ui-monospace,monospace;position:absolute;top:9px;right:10px}.rail-section-heading{color:var(--black);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;margin:20px 0 8px;font:800 9px ui-monospace,monospace;display:flex}.rail-section-heading small{color:var(--muted);font-weight:500}.instrument-list{border-top:1px solid var(--line)}.instrument-list button{width:100%;color:var(--muted);border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:22px 1fr auto;align-items:center;gap:8px;padding:10px 2px;display:grid}.instrument-list span{font-size:11px}.instrument-list small{text-transform:uppercase;font:8px ui-monospace,monospace}.builder-note{border:1px solid var(--black);background:#f5f5f1;margin-top:20px;padding:11px}.builder-note strong{letter-spacing:.06em;text-transform:uppercase;font:800 9px ui-monospace,monospace}.builder-note p{color:var(--muted);margin:6px 0 0;font-size:10px;line-height:1.45}.experiment-list{border-top:1px solid var(--black)}.experiment-list button{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;grid-template-columns:28px 1fr;gap:8px;width:100%;padding:11px 4px;display:grid}.experiment-list button>span{color:var(--muted);font:9px ui-monospace,monospace}.experiment-list strong,.experiment-list small{display:block}.experiment-list strong{font-size:11px}.experiment-list small{color:var(--muted);margin-top:2px;font-size:9px}.experiment-list button.active,.experiment-list button:hover{color:#fff;background:#111}.experiment-list button.active small,.experiment-list button:hover small{color:#aaa}.world-stage{background:var(--paper);grid-template-rows:54px 1fr;min-width:0;min-height:0;display:grid}.stage-bar{border-bottom:1px solid var(--black);background:#ffffffeb;justify-content:space-between;align-items:center;gap:12px;padding:0 14px;display:flex}.stage-bar h2{letter-spacing:-.02em;margin:0;font-size:15px;font-weight:650}.view-options{align-items:center;gap:4px;display:flex}.view-options label{cursor:pointer}.view-options input{opacity:0;position:absolute}.view-options span{border:1px solid var(--line);color:var(--muted);letter-spacing:.05em;text-transform:uppercase;padding:6px 8px;font:700 8px ui-monospace,monospace;display:block}.view-options input:checked+span{color:#fff;background:#111;border-color:#111}.view-options input:focus-visible+span{outline:3px solid var(--yellow)}.grid-snap-btn{border:1px solid var(--line);color:var(--muted);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;background:#fff;align-items:center;gap:4px;height:25px;padding:6px 8px;font:700 8px ui-monospace,monospace;transition:all .15s;display:flex}.grid-snap-btn:hover{color:#111;border-color:#111}.grid-snap-btn.active{color:#fff;background:#111;border-color:#111}.grid-step-select-label{align-items:center;margin-right:4px;display:flex}.grid-step-select{border:1px solid var(--line);color:#111;cursor:pointer;background:#fff;border-radius:0;outline:none;height:25px;padding:0 5px;font:700 9px ui-monospace,monospace}.grid-step-select:hover,.grid-step-select:focus{border-color:#111}.scene-shell{min-height:0;position:relative;overflow:hidden}.world-scene{background:#f4f4f0;position:absolute;inset:0;overflow:hidden}.three-canvas{touch-action:none;width:100%;height:100%;display:block}.scene-hint,.scene-status{z-index:2;pointer-events:none;letter-spacing:.05em;text-transform:uppercase;gap:12px;font:700 8px ui-monospace,monospace;display:flex;position:absolute}.scene-hint{color:#777;top:52px;left:12px}.scene-status{color:#fff;background:#111;padding:7px 9px;top:12px;right:12px}.snap-confirmation{z-index:10;border:2px solid var(--black);background:#fffffff7;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;padding:9px 10px;display:grid;position:absolute;bottom:92px;left:clamp(18px,4vw,56px);right:clamp(18px,4vw,56px);box-shadow:0 10px 34px #00000024}.snap-confirmation.pending,.snap-confirmation.acquired{border-color:var(--green)}.snap-confirmation.acquired .snap-indicator{background:var(--green)}.snap-confirmation.armed{border-color:var(--yellow)}.snap-confirmation.armed .snap-indicator{color:#111;background:var(--yellow)}.snap-confirmation.confirmed{border-color:var(--green);grid-template-columns:34px minmax(0,1fr);right:auto}.snap-indicator{color:#fff;background:var(--green);border-radius:50%;place-items:center;width:30px;height:30px;font:900 16px/1 ui-monospace,monospace;display:grid}.snap-confirmation strong{letter-spacing:.08em;text-transform:uppercase;font:800 9px ui-monospace,monospace;display:block}.snap-confirmation p{color:var(--muted);margin:4px 0 0;font-size:10px;line-height:1.35}.snap-actions{gap:6px;display:flex}.snap-actions button{letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:#fff;border:1px solid #111;min-height:32px;padding:0 11px;font:800 8px ui-monospace,monospace}.snap-actions button:first-child{color:#fff;border-color:var(--green);background:var(--green)}.snap-actions button:hover{color:#fff;background:#111}.agent-dock{z-index:8;pointer-events:none;position:absolute;bottom:18px;left:clamp(18px,4vw,56px);right:clamp(18px,4vw,56px)}.agent-reply{color:#222;pointer-events:auto;background:#fffffff0;border:1px solid #111;align-items:flex-start;gap:7px;width:fit-content;max-width:min(620px,85%);max-height:112px;margin:0 auto 7px 22px;padding:8px 11px;font-size:10px;line-height:1.4;display:flex;overflow:auto;box-shadow:0 5px 24px #00000014}.agent-reply svg{flex:none}.agent-reply span{gap:2px;display:grid}.agent-reply strong{letter-spacing:.08em;text-transform:uppercase;font:900 8px ui-monospace,monospace}.agent-dock form{pointer-events:auto;background:#111;border:2px solid #111;border-radius:16px;grid-template-columns:34px 1fr 34px auto 36px;align-items:center;gap:8px;height:58px;padding:8px 10px;display:grid;box-shadow:0 15px 45px #00000038}.agent-attach-btn{color:#fff!important;background:#222!important}.agent-attach-btn:hover{background:#333!important}.agent-image-preview{pointer-events:auto;background:#fff;border:1px solid #111;border-radius:10px;align-items:center;gap:8px;width:fit-content;max-width:min(620px,85%);margin:0 auto 7px 22px;padding:6px 10px;font-size:11px;font-weight:600;display:flex;box-shadow:0 5px 24px #0000001f}.agent-image-preview img{object-fit:cover;border:1px solid #ccc;border-radius:6px;width:38px;height:38px}.agent-image-preview button{cursor:pointer;color:#333;background:#eee;border:0;border-radius:50%;place-items:center;width:22px;height:22px;margin-left:auto;display:grid}.agent-image-preview button:hover{background:#ddd}@keyframes popOutFromIcon{0%{opacity:0;transform-origin:20px bottom;transform:scale(.12)translate(-80px,110px)}75%{opacity:1;transform-origin:20px bottom;transform:scale(1.02)translateY(-2px)}to{opacity:1;transform-origin:20px bottom;transform:scale(1)translate(0)}}@keyframes suckedInToIcon{0%{opacity:1;transform-origin:20px bottom;transform:scale(1)translate(0)}30%{opacity:.95;transform-origin:20px bottom;transform:scale(.92)translate(-8px,10px)}to{opacity:0;transform-origin:20px bottom;transform:scale(.08)translate(-95px,125px)}}@keyframes markPulseGlow{0%,to{box-shadow:0 0 #ffffff73}50%{box-shadow:0 0 0 7px #fff0}}.agent-mark-wrapper{align-items:center;display:flex;position:relative}.agent-mark-btn{color:#111;cursor:pointer;background:#fff;border:0;border-radius:50%;place-items:center;width:30px;height:30px;font:900 12px ui-monospace,monospace;transition:transform .15s,background .15s;animation:2.8s cubic-bezier(.4,0,.6,1) infinite markPulseGlow;display:grid}.agent-mark-btn:hover{background:#f0f0ed;transform:scale(1.1)}.agent-mark-btn.active{color:#111;background:#f2cf00;animation:none;box-shadow:0 0 12px #f2cf0099}.agent-hint-tooltip{white-space:nowrap;color:#fff;text-transform:uppercase;letter-spacing:.04em;pointer-events:none;opacity:0;background:#222;border:1px solid #444;border-radius:6px;padding:3px 8px;font:700 9px ui-monospace,monospace;transition:opacity .2s,transform .2s;position:absolute;bottom:38px;left:-10px;transform:translateY(4px);box-shadow:0 4px 12px #0000004d}.agent-mark-wrapper:hover .agent-hint-tooltip{opacity:1;transform:translateY(0)}.agent-text-btn{color:#fff!important;background:#222!important;border-radius:6px!important;align-items:center!important;gap:4px!important;width:auto!important;height:26px!important;padding:0 10px!important;font-size:11px!important;font-weight:600!important;display:flex!important}.agent-text-btn:hover{background:#333!important}.latex-rendered{font-family:Inter,system-ui,-apple-system,sans-serif}.latex-rendered sub{vertical-align:sub;font-size:.8em;line-height:0}.latex-rendered sup{vertical-align:super;font-size:.8em;line-height:0}.math-frac{vertical-align:middle;text-align:center;padding:0 2px;font-size:.95em;display:inline-flex}.agent-chat-drawer{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:#fff;z-index:10;pointer-events:auto;transform-origin:20px bottom;opacity:0;background:#111111f5;border:2px solid #222;border-radius:16px;flex-direction:column;gap:10px;width:min(620px,92%);max-height:380px;margin:0 auto 10px 22px;padding:12px 14px;transition:transform .24s cubic-bezier(.4,0,.2,1),opacity .2s;display:flex;transform:scale(.06)translate(-100px,125px);box-shadow:0 20px 50px #00000059}.agent-chat-drawer.open{opacity:1;transition:transform .28s cubic-bezier(.34,1.45,.64,1),opacity .22s;transform:scale(1)translate(0)}.agent-chat-drawer.closing{opacity:0;transition:transform .24s cubic-bezier(.4,0,.2,1),opacity .2s;transform:scale(.06)translate(-100px,125px)}.agent-chat-header{letter-spacing:.08em;text-transform:uppercase;color:#aaa;border-bottom:1px solid #333;justify-content:space-between;align-items:center;padding-bottom:8px;font:800 10px ui-monospace,monospace;display:flex}.agent-chat-thread{flex-direction:column;flex:1;gap:10px;max-height:300px;padding-right:4px;display:flex;overflow-y:auto}.chat-empty-state{color:#888;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:24px 12px;font-size:12px;display:flex}.chat-msg-bubble{word-break:break-word;border-radius:12px;max-width:88%;padding:10px 14px;font-size:12px;line-height:1.5}.chat-msg-bubble.user{color:#fff;background:#262626;border:1px solid #444;border-bottom-right-radius:2px;align-self:flex-end}.chat-msg-bubble.assistant{color:#e1e8f0;background:#141f2a;border:1px solid #005a87;border-bottom-left-radius:2px;align-self:flex-start}.chat-role-label{letter-spacing:.08em;text-transform:uppercase;opacity:.75;margin-bottom:4px;font:900 8px ui-monospace,monospace;display:block}.chat-attached-img{border:1px solid #555;border-radius:6px;max-width:140px;max-height:90px;margin-bottom:6px;display:block}.agent-dock input{color:#fff;background:0 0;border:0;outline:0;min-width:0;font-size:13px}.agent-dock input::placeholder{color:#858585}.agent-source{color:#858585;letter-spacing:.05em;text-transform:uppercase;font:700 8px ui-monospace,monospace}.agent-dock button{color:#111;cursor:pointer;background:#fff;border:0;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.agent-dock button:disabled{opacity:.3;cursor:not-allowed}.agent-proposal,.agent-tutor{pointer-events:auto;background:#fffffff7;border:1px solid #111;width:min(620px,86%);margin:0 auto 7px 22px;padding:9px 11px;box-shadow:0 5px 24px #0000001a}.agent-proposal strong,.agent-tutor strong{letter-spacing:.07em;text-transform:uppercase;font:900 8px ui-monospace,monospace;display:block}.agent-proposal p{margin:5px 0 8px;font-size:10px}.agent-proposal>div{gap:6px;display:flex}.agent-proposal>div button{text-transform:uppercase;border:1px solid #111;border-radius:0;gap:5px;width:auto;height:29px;padding:0 11px;font:800 8px ui-monospace,monospace;display:flex}.agent-proposal>div button:first-child{color:#fff;background:#111}.agent-tutor{border-left:4px solid var(--yellow);gap:3px;font-size:10px;display:grid}.agent-tutor small{color:var(--muted)}.data-rail-title{border-bottom:1px solid var(--black);justify-content:space-between;align-items:center;height:54px;padding:0 14px;display:flex}.data-rail-title h2{letter-spacing:-.04em;margin:0;font-size:19px}.data-rail-title>span{color:var(--green);text-transform:uppercase;align-items:center;gap:5px;font:700 8px ui-monospace,monospace;display:flex}.data-mode-switch{border-bottom:1px solid var(--black);grid-template-columns:repeat(4,1fr);display:grid}.data-mode-switch button{border:0;border-right:1px solid var(--line);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;background:#fff;height:34px;font:800 9px ui-monospace,monospace}.data-mode-switch button[aria-selected=true]{color:#fff;background:#111}.data-rail>section{border-bottom:1px solid var(--black);padding:13px 14px}.metric-stack{gap:7px;display:grid}.metric-stack article{border:1px solid var(--line);background:#fafaf7;padding:9px 10px}.metric-stack small,.metric-stack strong{display:block}.metric-stack small{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font:700 8px ui-monospace,monospace}.metric-stack strong{margin-top:5px;font:700 13px ui-monospace,monospace}.metric-stack strong em{color:var(--muted);font-size:9px;font-style:normal}.primary-metric{position:relative;border-color:var(--black)!important}.primary-metric strong{font-size:23px}.primary-metric>span{color:#b32727;font:700 8px ui-monospace,monospace;position:absolute;top:10px;right:10px}.primary-metric>span.stable{color:var(--green)}.metric-row{grid-template-columns:1fr 1fr;gap:7px;display:grid}.data-chart .rail-section-heading{margin-top:0}.chart-wrap{position:relative}.telemetry-chart{border:1px solid var(--line);background:#fafaf7;width:100%;height:126px;display:block}.chart-legend{flex-wrap:wrap;gap:9px;margin-bottom:6px;font:700 8px ui-monospace,monospace;display:flex}.chart-legend span:before{content:"";background:currentColor;width:7px;height:2px;margin:0 4px 2px 0;display:inline-block}.chart-legend small{color:var(--muted);margin-left:auto}.chart-legend .kinetic{color:var(--green)}.chart-legend .potential{color:#b32727}.chart-legend .total{color:#111}.data-export{text-transform:uppercase;cursor:pointer;background:#fff;border:1px solid #111;justify-content:center;align-items:center;gap:6px;width:100%;height:32px;margin-top:7px;font:800 9px ui-monospace,monospace;display:flex}.data-export:hover{color:#fff;background:#111}.section-heading{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.section-heading .eyebrow{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 3px;font:700 8px ui-monospace,monospace}.section-heading h2{margin:0;font-size:15px}.icon-button{border:1px solid var(--black);cursor:pointer;background:#fff;place-items:center;width:28px;height:28px;display:grid}.icon-button.danger{color:#b32727}.icon-button:disabled{opacity:.25;cursor:not-allowed}.inspector fieldset{border:0;margin:12px 0 0;padding:0}.text-field,.number-field{color:var(--muted);text-transform:uppercase;gap:4px;font:700 8px ui-monospace,monospace;display:grid}.text-field input,.number-field input{color:#111;border:1px solid var(--line);background:#fafaf7;border-radius:0;width:100%;height:31px;padding:5px 7px;font:600 10px ui-monospace,monospace}.field-grid{grid-template-columns:1fr 1fr;gap:8px 7px;margin-top:8px;display:grid}.input-with-unit{position:relative}.input-with-unit small{color:#999;pointer-events:none;font-size:7px;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.input-with-unit input{padding-right:35px}.environment-inspector>.rail-section-heading{margin-top:0}.environment-empty,.environment-help{color:var(--muted);margin:6px 0 0;font-size:9px;line-height:1.45}.environment-card{border:1px solid var(--line);background:#fafaf7;margin-top:8px;padding:9px}.environment-card-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.environment-card-heading>span{align-items:center;gap:6px;min-width:0;display:flex}.environment-card-heading strong{font-size:11px}.environment-card-heading small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font:8px ui-monospace,monospace;overflow:hidden}.environment-card fieldset{border:0;margin:8px 0 0;padding:0}.lab-panel{border-bottom:1px solid var(--line);padding:10px 10px 4px}.guide-steps{gap:4px;margin:8px 0 12px;padding:0;list-style:none;display:grid}.guide-steps li{color:var(--muted);grid-template-columns:20px 1fr;align-items:center;gap:7px;font-size:10px;display:grid}.guide-steps li span{border:1px solid var(--line);border-radius:50%;place-items:center;width:18px;height:18px;font:700 8px ui-monospace,monospace;display:grid}.guide-steps li.complete{color:var(--black)}.guide-steps li.complete span{color:#fff;border-color:var(--green);background:var(--green)}.trial-metadata{grid-template-columns:1fr 1fr;gap:6px;display:grid}.trial-metadata label,.trial-plot-controls label,.instrument-target{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;gap:3px;font:700 8px ui-monospace,monospace;display:grid}.trial-metadata input,.trial-metadata textarea,.trial-plot-controls select,.instrument-target select{min-width:0;color:var(--black);border:1px solid var(--line);background:#fff;padding:7px;font:10px ui-monospace,monospace}.trial-metadata label:last-child{grid-column:1/-1}.trial-metadata textarea{resize:vertical;min-height:52px}.trial-actions,.notebook-actions{align-items:center;gap:6px;margin:8px 0 12px;display:flex}.trial-actions button,.notebook-actions button{border:1px solid var(--black);text-transform:uppercase;background:#fff;min-height:30px;padding:0 9px;font:700 8px ui-monospace,monospace}.trial-actions .record-button{color:#fff;background:#111}.trial-actions strong{font:700 9px ui-monospace,monospace}.instrument-card{border:1px solid var(--line);cursor:pointer;background:#fafaf7;margin:7px 0;padding:8px}.instrument-card.selected{border-color:var(--green);box-shadow:inset 3px 0 var(--green)}.instrument-card fieldset{border:0;margin:8px 0 0;padding:0}.instrument-reading{margin:7px 0 0;font:8px ui-monospace,monospace}.gate-readings p,.gate-results p{border-bottom:1px solid var(--line);justify-content:space-between;gap:8px;margin:0;padding:6px 0;font-size:9px;display:flex}.gate-readings span,.gate-results span{color:var(--muted);text-align:right}.trial-row{border-bottom:1px solid var(--line);grid-template-columns:1fr auto 24px;align-items:center;gap:7px;padding:7px 0;display:grid}.trial-row div{display:grid}.trial-row strong{font-size:10px}.trial-row small,.trial-row>span{color:var(--muted);font:8px ui-monospace,monospace}.trial-row button{background:0 0;border:0;place-items:center;width:24px;height:24px;display:grid}.world-action-grid{grid-template-columns:1fr 1fr;gap:7px;display:grid}.world-action-grid button{border:1px solid var(--line);text-align:left;background:#fafaf7;grid-template-columns:20px 1fr;align-content:center;gap:3px 6px;min-height:76px;padding:9px;display:grid}.world-action-grid button small{color:var(--muted);grid-column:1/-1;font-size:8px}.world-save-form{gap:7px;display:grid}.world-save-form label{text-transform:uppercase;gap:4px;font:700 8px ui-monospace,monospace;display:grid}.world-save-form input{border:1px solid var(--line);height:32px;padding:0 8px}.world-save-form button{border:1px solid var(--black);background:var(--black);color:#fff;text-transform:uppercase;justify-content:center;align-items:center;gap:6px;height:32px;font:700 9px ui-monospace,monospace;display:flex}.world-save-form button:disabled{opacity:.35}.world-save-list .trial-row{grid-template-columns:1fr 24px}.world-save-list .saved-world-load{text-align:left;justify-items:start;width:auto;height:auto;padding:0;display:grid}.trial-plot{margin-top:10px}.trial-plot-controls{grid-template-columns:1fr 1fr;gap:6px;margin-bottom:5px;display:grid}.notebook-actions{justify-content:stretch}.notebook-actions button{flex:1;justify-content:center;align-items:center;gap:5px;display:flex}.notebook-actions button:disabled{opacity:.4}.check-field{color:var(--muted);text-transform:uppercase;align-items:center;gap:6px;margin-top:9px;font:700 8px ui-monospace,monospace;display:flex}.toggle-stack{border-top:1px solid var(--line);gap:8px;margin-top:10px;padding-top:9px;display:grid}.select-field{color:var(--muted);text-transform:uppercase;gap:4px;margin-top:9px;font:700 8px ui-monospace,monospace;display:grid}.select-field select{color:#111;border:1px solid var(--line);background:#fafaf7;border-radius:0;height:31px;padding:5px 7px;font:600 10px ui-monospace,monospace}.force-legend{z-index:3;text-transform:uppercase;pointer-events:none;background:#ffffffeb;border:1px solid #111;flex-wrap:wrap;justify-content:flex-start;gap:5px 9px;max-width:min(330px,100% - 24px);padding:7px 9px;font:700 8px ui-monospace,monospace;display:flex;position:absolute;top:12px;left:12px;box-shadow:0 2px 8px #00000014}.force-legend span:before{content:"";background:currentColor;width:9px;height:3px;margin:0 4px 2px 0;display:inline-block}.force-legend .net{color:#111}.force-legend .gravity{color:#b32727}.force-legend .tension{color:#009fe3}.force-legend .reaction{color:#7a3db8}.force-legend .normal{color:#00a965}.force-legend .friction{color:#f08c00}.force-legend .torque{color:#b79a00}.wheel-dynamics-card{background:#fffbe3;border:1px solid #111;grid-template-columns:1fr 1fr;gap:5px 8px;margin-top:10px;padding:9px;font:700 9px ui-monospace,monospace;display:grid}.wheel-dynamics-card strong,.wheel-dynamics-card small{grid-column:1/-1}.wheel-dynamics-card strong{text-transform:uppercase}.wheel-dynamics-card small{color:var(--muted)}.dynamics-equation{border-left:3px solid var(--yellow);background:#fffbe3;margin:0;padding:8px;font:700 10px ui-monospace,monospace}.force-table-wrap{overflow-x:auto}.force-table-wrap table{border-collapse:collapse;width:100%;font:8px ui-monospace,monospace}.force-table-wrap th,.force-table-wrap td{border-bottom:1px solid var(--line);text-align:right;padding:5px 4px}.force-table-wrap th:first-child{text-align:left;text-transform:capitalize}.connection-actions{grid-template-columns:1fr 1fr;gap:6px;margin-top:7px;display:grid}.connection-actions button{color:#fff;text-transform:uppercase;cursor:pointer;background:#111;border:1px solid #111;min-height:31px;font:800 8px ui-monospace,monospace}.spline-fields{border-top:1px solid var(--line);grid-column:1/-1;margin-top:8px;padding-top:5px}.spline-fields .rail-section-heading{margin-top:0}.spline-fields .connection-actions button{justify-content:center;align-items:center;gap:4px;display:flex}.spline-fields .connection-actions button:disabled{opacity:.35;cursor:not-allowed}.tutorial-progress{background:var(--line);height:5px;margin-bottom:12px;overflow:hidden}.tutorial-progress span{background:var(--green);height:100%;transition:width .2s;display:block}.tutorial-step{background:#fffbe3;border:1px solid #111;padding:12px}.tutorial-step>small{color:var(--muted);text-transform:uppercase;font:800 8px ui-monospace,monospace}.tutorial-step h2{margin:5px 0;font-size:17px}.tutorial-step p{font-size:11px;line-height:1.5}.tutorial-step aside{background:#fff;gap:7px;padding:8px;font-size:10px;display:flex}.tutorial-requirement{color:#9b3b00;font-weight:700}.tutorial-actions{gap:6px;margin-top:8px;display:grid}.tutorial-actions button{text-transform:uppercase;cursor:pointer;background:#fff;border:1px solid #111;justify-content:center;align-items:center;gap:5px;min-height:34px;font:800 8px ui-monospace,monospace;display:flex}.tutorial-actions button:first-child{color:#fff;background:#111}.tutorial-actions button:disabled{opacity:.35;cursor:not-allowed}.orbit-button{letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:#fff;border:1px solid #111;width:100%;min-height:31px;margin-top:9px;font:800 8px ui-monospace,monospace}.orbit-button:hover{color:#fff;background:#111}.parallel-data .rail-section-heading{margin-top:0}.parallel-data table{border-collapse:collapse;width:100%;font:9px ui-monospace,monospace}.parallel-data th,.parallel-data td{border-bottom:1px solid var(--line);text-align:right;padding:6px 3px}.parallel-data th:first-child{text-align:left;text-overflow:ellipsis;white-space:nowrap;max-width:90px;overflow:hidden}.parallel-data thead{color:var(--muted);text-transform:uppercase}.assembly-diagnostics .rail-section-heading{margin-top:0}.diagnostic-list{color:#b32727;margin:0;padding-left:16px;font-size:9px;line-height:1.5}.constraint-row{border:1px solid var(--line);grid-template-columns:42px 1fr;gap:6px;margin:6px 0 0;padding:6px;font:8px ui-monospace,monospace;display:grid}.constraint-row strong{text-transform:uppercase}.constraint-row span{color:var(--muted);text-overflow:ellipsis;overflow:hidden}.port-shortcuts{flex-wrap:wrap;gap:4px;margin-bottom:8px;display:flex}.port-shortcuts button{border:1px solid var(--line);text-transform:uppercase;cursor:pointer;background:#fff;min-height:25px;padding:4px 6px;font:700 7px ui-monospace,monospace}.port-shortcuts button.active,.port-shortcuts button:hover{color:#fff;border-color:var(--green);background:var(--green)}.mounted-port-badge{color:var(--green);border:1px solid var(--green);background:#f4fff9;grid-template-columns:12px 1fr auto;gap:2px 5px;margin-top:9px;padding:7px 8px;display:grid}.mounted-port-badge span{grid-row:1/3;align-self:center}.mounted-port-badge strong{text-transform:uppercase;font:800 8px ui-monospace,monospace}.mounted-port-badge small{color:var(--muted);text-transform:uppercase;font:7px ui-monospace,monospace}.mounted-port-badge button{color:#fff;background:var(--green);text-transform:uppercase;cursor:pointer;border:0;grid-area:1/3/3;padding:0 7px;font:800 7px ui-monospace,monospace}.app-notice{z-index:30;color:#777;letter-spacing:.05em;text-transform:uppercase;pointer-events:none;font:700 7px ui-monospace,monospace;position:fixed;bottom:7px;right:9px}@media (width<=1120px){.app-bar{grid-template-columns:210px 1fr auto}.wordmark{border-right:1px solid var(--black)}.file-actions{display:none}.studio-layout{grid-template-columns:210px minmax(460px,1fr) 286px}}@media (width<=860px){body{overflow:auto}.mechanarium-app{height:auto;min-height:100vh}.app-bar{grid-template-columns:1fr auto;position:sticky;top:0}.scenario-identity{display:none}.run-controls{border-left:0}.wordmark{border-right:0}.studio-layout{grid-template-columns:1fr;display:grid}.builder-rail{border-bottom:1px solid #111;border-right:0;max-height:none}.element-grid{grid-template-columns:repeat(3,1fr)}.element-grid button{height:72px}.world-stage{height:72vh;min-height:540px}.data-rail{border-top:1px solid #111;border-left:0}.data-rail>section{max-width:none}.snap-confirmation{grid-template-columns:28px minmax(0,1fr)}.snap-actions{grid-column:1/-1}.snap-actions button{flex:1}}@media (prefers-reduced-motion:reduce){.spin{animation:none}}.easter-egg-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9999;background:#0f172a99;place-items:center;animation:.2s ease-out fadeIn;display:grid;position:fixed;inset:0}.easter-egg-modal{color:#111827;text-align:center;background:#e5e7eb;border:2px solid #2563eb;border-radius:12px;width:90%;max-width:480px;padding:36px 32px 30px;animation:.25s cubic-bezier(.16,1,.3,1) popIn;position:relative;box-shadow:0 24px 60px #00000059,0 0 35px #2563eb66}@keyframes popIn{0%{opacity:0;transform:scale(.92)translateY(12px)}to{opacity:1;transform:scale(1)translateY(0)}}.easter-egg-close{color:#4b5563;cursor:pointer;background:#00000014;border:0;border-radius:50%;place-items:center;width:32px;height:32px;transition:all .15s;display:grid;position:absolute;top:14px;right:14px}.easter-egg-close:hover{color:#fff;background:#2563eb;transform:scale(1.05)}.easter-egg-badge{letter-spacing:.16em;color:#1d4ed8;background:#2563eb1f;border:1px solid #2563eb66;border-radius:20px;margin-bottom:22px;padding:4px 14px;font:800 10px ui-monospace,monospace;display:inline-block}.easter-egg-quote{margin:0;padding:0}.easter-egg-salutation{color:#111827;letter-spacing:-.01em;margin:0 0 12px;font-size:21px;font-weight:800}.easter-egg-main{color:#374151;margin:0;font-size:15px;font-style:italic;line-height:1.55}.easter-egg-divider{background:linear-gradient(90deg,#0000,#2563eb,#0000);width:64px;height:2px;margin:22px auto}.easter-egg-thanks{color:#4b5563;margin:0;font:600 13px ui-monospace,monospace}
