.uplot,.uplot *,.uplot :before,.uplot :after{box-sizing:border-box}.uplot{width:min-content;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}.u-title{text-align:center;font-size:18px;font-weight:700}.u-wrap{-webkit-user-select:none;user-select:none;position:relative}.u-over,.u-under{position:absolute}.u-under{overflow:hidden}.uplot canvas{width:100%;height:100%;display:block;position:relative}.u-axis{position:absolute}.u-legend{text-align:center;margin:auto;font-size:14px}.u-inline{display:block}.u-inline *{display:inline-block}.u-inline tr{margin-right:16px}.u-legend th{font-weight:600}.u-legend th>*{vertical-align:middle;display:inline-block}.u-legend .u-marker{width:1em;height:1em;margin-right:4px;background-clip:padding-box!important}.u-inline.u-live th:after{content:":";vertical-align:middle}.u-inline:not(.u-live) .u-value{display:none}.u-series>*{padding:4px}.u-series th{cursor:pointer}.u-legend .u-off>*{opacity:.3}.u-select{pointer-events:none;background:#00000012;position:absolute}.u-cursor-x,.u-cursor-y{pointer-events:none;will-change:transform;position:absolute;top:0;left:0}.u-hz .u-cursor-x,.u-vt .u-cursor-y{border-right:1px dashed #607d8b;height:100%}.u-hz .u-cursor-y,.u-vt .u-cursor-x{border-bottom:1px dashed #607d8b;width:100%}.u-cursor-pt{pointer-events:none;will-change:transform;border:0 solid;border-radius:50%;position:absolute;top:0;left:0;background-clip:padding-box!important}.u-axis.u-off,.u-select.u-off,.u-cursor-x.u-off,.u-cursor-y.u-off,.u-cursor-pt.u-off{display:none}.thermal-workspace-overlay{z-index:3;pointer-events:none;position:absolute;inset:0;overflow:hidden}.unified-workspace.unified-workspace--thermal .electrical-workspace .react-flow,.unified-workspace.unified-workspace--thermal .mechanics-canvas,.unified-workspace.unified-workspace--thermal [data-mechanics-vector-overlay=true],.unified-workspace.unified-workspace--thermal .motor-gear-coupling-overlay,.unified-workspace.unified-workspace--electricity .mechanics-canvas,.unified-workspace.unified-workspace--electricity [data-mechanics-vector-overlay=true],.unified-workspace.unified-workspace--electricity .motor-gear-coupling-overlay,.unified-workspace.unified-workspace--electricity .thermal-node,.unified-workspace.unified-workspace--electricity .thermal-workspace-overlay__edges,.unified-workspace.unified-workspace--mechanics .electrical-workspace .react-flow,.unified-workspace.unified-workspace--mechanics .thermal-node,.unified-workspace.unified-workspace--mechanics .thermal-workspace-overlay__edges{opacity:.22}.thermal-workspace-overlay__pane,.thermal-workspace-overlay__edges{pointer-events:none;background:0 0;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.thermal-workspace-overlay.is-active>.thermal-workspace-overlay__pane{pointer-events:auto}.thermal-workspace-overlay__edges{overflow:visible}.thermal-connection-status{z-index:2;color:#46525c;pointer-events:auto;text-align:center;background:#fffffff0;border:1px solid #d9dee2;border-radius:999px;align-items:center;gap:8px;max-width:min(360px,100% - 32px);margin:0;padding:7px 11px;font-size:12px;font-weight:650;line-height:1.35;display:flex;position:absolute;top:52px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #232d351a}.thermal-connection-status button{color:#8b542c;min-height:28px;font:inherit;cursor:pointer;background:#fff8f2;border:1px solid #e3a063;border-radius:999px;padding:3px 9px;font-weight:750}.thermal-connection-status button:focus-visible{outline-offset:2px;outline:3px solid #087dcc38}.thermal-connection-group{outline:none}.thermal-connection{stroke:#e0792d;stroke-width:3px;stroke-dasharray:8 5;pointer-events:none}.thermal-connection.is-selected{stroke:var(--violet);stroke-width:5px}.thermal-connection__hit-area{stroke:#0000;stroke-width:36px;pointer-events:stroke}.thermal-connection__focus-ring{stroke:#0000;stroke-width:9px;pointer-events:none}.thermal-connection-group:focus-visible .thermal-connection__focus-ring{stroke:#3d318f}.thermal-connection-group:hover .thermal-connection{stroke-width:4px}.thermal-connection__flow-direction{stroke:#9d4f24;stroke-linecap:round;stroke-width:2.5px;pointer-events:none}.thermal-connection__arrowhead{fill:#9d4f24}.thermal-connection__label{fill:#8b542c;text-anchor:middle;paint-order:stroke;stroke:#fff;stroke-width:4px;pointer-events:none;font-size:12px;font-weight:700}.thermal-node{color:#603922;transform-origin:50%;cursor:grab;pointer-events:auto;background:#fff9f2;border:2px solid #e3a063;border-radius:14px;align-items:center;gap:10px;width:176px;min-height:70px;padding:10px 12px;display:flex;position:absolute;box-shadow:0 6px 16px #522c1421}.thermal-node--thermalReservoir{color:#28566d;background:#f4fbff;border-color:#79aeca}.thermal-node.is-selected{border-color:var(--violet);box-shadow:0 0 0 3px #087dcc29,0 8px 20px #522c1429}.thermal-node.is-connecting{outline-offset:4px;outline:3px dashed #e0792d}.thermal-node__icon{background:#e0792d24;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;display:grid}.thermal-node__content{text-align:left;gap:4px;min-width:0;display:grid}.thermal-node__content strong{overflow-wrap:anywhere;text-wrap:balance;white-space:normal;font-size:14px;line-height:1.18}.thermal-node__content span{font-variant-numeric:tabular-nums;font-size:13px}.thermal-inspector__couplings{color:var(--text-muted);font-size:var(--font-caption);gap:7px;margin:0;padding:0;list-style:none;display:grid}.thermal-inspector__body{flex-direction:column;flex:none;display:flex}.thermal-inspector__status{color:#603922;background:#fff8f2;border:1px solid #f1d3bb;border-radius:12px;gap:3px;margin:10px 12px 0;padding:12px;display:grid}.thermal-inspector__status span,.thermal-inspector__status small{color:#7a5a47;font-size:var(--font-caption)}.thermal-inspector__status strong{font-variant-numeric:tabular-nums;font-size:22px;line-height:1.15}.thermal-inspector__details{padding:0}.thermal-inspector__details>summary{min-height:var(--target-min);color:var(--text-muted);cursor:pointer;font-size:var(--font-caption);align-items:center;gap:8px;padding:9px 12px;font-weight:700;list-style:none;display:flex}.thermal-inspector__details>summary:before{content:"›";color:#877acb;font-size:18px;line-height:1;transition:transform .12s}.thermal-inspector__details[open]>summary:before{transform:rotate(90deg)}.thermal-inspector__details[open]>summary{color:var(--text-strong)}.thermal-inspector__details-body{gap:7px;padding:0 12px 10px;display:grid}.thermal-inspector__details-count{color:#6557b8;background:#f0edff;border-radius:999px;place-items:center;min-width:20px;height:20px;margin-left:auto;padding-inline:5px;font-size:11px;display:grid}.thermal-inspector__readout{background:#fafbfc;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:4px 8px;padding:8px;display:grid}.thermal-inspector__readout strong{color:#46525c;font-variant-numeric:tabular-nums}.thermal-inspector__readout>span:last-child{grid-column:1/-1}.thermal-inspector__couplings li{border:1px solid var(--soft-line);border-radius:10px;gap:7px;padding:9px;display:grid}.thermal-inspector__coupling-action{min-height:var(--target-min);color:#6557b8;font-size:var(--font-caption);background:#faf9ff;border:1px solid #ded9f6;border-radius:8px;justify-self:start;padding:0 10px;font-weight:700}.thermal-inspector>.delete-item-button{min-height:var(--control-height)}.thermal-inspector__select{width:100%;height:var(--control-height);color:#46525c;min-width:116px;max-width:180px;font-size:var(--font-ui-small);background:#fafbfc;border:1px solid #dfe5e8;border-radius:8px;outline:0;padding:0 7px}.thermal-inspector__select:focus-visible{border-color:#a59bed;box-shadow:0 0 0 3px #087dcc14}.thermal-inspector__select:disabled,.thermal-inspector__coupling-action:disabled{cursor:not-allowed;opacity:.5}@media (pointer:coarse){.thermal-connection__hit-area{stroke-width:44px}.thermal-inspector__coupling-action,.thermal-inspector>.delete-item-button,.thermal-connection-status button{min-height:44px}}.help-panel-backdrop{z-index:120;background:#19212b47;justify-content:flex-end;display:flex;position:fixed;inset:0}.help-panel{border-left:1px solid var(--line);width:min(430px,100vw - 24px);height:100dvh;color:var(--ink);background:var(--panel);grid-template-rows:auto auto auto minmax(0,1fr);animation:.16s ease-out help-panel-enter;display:grid;overflow:hidden;box-shadow:-18px 0 48px #19212b33}@keyframes help-panel-enter{0%{opacity:0;transform:translate(18px)}}.help-panel__header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:16px 18px 13px;display:flex}.help-panel__header h2{color:var(--text-strong);margin:0;font-size:1.15rem}.help-panel__icon-button,.context-help-button{width:var(--target-min);min-width:var(--target-min);height:var(--target-min);border:1px solid var(--line);color:var(--muted);background:var(--panel);border-radius:9px;place-items:center;padding:0;display:inline-grid}.context-help-button{width:30px;min-width:30px;height:30px;color:var(--violet-dark);background:var(--brand-blue-soft);border-color:#d9d3fa}.toolbox-view-bar{grid-template-columns:minmax(0,1fr) auto}.toolbox-view-actions{align-items:center;padding-right:2px;display:flex}.toolbox-view-actions .context-help-button{background:0 0;border:0}.inspector-help-action{z-index:12;position:absolute;top:17px;right:58px}.result-actions .context-help-button{color:var(--violet-dark)}.help-panel__icon-button:hover,.context-help-button:hover{color:var(--violet-dark);background:var(--violet-soft);border-color:#c8c0f4}.help-panel__controls{border-bottom:1px solid var(--line);background:var(--surface-subtle);grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:12px 14px;display:grid}.help-search{min-width:0;min-height:var(--control-height);border:1px solid var(--line);color:var(--muted);background:var(--panel);border-radius:9px;align-items:center;gap:8px;padding:0 10px;display:flex}.help-search:focus-within{border-color:var(--focus-ring);box-shadow:0 0 0 2px #087dcc1f}.help-search input{width:100%;min-width:0;height:100%;color:var(--ink);font-size:var(--font-ui-small);background:0 0;border:0;outline:0;padding:0}.help-panel__copy-button{min-height:var(--control-height);color:var(--violet-dark);background:var(--brand-blue-soft);font-size:var(--font-caption);border:1px solid #d9d3fa;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:0 11px;font-weight:700;display:inline-flex}.help-copy-status{color:var(--muted);font-size:var(--font-caption);grid-column:1/-1;font-weight:700}.help-search-results{border-bottom:1px solid var(--line);background:var(--panel);max-height:min(44dvh,390px);padding:10px 14px 12px;overflow:auto}.help-search-results>p{color:var(--muted);font-size:var(--font-caption);margin:0 0 8px}.help-search-results ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.help-search-results button{border:1px solid var(--line);text-align:left;background:var(--surface-subtle);border-radius:9px;gap:3px;width:100%;padding:10px 11px;display:grid}.help-search-results button:hover{background:var(--violet-soft);border-color:#c8c0f4}.help-search-results strong{color:var(--text-strong);font-size:var(--font-ui-small)}.help-search-results span{color:var(--muted);font-size:var(--font-caption);line-height:1.4}.help-contents{border-bottom:1px solid var(--line);background:var(--panel)}.help-contents>summary{cursor:pointer;min-height:38px;color:var(--muted);font-size:var(--font-ui-small);align-items:center;gap:7px;padding:0 15px;font-weight:700;list-style:none;display:flex}.help-contents>summary::-webkit-details-marker{display:none}.help-contents[open]>summary{color:var(--violet-dark);background:#faf9ff}.help-contents nav{gap:12px;max-height:min(45dvh,410px);padding:2px 14px 14px;display:grid;overflow-y:auto}.help-contents nav section{gap:3px;display:grid}.help-contents nav h3{color:var(--muted);font-size:var(--font-caption);letter-spacing:.04em;text-transform:uppercase;margin:8px 5px 3px}.help-contents nav button{min-height:var(--target-min);color:var(--ink);text-align:left;font-size:var(--font-ui-small);background:0 0;border:0;border-radius:7px;padding:7px 9px}.help-contents nav button:hover,.help-contents nav button[aria-current=page]{color:var(--violet-dark);background:var(--violet-soft)}.help-panel__article-scroll{overscroll-behavior:contain;background:#fff;min-height:0;overflow-y:auto}.help-panel__article-toolbar{min-height:42px;color:var(--muted);font-size:var(--font-caption);background:#fbfcfd;border-bottom:1px solid #edf0f2;justify-content:space-between;align-items:center;gap:12px;padding:5px 16px;display:flex}.help-panel__article-toolbar button,.help-panel__article-toolbar span{min-height:32px;color:var(--violet-dark);background:0 0;border:0;border-radius:7px;align-items:center;gap:4px;padding:0 7px;font-weight:700;display:inline-flex}.help-panel__article-toolbar button:hover{background:var(--violet-soft)}.help-panel__article-toolbar small{justify-items:end;line-height:1.3;display:grid}.help-panel__article-toolbar time{color:#77828b;font-size:.92em}.help-panel__state{min-height:220px;color:var(--muted);text-align:center;font-size:var(--font-body);place-content:center;justify-items:center;padding:28px;display:grid}.help-panel__state strong{color:var(--text-strong)}.help-panel__state p{margin:8px 0 14px}.help-panel__state button{min-height:var(--target-min);color:var(--violet-dark);background:var(--violet-soft);border:1px solid #d9d3fa;border-radius:8px;padding:0 12px;font-weight:700}.help-panel .help-article{max-width:100%;color:var(--ink);overflow-wrap:anywhere;font-size:var(--font-body);margin:0;padding:20px 18px 34px;line-height:1.58}.help-panel .help-article h1{color:var(--text-strong);margin:0 0 18px;font-size:1.6rem;line-height:1.18}.help-panel .help-article h2{color:var(--text-strong);margin:28px 0 10px;font-size:1.18rem;line-height:1.28}.help-panel .help-article h3{color:var(--text-strong);margin:22px 0 8px;font-size:1rem}.help-panel .help-article p,.help-panel .help-article ul,.help-panel .help-article ol,.help-panel .help-article table{margin-block:0 14px}.help-panel .help-article ul,.help-panel .help-article ol{padding-left:22px}.help-panel .help-article li+li{margin-top:5px}.help-panel .help-article a{color:#4f46c7;text-underline-offset:2px;text-decoration-thickness:1px}.help-panel .help-article code{color:#273653;background:#eef2f8;border-radius:4px;padding:.12em .32em;font:.9em/1.4 ui-monospace,SFMono-Regular,Menlo,monospace}.help-panel .help-article table{border-collapse:collapse;width:100%;display:block;overflow-x:auto}.help-panel .help-article th,.help-panel .help-article td{text-align:left;vertical-align:top;border:1px solid #d8deea;padding:7px 8px}.help-panel .help-article th{background:#f5f7fb}.help-panel .help-formula{color:inherit;cursor:copy;border-radius:5px}.help-panel .help-formula:hover{background:var(--violet-soft)}.help-panel .help-formula:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.help-panel .help-formula--inline{vertical-align:-.28em;max-width:100%;display:inline-flex}.help-panel .help-formula--block{justify-content:center;max-width:100%;margin:16px 0;padding:5px 2px;display:flex;overflow-x:auto}.help-panel .help-formula svg{flex:none;max-width:none}.help-panel .help-formula svg [fill=\#000000]{fill:currentColor}.help-panel .help-formula svg [stroke=\#000000]{stroke:currentColor}@media (width<=860px){.help-panel-backdrop{background:#19212b6b}.help-panel{border-left:0;width:100%;max-width:100%}}@media (width<=520px){.help-panel__controls{grid-template-columns:minmax(0, 1fr) var(--control-height)}.help-panel__copy-button{width:var(--control-height);padding:0}.help-panel__copy-button span{display:none}.help-panel .help-article{font-size:var(--font-ui-small);padding:18px 15px 30px}.help-panel .help-article h1{font-size:1.42rem}}@media (pointer:coarse){.help-panel__icon-button,.context-help-button,.help-panel__copy-button,.help-contents nav button,.help-panel__state button{min-width:var(--target-touch);min-height:var(--target-touch)}}@media (prefers-reduced-motion:reduce){.help-panel{animation:none}}.runtime-error-boundary{box-sizing:border-box;color:#26333d;background:#f4f6f8;place-items:center;min-height:100dvh;padding:24px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:grid}.runtime-error-boundary__card{background:#fff;border:1px solid #d5dce1;border-radius:16px;gap:14px;width:min(100%,560px);padding:clamp(24px,5vw,40px);display:grid;box-shadow:0 18px 48px #1f2a331f}.runtime-error-boundary__brand,.runtime-error-boundary__card h1,.runtime-error-boundary__card p{margin:0}.runtime-error-boundary__brand{color:#176b87;letter-spacing:.06em;text-transform:uppercase;font-size:13px;font-weight:700}.runtime-error-boundary__card h1{font-size:clamp(24px,5vw,34px);line-height:1.15}.runtime-error-boundary__card p,.runtime-error-boundary__card small{color:#566772;line-height:1.55}.runtime-error-boundary__actions{flex-wrap:wrap;gap:10px;margin-top:4px;display:flex}.runtime-error-boundary__actions button{cursor:pointer;color:#fff;min-height:44px;font:inherit;background:#176b87;border:1px solid #176b87;border-radius:9px;padding:10px 16px;font-weight:650}.runtime-error-boundary__actions button+button{color:#176b87;background:#fff}.runtime-error-boundary__actions button:hover{color:#fff;background:#115d76}.runtime-error-boundary__actions button:focus-visible{outline-offset:2px;outline:3px solid #f2a900}.runtime-error-boundary:focus-visible{outline:none}.runtime-error-boundary:focus-visible .runtime-error-boundary__card{outline-offset:3px;outline:3px solid #f2a900}@media (width<=480px){.runtime-error-boundary{padding:12px}.runtime-error-boundary__actions{display:grid}.runtime-error-boundary__actions button{width:100%}}.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#555;--xy-background-pattern-lines-color-default:#333;--xy-background-pattern-cross-color-default:#333;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}:root{color:#25313d;font-synthesis:none;text-rendering:optimizelegibility;--ink:#25313d;--muted:#596773;--text-strong:#26343e;--line:#dce3e7;--soft-line:#e8edef;--panel:#fff;--canvas:#f8fafb;--surface-subtle:#f5f7f9;--surface-raised:#fffffff5;--brand-blue:#087dcc;--brand-blue-dark:#07538f;--brand-blue-soft:#e9f5ff;--mascot-orange:#e57612;--mascot-orange-dark:#9c4108;--mascot-orange-soft:#fff1e4;--focus-ring:var(--brand-blue-dark);--radius-control:9px;--radius-card:12px;--shadow-float:0 10px 30px #1f2d3a21;--violet:var(--brand-blue);--violet-dark:var(--brand-blue-dark);--violet-soft:var(--brand-blue-soft);--orange:var(--mascot-orange);--blue:var(--brand-blue);--teal:#2e988c;--rose:#e45f68;--font-caption:.75rem;--font-ui-small:.8125rem;--font-ui:.875rem;--font-body:.875rem;--font-heading:1rem;--control-height:2.5rem;--target-min:2.25rem;--target-touch:2.75rem;--text-muted:#596773;--text-subtle:#68757f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#eef1f3;font-family:Inter,Segoe UI Variable,Segoe UI,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{min-height:100vh;overflow:hidden}button,input,select,textarea{font:inherit}input[type=number],.model-time strong,.effect-input,.measurement-summary strong,.scene-viewport-controls__zoom{font-variant-numeric:tabular-nums}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[role=tab]:focus-visible,[role=treeitem]:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}button:not(:disabled){cursor:pointer}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.lab-app{background:#eef1f3;grid-template-rows:68px minmax(0,1fr);height:100dvh;min-height:100vh;display:grid;overflow:hidden}.project-restore-loading{min-height:100dvh;color:var(--text-muted);font-size:var(--font-ui);background:#eef1f3;place-items:center;display:grid}.project-restore-error{width:min(480px,100vw - 32px);color:var(--text-primary);background:#fffaf0;border:1px solid #e1b867;border-radius:18px;gap:14px;padding:24px;display:grid;box-shadow:0 12px 36px #222d3824}.project-restore-error h1,.project-restore-error p{margin:0}.project-restore-error div{flex-wrap:wrap;gap:10px;display:flex}.lab-assistant-anchor{z-index:10000;will-change:transform;width:112px;height:112px;position:fixed;top:0;left:0}.lab-assistant{touch-action:none;-webkit-user-select:none;user-select:none;outline-offset:3px;cursor:grab;-webkit-user-drag:none;background:0 0;border:0;border-radius:28px;width:112px;height:112px;padding:0;transition:opacity .16s,filter .16s;position:absolute;inset:0;overflow:visible}.lab-assistant-anchor[data-focus-mode=true] .lab-assistant{opacity:.76}.lab-assistant-anchor[data-focus-mode=true]:hover .lab-assistant,.lab-assistant-anchor[data-focus-mode=true]:focus-within .lab-assistant{opacity:1}.lab-assistant__dismiss{z-index:2;opacity:0;color:#61707b;pointer-events:none;background:#fffffff5;border:1px solid #d8e0e6;border-radius:999px;place-items:center;width:28px;height:28px;padding:0 0 2px;font-size:20px;line-height:1;transition:opacity .14s,scale .14s,color .14s,background-color .14s;display:grid;position:absolute;top:-9px;right:-6px;scale:.82;box-shadow:0 4px 12px #222d382e}.lab-assistant-anchor:hover .lab-assistant__dismiss,.lab-assistant-anchor:focus-within .lab-assistant__dismiss{opacity:1;pointer-events:auto;scale:1}.lab-assistant__dismiss:hover,.lab-assistant__dismiss:focus-visible{color:#9f2f38;background:#fff1f2}.lab-assistant__dismiss:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.lab-assistant__emote{z-index:2;color:#294b7d;letter-spacing:1px;pointer-events:none;background:#fffffff0;border:2px solid #9caec6;border-radius:12px 12px 12px 3px;min-width:26px;padding:3px 7px;font-size:13px;font-weight:800;line-height:1.1;animation:.24s ease-out both lab-assistant-emote-enter;position:absolute;top:2px;right:-8px;box-shadow:0 3px 8px #222d3829}.lab-assistant__emote[data-emote=heart]{color:#d73f57}.lab-assistant__emote[data-emote=sparkles],.lab-assistant__emote[data-emote=bulb]{color:#ad7000}.lab-assistant__emote[data-emote=exclamation]{color:#b43a40}.lab-assistant__emote[data-emote=purr]{letter-spacing:0;white-space:nowrap;right:-18px}.lab-assistant[data-sleeping=true] .lab-assistant__emote{animation:1.8s ease-in-out infinite lab-assistant-sleep-bubble}@keyframes lab-assistant-emote-enter{0%{opacity:0;transform:translateY(6px)scale(.82)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes lab-assistant-sleep-bubble{0%,to{transform:translateY(2px)}50%{transform:translateY(-4px)}}.lab-assistant:hover{filter:drop-shadow(0 8px 8px #222d382e)}.lab-assistant:focus-visible{outline:3px solid var(--focus-ring)}.lab-assistant.is-dragging{cursor:grabbing;filter:drop-shadow(0 10px 10px #222d383d)}.lab-assistant__sprite{image-rendering:auto;pointer-events:none;background-repeat:no-repeat;width:112px;height:112px;display:block}.lab-assistant__sprite--main{background-image:var(--assistant-sprite-1x,url(/assistant/corgi-assistant-sprite-sheet-v2.png));background-size:896px 784px}.lab-assistant__sprite--sleep{background-image:var(--assistant-sprite-1x,url(/assistant/corgi-assistant-sleep-sprite-sheet-v2.png));background-size:896px 336px}.lab-assistant__sprite--facepalm{background-image:url(/assistant/corgi-assistant-facepalm-sprite-sheet-v2.png);background-size:896px 112px}.lab-assistant__sprite--hardHatEquip{background-image:url(/assistant/corgi-assistant-hard-hat-equip-sprite-sheet-v2.png);background-size:896px 112px}@supports (background-image:image-set(url("") 1x)){.lab-assistant__sprite--main{background-image:var(--assistant-sprite-set,image-set(url(/assistant/corgi-assistant-sprite-sheet-v2.png) 1x, url(/assistant/corgi-assistant-sprite-sheet-v3@2x.png) 2x))}.lab-assistant__sprite--sleep{background-image:var(--assistant-sprite-set,image-set(url(/assistant/corgi-assistant-sleep-sprite-sheet-v2.png) 1x, url(/assistant/corgi-assistant-sleep-sprite-sheet-v3@2x.png) 2x))}.lab-assistant__sprite--facepalm{background-image:-webkit-image-set(url(/assistant/corgi-assistant-facepalm-sprite-sheet-v2.png) 1x,url(/assistant/corgi-assistant-facepalm-sprite-sheet-v3@2x.png) 2x);background-image:image-set("/assistant/corgi-assistant-facepalm-sprite-sheet-v2.png" 1x,"/assistant/corgi-assistant-facepalm-sprite-sheet-v3@2x.png" 2x)}.lab-assistant__sprite--hardHatEquip{background-image:-webkit-image-set(url(/assistant/corgi-assistant-hard-hat-equip-sprite-sheet-v2.png) 1x,url(/assistant/corgi-assistant-hard-hat-equip-sprite-sheet-v3@2x.png) 2x);background-image:image-set("/assistant/corgi-assistant-hard-hat-equip-sprite-sheet-v2.png" 1x,"/assistant/corgi-assistant-hard-hat-equip-sprite-sheet-v3@2x.png" 2x)}}.lab-assistant__sprite.is-facing-left{transform:scaleX(-1)}.lab-assistant__hard-hat{top:var(--hard-hat-top,16px);left:var(--hard-hat-left,37px);width:var(--hard-hat-width,38px);height:var(--hard-hat-height,27px);transform:translate(var(--hard-hat-x,0), var(--hard-hat-y,0));image-rendering:pixelated;pointer-events:none;background:url(/assistant/corgi-assistant-hard-hat.png) 50%/contain no-repeat;position:absolute}.lab-assistant__hard-hat.is-facing-left{scale:-1 1}.lab-assistant[data-animation=walking] .lab-assistant__hard-hat{--hard-hat-top:18px;--hard-hat-left:39px;--hard-hat-width:34px;--hard-hat-height:24px}.lab-assistant__hard-hat.is-removing{animation:.85s ease-in forwards lab-assistant-hard-hat-remove}.lab-assistant__hard-hat.is-equipping{animation:1.1s ease-out both lab-assistant-hard-hat-equip}@keyframes lab-assistant-hard-hat-equip{0%{opacity:0;transform:translate(var(--hard-hat-x,0), calc(var(--hard-hat-y,0) - 34px)) rotate(-12deg) scale(.82)}55%{opacity:1;transform:translate(calc(var(--hard-hat-x,0) + 2px), calc(var(--hard-hat-y,0) - 5px)) rotate(5deg) scale(1)}to{opacity:1;transform:translate(var(--hard-hat-x,0), var(--hard-hat-y,0)) rotate(0deg) scale(1)}}.lab-assistant[data-mascot=mishanya] .lab-assistant__hard-hat{--hard-hat-top:10px;--hard-hat-left:37px}.lab-assistant[data-mascot=barsik] .lab-assistant__hard-hat{--hard-hat-top:18px;--hard-hat-left:38px;--hard-hat-width:36px;--hard-hat-height:25px}.lab-assistant[data-mascot=cheburashka] .lab-assistant__hard-hat{--hard-hat-top:24px;--hard-hat-left:39px;--hard-hat-width:34px;--hard-hat-height:24px}.lab-assistant[data-mascot=pelmen] .lab-assistant__hard-hat{--hard-hat-top:18px;--hard-hat-left:38px;--hard-hat-width:36px;--hard-hat-height:25px}.lab-assistant[data-mascot=einstein] .lab-assistant__hard-hat{--hard-hat-top:5px;--hard-hat-left:36px;--hard-hat-width:40px;--hard-hat-height:28px}@keyframes lab-assistant-hard-hat-remove{0%{opacity:1;transform:translate(var(--hard-hat-x,0), var(--hard-hat-y,0)) rotate(0deg) scale(1)}35%{opacity:1;transform:translate(calc(var(--hard-hat-x,0) - 2px), calc(var(--hard-hat-y,0) - 5px)) rotate(-8deg) scale(1)}to{opacity:0;transform:translate(calc(var(--hard-hat-x,0) + 6px), calc(var(--hard-hat-y,0) - 38px)) rotate(16deg) scale(.76)}}.lab-assistant[data-sleeping=true] .lab-assistant__hard-hat{top:56px;left:4px;transform:rotate(-14deg)scale(.8)}@media (prefers-reduced-motion:reduce){.lab-assistant__dismiss{transition:none}.lab-assistant__emote{animation:none}.lab-assistant__hard-hat.is-removing{opacity:0;animation:none}.lab-assistant__hard-hat.is-equipping{animation:none}}.lab-assistant-hint{z-index:10000;isolation:isolate;width:min(320px,100vw - 16px);color:var(--ink);filter:drop-shadow(0 14px 22px #1f2d3a29);transform-origin:var(--assistant-tail-x) top;background:#fffffffa;border:2px solid #f0c294;border-radius:30px;padding:0;animation:.42s cubic-bezier(.16,1.25,.35,1) both lab-assistant-cloud-enter,3.2s ease-in-out .42s infinite lab-assistant-cloud-float;position:fixed;overflow:visible;box-shadow:0 14px 38px #1f2d3a38}@keyframes lab-assistant-cloud-enter{0%{opacity:0;transform:translateY(var(--cloud-enter-y,-14px)) scale(.38)}68%{opacity:1;transform:translateY(2px)scale(1.035)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes lab-assistant-cloud-float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.lab-assistant-hint:before,.lab-assistant-hint:after{z-index:0;content:"";pointer-events:none;position:absolute}.lab-assistant-hint:before{left:calc(var(--assistant-tail-x) - 17px);background:#f0c294;width:34px;height:24px}.lab-assistant-hint:after{left:calc(var(--assistant-tail-x) - 13px);background:#fffffffa;width:26px;height:19px}.lab-assistant-hint[data-placement=below]:before,.lab-assistant-hint[data-placement=below]:after{clip-path:polygon(50% 0,100% 100%,0 100%)}.lab-assistant-hint[data-placement=below]:before{clip-path:path("M 0 24 C 8 24 11 12 17 0 C 23 12 26 24 34 24 Z")}.lab-assistant-hint[data-placement=below]:after{clip-path:path("M 0 19 C 6 19 9 10 13 0 C 17 10 20 19 26 19 Z")}.lab-assistant-hint[data-placement=below]:before{top:-21px}.lab-assistant-hint[data-placement=below]:after{top:-16px}.lab-assistant-hint[data-placement=above]{--cloud-enter-y:14px;transform-origin:var(--assistant-tail-x) bottom}.lab-assistant-hint[data-placement=above]:before,.lab-assistant-hint[data-placement=above]:after{clip-path:polygon(0 0,100% 0,50% 100%)}.lab-assistant-hint[data-placement=above]:before{clip-path:path("M 0 0 C 8 0 11 12 17 24 C 23 12 26 0 34 0 Z")}.lab-assistant-hint[data-placement=above]:after{clip-path:path("M 0 0 C 6 0 9 9 13 19 C 17 9 20 0 26 0 Z")}.lab-assistant-hint[data-placement=above]:before{bottom:-21px}.lab-assistant-hint[data-placement=above]:after{bottom:-16px}.lab-assistant-hint__content{z-index:1;max-height:var(--assistant-content-max-height);border-radius:28px;padding:14px;position:relative;overflow:auto}.lab-assistant-hint__header{z-index:1;color:var(--mascot-orange-dark);font-size:var(--font-caption);justify-content:space-between;align-items:center;gap:12px;display:flex;position:relative}.lab-assistant-hint__close{width:32px;min-width:32px;height:32px;color:var(--muted);background:0 0;border:0;border-radius:9px;place-items:center;padding:0;font-size:1.45rem;line-height:1;display:inline-grid}.lab-assistant-hint__close:hover{color:var(--mascot-orange-dark);background:var(--mascot-orange-soft)}.lab-assistant-hint h2{color:var(--text-strong);margin:5px 0 6px;font-size:1rem;line-height:1.3}.lab-assistant-hint p{color:var(--ink);font-size:var(--font-ui-small);margin:0;line-height:1.5}.lab-assistant-hint__actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.lab-assistant-hint__actions button{border:1px solid var(--line);min-height:36px;color:var(--violet-dark);background:var(--panel);font-size:var(--font-caption);border-radius:9px;padding:7px 11px;font-weight:700}.lab-assistant-hint__actions button:hover{background:var(--mascot-orange-soft);border-color:#efbd8d}.lab-assistant-hint__actions button.is-primary{border-color:var(--violet-dark);color:#fff;background:var(--violet-dark)}.lab-assistant-hint__actions button.is-quiet{color:var(--muted);margin-right:auto}.lab-assistant-hint[data-mode=cue]{filter:none;border-width:1px;border-radius:18px;width:min(276px,100vw - 16px);animation:.22s ease-out both lab-assistant-cloud-enter;box-shadow:0 9px 24px #1f2d3a2e}.lab-assistant-hint[data-mode=cue] .lab-assistant-hint__content{border-radius:17px;padding:10px 42px 10px 12px;overflow:hidden}.lab-assistant-hint[data-mode=cue] .lab-assistant-hint__header{position:absolute;top:3px;right:3px}.lab-assistant-hint[data-mode=cue] .lab-assistant-hint__header strong,.lab-assistant-hint[data-mode=cue] .lab-assistant-hint__actions{display:none}.lab-assistant-hint[data-mode=cue] .lab-assistant-hint__close{width:34px;min-width:34px;height:34px}.lab-assistant-hint[data-mode=cue] h2{font-size:var(--font-ui-small);margin:0 0 2px}.lab-assistant-hint[data-mode=cue] p{font-size:var(--font-caption);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.35;display:-webkit-box;overflow:hidden}.lab-assistant-hint__detail{color:var(--muted)!important;font-size:var(--font-caption)!important;margin-top:7px!important}@media (prefers-reduced-motion:reduce){.lab-assistant-hint{animation:none}}@media (pointer:coarse){.lab-assistant__dismiss{opacity:1;pointer-events:auto;width:36px;height:36px;scale:1}.lab-assistant-hint__close,.lab-assistant-hint__actions button{min-width:44px;min-height:44px}}.topbar{z-index:20;background:#fffffff5;border-bottom:1px solid #d8dfe3;grid-template-columns:246px minmax(300px,1fr) auto auto;align-items:center;column-gap:10px;min-width:0;height:68px;padding:0 18px;display:grid;position:relative;box-shadow:0 3px 14px #1f2d3a12}.domain-switch{background:#f3f5f6;border:1px solid #e0e5e8;border-radius:10px;align-items:center;padding:3px;display:inline-flex}.domain-switch__label{color:var(--text-muted);font-size:var(--font-caption);padding:0 7px 0 6px;font-weight:700}.domain-switch button{height:28px;color:var(--text-muted);font-size:var(--font-caption);background:0 0;border:0;border-radius:7px;padding:0 11px;font-weight:700}.domain-switch button.is-active{color:var(--brand-blue-dark);background:#fff;box-shadow:0 2px 7px #2d38431a}.brand-mark{width:200px;min-width:0;height:58px;overflow:hidden}.brand-mark__logo{object-fit:contain;image-rendering:auto;width:195px;max-width:none;height:195px;display:block;transform:translate(-1px,-64px)}.document-title{border-left:1px solid #e2e7ea;align-items:center;gap:12px;min-width:0;padding-left:16px;display:flex}.project-menu{margin-left:8px;position:relative}.project-menu>summary{min-width:132px;min-height:var(--target-min);cursor:pointer;border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:5px 9px;list-style:none;display:grid}.project-menu>summary::-webkit-details-marker{display:none}.project-menu>summary span,.project-menu__panel label>span{color:var(--muted);font-size:var(--font-caption)}.project-menu>summary strong{text-overflow:ellipsis;white-space:nowrap;max-width:170px;font-size:12px;overflow:hidden}.project-menu__panel{z-index:80;border:1px solid var(--line);background:var(--panel);border-radius:12px;gap:10px;width:320px;padding:14px;display:grid;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 14px 36px #181e2d2e}.project-menu__panel label{gap:4px;display:grid}.project-menu__panel input,.project-menu__panel select{width:100%;min-height:var(--control-height);border:1px solid var(--line);background:var(--canvas);color:var(--ink);border-radius:7px;padding:6px 8px}.project-menu__actions{flex-wrap:wrap;gap:6px;display:flex}.project-menu__actions button,.project-menu__import>span{min-height:var(--target-min);cursor:pointer;border:1px solid var(--line);background:var(--canvas);color:var(--ink);font-size:var(--font-caption);border-radius:7px;justify-content:center;align-items:center;padding:7px 9px;display:inline-flex}.project-menu__import input{opacity:0;border:0;width:1px;min-width:1px;height:1px;min-height:1px;padding:0;position:absolute}.project-menu__panel p{color:var(--muted);font-size:var(--font-caption);margin:0}.project-menu__mascots{border:0;min-width:0;margin:0;padding:0}.project-menu__mascots>legend{color:var(--muted);font-size:var(--font-caption);margin-bottom:5px}.project-menu__mascots>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.project-menu__mascots button{cursor:pointer;border:1px solid var(--line);min-width:0;min-height:56px;color:var(--ink);background:var(--canvas);text-align:left;border-radius:9px;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:7px;padding:5px 7px;display:grid}.project-menu__mascots button:last-child:nth-child(odd){grid-column:1/-1}.project-menu__mascots button:hover{background:var(--brand-blue-soft);border-color:#adc9e5}.project-menu__mascots button.is-selected{border-color:var(--brand-blue);background:var(--brand-blue-soft);box-shadow:inset 0 0 0 1px var(--brand-blue)}.project-menu__mascots button>span:last-child{gap:1px;min-width:0;display:grid}.project-menu__mascots strong,.project-menu__mascots small{overflow-wrap:anywhere;white-space:normal;line-height:1.2;overflow:visible}.project-menu__mascots strong{font-size:12px}.project-menu__mascots small{color:var(--muted);font-size:var(--font-caption)}.project-menu__mascot-portrait{background-image:var(--assistant-portrait-1x);image-rendering:auto;background-position:50%;background-repeat:no-repeat;background-size:contain;width:44px;height:44px;display:block}@supports (background-image:image-set(url("") 1x)){.project-menu__mascot-portrait{background-image:var(--assistant-portrait-set,var(--assistant-portrait-1x))}}.project-menu__save-status{color:#2f6856;font-size:var(--font-caption);background:#f1f8f5;border:1px solid #cce3d9;border-radius:8px;padding:8px 10px;font-weight:700}.project-menu__save-status--saving{color:var(--brand-blue-dark);background:var(--brand-blue-soft);border-color:#c8def0}.project-menu__save-status--error{color:#943f49;background:#fff3f4;border-color:#ecc9cc}.project-controls{align-items:center;min-width:0;display:flex}.analysis-config-menu{margin-left:6px;position:relative}.analysis-config-menu>summary{min-width:105px;min-height:var(--target-min);cursor:pointer;border:1px solid var(--line);background:var(--panel);font-size:var(--font-caption);color:var(--muted);border-radius:8px;padding:5px 9px;list-style:none;display:grid}.analysis-config-menu>summary::-webkit-details-marker{display:none}.analysis-config-menu>summary strong{color:var(--ink);font-size:12px}.analysis-config-menu__panel{z-index:81;border:1px solid var(--line);background:var(--panel);border-radius:12px;gap:12px;width:min(560px,100vw - 24px);max-height:calc(100vh - 90px);padding:14px;display:grid;position:absolute;top:calc(100% + 8px);left:0;overflow:auto;box-shadow:0 14px 36px #181e2d2e}.analysis-config-menu__panel header,.analysis-config-menu__panel section,.analysis-config-menu__panel label{gap:6px;display:grid}.analysis-config-menu__panel header small,.analysis-config-menu__panel section>small,.analysis-config-menu__panel label>span,.analysis-config-menu__panel>p{color:var(--muted);font-size:var(--font-caption)}.analysis-config-menu__panel section{border-top:1px solid var(--line);padding-top:10px}.analysis-config-menu__heading{justify-content:space-between;align-items:center;display:flex}.analysis-config-menu__heading span{background:var(--canvas);text-align:center;min-width:24px;font-size:var(--font-caption);border-radius:999px;padding:2px 6px}.analysis-config-menu__panel ul{font-size:var(--font-caption);gap:3px;margin:0;padding-left:18px;display:grid}.analysis-config-menu__panel textarea{resize:vertical;border:1px solid var(--line);background:var(--canvas);width:100%;min-height:128px;color:var(--ink);border-radius:7px;padding:8px;font:12px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace}.analysis-config-menu__panel button{min-height:var(--target-min);cursor:pointer;border:1px solid var(--line);background:var(--canvas);color:var(--ink);font-size:var(--font-caption);border-radius:7px;justify-self:start;padding:7px 9px}.analysis-config-menu__panel button:disabled{cursor:not-allowed;opacity:.55}.analysis-config-menu__errors{color:#b42318}.experiment-context{flex-direction:column;gap:1px;min-width:0;display:flex}.experiment-context strong{color:#34414c;font-size:var(--font-ui-small);white-space:nowrap;font-weight:700}.experiment-context small{color:var(--text-muted);font-size:var(--font-caption)}.document-title__line{align-items:center;gap:8px;min-width:0;font-size:.82rem;display:flex}.document-title__line>span:first-child{color:var(--text-muted)}.document-title__line strong{color:#33404b;text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.document-title__slash{color:#c2c9ce}.document-title__line button{width:24px;height:24px;color:var(--text-muted);background:0 0;border:0;border-radius:6px;place-items:center;padding:0;display:grid}.document-title__line button:hover{background:#f0f3f5}.save-status{color:#3f6f68;font-size:var(--font-caption);background:#edf7f4;border-radius:999px;flex:none;align-items:center;gap:4px;padding:4px 7px;font-weight:650;display:inline-flex}.save-status--saving{color:var(--violet-dark)}.save-status--error{color:#b84d58}.catalog-status{color:#5c51a8;font-size:var(--font-caption);background:#f1effd;border-radius:999px;flex:none;align-items:center;gap:5px;padding:4px 8px;font-weight:700;display:inline-flex}.catalog-mode-heading{display:none}.history-controls,.object-edit-controls,.simulation-controls,.topbar-actions{align-items:center;display:flex}.history-controls{border-right:1px solid #e2e7ea;gap:3px;padding-right:10px}.object-edit-controls{border-right:1px solid #e2e7ea;flex:none;gap:1px;padding-right:8px}.object-edit-button{color:#5d6872}.history-button,.icon-button{min-width:var(--target-min);height:var(--target-min);color:#65727d;background:0 0;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:0 8px;display:inline-flex}.history-button--redo,.icon-button{width:var(--target-min);padding:0}.history-button__label{font-size:var(--font-caption);font-weight:650}.history-button:disabled,.icon-button:disabled{color:#c0c7cc;cursor:default}.icon-button:hover:not(:disabled),.history-button:hover:not(:disabled){background:#f6f8f9;border-color:#e1e6e9}.simulation-controls{border:1px solid var(--soft-line);background:var(--surface-subtle);border-radius:13px;grid-area:1/3;gap:8px;padding:5px 6px}.playback-controls{flex:none;align-items:center;gap:4px;display:inline-flex}.step-button{width:auto;min-width:62px;font-size:var(--font-caption);gap:6px;padding:0 9px;font-weight:700}.playback-rate-control{display:inline-flex}.playback-rate-select{width:64px;height:var(--target-min);color:#4f5d68;font-size:var(--font-caption);font-variant-numeric:tabular-nums;background:#fff;border:1px solid #dce2e6;border-radius:9px;padding:0 20px 0 8px;font-weight:750}.playback-rate-select:hover:not(:disabled){background:var(--brand-blue-soft);border-color:#9fcce8}.playback-rate-select:disabled{color:#aeb7be;background:#f5f7f8}.playback-rate-select:focus-visible,.scene-vector-controls>summary:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.clear-scene-button{height:var(--target-min);color:#b84d58;font-size:var(--font-caption);background:#fff;border:1px solid #eadcdf;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-weight:650;display:inline-flex}.clear-scene-button:hover:not(:disabled){background:#fff4f5;border-color:#e2bdc2}.clear-scene-button:disabled{color:#b8c0c6;cursor:default;border-color:#e7ebed}.model-time{border-radius:var(--radius-control);background:#fff;border:1px solid #e1e6e9;flex-direction:column;align-items:flex-start;min-width:78px;padding:4px 9px;display:flex}.model-time small{color:var(--text-muted);font-size:var(--font-caption);line-height:1}.model-time strong{color:#3b4650;font-variant-numeric:tabular-nums;margin-top:3px;font-size:.75rem}.run-button{border:1px solid var(--brand-blue-dark);color:#fff;background:linear-gradient(180deg, #168fd8, var(--brand-blue));border-radius:10px;justify-content:center;align-items:center;gap:8px;min-width:112px;height:38px;padding:0 16px;font-size:.75rem;font-weight:700;display:inline-flex;box-shadow:0 6px 16px #087dcc33}.run-button__label--compact{display:none}.run-button:hover{background:linear-gradient(180deg, var(--brand-blue), var(--brand-blue-dark))}.run-button--pause{background:linear-gradient(#f19a65,#df7b45);border-color:#d57843;box-shadow:0 6px 16px #ce6c372e}.run-button--preparing .spin{animation:.85s linear infinite simulation-preparing-spin}@keyframes simulation-preparing-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.run-button--preparing .spin{animation:none}}.topbar-actions{grid-area:1/4;justify-self:end;gap:7px}.share-button{height:var(--target-min);color:#56636e;font-size:var(--font-caption);white-space:nowrap;background:#fff;border:1px solid #dce2e6;border-radius:9px;align-items:center;gap:7px;padding:0 11px;font-weight:650;display:inline-flex}.share-button:hover{background:#f6f8f9}.workspace-toggle.is-active{color:#fff;border-color:var(--brand-blue-dark);background:var(--brand-blue)}.avatar-button{color:#684f21;background:#f5d89d;border:0;border-radius:11px;place-items:center;width:34px;height:34px;padding:0;font-size:.75rem;font-weight:800;display:grid;position:relative}.avatar-button__status{color:#fff;background:#55a98f;border:2px solid #fff;border-radius:999px;place-items:center;width:15px;height:15px;display:grid;position:absolute;bottom:-2px;right:-3px}.lab-layout{--toolbox-width:272px;--inspector-width:320px;--collapsed-rail-width:38px;grid-template-columns:var(--toolbox-width) minmax(320px, 1fr) var(--inspector-width);grid-template-rows:minmax(300px,1fr) 212px;min-width:0;min-height:0;display:grid;position:relative;overflow:hidden}.shell-drawer{display:contents}.shell-drawer-backdrop{z-index:17;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#181f2757;border:0;padding:0;position:absolute;inset:0}.lab-layout.lab-layout--toolbox-collapsed{--toolbox-width:var(--collapsed-rail-width)}.lab-layout.lab-layout--inspector-collapsed{--inspector-width:var(--collapsed-rail-width)}.lab-layout--results-collapsed{grid-template-rows:minmax(300px,1fr) 48px}.lab-layout--results-expanded{grid-template-rows:minmax(240px,1fr) minmax(280px,42vh)}.lab-layout--focus-mode .workspace{box-shadow:inset 0 0 0 1px #087dcc1a}.experiment-hud{z-index:7;color:#26404f;max-width:calc(100% - 32px);min-height:38px;font-size:var(--font-caption);pointer-events:none;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#fffffff0;border:1px solid #07538f47;border-radius:999px;align-items:center;gap:8px;padding:7px 12px;display:flex;position:absolute;bottom:64px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #1f2d3a29}.experiment-hud strong{white-space:nowrap;font-size:var(--font-ui-small)}.experiment-hud__pulse{background:var(--brand-blue);border-radius:999px;flex:none;width:9px;height:9px;animation:1.5s ease-in-out infinite experiment-hud-pulse;box-shadow:0 0 0 4px #087dcc21}.experiment-hud[data-mode=preparing] .experiment-hud__pulse,.experiment-hud[data-mode=step] .experiment-hud__pulse{background:var(--mascot-orange);box-shadow:0 0 0 4px #e5761221}.experiment-hud__hint{color:var(--text-muted);white-space:nowrap}.experiment-hud kbd{color:#42515d;font:inherit;background:#f7f9fa;border:1px solid #d9e1e5;border-bottom-width:2px;border-radius:5px;padding:2px 6px;font-weight:750}@keyframes experiment-hud-pulse{50%{box-shadow:0 0 0 7px #087dcc0a}}.problem-workspace{background:#eef1f3;grid-template-columns:316px minmax(420px,1fr) 352px;min-width:0;min-height:0;display:grid;overflow:hidden}.problem-workspace--loading{color:var(--text-muted);font-size:var(--font-caption);place-items:center}.problem-catalog-sidebar,.problem-detail,.problem-run-panel{background:#fff;min-width:0;min-height:0}.problem-catalog-sidebar{border-right:1px solid #dbe2e6;flex-direction:column;display:flex}.problem-catalog-sidebar>header{flex:none;padding:20px 20px 14px}.problem-catalog-sidebar h1,.problem-run-panel h2,.problem-detail h2,.problem-detail h3{color:#2d3944;letter-spacing:-.025em;margin:0}.problem-catalog-sidebar h1{font-size:1.12rem}.problem-catalog-sidebar>header p{color:var(--text-muted);font-size:var(--font-caption);margin:5px 0 0}.problem-search{height:38px;color:var(--text-muted);background:#f8fafb;border:1px solid #dfe5e8;border-radius:9px;flex:none;align-items:center;gap:8px;margin:0 14px 10px;padding:0 10px;display:flex}.problem-search:focus-within{border-color:#a69ced;box-shadow:0 0 0 3px #087dcc17}.problem-search input{color:#3f4b55;width:100%;min-width:0;font-size:var(--font-caption);background:0 0;border:0;outline:0}.problem-status-axis{color:var(--text-muted);font-size:var(--font-caption);flex:none;gap:5px;padding:0 14px 9px;font-weight:700;display:grid}.problem-status-axis select{color:#56636d;width:100%;height:32px;font-size:var(--font-caption);background:#fff;border:1px solid #dfe5e8;border-radius:8px;outline:0;padding:0 9px}.problem-status-filters{flex-wrap:wrap;flex:none;gap:5px;padding:0 14px 10px;display:flex}.problem-status-filters button{color:#68747e;height:27px;font-size:var(--font-caption);background:#fff;border:1px solid #e0e5e8;border-radius:999px;align-items:center;gap:5px;padding:0 8px;font-weight:700;display:inline-flex}.problem-status-filters button span{color:var(--text-muted);font-variant-numeric:tabular-nums}.problem-status-filters button[aria-pressed=true]{color:#5648bf;background:var(--brand-blue-soft);border-color:#c9c2f4}.problem-list-summary{color:var(--text-muted);font-size:var(--font-caption);background:#fafbfc;border-top:1px solid #edf0f2;border-bottom:1px solid #edf0f2;flex:none;padding:8px 17px}.problem-list{scrollbar-gutter:stable;flex:1;align-content:start;gap:6px;min-height:0;padding:10px;display:grid;overflow-y:auto}.problem-list-item{text-align:left;background:#fff;border:1px solid #e2e7ea;border-radius:10px;gap:5px;min-width:0;padding:11px 12px;display:grid}.problem-list-item:hover,.problem-list-item[aria-pressed=true]{background:var(--brand-blue-soft);border-color:#a9d3ed}.problem-list-item[aria-pressed=true]{box-shadow:inset 3px 0 0 var(--brand-blue)}.problem-list-item__reference{color:#7163ca;font-size:var(--font-caption);letter-spacing:.03em;text-transform:uppercase;font-weight:750}.problem-list-item>strong{color:#3a4650;font-size:var(--font-caption);text-overflow:ellipsis;line-height:1.4;overflow:hidden}.problem-list-item__footer{color:var(--text-muted);font-size:var(--font-caption);align-items:center;gap:5px;display:flex}.problem-list-item__footer i{background:#a7afb6;border-radius:999px;width:6px;height:6px}.problem-list-item--verified .problem-list-item__footer i,.problem-list-item--engine-pass .problem-list-item__footer i{background:#4fa77b}.problem-list-item--draft .problem-list-item__footer i,.problem-list-item--engine-partial .problem-list-item__footer i,.problem-list-item--engine-unknown .problem-list-item__footer i{background:#d79a43}.problem-list-item--blocked .problem-list-item__footer i,.problem-list-item--engine-blocked .problem-list-item__footer i,.problem-list-item--engine-fail .problem-list-item__footer i{background:#ca6570}.problem-list-item__footer svg{margin-left:auto}.problem-list-empty{min-height:180px;color:var(--text-muted);text-align:center;align-content:center;place-items:center;gap:7px;padding:20px;display:grid}.problem-list-empty strong{color:#66717b;font-size:var(--font-caption)}.problem-list-empty span{font-size:var(--font-caption)}.problem-detail{background:#f8fafb;padding:32px clamp(24px,4vw,54px) 48px;overflow-y:auto}.problem-detail__header{max-width:760px}.problem-detail__eyebrow{color:var(--text-muted);font-size:var(--font-caption);flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:13px;font-weight:650;display:flex}.problem-status{color:#68747e;background:#edf1f3;border-radius:999px;padding:4px 8px}.problem-status--verified,.problem-status--engine-pass,.problem-run-verdict--passed{color:#34765b;background:#eaf6f0}.problem-status--draft,.problem-status--engine-partial,.problem-status--engine-unknown{color:#96631f;background:#fff4df}.problem-status--blocked,.problem-status--engine-blocked,.problem-status--engine-fail,.problem-run-verdict--failed{color:#a3434d;background:#fff0f1}.problem-detail__header h2{max-width:780px;font-size:clamp(1.35rem,2.2vw,2rem);line-height:1.18}.problem-detail__header>p{color:var(--text-muted);font-size:var(--font-caption);margin:12px 0 0}.problem-status-note{color:#7d6338;background:#fffaf0;border:1px solid #e6d9ba;border-radius:11px;gap:10px;max-width:780px;margin-top:22px;padding:13px 14px;display:flex}.problem-status-note svg{flex:none;margin-top:1px}.problem-status-note p{font-size:var(--font-caption);margin:0;line-height:1.55}.problem-support-card,.problem-evidence-lanes,.problem-given,.problem-model-card{background:#fff;border:1px solid #e0e6e9;border-radius:13px;max-width:780px;margin-top:24px;padding:20px;box-shadow:0 5px 18px #2a3a460a}.problem-support-card>p{color:var(--text-muted);font-size:var(--font-caption);margin:14px 0 0;line-height:1.55}.problem-evidence-lanes__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.problem-evidence-lanes__grid article{background:#f8fafb;border:1px solid #e1e6e9;border-radius:10px;min-width:0;padding:12px}.problem-evidence-lanes__grid article>span{color:var(--violet-dark);font-size:var(--font-caption);letter-spacing:.035em;text-transform:uppercase;font-weight:750}.problem-evidence-lanes__grid article>strong{color:#3f4b55;font-size:var(--font-caption);margin-top:7px;display:block}.problem-evidence-lanes__grid article>p,.problem-evidence-lanes>footer{color:var(--text-muted);font-size:var(--font-caption);margin:6px 0 0;line-height:1.5}.problem-evidence-lanes>footer{border-top:1px solid #edf0f2;margin-top:11px;padding-top:10px}.problem-evidence-lanes>footer code{color:#6557b8;font-size:var(--font-caption)}.problem-support-statuses{grid-template-columns:repeat(auto-fit,minmax(126px,1fr));gap:8px;margin:0;display:grid}.problem-support-statuses>div{background:#f5f7f9;border-radius:9px;min-width:0;padding:10px}.problem-support-statuses dt{color:var(--text-muted);font-size:var(--font-caption);gap:3px;font-weight:700;display:grid}.problem-support-statuses dt code{color:var(--text-muted);font-size:var(--font-caption);text-overflow:ellipsis;font-weight:600;overflow:hidden}.problem-support-statuses dd{gap:2px;margin:8px 0 0;display:grid}.problem-support-value strong{color:#4a5660;font-size:var(--font-caption)}.problem-support-value span{color:var(--text-muted);font-size:var(--font-caption);line-height:1.35}.problem-support-value--pass strong{color:#34765b}.problem-support-value--partial strong,.problem-support-value--unknown strong{color:#96631f}.problem-support-value--fail strong,.problem-support-value--blocked strong,.problem-support-value--mismatch strong,.problem-support-value--fail-model-mismatch strong{color:#a3434d}.problem-section-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.problem-section-heading h3{font-size:.92rem}.problem-section-heading>span{color:var(--text-muted);font-size:var(--font-caption)}.problem-parameter-grid{border-top:1px solid #edf0f2;border-left:1px solid #edf0f2;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.problem-parameter-grid>div{border-bottom:1px solid #edf0f2;border-right:1px solid #edf0f2;min-width:0;padding:10px 11px}.problem-parameter-grid dt,.problem-model-card dt,.problem-run-metrics dt,.problem-check dt{color:var(--text-muted);font-size:var(--font-caption);text-overflow:ellipsis;overflow:hidden}.problem-parameter-grid dd,.problem-model-card dd,.problem-run-metrics dd,.problem-check dd{color:#394650;font-size:var(--font-caption);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:4px 0 0;font-weight:700}.problem-section-empty{color:var(--text-muted);font-size:var(--font-caption);background:#f6f8f9;border-radius:9px;margin:0;padding:14px}.problem-model-card>dl{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr));gap:8px;margin:0;display:grid}.problem-model-card>dl>div{background:#f5f7f9;border-radius:9px;min-width:0;padding:11px}.problem-model-card>p{color:var(--text-muted);font-size:var(--font-caption);margin:14px 0 0;line-height:1.55}.problem-run-panel{border-left:1px solid #dbe2e6;flex-direction:column;display:flex}.problem-run-panel>header{flex:none;padding:20px 20px 13px}.problem-run-panel h2{font-size:1.05rem}.problem-run-button{border:1px solid var(--brand-blue-dark);color:#fff;background:linear-gradient(180deg, #168fd8, var(--brand-blue));min-height:42px;font-size:var(--font-caption);border-radius:10px;flex:none;justify-content:center;align-items:center;gap:8px;margin:0 18px 10px;padding:0 14px;font-weight:750;display:flex;box-shadow:0 6px 16px #087dcc33}.problem-run-button:disabled{color:var(--text-muted);box-shadow:none;cursor:default;background:#edf1f3;border-color:#dce2e6}.problem-run-actions{flex:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0 18px 9px;display:grid}.problem-run-actions button{color:#6154af;min-width:0;min-height:35px;font-size:var(--font-caption);background:#faf9ff;border:1px solid #ddd8f6;border-radius:9px;justify-content:center;align-items:center;gap:5px;padding:5px 7px;font-weight:700;line-height:1.25;display:inline-flex}.problem-run-actions button:disabled{color:var(--text-muted);background:#f1f3f5;border-color:#e1e5e8}.problem-batch-progress{color:#7063bc;font-size:var(--font-caption);margin:0 20px 8px;line-height:1.4}.problem-run-disabled-note{color:var(--text-muted);font-size:var(--font-caption);flex:none;margin:0 20px 8px;line-height:1.45}.problem-run-output{flex:1;min-height:0;padding:8px 18px 18px;overflow-y:auto}.problem-run-empty{min-height:240px;color:var(--text-muted);text-align:center;border:1px dashed #d8dfe3;border-radius:12px;align-content:center;place-items:center;gap:8px;padding:24px;display:grid}.problem-run-empty strong{color:#66727c;font-size:var(--font-caption)}.problem-run-empty p{max-width:260px;font-size:var(--font-caption);margin:0;line-height:1.55}.problem-run-failure{color:#a3434d;background:#fff5f5;border:1px solid #efd0d4;border-radius:11px;gap:8px;padding:15px;display:grid}.problem-run-failure p{font-size:var(--font-caption);margin:0;line-height:1.45}.problem-run-verdict{border-radius:11px;align-items:center;gap:10px;padding:13px 14px;display:flex}.problem-run-verdict div{flex-direction:column;gap:2px;display:flex}.problem-run-verdict span{font-size:var(--font-caption)}.problem-run-verdict strong{font-size:.8rem}.problem-run-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:10px 0;display:grid}.problem-run-metrics>div{background:#fafbfc;border:1px solid #e5eaed;border-radius:9px;min-width:0;padding:9px}.problem-check-list{gap:8px;display:grid}.problem-check{background:#fff;border:1px solid #e1e6e9;border-radius:10px;padding:11px}.problem-check--passed{border-color:#cfe6da}.problem-check>header{color:#65717b;align-items:center;gap:6px;display:flex}.problem-check--passed>header{color:#317253}.problem-check>header strong{color:#3b4751;font-size:var(--font-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.problem-check>header span{font-size:var(--font-caption);margin-left:auto}.problem-check dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:10px 0 0;display:grid}.problem-check dl>div{background:#f5f7f8;border-radius:7px;min-width:0;padding:7px}.problem-check dd{font-size:var(--font-caption);white-space:nowrap}.problem-check>p,.problem-diagnostics p{color:var(--text-muted);font-size:var(--font-caption);margin:9px 0 0;line-height:1.45}.problem-diagnostics{color:#68747e;font-size:var(--font-caption);border:1px solid #e2e7ea;border-radius:9px;margin-top:10px;padding:10px}.problem-run-panel>footer{color:var(--text-muted);font-size:var(--font-caption);background:#fafbfc;border-top:1px solid #e4e8eb;flex:none;align-items:center;gap:6px;padding:12px 18px;display:flex}.is-spinning{animation:.9s linear infinite control-spin}@keyframes control-spin{to{transform:rotate(360deg)}}.app-dialog-backdrop{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#181f277a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.app-dialog{background:#fff;border:1px solid #dfe5e8;border-radius:16px;grid-template-rows:auto minmax(0,1fr);width:min(560px,100%);max-height:min(680px,100dvh - 48px);display:grid;overflow:hidden;box-shadow:0 26px 70px #141d253d}.app-dialog>header{border-bottom:1px solid #e7ebed;justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.app-dialog>header h2{color:#2d3944;margin:0;font-size:1.05rem}.app-dialog>header button{color:#68747e;background:#fff;border:1px solid #e0e5e8;border-radius:9px;place-items:center;width:34px;height:34px;padding:0;display:grid}.help-dialog__content{gap:10px;padding:18px 20px 22px;display:grid;overflow-y:auto}.help-dialog__content article{background:#f6f8f9;border-radius:10px;padding:13px 14px}.help-dialog__content article strong{color:#48545e;font-size:var(--font-ui-small)}.help-dialog__content article p,.help-dialog__content article li,.help-dialog__note{color:var(--text-muted);font-size:var(--font-body);margin:5px 0 0;line-height:1.55}.help-dialog__content article ul{color:var(--text-muted);gap:7px;margin:9px 0 0;padding-left:20px;display:grid}.help-dialog__content article li::marker{color:var(--violet)}.help-dialog__content article b{color:var(--text-strong)}.help-dialog__note{color:#6258a4;background:#f2f9fd;border:1px solid #cbe5f6;border-radius:9px;padding:11px 13px}.section-kicker{color:var(--text-muted);font-size:var(--font-caption);letter-spacing:.1em;text-transform:uppercase;margin-bottom:3px;font-weight:700;display:block}.toolbox,.inspector{background:var(--panel);min-height:0}.toolbox{z-index:4;border-right:1px solid #dbe2e6;flex-direction:column;grid-row:1/3;display:flex;position:relative;box-shadow:2px 0 9px #25354208}.toolbox-view-bar{z-index:5;border-bottom:1px solid var(--soft-line);background:#fafbfc;flex:none;grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid;position:relative}.toolbox-view-actions{align-items:center;display:flex}.toolbox-command-button{color:#68757f;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;width:32px;height:44px;padding:0;display:grid}.toolbox-command-button:hover,.toolbox-command-button:focus-visible{color:var(--violet-dark);background:var(--violet-soft)}.toolbox-view-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:8px 4px 8px 10px;display:grid}.toolbox-collapse-button{color:#68757f;background:#fafbfc;border:1px solid #dbe2e6;border-left:0;border-radius:0 11px 11px 0;place-items:center;width:36px;height:44px;margin-right:-37px;padding:0;display:grid;box-shadow:5px 2px 10px #25354214}.toolbox-collapse-button:hover{color:var(--violet-dark);background:var(--violet-soft)}.toolbox-view-tab{min-width:0;min-height:48px;color:var(--text-muted);font-size:var(--font-caption);background:0 0;border:1px solid #0000;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:4px 2px;font-weight:700;display:inline-flex}.toolbox-view-tab span,.library-tab span{overflow-wrap:normal;text-align:center;white-space:nowrap;min-width:0;max-width:100%;line-height:1.15}.toolbox-view-tab span[data-short-label]{font-size:0}.toolbox-view-tab span[data-short-label]:after{content:attr(data-short-label);font-size:var(--font-caption)}.toolbox-view-tab:hover{color:#505d67;background:#f1f3f5}.toolbox-view-tab[aria-selected=true]{color:var(--violet-dark);background:#fff;border-color:#cbe5f6;box-shadow:0 2px 7px #2d384314}.toolbox-view-tab:focus-visible,.scene-tree [role=treeitem]:focus-visible{outline-offset:2px;outline:2px solid #7769dc}.tool-command-palette-backdrop{z-index:110;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#19222a61;place-items:start center;padding:clamp(72px,11vh,118px) 12px 20px;display:grid;position:fixed;inset:0}.tool-shortcut-toast{z-index:72;color:#fff;min-height:38px;font-size:var(--font-ui-small);font-variant-numeric:tabular-nums;pointer-events:none;background:#2a3746f0;border:1px solid #ffffffc2;border-radius:999px;padding:9px 15px;font-weight:800;position:fixed;top:74px;left:50%;transform:translate(-50%);box-shadow:0 10px 28px #121d263d}.tool-command-palette{width:min(640px,100%);min-height:0;max-height:min(650px,100dvh - 96px);color:var(--text);background:#fffffffa;border:1px solid #ffffffb8;border-radius:18px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 28px 80px #121d2647}.tool-command-palette__header{flex:none;justify-content:space-between;align-items:center;gap:16px;padding:15px 17px 10px 20px;display:flex}.tool-command-palette__header span{color:var(--brand-blue-dark);font-size:var(--font-caption);letter-spacing:.08em;text-transform:uppercase;margin-bottom:2px;font-weight:800;display:block}.tool-command-palette__header h2{color:var(--text-strong);letter-spacing:-.02em;margin:0;font-size:1.2rem}.tool-command-palette__close{width:38px;height:38px;color:var(--text-muted);background:var(--surface-subtle);border:0;border-radius:10px;flex:none;place-items:center;padding:0;display:grid}.tool-command-palette__close:hover,.tool-command-palette__close:focus-visible{color:var(--violet-dark);background:var(--violet-soft)}.tool-command-palette__search{min-height:52px;color:var(--brand-blue-dark);background:#fafdff;border:2px solid #cbdfea;border-radius:13px;flex:none;align-items:center;gap:10px;margin:0 16px 10px;padding:0 12px;display:flex;box-shadow:0 0 0 4px #087dcc12}.tool-command-palette__search:focus-within{border-color:var(--violet);box-shadow:0 0 0 4px #087dcc1f}.tool-command-palette__search input{min-width:0;color:var(--text-strong);font-size:var(--font-body);background:0 0;border:0;outline:0;flex:1}.tool-command-palette__search input::placeholder{color:#89959e}.tool-command-palette kbd{color:#68757f;min-width:25px;min-height:23px;font-family:inherit;font-size:var(--font-caption);white-space:nowrap;background:#fff;border:1px solid #d9e0e4;border-bottom-width:2px;border-radius:6px;place-items:center;padding:2px 6px;font-weight:750;display:inline-grid}.tool-command-palette__notice{color:#796222;font-size:var(--font-caption);background:#fff7db;border-radius:8px;margin:0 18px 8px;padding:7px 10px}.tool-command-palette__results{overscroll-behavior-y:contain;flex:1;align-content:start;gap:4px;min-height:0;padding:2px 10px 10px;display:grid;overflow-y:auto}.tool-command-palette__option{text-align:left;min-width:0;min-height:66px;color:var(--text);background:0 0;border:1px solid #0000;border-radius:12px;grid-template-columns:42px minmax(0,1fr) auto 20px;align-items:center;gap:11px;padding:8px 11px;display:grid}.tool-command-palette__option:hover,.tool-command-palette__option[aria-selected=true]{box-shadow:inset 3px 0 0 var(--violet);background:#f2f9fd;border-color:#cbe5f6}.tool-command-palette__icon{color:#66737d;background:#eef2f4;border-radius:10px;place-items:center;width:40px;height:40px;display:grid}.tool-command-palette__icon--blue{color:#4f65c9;background:#edf0ff}.tool-command-palette__icon--orange{color:#cb6f31;background:#fff2e8}.tool-command-palette__icon--violet{color:var(--brand-blue-dark);background:var(--brand-blue-soft)}.tool-command-palette__icon--rose{color:#d3535d;background:#fff0f1}.tool-command-palette__icon--teal{color:#26877c;background:#e9f7f5}.tool-command-palette__copy{gap:3px;min-width:0;display:grid}.tool-command-palette__copy strong,.tool-command-palette__copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tool-command-palette__copy strong{color:var(--text-strong);font-size:var(--font-ui-small)}.tool-command-palette__copy small{color:var(--text-muted);font-size:var(--font-caption)}.tool-command-palette__meta{flex-wrap:wrap;justify-content:flex-end;gap:4px;max-width:164px;display:flex}.tool-command-palette__meta span{color:#62717c;font-size:var(--font-caption);background:#edf2f5;border-radius:999px;padding:3px 7px;font-weight:700}.tool-command-palette__check{color:var(--violet-dark)}.tool-command-palette__empty{color:var(--text-muted);text-align:center;margin:20px 10px;line-height:1.5}.tool-command-palette__footer{border-top:1px solid var(--soft-line);min-height:42px;color:var(--text-muted);font-size:var(--font-caption);background:#fafbfc;flex:none;justify-content:flex-end;align-items:center;gap:15px;padding:7px 16px;display:flex}.tool-command-palette__footer span{align-items:center;gap:4px;display:inline-flex}.toolbox-panel{flex-direction:column;flex:1;min-height:0;display:flex}.toolbox__heading,.inspector__heading{border-bottom:1px solid var(--soft-line);flex:none;justify-content:space-between;align-items:center;height:60px;padding:0 16px 0 18px;display:flex}.toolbox__heading h2,.inspector__heading h2{color:#2e3a45;font-size:var(--font-heading);letter-spacing:-.02em;margin:0}.element-count{color:#68747e;min-width:22px;height:22px;font-size:var(--font-caption);background:#f0f3f5;border-radius:999px;place-items:center;padding:0 6px;font-weight:700;display:grid}.physics-domain-switcher{border-bottom:1px solid var(--soft-line);flex:none;padding:10px 11px 7px}.physics-domain-switcher__tabs{scrollbar-width:none;background:#f3f5f6;border:1px solid #e0e5e8;border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:3px;display:grid}.physics-domain-switcher__tabs::-webkit-scrollbar{display:none}.physics-domain-switcher__tab{min-width:0;height:46px;color:var(--text-muted);font-size:var(--font-caption);white-space:nowrap;background:0 0;border:0;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:3px 2px;font-weight:700;display:inline-flex}.physics-domain-switcher__tab>span{text-overflow:ellipsis;max-width:100%;overflow:hidden}.physics-domain-switcher__tab[aria-selected=true]{color:var(--violet-dark);background:#fff;box-shadow:0 2px 7px #2d38431a}.physics-domain-switcher>p{min-height:32px;color:var(--text-muted);font-size:var(--font-ui-small);text-wrap:balance;margin:6px 5px 0;line-height:1.35;overflow:hidden}.library-tabs{flex:none;grid-template-columns:repeat(3,minmax(0,1fr));padding:9px 11px 0;display:grid}.library-tab{min-width:0;height:52px;color:var(--text-muted);font-size:var(--font-caption);background:0 0;border:0;border-bottom:2px solid #0000;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:4px 2px;font-weight:650;display:flex;position:relative}.library-tab[aria-selected=true]{border-bottom-color:var(--violet);color:var(--violet-dark)}.library-tab:hover{color:#5c6770}.library-search{height:var(--control-height);color:var(--text-muted);background:#f8fafb;border:1px solid #dfe5e8;border-radius:9px;flex:none;align-items:center;gap:8px;margin:12px 14px 9px;padding:0 9px;display:flex}.library-search:focus-within{border-color:#a69ced;box-shadow:0 0 0 3px #087dcc17}.library-search input{color:#3f4b55;width:100%;min-width:0;height:100%;font-size:var(--font-ui-small);background:0 0;border:0;outline:0;padding:0}.library-search input::placeholder{color:var(--text-muted)}.library-search kbd{color:var(--text-muted);font-family:inherit;font-size:var(--font-caption);background:#fff;border:1px solid #e2e7ea;border-radius:5px;flex:none;padding:2px 5px}.catalog-scope{flex:none;justify-content:space-between;align-items:center;gap:8px;min-height:34px;margin:0 14px 3px;display:flex}.catalog-scope>span{color:var(--text-muted);font-size:var(--font-caption);font-weight:700}.catalog-scope>div{border:1px solid var(--line);background:var(--surface-subtle);border-radius:9px;padding:2px;display:inline-flex}.catalog-scope button{min-height:28px;color:var(--text-muted);font-size:var(--font-caption);background:0 0;border:0;border-radius:7px;padding:0 9px;font-weight:700}.catalog-scope button[aria-pressed=true]{color:var(--brand-blue-dark);background:var(--panel);box-shadow:0 2px 6px #1f2d3a17}.catalog-scope button:hover:not([aria-pressed=true]){color:var(--text-strong);background:#ffffff94}.quick-tools{background:linear-gradient(145deg,#f6fbff,#f9f8ff);border:1px solid #dbe8f0;border-radius:13px;flex:none;gap:7px;margin:2px 11px 9px;padding:9px;display:grid}.quick-tools__heading{justify-content:space-between;align-items:center;gap:8px;padding:0 2px;display:flex}.quick-tools__heading h3{color:#53636f;font-size:var(--font-caption);margin:0;font-weight:800}.quick-tools__heading span{color:var(--brand-blue-dark);font-size:var(--font-caption);font-variant-numeric:tabular-nums;font-weight:800}.quick-tools__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.quick-tools .tool-card{background:#ffffffd1;gap:6px;min-height:50px;padding:6px 36px 6px 6px}.quick-tools .tool-card__icon{border-radius:8px;width:29px;height:29px}.quick-tools .tool-card__copy strong{font-size:var(--font-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tool-card__shortcut{z-index:1;color:#fff;background:var(--violet-dark);font-variant-numeric:tabular-nums;border:1px solid #ffffffd1;border-radius:6px;place-items:center;width:18px;height:18px;font-size:.66rem;font-weight:850;line-height:1;display:grid;position:absolute;top:3px;left:3px;box-shadow:0 2px 5px #1f2d3a33}.toolbox__category{overscroll-behavior-y:contain;scrollbar-gutter:stable;flex:1;min-height:0;padding:0 11px 10px;overflow-y:auto}.category-label{color:var(--text-muted);font-size:var(--font-caption);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:center;padding:10px 6px 7px;font-weight:750;display:flex}.category-label span:last-child{color:var(--text-muted);font-variant-numeric:tabular-nums}.tool-list{gap:6px;display:grid}.tool-families{gap:12px;display:grid}.tool-family{gap:6px;display:grid}.tool-family h3{color:var(--text-muted);font-size:var(--font-caption);margin:0 5px;font-weight:750}.tool-list--family{grid-template-columns:minmax(0,1fr)}.tool-list--family .tool-card{gap:7px;min-height:62px;padding:8px 7px}.tool-list--family .tool-card__icon{border-radius:8px;width:31px;height:31px}.tool-list--family .tool-card__copy strong{font-size:var(--font-caption);text-overflow:ellipsis;white-space:nowrap;line-height:1.2;overflow:hidden}.tool-list__empty{color:var(--text-muted);font-size:var(--font-caption);text-align:center;margin:16px 8px;line-height:1.5}.tool-card-shell{min-width:0;position:relative}.tool-card-shell>.tool-card{width:100%}.tool-card-shell.has-favorite-action>.tool-card{padding-right:40px}.quick-tools .tool-card-shell.has-favorite-action>.tool-card{gap:4px;padding-right:34px}.quick-tools .tool-card__icon{width:26px;height:26px}.quick-tools .tool-card__favorite{width:28px;height:28px}.tool-card{text-align:left;background:#fbfcfd;border:1px solid #edf0f2;border-radius:11px;align-items:center;gap:11px;min-width:0;min-height:64px;padding:8px 10px;display:flex;position:relative}.tool-card:hover,.tool-card[aria-pressed=true]{background:#f2f9fd;border-color:#cbe5f6;box-shadow:0 5px 15px #08477012}.tool-card[aria-pressed=true]{box-shadow:inset 3px 0 0 var(--violet)}.tool-card__icon{color:#67737d;background:#eef2f4;border-radius:9px;flex:none;place-items:center;width:35px;height:35px;display:grid}.tool-card--blue .tool-card__icon{color:#4f65c9;background:#edf0ff}.tool-card--orange .tool-card__icon{color:#cb6f31;background:#fff2e8}.tool-card--violet .tool-card__icon{color:var(--brand-blue-dark);background:var(--brand-blue-soft)}.tool-card--rose .tool-card__icon{color:#d3535d;background:#fff0f1}.tool-card--teal .tool-card__icon{color:#26877c;background:#e9f7f5}.tool-card__copy{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.tool-card__copy strong{color:#3f4b55;font-size:var(--font-ui-small);overflow-wrap:anywhere;white-space:normal;font-weight:700;line-height:1.25;overflow:visible}.tool-card__active-dot{background:var(--violet);border-radius:999px;width:6px;height:6px;margin-left:auto;box-shadow:0 0 0 3px #087dcc21}.tool-card__favorite{z-index:1;color:#87939d;opacity:.62;background:0 0;border:0;border-radius:8px;place-items:center;width:30px;height:30px;padding:0;display:grid;position:absolute;top:5px;right:5px}.tool-card__favorite:hover,.tool-card__favorite:focus-visible,.tool-card__favorite[aria-pressed=true]{color:#bb7817;opacity:1;background:#fff4d7}.tool-card__favorite:disabled{color:#aeb6bd;cursor:not-allowed;opacity:.42;background:0 0}.tip-number{color:#fff;background:var(--violet);width:19px;height:19px;font-size:var(--font-caption);border-radius:999px;flex:none;place-items:center;font-weight:800;display:grid}.examples-panel__scroll{overscroll-behavior-y:contain;scrollbar-gutter:stable;flex:1;min-height:0;padding:12px 11px 16px;overflow-y:auto}.example-section+.example-section{border-top:1px solid var(--soft-line);margin-top:16px;padding-top:14px}.example-section h3{color:#66737d;font-size:var(--font-caption);align-items:center;gap:7px;margin:0 5px 8px;font-weight:750;display:flex}.example-section h3 svg{color:var(--violet-dark)}.example-list{gap:7px;display:grid}.example-card{color:#3e4a54;text-align:left;background:#fff;border:1px solid #e0e4e8;border-radius:11px;align-items:flex-start;gap:10px;width:100%;min-height:82px;padding:11px;transition:border-color .12s,background .12s,box-shadow .12s;display:flex}.example-card:hover{background:var(--brand-blue-soft);border-color:#a9d3ed;box-shadow:0 4px 12px #343c460f}.example-card:focus-visible{outline:2px solid var(--brand-blue-dark);outline-offset:2px}.example-card:disabled{cursor:not-allowed;opacity:.52}.example-card__icon{width:32px;height:32px;color:var(--brand-blue-dark);background:var(--brand-blue-soft);border-radius:9px;flex:none;place-items:center;display:grid}.example-card__copy{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.example-card__copy strong{color:#3f4a54;font-size:var(--font-caption);line-height:1.3}.example-card__copy small{color:var(--text-muted);font-size:var(--font-caption);line-height:1.4}.example-card__copy .example-card__scope{color:var(--violet-dark);font-size:var(--font-caption);margin-top:3px}.scene-tree{flex-direction:column;flex:1;min-height:0;display:flex}.scene-tree__content{overscroll-behavior-y:contain;scrollbar-gutter:stable;flex:1;min-height:0;padding:10px 10px 14px;overflow-y:auto}.scene-tree__domain+.scene-tree__domain{margin-top:9px}.scene-tree__domain-toggle{color:#55636e;text-align:left;background:#f3f5f7;border:0;border-radius:8px;align-items:center;gap:7px;width:100%;height:36px;padding:0 8px;display:flex}.scene-tree__domain-toggle:hover{background:#eceff2}.scene-tree__domain-toggle strong{min-width:0;font-size:var(--font-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.scene-tree__domain-toggle>span{color:var(--text-muted);font-size:var(--font-caption);font-variant-numeric:tabular-nums;margin-left:auto}.scene-tree__group{padding:3px 0 0 9px}.scene-tree__category-label{color:var(--text-muted);font-size:var(--font-caption);letter-spacing:.07em;text-transform:uppercase;padding:9px 8px 4px;font-weight:750;display:block}.scene-tree__item{width:100%;min-width:0;min-height:43px;color:var(--text-muted);text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:9px;padding:6px 9px;display:flex;position:relative}.scene-tree__item:hover{color:#53606a;background:#f5f6f8}.scene-tree__item[aria-selected=true]{color:var(--violet-dark);box-shadow:inset 3px 0 0 var(--violet);background:#f7f5ff;border-color:#cbe5f6}.scene-tree__item-copy{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.scene-tree__item-copy strong,.scene-tree__item-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.scene-tree__item-copy strong{color:#44515b;font-size:var(--font-caption)}.scene-tree__item-copy small{color:var(--text-muted);font-size:var(--font-caption)}.scene-tree__selection-mark{background:var(--violet);border-radius:999px;flex:none;width:6px;height:6px;box-shadow:0 0 0 3px #087dcc21}.scene-tree__empty{color:var(--text-muted);font-size:var(--font-caption);margin:10px 8px}.scene-tree__hint{border-top:1px solid var(--soft-line);color:var(--text-muted);font-size:var(--font-caption);flex:none;margin:0;padding:10px 14px 12px;line-height:1.4}.workspace{background:var(--canvas);grid-area:1/2;min-width:0;min-height:0;position:relative;overflow:hidden}.unified-workspace{isolation:isolate;width:100%;height:100%}.unified-workspace--panning{cursor:grabbing;-webkit-user-select:none;user-select:none}.unified-workspace--panning .mechanics-canvas,.unified-workspace--panning .react-flow__pane,.unified-workspace--panning .react-flow__node,.unified-workspace--panning .react-flow__edge{cursor:grabbing!important}.unified-workspace--pan-mode{cursor:grab}.unified-workspace--pan-mode .mechanics-canvas,.unified-workspace--pan-mode .react-flow__pane,.unified-workspace--pan-mode .react-flow__node,.unified-workspace--pan-mode .react-flow__edge{cursor:grab!important}.unified-workspace__layer{z-index:1;pointer-events:none;width:100%;min-width:0;height:100%;min-height:0;transition:opacity .16s;position:absolute;inset:0;overflow:hidden}.unified-workspace--mechanics .mechanics-layer,.unified-workspace--electricity .electrical-layer,.unified-workspace--thermal .thermal-workspace-overlay{z-index:4}.unified-workspace--electricity .thermal-workspace-overlay{z-index:0}.unified-workspace--mechanics .electrical-workspace .react-flow,.unified-workspace--thermal .electrical-workspace .react-flow,.unified-workspace--electricity .mechanics-canvas,.unified-workspace--electricity [data-mechanics-vector-overlay=true],.unified-workspace--thermal .mechanics-canvas,.unified-workspace--thermal [data-mechanics-vector-overlay=true],.unified-workspace--mechanics .thermal-node,.unified-workspace--mechanics .thermal-workspace-overlay__edges,.unified-workspace--electricity .thermal-node,.unified-workspace--electricity .thermal-workspace-overlay__edges{opacity:.48;transition:opacity .16s}.unified-workspace .workspace-tip,.unified-workspace--drawing-guidance .scene-vector-controls,.unified-workspace--drawing-guidance .scene-preflight,.unified-workspace--drawing-guidance [data-mechanics-vector-overlay=true]{display:none}.unified-workspace__layer>.workspace{background:0 0;grid-area:auto;width:100%;height:100%;position:absolute;inset:0}.unified-workspace .mechanics-layer{z-index:1}.unified-workspace .electrical-layer{z-index:2}.unified-workspace--mechanics .mechanics-layer,.unified-workspace .mechanics-layer .mechanics-canvas,.unified-workspace .electrical-layer .react-flow__node,.unified-workspace .electrical-layer .react-flow__edge,.unified-workspace .electrical-layer .react-flow__handle{pointer-events:auto}.unified-workspace .electrical-workspace,.unified-workspace .electrical-layer .react-flow,.unified-workspace .electrical-layer .react-flow__pane{pointer-events:none}.unified-workspace--electricity .electrical-workspace:not([data-active-tool=select]) .react-flow__pane{pointer-events:auto}.motor-gear-coupling-overlay{z-index:4;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.motor-gear-shaft__backdrop,.motor-gear-shaft{fill:none;stroke-linecap:round;stroke-linejoin:round}.motor-gear-shaft__backdrop{stroke:#ffffffeb;stroke-width:7px}.motor-gear-shaft{stroke:#887b9f;stroke-dasharray:9 5;stroke-width:3px}.motor-gear-shaft__endpoint{fill:#fff;stroke:var(--brand-blue);stroke-width:2.5px}.motor-gear-shaft__label rect{fill:#fffffff0;stroke:#a9d3ed}.motor-gear-shaft__label text{fill:var(--brand-blue-dark);font-size:var(--font-caption);font-weight:750}.unified-workspace .mechanics-layer .workspace__meta,.unified-workspace .electrical-layer .workspace__meta,.unified-workspace .mechanics-layer .canvas-controls{display:none}.unified-workspace .electrical-workspace .react-flow{background:0 0;width:100%;height:100%}.unified-workspace--mechanics .electrical-legend--unified{opacity:.45}.mechanics-canvas{touch-action:none;-webkit-user-select:none;user-select:none;position:absolute;inset:0;overflow:hidden}.mechanics-canvas--surface,.mechanics-canvas--curvedSurface{cursor:crosshair}.mechanics-canvas--block,.mechanics-canvas--weight,.mechanics-canvas--gear,.mechanics-canvas--force,.mechanics-canvas--initialVelocity,.mechanics-canvas--ceiling,.mechanics-canvas--string,.mechanics-canvas--spring{cursor:copy}.mechanics-canvas--select{cursor:default}.mechanics-canvas--runtime{cursor:grab}.mechanics-canvas--runtime-dragging{cursor:grabbing}.scene-selection-box{z-index:7;border:1.5px solid var(--brand-blue);pointer-events:none;background:#087dcc1c;border-radius:4px;position:absolute;box-shadow:inset 0 0 0 1px #ffffffb8}.scene-alignment-guides{z-index:7;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.scene-alignment-guides line{stroke:var(--brand-blue);stroke-width:1.5px;stroke-dasharray:5 4;filter:drop-shadow(0 1px 1px #ffffffd9);vector-effect:non-scaling-stroke}.mechanics-transform-overlay{z-index:8;pointer-events:none;position:absolute;inset:0;overflow:hidden}.mechanics-transform-overlay__lines{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.mechanics-transform-overlay__lines polygon,.mechanics-transform-overlay__lines line{fill:#087dcc0d;stroke:var(--brand-blue-dark);stroke-width:1.5px;vector-effect:non-scaling-stroke}.mechanics-transform-overlay__lines line{fill:none;stroke-dasharray:3 3}.mechanics-transform-handle,.mechanics-transform-rotation{z-index:1;touch-action:none;pointer-events:auto;background:0 0;border:0;place-items:center;width:36px;height:36px;padding:0;display:grid;position:absolute;transform:translate(-50%,-50%)}.mechanics-transform-handle:before{border:2px solid var(--brand-blue-dark);content:"";background:#fff;border-radius:3px;width:10px;height:10px;transition:width .1s,height .1s,background .1s;box-shadow:0 1px 4px #35288b3d}.mechanics-transform-handle:hover:before,.mechanics-transform-handle:focus-visible:before,.mechanics-transform-overlay--active .mechanics-transform-handle:before{background:#f4f1ff;width:13px;height:13px}.mechanics-transform-handle--north,.mechanics-transform-handle--south{cursor:ns-resize}.mechanics-transform-handle--east,.mechanics-transform-handle--west{cursor:ew-resize}.mechanics-transform-handle--north-west,.mechanics-transform-handle--south-east{cursor:nwse-resize}.mechanics-transform-handle--north-east,.mechanics-transform-handle--south-west{cursor:nesw-resize}.mechanics-transform-rotation{border:1.5px solid var(--brand-blue-dark);color:#5142b5;cursor:grab;background:#fffffff5;border-radius:50%;box-shadow:0 3px 10px #35288b33}.mechanics-transform-rotation:hover,.mechanics-transform-rotation:focus-visible{color:#fff;background:var(--brand-blue)}.mechanics-transform-overlay--active .mechanics-transform-rotation{cursor:grabbing}.mechanics-transform-handle:focus-visible,.mechanics-transform-rotation:focus-visible{outline:3px solid var(--focus-ring);outline-offset:1px}.unified-workspace--pan-mode .mechanics-transform-overlay,.unified-workspace--panning .mechanics-transform-overlay{opacity:0}.unified-workspace--pan-mode .mechanics-transform-handle,.unified-workspace--pan-mode .mechanics-transform-rotation,.unified-workspace--panning .mechanics-transform-handle,.unified-workspace--panning .mechanics-transform-rotation{pointer-events:none}.string-draft-overlay{z-index:4;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.runtime-body-drag-overlay{z-index:7;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.runtime-body-drag-overlay line{stroke:#3c78d8;stroke-dasharray:7 5;stroke-linecap:round;stroke-width:3px}.runtime-body-drag-overlay circle{fill:#ffffffe0;stroke:#3c78d8;stroke-width:2.5px}.string-draft-overlay polyline{fill:none;stroke:var(--brand-blue);stroke-dasharray:8 6;stroke-linecap:round;stroke-linejoin:round;stroke-width:3px}.string-draft-marker{z-index:5;border:2px solid var(--brand-blue);width:20px;height:20px;color:var(--brand-blue-dark);font-size:var(--font-caption);pointer-events:none;background:#fff;border-radius:50%;place-items:center;font-weight:800;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 2px 8px #4236963d}.mechanics-environment-marker{z-index:4;color:#5449ad;width:22px;height:22px;font-size:var(--font-caption);pointer-events:none;background:#f9f8ffeb;border:1.5px solid #5d54b8;border-radius:50%;place-items:center;font-weight:800;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 2px 8px #43388e33}.mechanics-environment-marker--attractor{color:#a56b23;background:#fff9ebf0;border-color:#d39a49}.scene-runtime-envelope{z-index:2;box-sizing:border-box;pointer-events:none;border:2px dashed #d48f2db8;position:absolute}.scene-runtime-envelope--stopped{border-color:#ca4b52d1}.scene-runtime-envelope span{color:#9a671f;font-size:var(--font-caption);white-space:nowrap;background:#fffaeeeb;border-radius:5px;padding:3px 6px;font-weight:700;position:absolute;top:7px;left:9px}.scene-runtime-envelope--stopped span{color:#a63f47;background:#fff4f5f0}.mechanics-canvas__element{width:100%;height:100%;display:block;position:absolute;inset:0}.workspace__meta{z-index:5;pointer-events:none;gap:6px;display:flex;position:absolute;top:14px;left:15px}.domain-pill,.mode-pill{color:#63717c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);height:26px;font-size:var(--font-caption);background:#ffffffe0;border:1px solid #cfd8dee0;border-radius:8px;align-items:center;gap:6px;padding:0 9px;font-weight:650;display:inline-flex;box-shadow:0 3px 10px #2b39450d}.domain-pill span{background:#5f73d8;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #5f73d821}.mode-pill{color:var(--text-muted)}.drawing-hint,.workspace-tip{z-index:6;color:#51479b;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff0;border:1px solid #d7d2f8;align-items:center;display:flex;position:absolute;bottom:72px;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #342c7426}.force-hint{z-index:7;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);font-size:var(--font-caption);color:#b84852;background:#fffffff2;border:1px solid #f0cfd2;border-radius:10px;align-items:center;gap:7px;padding:9px 12px;font-weight:650;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 7px 24px #2b39451f}.force-hint--connector{color:#51479b;border-color:#d7d2f8;max-width:calc(100% - 32px);bottom:72px}.force-hint--connector>span{min-width:0;line-height:1.35}.force-hint--connector>button{color:#51479b;min-height:30px;font-size:var(--font-caption);cursor:pointer;background:#fff;border:1px solid #d7d2f8;border-radius:8px;flex:none;align-items:center;gap:5px;padding:0 9px;font-weight:700;display:inline-flex}.force-hint--connector>button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.mechanics-connector-targets{z-index:6;pointer-events:none;position:absolute;inset:0;overflow:hidden}.mechanics-connector-target{color:#51479b;cursor:pointer;pointer-events:auto;background:#eeeafd;border:2px solid #fff;border-radius:50%;place-items:center;width:30px;height:30px;padding:0;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #7669cf,0 4px 12px #372c7e38}.mechanics-connector-target>span{opacity:0;color:#40377f;max-width:180px;font-size:var(--font-caption);text-overflow:ellipsis;white-space:nowrap;pointer-events:none;background:#fffffff5;border:1px solid #d7d2f8;border-radius:6px;padding:4px 7px;font-weight:700;position:absolute;top:calc(100% + 8px);left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 4px 12px #372c7e24}.mechanics-connector-target:hover>span,.mechanics-connector-target:focus-visible>span,.mechanics-connector-target[aria-pressed=true]>span{opacity:1}.mechanics-connector-target:focus-visible{outline:3px solid var(--focus-ring);outline-offset:4px}.mechanics-connector-target[aria-pressed=true]{color:#fff;background:#6256c5;box-shadow:0 0 0 3px #6256c53d,0 4px 12px #372c7e3d}.simulation-issue{z-index:8;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;width:min(560px,100% - 40px);padding:9px 10px;display:grid;position:absolute;top:52px;left:50%;transform:translate(-50%);box-shadow:0 7px 24px #4a371921}.simulation-issue--warning{color:#76511d;background:#fffaeef5;border:1px solid #edca8e}.simulation-issue--error{color:#8d343d;background:#fffafaf7;border:1px solid #ebc6c9}.simulation-issue--guidance{color:#4f4596;background:#faf9fff7;border:1px solid #cfc9f5}.simulation-issue--warning .simulation-issue__icon{color:#c47c19}.simulation-issue--error .simulation-issue__icon{color:#bd4651}.simulation-issue--guidance .simulation-issue__icon{color:#6256c5}.simulation-issue__copy{gap:2px;min-width:0;display:grid}.simulation-issue strong{font-size:var(--font-caption)}.simulation-issue span{font-size:var(--font-caption);line-height:1.35}.simulation-issue button{height:29px;font-size:var(--font-caption);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:5px;padding:0 9px;font-weight:750;display:inline-flex}.simulation-issue__action{color:inherit;border:1px solid}.simulation-issue__dismiss{width:29px;color:inherit;border:0;justify-content:center;padding:0}.simulation-issue button:hover{filter:brightness(.97)}.simulation-issue button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.drawing-hint{border-radius:13px;gap:11px;width:min(520px,100% - 32px);padding:9px 11px}.drawing-hint__icon{color:#fff;background:var(--violet);border-radius:9px;flex:none;place-items:center;width:34px;height:34px;display:grid}.drawing-hint__title{flex-direction:column;flex:1;min-width:0;display:flex}.drawing-hint strong{font-size:var(--font-caption)}.drawing-hint small{color:var(--violet-dark);font-size:var(--font-caption);margin-top:2px}.drawing-hint button{color:#fff;background:var(--violet);height:30px;font-size:var(--font-caption);border:0;border-radius:8px;align-items:center;gap:5px;padding:0 10px;font-weight:700;display:inline-flex}.drawing-hint button:disabled{cursor:default;opacity:.42}.drawing-hint__actions{align-items:center;gap:5px;display:flex}.drawing-hint .drawing-hint__secondary{color:#51479b;background:#fff;border:1px solid #d7d2f8;justify-content:center;width:30px;padding:0}.drawing-hint__counter{background:var(--violet-soft);font-size:var(--font-caption);border-radius:7px;padding:4px 8px;font-weight:750}.surface-authoring-overlay{z-index:5;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.surface-authoring-overlay__rubber-band{stroke:#087dcc;stroke-width:2px;stroke-dasharray:7 5;opacity:.78}.surface-authoring-overlay__start{fill:#ffffffe0;stroke:#087dcc;stroke-width:2px}.surface-authoring-overlay__start--closable{fill:#087dcc2e;stroke-width:3px}.object-appearance{background:#f8fbfc;border:1px solid #dce5ea;border-radius:10px;gap:8px;margin:0 12px 10px;padding:10px;display:grid}.object-appearance__heading{color:#52616c;font-size:var(--font-caption);align-items:center;gap:7px;font-weight:750;display:flex}.object-appearance__heading svg{color:#087dcc}.object-color-palette{align-items:center}.object-appearance__controls{grid-template-columns:auto minmax(0,1fr) auto;gap:7px;display:grid}.object-color-palette{grid-template-columns:repeat(7,minmax(16px,22px));justify-content:space-between;gap:4px;display:grid}.object-color-input{background:#fff;border:1px solid #cbd8df;border-radius:8px;flex:none;place-items:center;width:32px;height:32px;display:grid;overflow:hidden}.object-color-input input{cursor:pointer;border:0;width:40px;height:40px;padding:0}.object-color-palette button{aspect-ratio:1;border:2px solid #fff;border-radius:50%;width:100%;max-width:22px;padding:0;box-shadow:0 0 0 1px #cbd7de}.object-color-palette button[aria-pressed=true]{box-shadow:0 0 0 2px #087dcc,0 0 0 4px #fff}.object-color-reset{color:#5d6a74;background:#fff;border:1px solid #d6e0e5;border-radius:8px;flex:none;place-items:center;width:30px;height:30px;padding:0;display:grid}.workspace-tip{color:var(--text-muted);font-size:var(--font-caption);pointer-events:none;border-color:#dce3e7;border-radius:9px;gap:6px;padding:7px 10px;box-shadow:0 5px 18px #2b394514}.canvas-controls{z-index:6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffeb;border:1px solid #d5dee3;border-radius:9px;align-items:center;height:32px;padding:3px;display:flex;position:absolute;bottom:14px;right:14px;box-shadow:0 5px 18px #2b394514}.canvas-controls button{color:#6b7781;background:0 0;border:0;border-radius:6px;place-items:center;width:27px;height:25px;padding:0;display:grid}.canvas-controls button:hover{color:#4d3db5;background:#f0edff}.canvas-controls span{text-align:center;color:#6d7882;min-width:40px;font-size:var(--font-caption);font-variant-numeric:tabular-nums}.canvas-controls i{background:#e1e6e9;width:1px;height:16px;margin:0 3px}.scene-viewport-controls{z-index:9;height:44px;box-shadow:var(--shadow-float);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff0;border:1px solid #d5dee3;border-radius:12px;align-items:center;padding:3px;display:flex;position:absolute;bottom:14px;right:14px}.scene-scale-bar{z-index:8;color:#465b69;pointer-events:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffffe0;border:1px solid #526a7a47;border-radius:10px;justify-items:center;gap:2px;min-width:72px;padding:6px 9px 7px;display:grid;position:absolute;bottom:16px;left:16px;box-shadow:0 5px 16px #1f2d3a1a}.scene-scale-bar__label{font-size:var(--font-caption);font-variant-numeric:tabular-nums;font-weight:750;line-height:1}.scene-scale-bar__line{border-bottom:2px solid;height:8px;display:block;position:relative}.scene-scale-bar__line:before,.scene-scale-bar__line:after{content:"";background:currentColor;width:2px;height:8px;position:absolute;bottom:-2px}.scene-scale-bar__line:before{left:0}.scene-scale-bar__line:after{right:0}.scene-vector-controls{z-index:10;color:#34424d;pointer-events:none;width:min(296px,100vw - 100px);position:absolute;top:14px;bottom:66px;right:14px}.scene-vector-controls>summary{width:max-content;max-width:100%;min-height:44px;box-shadow:var(--shadow-float);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;pointer-events:auto;-webkit-user-select:none;user-select:none;background:#fffffff0;border:1px solid #d5dee3;border-radius:12px;align-items:center;gap:7px;padding:5px 10px;list-style:none;display:inline-flex;position:absolute;bottom:0;right:0}.scene-vector-controls>summary::-webkit-details-marker{display:none}.scene-vector-controls[open]>summary{color:#4d3db5;background:#f5f2ff;border-color:#c8c0ed}.scene-vector-controls>summary strong{font-size:var(--font-caption)}.scene-vector-controls>summary small{min-width:0;color:var(--text-muted);font-size:var(--font-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.scene-vector-controls__swatches{gap:3px;display:inline-flex}.scene-vector-controls__swatch{width:21px;height:21px;font-size:var(--font-caption);border-radius:6px;flex:none;place-items:center;font-style:italic;font-weight:850;display:inline-grid}.scene-vector-controls__panel{pointer-events:auto;background:#fffffffa;border:1px solid #d5dee3;border-radius:12px;width:100%;max-height:calc(100% - 52px);padding:12px;position:absolute;bottom:52px;right:0;overflow:auto;box-shadow:0 14px 38px #1f2d3a2e}.scene-vector-controls__automatic,.scene-vector-controls__kind{cursor:pointer;align-items:center;min-height:44px;display:grid}.scene-vector-controls__automatic{background:#f5f7f8;border-radius:9px;grid-template-columns:auto minmax(0,1fr);gap:9px;padding:7px 8px}.scene-vector-controls input{width:17px;height:17px;accent-color:var(--violet);margin:0}.scene-vector-controls__automatic span,.scene-vector-controls__kind>span:last-child{gap:2px;min-width:0;display:grid}.scene-vector-controls__automatic strong,.scene-vector-controls__kind strong{font-size:var(--font-caption)}.scene-vector-controls__automatic small,.scene-vector-controls__count{color:var(--text-muted);font-size:var(--font-caption);line-height:1.3}.scene-vector-controls__kinds{border:0;border-top:1px solid #e5e9ec;gap:3px;margin:12px 0 0;padding:8px 0 0;display:grid}.scene-vector-controls__kinds legend{color:var(--text-muted);font-size:var(--font-caption);text-transform:uppercase;letter-spacing:.035em;padding:0 0 5px;font-weight:750}.scene-vector-controls__kind{border-radius:8px;grid-template-columns:auto auto minmax(0,1fr);gap:9px;padding:5px 7px}.scene-vector-controls__kind:hover{background:#f7f8fa}.scene-vector-controls__scale-note,.scene-vector-controls__status{color:var(--text-muted);font-size:var(--font-caption);border-top:1px solid #e5e9ec;margin:10px 0 0;padding-top:9px;line-height:1.45}.scene-vector-controls__status{border-top:0;margin-top:6px;padding-top:0}.scene-viewport-controls button{width:var(--target-min);height:var(--target-min);color:#65727c;background:0 0;border:0;border-radius:7px;place-items:center;padding:0;display:grid}.scene-viewport-controls button:hover:not(:disabled),.scene-viewport-controls button:focus-visible{color:#4d3db5;background:#f0edff}.scene-viewport-controls button:disabled{color:#bcc4c9;cursor:default}.scene-viewport-controls .scene-viewport-controls__zoom{width:48px}.scene-viewport-controls__zoom span{text-align:center;min-width:40px;font-size:var(--font-caption);font-variant-numeric:tabular-nums;font-weight:700}.scene-viewport-controls .scene-viewport-controls__action{grid-auto-flow:column;gap:5px;width:auto;padding:0 8px}.scene-viewport-controls__action span{min-width:0;font-size:var(--font-caption);white-space:nowrap;font-weight:700}.scene-viewport-controls .scene-viewport-controls__tracking[aria-pressed=true],.scene-viewport-controls .scene-viewport-controls__pan[aria-pressed=true]{color:#4d3db5;background:#f0edff}.scene-viewport-controls i{background:#e1e6e9;width:1px;height:18px;margin:0 3px}@media (width<=760px){.mechanics-vector-legend{display:none!important}.scene-vector-controls{bottom:14px}.scene-vector-controls>summary{top:0;bottom:auto}.scene-vector-controls__panel{top:52px;bottom:auto}.scene-vector-controls>summary small{display:none}.scene-viewport-controls .scene-viewport-controls__action{width:var(--target-min);padding:0}.scene-viewport-controls__action span{display:none}.simulation-issue{grid-template-columns:auto minmax(0,1fr);padding-right:38px}.simulation-issue__action{grid-column:2;justify-self:start}.simulation-issue__dismiss{position:absolute;top:5px;right:5px}.electrical-connection-hint{grid-template-columns:auto minmax(0,1fr);width:calc(100% - 20px)}.electrical-connection-hint button{grid-column:2;justify-self:start}}.unified-workspace .electrical-legend--unified{inset:14px auto auto 140px}.axis-indicator{z-index:4;width:42px;height:42px;color:var(--text-muted);font-size:var(--font-caption);pointer-events:none;position:absolute;top:56px;right:24px}.axis-indicator:before,.axis-indicator:after{content:"";background:#b8c2c8;position:absolute}.axis-indicator:before{width:27px;height:1px;bottom:8px;left:9px}.axis-indicator:after{width:1px;height:27px;bottom:8px;left:9px}.axis-indicator i{background:#fff;border:2px solid #aeb8be;border-radius:50%;width:7px;height:7px;position:absolute;bottom:5px;left:6px}.axis-x{position:absolute;bottom:3px;right:2px}.axis-y{position:absolute;top:0;left:6px}.finish-key-hint{z-index:4;color:var(--text-muted);font-size:var(--font-caption);align-items:center;gap:4px;display:none;position:absolute;top:106px;right:18px}.mechanics-canvas--surface~.finish-key-hint,.mechanics-canvas--curvedSurface~.finish-key-hint{display:flex}.inspector{z-index:4;border-left:1px solid #dbe2e6;flex-direction:column;grid-area:1/3/3;min-width:0;display:flex;overflow-y:auto;box-shadow:-2px 0 9px #25354208}.inspector__heading{z-index:3;background:#fff;position:sticky;top:0}.inspector__heading>button{width:28px;height:28px;color:var(--text-muted);background:0 0;border:0;border-radius:7px;place-items:center;padding:0;display:grid}.inspector-collapse-button{z-index:12;top:16px;right:calc(var(--inspector-width) - 1px);color:#68757f;background:#fff;border:1px solid #dbe2e6;border-right:0;border-radius:11px 0 0 11px;place-items:center;width:36px;height:44px;padding:0;display:grid;position:absolute;box-shadow:-5px 2px 10px #25354214}.inspector-collapse-button:hover{color:var(--violet-dark);background:var(--violet-soft)}.inspector__heading>svg{visibility:hidden}.workspace-panel-rail{z-index:7;color:#68757f;background:#fff;border:0;flex-direction:column;grid-row:1/3;align-items:center;gap:12px;min-width:0;min-height:0;padding:14px 0;display:flex}.workspace-panel-rail:hover{color:var(--violet-dark);background:#faf9ff}.workspace-panel-rail span{font-size:var(--font-caption);letter-spacing:.03em;writing-mode:vertical-rl;font-weight:750}.workspace-panel-rail--left{border-right:1px solid #dbe2e6;grid-column:1}.workspace-panel-rail--right{border-left:1px solid #dbe2e6;grid-column:3}.inspector__heading>button:hover{background:#f2f5f6}.selected-object{background:#fafaff;border:1px solid #e2e6f6;border-radius:11px;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:9px;margin:13px 14px 5px;padding:10px;display:grid}.selected-object__icon{color:#4f65c9;background:#ebefff;border-radius:9px;place-items:center;width:38px;height:38px;display:grid}.selected-object__icon--gear{color:#6d53be;background:#f0ebff}.selected-object__icon--weight{color:#c26c32;background:#fff0e5}.selected-object__icon--surface{color:#66747f;background:#edf1f3}.selected-object__icon--force{color:#d8545e;background:#fff0f1}.selected-object__icon--ceiling{color:#52636f;background:#edf1f3}.selected-object__icon--string{color:#177b75;background:#e7f6f4}.selected-object__icon--spring{color:#4f68c2;background:#edf1ff}.selected-object>div{flex-direction:column;min-width:0;display:flex}.selected-object strong{color:#34404b;font-size:var(--font-ui);overflow-wrap:anywhere;white-space:normal;line-height:1.25}.selected-object small{color:var(--text-muted);font-size:var(--font-caption);margin-top:2px}.selected-object>button{width:26px;height:26px;color:var(--text-muted);background:0 0;border:0;border-radius:7px;place-items:center;padding:0;display:grid}.selected-object>button:hover{color:#6251cb;background:var(--brand-blue-soft)}.inspector-section{border-bottom:1px solid #edf0f2;padding:13px 15px 3px}.inspector-section h3{color:var(--text-muted);font-size:var(--font-caption);letter-spacing:.045em;text-transform:uppercase;margin:0 0 10px;font-weight:750}.inspector-disclosure{border-bottom:1px solid #edf0f2}.inspector-disclosure>summary,.scene-settings__advanced>summary{min-height:var(--target-min);cursor:pointer;color:#65727d;font-size:var(--font-ui-small);padding:12px 15px;font-weight:700}.inspector-disclosure__content>.inspector-section{border-bottom:0;padding-top:4px}.electrical-advanced-fields{border-top:1px solid #e8ecef;grid-column:1/-1}.electrical-advanced-fields>summary{cursor:pointer;color:#65727d;font-size:var(--font-caption);padding:9px 0;font-weight:700}.electrical-advanced-fields>div{gap:7px;padding-bottom:4px;display:grid}.property-list{gap:9px;padding-bottom:11px;display:grid}.property-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.property-field{color:#65727d;min-width:0;font-size:var(--font-ui-small);justify-content:space-between;align-items:center;gap:8px;display:flex}.property-field>span:first-child,.inspector-field>span:first-child{overflow-wrap:anywhere;min-width:0;line-height:1.3}.property-pair .property-field{gap:5px;display:grid}.number-input{width:116px;height:var(--control-height);background:#fafbfc;border:1px solid #dfe5e8;border-radius:8px;align-items:center;min-width:0;padding:0 7px;display:flex}.property-pair .number-input{width:100%}.number-input:focus-within{background:#fff;border-color:#a59bed;box-shadow:0 0 0 3px #087dcc14}.number-input input{color:#35414b;width:100%;min-width:0;font-size:var(--font-ui-small);font-variant-numeric:tabular-nums;background:0 0;border:0;outline:0;padding:0;font-weight:650}.number-input input::-webkit-inner-spin-button{opacity:.38;margin:0}.number-input small{color:var(--text-muted);font-size:var(--font-caption);flex:none}.surface-rounding-control{gap:7px;display:grid}.surface-rounding-control .number-input{cursor:text}.surface-rounding-presets{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.surface-rounding-presets button{color:#55626d;cursor:pointer;min-height:32px;font-size:var(--font-caption);background:#fff;border:1px solid #dfe5e8;border-radius:8px;padding:5px 7px;font-weight:700}.surface-rounding-presets button:hover:not(:disabled){background:#f7f5ff;border-color:#b8afea}.surface-rounding-presets button[aria-pressed=true]{color:#5141b6;background:var(--brand-blue-soft);border-color:#8f82e1}.surface-rounding-presets button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.surface-rounding-presets button:disabled{cursor:not-allowed;opacity:.55}.derived-property{color:var(--text-muted);font-size:var(--font-caption);background:#f7f9fa;border-radius:8px;grid-template-columns:1fr auto 15px;align-items:center;gap:7px;padding:7px 8px;display:grid}.derived-property strong{color:#4b5660}.derived-property svg{color:var(--text-muted)}.delete-object{min-height:var(--control-height);color:#c8535c;font-size:var(--font-caption);background:#fff8f8;border:1px solid #f0d7d9;border-radius:8px;flex:none;align-self:flex-start;align-items:center;gap:7px;margin:13px 15px 4px;padding:0 10px;font-weight:650;display:inline-flex}.delete-object:hover{background:#fff0f1}.group-selection-inspector{flex-direction:column;display:flex}.group-selection-inspector__summary{gap:14px;padding:18px 15px;display:grid}.group-selection-inspector__summary p{color:var(--text-muted);font-size:var(--font-ui-small);margin:0;line-height:1.55}.group-selection-inspector__summary dl{gap:7px;margin:0;display:grid}.group-selection-inspector__domain{color:#59656f;background:#faf9ff;border:1px solid #e1def3;border-radius:9px;justify-content:space-between;align-items:center;padding:9px 10px;display:flex}.group-selection-inspector__domain dt{font-size:var(--font-caption);align-items:center;gap:7px;font-weight:700;display:inline-flex}.group-selection-inspector__domain dd{color:#6656c9;font-size:var(--font-caption);margin:0;font-weight:800}.group-selection-inspector__actions{border-top:1px solid #e4e9ec;gap:8px;margin-top:auto;padding:14px 15px 16px;display:grid}.group-selection-inspector__actions button{min-height:var(--control-height);font-size:var(--font-caption);border-radius:8px;justify-content:center;align-items:center;gap:7px;font-weight:700;display:inline-flex}.group-selection-inspector__clear{color:#59656f;background:#fff;border:1px solid #dce2e6}.group-selection-inspector__delete{width:100%;margin:0}.scene-settings{background:#fbfcfc;border-top:1px solid #e4e9ec;margin-top:auto;padding:14px 15px 16px}.scene-settings__title{justify-content:space-between;align-items:center;margin-bottom:11px;display:flex}.scene-settings__title>h3{color:#4f5b65;font-size:var(--font-ui-small);align-items:center;gap:7px;margin:0;font-weight:700;display:inline-flex}.effect-row{background:#fff;border:1px solid #e1e6e9;border-radius:10px;grid-template-columns:44px minmax(0,1fr);align-items:center;column-gap:12px;padding:9px;display:grid}.effect-row+.effect-row{margin-top:8px}.inspector-help{color:var(--muted);margin:8px 0 0;font-size:.78rem;line-height:1.45}.toggle{width:44px;height:var(--target-min);background:0 0;border:0;border-radius:999px;padding:0;position:relative}.toggle:before{content:"";background:#ccd4d9;border-radius:999px;transition:background .16s;position:absolute;inset:6px 1px}.toggle span{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .16s;position:absolute;top:9px;left:4px;box-shadow:0 1px 3px #0000002e}.toggle--on{background:0 0}.toggle--on:before{background:var(--violet)}.toggle--on span{transform:translate(18px)}.effect-row__content{color:#55616b;min-width:0;font-size:var(--font-ui-small);justify-content:space-between;align-items:center;gap:8px;display:flex}.effect-row--stacked-copy .effect-row__content{flex-direction:column;align-items:flex-start;gap:3px}.effect-row--stacked-copy .effect-row__content small{overflow-wrap:anywhere;line-height:1.3}.effect-row__label{min-width:0;line-height:1.25}.spring-failure-row{grid-template-columns:42px 1fr}.spring-failure-row strong{color:#67737c;font-size:var(--font-caption)}.inspector-note{color:var(--text-muted);font-size:var(--font-caption);margin:0;line-height:1.45}.connection-fit-button{width:100%;min-height:var(--control-height);color:#176d66;font-size:var(--font-ui-small);background:#eef9f7;border:1px solid #b9ddd8;border-radius:8px;font-weight:700}.connection-fit-button:disabled{cursor:not-allowed;opacity:.55}.effect-input{min-height:var(--target-min);flex:none;align-items:center;gap:3px;display:flex}.effect-input input{width:50px;min-height:var(--target-min);color:#3e4953;font-size:var(--font-ui-small);text-align:right;background:0 0;border:0;outline:0;padding:0;font-weight:700}.effect-input small{color:var(--text-muted);font-size:var(--font-caption)}.environment-settings{background:#fff;border:1px solid #dddff0;border-radius:10px;gap:9px;margin-top:10px;padding:10px;display:grid}.scene-settings__advanced{background:#fff;border:1px solid #e1e6e9;border-radius:10px;margin-top:8px}.scene-settings__advanced>summary{padding:10px}.scene-settings__advanced[open]>summary{border-bottom:1px solid #edf0f2}.scene-settings__advanced .environment-settings{margin:9px}.environment-settings__heading{color:#4f5b65;font-size:var(--font-caption);justify-content:space-between;align-items:center;gap:8px;display:flex}.environment-settings__heading .toggle{flex:none}.environment-settings__add,.central-attractor__remove{min-height:var(--target-min);color:#5c50b2;font-size:var(--font-caption);background:#f2f9fd;border:1px solid #ddd8f6;border-radius:7px;justify-content:center;align-items:center;gap:4px;padding:0 8px;font-weight:700;display:inline-flex}.environment-settings button:disabled{opacity:.48;cursor:default}.environment-field-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px;display:grid}.environment-field{min-width:0;color:var(--text-muted);font-size:var(--font-caption);gap:3px;display:grid}.environment-field--wide{grid-template-columns:54px minmax(0,1fr);align-items:center}.environment-field__input{background:#fbfcfc;border:1px solid #e1e6e9;border-radius:7px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px;padding:4px 6px;display:grid}.environment-field input,.environment-field select{color:#3e4953;width:100%;min-width:0;font-size:var(--font-caption);font-variant-numeric:tabular-nums;background:#fff;border:1px solid #e1e6e9;border-radius:6px;outline:0;padding:4px 5px}.environment-field__input input{background:0 0;border:0;padding:0}.environment-field__input small{color:var(--text-muted);white-space:nowrap}.central-attractor{border:1px solid #e5e7ef;border-radius:8px;gap:8px;min-width:0;margin:0;padding:8px;display:grid}.central-attractor legend{color:#69747d;font-size:var(--font-caption);padding:0 4px;font-weight:700}.central-attractor__remove{color:#a84c55;background:#fff7f8;border-color:#efdadd;justify-self:end}.empty-inspector{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:30px;display:flex}.empty-inspector>span{width:46px;height:46px;color:var(--violet-dark);background:#f0edff;border-radius:14px;place-items:center;display:grid}.empty-inspector h3{color:#4c5862;font-size:var(--font-ui);margin:12px 0 5px}.empty-inspector p{max-width:190px;color:var(--text-muted);font-size:var(--font-caption);margin:0;line-height:1.5}.measurements-panel{z-index:5;background:#fff;border-top:1px solid #d7dfe3;grid-area:2/2;min-width:0;min-height:0;box-shadow:0 -3px 12px #202f3b0a}.measurements-panel__bar{border-bottom:1px solid #e7ecee;justify-content:space-between;align-items:center;min-height:47px;padding:0 9px 0 12px;display:flex}.result-tabs,.result-actions{align-items:center;display:flex}.result-tabs{gap:4px;height:100%}.result-tabs button{min-height:var(--target-min);color:var(--text-muted);font-size:var(--font-ui-small);background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:0 10px;font-weight:650;display:inline-flex;position:relative}.result-tabs button[aria-selected=true]{border-bottom-color:var(--violet);color:var(--violet-dark)}.tab-count{min-width:18px;height:18px;color:var(--violet-dark);background:var(--brand-blue-soft);font-size:var(--font-caption);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;padding:0 4px;display:grid}.result-actions{gap:5px}.result-actions button{min-width:var(--target-min);height:var(--target-min);color:var(--text-muted);font-size:var(--font-caption);background:0 0;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:5px;padding:0 7px;display:inline-flex}.result-actions button:hover{background:#f7f9fa;border-color:#e0e6e9}.measurements-panel__content{grid-template-columns:140px minmax(260px,1fr) 116px;align-items:stretch;height:calc(100% - 47px);min-height:0;padding:8px 12px 5px;display:grid}.results-size-controls{border-left:1px solid var(--soft-line);align-items:center;gap:2px;padding-left:3px;display:inline-flex}.measurements-panel--collapsed .measurements-panel__bar{border-bottom:0;height:47px}.chart-legend{align-items:flex-start;gap:7px;padding:12px 4px;display:flex}.chart-legend__swatch{background:var(--violet);border-radius:50%;flex:none;width:8px;height:8px;margin-top:3px;box-shadow:0 0 0 3px #087dcc1c}.chart-legend>div{flex-direction:column;display:flex}.chart-legend strong{color:#48545e;font-size:var(--font-ui-small)}.chart-legend small{color:var(--text-muted);font-size:var(--font-caption);margin-top:2px}.chart-current{display:none}.height-chart{min-width:0;min-height:112px;overflow:hidden}.height-chart .uplot{font-family:inherit}.height-chart .u-over{cursor:crosshair}.measurement-summary{flex-direction:column;justify-content:center;align-items:flex-end;padding:12px 6px;display:flex}.measurement-summary span{color:var(--text-muted);font-size:var(--font-caption);align-items:center;gap:5px;display:inline-flex}.measurement-summary strong{color:#3e4a54;font-variant-numeric:tabular-nums;margin-top:5px;font-size:.9375rem}.values-grid{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:10px;padding:5px;display:grid}.values-grid>div{background:#fafbfc;border:1px solid #e4e9ec;border-radius:11px;grid-template-columns:1fr auto auto;align-items:center;gap:5px;padding:12px 14px;display:grid}.values-grid span{color:var(--text-muted);font-size:var(--font-caption)}.values-grid strong{color:#3f4b55;font-variant-numeric:tabular-nums;font-size:1rem}.values-grid small{color:var(--text-muted);font-size:var(--font-caption)}.run-history{grid-column:1/-1;min-height:0;padding:3px 5px;overflow-y:auto}.run-history>p{color:var(--text-muted);font-size:var(--font-caption);text-align:center;margin:26px 0 0}.run-row{min-height:38px;color:var(--text-muted);font-size:var(--font-caption);border-bottom:1px solid #edf0f2;grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.run-row__dot{background:var(--violet);border-radius:50%;width:7px;height:7px}.run-row strong{color:#49555f}.run-row__evidence-actions button,.run-evidence-shell__actions button{width:28px;height:28px;color:var(--text-muted);background:0 0;border:0;border-radius:6px;place-items:center;padding:0;display:grid}.mechanics-canvas--positionSensor,.mechanics-canvas--velocitySensor,.mechanics-canvas--accelerationSensor,.mechanics-canvas--forceSensor,.mechanics-canvas--indicator,.mechanics-canvas--actuator,.mechanics-canvas--controller,.mechanics-canvas--signal{cursor:copy}.selected-object__icon--sensor{color:#147f78;background:#e6f7f5}.selected-object__icon--authoredGeometry{color:#176b75;background:#e6f6f4}.selected-object__icon--controller,.selected-object__icon--signal{color:#5f4bc3;background:#efecff}.selected-object__icon--actuator{color:#c76529;background:#fff0e6}.selected-object__icon--indicator{color:#4c6574;background:#eaf0f3}.property-field--select select{width:145px;height:var(--control-height);color:#46525c;font-size:var(--font-ui-small);background:#fafbfc;border:1px solid #dfe5e8;border-radius:8px;outline:0;padding:0 7px}.live-reading{color:#d8fff6;background:#26323a;border-radius:9px;justify-content:space-between;align-items:baseline;padding:10px;display:flex}.live-reading strong{font-variant-numeric:tabular-nums;font-size:1.05rem}.live-reading span{color:#bfd0d8;font-size:var(--font-caption)}.mode-switch{background:#f0f2f4;border-radius:9px;grid-template-columns:1fr 1fr;gap:4px;padding:3px;display:grid}.mode-switch button{min-height:29px;color:var(--text-muted);font-size:var(--font-caption);background:0 0;border:0;border-radius:7px;padding:0 6px;font-weight:650}.mode-switch button[aria-pressed=true]{color:#5745be;background:#fff;box-shadow:0 2px 6px #31394317}.controller-program{gap:5px;display:grid}.controller-program span{color:#5f5a7a;font-size:var(--font-caption);background:#f5f3ff;border-left:3px solid #7665cf;border-radius:5px;padding:6px 8px}.signal-note{color:var(--violet-dark);font-size:var(--font-caption);margin:0;line-height:1.45}.channel-picker{position:relative}.channel-picker summary{min-height:var(--target-min);color:var(--text-muted);font-size:var(--font-caption);cursor:pointer;border-radius:7px;align-items:center;gap:5px;padding:0 7px;list-style:none;display:inline-flex}.channel-picker[open] summary{background:#f3f0ff}.channel-picker>div{z-index:20;background:#fff;border:1px solid #dfe4e8;border-radius:10px;gap:6px;width:250px;max-height:210px;padding:9px;display:grid;position:absolute;bottom:34px;right:0;overflow-y:auto;box-shadow:0 10px 30px #27333e29}.channel-picker label{color:#65717b;font-size:var(--font-caption);grid-template-columns:15px 8px 1fr;align-items:center;gap:6px;display:grid}.channel-picker label i{border-radius:50%;width:7px;height:7px}.measurement-channel-link{color:inherit;background:var(--violet-soft);-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:4px;padding:1px 3px}.result-actions button:disabled,.run-history__actions button:disabled{opacity:.38}.chart-legend{align-content:start;gap:5px;padding:6px 4px;display:grid;overflow:hidden auto}.chart-legend__item{grid-template-columns:8px minmax(0,1fr);align-items:start;gap:6px;display:grid}.chart-legend__item>span{border-radius:50%;width:7px;height:7px;margin-top:3px}.chart-legend__item>div{flex-direction:column;min-width:0;display:flex}.chart-legend__item strong{color:#48545e;font-size:var(--font-ui-small);overflow-wrap:anywhere;white-space:normal;line-height:1.25;overflow:hidden}.chart-legend__item small{color:var(--text-muted);font-size:var(--font-caption)}.values-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));overflow-y:auto}.measurement-table-shell{grid-template-rows:auto minmax(0,1fr) auto;gap:6px;min-width:0;min-height:0;display:grid;overflow:hidden}.measurement-table-shell__summary{color:var(--text-muted);font-size:var(--font-caption);font-variant-numeric:tabular-nums}.measurement-table-scroll{background:#fff;border:1px solid #e5e8eb;border-radius:8px;min-width:0;overflow:auto}.measurement-table{border-collapse:separate;border-spacing:0;color:#4e5962;width:100%;min-width:520px;font-size:var(--font-caption);font-variant-numeric:tabular-nums}.measurement-table caption{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.measurement-table th,.measurement-table td{text-align:right;white-space:nowrap;border-bottom:1px solid #eef0f2;border-right:1px solid #eef0f2;min-width:96px;padding:7px 9px}.measurement-table thead th{z-index:2;color:#53606a;text-align:left;background:#f7f8fa;position:sticky;top:0}.measurement-table thead th:first-child,.measurement-table tbody th{z-index:1;text-align:right;background:#fafbfc;position:sticky;left:0}.measurement-table thead th:first-child{z-index:3}.measurement-table thead span,.measurement-table thead small{display:block}.measurement-table thead small{color:var(--text-muted);margin-top:2px;font-weight:500}.measurement-table tbody tr:nth-child(2n) td{background:#fcfcfd}.measurement-table-shell__more{color:#5f4fc2;min-height:32px;font-size:var(--font-caption);background:#f2f9fd;border:1px solid #ded8fb;border-radius:7px;justify-self:start;padding:0 10px;font-weight:650}.event-log-empty{max-width:420px;color:var(--text-muted);font-size:var(--font-caption);text-align:center;align-content:center;justify-items:center;gap:5px;margin:auto;display:grid}.event-log-empty svg{color:#3f9a75}.event-log-empty strong{color:#53606a;font-size:var(--font-body)}.experiment-event-log{align-content:start;gap:6px;display:grid;overflow-y:auto}.experiment-event-log__item{color:#39775f;background:#f6fbf8;border:1px solid #dde8e3;border-radius:8px;grid-template-columns:20px minmax(0,1fr);gap:8px;padding:8px 10px;display:grid}.experiment-event-log__item>div{gap:2px;display:grid}.experiment-event-log__item strong{color:#46545d;font-size:var(--font-body)}.experiment-event-log__item span{color:var(--text-muted);font-size:var(--font-caption);line-height:1.4}.experiment-event-log__item--warning,.experiment-event-log__item--error{color:#ae5d35;background:#fff9f5;border-color:#f1d8cc}.experiment-event-log__item--error{color:#ad4646;background:#fff7f7;border-color:#efd1d1}.run-history__actions{justify-content:space-between;align-items:center;padding:2px 0 5px;display:flex}.run-history__actions button{color:#5f4fc2;height:28px;font-size:var(--font-caption);background:#f2f9fd;border:1px solid #ded8fb;border-radius:7px;align-items:center;gap:6px;padding:0 9px;font-weight:650;display:inline-flex}.run-history__actions span{color:var(--text-muted);font-size:var(--font-caption)}.run-row__comparison{width:100%;color:inherit;font:inherit;text-align:left;background:0 0;border:0;grid-template-columns:16px 110px 1fr 46px;align-items:center;gap:8px;padding:0 4px;display:grid}.run-row__comparison[aria-pressed=true]{background:#f5f2ff}.run-row__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.run-row__dot{place-items:center;width:14px;height:14px;display:grid}.run-row__comparison time{color:var(--text-muted);font-size:var(--font-caption)}.run-row__evidence-actions{gap:1px;padding:0 3px;display:flex}.run-row__evidence-actions button:hover,.run-row__evidence-actions button:focus-visible,.run-evidence-shell__actions button:hover,.run-evidence-shell__actions button:focus-visible{color:#5f4fc2;background:#f3f0ff}.run-row__evidence-actions button:disabled{opacity:.35}.run-history__error{background:#fff0f0;border-radius:6px;padding:6px 8px;color:#a43e3e!important;text-align:left!important;margin:5px 0!important}.run-evidence-shell{gap:5px;margin:7px 0;display:grid}.run-evidence__technical>summary{cursor:pointer;color:#65727d;font-size:var(--font-caption);margin-bottom:8px;font-weight:700}.run-evidence-shell__actions{justify-content:flex-end;gap:3px;display:flex}.run-evidence-shell__actions button{width:auto;min-width:28px;font-size:var(--font-caption);align-items:center;gap:5px;padding:0 7px;display:inline-flex}.run-evidence{color:#5e6972;font-size:var(--font-caption);background:#fcfbff;border:1px solid #ddd8fa;border-radius:9px;gap:8px;padding:10px;display:grid}.run-evidence>header{justify-content:space-between;align-items:start;gap:8px;display:flex}.run-evidence>header>div,.run-evidence__checks th,.run-evidence__checks td[data-verdict]{flex-direction:column;gap:2px;display:flex}.run-evidence h3{color:#4e5962;font-size:var(--font-caption);margin:3px 0 0}.run-evidence code{overflow-wrap:anywhere;font-size:var(--font-caption)}.run-evidence__status{color:#32745b;background:#eaf8f1;border-radius:999px;padding:3px 6px;font-weight:700}.run-evidence__status[data-status=failed]{color:#a43e3e;background:#fff0f0}.run-evidence__metadata{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:5px 10px;margin:0;display:grid}.run-evidence__metadata>div{border-bottom:1px solid #ece9f8;min-width:0;padding-bottom:4px}.run-evidence__metadata dt{color:var(--text-muted);font-size:var(--font-caption)}.run-evidence__metadata dd{color:#47535c;font-variant-numeric:tabular-nums;margin:2px 0 0}.run-evidence__checks{overflow-x:auto}.run-evidence__checks table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;min-width:940px}.run-evidence__checks caption{color:var(--text-muted);text-align:left;padding:0 0 5px}.run-evidence__checks th,.run-evidence__checks td{text-align:left;white-space:nowrap;border:1px solid #e8e5f2;padding:5px}.run-evidence__checks td[data-verdict=pass] strong{color:#287251}.run-evidence__checks td[data-verdict=fail] strong,.run-evidence__checks td[data-verdict=error] strong{color:#a43e3e}.run-evidence__notice,.run-evidence__checks>p{color:var(--text-muted);margin:0}.run-evidence-delete{z-index:1000;background:#1f262d61;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.run-evidence-delete>div{color:#4e5962;background:#fff;border-radius:10px;gap:10px;max-width:440px;padding:18px;display:grid;box-shadow:0 16px 50px #181f2640}.run-evidence-delete p{margin:0;line-height:1.5}.run-evidence-delete span{justify-content:flex-end;gap:7px;display:flex}.run-evidence-delete button{color:#5f4fc2;min-height:30px;font-size:var(--font-caption);background:#f2f9fd;border:1px solid #ded8fb;border-radius:7px;padding:0 9px;font-weight:650}.run-comparison{color:#69747d;font-size:var(--font-caption);background:#faf9ff;border:1px solid #ddd8fa;border-radius:9px;grid-template-columns:1.4fr 1fr 1fr .7fr;align-items:center;gap:8px;margin-top:6px;padding:8px 10px;display:grid}.run-comparison strong{color:#5143a9}.run-comparison em{color:#b45b2c;font-style:normal;font-weight:700}.empty-results{color:var(--text-muted);font-size:var(--font-caption);grid-column:1/-1;place-items:center;display:grid}.electrical-workspace .react-flow{position:absolute;inset:0}.workspace-loading{color:var(--text-muted);font-size:var(--font-caption);place-items:center;display:grid}.electrical-node{--electrical-family-color:#26343c;width:72px;color:var(--electrical-family-color);box-shadow:none;text-align:center;background:0 0;border:0;grid-template-rows:28px 48px 28px;grid-template-columns:72px;place-items:center;gap:3px;padding:0;transition:color .14s;display:grid;position:relative}.electrical-node[data-color-family=source]{--electrical-family-color:#315a7d}.electrical-node[data-color-family=passive]{--electrical-family-color:#356b68}.electrical-node[data-color-family=control]{--electrical-family-color:#7a5a24}.electrical-node[data-color-family=measurement]{--electrical-family-color:#65527c}.electrical-node[data-color-family=sensor]{--electrical-family-color:#3f6b4f}.electrical-node[data-color-family=load]{--electrical-family-color:#7a4f48}.electrical-node[data-color-family=reference]{--electrical-family-color:#4c5a62}.electrical-node--controller{grid-template-rows:28px 48px 28px 16px;grid-template-columns:116px;width:116px}.electrical-node--family-reference{width:72px}.electrical-node--junction{grid-template:1fr/1fr;place-items:center;width:20px;height:20px;display:grid}.electrical-junction-dot{pointer-events:none;background:currentColor;border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 2px #fff}.electrical-node--junction.is-selected .electrical-junction-dot{box-shadow:0 0 0 2px #fff,0 0 0 6px #087dcc29}.arduino-node__pins,.arduino-node__port{display:contents}.arduino-node__port-label,.arduino-node__power-label{color:var(--violet-dark);font-size:var(--font-caption);pointer-events:none;font-weight:800;line-height:1;position:absolute}.arduino-node__port-label{transform:translateY(-50%)}.arduino-node__port-label--input{left:9px}.arduino-node__port-label--output{right:9px}.arduino-node__power-label{bottom:1px}.arduino-node__power-label--gnd{left:17px}.arduino-node__power-label--5v{right:23px}.peripheral-power-label,.signal-port-label{z-index:2;font-size:var(--font-caption);pointer-events:none;background:#ffffffe0;border-radius:4px;padding:1px 3px;font-weight:800;position:absolute}.peripheral-power-label{color:#8b5c3b;left:4px}.peripheral-power-label--5v{top:20%}.peripheral-power-label--gnd{color:#52616b;top:62%}.signal-port-label{color:#b05225;top:50%;right:4px;transform:translateY(-50%)}.signal-port-label--input{color:#5b4fc0;left:4px;right:auto}.electrical-node__symbol{width:72px;height:48px;color:inherit;isolation:isolate;background:0 0;border:0;place-items:center;padding:0;display:grid;position:relative}.electrical-node__symbol:before{z-index:-1;content:"";background:#087dcc00;border-radius:14px;transition:background .14s,transform .14s;position:absolute;inset:-6px 2px;transform:scale(.88)}.electrical-node.is-selected .electrical-node__symbol:before{background:#087dcc1f;transform:scale(1)}.electrical-node.is-selected .electrical-node__symbol{filter:drop-shadow(0 2px 3px #087dcc38)}.electrical-node__symbol--interactive{cursor:pointer}.electrical-node__symbol--interactive:hover,.electrical-node__symbol--interactive:focus-visible{color:inherit;filter:drop-shadow(0 0 3px #087dcc52);outline:none}.electrical-schematic-symbol{width:72px;height:48px;display:block;overflow:visible}.electrical-schematic-symbol__geometry{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;vector-effect:non-scaling-stroke}.electrical-schematic-symbol__geometry text{fill:currentColor;stroke:none;font-family:IBM Plex Sans,Inter,sans-serif;font-size:var(--font-caption);text-anchor:middle;font-weight:750}.electrical-schematic-symbol__effects{pointer-events:none}.electrical-schematic-symbol__light-glow,.electrical-schematic-symbol__light-core{stroke:none}.electrical-schematic-symbol__light-glow{fill:#ffd54a;opacity:calc(var(--electrical-activity) * .72);filter:blur(5px)}.electrical-schematic-symbol__light-core{fill:#fff3a8;opacity:calc(var(--electrical-activity) * .58)}.electrical-schematic-symbol__conduction{fill:none;stroke:#1aa5a5;stroke-linecap:round;stroke-width:6px;opacity:calc(var(--electrical-activity) * .58)}.electrical-schematic-symbol__heat-body{fill:#f39a3d;stroke:none;opacity:calc(var(--electrical-activity) * .46)}.electrical-schematic-symbol__heat-waves{fill:none;stroke:#e66a2c;stroke-linecap:round;stroke-width:1.6px;opacity:calc(var(--electrical-activity) * .82)}.electrical-schematic-symbol[data-motion=running] .electrical-schematic-symbol__heat-waves{animation:1.35s ease-in-out infinite electrical-heat-shimmer}.electrical-schematic-symbol__charge-marks{fill:#2b79ba;stroke:none;opacity:calc(var(--electrical-activity) * .92);text-anchor:middle;font-family:IBM Plex Sans,Inter,sans-serif;font-size:13px;font-weight:850}.electrical-schematic-symbol[data-current-direction="-1"] .electrical-schematic-symbol__charge-marks{fill:#d9683e}.electrical-schematic-symbol__magnetic-field{fill:none;stroke:#477cca;stroke-linecap:round;stroke-width:1.5px;opacity:calc(var(--electrical-activity) * .72)}.electrical-schematic-symbol[data-motion=running] .electrical-schematic-symbol__magnetic-field{animation:1.2s ease-in-out infinite alternate electrical-field-pulse}.electrical-schematic-symbol__rotor{fill:none;stroke:#d36d30;stroke-linecap:round;stroke-width:2.2px;opacity:calc(var(--electrical-activity) * .88);transform-box:view-box;transform-origin:36px 24px}.electrical-schematic-symbol[data-motion=running] .electrical-schematic-symbol__rotor{animation:electrical-rotor-spin var(--electrical-motion-duration) linear infinite}.electrical-schematic-symbol[data-current-direction="-1"] .electrical-schematic-symbol__rotor{animation-direction:reverse}.electrical-schematic-symbol[data-symbol-kind=controlledSource] text,.electrical-schematic-symbol[data-symbol-kind=controller] text,.electrical-schematic-symbol[data-symbol-kind=gearbox] text,.electrical-schematic-symbol[data-symbol-kind=drumLoad] text{font-size:var(--font-caption)}.electrical-schematic-symbol[data-visual-state=light][data-active=true]{filter:drop-shadow(0 0 calc(2px + var(--electrical-activity) * 5px) #ffc92db8)}.electrical-node__name,.electrical-node__value{pointer-events:none;z-index:3;width:max-content;line-height:13px;display:block;position:relative;overflow:visible}.electrical-node__name{width:120px;height:28px;font-size:var(--font-caption);overflow-wrap:anywhere;justify-content:center;align-items:flex-end;font-weight:750;display:flex}.electrical-node__name>span,.electrical-node__value>span{background:#fffffff0;border-radius:4px;max-width:100%;padding:1px 5px;display:inline-block;box-shadow:0 0 0 2px #ffffffb8}.electrical-node.is-selected .electrical-node__name>span{color:var(--brand-blue-dark);background:#edf7fd}.electrical-node__value{color:#64727c;width:140px;height:28px;font-size:var(--font-caption);font-variant-numeric:tabular-nums;justify-content:center;align-items:flex-start;font-weight:550;display:flex}.electrical-handle,.signal-handle,.power-handle,.shaft-handle{box-shadow:0 0 0 1px #34434e;background:#475966!important;border:2px solid #fff!important;width:12px!important;height:12px!important}.electrical-port-target{z-index:4;cursor:crosshair;background:0 0;border:0;border-radius:50%;place-items:center;width:28px;height:28px;padding:0;display:grid;position:absolute}.electrical-port-target:disabled{cursor:not-allowed}.electrical-port-target>.react-flow__handle{position:absolute!important;inset:50% auto auto 50%!important;transform:translate(-50%,-50%)!important}.electrical-handle:before,.signal-handle:before,.power-handle:before,.shaft-handle:before{content:"";position:absolute;inset:-7px}.electrical-port-target:focus-visible{z-index:4;outline:3px solid var(--focus-ring);outline-offset:1px}.electrical-port-target[aria-pressed=true]>.react-flow__handle{outline:3px solid var(--focus-ring);outline-offset:4px;filter:brightness(1.15)}.electrical-junction-handle{opacity:0;width:20px!important;height:20px!important;box-shadow:none!important;background:0 0!important;border:0!important;top:50%!important;left:50%!important}.power-handle--5v{box-shadow:0 0 0 1px #aa4627;background:#d9683e!important;width:13px!important;height:13px!important}.power-handle--gnd{box-shadow:0 0 0 1px #34414a;background:#52616b!important;border-radius:3px!important;width:13px!important;height:13px!important}.signal-handle--digital{box-shadow:0 0 0 1px #1f765b;background:#2d9b76!important;border-radius:3px!important}.signal-handle--pwm{box-shadow:0 0 0 1px #aa437f;background:#d462a5!important}.shaft-handle{box-shadow:0 0 0 1px #344e62;background:#547289!important;border-radius:2px!important;width:14px!important;height:14px!important}.signal-handle{box-shadow:0 0 0 1px #bd5c24;background:#e47735!important}.signal-handle--input{box-shadow:0 0 0 1px var(--brand-blue-dark);background:var(--brand-blue)!important}.signal-handle--control-source{top:79px!important;bottom:auto!important}.electrical-edge .electrical-edge__underlay{fill:none;stroke:#fffffff5;stroke-linecap:square;stroke-linejoin:round;stroke-width:7px;pointer-events:none;vector-effect:non-scaling-stroke}.electrical-edge--wire .react-flow__edge-path{stroke:#465762;stroke-width:2.4px}.electrical-edge--wire .electrical-edge__current-flow{fill:none;stroke:#f5b942;stroke-dasharray:1 13;stroke-linecap:round;stroke-width:4.4px;opacity:calc(.42 + var(--electrical-flow-level) * .52);animation:electrical-current-flow var(--electrical-flow-duration) linear infinite;pointer-events:none;vector-effect:non-scaling-stroke}.electrical-edge--wire .electrical-edge__current-flow[data-flow-direction="-1"]{animation-direction:reverse}@keyframes electrical-current-flow{to{stroke-dashoffset:-14px}}@keyframes electrical-rotor-spin{to{transform:rotate(360deg)}}@keyframes electrical-heat-shimmer{50%{opacity:calc(var(--electrical-activity) * .38);transform:translateY(-1px)}}@keyframes electrical-field-pulse{to{opacity:calc(var(--electrical-activity) * .34)}}@media (prefers-reduced-motion:reduce){.electrical-edge__current-flow,.electrical-schematic-symbol__heat-waves,.electrical-schematic-symbol__magnetic-field,.electrical-schematic-symbol__rotor{animation:none!important}}.electrical-edge--signal .react-flow__edge-path{stroke:#d36d30;stroke-width:2px;stroke-dasharray:6 4}.electrical-edge--power .react-flow__edge-path{stroke-width:2.2px}.electrical-edge--5v .react-flow__edge-path{stroke:#d9683e}.electrical-edge--gnd .react-flow__edge-path{stroke:#52616b}.electrical-edge--shaft .react-flow__edge-path{stroke:#56758b;stroke-width:5px;stroke-linecap:round}.electrical-edge.selected .react-flow__edge-path{filter:drop-shadow(0 0 3px #087dcc7a)}.electrical-legend i.shaft{border-width:4px;border-color:#56758b}.electrical-fit{z-index:6;color:#68757f;height:27px;font-size:var(--font-caption);background:#ffffffeb;border:1px solid #d7dfe3;border-radius:8px;padding:0 9px;font-weight:700;position:absolute;top:14px;right:15px}.electrical-connection-hint{z-index:7;color:#4f4596;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#faf9fff7;border:1px solid #cfc9f5;border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;width:min(560px,100% - 40px);padding:9px 10px;display:grid;position:absolute;bottom:72px;left:50%;transform:translate(-50%);box-shadow:0 7px 24px #4a377d21}.electrical-connection-hint>svg{color:#6256c5}.electrical-connection-hint>div{gap:2px;min-width:0;display:grid}.electrical-connection-hint strong,.electrical-connection-hint span{font-size:var(--font-caption);line-height:1.35}.electrical-connection-hint button{height:32px;color:inherit;font-size:var(--font-caption);cursor:pointer;background:#fff;border:1px solid;border-radius:8px;align-items:center;gap:5px;padding:0 9px;font-weight:750;display:inline-flex}.electrical-connection-hint button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.electrical-legend{z-index:6;color:var(--text-muted);font-size:var(--font-caption);background:#ffffffeb;border:1px solid #dde4e7;border-radius:8px;gap:10px;padding:7px 9px;display:flex;position:absolute;bottom:14px;right:15px}.electrical-legend span{align-items:center;gap:5px;display:flex}.electrical-legend i{border-top:2px solid #465762;width:20px;display:inline-block}.electrical-legend i.signal{border-style:dashed;border-color:#d36d30}.electrical-legend i.power{border-color:#dc5f31}.property-section{border-bottom:1px solid #edf0f2;gap:8px;padding:13px 14px;display:grid}.electrical-model-level strong{width:fit-content;color:var(--violet-dark);background:var(--violet-soft);font-size:var(--font-caption);border:1px solid #d9d4fa;border-radius:999px;padding:3px 7px}.electrical-model-level span{color:var(--text-muted);font-size:var(--font-caption);line-height:1.35}.electrical-control-state{color:var(--text-muted);font-size:var(--font-caption);background:#f7faf9;border:1px solid #dce5e3;border-radius:8px;gap:2px;padding:8px 10px;display:grid}.electrical-control-state strong{color:#35504c}.electrical-control-state.is-runtime{background:#edf9f7;border-color:#b9ded8}.electrical-control-state.is-runtime strong{color:#177b75}.property-section__title{color:var(--text-muted);font-size:var(--font-caption);letter-spacing:.045em;text-transform:uppercase;align-items:center;gap:6px;font-weight:750;display:flex}.inspector-field{color:#64717c;font-size:var(--font-ui-small);grid-template-columns:minmax(0,1fr) 118px;align-items:center;gap:8px;display:grid}.inspector-field__input{height:var(--control-height);background:#fafbfc;border:1px solid #dfe5e8;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid;overflow:hidden}.inspector-field__input input{min-width:0;height:100%;font-size:var(--font-ui-small);background:0 0;border:0;outline:0;padding:0 5px 0 8px}.inspector-field__input small{color:var(--text-muted);font-size:var(--font-caption);padding-right:7px}.motor-mechanical-drive select{width:118px;height:var(--control-height);color:#46525c;min-width:0;font-size:var(--font-ui-small);background:#fafbfc;border:1px solid #dfe5e8;border-radius:8px;outline:0;padding:0 7px}.motor-mechanical-drive__note{color:var(--text-muted);font-size:var(--font-caption);margin:0;line-height:1.45}.motor-mechanical-drive__disconnect{min-height:var(--control-height);color:#6557b8;font-size:var(--font-caption);background:#faf9ff;border:1px solid #ded9f6;border-radius:8px;justify-content:center;align-items:center;gap:6px;font-weight:700;display:inline-flex}.motor-mechanical-drive select:disabled,.motor-mechanical-drive__disconnect:disabled,.motor-mechanical-drive input:disabled{cursor:not-allowed;opacity:.5}.switch-control{height:var(--control-height);font-size:var(--font-caption);background:#f6f7f8;border:1px solid #dddfe4;border-radius:8px}.switch-control.is-on{color:#177b75;background:#edf9f7;border-color:#b9ded8}.live-readings{background:#fafbfc}.reading-grid{grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.reading-grid span{color:var(--text-muted);font-size:var(--font-caption);background:#fff;border:1px solid #e4e8eb;border-radius:7px;gap:2px;padding:6px;display:grid}.reading-grid strong{color:#42505b;font-size:var(--font-caption)}.inspector-empty{color:var(--text-muted);text-align:center;place-items:center;gap:7px;padding:50px 24px;display:grid}.inspector-empty strong{color:#55636e;font-size:var(--font-ui-small)}.inspector-empty p{font-size:var(--font-body);margin:0;line-height:1.5}.delete-item-button{min-height:var(--control-height);color:#bd4e57;font-size:var(--font-caption);background:#fff7f7;border:1px solid #f0d7d9;border-radius:8px;justify-content:center;align-items:center;gap:6px;margin:13px 14px;font-weight:700;display:flex}.blockly-editor{gap:5px;display:grid}.arduino-program-summary{background:#faf9ff;border:1px solid #ded9f6;border-radius:10px;gap:5px;padding:10px;display:grid}.arduino-program-summary>span{color:#7568c3;font-family:ui-monospace,Cascadia Code,monospace;font-size:var(--font-caption)}.arduino-program-summary>strong{color:#4c426f;font-size:var(--font-caption)}.arduino-program-summary>small{color:var(--text-muted);font-size:var(--font-caption);line-height:1.45}.arduino-program-summary button{color:#5b4db5;min-height:32px;font-size:var(--font-caption);background:#fff;border:1px solid #cfc8f1;border-radius:8px;justify-content:center;align-items:center;gap:6px;margin-top:3px;font-weight:750;display:inline-flex}.arduino-program-dialog__backdrop{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#19202894;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.arduino-program-dialog{background:#fff;border:1px solid #cfd5dd;border-radius:16px;grid-template-rows:62px auto minmax(0,1fr);width:min(1240px,100vw - 32px);height:min(840px,100dvh - 32px);min-height:520px;display:grid;overflow:hidden;box-shadow:0 24px 70px #10182047}.arduino-program-dialog__header{border-bottom:1px solid #e4e8eb;justify-content:space-between;align-items:center;padding:0 16px 0 20px;display:flex}.arduino-program-dialog__header h2{color:#3d4650;margin:0;font-size:.95rem}.arduino-program-dialog__header button{color:#69757f;background:#f2f4f6;border:0;border-radius:9px;place-items:center;width:36px;height:36px;padding:0;display:grid}.arduino-program-dialog__guide{background:#f8f9fb;border-bottom:1px solid #e5e9ec;flex-wrap:wrap;gap:6px;padding:8px 12px;display:flex}.arduino-program-dialog__guide span{color:var(--text-muted);font-size:var(--font-caption);background:#fff;border:1px solid #e0e3eb;border-radius:999px;padding:5px 8px}.arduino-program-dialog__guide strong{color:#5d50b3}.arduino-program-dialog__workspace{grid-template-columns:minmax(0,1fr) 240px;min-height:0;display:grid}.arduino-program-dialog__editor{min-height:0;padding:10px}.arduino-program-dialog__monitor{background:#f8f9fb;border-left:1px solid #e4e8eb;align-content:start;gap:10px;min-height:0;padding:14px 12px;display:grid;overflow:auto}.arduino-program-dialog__monitor h3{color:#3d4650;margin:2px 0 0;font-size:.78rem}.arduino-program-dialog__editor .blockly-editor{grid-template-rows:minmax(0,1fr) auto auto;height:100%;min-height:0}.arduino-program-dialog__editor .blockly-editor__canvas{height:auto;min-height:0}.arduino-program-dialog__editor .blockly-editor__status{font-size:var(--font-caption);padding:0 3px}.arduino-program-dialog__editor .arduino-code-preview pre{max-height:150px}.blockly-editor__canvas{border:1px solid #dfe4e8;border-radius:9px;height:310px;overflow:hidden}.blockly-editor__status{color:var(--text-muted);font-size:var(--font-caption);line-height:1.35}.blocklySvg{background:#f8fafb!important}.blocklyToolboxDiv{background:#eef1f3!important}.arduino-code-preview{background:#f8f9fb;border:1px solid #e2e5ea;border-radius:8px}.arduino-code-preview summary{color:#675bb4;cursor:pointer;font-size:var(--font-caption);padding:7px 9px;font-weight:700}.arduino-code-preview pre{color:#3c4852;max-height:220px;font-size:var(--font-caption);white-space:pre-wrap;border-top:1px solid #e2e5ea;margin:0;padding:9px;line-height:1.5;overflow:auto}.arduino-pin-table{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;display:grid}.arduino-runtime-monitor{gap:8px;display:grid}.arduino-runtime-monitor__group{gap:4px;display:grid}.arduino-runtime-monitor__group h4{color:var(--text-muted);font-size:var(--font-caption);letter-spacing:.04em;text-transform:uppercase;margin:0;font-weight:750}.arduino-pin-table span{font-size:var(--font-caption);background:#fafbfc;border:1px solid #e2e5e8;border-radius:6px;justify-content:space-between;padding:5px 6px;display:flex}.serial-monitor{color:#d7e5df;max-height:150px;font-size:var(--font-caption);background:#26352f;border-radius:7px;gap:3px;padding:8px;display:grid;overflow:auto}.serial-monitor small{color:#8faaa0;font-weight:700}.connection-summary{color:var(--text-muted);font-size:var(--font-caption);grid-template-columns:minmax(0,1fr) auto;align-items:center}.run-comparison .height-chart,.run-comparison .comparison-stats,.run-comparison>button{grid-column:1/-1}.comparison-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;display:grid}.comparison-stats span{background:#fff;border-radius:6px;padding:5px 7px}.run-comparison>button{color:#5d50b4;min-height:28px;font-size:var(--font-caption);background:#fff;border:1px solid #ddd8fa;border-radius:7px;justify-self:end}@media (width<=1680px){.topbar{grid-template-columns:216px minmax(240px,1fr) auto auto}.experiment-context,.history-button__label{display:none}.history-button--undo{width:var(--target-min);padding:0}.simulation-controls{gap:6px;padding:0 10px}.step-button{width:var(--target-min);min-width:var(--target-min);padding:0}.step-button span,.topbar-actions .share-button span{display:none}.topbar-actions .share-button{width:var(--target-min);min-width:var(--target-min);justify-content:center;padding:0}}@media (width<=1320px){.topbar{grid-template-columns:210px minmax(210px,1fr) auto auto}.history-controls{padding-right:8px}.history-button__label{display:none}.history-button--undo{width:var(--target-min);padding:0}.domain-switch__label,.share-button span,.clear-scene-button span{display:none}.clear-scene-button{width:var(--target-min);padding:0}.run-button{width:auto;min-width:104px;padding:0 13px}.share-button{width:var(--target-min);justify-content:center;padding:0}.lab-layout{--toolbox-width:216px;--inspector-width:260px;grid-template-columns:var(--toolbox-width) minmax(320px, 1fr) var(--inspector-width)}.toolbox-view-tab span,.physics-domain-switcher__tab>span,.library-tab span,.library-search kbd{display:none}.toolbox-view-tab svg{display:block}.tool-list--family{grid-template-columns:minmax(0,1fr)}.problem-workspace{grid-template-columns:280px minmax(370px,1fr) 316px}.problem-detail{padding-left:26px;padding-right:26px}}@media (width<=940px){.topbar{grid-template-columns:42px minmax(112px,1fr) auto auto;column-gap:6px;padding-left:10px;padding-right:10px}.brand-mark{width:42px;height:42px}.brand-mark__logo{width:150px;height:150px;transform:translate(-2px,-49px)}.catalog-mode-heading,.topbar-actions .avatar-button{display:none}.simulation-controls{justify-self:end;padding-right:0}.lab-layout{--toolbox-width:196px;--inspector-width:236px;grid-template-columns:var(--toolbox-width) minmax(300px, 1fr) var(--inspector-width)}.problem-workspace{grid-template-columns:250px minmax(360px,1fr) 286px}.problem-catalog-sidebar>header,.problem-run-panel>header{padding-left:14px;padding-right:14px}.problem-parameter-grid{grid-template-columns:1fr}.toolbox-view-tab{height:var(--control-height);font-size:var(--font-caption);gap:0;padding:0 2px}.toolbox-view-tab svg{display:block}.inspector-section{padding-left:12px;padding-right:12px}.selected-object{margin-left:11px;margin-right:11px}.measurements-panel__content{grid-template-columns:94px minmax(220px,1fr) 96px}}@media (width<=860px){.tool-list--family{grid-template-columns:minmax(0,1fr)}.arduino-program-dialog__workspace{grid-template-rows:minmax(360px,1fr) auto;grid-template-columns:minmax(0,1fr);overflow:auto}.arduino-program-dialog__monitor{border-top:1px solid #e4e8eb;border-left:0;grid-template-columns:minmax(0,1fr)}.topbar{grid-template-rows:52px 56px;grid-template-columns:42px minmax(112px,1fr) auto;gap:0 6px;height:108px;padding:0 10px}.lab-app{grid-template-rows:108px minmax(0,1fr)}.brand-mark{grid-area:1/1}.document-title{border:0;grid-area:1/2;min-width:0;padding:0;display:flex}.document-title .experiment-context,.document-title .save-status{display:none}.project-menu{width:100%;min-width:0;margin:0;position:static}.project-menu>summary{width:100%;min-width:0}.project-menu__panel{width:auto;max-height:calc(100dvh - 68px);position:fixed;top:58px;left:10px;right:10px;overflow-y:auto}.topbar-actions{grid-area:1/3;gap:2px;display:flex}.topbar-actions .help-button,.topbar-actions>.share-button:not(.workspace-toggle){display:inline-flex}.topbar-actions .workspace-toggle{display:none}.topbar-actions .share-button,.topbar-actions .icon-button{width:var(--target-min);min-width:var(--target-min);justify-content:center;padding:0}.topbar-actions .share-button span,.clear-scene-button span,.history-button__label{display:none}.simulation-controls{background:0 0;border:0;border-radius:0;grid-area:2/1/auto/-1;justify-content:space-between;gap:4px;width:100%;padding:0}.playback-controls{gap:2px}.playback-rate-select{width:52px;padding-left:5px;padding-right:16px}.history-controls{gap:1px;padding-right:4px}.object-edit-controls{padding-right:3px}.model-time{align-items:center;min-width:56px;padding:3px 4px}.model-time small{display:none}.model-time strong{margin-top:0}.run-button{width:auto;min-width:84px;padding:0 10px}.run-button__label--full{display:none}.run-button__label--compact{display:inline}.lab-layout{grid-template-columns:var(--collapsed-rail-width) minmax(0, 1fr) var(--collapsed-rail-width);min-height:calc(100dvh - 108px)}.shell-drawer{z-index:18;width:min(82vw,320px);max-width:calc(100% - var(--collapsed-rail-width));outline:0;display:block;position:absolute;top:0;bottom:0;box-shadow:0 12px 32px #2535422e}.shell-drawer--left{left:0}.shell-drawer--right{right:0}.shell-drawer>.toolbox,.shell-drawer>.inspector{width:100%;height:100%;box-shadow:none;grid-row:auto;position:static}.inspector-collapse-button{z-index:20;left:-36px;right:auto}.workspace-panel-rail{z-index:8;grid-row:1}.workspace-panel-rail span{font-size:var(--font-caption)}.drawing-hint{grid-template-columns:auto minmax(0,1fr);gap:8px;width:calc(100% - 24px);min-width:0;max-width:calc(100% - 24px);padding:8px;display:grid}.drawing-hint__title{min-width:0}.drawing-hint>button,.drawing-hint>.drawing-hint__counter,.drawing-hint>.drawing-hint__actions{text-align:center;grid-column:1/-1;justify-content:center;width:100%;min-height:36px}.measurements-panel__bar{grid-template-rows:44px 44px;min-height:88px;padding:0 5px;display:grid}.result-tabs{overscroll-behavior-inline:contain;scrollbar-width:thin;gap:0;width:100%;min-width:0;overflow-x:auto}.result-tabs button{flex:none;gap:4px;padding:0 7px}.result-actions{border-top:1px solid var(--soft-line);justify-content:space-between;width:100%}.channel-picker>summary{min-height:var(--target-min)}.channel-picker>div{width:min(250px,100vw - 20px);left:0;right:auto}.measurements-panel{grid-column:1/-1}.measurements-panel__content{grid-template-columns:minmax(0,1fr);height:calc(100% - 88px);overflow:auto}.measurements-panel__content[aria-labelledby=measurement-results-tab-chart]{grid-template-rows:max-content minmax(180px,1fr) max-content;align-content:start}.measurements-panel__content[aria-labelledby=measurement-results-tab-chart] .chart-legend{grid-template-columns:repeat(auto-fit,minmax(135px,1fr));min-height:max-content;overflow:visible}.measurements-panel--collapsed .measurements-panel__bar{height:47px;min-height:47px;display:flex}.measurements-panel--collapsed .result-tabs{flex:auto}.measurements-panel--collapsed .result-actions{border-top:0;width:auto}.results-size-controls button{display:inline-flex}.workspace-tip,.electrical-legend--unified{display:none}.axis-indicator{top:72px;right:18px}.scene-preflight{width:calc(100% - 20px);right:10px}.scene-preflight__body{max-height:120px}}@media (width<=520px){.topbar{grid-template-rows:52px 104px;height:156px}.lab-app{grid-template-rows:156px minmax(0,1fr)}.simulation-controls{flex-wrap:wrap;place-content:center;gap:4px 2px;height:104px}.lab-layout{min-height:calc(100dvh - 156px)}.experiment-hud{max-width:calc(100% - 210px);top:14px;bottom:auto;left:52px;transform:none}.experiment-hud__hint{display:none}.scene-scale-bar{bottom:66px;left:10px}.result-tabs button:not([aria-selected=true]) .result-tab__label{display:none}}@media (width<=360px){.project-menu__mascots>div{grid-template-columns:minmax(0,1fr)}.project-menu__mascots button:last-child:nth-child(odd){grid-column:auto}.toolbox-view-tabs{gap:2px;padding-left:6px;padding-right:2px}.toolbox-view-tab{font-size:11px}.toolbox-view-tab span{overflow-wrap:normal;white-space:nowrap}.toolbox-view-tab span[data-short-label]{font-size:0}.toolbox-view-tab span[data-short-label]:after{content:attr(data-short-label);font-size:11px}.scene-vector-controls>summary strong{display:none}.scene-viewport-controls__tracking,.scene-viewport-controls__center{display:none!important}.scene-viewport-controls{right:8px}.scene-preflight__body{max-height:96px}}@media (width<=620px){.tool-shortcut-toast{max-width:calc(100vw - 32px);top:166px;left:52px;transform:none}.tool-command-palette-backdrop{padding:10px}.tool-command-palette{border-radius:16px;width:100%;max-height:calc(100dvh - 20px)}.tool-command-palette__header{padding:13px 12px 9px 16px}.tool-command-palette__search{margin:0 10px 8px}.tool-command-palette__search kbd,.tool-command-palette__footer{display:none}.tool-command-palette__results{padding:2px 7px 9px}.tool-command-palette__option{grid-template-columns:40px minmax(0,1fr) 18px;gap:9px;min-height:64px;padding:7px 9px}.tool-command-palette__meta{display:none}}@media (pointer:coarse){.lab-layout{--collapsed-rail-width:44px}.topbar .history-button,.topbar .icon-button,.topbar .share-button,.topbar .clear-scene-button,.topbar .step-button,.topbar .playback-rate-select{min-width:44px;height:44px}.topbar .project-menu>summary{min-height:44px}.topbar .run-button{width:auto;min-width:84px;height:44px}.toolbox-collapse-button,.toolbox-command-button,.inspector-collapse-button,.workspace-panel-rail,.result-actions button,.scene-viewport-controls button,.toolbox-view-tab,.catalog-scope button,.physics-domain-switcher__tab,.library-tab{min-height:44px}.toolbox-collapse-button,.toolbox-command-button,.inspector-collapse-button,.result-actions button,.scene-viewport-controls button{min-width:44px}.result-tabs button{min-height:44px}.mechanics-transform-handle,.mechanics-transform-rotation,.mechanics-connector-target,.electrical-node:not(.electrical-node--controller)>.electrical-port-target{width:44px;height:44px}.tool-card,.example-card{min-height:48px}.tool-card__favorite,.quick-tools .tool-card__favorite{opacity:.8;width:44px;height:44px;top:2px;right:2px}.tool-card-shell.has-favorite-action>.tool-card{padding-right:50px}.tool-command-palette__close{width:44px;height:44px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.scene-preflight{z-index:6;color:#315c53;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);width:min(430px,100% - 32px);font-size:var(--font-ui-small);background:#fafffdf0;border:1px solid #cfded9;border-radius:10px;position:absolute;top:52px;right:16px;box-shadow:0 7px 24px #2b39451a}.scene-preflight--blocked{color:#8d343d;background:#fffafaf7;border-color:#ebc6c9}.scene-preflight>summary{cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;padding:8px 10px;font-weight:700;list-style:none;display:grid}.scene-preflight>summary::-webkit-details-marker{display:none}.scene-preflight>summary small{opacity:.7;font-size:var(--font-caption)}.scene-preflight__body{border-top:1px solid #55706924;max-height:230px;padding:0 10px 10px;overflow:auto}.unified-workspace--mechanics .scene-preflight[data-preflight-domain=electricity],.unified-workspace--electricity .scene-preflight[data-preflight-domain=mechanics],.unified-workspace--thermal .scene-preflight{display:none}.scene-preflight__body>p{margin:9px 0 0;line-height:1.45}.scene-preflight__body ul{gap:6px;margin:9px 0 0;padding:0;list-style:none;display:grid}.scene-preflight__diagnostic{background:#356b600f;border-radius:7px;grid-template-columns:auto minmax(0,1fr);gap:7px;padding:7px;display:grid}.scene-preflight__diagnostic--error{background:#a6384312}.scene-preflight__diagnostic>button{width:100%;min-height:36px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;padding:3px 4px;display:grid}.scene-preflight__diagnostic>button:hover{background:#a6384312}.scene-preflight__diagnostic>button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:1px}.scene-preflight__diagnostic span{gap:2px;display:grid}.scene-preflight__diagnostic small,.scene-preflight__diagnostic em{font-size:var(--font-caption);font-style:normal;line-height:1.35}.scene-preflight__diagnostic small{font-variant-numeric:tabular-nums;opacity:.78}.scene-preflight__diagnostic>button small{color:var(--brand-blue-dark);font-weight:700}.property-field>select{width:145px;height:var(--control-height);color:#46525c;font-size:var(--font-ui-small);background:#fafbfc;border:1px solid #dfe5e8;border-radius:8px;padding:0 7px}.property-toggle{color:#56646e;font-size:var(--font-ui-small);align-items:center;gap:8px;display:flex}.geometry-inspector__warning,.geometry-inspector__note{color:var(--text-muted);font-size:var(--font-caption);margin:0;line-height:1.45}.geometry-inspector__warning{color:#9a4c30;background:#fff3ec;border-radius:7px;padding:8px}.geometry-inspector__note{padding:10px 15px}.contact-placement-button{width:100%;min-height:var(--control-height);color:var(--brand-blue-dark);background:var(--brand-blue-soft);font-size:var(--font-ui-small);border:1px solid #b7d9ef;border-radius:8px;font-weight:700}.contact-placement-button:disabled{cursor:not-allowed;opacity:.55}.mechanics-canvas--geometryPoint,.mechanics-canvas--geometryMaterialPoint,.mechanics-canvas--geometrySegment,.mechanics-canvas--geometryIncline,.mechanics-canvas--geometryCircle,.mechanics-canvas--geometryArc{cursor:crosshair}.problem-status-axis select:focus-visible,.property-field--select select:focus-visible,.property-field>select:focus-visible,.environment-field input:focus-visible,.environment-field select:focus-visible,.motor-mechanical-drive select:focus-visible,summary:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.number-input:focus-within,.effect-input:focus-within,.environment-field__input:focus-within,.inspector-field__input:focus-within{background:#fff;border-color:#73b5df;box-shadow:0 0 0 3px #087dcc1c}.effect-input input:focus-visible,.environment-field__input input:focus-visible,.inspector-field__input input:focus-visible,.number-input input:focus-visible{outline:0}.problem-search input:focus-visible,.tool-command-palette__search input:focus-visible,.library-search input:focus-visible{outline:3px solid var(--focus-ring);outline-offset:4px}@media (width<=760px){.axis-indicator{display:none}.scene-preflight{width:min(430px,100% - 20px);top:64px;right:10px}}.welcome-screen{--welcome-ink:#17324d;min-height:100dvh;color:var(--welcome-ink);background:radial-gradient(circle at 12% 15%,#1c92dd29,#0000 28rem),radial-gradient(circle at 88% 88%,#f6844224,#0000 30rem),linear-gradient(#f8fbff 0%,#eef6fb 100%);overflow:auto}.welcome-screen:before{z-index:0;pointer-events:none;content:"";opacity:.34;background-image:linear-gradient(#4170941a 1px,#0000 1px),linear-gradient(90deg,#4170941a 1px,#0000 1px);background-size:36px 36px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 18% 82%,#0000);mask-image:linear-gradient(#0000,#000 18% 82%,#0000)}.welcome-screen__header,.welcome-screen__main{z-index:1;width:min(1180px,100% - 48px);margin-inline:auto;position:relative}.welcome-screen__header{justify-content:space-between;align-items:center;gap:24px;min-height:90px;display:flex}.welcome-screen__brand{width:min(255px,44vw);height:78px;display:block;overflow:hidden}.welcome-screen__logo{width:100%;max-width:none;height:auto;display:block;transform:translateY(-33%)}.welcome-screen__continue,.model-wizard__back{color:#385267;cursor:pointer;background:#ffffffd1;border:1px solid #c9d9e7;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 16px;font-weight:750;display:inline-flex;box-shadow:0 5px 18px #1c48680f}.welcome-screen__continue{white-space:nowrap}.welcome-screen__continue:hover,.model-wizard__back:hover{color:#09699f;background:#fff;border-color:#8ebbd9}.welcome-screen__main{grid-template-columns:minmax(280px,.82fr) minmax(560px,1.35fr);align-items:center;gap:clamp(38px,6vw,82px);min-height:calc(100dvh - 106px);padding:12px 0 34px;display:grid}.welcome-hero__eyebrow,.model-wizard__eyebrow{color:#0875b7;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:18px;font-size:13px;font-weight:850;display:inline-flex}.welcome-hero h1,.model-wizard h1{color:#123553;letter-spacing:-.045em;text-wrap:balance;max-width:720px;margin:0;font-size:clamp(36px,5vw,64px);line-height:1.02}.welcome-hero h1:focus,.model-wizard h1:focus{outline:none}.welcome-hero>p,.model-wizard>p{color:#5b7083;max-width:570px;margin:24px 0 0;font-size:clamp(16px,1.8vw,19px);line-height:1.55}.welcome-guide{background:#fffaf1db;border:1px solid #dd84353d;border-radius:22px;grid-template-columns:78px 1fr;align-items:center;gap:15px;margin-top:32px;padding:13px 18px 13px 8px;display:grid;box-shadow:0 14px 40px #734c1a14}.welcome-guide__portrait{background-image:var(--assistant-portrait-1x);image-rendering:auto;background-position:50%;background-repeat:no-repeat;background-size:contain;width:78px;height:78px}@supports (background-image:image-set(url("") 1x)){.welcome-guide__portrait{background-image:var(--assistant-portrait-set,var(--assistant-portrait-1x))}}.welcome-guide div{gap:4px;display:grid}.welcome-guide strong{color:#8f4a12;font-size:15px}.welcome-guide span:not(.welcome-guide__portrait){color:#745f4c;font-size:13px;line-height:1.4}.welcome-hero__facts{flex-wrap:wrap;gap:9px 16px;margin-top:22px;display:flex}.welcome-hero__facts span{color:#5b7183;align-items:center;gap:5px;font-size:12px;font-weight:700;display:inline-flex}.welcome-hero__facts svg{color:#25a568}.welcome-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.welcome-action{--action-accent:#1789cb;--action-soft:#e9f5fc;color:#173955;text-align:left;cursor:pointer;background:#ffffffeb;border:1px solid #d9e4ed;border-radius:22px;flex-direction:column;align-items:stretch;min-height:210px;padding:22px;transition:transform .16s,border-color .16s,box-shadow .16s;display:flex;overflow:hidden;box-shadow:0 14px 38px #1c486817}.welcome-action[data-accent=orange]{--action-accent:#e56d25;--action-soft:#fff0e7}.welcome-action[data-accent=green]{--action-accent:#218a67;--action-soft:#e9f7f1}.welcome-action[data-accent=violet]{--action-accent:#7166d8;--action-soft:#f0efff}.welcome-action:hover:not(:disabled),.welcome-action:focus-visible{z-index:1;border-color:color-mix(in srgb, var(--action-accent) 48%, white);transform:translateY(-4px);box-shadow:0 20px 46px #18436226}.welcome-action:focus-visible,.welcome-screen__continue:focus-visible,.model-wizard button:focus-visible{outline-offset:3px;outline:3px solid #0d82c452}.welcome-action:disabled,.welcome-screen__continue:disabled,.model-wizard button:disabled{cursor:wait;opacity:.62}.welcome-action__top{justify-content:space-between;align-items:center;gap:10px;min-height:48px;display:flex}.welcome-action__icon{width:48px;height:48px;color:var(--action-accent);background:var(--action-soft);border-radius:15px;place-items:center;display:grid}.welcome-action__badge{color:#a44b17;overflow-wrap:anywhere;text-align:right;background:#fff0df;border-radius:999px;max-width:calc(100% - 58px);padding:5px 9px;font-size:12px;font-weight:850;line-height:1.2}.welcome-action>strong{color:#173b57;margin-top:19px;font-size:21px;line-height:1.24}.welcome-action__description{color:#65798a;margin-top:9px;font-size:14px;line-height:1.45}.welcome-action__link{color:var(--action-accent);justify-content:space-between;align-items:center;margin-top:auto;padding-top:18px;font-size:14px;font-weight:850;display:inline-flex}.welcome-screen__error{color:#9e3030;background:#fff3f3;border:1px solid #f1b9b9;border-radius:12px;grid-column:1/-1;margin:2px 0 0;padding:11px 14px;font-size:13px}.model-wizard{background:#fffffff0;border:1px solid #d8e4ed;border-radius:30px;grid-column:1/-1;width:min(900px,100%);min-height:600px;margin:0 auto;padding:clamp(34px,6vw,68px);position:relative;box-shadow:0 28px 70px #18456521}.model-wizard__back{width:max-content;box-shadow:none;background:#f7fafc;margin-bottom:36px;display:flex}.model-wizard__progress{align-items:center;gap:8px;display:flex;position:absolute;top:44px;right:clamp(34px,6vw,68px)}.model-wizard__progress span{color:#718596;background:#edf2f6;border-radius:50%;place-items:center;width:28px;height:28px;font-size:12px;font-weight:850;display:grid}.model-wizard__progress span.is-active{color:#fff;background:#1488c8}.model-wizard h1{font-size:clamp(34px,5vw,52px);line-height:1.04}.model-wizard__options{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:34px;display:grid}.model-wizard__options button{color:#1379b4;text-align:left;cursor:pointer;background:#fbfdff;border:1px solid #d9e5ee;border-radius:18px;grid-template-rows:auto auto 1fr;justify-items:start;gap:11px;min-height:180px;padding:22px;display:grid;position:relative}.model-wizard__options button:hover{background:#f3faff;border-color:#79badd;transform:translateY(-2px)}.model-wizard__options button strong{color:#173a55;font-size:17px}.model-wizard__options button span{color:#657a8b;padding-right:26px;font-size:14px;line-height:1.4}.model-wizard__options button>svg:last-child{position:absolute;bottom:18px;right:18px}.model-wizard__summary{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:32px;display:grid}.model-wizard__summary>div{background:#f8fbfd;border:1px solid #dde7ee;border-radius:16px;gap:5px;padding:18px;display:grid}.model-wizard__summary span{color:#50677a;font-size:12px}.lab-assistant-hint[data-mode=tutorial]{--cloud-enter-y:0px;animation:.26s ease-out both lab-assistant-cloud-enter}.model-wizard__summary strong{color:#1b405b;font-size:15px}.model-wizard__summary .model-wizard__recommendation{color:#218a67;background:#effaf5;border-color:#b9deca;grid-column:1/-1;grid-template-columns:none;align-items:center;gap:12px;display:flex}.model-wizard__recommendation span{color:#527465;gap:4px;display:grid}.model-wizard__recommendation strong{color:#17664d}.model-wizard__actions{justify-content:flex-end;gap:12px;margin-top:26px;display:flex}.model-wizard__actions button{cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 18px;font-weight:800;display:inline-flex}.model-wizard__actions .is-secondary{color:#486276;background:#fff;border:1px solid #cbdbe7}.model-wizard__actions .is-primary{color:#fff;background:linear-gradient(#159bd9,#087dc0);border:1px solid #0879b7;box-shadow:0 9px 22px #0a7cbc33}.lab-assistant-hint__tutorial-progress{grid-template-columns:repeat(4,1fr);gap:6px;margin:13px 0 4px;display:grid}.lab-assistant-hint__tutorial-progress span{background:#dce5eb;border-radius:999px;height:4px}.lab-assistant-hint__tutorial-progress span.is-active{background:#168dcc}@media (width<=960px){.welcome-screen__main{grid-template-columns:1fr;align-items:start;gap:34px;padding-top:22px}.welcome-hero{grid-template-columns:1fr minmax(260px,.65fr);gap:0 28px;display:grid}.welcome-hero__eyebrow,.welcome-hero h1,.welcome-hero>p,.welcome-hero__facts{grid-column:1}.welcome-guide{grid-area:1/2/span 4;align-self:center;margin-top:0}}@media (width<=680px){.welcome-screen__header,.welcome-screen__main{width:min(100% - 28px,1180px)}.welcome-screen__header{gap:10px;min-height:84px}.welcome-screen__continue{gap:5px;min-width:116px;padding:0 11px;font-size:13px}.welcome-screen__continue-detail{display:none}.welcome-screen__brand{width:min(190px,100vw - 158px);height:59px}.welcome-hero{display:block}.welcome-hero h1{font-size:clamp(34px,11vw,48px);line-height:1.08}.welcome-guide{margin-top:25px}.welcome-actions{grid-template-columns:1fr}.welcome-action{min-height:205px}.model-wizard{border-radius:22px;min-height:0;padding:26px 20px}.model-wizard__back{margin-bottom:32px}.model-wizard__progress{top:33px;right:20px}.model-wizard__progress span{width:24px;height:24px}.model-wizard__options,.model-wizard__summary{grid-template-columns:1fr}.model-wizard__options button{min-height:132px}.model-wizard__actions{flex-direction:column-reverse}.model-wizard__actions button{width:100%}}
