/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.block{display:block}.contents{display:contents}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}.app-shell.workbench{background:#f3f2ee;grid-template-rows:66px 34px minmax(0,1fr) 144px;font-family:Avenir Next,Segoe UI,sans-serif}.app-shell.workbench.asset-mode{grid-template-rows:66px 34px minmax(0,1fr)}.workbench .topbar{color:#2e3933;-webkit-backdrop-filter:none;backdrop-filter:none;background:#faf9f6;border-bottom:1px solid #dfdfd7;padding:0 24px}.workbench .brand-name{letter-spacing:-.6px;align-items:baseline;gap:12px;font-size:20px;font-weight:650;display:flex}.workbench .brand-name span{color:#82877d;letter-spacing:0;font-size:12px;font-weight:400}.workbench .header-meta{gap:10px}.workbench .view-switch{background:0 0;border:0;gap:3px;margin-right:18px;padding:0}.workbench .view-switch button{color:#767b71;border-radius:6px;gap:6px;width:auto;height:36px;padding:0 15px;font-size:13px}.workbench .view-switch button svg{display:none}.workbench .view-switch button:hover{color:#243c30;background:#eeefe9}.workbench .view-switch button.active{color:#344f3c;box-shadow:none;background:#e5ebe1;font-weight:600}.workbench .protocol-import-button,.workbench .event-log-button,.workbench .inventory-button{color:#626e64;background:0 0;border:0;border-radius:5px;height:34px;padding:0 8px;font-size:12px}.workbench .protocol-import-button{max-width:190px;margin-right:8px}.workbench .protocol-import-button svg:first-child,.workbench .event-log-button svg,.workbench .inventory-button svg{color:#70816f}.workbench .protocol-import-button svg:last-child,.workbench .event-log-button strong,.workbench .inventory-button strong{display:none}.workbench .inventory-button.has-critical strong{color:#92552f;background:#f4e7d8;display:inline}.workbench .event-log-button span,.workbench .inventory-button span{display:inline}.workbench .event-log-button:hover,.workbench .inventory-button:hover,.workbench .protocol-import-button:hover{color:#284630;background:#eaece5}.workbench .device-connections{background:#eceee7;border-bottom:1px solid #dcdfd4}.workbench .connections-summary{color:#6e796d;gap:10px;height:33px;font-size:11px}.workbench .connections-summary strong{color:#536a52;font-weight:500}.workbench .connections-summary b{color:#596d54}.workbench .connection-light{flex-basis:5px;width:5px;height:5px}.workbench .online .connection-light{background:#6c8967}.workbench .connections-details{color:#344038;background:#faf9f6;border-color:#d7dbd0;top:34px;box-shadow:0 12px 40px #2d3b2526}.workbench .connections-details header p,.workbench .connections-context small,.workbench .connections-footnote{color:#727d70}.workbench .connections-context{color:#51664c}.workbench .connection-device{background:0 0;border-color:#e0e3d9}.workbench .connection-device h3{color:#344038}.workbench .connection-device p,.workbench .connection-device small{color:#747c71}.workbench .connection-device span{color:#756b8a;background:#eeedf5;border:0}.workbench .connection-device.not-integrated span,.workbench .connection-device.disabled span{color:#91713e;background:#f5eee1;border:0}.workbench .connection-device.manual-check span,.workbench .connection-device.unknown span{color:#6b7366;background:#eaece6;border:0}.workbench .connections-details button{color:#46603d;background:#e9eee4;border-color:#d4dccd}.workbench .connections-details details,.workbench .connections-details details code{color:#697560}.workbench .workspace{grid-template-columns:minmax(0,1fr) 292px;gap:20px;margin:18px 20px 12px}.workbench .workspace.inspector-closed{grid-template-columns:minmax(0,1fr)}.workbench .viewport{background:#101b21;border:0;border-radius:9px}.workbench .viewport:before{background:linear-gradient(#0000 77%,#09131b99)}.workbench .viewport-heading{top:22px;left:22px;right:100px}.workbench .viewport-heading h1{letter-spacing:-.3px;color:#dbe2e4;margin-bottom:6px;font-size:18px;font-weight:500}.workbench .viewport-heading p{color:#839196;max-width:390px;font-size:11px;line-height:1.5}.workbench .viewport-tools{top:18px;right:18px}.workbench .tool-button{color:#a5b4b8;background:#ffffff09;border:0;border-radius:5px;width:30px;height:30px}.workbench .tool-button:hover{background:#ffffff18}.workbench .inspector{color:#364137;scrollbar-color:#d1d6ca transparent;background:0 0;padding:9px 1px 8px}.workbench .close-inspector{color:#8d9588;background:0 0;border:0;width:26px;height:26px;top:4px;right:0}.workbench .inspector h2{color:#2f3a30;letter-spacing:-.5px;margin-top:0;font-size:22px;font-weight:550;line-height:1.3}.workbench .part-en{letter-spacing:0;color:#889080;margin:7px 0 18px;font-family:inherit;font-size:12px;line-height:1.5}.workbench .part-description{color:#727b6e;min-height:0;font-size:12px;line-height:1.8}.workbench .spec-grid{background:0 0;border:0;gap:16px;margin:22px 0 26px}.workbench .spec-grid>div{background:0 0;justify-content:flex-start;gap:7px;min-height:42px;padding:0}.workbench .spec-grid span{letter-spacing:0;color:#909788;font-size:10px}.workbench .spec-grid strong{color:#54604d;font:500 12px/1.5 Avenir Next,sans-serif}.workbench .component-list-title{color:#8c9485;letter-spacing:0;padding:0 8px 12px;font-size:11px}.workbench .component-list button{color:#707b67;border:0;border-radius:5px;grid-template-columns:20px 1fr 12px;gap:7px;min-height:36px;padding:8px;font-size:11px}.workbench .component-list button:last-child{border:0}.workbench .component-list button .mini-dot{display:none}.workbench .component-list button.active{color:#3c5433;box-shadow:none;background:#e5eadd}.workbench .component-list button:hover{color:#3c5433;background:#e9ece3}.workbench .mini-index{color:#a6ad9f;font:400 10px Avenir Next,sans-serif}.workbench .paper-link{color:#85907c;border:0;justify-content:flex-start;height:auto;margin:14px 8px 0;font-size:11px}.workbench .paper-link svg:first-child{display:none}.workbench .live-readings{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-top:1px solid #ffffff14;grid-template-columns:repeat(4,minmax(0,1fr));height:47px;display:grid;bottom:14px;left:20px;right:20px}.workbench .live-readings>div{border:0;flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;min-width:0;padding:7px 10px 0 0}.workbench .live-readings svg{display:none}.workbench .live-readings span{color:#839397;font-size:10px}.workbench .live-readings strong{font:500 12px var(--font-geist-mono);color:#c5d0d1;margin:0}.workbench .workbench-fluid-details{z-index:5;color:#a1b0b0;position:absolute;bottom:76px;left:20px;right:20px}.workbench .workbench-fluid-details>summary{cursor:pointer;width:fit-content;padding:7px 0;font-size:11px}.workbench .workbench-fluid-details>summary span{color:#607778;margin-left:10px;font-size:10px}.workbench .workbench-fluid-details .fluid-monitor{background:#102129f2;border-radius:6px;grid-template-columns:130px minmax(400px,1fr);margin-top:5px;position:static;overflow-x:auto}.workbench .composition-bar span{box-shadow:none}.workbench .protocol-panel{color:#5e6d58;background:#faf9f6;border-top:1px solid #dedfd5}.workbench .protocol-panel.has-protocol{grid-template-columns:260px minmax(0,1fr)}.workbench .run-control{border-color:#e3e5da;gap:12px;padding:0 20px}.workbench .play-button{color:#fff;background:#5b7855;border:0;border-radius:50%;width:38px;height:38px}.workbench .play-button:hover{background:#466540}.workbench .run-control span{color:#929b88;letter-spacing:0;font-size:10px}.workbench .run-control>div:not(.timer)>strong{color:#4b6341;font-size:13px;font-weight:600}.workbench .run-control .step-progress{color:#97a28e}.workbench .timer strong{color:#66735c;font-size:12px}.workbench .simulation-tools button{color:#85917a;background:0 0;border-color:#dbe0d2;border-radius:3px}.workbench .protocol-step-track{scrollbar-color:#c8d0be transparent}.workbench .stage:before{box-shadow:none;background:#d4dccb}.workbench .stage.completed:before{box-shadow:none;background:#98ad89}.workbench .stage .stage-node{color:#96a388;box-shadow:none;background:#faf9f6;border:1px solid #ced8c4;width:27px;height:27px;font:500 10px Avenir Next,sans-serif}.workbench .stage.active .stage-node{color:#fff;box-shadow:none;background:#617d54!important;border-color:#617d54!important}.workbench .stage-copy strong{color:#77846b;font-size:11px;font-weight:500}.workbench .stage.active .stage-copy strong{color:#3e5a32}.workbench .stage-copy small{color:#9ba48f;font-size:9px;line-height:1.6}.workbench .stage-time{color:#9aa48f;font:400 9px Avenir Next,sans-serif}.workbench .conditional-tag{color:#8e9384;letter-spacing:0;font-size:8px}.workbench .conditional-tag:before{box-shadow:none}.app-shell.workbench.run-focus .view-switch,.app-shell.workbench.run-focus .protocol-import-button{display:flex}.app-shell.workbench.run-focus .event-log-button span,.app-shell.workbench.run-focus .inventory-button span{display:inline}@media (width<=1100px){.workbench .brand-name span{display:none}.workbench .workspace{grid-template-columns:minmax(0,1fr) 258px;gap:16px;margin:14px}.workbench .view-switch{margin-right:0}.workbench .view-switch button{padding:0 11px}.workbench .protocol-import-button{max-width:135px}}@media (width<=760px){.app-shell.workbench{grid-template-rows:60px 34px minmax(0,1fr) 144px;min-height:800px}.app-shell.workbench.asset-mode{grid-template-rows:60px 34px minmax(0,1fr)}.workbench .topbar{padding:0 14px}.workbench .brand-name{font-size:17px}.workbench .header-meta{gap:3px}.workbench .view-switch button{padding:0 8px;font-size:12px}.workbench .protocol-import-button,.workbench .event-log-button,.workbench .inventory-button{justify-content:center;width:30px;min-width:30px;margin:0;padding:0}.workbench .protocol-import-button span,.workbench .event-log-button span,.workbench .inventory-button span,.app-shell.workbench.run-focus .event-log-button span,.app-shell.workbench.run-focus .inventory-button span{display:none}.workbench .workspace{grid-template-columns:minmax(0,1fr);position:relative}.workbench .inspector{z-index:6;background:#f3f2eef7;border-radius:8px;width:min(290px,85%);padding:20px;position:absolute;top:0;bottom:0;right:0}.workbench .close-inspector{top:12px;right:10px}.workbench .protocol-panel.has-protocol{grid-template-columns:210px minmax(0,1fr)}.workbench .run-control{grid-template-columns:38px minmax(60px,1fr) auto;gap:8px;padding:0 12px}}.app-shell.workbench.sidebar-shell{grid-template-rows:minmax(0,1fr);grid-template-columns:196px minmax(0,1fr);min-height:640px}.sidebar-shell [hidden]{display:none!important}.workspace-sidebar{background:#eeefe8;border-right:1px solid #dfe2d7;flex-direction:column;min-height:0;padding:30px 14px 20px;display:flex}.sidebar-brand{letter-spacing:-.7px;color:#2e3c32;padding:0 15px 38px;font-size:23px;font-weight:700}.sidebar-brand>span{color:#7d8778;letter-spacing:.1px;margin-top:6px;font-size:10px;font-weight:400;display:block}.public-demo-notice{background:#fafbf7;border:1px solid #dfe2d7;border-radius:8px;max-width:620px;padding:24px}.public-demo-notice h2{margin-bottom:16px;font-size:22px}.public-demo-notice p{margin-bottom:16px;line-height:1.7}.public-demo-notice a{color:#47673b;text-decoration:underline}.workspace-sidebar nav{flex-direction:column;gap:6px;display:flex}.nav-group-label{color:#8c9585;letter-spacing:1px;text-transform:uppercase;padding:0 15px 10px;font-size:10px}.workspace-sidebar nav button{color:#75816d;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:12px;min-height:44px;padding:0 15px;font-size:13px;display:flex}.workspace-sidebar nav button:hover{color:#344e38;background:#e5e8dd}.workspace-sidebar nav button.active{color:#3f5b38;background:#dce5d5;font-weight:600}.workspace-sidebar nav button i{background:#6d8c58;border-radius:50%;width:6px;height:6px;margin-left:auto}.sidebar-footer{color:#7b8873;margin-top:auto;padding:24px 15px 0;font-size:10px}.sidebar-footer>span{color:#5b6b53;font-weight:500}.sidebar-footer p{margin-top:6px;font-size:10px;line-height:1.6}.sidebar-footer button{color:#47673b;text-align:left;cursor:pointer;background:0 0;border:0;margin-top:12px;padding:0;font-size:11px}.workspace-page{grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid}.page-header{border-bottom:1px solid #e3e5dc;justify-content:space-between;align-items:center;gap:20px;padding:25px 28px 22px;display:flex}.page-header h1{color:#354333;letter-spacing:-.5px;margin:0 0 6px;font-size:23px;font-weight:550}.page-header p{color:#899180;margin:0;font-size:12px;line-height:1.5}.page-content{min-width:0;min-height:0;display:grid;overflow:hidden}.sidebar-shell .workspace{gap:22px;min-height:0;margin:20px 24px 24px}.sidebar-shell .viewport-heading{top:22px}.sidebar-shell .viewport-heading p{font-size:11px}.sidebar-shell .viewport-tools{top:16px}.sidebar-shell .viewport:before{pointer-events:none}.sidebar-shell .page-experiment .page-content{grid-template-rows:minmax(0,1fr) 158px}.sidebar-shell .page-experiment .workspace{margin-bottom:18px}.experiment-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:5px;display:flex}.experiment-actions>button{cursor:pointer}.experiment-actions .experiment-bridge{color:#566b48;background:#e7ecdf;border:1px solid #d5ddce;border-radius:5px;align-items:center;gap:6px;padding:8px 10px;font-size:12px;display:flex}.sidebar-shell .protocol-panel{min-height:0}.sidebar-shell .page-experiment .protocol-panel.has-protocol{grid-template-columns:235px minmax(0,1fr)}.sidebar-shell .page-experiment .run-control{padding:0 14px}.sidebar-shell .setup-page{min-height:0;display:grid;overflow:hidden}.sidebar-shell .devices-page{min-height:0;padding:24px 28px;overflow-y:auto}.sidebar-shell .devices-page .device-connections{background:0 0;border:0}.sidebar-shell .devices-page .connections-summary{display:none}.sidebar-shell .connections-page-status{color:#67755d;margin-bottom:20px;font-size:12px}.sidebar-shell .connections-page-status.offline,.sidebar-shell .connections-page-status.error{color:#975d3a}.sidebar-shell .devices-page .connections-details{width:auto;max-height:none;box-shadow:none;background:0 0;border:0;padding:0;position:static}.sidebar-shell .devices-page .connections-details header h2{font-size:16px}.sidebar-shell .devices-page .connections-grid{gap:14px}.sidebar-shell .devices-page .connection-device{background:#fafbf7;border-radius:7px;padding:18px}.sidebar-shell .devices-page .connection-device h3{font-weight:550}.sidebar-shell .devices-page .connections-context{background:#e9eee2;border-radius:5px;margin:20px 0;padding:14px 16px}.sidebar-shell .devices-page .connections-footnote{max-width:780px;line-height:1.7}.hardware-commissioning{border-top:1px solid #dce1d5;margin-top:28px;padding-top:24px}.hardware-commissioning>p,.hardware-commissioning details{color:#63705e;font-size:13px;line-height:1.65}.hardware-commissioning>p{max-width:850px;margin-bottom:18px}.hardware-commissioning>details{margin-top:18px}.hardware-commissioning summary{cursor:pointer}.hardware-commissioning pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:240px;font-size:11px;overflow:auto}.hardware-commissioning code{overflow-wrap:anywhere;margin:10px 0;display:block}.sidebar-shell button:focus-visible{outline-offset:3px;outline:2px solid #8a9c76}@media (width<=1150px){.app-shell.workbench.sidebar-shell{grid-template-columns:164px minmax(0,1fr)}.workspace-sidebar{padding-inline:10px}.sidebar-brand{padding-left:12px;font-size:21px}.page-header{padding:20px}.sidebar-shell .workspace{grid-template-columns:minmax(0,1fr) 245px;gap:16px;margin:16px}.sidebar-shell .workspace.inspector-closed{grid-template-columns:minmax(0,1fr)}.page-experiment .page-header{flex-direction:column;align-items:flex-start;gap:12px}.experiment-actions{justify-content:flex-start}.sidebar-shell .devices-page{padding:20px}.sidebar-shell .devices-page .connections-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.app-shell.workbench.sidebar-shell{grid-template-columns:66px minmax(0,1fr);min-height:640px}.workspace-sidebar{padding:24px 8px 16px}.sidebar-brand{text-align:center;letter-spacing:-.5px;padding:0 0 30px;font-size:11px}.sidebar-brand>span,.nav-group-label,.workspace-sidebar nav button>span,.sidebar-footer{display:none}.workspace-sidebar nav button{justify-content:center;padding:0;position:relative}.workspace-sidebar nav button i{position:absolute;top:6px;right:4px}.page-header{padding:18px 14px}.page-header h1{font-size:21px}.page-header p{font-size:11px}.sidebar-shell .workspace{grid-template-columns:minmax(0,1fr);margin:12px}.sidebar-shell .page-experiment .page-content{grid-template-rows:minmax(0,1fr) 190px}.sidebar-shell .page-experiment .protocol-panel.has-protocol{grid-template-columns:170px minmax(0,1fr)}.sidebar-shell .run-control{grid-template-columns:32px minmax(0,1fr);gap:8px}.sidebar-shell .run-control .timer{grid-column:2}.sidebar-shell .live-readings{left:12px;right:12px}.sidebar-shell .live-readings strong{font-size:9px}.sidebar-shell .live-readings span{font-size:8px}.sidebar-shell .workbench-fluid-details{left:12px;right:12px}.sidebar-shell .devices-page{padding:14px}.sidebar-shell .devices-page .connections-grid{grid-template-columns:minmax(0,1fr)}}:root{--ui-page:#f3f2ee;--ui-surface:#fafaf7;--ui-text:#334137;--ui-muted:#687565;--ui-line:#d8ded2;--ui-accent:#496b3c;--ui-selection:#e5ecdd;--ui-danger:#a13d37;--ui-danger-bg:#faece7;--ui-warning:#856028;--ui-warning-bg:#f8efdc;--ui-purple:#70587d;--ui-purple-bg:#eee9f2}.sidebar-shell{--ink:var(--ui-text);--muted:var(--ui-muted);--line:var(--ui-line);--accent:var(--ui-accent);--panel:var(--ui-surface)}.sidebar-shell .paper-link,.sidebar-shell .paper-link:hover{color:var(--ui-accent)}.sidebar-shell .stage-time,.sidebar-shell .stage small{font-size:11px}.sidebar-shell .page-experiment,.sidebar-shell .page-devices{grid-template-rows:auto auto minmax(0,1fr)}.section-tabs{border-bottom:1px solid var(--ui-line);gap:24px;padding:0 28px;display:flex}.section-tabs button{color:var(--ui-muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:14px 0;font-size:13px}.section-tabs button[aria-current]{border-bottom-color:var(--ui-accent);color:var(--ui-accent);font-weight:600}.section-tabs span{color:var(--ui-danger);margin-left:6px;font-size:11px}.sidebar-shell .page-experiment.tool-page .page-content{grid-template-rows:minmax(0,1fr)}.workspace-tool{min-height:0;color:var(--ui-text);padding:24px 28px 40px;overflow:auto}.workspace-empty{color:var(--ui-text);padding:40px}.workspace-empty p{color:var(--ui-muted);margin:12px 0 24px}.workspace-empty button{border:1px solid var(--ui-line);background:var(--ui-selection);color:var(--ui-accent);cursor:pointer;border-radius:6px;padding:10px 16px}.sidebar-shell .workspace-tool :is(.bridge-panel,.inventory-panel,.event-log-panel){width:100%;height:auto;max-height:none;box-shadow:none;background:0 0;border:0;display:block;position:static;overflow:visible}.sidebar-shell .workspace-tool :is(.bridge-header,.inventory-header,.event-log-header){border:0;padding:0 0 22px}.sidebar-shell .workspace-tool :is(.bridge-header,.inventory-header,.event-log-header)>button{display:none}.sidebar-shell .workspace-tool h2{color:var(--ui-text);letter-spacing:-.4px;margin:0 0 8px;font-size:22px;font-weight:550}.sidebar-shell .workspace-tool :is(.bridge-header,.inventory-header,.event-log-header) p{color:var(--ui-muted);font:13px/1.6 Avenir Next,sans-serif}.sidebar-shell .workspace-tool :is(button,select){border-radius:5px;font-family:inherit;font-size:13px}.sidebar-shell .workspace-tool button{background:var(--ui-surface);color:var(--ui-accent);border-color:var(--ui-line);cursor:pointer}.sidebar-shell .workspace-tool button:hover:not(:disabled){background:var(--ui-selection)}.sidebar-shell .workspace-tool button:disabled{opacity:.45;cursor:not-allowed}.sidebar-shell .workspace-tool select{color:var(--ui-text);background:var(--ui-surface);border-color:var(--ui-line);min-height:36px}.sidebar-shell .bridge-safety{border:1px solid var(--ui-line);background:var(--ui-selection);color:var(--ui-accent);border-radius:6px;padding:14px 16px}.sidebar-shell .bridge-safety strong{font:600 13px/1.5 Avenir Next,sans-serif}.sidebar-shell .bridge-safety span{color:var(--ui-muted);font:12px/1.6 Avenir Next,sans-serif}.sidebar-shell .bridge-safety i{box-shadow:none}.sidebar-shell .bridge-safety i.online{background:var(--ui-accent)}.runner-help{border-bottom:1px solid var(--ui-line);padding:22px 0}.runner-help h3{margin:0 0 8px;font-size:16px;font-weight:550}.runner-help p{color:var(--ui-muted);margin:8px 0;font-size:13px;line-height:1.6}.runner-help code{color:#45573b;background:#e7e9e1;border-radius:4px;padding:10px 14px;font-size:13px;display:inline-block}.sidebar-shell .bridge-run,.sidebar-shell .inventory-metrics{background:0 0;border:0;gap:20px;margin:24px 0}.sidebar-shell :is(.bridge-run,.inventory-metrics)>div{border:0;padding:0 16px 0 0}.sidebar-shell :is(.bridge-run,.inventory-metrics) span{color:var(--ui-muted);letter-spacing:0;font:12px/1.5 Avenir Next,sans-serif}.sidebar-shell :is(.bridge-run,.inventory-metrics) strong{color:var(--ui-text);font:600 18px/1.6 Avenir Next,sans-serif}.sidebar-shell :is(.bridge-run,.inventory-metrics) small{color:var(--ui-muted);overflow-wrap:anywhere;font:12px/1.5 Avenir Next,sans-serif}.sidebar-shell .bridge-controls{border-top:1px solid var(--ui-line);border-bottom:1px solid var(--ui-line);flex-wrap:wrap;gap:10px;padding:18px 0}.sidebar-shell .bridge-controls :is(span,label>span){color:var(--ui-muted);letter-spacing:0;font:11px/1.5 Avenir Next,sans-serif}.sidebar-shell .bridge-controls button{min-height:36px;padding:8px 12px}.sidebar-shell .bridge-controls button.danger{color:var(--ui-danger);border-color:#dfc5bc}.sidebar-shell .bridge-body{grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:24px;margin-top:24px;display:grid;overflow:visible}.sidebar-shell :is(.bridge-devices,.bridge-events){border:0;overflow:visible}.sidebar-shell .bridge-section-heading{color:var(--ui-muted);letter-spacing:0;background:0 0;padding:0 0 14px;font:12px/1.5 Avenir Next,sans-serif;position:static}.sidebar-shell .bridge-device{padding:12px 0}.sidebar-shell .bridge-device>header{padding:0 0 10px}.sidebar-shell .bridge-device>header strong{color:var(--ui-text);font:600 13px Avenir Next,sans-serif}.sidebar-shell .bridge-device>header span{color:var(--ui-muted);font-size:10px}.sidebar-shell .bridge-device dl{padding:0}.sidebar-shell .bridge-device dt{color:var(--ui-muted);font-size:11px}.sidebar-shell .bridge-device dd{color:var(--ui-text);font-size:12px}.device-awaiting{color:var(--ui-muted);margin:0 0 8px;font-size:12px}.sidebar-shell .bridge-empty{border:1px dashed var(--ui-line);min-height:180px;color:var(--ui-muted);border-radius:6px;margin-top:16px;font:13px/1.6 Avenir Next,sans-serif}.sidebar-shell .bridge-events>div:last-child{min-height:0;max-height:650px;overflow:auto}.sidebar-shell .bridge-events article{padding:14px 0}.sidebar-shell .bridge-events :is(time,span,small){color:var(--ui-muted);font-size:11px}.sidebar-shell .bridge-events strong{color:var(--ui-text);font-size:13px}.sidebar-shell :is(.bridge-error,.bridge-preflight.blocked,.bridge-approval){background:var(--ui-warning-bg);color:var(--ui-warning);border-color:#dac698;font-size:13px}.sidebar-shell .bridge-preflight.ready{background:var(--ui-selection);color:var(--ui-accent)}.sidebar-shell :is(.bridge-preflight,.bridge-approval) :is(span,strong,small,p,em){color:inherit;font-size:12px}.sidebar-shell :is(.bridge-approval-context,.bridge-approval-observation){background:0 0}.sidebar-shell .event-log-toolbar{background:0 0;flex-wrap:wrap;gap:12px;padding:16px 0}.sidebar-shell .event-log-toolbar span{color:var(--ui-muted);font-size:11px}.sidebar-shell .event-log-list{overflow:visible}.sidebar-shell .event-log-panel :is(article,footer,.event-log-summary,.event-row,.event-log-empty){border-color:var(--ui-line);background:0 0}.sidebar-shell .event-log-panel :is(strong,h3){color:var(--ui-text)}.sidebar-shell .event-log-panel :is(p,small,time,span,dt){color:var(--ui-muted);font-size:12px}.sidebar-shell .event-log-panel dd{color:var(--ui-text);font-size:12px}.sidebar-shell .inventory-content{grid-template-columns:minmax(0,1fr) 290px;gap:24px;overflow:visible}.sidebar-shell .inventory-panel :is(.plate-inventory-section,.inventory-sidebar,.inventory-well-detail,.inventory-risk-list,.reservoir-inventory){border-color:var(--ui-line);background:0 0}.sidebar-shell .inventory-panel :is(h3,strong){color:var(--ui-text)}.sidebar-shell .inventory-panel :is(p,small,span,dt){color:var(--ui-muted);font-size:12px}.sidebar-shell .inventory-panel dd{color:var(--ui-text);font-size:13px}.sidebar-shell .plate-inventory-grid{border-color:var(--ui-line);background:#e8ece2;border-radius:7px}.sidebar-shell .inventory-panel .plate-inventory-well{aspect-ratio:1;background:var(--ui-surface);border-radius:50%}.sidebar-shell .inventory-panel .plate-inventory-well.unassigned{opacity:1;color:#909889;background:#e2e5dc}.sidebar-shell .plate-inventory-well.selected{outline:2px solid var(--ui-accent);outline-offset:1px;box-shadow:none}.sidebar-shell .plate-inventory-well.active{border-color:var(--ui-purple);animation:none}.sidebar-shell .selected-well-card{background:var(--ui-surface);border-radius:6px}.sidebar-shell .inventory-panel :is(.inventory-section-heading,.inventory-legend,.reservoir-row){letter-spacing:0}.sidebar-shell .inventory-panel .critical :is(strong,span),.sidebar-shell .inventory-panel .risk-critical{color:var(--ui-danger)}.sidebar-shell .inventory-panel .warning :is(strong,span){color:var(--ui-warning)}.sidebar-shell .asset-library{color:var(--ui-text);grid-template-columns:260px minmax(0,1fr);gap:26px;padding:24px}.sidebar-shell .asset-catalogue{background:0 0;border:0;padding:0}.sidebar-shell .catalogue-heading h2{color:var(--ui-muted);justify-content:space-between;margin:0 0 16px;font-size:14px;font-weight:550;display:flex}.sidebar-shell .catalogue-heading span{font-size:12px}.sidebar-shell .asset-card{border:0;border-radius:5px;grid-template-columns:20px minmax(0,1fr) 12px;min-height:64px;padding:12px 8px}.sidebar-shell .asset-card-symbol,.sidebar-shell .asset-card:before{display:none}.sidebar-shell .asset-card.active,.sidebar-shell .asset-card:hover{background:var(--ui-selection)}.sidebar-shell .asset-card-copy strong{color:var(--ui-text);white-space:normal;font-size:12px}.sidebar-shell .asset-card-copy small,.sidebar-shell .asset-card-index{color:var(--ui-muted);font:11px/1.6 Avenir Next,sans-serif}.sidebar-shell .asset-viewer{background:0 0;grid-template-rows:auto minmax(260px,1fr) auto auto;gap:18px;display:grid;overflow:auto}.sidebar-shell .asset-viewer:after,.sidebar-shell .asset-hint{display:none}.sidebar-shell .asset-render{background:#0b151c;border-radius:8px;grid-row:2;min-height:260px;position:relative;overflow:hidden}.sidebar-shell .asset-render canvas{position:static}.sidebar-shell .asset-title-block{grid-row:1;padding:0;position:static}.sidebar-shell .asset-title-block h2{color:var(--ui-text);max-width:none;margin:0 0 6px;font-size:23px}.sidebar-shell .asset-title-block p{color:var(--ui-muted);font:12px/1.5 Avenir Next,sans-serif}.sidebar-shell .asset-facts{background:0 0;border:0;grid-row:3;grid-template-columns:1fr 1fr;width:auto;display:grid;position:static}.sidebar-shell .asset-facts>div{border:0;padding:0 14px 12px 0}.sidebar-shell .asset-facts .asset-description{grid-column:1/-1;display:block}.sidebar-shell .asset-facts span{color:var(--ui-muted);margin-bottom:6px;font-size:11px;display:block}.sidebar-shell .asset-facts strong{color:var(--ui-text);font:13px/1.6 Avenir Next,sans-serif}.sidebar-shell .asset-facts .asset-description strong{color:var(--ui-muted);font:13px/1.6 Avenir Next,sans-serif}.sidebar-shell .asset-facts span{letter-spacing:0;font-family:inherit}.sidebar-shell .asset-view-controls{flex-wrap:wrap;grid-row:4;padding-bottom:8px;position:static}.sidebar-shell .asset-view-controls button{color:var(--ui-muted);background:var(--ui-surface);border-color:var(--ui-line);border-radius:5px}.sidebar-shell .asset-view-controls button.active{background:var(--ui-selection);color:var(--ui-accent)}.sidebar-shell :is(.setup-explorer,.cnc-training,.setup-cnc){background:var(--ui-page);color:var(--ui-text)}.sidebar-shell .setup-explorer{padding:22px 28px 40px}.sidebar-shell .setup-intro>div:first-child{display:none}.sidebar-shell .setup-intro{justify-content:flex-end}.sidebar-shell .setup-files-menu{margin-top:0}.sidebar-shell .visual-setup .guide-journey{margin-top:4px}.sidebar-shell .system-profile{border-radius:6px;padding:10px 16px}.sidebar-shell .system-profile p{margin:4px 0}.sidebar-shell .system-profile summary{padding:6px 0}.sidebar-shell .assembly-view-note{color:#b2bfb9}.sidebar-shell .assembly-feedback{color:var(--ui-text);background:var(--ui-surface)}.sidebar-shell .assembly-feedback.is-complete{color:var(--ui-accent);background:var(--ui-selection)}.sidebar-shell .visual-setup :is(.connection-view-tools button,.connection-path-label,.connection-generic,button.guide-pin){background:var(--ui-surface);color:var(--ui-text)}.sidebar-shell .connection-view-tools>span{color:#b2bfb9}.sidebar-shell :is(.connection-port-tag,.guide-link-label){background:var(--ui-selection);color:var(--ui-accent);box-shadow:none}.sidebar-shell .connection-port-tag.to{background:var(--ui-warning-bg);color:var(--ui-warning)}.sidebar-shell .guide-link-label.software{background:var(--ui-purple-bg);color:var(--ui-purple)}.sidebar-shell .connection-warning{background:var(--ui-warning-bg)}.sidebar-shell .cnc-eyebrow{color:var(--ui-muted);letter-spacing:.03em;font-weight:500}.sidebar-shell .guide-canvas,.sidebar-shell .cnc-scene,.sidebar-shell .software-device-canvas,.sidebar-shell .connection-canvas{background:#0b151c;border-radius:6px}.sidebar-shell .setup-explorer :is(.guide-toolbar,.guide-canvas-caption,.guide-part-strip){background:var(--ui-surface)}.sidebar-shell .visual-guide{border-color:var(--ui-line)}.sidebar-shell :is(.guide-stage,.connection-visual){background:var(--ui-surface)}.sidebar-shell .visual-setup .guide-journey button{border:0;border-bottom:2px solid var(--ui-line);border-radius:0;flex-basis:105px}.sidebar-shell .visual-setup .guide-journey button[aria-current=step]{border-bottom-color:var(--ui-accent)}.sidebar-shell .guide-inspector{padding:20px}.sidebar-shell .visual-setup .guide-inspector p{font-size:14px}.sidebar-shell .cnc-error{color:var(--ui-danger)!important}.sidebar-shell .protocol-modal-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#24302266}.sidebar-shell .protocol-modal{background:var(--ui-surface);color:var(--ui-text);border-color:var(--ui-line);border-radius:10px;box-shadow:0 16px 60px #25302126}.sidebar-shell .protocol-modal :is(h2,h3,strong){color:var(--ui-text)}.sidebar-shell .protocol-modal :is(p,small,span,label){color:var(--ui-muted);font-size:13px}.sidebar-shell .protocol-modal .eyebrow{display:none}.sidebar-shell .protocol-modal :is(button,.protocol-dropzone,.protocol-example,.protocol-status,.protocol-summary,.protocol-help,.protocol-warnings){background:var(--ui-page);color:var(--ui-text);border-color:var(--ui-line)}.sidebar-shell .protocol-modal button{border-radius:5px}.sidebar-shell .protocol-modal .protocol-dropzone{border-style:dashed}.sidebar-shell .protocol-modal .protocol-error{color:var(--ui-danger);background:var(--ui-danger-bg)}.sidebar-shell .protocol-buffer-preview>div:not(.protocol-result-heading){border-color:var(--ui-line);color:var(--ui-muted);font-size:12px}.sidebar-shell .protocol-buffer-preview strong{font-size:12px}@media (width<=1100px){.sidebar-shell .asset-library{grid-template-columns:220px minmax(0,1fr);gap:18px}.sidebar-shell .bridge-body,.sidebar-shell .inventory-content{grid-template-columns:minmax(0,1fr)}.sidebar-shell .bridge-devices{grid-template-columns:1fr 1fr;gap:14px;display:grid}.sidebar-shell .bridge-devices .bridge-section-heading{grid-column:1/-1}}@media (width<=760px){.section-tabs{gap:16px;padding:0 14px}.workspace-tool{padding:20px 14px}.sidebar-shell .asset-library{flex-direction:column;padding:14px;display:flex;overflow:auto}.sidebar-shell .asset-catalogue{flex-shrink:0;min-height:180px;max-height:230px}.sidebar-shell .asset-card-list{display:block}.sidebar-shell .asset-viewer{flex-shrink:0;overflow:visible}.sidebar-shell .asset-render{height:320px}.sidebar-shell .setup-explorer{padding:18px 14px}.sidebar-shell .bridge-devices{grid-template-columns:minmax(0,1fr)}}:root{--ink:#ecf6fa;--muted:#7f96a5;--line:#8fbcd229;--panel:#0a1822f0;--accent:#78f4d3;--font-geist-sans:"Avenir Next", "Segoe UI", Arial, sans-serif;--font-geist-mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace}*{box-sizing:border-box}html,body{min-height:100%;color:var(--ink);background:#071019;margin:0}body{font-family:var(--font-geist-sans), "PingFang SC", "Microsoft YaHei", sans-serif;overflow:hidden}button,a{font:inherit}button{color:inherit}.app-shell{background:radial-gradient(circle at 26% 32%,#1869881c,#0000 34%),#071019;grid-template-rows:60px minmax(0,1fr) 160px;height:100dvh;min-height:720px;display:grid}.topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:20;background:#061018f0;justify-content:space-between;align-items:center;padding:0 24px;display:flex}.brand,.header-meta,.live-readings>div,.run-control,.budget-summary,.paper-link{align-items:center;display:flex}.brand{flex:none}.brand-name{letter-spacing:.03em;font-size:15px;font-weight:700}.brand-name span{color:#8ba0ad;font-weight:480}.header-meta{gap:18px}.view-switch{border:1px solid var(--line);background:#0c1b25b3;align-items:center;padding:3px;display:flex}.view-switch button{color:#617987;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;height:28px;padding:0 11px;font-size:10px;display:flex}.view-switch button:hover{color:#bacbd3}.view-switch button.active{color:#dcebef;background:#78f4d31a;box-shadow:inset 0 0 0 1px #78f4d32e}.view-switch button.active svg{color:var(--accent)}.protocol-import-button{color:#8ba3ae;cursor:pointer;background:#78f4d30d;border:1px solid #78f4d333;align-items:center;gap:7px;max-width:210px;height:36px;padding:0 10px;font-size:10px;display:flex}.protocol-import-button:hover{color:#d8e9ed;border-color:#78f4d36b}.protocol-import-button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.protocol-import-button svg:first-child{color:var(--accent);flex:none}.protocol-import-button svg:last-child{color:#77dda4;flex:none}.event-log-button{border:1px solid var(--ui-line);height:36px;color:var(--ui-muted);background:var(--ui-purple-bg);cursor:pointer;align-items:center;gap:7px;padding:0 9px;font-size:11px;display:flex}.event-log-button:hover{color:var(--ui-text);border-color:var(--ui-line)}.event-log-button:disabled{opacity:.38;cursor:default}.event-log-button svg{color:var(--ui-purple)}.event-log-button strong{min-width:28px;color:var(--ui-purple);background:var(--ui-purple-bg);font:560 11px var(--font-geist-mono);text-align:center;padding:3px 5px}.bridge-button{border:1px solid var(--ui-line);height:36px;color:var(--ui-muted);background:var(--ui-surface);cursor:pointer;align-items:center;gap:7px;padding:0 9px;font-size:11px;display:flex}.bridge-button:hover{color:var(--ui-text);border-color:var(--ui-line)}.bridge-button svg{color:var(--ui-muted)}.bridge-button strong{color:var(--ui-muted);background:var(--ui-surface);font:600 11px var(--font-geist-mono);padding:3px 5px}.bridge-button.online{border-color:var(--ui-line)}.bridge-button.online svg,.bridge-button.online strong{color:var(--ui-accent)}.bridge-button.offline svg,.bridge-button.offline strong,.bridge-button.error svg,.bridge-button.error strong{color:var(--ui-danger)}.inventory-button{border:1px solid var(--ui-line);height:36px;color:var(--ui-muted);background:var(--ui-selection);cursor:pointer;align-items:center;gap:7px;padding:0 9px;font-size:11px;display:flex}.inventory-button:hover{color:var(--ui-text);border-color:var(--ui-line)}.inventory-button:disabled{opacity:.38;cursor:default}.inventory-button svg{color:var(--accent)}.inventory-button strong{min-width:48px;color:var(--ui-accent);background:var(--ui-selection);font:560 11px var(--font-geist-mono);text-align:center;padding:3px 5px}.inventory-button.has-critical{border-color:var(--ui-line);background:var(--ui-danger-bg)}.inventory-button.has-critical svg,.inventory-button.has-critical strong{color:var(--ui-danger)}.workspace{grid-template-columns:minmax(0,1fr) 330px;min-height:0;display:grid}.workspace.inspector-closed{grid-template-columns:minmax(0,1fr)}.viewport{border-right:1px solid var(--line);min-width:0;position:relative;overflow:hidden}.viewport canvas{touch-action:none;display:block}.viewport:before{content:"";pointer-events:none;z-index:2;background:linear-gradient(90deg,#071019bf,#0000 18%),linear-gradient(#0000 76%,#0710198c);position:absolute;inset:0}.viewport-heading{z-index:3;pointer-events:none;transition:opacity .2s,transform .2s,visibility .2s;position:absolute;top:28px;left:28px}.eyebrow{color:var(--accent);font:600 9px var(--font-geist-mono);letter-spacing:.19em}.viewport-heading h1{letter-spacing:-.04em;margin:0 0 7px;font-size:clamp(22px,2.1vw,34px);font-weight:560}.viewport-heading p{color:#657d8b;margin:0;font-size:11px}.viewport-tools{z-index:4;gap:7px;display:flex;position:absolute;top:18px;right:18px}.robot-telemetry{z-index:4;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#091721db;border:1px solid #b9a7ff38;width:224px;padding:11px 12px 9px;position:absolute;top:62px;right:18px}.robot-telemetry-heading{grid-template-columns:20px 1fr;align-items:center;gap:3px 7px;display:grid}.robot-telemetry-heading svg{color:#b9a7ff;grid-row:1/3}.robot-telemetry-heading span,.robot-telemetry>small{color:#5e7481;font:540 7px var(--font-geist-mono);letter-spacing:.1em}.robot-telemetry-heading strong{color:#d3caff;font:580 10px var(--font-geist-mono)}.robot-coordinate-grid{border:1px solid #8fbcd21f;grid-template-columns:repeat(3,1fr);margin:9px 0 7px;display:grid}.robot-coordinate-grid>div{border-right:1px solid #8fbcd21a;grid-template-columns:auto 1fr;align-items:baseline;gap:2px 5px;padding:6px 7px;display:grid}.robot-coordinate-grid>div:last-child{border-right:0}.robot-coordinate-grid span,.robot-coordinate-grid small{color:#506c79;font:520 7px var(--font-geist-mono)}.robot-coordinate-grid strong{color:#b7cbd3;font:560 10px var(--font-geist-mono)}.robot-coordinate-grid small{text-align:right;grid-column:1/-1}.robot-inventory-link{color:#637e89;text-align:left;cursor:pointer;background:#78f4d309;border:1px solid #78f4d324;grid-template-columns:1fr auto auto;align-items:center;gap:7px;width:100%;min-height:25px;margin-top:7px;padding:5px 7px;display:grid}.robot-inventory-link:hover{border-color:#78f4d359}.robot-inventory-link span,.robot-inventory-link small{font:540 7px var(--font-geist-mono)}.robot-inventory-link strong{color:#a9c9c4;font:580 9px var(--font-geist-mono)}.robot-inventory-link small{color:var(--accent)}.app-shell.run-focus .view-switch,.app-shell.run-focus .protocol-import-button,.app-shell.run-focus .event-log-button span,.app-shell.run-focus .inventory-button span{display:none}.app-shell.run-focus .header-meta{gap:10px}.app-shell.run-focus .viewport-heading{visibility:hidden;opacity:0;transform:translateY(-8px)}.app-shell.run-focus .robot-telemetry{grid-template-columns:112px minmax(0,1fr);align-items:center;gap:10px;width:360px;padding:7px 9px;display:grid;top:18px;right:104px}.app-shell.run-focus .robot-coordinate-grid{margin:0}.app-shell.run-focus .robot-telemetry>small,.app-shell.run-focus .robot-inventory-link{display:none}.tool-button,.close-inspector{border:1px solid var(--line);cursor:pointer;background:#0b1b26cc;place-items:center;width:36px;height:36px;display:grid}.tool-button:hover,.close-inspector:hover{color:var(--accent);border-color:#78f4d37a}.legend{z-index:3;color:#667f8d;pointer-events:none;gap:18px;font-size:10px;display:flex;position:absolute;bottom:74px;left:28px}.legend>div{align-items:center;gap:7px;display:flex}.legend-line{background:#344b5e;width:22px;height:2px}.legend-line.active{background:var(--accent);box-shadow:0 0 8px #78f4d3a6}.legend-dot{border:1px solid #7fc8ff;border-radius:50%;width:7px;height:7px}.fluid-monitor{z-index:3;border:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#07131bdb;grid-template-columns:170px minmax(0,1fr);min-height:66px;display:grid;position:absolute;bottom:72px;left:28px;right:28px}.fluid-monitor-heading{border-right:1px solid var(--line);grid-template-columns:20px 1fr;align-content:center;gap:5px 7px;min-width:0;padding:10px 12px;display:grid}.fluid-monitor-heading svg{color:var(--accent);grid-row:1/3;align-self:center}.fluid-monitor-heading span{color:#55717e;font:560 8px var(--font-geist-mono);letter-spacing:.12em}.fluid-monitor-heading strong{font:570 10px var(--font-geist-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fluid-monitor-heading small{color:#526d79;font:500 7px var(--font-geist-mono);text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;overflow:hidden}.fluid-segments{grid-template-columns:repeat(5,minmax(82px,1fr));min-width:0;display:grid}.fluid-segment{border-right:1px solid #8fbcd21a;flex-direction:column;justify-content:center;gap:5px;min-width:0;padding:8px 9px;display:flex}.fluid-segment:last-child{border-right:0}.fluid-segment>div:first-child{justify-content:space-between;gap:5px;display:flex}.fluid-segment>div:first-child span,.fluid-segment>div:first-child strong,.fluid-segment small{font:520 7px var(--font-geist-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fluid-segment>div:first-child span{color:#526f7c;letter-spacing:.05em}.fluid-segment>div:first-child strong{color:#90a7b1}.fluid-segment small{color:#8198a2}.composition-bar{background:#243946;height:4px;display:flex;overflow:hidden}.composition-bar span{height:100%;box-shadow:0 0 5px}.live-readings{z-index:3;border:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#08151ec7;height:42px;display:flex;position:absolute;bottom:18px;left:28px;right:28px}.live-readings>div{border-right:1px solid var(--line);gap:8px;min-width:150px;padding:0 15px}.live-readings svg{color:#6c8795}.live-readings span{color:#627a88;font-size:10px}.live-readings strong{color:#bdd0d8;font:560 11px var(--font-geist-mono);margin-left:auto}.inspector{background:linear-gradient(180deg, #11253199, transparent 38%), var(--panel);scrollbar-width:thin;scrollbar-color:#28404e transparent;min-height:0;padding:26px 24px 18px;position:relative;overflow-y:auto}.close-inspector{width:31px;height:31px;position:absolute;top:18px;right:18px}.inspector h2{letter-spacing:-.03em;max-width:calc(100% - 42px);margin:2px 0 0;font-size:24px;font-weight:570;position:relative}.part-en{color:#65808e;font:500 10px var(--font-geist-mono);letter-spacing:.05em;margin:4px 0 17px}.part-description{color:#9bb0ba;min-height:58px;margin:0;font-size:12px;line-height:1.68}.spec-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:1fr 1fr;gap:1px;margin:20px 0;display:grid}.spec-grid>div{background:#0b1a24;flex-direction:column;justify-content:center;gap:7px;min-height:70px;padding:10px 12px;display:flex}.spec-grid span,.component-list-title,.run-control span,.budget-summary span{color:#5e7886;letter-spacing:.08em;font-size:9px}.spec-grid strong{color:#c2d3da;font:520 10px var(--font-geist-mono);line-height:1.45}.component-list{margin-top:4px}.component-list-title{justify-content:space-between;padding:0 2px 9px;display:flex}.component-list button{color:#78909e;text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #8fbcd21a;grid-template-columns:24px 8px 1fr 14px;align-items:center;gap:8px;width:100%;min-height:34px;padding:0 8px;font-size:10px;display:grid}.component-list button:last-child{border-bottom:1px solid #8fbcd21a}.component-list button:hover,.component-list button.active{color:#d8e6eb;background:#7cbcd612}.component-list button.active{box-shadow:inset 2px 0 0 var(--accent)}.mini-index{color:#425c6a;font:500 9px var(--font-geist-mono)}.mini-dot{border-radius:50%;width:5px;height:5px}.component-list svg{opacity:.4}.paper-link{border:1px solid var(--line);color:#91a9b5;justify-content:center;gap:8px;height:38px;margin-top:16px;font-size:10px;text-decoration:none}.paper-link svg:last-child{opacity:.5;margin-left:auto;margin-right:11px}.paper-link svg:first-child{color:var(--accent);margin-left:11px}.paper-link:hover{color:#d9e8ed;border-color:#78f4d361}.protocol-panel{z-index:15;border-top:1px solid var(--line);background:#08131c;grid-template-columns:250px minmax(680px,1fr) 220px;align-items:stretch;display:grid;position:relative}.protocol-panel.has-protocol{grid-template-columns:250px minmax(680px,1fr)}.protocol-step-track{scrollbar-width:thin;scrollbar-color:#284653 transparent;min-width:0;overflow:auto hidden}.protocol-step-track .stage{min-width:126px}.protocol-step-track .stage-copy small{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.conditional-tag{color:#b9a7ff;max-width:calc(100% - 10px);font:520 7px var(--font-geist-mono);letter-spacing:.08em;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:5px;display:flex;position:absolute;bottom:5px;left:0;overflow:hidden}.conditional-tag:before{content:"";background:currentColor;border-radius:50%;flex:none;width:4px;height:4px;box-shadow:0 0 6px}.run-control{border-right:1px solid var(--line);grid-template-columns:46px minmax(76px,1fr) auto;gap:14px;padding:0 18px;display:grid}.play-button{width:46px;height:46px;color:var(--accent);cursor:pointer;background:#78f4d314;border:1px solid #78f4d375;place-items:center;display:grid}.play-button:hover{background:#78f4d324}.run-control>div:not(.timer){flex-direction:column;gap:5px;min-width:0;display:flex}.run-control strong{white-space:nowrap;font-size:12px}.step-progress{color:#526f7c;max-width:104px;font:500 8px var(--font-geist-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.run-control span{white-space:nowrap}.timer{flex-direction:column;align-items:flex-end;gap:5px;margin-left:0;display:flex}.timer strong{font:560 13px var(--font-geist-mono)}.simulation-tools{justify-content:flex-end;gap:4px;display:flex}.simulation-tools button{border:1px solid var(--line);color:#68818d;min-width:26px;height:20px;font:550 7px var(--font-geist-mono);cursor:pointer;background:#0e222ccc;justify-content:center;align-items:center;gap:3px;padding:0 5px;display:flex}.simulation-tools button:hover{color:var(--accent);border-color:#78f4d361}.stage-track{grid-template-columns:repeat(5,1fr);padding:24px 18px 14px;display:grid;position:relative}.stage{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-rows:28px auto;grid-template-columns:28px 1fr;column-gap:10px;display:grid;position:relative}.stage:before{content:"";z-index:0;background:#243946;height:1px;transition:background .25s,box-shadow .25s;position:absolute;top:12px;left:12px;right:-12px}.stage.completed:before{background:var(--step-color,var(--accent));box-shadow:0 0 7px var(--step-color,var(--accent))}@supports (color:color-mix(in lab, red, red)){.stage.completed:before{box-shadow:0 0 7px color-mix(in srgb, var(--step-color,var(--accent)) 70%, transparent)}}.stage:last-child:before{display:none}.stage-node{z-index:2;color:#607b89;width:25px;height:25px;font:500 8px var(--font-geist-mono);background:#0b1b25;border:1px solid #314b59;border-radius:50%;place-items:center;transition:all .25s;display:grid}.stage:hover .stage-node{color:#d7e3e8;border-color:#6d8997}.stage.active .stage-node{color:#071019;box-shadow:0 0 0 5px #78f4d314,0 0 16px}.stage-copy{flex-direction:column;grid-column:1/-1;gap:5px;margin-top:11px;display:flex}.stage-copy strong{color:#9aafb9;font-size:11px;font-weight:550}.stage.active .stage-copy strong{color:#e4f0f4}.stage-copy small{color:#4f6977;max-width:125px;font-size:9px;line-height:1.45}.stage-time{color:#4f6977;font:500 8px var(--font-geist-mono);position:absolute;top:5px;left:34px}.budget-summary{border:1px solid var(--line);background:#11232e8c;align-self:center;gap:11px;height:76px;margin-right:20px;padding:0 14px;position:relative}.budget-summary>svg:first-child{color:var(--accent)}.budget-summary>div{flex-direction:column;gap:5px;display:flex}.budget-summary strong{font:600 13px var(--font-geist-mono)}.budget-note{white-space:nowrap;position:absolute;bottom:-20px;left:14px}.budget-summary>svg:last-child{color:#ffcf70;margin-left:auto}.protocol-modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#02080cc7;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.event-log-backdrop{z-index:110;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#02080c9e;justify-content:flex-end;display:flex;position:fixed;inset:0}.event-log-panel{border-left:1px solid var(--ui-line);background:radial-gradient(circle at 0% 0%, var(--ui-purple-bg), transparent 27%), var(--ui-surface);width:min(620px,94vw);height:100%;min-height:0;box-shadow:-30px 0 80px var(--ui-line);grid-template-rows:auto auto auto minmax(0,1fr) auto;display:grid}.event-log-header{border-bottom:1px solid var(--line);justify-content:space-between;gap:22px;padding:22px 24px 19px;display:flex}.event-log-header h2{color:var(--ui-text);letter-spacing:-.035em;margin:7px 0 4px;font-size:23px;font-weight:560}.event-log-header p{color:var(--ui-muted);font:500 11px var(--font-geist-mono);margin:0}.event-log-header>button{border:1px solid var(--line);width:34px;height:34px;color:var(--ui-muted);background:var(--ui-surface);cursor:pointer;flex:none;place-items:center;display:grid}.event-log-header>button:hover{color:var(--ui-text);border-color:var(--ui-line)}.event-log-toolbar{border-bottom:1px solid var(--line);grid-template-columns:minmax(115px,1fr) minmax(105px,.8fr) auto auto;align-items:end;gap:8px;padding:12px 16px;display:grid}.event-log-toolbar label{flex-direction:column;gap:5px;min-width:0;display:flex}.event-log-toolbar label>span{color:var(--ui-muted);font:560 11px var(--font-geist-mono);letter-spacing:.12em}.event-log-toolbar select{border:1px solid var(--line);width:100%;height:31px;color:var(--ui-muted);background:var(--ui-surface);font:500 11px var(--font-geist-mono);border-radius:0;padding:0 8px}.event-action-button{border:1px solid var(--ui-line);height:31px;color:var(--ui-purple);background:var(--ui-purple-bg);font:540 11px var(--font-geist-mono);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:0 10px;display:flex}.event-action-button:hover{color:var(--ui-purple);border-color:var(--ui-line)}.event-action-button:disabled{opacity:.35;cursor:default}.event-log-columns{border-bottom:1px solid var(--ui-line);color:var(--ui-muted);font:560 11px var(--font-geist-mono);letter-spacing:.12em;grid-template-columns:76px minmax(0,1fr) 122px;gap:10px;padding:8px 15px;display:grid}.event-log-list{scrollbar-width:thin;scrollbar-color:var(--ui-line) transparent;min-height:0;overflow-y:auto}.event-log-row{border:0;border-bottom:1px solid var(--ui-line);width:100%;min-height:74px;color:var(--ui-muted);text-align:left;cursor:pointer;background:0 0;grid-template-columns:76px minmax(0,1fr) 122px;gap:10px;padding:10px 15px;display:grid;position:relative}.event-log-row:hover,.event-log-row.active{background:var(--ui-purple-bg)}.event-log-row.active{box-shadow:inset 2px 0 0 var(--ui-line)}.event-log-row.warning,.event-log-row.critical{background:var(--ui-danger-bg)}.event-log-row.warning.active,.event-log-row.critical.active{box-shadow:inset 2px 0 0 var(--ui-line)}.event-time{color:var(--ui-muted);font:520 11px var(--font-geist-mono);padding-top:2px}.event-main,.event-provenance{flex-direction:column;min-width:0;display:flex}.event-main{gap:4px}.event-main>span{color:var(--ui-muted);font:560 11px var(--font-geist-mono);letter-spacing:.07em;align-items:center;gap:6px;display:flex}.event-main i{background:var(--ui-selection);width:5px;height:5px;box-shadow:0 0 7px var(--ui-line);border-radius:50%}.event-log-row.warning .event-main i,.event-log-row.critical .event-main i{background:var(--ui-danger-bg);box-shadow:0 0 7px var(--ui-line)}.event-main strong{color:var(--ui-text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:560;overflow:hidden}.event-main small{color:var(--ui-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.45;overflow:hidden}.event-provenance{border-left:1px solid var(--ui-line);gap:3px;padding-left:10px}.event-provenance strong,.event-provenance span,.event-provenance small{font:500 11px var(--font-geist-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.event-provenance strong{color:var(--ui-purple);font-weight:620}.event-provenance span,.event-provenance small{color:var(--ui-muted)}.event-log-empty{height:100%;min-height:240px;color:var(--ui-muted);flex-direction:column;justify-content:center;align-items:center;gap:7px;display:flex}.event-log-empty strong{color:var(--ui-muted);font-size:11px}.event-log-empty span{font-size:11px}.event-log-footer{border-top:1px solid var(--line);color:var(--ui-muted);font:500 11px var(--font-geist-mono);justify-content:space-between;gap:18px;padding:11px 16px;display:flex}.event-log-footer strong{color:var(--ui-purple);letter-spacing:.08em}.bridge-backdrop{z-index:118;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#02080ca6;justify-content:flex-end;display:flex;position:fixed;inset:0}.bridge-panel{border-left:1px solid var(--ui-line);background:radial-gradient(circle at 0% 0%, var(--ui-selection), transparent 29%), var(--ui-surface);width:min(690px,96vw);height:100%;min-height:0;box-shadow:-30px 0 80px var(--ui-line);flex-direction:column;display:flex}.bridge-header{border-bottom:1px solid var(--line);justify-content:space-between;gap:22px;padding:21px 23px 18px;display:flex}.bridge-header h2{color:var(--ui-text);letter-spacing:-.035em;margin:7px 0 4px;font-size:23px;font-weight:560}.bridge-header p{color:var(--ui-muted);font:500 11px var(--font-geist-mono);margin:0}.bridge-header>button{border:1px solid var(--line);width:34px;height:34px;color:var(--ui-muted);background:var(--ui-surface);cursor:pointer;flex:none;place-items:center;display:grid}.bridge-safety{border-bottom:1px solid var(--ui-line);color:var(--ui-accent);background:var(--ui-selection);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 16px;display:grid}.bridge-safety>div{flex-direction:column;gap:3px;min-width:0;display:flex}.bridge-safety strong,.bridge-safety span{font:560 11px var(--font-geist-mono)}.bridge-safety span{color:var(--ui-muted);font-weight:480}.bridge-safety>i{background:var(--ui-surface);border-radius:50%;width:8px;height:8px}.bridge-safety>i.online{background:var(--ui-selection);box-shadow:0 0 11px var(--ui-line)}.bridge-safety>i.offline,.bridge-safety>i.error{background:var(--ui-danger-bg)}.bridge-run{border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.bridge-run>div{border-right:1px solid var(--line);flex-direction:column;gap:5px;min-width:0;padding:12px 14px;display:flex}.bridge-run>div:last-child{border-right:0}.bridge-run span,.bridge-run small{color:var(--ui-muted);font:540 11px var(--font-geist-mono);letter-spacing:.09em}.bridge-run strong{color:var(--ui-text);font:610 11px var(--font-geist-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bridge-run small{letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bridge-controls{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:7px;padding:10px 14px;display:flex}.bridge-controls label{flex-direction:column;gap:4px;min-width:128px;display:flex}.bridge-controls label>span{color:var(--ui-muted);font:550 11px var(--font-geist-mono);letter-spacing:.09em}.bridge-controls select{border:1px solid var(--ui-line);height:31px;color:var(--ui-accent);background:var(--ui-surface);font:520 11px var(--font-geist-mono);border-radius:0;padding:0 8px}.bridge-controls button{border:1px solid var(--ui-line);height:31px;color:var(--ui-accent);background:var(--ui-selection);font:550 11px var(--font-geist-mono);cursor:pointer;align-items:center;gap:6px;padding:0 10px;display:flex}.bridge-controls button.danger{border-color:var(--ui-line);color:var(--ui-danger);background:var(--ui-danger-bg)}.bridge-controls button:disabled{opacity:.33;cursor:default}.bridge-controls>span{color:var(--ui-muted);font:550 11px var(--font-geist-mono);letter-spacing:.1em;margin-left:auto}.bridge-preflight{border-bottom:1px solid var(--ui-line);color:var(--ui-accent);background:var(--ui-selection);padding:8px 14px}.bridge-preflight>div{grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:8px;display:grid}.bridge-preflight.blocked{color:var(--ui-danger);background:var(--ui-danger-bg)}.bridge-preflight strong,.bridge-preflight span{font:550 11px var(--font-geist-mono)}.bridge-preflight span{color:var(--ui-muted)}.bridge-preflight ul{border-top:1px solid;gap:5px;margin:8px 0 0;padding:8px 0 0;list-style:none;display:grid}.bridge-preflight li{grid-template-columns:minmax(120px,.55fr) minmax(0,1fr);gap:8px;display:grid}.bridge-preflight li.critical strong{color:var(--ui-danger)}.bridge-preflight li.warning strong{color:var(--ui-warning)}.bridge-approval-observation{color:var(--ui-warning);font:520 11px/1.5 var(--font-geist-mono);text-overflow:ellipsis;white-space:nowrap;margin:9px 0 0;overflow:hidden}.bridge-approval{border-bottom:1px solid var(--ui-line);color:var(--ui-danger);background:linear-gradient(90deg, var(--ui-danger-bg), transparent 65%), var(--ui-surface);padding:13px 14px}.bridge-approval>header{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;display:grid}.bridge-approval>header>div{flex-direction:column;gap:3px;min-width:0;display:flex}.bridge-approval>header span,.bridge-approval>header em{color:var(--ui-danger);font:570 11px var(--font-geist-mono);letter-spacing:.1em}.bridge-approval>header strong{color:var(--ui-warning);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:560;overflow:hidden}.bridge-approval>header em{border:1px solid var(--ui-line);padding:4px 6px;font-style:normal}.bridge-approval-context{border:1px solid var(--ui-line);background:var(--ui-surface);grid-template-columns:auto minmax(60px,.7fr) auto minmax(60px,.7fr) auto minmax(90px,1fr);align-items:center;gap:5px 8px;margin:10px 0;padding:8px 9px;display:grid}.bridge-approval-context span,.bridge-approval-context strong{font:540 11px var(--font-geist-mono);text-overflow:ellipsis;white-space:nowrap;color:var(--ui-warning);overflow:hidden}.bridge-approval-actions{gap:7px;display:flex}.bridge-approval-actions button{border:1px solid var(--ui-line);height:31px;color:var(--ui-warning);background:var(--ui-danger-bg);font:580 11px var(--font-geist-mono);text-transform:uppercase;cursor:pointer;align-items:center;gap:6px;padding:0 11px;display:flex}.bridge-approval-actions button.recommended{color:var(--ui-muted);background:var(--ui-danger-bg)}.bridge-approval-actions button.abort{border-color:var(--ui-line);color:var(--ui-danger);background:var(--ui-danger-bg);margin-left:auto}.bridge-approval-actions button:disabled{opacity:.38;cursor:default}.bridge-error{color:var(--ui-danger);background:var(--ui-danger-bg);font:520 11px var(--font-geist-mono);align-items:center;gap:8px;padding:8px 14px;display:flex}.bridge-body{flex:1;grid-template-columns:minmax(0,1.2fr) minmax(250px,.8fr);min-height:0;display:grid;overflow:hidden}.bridge-devices,.bridge-events{scrollbar-width:thin;scrollbar-color:var(--ui-line) transparent;min-width:0;min-height:0;overflow-y:auto}.bridge-devices{border-right:1px solid var(--line)}.bridge-section-heading{z-index:2;border-bottom:1px solid var(--line);color:var(--ui-muted);background:var(--ui-surface);font:560 11px var(--font-geist-mono);letter-spacing:.1em;align-items:center;gap:7px;padding:9px 12px;display:flex;position:sticky;top:0}.bridge-device{border-bottom:1px solid var(--ui-line)}.bridge-device>header{grid-template-columns:auto 1fr auto;align-items:center;gap:7px;padding:10px 12px 6px;display:grid}.bridge-device>header i{background:var(--ui-surface);border-radius:50%;width:5px;height:5px}.bridge-device.active>header i{background:var(--ui-selection);box-shadow:0 0 7px var(--ui-line)}.bridge-device>header strong{color:var(--ui-muted);font:600 11px var(--font-geist-mono)}.bridge-device>header span{color:var(--ui-muted);font:530 11px var(--font-geist-mono)}.bridge-device dl{margin:0;padding:0 12px 9px}.bridge-device dl>div{grid-template-columns:72px minmax(0,1fr);gap:7px;padding:4px 0;display:grid}.bridge-device dt,.bridge-device dd{font:500 11px var(--font-geist-mono);margin:0;line-height:1.45}.bridge-device dt{color:var(--ui-muted)}.bridge-device dd{overflow-wrap:anywhere;color:var(--ui-muted)}.bridge-events>div:last-child{min-height:100%}.bridge-events article{border-bottom:1px solid var(--ui-line);grid-template-columns:62px minmax(0,1fr);gap:3px 8px;padding:9px 11px;display:grid}.bridge-events time,.bridge-events span,.bridge-events small{color:var(--ui-muted);font:500 11px var(--font-geist-mono)}.bridge-events span{color:var(--ui-accent)}.bridge-events strong{color:var(--ui-text);grid-column:1/-1;font-size:11px;font-weight:550}.bridge-events small{grid-column:1/-1}.bridge-empty{min-height:180px;color:var(--ui-muted);text-align:center;font:500 11px var(--font-geist-mono);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:25px;display:flex}.inventory-backdrop{z-index:115;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#02080cb8;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.inventory-panel{border:1px solid var(--ui-line);background:radial-gradient(circle at 0% 0%, var(--ui-selection), transparent 30%), var(--ui-surface);width:min(1180px,96vw);max-height:min(820px,94vh);box-shadow:0 32px 95px var(--ui-line);grid-template-rows:auto auto minmax(0,1fr);display:grid;overflow:hidden}.inventory-header{border-bottom:1px solid var(--line);justify-content:space-between;gap:24px;padding:20px 23px 17px;display:flex}.inventory-header h2{color:var(--ui-text);letter-spacing:-.035em;margin:7px 0 4px;font-size:24px;font-weight:560}.inventory-header p{color:var(--ui-muted);font:500 11px var(--font-geist-mono);margin:0}.inventory-header>button{border:1px solid var(--line);width:34px;height:34px;color:var(--ui-muted);background:var(--ui-surface);cursor:pointer;flex:none;place-items:center;display:grid}.inventory-header>button:hover{color:var(--ui-text);border-color:var(--ui-line)}.inventory-metrics{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.inventory-metrics>div{border-right:1px solid var(--line);grid-template-columns:1fr auto;align-content:center;gap:5px 10px;min-height:72px;padding:11px 16px;display:grid}.inventory-metrics>div:last-child{border-right:0}.inventory-metrics span,.inventory-metrics small{color:var(--ui-muted);font:540 11px var(--font-geist-mono);letter-spacing:.08em}.inventory-metrics strong{color:var(--ui-text);font:600 18px var(--font-geist-mono);grid-area:1/2/3;align-self:center}.inventory-metrics small{letter-spacing:0}.inventory-metrics .critical strong,.inventory-metrics .warning strong{color:var(--ui-danger)}.inventory-content{grid-template-columns:minmax(620px,1.65fr) minmax(300px,.75fr);min-height:0;display:grid;overflow:hidden}.plate-inventory-section{border-right:1px solid var(--line);scrollbar-width:thin;scrollbar-color:var(--ui-line) transparent;min-width:0;min-height:0;padding:17px 19px 20px;overflow:auto}.inventory-section-heading{justify-content:space-between;align-items:center;gap:12px;min-height:24px;margin-bottom:10px;display:flex}.inventory-section-heading>div{align-items:center;gap:7px;display:flex}.inventory-section-heading svg{color:var(--accent)}.inventory-section-heading span,.inventory-section-heading strong{color:var(--ui-muted);font:560 11px var(--font-geist-mono);letter-spacing:.11em}.inventory-section-heading strong{color:var(--ui-muted)}.inventory-section-heading select{border:1px solid var(--line);height:26px;color:var(--ui-muted);background:var(--ui-surface);font:520 11px var(--font-geist-mono);border-radius:0;padding:0 7px}.plate-inventory-grid{border:1px solid var(--ui-line);background:linear-gradient(135deg, var(--ui-surface), transparent 45%), var(--ui-surface);gap:5px;min-width:590px;padding:10px;display:grid}.plate-axis-label{color:var(--ui-muted);font:530 11px var(--font-geist-mono);place-items:center;display:grid}.plate-inventory-well{aspect-ratio:1;border:1px solid var(--ui-line);min-width:28px;color:var(--ui-muted);background:var(--ui-surface);cursor:pointer;border-radius:50%;place-items:center;padding:0;display:grid;position:relative;overflow:hidden}.plate-inventory-well i{height:var(--well-fill,0%);background:var(--well-color);border-radius:0 0 50% 50%;max-height:calc(100% - 4px);position:absolute;inset:auto 2px 2px}@supports (color:color-mix(in lab, red, red)){.plate-inventory-well i{background:color-mix(in srgb, var(--well-color) 65%, transparent)}}.plate-inventory-well i{opacity:.72}.plate-inventory-well span{z-index:1;font:520 11px var(--font-geist-mono);position:relative}.plate-inventory-well:hover,.plate-inventory-well.selected{border-color:var(--well-color,var(--accent));color:var(--ui-text);box-shadow:0 0 9px var(--well-color,var(--accent))}@supports (color:color-mix(in lab, red, red)){.plate-inventory-well:hover,.plate-inventory-well.selected{box-shadow:0 0 9px color-mix(in srgb, var(--well-color,var(--accent)) 45%, transparent)}}.plate-inventory-well.unassigned{opacity:.27;cursor:default}.plate-inventory-well.low{border-color:var(--ui-line);--well-color:#ffb66e!important}.plate-inventory-well.empty{border-color:var(--ui-line);--well-color:#ff6e74!important}.plate-inventory-well.active{animation:1.8s ease-in-out infinite inventory-well-pulse}.inventory-legend{justify-content:flex-end;gap:13px;margin:9px 2px 0;display:flex}.inventory-legend span{color:var(--ui-muted);font:500 11px var(--font-geist-mono);align-items:center;gap:5px;display:flex}.inventory-legend i{background:var(--ui-selection);border-radius:50%;width:6px;height:6px}.inventory-legend i.used{background:var(--ui-surface)}.inventory-legend i.low{background:var(--ui-danger-bg)}.inventory-legend i.active{background:var(--ui-purple-bg);box-shadow:0 0 6px}.selected-well-card{border:1px solid var(--line);background:var(--ui-surface);grid-template-columns:52px minmax(0,1fr);align-items:center;gap:12px;min-height:72px;margin-top:13px;padding:10px 12px;display:grid}.selected-well-gauge{border:1px solid var(--well-color);background:var(--well-color);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:48px;height:48px;display:flex}@supports (color:color-mix(in lab, red, red)){.selected-well-gauge{background:color-mix(in srgb, var(--well-color) 8%, transparent)}}.selected-well-gauge strong{color:var(--ui-text);font:600 10px var(--font-geist-mono)}.selected-well-gauge span{color:var(--well-color);font:520 11px var(--font-geist-mono)}.selected-well-card>div:last-child{flex-direction:column;gap:4px;min-width:0;display:flex}.selected-well-card>div:last-child span{color:var(--ui-muted);font:550 11px var(--font-geist-mono);letter-spacing:.08em}.selected-well-card>div:last-child strong{color:var(--ui-text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.selected-well-card>div:last-child small{color:var(--ui-muted);font:500 11px var(--font-geist-mono)}.inventory-sidebar{scrollbar-width:thin;scrollbar-color:var(--ui-line) transparent;min-height:0;padding:17px;overflow:auto}.inventory-policy-card,.inventory-risk-list,.reservoir-usage{border-bottom:1px solid var(--line);margin-bottom:15px;padding-bottom:15px}.inventory-policy-card dl{margin:0}.inventory-policy-card dl>div{border-top:1px solid var(--ui-line);justify-content:space-between;gap:12px;padding:6px 1px;display:flex}.inventory-policy-card dt,.inventory-policy-card dd{color:var(--ui-muted);font:500 11px var(--font-geist-mono);margin:0}.inventory-policy-card dd{color:var(--ui-text)}.inventory-policy-card p{color:var(--ui-warning);margin:9px 0 0;font-size:11px;line-height:1.5}.inventory-risk{border:1px solid var(--ui-line);background:var(--ui-danger-bg);grid-template-columns:20px 1fr;gap:7px;padding:8px;display:grid}.inventory-risk+.inventory-risk{margin-top:6px}.inventory-risk>svg{color:var(--ui-danger)}.inventory-risk.critical{border-color:var(--ui-line);background:var(--ui-danger-bg)}.inventory-risk.critical>svg{color:var(--ui-danger)}.inventory-risk>div,.inventory-policy-pass>div{flex-direction:column;gap:4px;min-width:0;display:flex}.inventory-risk strong,.inventory-policy-pass strong{color:var(--ui-text);font-size:11px}.inventory-risk small,.inventory-policy-pass small{color:var(--ui-muted);font-size:11px;line-height:1.5}.inventory-policy-pass{border:1px solid var(--ui-line);background:var(--ui-selection);grid-template-columns:22px 1fr;gap:8px;padding:10px;display:grid}.inventory-policy-pass>svg{color:var(--accent)}.reservoir-usage>div:not(.inventory-section-heading){border-top:1px solid var(--ui-line);font:500 11px var(--font-geist-mono);grid-template-columns:27px minmax(0,1fr) auto;align-items:center;gap:7px;padding:6px 1px;display:grid}.reservoir-usage span{color:var(--ui-muted)}.reservoir-usage strong{color:var(--ui-muted);text-overflow:ellipsis;white-space:nowrap;font-weight:520;overflow:hidden}.reservoir-usage small{color:var(--ui-muted)}.reservoir-usage .low small,.reservoir-usage .empty small{color:var(--ui-danger)}.protocol-modal{border:1px solid var(--ui-line);background:radial-gradient(circle at 12% 0%, var(--ui-surface), transparent 32%), var(--ui-surface);width:min(920px,94vw);max-height:min(720px,90vh);box-shadow:0 30px 90px var(--ui-line);overflow:auto}.protocol-modal-header{border-bottom:1px solid var(--line);justify-content:space-between;gap:28px;padding:24px 26px 21px;display:flex}.protocol-modal-header h2{color:var(--ui-text);letter-spacing:-.035em;margin:8px 0 6px;font-size:25px;font-weight:560}.protocol-modal-header p{max-width:650px;color:var(--ui-muted);margin:0;font-size:11px;line-height:1.65}.protocol-modal-header>button{border:1px solid var(--line);width:36px;height:36px;color:var(--ui-muted);background:var(--ui-surface);cursor:pointer;flex:none;place-items:center;display:grid}.protocol-modal-header>button:hover{color:var(--ui-text);border-color:var(--ui-line)}.protocol-import-grid{grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);display:grid}.protocol-import-actions,.protocol-import-result{min-height:380px;padding:22px}.protocol-import-actions{border-right:1px solid var(--line)}.protocol-dropzone{border:1px dashed var(--ui-line);height:155px;color:var(--ui-muted);background:var(--ui-selection);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:8px;transition:all .2s;display:flex}.protocol-dropzone:hover,.protocol-dropzone.is-dragging{border-color:var(--ui-line);color:var(--ui-text);background:var(--ui-selection)}.protocol-dropzone svg{color:var(--accent)}.protocol-dropzone strong{color:var(--ui-text);font-size:12px;font-weight:560}.protocol-dropzone span{font-size:11px}.protocol-dropzone input{opacity:0;width:1px;height:1px;position:absolute}.example-protocols{flex-direction:column;gap:7px;margin-top:22px;display:flex}.example-protocols>span,.protocol-result-heading span{color:#56717e;font:560 8px var(--font-geist-mono);letter-spacing:.14em}.example-protocols>button{border:1px solid var(--line);color:#73909b;text-align:left;cursor:pointer;background:#0b1d27ad;grid-template-columns:26px 1fr 15px;align-items:center;gap:9px;min-height:58px;padding:7px 10px;display:grid}.example-protocols>button:hover{color:#d6e6ea;border-color:#78f4d357}.example-protocols>button>svg:first-child{color:var(--accent)}.example-protocols button span{flex-direction:column;gap:4px;min-width:0;display:flex}.example-protocols button strong{font-size:10px;font-weight:560}.example-protocols button small{color:#526d79;font:500 8px var(--font-geist-mono)}.protocol-import-result{flex-direction:column;display:flex}.protocol-empty-state{color:#58727e;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:9px;display:flex}.protocol-empty-state strong{color:#a8bdc5;font-size:12px}.protocol-empty-state span{font-size:9px}.protocol-success,.protocol-error{background:#78f4d30d;border:1px solid #78f4d32e;align-items:flex-start;gap:10px;padding:12px 13px;display:flex}.protocol-success>svg{color:#77dda4;flex:none}.protocol-success>div,.protocol-error>div{flex-direction:column;gap:4px;min-width:0;display:flex}.protocol-success strong{color:#d2e1e5;font:560 11px var(--font-geist-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.protocol-success span{color:#68818c;font-size:9px}.protocol-error{background:#ff8e780f;border-color:#ff8e784d}.protocol-error>svg{color:#ff9c76;flex:none}.protocol-error strong{color:#ffc1ad;font-size:11px}.protocol-error p{color:#9f7b73;font:500 9px var(--font-geist-mono);margin:0;line-height:1.5}.protocol-metrics{border:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin-top:12px;display:grid}.protocol-metrics>div{border-right:1px solid var(--line);flex-direction:column;gap:6px;min-width:0;padding:11px 10px;display:flex}.protocol-metrics>div:last-child{border-right:0}.protocol-metrics span{color:#536e7b;font:540 7px var(--font-geist-mono);letter-spacing:.08em}.protocol-metrics strong{color:#cbdbe0;font:580 12px var(--font-geist-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.protocol-buffer-preview{margin-top:15px}.protocol-result-heading{justify-content:space-between;margin-bottom:7px;display:flex}.protocol-buffer-preview>div:not(.protocol-result-heading){color:#68818d;font:500 8px var(--font-geist-mono);border-top:1px solid #8fbcd21a;grid-template-columns:minmax(0,1fr) 42px 70px 58px;gap:8px;padding:7px 8px;display:grid}.protocol-buffer-preview strong{color:#9fb3bc;text-overflow:ellipsis;white-space:nowrap;font-weight:520;overflow:hidden}.protocol-buffer-preview small{color:#526d79;font:500 8px var(--font-geist-mono);padding-top:8px;display:block}.protocol-warnings{color:var(--ui-accent);font:520 11px var(--font-geist-mono);align-items:center;gap:7px;margin-top:auto;padding-top:13px;display:flex}.protocol-warnings.has-warnings{color:var(--ui-danger)}.asset-library{grid-template-columns:350px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.asset-catalogue{border-right:1px solid var(--line);background:linear-gradient(#112734b8,#0000 38%),#091720;flex-direction:column;min-height:0;padding:28px 20px 20px;display:flex}.catalogue-heading h1{letter-spacing:-.04em;margin:9px 0 8px;font-size:28px;font-weight:570}.catalogue-heading p{color:#78909d;max-width:270px;margin:0;font-size:11px;line-height:1.65}.asset-count{border:1px solid var(--line);background:#08141db8;grid-template-columns:1fr auto;align-items:end;gap:3px 12px;margin:22px 0 14px;padding:13px 15px;display:grid}.asset-count span,.asset-count small{color:#58717f;letter-spacing:.09em;font-size:9px}.asset-count strong{color:var(--accent);font:620 28px var(--font-geist-mono);grid-area:1/2/3}.asset-count small{font-family:var(--font-geist-mono)}.asset-card-list{scrollbar-width:thin;scrollbar-color:#28404e transparent;min-height:0;overflow-y:auto}.asset-card{color:#7c929d;text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #8fbcd21c;grid-template-columns:26px 38px 1fr 16px;align-items:center;gap:9px;width:100%;min-height:58px;padding:6px 10px;display:grid;position:relative}.asset-card:last-child{border-bottom:1px solid #8fbcd21c}.asset-card:before{content:"";background:var(--accent);width:2px;transition:transform .2s;position:absolute;top:9px;bottom:9px;left:0;transform:scaleY(0)}.asset-card:hover,.asset-card.active{color:#d9e5e9;background:#70adc612}.asset-card.active:before{transform:scaleY(1)}.asset-card-index{color:#405967;font:500 9px var(--font-geist-mono)}.asset-card-symbol{background:currentColor;border:1px solid;place-items:center;width:32px;height:32px;display:grid}@supports (color:color-mix(in lab, red, red)){.asset-card-symbol{background:color-mix(in srgb, currentColor 7%, transparent)}}.asset-card-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.asset-card-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:560;overflow:hidden}.asset-card-copy small{color:#4d6977;font:500 8px var(--font-geist-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.asset-card>svg{opacity:.35}.asset-viewer{background:#0a1116;min-width:0;min-height:0;position:relative;overflow:hidden}.asset-viewer:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(90deg,#0911178c,#0000 20%),linear-gradient(#0000 72%,#091117b8);position:absolute;inset:0}.asset-viewer canvas{z-index:0;touch-action:none;display:block;position:relative}.asset-title-block{z-index:3;pointer-events:none;position:absolute;top:30px;left:32px}.asset-large-index{color:#98bac917;font:720 110px var(--font-geist-mono);letter-spacing:-.1em;position:absolute;top:-30px;left:-5px}.asset-title-block h2{letter-spacing:-.045em;margin:12px 0 5px;font-size:clamp(27px,3vw,42px);font-weight:550;position:relative}.asset-title-block p{color:#647d89;font:500 10px var(--font-geist-mono);letter-spacing:.08em;margin:0;position:relative}.asset-facts{z-index:3;border:1px solid var(--line);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#08151ecc;width:min(280px,31%);position:absolute;top:24px;right:24px}.asset-facts>div{border-bottom:1px solid var(--line);flex-direction:column;gap:7px;padding:12px 14px;display:flex}.asset-facts>div:last-child{border-bottom:0}.asset-facts span{color:#53707d;font:560 8px var(--font-geist-mono);letter-spacing:.14em}.asset-facts strong{color:#b9cbd2;font:520 10px var(--font-geist-mono);line-height:1.5}.asset-facts .asset-description strong{color:#8fa6b0;font-family:var(--font-geist-sans);font-weight:430;line-height:1.7}.asset-view-controls{z-index:4;gap:7px;display:flex;position:absolute;bottom:28px;left:32px}.asset-view-controls button{border:1px solid var(--line);color:#738c98;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a1923d4;align-items:center;gap:7px;height:38px;padding:0 12px;font-size:10px;display:flex}.asset-view-controls button:hover,.asset-view-controls button.active{color:#d6e6ea;border-color:#78f4d35c}.asset-view-controls button.active svg{color:var(--accent)}.asset-hint{z-index:3;color:#536d79;letter-spacing:.04em;pointer-events:none;align-items:center;gap:8px;font-size:9px;display:flex;position:absolute;bottom:34px;right:28px}.asset-hint span{background:#547784;width:24px;height:1px}@keyframes inventory-well-pulse{0%,to{box-shadow:0 0 #b9a7ff00}50%{box-shadow:0 0 11px #b9a7ffb8}}@media (width<=1450px){.header-meta{gap:8px}.bridge-button span,.event-log-button span,.inventory-button span{display:none}.protocol-import-button{max-width:160px}}@media (width<=1100px){.header-meta{gap:10px}.view-switch button{padding-inline:9px}.protocol-import-button{max-width:145px}.bridge-button span,.event-log-button span,.inventory-button span{display:none}.workspace{grid-template-columns:minmax(0,1fr) 290px}.protocol-panel{grid-template-columns:250px minmax(700px,1fr);overflow-x:auto}.budget-summary{display:none}.live-readings>div{min-width:135px}.fluid-monitor{grid-template-columns:135px minmax(0,1fr)}.fluid-monitor-heading{padding-inline:9px}.asset-library{grid-template-columns:300px minmax(0,1fr)}.asset-catalogue{padding-inline:16px}.asset-facts{width:240px}}@media (width<=800px){body{overflow:auto}.app-shell{grid-template-rows:60px 1fr 190px;min-height:860px}.topbar{padding:0 14px}.app-shell.asset-mode{grid-template-rows:60px minmax(0,1fr);min-height:780px}.view-switch button{justify-content:center;width:34px;padding:0;font-size:0}.protocol-import-button,.event-log-button,.bridge-button,.inventory-button{justify-content:center;width:34px;padding:0}.protocol-import-button span,.protocol-import-button svg:last-child,.bridge-button span,.bridge-button strong,.event-log-button span,.event-log-button strong,.inventory-button span,.inventory-button strong{display:none}.bridge-panel{width:100%}.bridge-body{grid-template-columns:1fr;overflow-y:auto}.bridge-devices,.bridge-events{overflow:visible}.bridge-devices{border-right:0;border-bottom:1px solid var(--line)}.workspace{display:block;position:relative}.viewport{height:100%}.inspector{z-index:10;border-left:1px solid var(--line);width:min(330px,88vw);transition:transform .3s;position:absolute;top:0;bottom:0;right:0;transform:translate(105%)}.inspector.is-open{transform:translate(0)}.viewport-heading{top:18px;left:18px}.viewport-heading p,.legend,.fluid-monitor,.robot-telemetry{display:none}.live-readings{left:14px;right:14px}.live-readings>div{flex:1;min-width:0;padding:0 8px}.live-readings span,.live-readings svg{display:none}.protocol-panel{grid-template-columns:150px 680px}.run-control{flex-direction:column;justify-content:center;align-items:flex-start;padding:0 12px;display:flex}.timer{align-items:flex-start;margin:0}.stage-track{padding-top:36px}.asset-library{grid-template-rows:210px minmax(0,1fr);grid-template-columns:1fr}.asset-catalogue{border-right:0;border-bottom:1px solid var(--line);padding:14px}.catalogue-heading h1{margin:5px 0 4px;font-size:20px}.catalogue-heading p{max-width:none;font-size:9px}.asset-count{display:none}.asset-card-list{gap:7px;margin-top:12px;display:flex;overflow:auto hidden}.asset-card{border:1px solid var(--line);min-width:178px;min-height:62px}.asset-card:last-child{border-bottom:1px solid var(--line)}.asset-title-block{top:18px;left:18px}.asset-large-index{font-size:76px}.asset-title-block h2{margin-top:8px;font-size:24px}.asset-facts{width:180px;top:16px;right:14px}.asset-facts .asset-description{display:none}.asset-view-controls{bottom:18px;left:14px}.asset-view-controls button{justify-content:center;width:38px;padding:0;font-size:0}.asset-hint{display:none}.protocol-modal-backdrop{padding:10px}.event-log-panel{width:100%}.inventory-backdrop{padding:7px}.inventory-panel{width:100%;max-height:98vh}.inventory-header{padding:15px}.inventory-metrics{grid-template-columns:repeat(2,1fr)}.inventory-metrics>div:nth-child(2){border-right:0}.inventory-metrics>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.inventory-content{display:block;overflow-y:auto}.plate-inventory-section{border-right:0;border-bottom:1px solid var(--line);overflow-x:auto}.inventory-sidebar{overflow:visible}.event-log-header{padding:17px 16px}.event-log-toolbar{grid-template-columns:1fr 1fr}.event-log-columns,.event-log-row{grid-template-columns:62px minmax(0,1fr) 92px;padding-inline:10px}.protocol-modal{width:100%;max-height:94vh}.protocol-modal-header{padding:18px}.protocol-modal-header h2{font-size:21px}.protocol-import-grid{grid-template-columns:1fr}.protocol-import-actions,.protocol-import-result{min-height:auto;padding:16px}.protocol-import-actions{border-right:0;border-bottom:1px solid var(--line)}.protocol-import-result{min-height:340px}}.setup-explorer,.cnc-training{min-height:0;color:var(--ink,var(--ui-text));background:var(--ui-surface);padding:28px 32px 40px;overflow:auto}.setup-explorer *,.cnc-training *{box-sizing:border-box}.setup-explorer h1,.cnc-training h1{margin:10px 0;font-size:clamp(24px,2.1vw,34px);line-height:1.2}.setup-explorer h2,.cnc-training h2{margin:0 0 12px;font-size:20px;line-height:1.3}.setup-explorer p,.cnc-training p{color:var(--ui-text);margin:10px 0 18px;font-size:14px;line-height:1.6}.setup-explorer button,.setup-back,.cnc-training button,.setup-file-button{border:1px solid var(--ui-line);background:var(--ui-surface);color:var(--ui-text);cursor:pointer;font:inherit;border-radius:5px;padding:10px 13px;font-size:14px;line-height:1.35}.setup-explorer button:hover:not(:disabled),.cnc-training button:hover:not(:disabled),.setup-back:hover{background:var(--ui-surface);border-color:var(--ui-line)}.setup-explorer button:disabled,.cnc-training button:disabled{opacity:.4;cursor:not-allowed}.setup-explorer :focus-visible,.cnc-training :focus-visible,.setup-back:focus-visible{outline:2px solid var(--ui-line);outline-offset:3px}.setup-explorer input,.setup-explorer select{background:var(--ui-surface);border:1px solid var(--ui-line);width:100%;min-width:0;color:var(--ui-text);font:inherit;border-radius:4px;padding:9px;font-size:14px}.setup-intro,.cnc-intro{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.cnc-eyebrow{letter-spacing:.13em;color:var(--ui-accent);font-size:11px;font-weight:700}.setup-file-actions,.cnc-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.setup-file-actions{flex-shrink:0}.setup-file-button{align-items:center;display:inline-flex;position:relative}.setup-file-button input[type=file]{opacity:0;cursor:pointer;position:absolute;inset:0}.setup-file-button:focus-within{outline:2px solid var(--ui-line);outline-offset:3px}.setup-stages{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:12px 0 28px;display:grid}.setup-stages button{text-align:left;color:var(--ui-muted);background:0 0;align-items:center;gap:10px;display:flex}.setup-stages button[aria-current=step]{background:var(--ui-selection);color:var(--ui-accent);border-color:var(--ui-line)}.setup-stages button span,.cnc-progress li>span{border:1px solid var(--ui-line);border-radius:50%;flex-shrink:0;place-items:center;width:26px;height:26px;font-size:12px;display:grid}.setup-columns{grid-template-columns:minmax(0,1fr) 320px;gap:36px;max-width:1500px;margin:auto;display:grid}.setup-work{min-width:0}.setup-context{border-left:1px solid var(--ui-line);min-width:0;padding-left:28px}.setup-context h2{font-size:17px}.setup-context p{font-size:12px}.setup-choice-grid{grid-template-columns:1fr 1fr;gap:12px;margin:20px 0;display:grid}.setup-choice-grid button{text-align:left;flex-direction:column;gap:10px;padding:20px;display:flex}.setup-choice-grid button[aria-pressed=true]{border-color:var(--ui-line);background:var(--ui-selection)}.setup-choice-grid strong{font-size:17px}.setup-choice-grid span{color:var(--ui-text);line-height:1.6}.setup-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:22px 0;display:grid}.setup-field{color:var(--ui-text);flex-direction:column;gap:8px;max-width:500px;margin-bottom:14px;font-size:14px;display:flex}.setup-equipment{margin:22px 0;padding:0;list-style:none}.setup-equipment li{border-bottom:1px solid var(--ui-line);grid-template-columns:190px 1fr;gap:20px;padding:14px 0;font-size:14px;line-height:1.55;display:grid}.setup-equipment span{color:var(--ui-text)}.setup-explorer .setup-note,.cnc-training .cnc-caption{color:var(--ui-muted);font-size:12px;line-height:1.6}.setup-flow{flex-direction:column;gap:4px;margin:16px 0;padding:0;list-style:none;display:flex}.setup-flow li{color:var(--ui-muted);flex-direction:column;align-items:center;gap:4px;display:flex}.setup-flow li>span:first-child{border:1px solid var(--ui-line);text-align:center;width:100%;color:var(--ui-text);background:var(--ui-surface);border-radius:5px;padding:9px;font-size:13px}.setup-flow li.active>span:first-child,.setup-ttl.active{border-color:var(--ui-line);color:var(--ui-accent);background:var(--ui-selection)}.setup-ttl{border:1px dashed var(--ui-line);color:var(--ui-purple);border-radius:5px;padding:12px;font-size:12px;line-height:1.5}.setup-preflight{margin-top:25px}.setup-preflight h3{font-size:15px}.setup-preflight ul{color:var(--ui-warning);padding-left:18px;font-size:13px;line-height:1.6}.setup-preflight li{margin:8px 0}.setup-explorer details,.cnc-training details{color:var(--ui-text);margin:18px 0;font-size:13px}.setup-explorer summary,.cnc-training summary{cursor:pointer;color:var(--ui-text);padding:8px 0}.setup-reference>div{background:var(--ui-surface);height:240px}.setup-live-robot>div{border:1px solid var(--ui-line);height:250px}.setup-routing{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.setup-routing label{color:var(--ui-muted);flex-direction:column;gap:7px;font-size:13px;display:flex}.setup-source-table{margin:22px 0;overflow-x:auto}.setup-source-table table{border-collapse:collapse;text-align:left;width:100%;font-size:13px}.setup-source-table th,.setup-source-table td{border-bottom:1px solid var(--ui-line);padding:12px 8px}.setup-source-table th{color:var(--ui-text);overflow-wrap:anywhere}.setup-source-table td{color:var(--ui-text);font-variant-numeric:tabular-nums}.setup-source-table input{min-width:66px;max-width:110px}.setup-source-table select{min-width:98px}.cnc-check{color:var(--ui-text);align-items:flex-start;gap:10px;margin:18px 0;font-size:13px;line-height:1.6;display:flex}.cnc-check input,.setup-explorer .cnc-check input{width:17px;height:17px;accent-color:var(--ui-accent);flex:0 0 17px;margin-top:2px}.setup-navigation{border-top:1px solid var(--ui-line);justify-content:space-between;margin-top:30px;padding-top:20px;display:flex}.setup-plan-list{max-height:400px;overflow:auto}.setup-plan-list ol{padding-left:25px}.setup-plan-list li{border-bottom:1px solid var(--ui-line);color:var(--ui-text);padding:12px 8px;font-size:14px}.setup-plan-list small{color:var(--ui-muted);margin-top:5px;display:block}.setup-run-status{border:1px solid var(--ui-line);background:var(--ui-surface);flex-direction:column;gap:10px;margin:22px 0;padding:20px;display:flex}.setup-run-status span{color:var(--ui-muted);font-size:13px}.setup-metrics{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.setup-metrics dt{color:var(--ui-muted);margin-bottom:8px;font-size:12px}.setup-metrics dd{color:var(--ui-accent);font-variant-numeric:tabular-nums;margin:0;font-size:22px}.setup-explorer .cnc-primary,.cnc-training .cnc-primary{background:var(--ui-selection);border-color:var(--ui-line);color:var(--ui-text)}.setup-explorer .cnc-stop,.cnc-training .cnc-stop{border-color:var(--ui-line);color:var(--ui-danger);background:var(--ui-danger-bg)}.setup-frozen{border:1px solid var(--ui-line);background:var(--ui-purple-bg);color:var(--ui-purple);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px;padding:14px;font-size:13px;display:flex}.setup-log ol{max-height:240px;padding-left:22px;line-height:1.6;overflow:auto}.cnc-error{border:1px solid var(--ui-line);background:var(--ui-danger-bg);border-radius:4px;padding:14px;color:var(--ui-danger)!important}.setup-cnc{background:var(--ui-surface);min-height:0;overflow:auto}.setup-back{margin:20px 32px 0}.setup-cnc .cnc-training{overflow:visible}.cnc-speed{border:1px solid var(--ui-line);white-space:nowrap;color:var(--ui-text);border-radius:4px;padding:8px 12px;font-size:12px}.cnc-progress{grid-template-columns:repeat(4,1fr);gap:12px;margin:20px 0 30px;padding:0;list-style:none;display:grid}.cnc-progress li{color:var(--ui-muted);align-items:center;gap:10px;font-size:13px;display:flex}.cnc-progress li.done{color:var(--ui-accent)}.cnc-progress li.done>span{border-color:var(--ui-line);background:var(--ui-selection)}.cnc-body{grid-template-columns:minmax(0,1fr) minmax(320px,390px);gap:26px;display:grid}.cnc-scene{border:1px solid var(--ui-line);height:clamp(280px,36vw,470px)}.cnc-position{background:var(--ui-surface);border:1px solid var(--ui-line);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:10px 24px;padding:16px;font-size:13px;display:flex}.cnc-position strong{width:100%;color:var(--ui-accent)}.cnc-position span{color:var(--ui-text)}.cnc-card{border:1px solid var(--ui-line);background:var(--ui-surface);border-radius:5px;margin-bottom:14px;padding:20px}.cnc-card h2{font-size:17px}.cnc-card>button{margin:0 6px 8px 0}.cnc-plate-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;margin-top:25px;display:flex}.cnc-plate-heading span{color:var(--ui-muted);font-size:12px}.cnc-wells{grid-template-columns:repeat(12,minmax(0,1fr));gap:5px;display:grid}.cnc-wells button{min-width:0;padding:8px 2px;font-size:12px}.cnc-wells button[aria-pressed=true]{border-color:var(--ui-line);background:var(--ui-purple-bg);color:var(--ui-text)}.cnc-events ol{max-height:300px;padding-left:25px;overflow:auto}.cnc-events li{padding:8px 0;line-height:1.5}.cnc-events code{color:var(--ui-accent)}@media (width<=1100px){.setup-explorer,.cnc-training{padding:24px 20px}.setup-intro{flex-direction:column;gap:8px}.setup-columns{grid-template-columns:minmax(0,1fr) 260px;gap:24px}.setup-context{padding-left:18px}.setup-stages button{flex-direction:column;align-items:flex-start;font-size:12px}.cnc-body{grid-template-columns:minmax(0,1fr)}.cnc-controls{grid-template-columns:1fr 1fr;gap:14px;display:grid}.cnc-scene{height:360px}}@media (width<=760px){.setup-columns{grid-template-columns:1fr}.setup-context{border-left:0;border-top:1px solid var(--ui-line);padding:24px 0 0}.setup-stages{padding-bottom:8px;display:flex;overflow-x:auto}.setup-stages button{min-width:120px}.setup-choice-grid,.setup-fields,.cnc-controls,.setup-equipment li{grid-template-columns:1fr}.setup-equipment li{gap:5px}.cnc-progress{grid-template-columns:1fr 1fr}.cnc-intro{flex-direction:column;gap:8px}.setup-metrics{grid-template-columns:1fr}.cnc-wells{gap:3px}.cnc-wells button{padding:8px 0;font-size:10px}}.visual-setup .setup-intro h1{margin-bottom:5px;font-size:24px}.visual-setup .guide-journey{margin:16px 0 20px;display:flex;overflow-x:auto}.visual-setup .guide-journey button{flex:1 0 120px}.visual-guide{border:1px solid var(--ui-line);background:var(--ui-surface);border-radius:8px;grid-template-columns:minmax(0,1fr) 335px;display:grid;overflow:hidden}.guide-stage{background:var(--ui-surface);min-width:0}.guide-toolbar{border-bottom:1px solid var(--ui-line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:13px 18px;display:flex}.guide-toolbar>span{color:var(--ui-accent);letter-spacing:.05em;font-size:12px}.guide-toolbar small{color:var(--ui-muted);letter-spacing:normal;font-size:12px}.guide-toolbar>div{flex-wrap:wrap;gap:6px;display:flex}.visual-setup .guide-toolbar button{padding:7px 10px;font-size:13px}.guide-toolbar button[aria-pressed=true]{border-color:var(--ui-line);color:var(--ui-accent)}.guide-canvas{isolation:isolate;height:clamp(380px,47vh,660px);position:relative;overflow:hidden}.guide-canvas-caption{border-top:1px solid var(--ui-line);color:var(--ui-muted);padding:12px 18px;font-size:13px;line-height:1.5}.guide-part-strip{border-top:1px solid var(--ui-line);gap:7px;padding:12px;display:flex;overflow-x:auto}.visual-setup .guide-part-strip button{white-space:nowrap;background:var(--ui-surface);align-items:center;gap:9px;font-size:14px;display:flex}.guide-part-strip button small{color:var(--ui-muted);font-size:12px}.guide-part-strip button[aria-pressed=true]{border-color:var(--ui-line);color:var(--ui-accent)}.guide-inspector{border-left:1px solid var(--ui-line);min-width:0;padding:24px}.guide-inspector h2{margin-top:14px;font-size:23px}.guide-inspector h3{margin:23px 0 10px;font-size:15px}.visual-setup .guide-inspector p,.visual-setup .setup-work>p{font-size:16px;line-height:1.6}.visual-setup .guide-inspector .guide-reference{color:var(--ui-text);font-size:14px}.guide-evidence{color:var(--ui-warning);letter-spacing:.035em;font-size:12px;line-height:1.6;display:block}.guide-inspector ul{color:var(--ui-text);padding-left:18px;font-size:14px;line-height:1.65}.guide-inspector li{margin-bottom:7px}.guide-inspector a{color:var(--ui-accent);text-underline-offset:3px;font-size:14px;text-decoration:underline}.guide-inspector label{color:var(--ui-text);flex-direction:column;gap:8px;margin:20px 0 14px;font-size:14px;display:flex}.visual-setup .guide-inspector .guide-subtle{color:var(--ui-muted);font-size:13px}.guide-pending{border-top:1px solid var(--ui-line);padding-top:12px}.visual-setup .guide-settings{border:1px solid var(--ui-line);border-radius:6px;margin-top:18px;padding:0 20px 20px}.guide-settings>summary{padding:18px 0;font-size:16px;font-weight:600}.guide-settings .setup-columns{max-width:none}.guide-software-path{flex-direction:column;align-items:center;gap:8px;margin:18px 0;font-size:14px;display:flex}.guide-software-path span:nth-child(odd),.guide-software-path strong{border:1px solid var(--ui-line);text-align:center;background:var(--ui-purple-bg);width:100%;color:var(--ui-purple);border-radius:4px;padding:10px;font-weight:500}.guide-command{background:var(--ui-surface);border:1px solid var(--ui-line);flex-direction:column;gap:16px;margin:20px 0;padding:20px;font-size:14px;line-height:1.6;display:flex}.guide-command code{color:var(--ui-accent)}.guide-command span{color:var(--ui-text)}.visual-setup .setup-navigation{align-items:center}.visual-setup .setup-navigation>span{color:var(--ui-muted);font-size:14px}.visual-setup button.guide-pin{border:1px solid var(--ui-line);color:var(--ui-text);white-space:nowrap;background:#0b1e28e8;border-radius:4px;padding:6px 9px;font-size:12px}.visual-setup button.guide-pin.selected{background:var(--ui-selection);color:var(--ui-accent);border-color:var(--ui-line)}.guide-link-label{color:var(--ui-accent);border:1px solid var(--ui-line);white-space:nowrap;pointer-events:none;background:#12352ef0;border-radius:4px;padding:7px 10px;font-size:12px;display:block}.guide-link-label.software{border-color:var(--ui-line);color:var(--ui-purple);background:#2c243ef0}.procurement-sections{border-bottom:1px solid var(--ui-line);flex-wrap:wrap;gap:8px;padding:0 24px 20px;display:flex}.visual-setup .procurement-sections button{border-radius:6px;padding:11px 16px;font-size:14px}.visual-setup .procurement-sections button[aria-pressed=true]{background:var(--ui-selection);border-color:var(--ui-line);color:var(--ui-accent)}.visual-setup .procurement-supplies-link{text-align:left;color:var(--ui-accent);margin-top:18px;font-size:13px;line-height:1.5}.supplies-guide{padding:24px}.supplies-intro{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.supplies-intro h3{letter-spacing:-.02em;margin:0 0 10px;font-size:24px}.visual-setup .supplies-intro p{color:var(--ui-text);max-width:640px;margin:0;font-size:14px;line-height:1.65}.supplies-intro>span{color:var(--ui-accent);min-width:190px;max-width:260px;font-size:13px;line-height:1.5}.supplies-intro small{color:var(--ui-muted);margin-top:6px;font-size:11px;display:block}.supply-route-layout{border:1px solid var(--ui-line);border-radius:8px;grid-template-columns:265px minmax(0,1fr);display:grid;overflow:hidden}.supply-route-list{background:var(--ui-surface);border-right:1px solid var(--ui-line);padding:16px}.supply-route-list h4{color:var(--ui-text);margin:4px 0 16px;font-size:13px}.visual-setup .supply-route-list button{text-align:left;background:0 0;border-color:#0000;align-items:flex-start;gap:10px;width:100%;margin-bottom:8px;padding:11px;font-size:13px;line-height:1.6;display:flex}.supply-route-list button>span{color:var(--ui-muted);padding-top:2px;font-size:11px}.visual-setup .supply-route-list button[aria-current=step]{border-color:var(--ui-line);background:var(--ui-selection);color:var(--ui-accent)}.visual-setup .supply-route-list p{color:var(--ui-muted);margin-top:18px;font-size:12px;line-height:1.6}.supply-route-detail{background:var(--ui-surface);min-width:0;padding:22px}.supply-route-detail>header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.supply-route-detail h3{margin:2px 0;font-size:20px}.visual-setup .supply-route-detail>header button{white-space:nowrap;color:var(--ui-accent);font-size:12px}.supply-endpoints{grid-template-columns:1fr 22px 1fr;align-items:center;gap:10px;margin:0 0 16px;display:grid}.supply-endpoints>span{color:var(--ui-text);align-items:center;gap:9px;font-size:13px;display:flex}.supply-endpoints b{background:var(--ui-selection);color:var(--ui-accent);border-radius:50%;flex-shrink:0;place-items:center;width:25px;height:25px;display:grid}.supply-endpoints>span:last-child b{background:var(--ui-warning-bg);color:var(--ui-danger)}.visual-setup .supplies-note{color:var(--ui-muted);font-size:13px;line-height:1.65}.supply-fields{grid-template-columns:1fr 1fr;gap:14px;display:grid}.supplies-guide label{color:var(--ui-text);flex-direction:column;gap:7px;min-width:0;margin-bottom:14px;font-size:12px;display:flex}.supplies-guide input,.supplies-guide select,.supplies-guide textarea{box-sizing:border-box;width:100%;min-width:0}.supplies-guide textarea{resize:vertical;background:var(--ui-surface);border:1px solid var(--ui-line);min-height:76px;color:var(--ui-text);font:inherit;border-radius:4px;padding:11px}.supply-wide{grid-column:1/-1}.supply-route-detail details{border-top:1px solid var(--ui-line);padding-top:15px}.supplies-guide summary{color:var(--ui-text);cursor:pointer;font-size:13px}.supplies-guide details p{color:var(--ui-text);font-size:13px;line-height:1.7}.supplies-guide a{color:var(--ui-accent);font-size:13px;text-decoration:underline}.supply-route-nav{justify-content:space-between;align-items:center;gap:12px;margin-top:22px;display:flex}.supply-route-nav span{color:var(--ui-text);font-size:12px}.supply-totals{background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:8px;margin-top:22px;padding:20px}.supply-totals h3{margin:0 0 14px;font-size:18px}.supply-totals>div{border-bottom:1px solid var(--ui-line);justify-content:space-between;gap:16px;padding:12px 0;font-size:14px;display:flex}.supply-totals strong small{color:var(--ui-muted);margin-top:4px;font-size:11px;font-weight:400;display:block}.supply-totals>strong{color:var(--ui-accent);font-size:14px}.visual-setup .supply-totals p{color:var(--ui-muted);font-size:13px;line-height:1.7}.supply-group{margin-top:28px}.supply-group>summary{color:var(--ui-text);letter-spacing:.03em;border-bottom:1px solid var(--ui-line);cursor:pointer;padding:14px 0;font-size:15px}.supply-group>summary>span{float:right;color:var(--ui-muted);font-size:12px}.software-setup{border:1px solid var(--ui-line);background:var(--ui-surface);border-radius:12px;overflow:hidden}.software-heading{justify-content:space-between;align-items:flex-start;gap:24px;padding:28px;display:flex}.software-heading small{color:var(--ui-accent);letter-spacing:.12em;font:11px monospace}.software-heading h2{margin:12px 0 8px;font-size:clamp(22px,2.3vw,30px);line-height:1.25}.software-setup p{color:var(--ui-text);font-size:14px;line-height:1.65}.software-heading p{margin:0}.software-mode{color:var(--ui-accent);background:var(--ui-selection);border:1px solid var(--ui-line);border-radius:5px;flex-shrink:0;padding:8px 10px;font:10px monospace}.software-steps{border-block:1px solid var(--ui-line);background:var(--ui-surface);grid-template-columns:repeat(3,1fr);display:grid}.software-steps button{color:var(--ui-muted);text-align:left;border-bottom:2px solid #0000;align-items:center;gap:10px;padding:16px 20px;font-size:13px;display:flex}.software-steps button span{border:1px solid var(--ui-line);border-radius:50%;flex-shrink:0;place-items:center;width:25px;height:25px;display:grid}.software-steps button[aria-current=step]{color:var(--ui-text);background:var(--ui-selection);border-bottom-color:var(--ui-line)}.software-body{padding:28px}.software-body h3{margin:0 0 8px;font-size:20px}.software-body>p{margin:0 0 22px}.software-map{grid-template-columns:1fr 26px 1fr 26px 1fr;align-items:stretch;gap:12px;margin:26px 0;display:grid}.software-map article{border:1px solid var(--ui-line);background:var(--ui-surface);border-radius:8px;padding:22px}.software-map article small{letter-spacing:.08em;color:var(--ui-accent);font:10px monospace}.software-map h4{margin:14px 0 8px;font-size:18px;line-height:1.3}.software-map article span{color:var(--ui-accent);margin-top:8px;font-size:12px;display:inline-block}.software-map>b{text-align:center;color:var(--ui-accent);align-self:center;font-size:23px}.software-map .software-future{background:var(--ui-surface);border-style:dashed;border-color:var(--ui-line)}.software-map .software-future span,.software-map .software-future small,.software-map-stop{color:var(--ui-purple)}.software-takeaway{border-left:3px solid var(--ui-line);background:var(--ui-surface);padding:14px 20px}.software-takeaway p{margin:6px 0 0}.software-help{border-top:1px solid var(--ui-line);color:var(--ui-text);margin-top:24px;padding-top:16px;font-size:14px}.software-help summary{cursor:pointer;padding:6px 0}.software-help pre{background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:6px;padding:18px;line-height:1.8;overflow:auto}.software-help ul,.software-check-result ul{padding-left:22px;font-size:14px;line-height:1.8;list-style:outside}.software-config-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start;gap:32px;display:grid}.software-form{border:1px solid var(--ui-line);border-radius:8px;min-width:0;margin-top:22px;padding:18px}.software-form legend{color:var(--ui-accent);padding:0 8px;font-size:12px}.software-form label{color:var(--ui-text);gap:8px;margin-bottom:14px;font-size:13px;display:grid}.software-form input,.software-form select{background:var(--ui-surface);width:100%;color:var(--ui-text);border:1px solid var(--ui-line);font:inherit;border-radius:5px;min-width:0;padding:11px}.software-form .software-field-help{color:var(--ui-muted);margin:-4px 0 18px;font-size:12px}.software-form .software-field-help:last-child{margin-bottom:0}.software-device{background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:8px;padding:20px;overflow:hidden}.software-device h3{font-size:16px}.software-device nav{flex-wrap:wrap;gap:6px;margin:16px 0;display:flex}.software-device nav button{border:1px solid var(--ui-line);color:var(--ui-text);border-radius:5px;padding:8px 10px;font-size:12px}.software-device nav button[aria-pressed=true]{background:var(--ui-selection);border-color:var(--ui-line);color:var(--ui-text)}.software-device-canvas{background:var(--ui-surface);border-radius:6px;height:260px;overflow:hidden}.software-device h4{margin:18px 0 0;font-size:16px}.software-device>small,.software-preview small{color:var(--ui-muted);font-size:11px;line-height:1.5}.software-preview{border-top:1px solid var(--ui-line);gap:10px;margin-top:22px;padding-top:18px;font-size:13px;display:grid}.software-preview span{color:var(--ui-accent);font:16px monospace}.software-syringe{background:var(--ui-surface);border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:12px;height:260px;display:flex}.software-syringe strong{border:1px solid var(--ui-line);color:var(--ui-purple);border-radius:8px;padding:12px 24px}.software-syringe small{color:var(--ui-muted);font-size:10px}.software-review{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:24px 0;display:grid}.software-review>div{background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:6px;padding:18px}.software-review dt{color:var(--ui-muted);margin-bottom:8px;font-size:12px}.software-review dd{color:var(--ui-text);margin:0;font-size:16px}.software-primary{border:1px solid var(--ui-line);color:var(--ui-accent);background:var(--ui-selection);border-radius:6px;padding:12px 16px;font-size:13px}.software-check-result{border:1px solid var(--ui-line);background:var(--ui-selection);border-radius:8px;margin-top:20px;padding:20px}.software-check-result.invalid{border-color:var(--ui-line);background:var(--ui-danger-bg)}.software-check-result p{margin-bottom:0}.software-errors{color:var(--ui-danger);padding-left:20px;font-size:13px;line-height:1.7;list-style:outside}.software-footer{border-top:1px solid var(--ui-line);justify-content:space-between;align-items:center;gap:18px;padding:20px 28px;display:flex}.software-footer>span{color:var(--ui-muted);font-size:12px}.software-footer>button{font-size:13px}.software-setup button:disabled,.software-setup input:disabled,.software-setup select:disabled{opacity:.45;cursor:not-allowed}.software-setup button:focus-visible,.software-help summary:focus-visible{outline:2px solid var(--ui-line);outline-offset:3px}@media (width<=850px){.software-map{grid-template-columns:1fr}.software-map>b{transform:rotate(90deg)}.software-config-grid{grid-template-columns:1fr}.software-heading{flex-direction:column;gap:12px}}@media (width<=550px){.software-heading,.software-body{padding:18px}.software-steps button{flex-direction:column;align-items:flex-start;gap:6px;padding:12px 8px;font-size:11px}.software-footer{flex-wrap:wrap;padding:16px}.software-footer>span{display:none}}.supply-essential{border-bottom:1px solid var(--ui-line);grid-template-columns:minmax(0,1fr) minmax(300px,1fr);gap:30px;padding:20px 0;display:grid}.supply-essential h4{margin:0 0 9px;font-size:16px}.visual-setup .supply-essential p{color:var(--ui-text);font-size:13px;line-height:1.65}.supply-essential-fields small{color:var(--ui-muted);font-size:12px;line-height:1.5}.visual-setup .supplies-retention{color:var(--ui-muted);margin:22px 0 0;font-size:12px;line-height:1.7}.visual-setup .connection-material button{text-align:left;color:var(--ui-accent);font-size:12px;line-height:1.5}@media (width<=900px){.supply-route-layout{grid-template-columns:210px minmax(0,1fr)}.supply-route-detail>header{flex-direction:column}.supplies-intro{flex-direction:column;gap:14px}.supplies-intro>span{max-width:none}}@media (width<=650px){.supplies-guide{padding:16px}.supply-route-layout,.supply-essential{grid-template-columns:1fr}.supply-route-list{border-right:none;border-bottom:1px solid var(--ui-line);max-height:230px;overflow:auto}.supply-essential{gap:16px}.supply-fields{grid-template-columns:1fr}.supply-route-detail{padding:16px}.procurement-sections{padding:0 16px 16px}.supply-totals>div{flex-direction:column;gap:6px}}.connection-lesson{border:1px solid var(--ui-line);background:var(--ui-surface);border-radius:12px;overflow:hidden}.connection-heading{justify-content:space-between;align-items:center;gap:24px;padding:23px 26px 18px;display:flex}.connection-heading h2{letter-spacing:-.025em;margin:8px 0 0;font-size:clamp(22px,2.2vw,30px)}.connection-counter{color:var(--ui-accent);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:26px}.connection-counter small{color:var(--ui-muted);font-size:16px}.connection-navigation{border-bottom:1px solid var(--ui-line);justify-content:space-between;align-items:center;gap:18px;padding:12px 26px 20px;display:flex}.connection-navigation label{flex:1;align-items:center;gap:10px;min-width:0;max-width:560px;display:flex}.connection-navigation label>span{color:var(--ui-muted);font-size:12px}.connection-navigation select{width:100%;min-width:0}.connection-layout{grid-template-columns:minmax(0,1fr) 340px;display:grid}.connection-visual{background:var(--ui-surface);min-width:0}.connection-endpoints{grid-template-columns:1fr 24px 1fr;align-items:center;gap:8px;padding:16px 18px 8px;display:grid}.visual-setup .connection-endpoints button{text-align:left;border:1px solid var(--ui-line);background:var(--ui-surface);border-radius:6px;align-items:center;gap:10px;min-width:0;padding:11px 12px;display:flex}.connection-endpoints button>span:first-of-type{flex:1;min-width:0}.connection-endpoints button strong{font-size:14px;font-weight:600;display:block}.connection-endpoints button small{color:var(--ui-text);margin-top:4px;font-size:12px;line-height:1.4;display:block}.connection-endpoints b{background:var(--ui-selection);height:28px;color:var(--ui-accent);border-radius:50%;flex:0 0 28px;place-content:center;font-size:14px;display:grid}.connection-endpoints button:last-child b{background:var(--ui-warning-bg);color:var(--ui-danger)}.visual-setup .connection-endpoints button[aria-pressed=true]{border-color:var(--ui-line);box-shadow:inset 0 0 0 1px var(--ui-line)}.connection-flow-arrow{color:var(--ui-text);text-align:center;font-size:21px}.connection-canvas{isolation:isolate;height:clamp(360px,46vh,530px);position:relative;overflow:hidden}.connection-view-tools{pointer-events:none;justify-content:space-between;align-items:center;gap:8px;display:flex;position:absolute;top:10px;left:18px;right:18px}.visual-setup .connection-view-tools button{pointer-events:auto;background:#132b36e8;padding:7px 10px;font-size:12px}.connection-view-tools>span{color:var(--ui-muted);font-size:11px}.connection-port-tag{border:1px solid var(--ui-line);color:var(--ui-accent);white-space:nowrap;background:#103e34f5;border-radius:5px;align-items:center;gap:6px;padding:4px 8px;font-size:16px;font-weight:700;display:inline-flex;box-shadow:0 3px 15px #0005}.connection-port-tag small{text-transform:uppercase;font-size:10px;font-weight:500}.connection-port-tag.to{color:var(--ui-warning);border-color:var(--ui-line);background:#42331cf5}.connection-path-label{white-space:nowrap;color:var(--ui-text);border:1px solid var(--ui-line);background:#0a1924ec;border-radius:5px;padding:6px 11px;font-size:12px;display:block}.connection-generic{white-space:nowrap;color:var(--ui-text);text-align:center;background:#233b49f5;border-radius:4px;padding:8px 12px;font-size:12px;display:block}.connection-generic small{color:var(--ui-warning);font-size:10px}.connection-player{border-top:1px solid var(--ui-line);flex-wrap:wrap;align-items:center;gap:10px;padding:14px 18px;display:flex}.visual-setup .connection-play{color:var(--ui-accent);border-color:var(--ui-line)}.connection-player label{flex:1;align-items:center;gap:8px;min-width:130px;display:flex}.connection-player label span{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.connection-player input[type=range]{width:100%;accent-color:var(--ui-accent);padding:0}.visual-setup .connection-model-note{color:var(--ui-muted);margin:0;padding:0 18px 18px;font-size:12px;line-height:1.6}.connection-instructions{border-left:1px solid var(--ui-line);padding:20px}.connection-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.visual-setup .connection-actions button{text-align:left;border-radius:5px;align-items:center;gap:8px;padding:10px 8px;font-size:12px;line-height:1.4;display:flex}.connection-actions button>span{color:var(--ui-muted);font-size:12px}.visual-setup .connection-actions button[aria-current=step]{border-color:var(--ui-line);background:var(--ui-surface);color:var(--ui-accent)}.connection-current{min-height:147px;margin:24px 0 22px}.connection-current>span{color:var(--ui-accent);letter-spacing:.08em;font-size:10px}.connection-current h3{margin:8px 0 12px;font-size:21px}.visual-setup .connection-current p{color:var(--ui-text);margin:0;font-size:15px;line-height:1.65}.connection-material{border-top:1px solid var(--ui-line);padding-top:16px}.connection-material h3{color:var(--ui-text);margin:0 0 8px;font-size:12px}.visual-setup .connection-material p,.visual-setup .connection-checks p{color:var(--ui-text);font-size:13px;line-height:1.65}.connection-checks{border-top:1px solid var(--ui-line);margin-top:19px;padding-top:16px}.connection-checks summary{color:var(--ui-warning);cursor:pointer;font-size:13px}.connection-footer{border-top:1px solid var(--ui-line);justify-content:space-between;align-items:center;gap:18px;padding:18px 24px;display:flex}.connection-footer strong,.connection-footer span{font-size:13px;display:block}.connection-footer span{color:var(--ui-muted);margin-top:5px;font-size:12px}.connection-other{border-top:1px solid var(--ui-line);padding:15px 24px}.connection-other summary{color:var(--ui-text);cursor:pointer;font-size:13px}.visual-setup .connection-other p{color:var(--ui-text);max-width:1000px;font-size:13px;line-height:1.7}.visual-setup .connection-warning{color:var(--ui-warning);border-bottom:1px solid var(--ui-line);background:#3d33213d;margin:0;padding:14px 24px;font-size:13px;line-height:1.6}@media (width<=1000px){.connection-layout{grid-template-columns:minmax(0,1fr) 285px}.connection-instructions{padding:16px}.connection-endpoints{gap:4px;padding:12px 10px 4px}.visual-setup .connection-endpoints button{gap:6px;padding:8px}.connection-endpoints button strong{font-size:12px}.connection-endpoints button small{font-size:11px}}@media (width<=780px){.connection-layout{grid-template-columns:1fr}.connection-instructions{border-left:0;border-top:1px solid var(--ui-line)}.connection-current{min-height:0}.connection-heading{padding:18px}.connection-navigation{flex-wrap:wrap;gap:10px;padding:0 16px 16px}.connection-navigation label{flex-basis:100%;order:-1;max-width:none}.connection-navigation label>span{display:none}.connection-footer{flex-direction:column;align-items:flex-start;padding:16px}.connection-canvas{height:350px}.connection-view-tools>span{display:none}}.assembly-lesson{border:1px solid var(--ui-line);background:var(--ui-surface);border-radius:14px;overflow:hidden}.assembly-heading{justify-content:space-between;align-items:center;gap:20px;padding:24px 28px;display:flex}.lesson-kicker{color:var(--ui-accent);letter-spacing:.1em;font-size:12px;font-weight:600}.assembly-heading h2{letter-spacing:-.025em;margin:9px 0 0;font-size:clamp(22px,2vw,30px)}.lesson-count{color:var(--ui-accent);text-align:right;font-variant-numeric:tabular-nums;font-size:23px}.lesson-count small{color:var(--ui-muted);margin-top:6px;font-size:12px;display:block}.assembly-layout{border-top:1px solid var(--ui-line);grid-template-columns:minmax(0,1fr) 320px;display:grid}.assembly-viewport{background:var(--ui-surface);isolation:isolate;height:100%;min-height:480px;position:relative;overflow:hidden}.assembly-view-note{pointer-events:none;color:var(--ui-muted);justify-content:space-between;gap:20px;font-size:12px;display:flex;position:absolute;top:20px;left:24px;right:24px}.assembly-feedback{width:fit-content;color:var(--ui-text);border:1px solid var(--ui-line);pointer-events:none;background:#11252deb;border-radius:7px;padding:11px 16px;font-size:14px;position:absolute;bottom:22px;left:24px;right:24px}.assembly-feedback.is-complete{color:var(--ui-accent);border-color:var(--ui-line);background:#14352fec}.assembly-instruction{border-left:1px solid var(--ui-line);flex-direction:column;padding:27px;display:flex}.assembly-instruction h3{letter-spacing:-.02em;margin:12px 0 8px;font-size:23px;font-weight:500;line-height:1.3}.visual-setup .assembly-instruction p{color:var(--ui-text);font-size:16px;line-height:1.6}.assembly-check{border-left:2px solid var(--ui-line);margin:15px 0 24px;padding-left:15px}.assembly-check>span{color:var(--ui-text);font-size:14px}.visual-setup .assembly-check p{color:var(--ui-text);margin:8px 0 0;font-size:14px}.assembly-primary{margin-top:auto}.visual-setup button.lesson-primary{background:var(--ui-selection);border-color:var(--ui-line);width:100%;color:var(--ui-accent);border-radius:7px;justify-content:space-between;padding:14px 17px;font-size:16px;font-weight:600;display:flex}.visual-setup button.lesson-primary:hover:not(:disabled){background:var(--ui-selection);color:var(--ui-accent)}.assembly-primary>span{color:var(--ui-muted);margin-top:12px;font-size:12px;line-height:1.5;display:block}.assembly-reference{color:var(--ui-muted);margin-top:22px;font-size:13px}.assembly-reference summary{cursor:pointer}.assembly-footer{border-top:1px solid var(--ui-line);align-items:center;gap:24px;padding:18px 24px;display:flex}.assembly-footer>div{flex-direction:column;flex:1;gap:6px;display:flex}.assembly-footer strong{color:var(--ui-text);font-size:14px;font-weight:500}.assembly-footer span{color:var(--ui-muted);font-size:13px}.assembly-footer details{color:var(--ui-text);font-size:14px;position:relative}.assembly-footer summary{cursor:pointer}.assembly-footer ol{max-height:230px;padding:0;list-style:none;overflow:auto}.assembly-footer details[open]{flex:1}.assembly-footer ol button{text-align:left;background:0 0;border:0;width:100%}.assembly-footer ol button[aria-current=step]{color:var(--ui-accent)}.visual-setup .guide-journey button{background:0 0;border-width:0 0 2px;border-radius:0;padding:12px 8px}.visual-setup .guide-journey button[aria-current=step]{border-color:var(--ui-line);color:var(--ui-accent);background:0 0}.visual-setup .guide-journey button span{background:var(--ui-surface);border:0}.visual-setup .guide-journey button[aria-current=step] span{background:var(--ui-selection);color:var(--ui-accent)}.setup-files-menu{color:var(--ui-text);margin-top:10px;font-size:14px;position:relative}.setup-files-menu summary{cursor:pointer;padding:8px}.setup-files-menu[open] .setup-file-actions{z-index:40;background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:10px;flex-direction:column;align-items:stretch;min-width:235px;padding:14px;position:absolute;top:36px;right:0;box-shadow:0 16px 45px #0006}@media (width<=850px){.assembly-layout{grid-template-columns:1fr}.assembly-instruction{border-left:0;border-top:1px solid var(--ui-line)}.assembly-viewport{height:420px;min-height:420px}.assembly-heading{padding:20px}.assembly-view-note span:last-child{display:none}.assembly-footer{flex-wrap:wrap;align-items:flex-start}.assembly-footer details[open]{flex-basis:100%}}@media (width<=1100px){.visual-guide{grid-template-columns:minmax(0,1fr) 300px}.guide-inspector{padding:18px}.visual-setup .guide-journey{display:flex;overflow-x:auto}.visual-setup .guide-journey button{min-width:135px}}@media (width<=800px){.visual-guide{grid-template-columns:1fr}.guide-inspector{border-left:0;border-top:1px solid var(--ui-line)}.guide-canvas{height:380px}.visual-setup .setup-navigation>span{display:none}}.procurement-guide{border:1px solid var(--ui-line);background:var(--ui-surface);border-radius:12px;overflow:hidden}.procurement-heading{border-bottom:1px solid var(--ui-line);justify-content:space-between;align-items:center;gap:24px;padding:26px 28px;display:flex}.visual-setup .procurement-heading h2{letter-spacing:-.6px;margin:8px 0;font-size:28px}.visual-setup .procurement-guide p{color:var(--ui-text);margin:10px 0;font-size:16px;line-height:1.55}.procurement-heading>button{flex-shrink:0}.procurement-layout{grid-template-columns:minmax(260px,.8fr) minmax(0,1.5fr);display:grid}.procurement-reference{border-right:1px solid var(--ui-line);background:var(--ui-surface);padding:24px}.procurement-guide label{color:var(--ui-text);flex-direction:column;gap:8px;font-size:14px;display:flex}.procurement-guide select,.procurement-guide input{background:var(--ui-surface);width:100%;min-width:0;color:var(--ui-text);border:1px solid var(--ui-line);font:inherit;border-radius:6px;margin:0;padding:12px}.procurement-canvas{height:290px;margin:16px -10px 0}.visual-setup .procurement-guide .procurement-model-note{color:var(--ui-muted);font-size:12px}.procurement-reference h3{margin:24px 0 8px;font-size:22px}.procurement-reference>label:not(:first-child){margin-top:24px}.procurement-guide details{color:var(--ui-text);margin-top:16px;font-size:14px;line-height:1.6}.procurement-guide summary{cursor:pointer;color:var(--ui-text)}.procurement-guide details[open] summary{margin-bottom:16px}.procurement-guide li{margin:6px 0}.procurement-options{padding:24px}.procurement-options-heading h3{margin:0;font-size:20px}.visual-setup .procurement-options-heading p{margin-bottom:20px;font-size:12px}.procurement-option{border:1px solid var(--ui-line);background:var(--ui-surface);border-radius:9px;margin-top:12px;padding:20px}.procurement-option.is-selected{border-color:var(--ui-line);background:var(--ui-surface)}.procurement-option-title{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.procurement-option-title h4,.procurement-budget h4{margin:0;font-size:18px;font-weight:600}.procurement-route{background:var(--ui-surface);color:var(--ui-text);border-radius:4px;padding:3px 9px;font-size:12px}.route-candidate{background:var(--ui-surface);color:var(--ui-warning)}.route-reuse{background:var(--ui-selection);color:var(--ui-accent)}.procurement-option-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;display:flex}.procurement-option-actions a{color:var(--ui-accent);text-underline-offset:4px;font-size:14px;text-decoration:underline}.procurement-option-actions>span{color:var(--ui-muted);font-size:12px}.visual-setup .procurement-option-actions button{border-radius:6px;padding:10px 14px;font-size:14px}.visual-setup .procurement-option-actions button[aria-pressed=true]{color:var(--ui-accent);border-color:var(--ui-line);background:var(--ui-selection)}.procurement-budget{background:var(--ui-surface);border-radius:8px;margin-top:22px;padding:20px}.procurement-budget>div{grid-template-columns:.8fr 1.2fr;gap:16px;margin-top:16px;display:grid}.visual-setup .procurement-budget p,.visual-setup .procurement-warning{font-size:12px}.visual-setup .procurement-warning{border-left:2px solid var(--ui-line);color:var(--ui-warning);padding:12px}.procurement-footer{border-top:1px solid var(--ui-line);grid-template-columns:1fr 1fr;gap:28px;padding:22px 28px;display:grid}.procurement-footer strong{color:var(--ui-text);font-size:14px;display:block}.procurement-footer span{color:var(--ui-accent);margin-top:8px;font-size:14px;display:block}.procurement-item-nav{border-bottom:1px solid var(--ui-line);background:var(--ui-surface);justify-content:space-between;align-items:center;gap:16px;padding:14px 24px;scroll-margin-top:110px;display:flex}.procurement-item-nav.is-bottom{border-top:1px solid var(--ui-line)}.procurement-item-nav>span{color:var(--ui-muted);text-align:center;font-size:14px}.procurement-item-nav strong{color:var(--ui-text);font-weight:500}.visual-setup .procurement-item-nav button{border-radius:6px;padding:10px 14px;font-size:14px}.robot-kit-intro{border-left:3px solid var(--ui-line);padding:0 0 0 18px}.robot-kit-intro h3{margin:12px 0;font-size:23px;line-height:1.25}.robot-procurement a{color:var(--ui-accent);text-underline-offset:4px;font-size:14px;text-decoration:underline}.robot-procurement-tabs{border-bottom:1px solid var(--ui-line);gap:8px;margin:24px 0 18px;padding-bottom:12px;display:flex}.visual-setup .robot-procurement-tabs button{border-radius:6px;flex:1;padding:12px;font-size:14px}.visual-setup .robot-procurement-tabs button[aria-pressed=true]{background:var(--ui-selection);border-color:var(--ui-line);color:var(--ui-accent)}.robot-kit-progress{flex-wrap:wrap;align-items:center;gap:8px 18px;font-size:14px;display:flex}.robot-kit-progress span{color:var(--ui-muted);font-size:12px}.visual-setup .robot-procurement .robot-spec-conflict{background:var(--ui-surface);color:var(--ui-warning);border-radius:6px;margin:16px 0;padding:12px 16px;font-size:14px}.robot-kit-item{border-bottom:1px solid var(--ui-line);padding:18px 0}.robot-kit-item>header{align-items:flex-start;gap:12px;display:flex}.robot-kit-item>header>div{flex:1;min-width:0}.robot-kit-item h4{margin:0 0 6px;font-size:17px;line-height:1.3}.robot-kit-item>header>div>span{color:var(--ui-text);font-size:12px}.robot-part-number{color:var(--ui-accent);padding-top:2px;font-family:monospace;font-size:13px}.robot-kit-item>header>label{flex-shrink:0;width:125px}.robot-kit-item select{padding:9px;font-size:12px}.visual-setup .robot-kit-item>p{margin-bottom:0;font-size:14px}.robot-kit-item.has-conflict h4{color:var(--ui-warning)}.robot-part-links{flex-wrap:wrap;gap:8px 16px;margin:12px 0 16px;display:flex}.visual-setup .robot-review-kit{width:100%;color:var(--ui-accent);border-radius:6px;margin-top:20px;padding:12px}.visual-setup .robot-procurement .robot-comparison-note{font-size:14px}.platform-comparison{grid-template-columns:1fr 1fr;gap:12px;margin:16px 0;font-size:14px;display:grid}.platform-comparison>div:last-child{grid-column:1/-1}.platform-comparison dt{color:var(--ui-muted);margin-bottom:4px;font-size:12px}.platform-comparison dd{color:var(--ui-text);margin:0;line-height:1.5}@media (width>=851px){.procurement-reference{align-self:start;position:sticky;top:105px}}@media (width<=600px){.procurement-item-nav{flex-wrap:wrap;gap:8px;padding:12px}.procurement-item-nav>span{flex-basis:100%;order:-1}.robot-kit-item>header{flex-wrap:wrap}.robot-kit-item>header>label{width:100%;margin-left:28px}.robot-procurement-tabs{flex-direction:column}.platform-comparison{grid-template-columns:1fr}}.visual-setup .procurement-footer p{margin-bottom:0;font-size:12px}@media (width<=850px){.procurement-layout,.procurement-footer,.procurement-budget>div{grid-template-columns:1fr}.procurement-reference{border-right:0;border-bottom:1px solid var(--ui-line)}.procurement-heading{flex-direction:column;align-items:flex-start;padding:22px}.procurement-canvas{height:240px}}.system-profile{border:1px solid var(--ui-line);background:var(--ui-surface);color:var(--ui-text);margin:12px 0 20px;padding:14px 18px}.system-profile>div{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.system-profile label{align-items:center;gap:12px;font-size:14px;display:flex}.system-profile select{background:var(--ui-surface);color:var(--ui-text);border:1px solid var(--ui-line);max-width:100%;padding:8px}.system-profile p{color:var(--ui-muted);font-size:12px}.system-profile summary{cursor:pointer;margin-top:8px;font-size:13px}.profile-evidence{grid-template-columns:1fr 1fr;gap:24px;line-height:1.65;display:grid}.profile-evidence ul{padding-left:20px;font-size:14px}.profile-evidence a,.commissioning-guide a{color:var(--ui-accent);text-decoration:underline}.commissioning-guide .software-device-canvas{min-height:340px}.commissioning-guide textarea{background:var(--ui-surface);color:var(--ui-text);border:1px solid var(--ui-line);resize:vertical;padding:12px}.handshake-track{align-items:center;gap:10px;margin:16px 0;display:flex}.handshake-track span{border:1px solid var(--ui-line);text-align:center;flex:1;padding:14px 8px;font-size:13px}.handshake-track.waiting span:nth-of-type(2){border-color:var(--ui-line);background:var(--ui-purple-bg)}.handshake-track.completed span,.handshake-track.timeout span,.handshake-track.unsafe-completion span{border-color:var(--ui-line)}.ttl-exercise{border-top:1px solid var(--ui-line);margin-top:22px;padding-top:16px}@media (width<=700px){.profile-evidence{grid-template-columns:1fr}.system-profile label{flex-wrap:wrap}}.app-shell{grid-template-rows:60px 38px minmax(0,1fr) 160px}.app-shell.asset-mode{grid-template-rows:60px 38px minmax(0,1fr)}.device-connections{z-index:65;border-bottom:1px solid var(--line);background:#0a1821;min-width:0;position:relative}.connections-summary{color:#a7bdc9;cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:12px;width:100%;height:37px;padding:0 24px;font-size:12px;display:flex}.connections-summary strong{color:#d8e6ed;white-space:nowrap;font-weight:600}.connections-summary b{color:#9cdbc9;white-space:nowrap;margin-left:auto;font-weight:500}.connection-light{background:#78909d;border-radius:50%;flex:0 0 7px;width:7px;height:7px}.online .connection-light{background:#78dfca}.offline .connection-light,.error .connection-light{background:#eca66f}.connections-details{background:#0d1d27;border:1px solid #35505f;border-radius:0 0 10px 10px;width:min(920px,100vw - 32px);max-height:calc(100dvh - 120px);padding:22px;position:absolute;top:38px;right:16px;overflow-y:auto;box-shadow:0 18px 60px #0009}.connections-details header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.connections-details h2{margin:0 0 6px;font-size:20px}.connections-details header p{color:#9bb4c3;margin:0;font-size:12px}.connections-details button{color:#d8e9f2;cursor:pointer;background:#122b37;border:1px solid #36505e;border-radius:4px;padding:8px 12px}.connections-details button:disabled{opacity:.5;cursor:default}.connections-details header button{font-size:20px;line-height:1}.connections-context{color:#c3d5e0;flex-direction:column;gap:5px;padding:14px 0;font-size:13px;display:flex}.connections-context small{color:#89a3b3}.connections-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.connection-device{background:#10232f;border:1px solid #2c4250;border-radius:6px;padding:12px}.connection-device h3{color:#e1edf3;margin:0 0 8px;font-size:13px}.connection-device span{color:#b1a2e5;border:1px solid #655381;border-radius:4px;padding:3px 6px;font-size:11px;display:inline-block}.connection-device.not-integrated span,.connection-device.disabled span{color:#e3b38f;border-color:#725744}.connection-device.manual-check span,.connection-device.unknown span{color:#a3b7c2;border-color:#475d6b}.connection-device p{color:#b1c4cf;margin:10px 0;font-size:12px;line-height:1.5}.connection-device small{color:#92aab9;font-size:11px;line-height:1.5;display:block}.connections-footnote{color:#b7c6d0;margin:14px 0;font-size:12px;line-height:1.6}.connections-details footer{flex-wrap:wrap;align-items:flex-start;gap:10px;display:flex}.connections-details details{color:#a9c2d1;padding:8px;font-size:12px}.connections-details details code{color:#88d8c6;margin-top:10px;display:block}@media (width<=760px){.connections-grid{grid-template-columns:1fr}.connections-summary{gap:8px;padding:0 12px;font-size:11px}.connections-summary>span:not(.connection-light){display:none}.connections-details{padding:16px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
