.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#555;--xy-background-pattern-lines-color-default:#333;--xy-background-pattern-cross-color-default:#333;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;--accent:#debd43;--accent-bright:#e0c424;--base:#474747;--chrome:#303030;--surface:#393939;--surface-raised:#555;--surface-input:#5a5a5a;--surface-deep:#292929;--border:#333;--border-dark:#2e2e2e;--text:#e6e6e6;--text-soft:#ccc;--text-muted:#9b9b9b;--text-disabled:#6e6e6e;--success:#74b477;--danger:#d84129;--info:#9cf;--node-selected:#ffa637;--shadow-menu:0 12px 32px #00000061;font-family:Segoe UI,Inter,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}body{background:var(--chrome);min-width:1024px;min-height:640px;color:var(--text);font-size:12px;overflow:hidden}button,input,select{font:inherit;color:inherit}button{cursor:pointer;border:0}button:disabled{cursor:default}button,input,select{outline:none}:focus-visible{outline:1px solid var(--accent);outline-offset:-1px}::selection{color:#313131;background:var(--accent)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#393939}::-webkit-scrollbar-thumb{background:#666;border:2px solid #393939}::-webkit-scrollbar-thumb:hover{background:#828282}.brand{-webkit-user-select:none;user-select:none;align-items:center;gap:12px;display:inline-flex}.brand__mark{width:42px;height:42px;fill:var(--accent);filter:drop-shadow(0 0 14px #debd4326);overflow:visible}.brand__mark circle{fill:#303030}.brand__wordmark{color:#fff;letter-spacing:-.035em;flex-direction:column;font-size:23px;font-weight:600;line-height:1;display:flex}.brand__wordmark small{color:var(--accent);letter-spacing:.34em;margin-top:5px;font-size:8px;font-weight:700}.brand--compact .brand__mark{width:20px;height:20px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.session-screen{isolation:isolate;background:#252525;grid-template-columns:minmax(390px,42%) 1fr;width:100%;height:100%;display:grid;position:relative;overflow:hidden}.session-screen__ambient{z-index:-1;background:radial-gradient(circle at 18% 38%,#debd4312,#0000 28%),linear-gradient(120deg,#272727 0 42%,#313131 42% 100%);position:absolute;inset:0}.session-loading{flex-direction:column;grid-column:1/-1;place-self:center;align-items:center;animation:.55s both session-enter;display:flex}.session-loading .brand__mark{width:58px;height:58px}.session-loading .brand__wordmark{font-size:30px}.session-loading__rule{background:#3d3d3d;width:226px;height:1px;margin:34px 0 19px;overflow:hidden}.session-loading__rule span{background:var(--accent);width:42%;height:100%;animation:1.35s cubic-bezier(.6,0,.35,1) infinite loading-rule;display:block}.session-loading p{color:#ddd;margin:0;font-size:13px}.session-loading__detail{color:#777;letter-spacing:.06em;margin-top:8px;font-size:10px}.sign-in-panel{flex-direction:column;justify-content:center;align-self:stretch;min-width:0;padding:clamp(48px,7vw,108px);animation:.55s both session-enter;display:flex}.sign-in-panel .brand{position:absolute;top:44px}.sign-in-panel__heading{max-width:430px}.eyebrow{color:var(--accent);letter-spacing:.22em;font-size:9px;font-weight:700}.sign-in-panel h1{color:#f2f2f2;letter-spacing:-.045em;max-width:420px;margin:18px 0 16px;font-size:clamp(32px,3.4vw,48px);font-weight:540;line-height:1.07}.sign-in-panel__heading p{color:#aaa;max-width:410px;margin:0;font-size:13px;line-height:1.65}.primary-action{background:var(--accent);color:#373737;justify-content:space-between;align-items:center;width:min(100%,410px);margin-top:32px;padding:13px 15px 13px 17px;font-weight:650;transition:background .16s,transform .16s;display:flex}.primary-action:hover{background:#ecd35c;transform:translateY(-1px)}.sign-in-panel__trust{color:#777;gap:22px;margin-top:18px;font-size:10px;display:flex}.sign-in-panel__trust span{align-items:center;gap:6px;display:inline-flex}.session-error{border-left:2px solid var(--danger);color:#e8b6ae;background:#d8412917;align-items:center;gap:9px;width:min(100%,410px);margin-top:22px;padding:10px 12px;display:flex}.sign-in-visual{border-left:1px solid #393939;position:relative;overflow:hidden}.visual-grid{opacity:.34;background-image:linear-gradient(#444 1px,#0000 1px),linear-gradient(90deg,#444 1px,#0000 1px);background-size:20px 20px;position:absolute;inset:0}.sign-in-visual:after{content:"";background:radial-gradient(circle at 52% 46%,#0000 0 28%,#202020c7 75%);position:absolute;inset:0}.sign-in-visual svg{z-index:1;width:100%;height:100%;position:absolute;inset:0}.sign-in-visual path{fill:none;stroke:#aaa;stroke-width:2px;opacity:.55}.visual-node{z-index:2;background:#212121f0;border:1px solid #222;border-radius:6px;flex-direction:column;width:154px;padding:0 12px 12px;animation:5s ease-in-out infinite node-float;display:flex;position:absolute;box-shadow:0 16px 34px #0000004d}.visual-node:before{content:"";background:#313131;border-radius:5px 5px 0 0;height:22px;margin:0 -12px 10px}.visual-node i{background:var(--accent);border-radius:50%;width:7px;height:7px;position:absolute;top:8px;left:10px}.visual-node b{color:#e9e9e9;font-size:11px}.visual-node span{color:#888;margin-top:5px;font-size:9px}.visual-node--one{top:38%;left:8%}.visual-node--two{animation-delay:-.8s;top:29%;left:45%}.visual-node--three{animation-delay:-1.6s;top:51%;right:4%}.visual-node--three span{color:#91cb94}@keyframes loading-rule{0%{transform:translate(-110%)}to{transform:translate(350%)}}@keyframes session-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes node-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.studio-app{background:var(--base);grid-template-rows:29px 36px minmax(0,1fr) 22px;width:100%;height:100%;display:grid;position:relative;overflow:hidden}.menu-bar{z-index:50;background:var(--chrome);-webkit-user-select:none;user-select:none;border-bottom:1px solid #282828;align-items:stretch;min-width:0;display:flex;position:relative}.menu-bar__brand{border-right:1px solid #262626;place-items:center;width:34px;display:grid}.menu-bar__menus{align-items:stretch;display:flex}.menu{position:relative}.menu__trigger{color:#ddd;background:0 0;height:100%;padding:0 9px;font-size:11px}.menu__trigger:hover,.menu__trigger.is-open{color:#fff;background:#696500}.menu__popover{border:1px solid var(--border-dark);background:var(--base);width:225px;box-shadow:var(--shadow-menu);padding:4px 0;animation:.1s ease-out menu-in;position:absolute;top:100%;left:0}.menu__item{color:#eee;text-align:left;background:0 0;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;width:100%;padding:6px 12px 6px 7px;font-size:11px;display:grid}.menu__item:hover{background:#616161}.menu__item:focus-visible{outline:1px solid var(--accent);outline-offset:-1px;background:#616161}.menu__item.has-divider{border-top:1px solid var(--border-dark);margin-top:5px;padding-top:9px}.menu__check{color:#eee;font-size:10px}.menu__label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.menu__item kbd{color:#aaa;font:9px Segoe UI,sans-serif}.menu__item:disabled{color:var(--text-disabled)}.menu-bar__document{color:#8f8f8f;pointer-events:none;flex:1;justify-content:center;align-items:center;min-width:0;margin-left:14px;font-size:10px;display:flex}.menu-bar__document span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cloud-state{color:#858585;align-items:center;gap:5px;padding:0 9px;font-size:9px;display:flex}.profile-menu{position:relative}.profile-menu__trigger{color:#ccc;background:0 0;align-items:center;gap:6px;height:100%;padding:0 8px;font-size:10px;display:flex}.profile-menu__trigger:hover{background:#454545}.avatar{color:#f3dc78;background:#6a5e31;border-radius:50%;place-items:center;width:20px;height:20px;font-size:8px;font-weight:700;display:grid}.profile-menu__popover{border:1px solid var(--border-dark);background:var(--base);width:218px;box-shadow:var(--shadow-menu);padding:6px;position:absolute;top:calc(100% + 1px);right:2px}.profile-menu__identity{border-bottom:1px solid #383838;gap:9px;padding:9px 8px 12px;display:flex}.profile-menu__identity>span{flex-direction:column;min-width:0;display:flex}.profile-menu__identity b{font-size:11px}.profile-menu__identity small{color:#999;text-overflow:ellipsis;margin-top:3px;font-size:9px;overflow:hidden}.profile-menu__popover>button{color:#ddd;text-align:left;background:0 0;gap:8px;width:100%;margin-top:5px;padding:7px 8px;display:flex}.profile-menu__popover>button:hover{background:#5a5a5a}.studio-toolbar{background:#3a3a3a;border-bottom:1px solid #282828;align-items:stretch;display:flex}.studio-toolbar__tools{align-items:center;width:100%;padding:3px 5px;display:flex}.tool-button{color:#c8c8c8;background:0 0;border:1px solid #0000;border-radius:2px;place-items:center;width:28px;height:27px;margin-right:1px;display:grid}.tool-button:hover:not(:disabled),.tool-button.is-active{color:#fff;background:#4d4d4d;border-color:#555}.tool-button:disabled{color:#686868}.tool-button--run{color:#91c791}.tool-button--stop{color:#d47e70}.toolbar-divider{background:#292929;width:1px;height:21px;margin:0 5px;box-shadow:1px 0 #505050}.runtime-led{place-items:center;width:22px;height:22px;display:grid}.runtime-led i{background:#777;border:1px solid #2b2b2b;border-radius:50%;width:7px;height:7px;box-shadow:inset 0 0 0 1px #ffffff1a}.runtime-led--idle i{background:#b9a54c}.runtime-led--running i{background:#71b474;animation:1.8s ease-out infinite live-pulse;box-shadow:0 0 0 4px #71b4741a}.runtime-led--stopping i{background:#d9a85d}.runtime-led--offline i{background:#8b6262}.studio-toolbar__spacer{flex:1}.studio-layout{grid-template-columns:0 minmax(0, 1fr) var(--right-dock-width,320px);min-height:0;display:grid;position:relative;overflow:hidden}.studio-layout.is-workspace-open{grid-template-columns:var(--left-dock-width,240px) minmax(0, 1fr) var(--right-dock-width,320px)}.studio-layout.is-blocks-closed{grid-template-columns:0 minmax(0,1fr) 0}.studio-layout.is-workspace-open.is-blocks-closed{grid-template-columns:var(--left-dock-width,240px) minmax(0, 1fr) 0}.workspace-dock,.catalog-dock{background:var(--base);min-width:0;min-height:0}.workspace-dock{border-right:2px solid #2f2f2f;flex-direction:column;display:flex}.catalog-dock{border-left:2px solid #2f2f2f;flex-direction:column;display:flex}.dock-resize-handle{z-index:40;-webkit-user-select:none;user-select:none;touch-action:none;border:0;outline:0;position:absolute}.dock-resize-handle--horizontal{cursor:col-resize;width:9px;top:0;bottom:0}.dock-resize-handle--horizontal:after{content:"";background:0 0;width:1px;transition:background .12s;position:absolute;top:0;bottom:0;left:4px}.dock-resize-handle--horizontal:hover:after,.dock-resize-handle--horizontal:focus-visible:after{background:var(--accent)}.dock-resize-handle--left{left:calc(var(--left-dock-width,240px) - 4px)}.dock-resize-handle--right{right:calc(var(--right-dock-width,320px) - 4px)}.dock-resize-handle--vertical{right:0;bottom:calc(var(--log-dock-height,180px) - 4px);cursor:row-resize;height:9px;left:0}.dock-resize-handle--vertical:after{content:"";background:0 0;height:1px;transition:background .12s;position:absolute;bottom:4px;left:0;right:0}.dock-resize-handle--vertical:hover:after,.dock-resize-handle--vertical:focus-visible:after{background:var(--accent)}.dock-title{background:var(--chrome);color:#ddd;justify-content:space-between;align-items:center;min-height:28px;padding:0 7px;font-weight:600;display:flex}.dock-title>div{display:flex}.dock-title button,.edge-summary button{color:#aaa;background:0 0;place-items:center;width:21px;height:21px;display:grid}.dock-title button:hover,.edge-summary button:hover{color:#fff;background:#4c4c4c}.workspace-switcher{border-bottom:1px solid #3a3a3a;grid-template-columns:1fr;padding:5px 6px;display:grid}.workspace-switcher button{color:#999;background:0 0;border-bottom:1px solid #0000;justify-content:center;align-items:center;gap:5px;padding:6px;font-size:10px;display:flex}.workspace-switcher button.is-active{border-bottom-color:var(--accent);color:#e1e1e1}.workspace-switcher span{border-bottom:1px solid var(--accent);color:#e1e1e1;align-items:center;gap:5px;padding:6px;font-size:10px;display:flex}.operation-banner{z-index:70;color:#f0c0b7;background:#513a36;border:1px solid #73463f;align-items:center;gap:12px;max-width:min(680px,100% - 32px);padding:7px 9px 7px 11px;font-size:10px;display:flex;position:absolute;top:70px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0000004d}.operation-banner span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.operation-banner button{color:#f7d6d0;background:#68453f;border:1px solid #86564e;padding:3px 6px;font-size:9px}.project-tree{flex:1;padding-top:3px;overflow:auto}.tree-row{color:#c7c7c7;text-align:left;background:0 0;align-items:center;gap:5px;width:100%;height:26px;padding:0 7px 0 12px;font-size:10px;display:flex}.tree-row:hover{background:#515151}.tree-row.is-selected{color:#fff;background:linear-gradient(90deg,#333,#474747)}.tree-row.is-selected:before{content:"";background:var(--accent);width:2px;height:26px;position:absolute;left:0}.tree-row span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tree-row i{color:var(--accent);margin-left:auto;font-size:6px}.tree-row--root{padding-left:6px;font-weight:600}.tree-children{padding-left:10px;position:relative}.tree-children:before{content:"";background:#3b3b3b;width:1px;position:absolute;top:0;bottom:0;left:14px}.project-empty{color:#888;justify-items:start;gap:7px;padding:12px 9px;font-size:9px;display:grid}.project-empty button,.project-create button{color:#ccc;background:#4a4a4a;border:1px solid #292929;padding:4px 7px;font-size:8px}.project-create{background:#3a3a3a;border:1px solid #2d2d2d;margin:6px;padding:7px}.project-create input{color:#eee;background:#2d2d2d;border:1px solid #292929;width:100%;height:25px;padding:0 6px;font-size:9px}.project-create>div{justify-content:flex-end;gap:4px;margin-top:5px;display:flex}.project-create p{color:#e0a19a;margin:5px 0 0;font-size:8px}.project-list{border-top:1px solid #3a3a3a;margin-top:4px}.project-list button{color:#999;text-align:left;background:0 0;align-items:center;gap:5px;width:100%;padding:6px 9px;font-size:9px;display:flex}.project-list button:hover{color:#ddd;background:#4a4a4a}.edge-summary{background:#404040;border-top:1px solid #2d2d2d}.edge-summary__heading{color:#8e8e8e;letter-spacing:.12em;justify-content:space-between;align-items:center;height:26px;padding-left:8px;font-size:8px;font-weight:700;display:flex}.edge-summary__device{align-items:center;gap:8px;padding:7px 8px 5px;display:flex}.device-icon{color:#bbb;background:#343434;place-items:center;width:27px;height:27px;display:grid}.edge-summary__device>span:last-child{flex-direction:column;display:flex}.edge-summary__device b{color:#ddd;font-size:10px}.edge-summary__device small{color:#979797;align-items:center;gap:4px;margin-top:3px;font-size:8px;display:flex}.edge-summary__device small i{background:#777;border-radius:50%;width:5px;height:5px}.edge-summary__device small i.is-online{background:#70b573}.edge-summary dl{margin:4px 8px 8px 43px}.edge-summary dl>div{justify-content:space-between;margin-top:3px;display:flex}.edge-summary dt,.edge-summary dd{color:#888;margin:0;font-size:8px}.edge-summary dd{color:#b4b4b4}.edge-summary__actions,.edge-summary__empty{color:#999;justify-content:space-between;align-items:center;gap:5px;padding:3px 8px 8px;font-size:9px;display:flex}.edge-summary__actions button,.edge-summary__empty button,.edge-pairing button{color:#ccc;background:#4a4a4a;border:1px solid #292929;width:auto;height:22px;padding:0 7px;font-size:8px;display:inline-flex}.edge-summary__actions button:hover,.edge-summary__empty button:hover,.edge-pairing button:hover{background:#555}.edge-summary__error{color:#e0a19a;margin:0;padding:0 8px 7px;font-size:8px}.edge-pairing{background:#373737;border:1px solid #2d2d2d;margin:0 7px 8px;padding:7px}.edge-pairing label{color:#aaa;margin-bottom:5px;font-size:8px;display:block}.edge-pairing input{color:#eee;letter-spacing:.09em;background:#2d2d2d;border:1px solid #272727;width:100%;height:25px;padding:0 7px;font:600 11px/1 monospace}.edge-pairing p{color:#e0a19a;margin:5px 0 0;font-size:8px}.edge-pairing>div{justify-content:flex-end;gap:5px;margin-top:6px;display:flex}.is-spinning{animation:.8s linear infinite edge-spin}@keyframes edge-spin{to{transform:rotate(360deg)}}.document-area{background:var(--surface);grid-template-rows:23px minmax(0,1fr) auto;min-width:0;min-height:0;display:grid;position:relative;overflow:hidden}.document-surface{min-width:0;min-height:0;position:relative;overflow:hidden}.studio-welcome{background:radial-gradient(circle at 50% 40%,#505050 0,#474747 44%,#3d3d3d 100%);place-items:center;height:100%;display:grid}.studio-welcome>div{text-align:center;background:#3d3d3d;border:1px solid #606060;width:min(360px,100% - 48px);padding:28px;box-shadow:0 18px 42px #1e1e1e77}.studio-welcome h1{color:#eee;margin:0;font-size:20px;font-weight:500}.studio-welcome p{color:#bcbcbc;margin:10px 0 20px;font-size:11px}.studio-welcome button{color:#fff;background:#5b522f;border:1px solid #948041;min-height:28px;padding:0 13px;font-size:10px}.studio-welcome button:hover{background:#74663a}.studio-runtime-gate{color:#d8d8d8;text-align:center;background:#343434;flex-direction:column;justify-content:center;align-items:center;height:100%;display:flex}.studio-runtime-gate__mark{width:44px;height:44px;color:var(--accent);background:#3d3929;border:1px solid #716530;place-items:center;font-size:24px;font-weight:750;display:grid}.studio-runtime-gate h1{margin:14px 0 0;font-size:15px;font-weight:550}.studio-runtime-gate p{color:#9f9f9f;max-width:360px;margin:7px 24px 15px;font-size:10px;line-height:1.5}.studio-runtime-gate button{color:#fff;background:#5b522f;border:1px solid #8d7938;min-height:28px;padding:0 13px;font-size:9px}.studio-runtime-gate button:hover:not(:disabled){background:#74663a}.studio-runtime-gate button:disabled{opacity:.55}.studio-runtime-gate__progress{color:#aaa;align-items:center;gap:7px;font-size:9px;display:inline-flex}.studio-runtime-gate__progress i{border:1px solid #787878;border-top-color:var(--accent);border-radius:50%;width:7px;height:7px;animation:.8s linear infinite edge-spin}.mdi-tabs{background:var(--chrome);align-items:stretch;height:23px;display:flex;overflow:hidden}.mdi-tab{color:#aaa;background:#333;border-right:1px solid #292929;align-items:stretch;min-width:148px;max-width:210px;display:flex;position:relative}.mdi-tab:hover{background:#3a3a3a}.mdi-tab.is-active{background:var(--base);color:#eee}.mdi-tab.is-active:before{content:"";background:var(--accent);height:1px;position:absolute;top:0;left:0;right:0}.mdi-tab>[role=tab]{min-width:0;color:inherit;text-align:left;flex:1;align-items:center;gap:6px;padding:0 3px 0 9px;font-size:9px;display:flex}.mdi-tab>[role=tab] span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mdi-tabs__close{width:23px;color:inherit;opacity:.5;place-items:center;display:grid}.mdi-tabs__close:hover{color:#fff;opacity:1;background:#5a4240}.mdi-tabs__view{color:#d8bf60;letter-spacing:.04em;text-transform:uppercase;border-left:1px solid #292929;align-items:center;padding:0 9px;font-size:8px;font-weight:700;display:flex}.mdi-tabs__fill{border-bottom:1px solid #383838;flex:1}.dock-tabs{background:var(--chrome);grid-template-columns:1fr 1fr;height:28px;display:grid}.dock-tabs button{color:#999;background:0 0;border-bottom:1px solid #292929;font-size:10px;font-weight:600}.dock-tabs button:hover{background:#3c3c3c}.dock-tabs button.is-active{border-bottom:2px solid var(--accent);color:#eee;background:#383838}.catalog-search{color:#929292;background:#3e3e3e;border:1px solid #3a3a3a;align-items:center;gap:6px;margin:7px;padding:0 7px;display:flex}.catalog-search:focus-within{border-color:#786b39}.catalog-search input{color:#ddd;background:0 0;border:0;flex:1;min-width:0;height:26px;font-size:10px}.catalog-search input::placeholder{color:#828282}.catalog-search button{color:#999;background:0 0;place-items:center;padding:0;display:grid}.catalog-tree{flex:1;min-height:0;overflow:auto}.catalog-group{border-bottom:1px solid #393939}.catalog-group__title{color:#d2d2d2;text-align:left;background:#434343;align-items:center;gap:5px;width:100%;height:27px;padding:0 7px;font-size:9px;font-weight:600;display:flex}.catalog-group__title:hover{background:#4b4b4b}.catalog-group__title span{flex:1}.catalog-group__title small{color:#858585;font-size:8px;font-weight:500}.catalog-group__nodes{padding:2px 0}.catalog-node{color:#ccc;text-align:left;background:0 0;align-items:center;gap:6px;width:100%;min-height:31px;padding:4px 7px 4px 3px;display:flex}.catalog-node:hover:not(:disabled){background:#555}.catalog-node:disabled{opacity:.38}.catalog-node__grip{color:#707070}.catalog-node>i{opacity:.88;border-radius:1px;width:5px;height:19px}.catalog-node>span{flex-direction:column;flex:1;min-width:0;display:flex}.catalog-node b{font-size:9px;font-weight:600}.catalog-node small{color:#898989;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:7px;overflow:hidden}.catalog-empty{color:#888;text-align:center;margin:24px 14px;font-size:10px}.catalog-footer{color:#888;background:#404040;border-top:1px solid #333;justify-content:space-between;align-items:center;height:28px;padding:0 8px;font-size:8px;display:flex}.catalog-footer button{color:#c9c9c9;background:#4d4d4d;padding:3px 7px;font-size:8px}.inspector-empty{color:#777;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:20px;display:flex}.inspector-empty b{color:#aaa;margin-top:12px;font-size:11px}.inspector-empty span{max-width:170px;margin-top:5px;font-size:9px;line-height:1.5}.inspector-panel{flex:1;min-height:0;overflow:auto}.inspector-node-heading{background:#414141;border-bottom:1px solid #333;align-items:center;gap:8px;padding:9px 8px;display:flex}.inspector-node-heading>i{width:4px;height:29px}.inspector-node-heading>span{flex-direction:column;flex:1;min-width:0;display:flex}.inspector-node-heading b{font-size:10px}.inspector-node-heading small{color:#8d8d8d;margin-top:3px;font-size:8px}.inspector-node-heading button{color:#999;background:0 0}.inspector-panel section{border-bottom:1px solid #393939;padding:0 8px 8px}.inspector-panel h3{color:#aaa;letter-spacing:.09em;text-transform:uppercase;margin:9px 0 6px;font-size:8px}.inspector-panel label{color:#a8a8a8;grid-template-columns:72px minmax(0,1fr);align-items:center;min-height:27px;font-size:9px;display:grid}.inspector-panel label>input{color:#e0e0e0;background:#555;border:0;border-bottom:1px solid #343434;width:100%;height:21px;padding:0 5px}.inspector-panel label>b,.inspector-panel label>span:last-child{color:#d0d0d0;font-weight:500}.read-only-value{align-items:center;gap:3px;display:flex;overflow:hidden;color:#999!important}.read-only-value button{color:#999;background:0 0;margin-left:auto}.runtime-value{text-transform:capitalize;color:#9dcc9f!important}.inspector-switch{background:#555;border-radius:10px;width:25px;height:13px;padding:2px}.inspector-switch i{background:#aaa;border-radius:50%;width:9px;height:9px;display:block}.inspector-panel section p{color:#888;gap:6px;margin:4px 0;font-size:8px;line-height:1.45;display:flex}.scene-validation{border-bottom:1px solid #393939;padding:0 8px 9px}.scene-validation__controls{grid-template-columns:minmax(0,1fr) auto;gap:5px;display:grid}.scene-validation__controls select,.scene-validation__controls button{color:#d9d9d9;background:#363636;border:1px solid #4b4b4b;min-width:0;height:23px;font-size:8px}.scene-validation__controls button:hover:not(:disabled){border-color:var(--accent);background:#4a4329}.scene-validation__controls button:disabled,.scene-validation__controls select:disabled{opacity:.48}.scene-validation__status{border:1px solid #555;justify-content:space-between;align-items:center;margin-top:8px;padding:4px 5px;font-size:8px;display:flex}.scene-validation__status.is-valid{color:#8ed49a;border-color:#4d8256}.scene-validation__status.is-invalid{color:#ed9797;border-color:#924e4e}.scene-validation__counts{grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;margin:7px 0;display:grid}.scene-validation__counts div{background:#303030;padding:4px}.scene-validation dt{color:#888;font-size:7px}.scene-validation dd{color:#ddd;margin:2px 0 0;font-size:10px}.scene-validation ul{gap:4px;margin:7px 0;padding:0;list-style:none;display:grid}.scene-validation li{color:#bbb;overflow-wrap:anywhere;grid-template-columns:34px minmax(0,1fr);gap:4px;font-size:8px;display:grid}.scene-validation li b{text-transform:uppercase;font-size:7px}.scene-validation li.is-error b{color:#ed9797}.scene-validation li.is-warning b{color:#dfc776}.scene-validation li code{color:#aaa;margin-bottom:2px;font:7px ui-monospace,SFMono-Regular,Consolas,monospace;display:block}.scene-validation__failure{color:#ed9797!important}.scene-validation__recommendations li{border-left:2px solid #6c5b2b;padding-left:8px;display:block}.log-dock{height:var(--log-dock-height,180px);background:var(--surface-deep);border-top:2px solid #2f2f2f;min-height:120px}.log-dock__header{background:var(--chrome);border-bottom:1px solid #373737;align-items:center;height:27px;padding-left:7px;display:flex}.log-dock__header>span{color:#ddd;width:50px;font-size:10px;font-weight:600}.log-dock__tabs{align-self:stretch;display:flex}.log-dock__tabs button{color:#8d8d8d;background:0 0;border-bottom:1px solid #0000;padding:0 8px;font-size:8px}.log-dock__tabs button.is-active{border-bottom-color:var(--accent);color:#ddd}.log-dock__tabs b{background:#484848;border-radius:5px;margin-left:3px;padding:0 3px;font-size:7px}.log-dock__header label{color:#888;background:#3d3d3d;align-items:center;gap:4px;width:130px;height:20px;margin-left:auto;padding:0 5px;display:flex}.log-dock__header input{background:0 0;border:0;width:100%;min-width:0;font-size:8px}.log-dock__header>button{color:#999;background:0 0;justify-content:center;align-items:center;gap:1px;width:25px;height:24px;display:flex}.log-dock__header>button:hover{color:#ddd;background:#474747}.log-rows{height:calc(100% - 27px);padding:3px 0;font-family:Cascadia Mono,Consolas,monospace;font-size:8px;overflow:auto}.log-row{color:#bbb;grid-template-columns:74px 42px 60px 1fr;align-items:center;min-height:20px;padding:0 8px;display:grid}.log-row:hover{background:#333}.log-row time{color:#777}.log-level{font-size:7px}.log-level--info{color:#8fb7db}.log-level--debug{color:#8a8a8a}.log-level--warn{color:#dbbf66}.log-level--error{color:#d77362}.log-scope{color:#8f8f8f}.log-empty{color:#777;text-align:center}.status-bar{background:var(--base);color:#aaa;-webkit-user-select:none;user-select:none;border-top:1px solid #353535;align-items:center;min-width:0;font-size:8px;display:flex}.status-bar>span{white-space:nowrap;border-right:1px solid #3a3a3a;align-items:center;gap:4px;height:100%;padding:0 7px;display:flex}.status-bar>span:hover{background:#555}.status-bar__spacer{flex:1;border:0!important}.online-dot{background:#6fb573;border-radius:50%;width:5px;height:5px}.update-toast{z-index:100;border:1px solid #676043;border-left:2px solid var(--accent);background:#383838;align-items:center;gap:10px;width:390px;padding:10px;animation:.24s ease-out toast-in;display:flex;position:fixed;bottom:34px;right:286px;box-shadow:0 13px 35px #0006}.update-toast__icon{width:30px;height:30px;color:var(--accent);background:#debd431a;place-items:center;display:grid}.update-toast>span:nth-child(2){flex-direction:column;flex:1;min-width:0;display:flex}.update-toast b{font-size:10px}.update-toast small{color:#989898;margin-top:3px;font-size:8px}.update-toast__reload{background:var(--accent);color:#3f3f3f;padding:6px 8px;font-size:8px;font-weight:650}.update-toast__close{color:#888;background:0 0;align-self:flex-start;padding:0}@keyframes menu-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}@keyframes live-pulse{0%{box-shadow:0 0 #71b47459}70%,to{box-shadow:0 0 0 5px #71b47400}}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1180px){.studio-layout{grid-template-columns:0 minmax(0, 1fr) max(220px, min(var(--right-dock-width,244px), 300px))}.studio-layout.is-workspace-open{grid-template-columns:max(164px, min(var(--left-dock-width,184px), 240px)) minmax(0, 1fr) max(220px, min(var(--right-dock-width,244px), 300px))}.studio-layout.is-blocks-closed{grid-template-columns:0 minmax(0,1fr) 0}.studio-layout.is-workspace-open.is-blocks-closed{grid-template-columns:max(164px, min(var(--left-dock-width,184px), 240px)) minmax(0, 1fr) 0}.menu-bar__document,.cloud-state span{display:none}.update-toast{right:256px}}.graph-canvas{background:#343434;position:absolute;inset:0}.graph-canvas .react-flow{background:#343434}.graph-canvas .react-flow__pane{cursor:default}.graph-canvas.is-cutting .react-flow__pane{cursor:crosshair}.graph-edge-cut{z-index:20;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.graph-edge-cut polyline{fill:none;stroke:#e0bb55;stroke-width:2px;stroke-dasharray:5 4;filter:drop-shadow(0 0 2px #000000b3)}.graph-canvas .react-flow__node{border-radius:6px}.graph-context-menu{z-index:30;background:#424242;border:1px solid #1f1f1f;border-radius:2px;min-width:132px;display:grid;position:absolute;overflow:hidden;box-shadow:0 10px 24px #0000006b}.graph-context-menu button{color:#ddd;text-align:left;background:0 0;border-bottom:1px solid #303030;min-height:25px;padding:0 10px;font-size:9px}.graph-context-menu button:last-child{border-bottom:0}.graph-context-menu button:hover{color:#fff;background:#5a5a5a}.graph-context-menu button.is-danger{color:#eb9b8d}.graph-context-menu button.is-danger:hover{color:#ffe0da;background:#643f3a}.studio-node{color:#ddd;background:#212121ed;border:1px solid #121212;border-radius:6px;width:226px;font-family:Segoe UI,sans-serif;font-size:9px;transition:border-color .12s,box-shadow .12s;position:relative;overflow:visible;box-shadow:0 6px 13px #0000003d}.studio-node:hover{border-color:#c4a262}.studio-node.is-selected,.react-flow__node.selected .studio-node{border-color:var(--node-selected);box-shadow:0 0 0 1px var(--node-selected), 0 9px 22px #00000057}.studio-node--error{border-color:var(--danger)}.studio-node--frozen{border-color:var(--info)}.studio-node__title{background:linear-gradient(90deg, var(--node-color), #313131 42%);border-radius:5px 5px 0 0;align-items:center;gap:7px;min-height:35px;padding:4px 5px 4px 8px;display:flex}.studio-node__signal{background:#7d7d7d;border:1px solid #ffffff59;border-radius:50%;width:7px;height:7px}.studio-node--running .studio-node__signal{background:#8bc28e;box-shadow:0 0 5px #8bc28e}.studio-node--error .studio-node__signal{background:var(--danger)}.studio-node__title>span:nth-child(2){flex-direction:column;flex:1;min-width:0;display:flex}.studio-node__title b{color:#f0f0f0;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 2px #00000059;font-size:10px;font-weight:650;overflow:hidden}.studio-node__title small{color:#bbb;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:7px;overflow:hidden}.studio-node__title>button{color:#aaa;background:0 0;border-radius:2px;place-items:center;width:18px;height:18px;padding:0;display:grid}.studio-node__title>button:hover{color:#fff;background:#ffffff17}.studio-node__body{min-height:84px;padding:48px 14px 7px;position:relative}.studio-node__ports{flex-direction:column;gap:13px;width:calc(50% - 7px);display:flex;position:absolute;top:7px}.studio-node__ports--inputs{align-items:flex-start;left:8px}.studio-node__ports--outputs{align-items:flex-end;right:8px}.node-port{color:#9a9a9a;font-size:7px}.graph-canvas .react-flow__handle{background:#b2b2b2;border:2px solid #111;width:10px;height:10px}.graph-canvas .react-flow__handle-left{left:-6px}.graph-canvas .react-flow__handle-right{right:-6px}.graph-canvas .react-flow__handle:hover{border-color:var(--node-selected);background:#fff}.studio-node__widgets{background:#494949ad;border:1px solid #292929;border-radius:2px;overflow:hidden}.node-widget{color:#aaa;border-bottom:1px solid #353535;grid-template-columns:74px minmax(0,1fr);align-items:center;min-height:25px;padding:2px 5px;display:grid}.node-widget:last-child{border-bottom:0}.node-widget>span:first-child{text-overflow:ellipsis;white-space:nowrap;font-size:7px;overflow:hidden}.node-widget select,.node-widget input[type=number],.node-widget input[type=text],.node-widget textarea{color:#e2e2e2;background:#5a5a5a;border:0;border-bottom:1px solid #393939;border-radius:1px;width:100%;height:19px;font-size:8px}.node-widget :is(input,select,textarea,button):disabled{cursor:default;opacity:.52}.node-widget textarea{resize:vertical;height:31px;font-family:inherit}.node-widget--plain_line_edit,.node-widget--text_edit{align-items:start;min-height:37px}.node-widget>span:first-child i{color:#ffe88a;background:#75652c;border-radius:50%;place-items:center;width:10px;height:10px;margin-left:4px;font-size:6px;font-style:normal;font-weight:700;display:inline-grid}.node-widget.is-parametric{box-shadow:inset 2px 0 #ad9739}.node-widget.is-converted{opacity:.66}.node-push-button{color:#eee;background:linear-gradient(#737373,#4d4d4d);border:1px solid #747474;border-radius:2px;min-height:18px;font-size:8px}.node-push-button:active{background:linear-gradient(#454545,#656565);transform:translateY(1px)}.node-combo-button{grid-template-columns:14px minmax(0,1fr) 14px;align-items:stretch;min-width:0;display:grid}.node-combo-button button{color:#c8c8c8;background:#4d4d4d;border:1px solid #383838;place-items:center;padding:0;display:grid}.node-combo-button button:hover:not(:disabled){color:#fff;background:#626262}.node-combo-button select{min-width:0}.node-table{background:#343434;grid-template-columns:repeat(3,1fr);gap:1px;padding:2px;display:grid}.node-table i{background:#727272;height:5px}.node-scope{background:#171717;border:1px solid #202020;width:100%;height:23px;display:block;overflow:hidden}.node-scope svg{width:100%;height:100%}.node-scope path{fill:none;stroke:#83bf87;stroke-width:1.3px;vector-effect:non-scaling-stroke}.node-layout{border-top:1px dotted #777;height:5px;display:block}.node-layout--horizontal_layout{background:repeating-linear-gradient(90deg,#0000 0 6px,#debd4357 6px 7px)}.node-layout--vertical_layout{background:repeating-linear-gradient(90deg,#0000 0 8px,#debd4347 8px 9px)}.node-stretch{opacity:.55;background:linear-gradient(90deg,#0000,#666 28% 72%,#0000);height:4px;display:block}.node-toggle{background:#666;border-radius:10px;width:24px;height:13px;padding:2px}.node-toggle i{background:#bbb;border-radius:50%;width:9px;height:9px;transition:transform .14s,background .14s;display:block}.node-toggle.is-on{background:#8e7c39}.node-toggle.is-on i{background:#f1d66f;transform:translate(11px)}.node-range{grid-template-columns:1fr 30px;align-items:center;gap:5px;display:grid}.node-range input{width:100%;height:3px;accent-color:var(--accent)}.node-range b{color:#ddd;text-align:right;font-size:7px;font-weight:500}.node-line-edit-slider{background:#565656;border-bottom:1px solid #393939;grid-template-columns:minmax(0,1fr) 38px;align-items:center;min-width:0;display:grid;position:relative;overflow:hidden}.node-line-edit-slider input[type=range]{width:100%;height:5px;accent-color:var(--accent);margin:0 4px}.node-line-edit-slider input[type=number]{color:#eee;background:#5c5c5c;border:0;border-left:1px solid #3b3b3b;width:38px;height:19px;font-size:8px}.node-number{align-items:center;gap:3px;display:flex}.node-number small{color:#929292;white-space:nowrap;font-size:6px}.node-text{color:#ccc;text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:7px;overflow:hidden}.node-status{letter-spacing:.1em;border-radius:1px;justify-self:end;padding:2px 7px;font-size:7px;font-weight:700}.node-status--pass{color:#91cf94;background:#71b47426}.node-status--fail{color:#e27c6b;background:#d8412926}.node-led{background:#303030;border:1px solid #202020;border-radius:50%;justify-self:end;place-items:center;width:16px;height:16px;display:inline-grid}.node-led i{background:#777;border-radius:50%;width:8px;height:8px;box-shadow:inset 0 1px 1px #ffffff2e}.node-led.is-on i{background:#74bc78;box-shadow:0 0 7px #74bc78c7,inset 0 1px 1px #ffffff61}.node-image{background:radial-gradient(#838383,#383838 74%);width:100%;height:44px;display:block;position:relative;overflow:hidden}.node-image>i:first-child{border:1px solid #9f8d46;position:absolute;inset:9px 16px 7px;transform:skew(-12deg)}.node-image>i:nth-child(2){background:#737373;border-radius:50%;width:24px;height:12px;position:absolute;top:15px;left:27px;box-shadow:inset 0 0 0 3px #545454}.node-image b{color:var(--accent);font-size:6px;position:absolute;bottom:3px;right:3px}.studio-node footer{color:#707070;border-top:1px solid #2c2c2c;justify-content:space-between;padding:3px 7px 4px;font-size:6px;display:flex}.studio-node footer b{color:#84b786;font-weight:500}.graph-canvas .react-flow__edge-path{stroke:#a9a9a9;stroke-width:2px;filter:drop-shadow(0 1px 1px #0009)}.graph-canvas .react-flow__edge.animated .react-flow__edge-path{stroke:#d4bc61}.graph-canvas .react-flow__edge.selected .react-flow__edge-path{stroke:var(--node-selected);stroke-width:3px}.graph-canvas .react-flow__selection{border:1px dashed var(--accent);background:#debd430a}.subsystem-map{background:#343434f5;border:1px solid #303030;border-radius:0 0 3px;width:220px;display:grid;overflow:hidden;box-shadow:1px 2px 10px #00000038;margin:0!important}.subsystem-map__heading{color:#f0f0f0;border-bottom:1px solid #292929;justify-content:space-between;align-items:center;height:38px;padding:0 9px;font-size:10px;font-weight:700;display:flex}.subsystem-map__heading i{opacity:.9;border:1px solid #c9c9c9;border-radius:2px;width:12px;height:12px;box-shadow:inset 0 -4px #696969}.subsystem-map button{color:#ddd;text-align:left;background:0 0;border:0;border-bottom:1px solid #292929;align-items:center;gap:6px;width:100%;min-height:28px;padding:0 10px;font-size:9px;display:flex}.subsystem-map button:hover:not(:disabled){background:#414141}.subsystem-map__scene.is-active{color:#f4f4f4;background:#3f648b;font-weight:650}.subsystem-map__hmi{margin-top:4px;color:#eee!important;background:#363636!important;border-top:1px solid #303030!important}.subsystem-map__hmi:disabled{opacity:.5}.hmi-workspace{background-color:#353535;background-image:linear-gradient(#3e3e3e 1px,#0000 1px),linear-gradient(90deg,#3e3e3e 1px,#0000 1px);background-size:10px 10px;place-items:center;padding:18px;display:grid;position:absolute;inset:0;overflow:auto}.hmi-canvas{aspect-ratio:16/9;color:#f0f0f0;background:#242424;border:1px solid #222;grid-template-rows:55px minmax(0,1fr) 58px;width:min(100%,1120px);min-width:760px;max-height:100%;display:grid;box-shadow:0 17px 45px #00000047}.hmi-header{background:#292929;border-bottom:1px solid #383838;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 18px;display:grid}.hmi-header>div:first-child{align-items:center;gap:9px;display:flex}.hmi-logo{background:var(--accent);color:#323232;place-items:center;width:29px;height:29px;font-size:16px;font-weight:800;display:grid}.hmi-header>div:first-child>span:last-child{flex-direction:column;display:flex}.hmi-header b{letter-spacing:.08em;font-size:11px}.hmi-header small{color:#858585;margin-top:3px;font-size:8px}.hmi-header time{color:#888;justify-self:end;font:8px Cascadia Mono,Consolas,monospace}.hmi-line-state{color:#aaa;letter-spacing:.1em;background:#303030;border:1px solid #414141;align-items:center;gap:7px;padding:6px 10px;font-size:8px;font-weight:650;display:flex}.hmi-line-state i{background:#777;border-radius:50%;width:6px;height:6px}.hmi-line-state.is-running{color:#9ecba0;border-color:#435844}.hmi-line-state.is-running i{background:#76b879;box-shadow:0 0 6px #76b879}.hmi-main{grid-template-columns:minmax(0,2.15fr) minmax(225px,.85fr);gap:14px;min-height:0;padding:14px 16px;display:grid}.hmi-camera-panel{flex-direction:column;min-width:0;min-height:0;display:flex}.hmi-section-title{color:#aaa;letter-spacing:.08em;justify-content:space-between;align-items:center;height:28px;font-size:8px;display:flex}.hmi-section-title span{color:#ddd;align-items:center;gap:6px;font-weight:600;display:flex}.hmi-section-title b{color:#777;font-size:7px}.inspection-image{background:radial-gradient(at 55% 48%,#777 0,#515151 43%,#262626 100%);border:1px solid #3d3d3d;flex:1;min-height:0;position:relative;overflow:hidden}.metal-surface{filter:drop-shadow(0 12px 18px #0000008c);clip-path:polygon(7% 0,92% 3%,100% 91%,0 100%);background:linear-gradient(107deg,#777,#b0b0b0 12%,#636363 30%,#a3a3a3 55%,#555 84%,#888);position:absolute;inset:14% 12%;transform:perspective(600px)rotateX(4deg)rotate(-1.2deg)}.metal-surface:after{content:"";opacity:.38;background-image:repeating-linear-gradient(90deg,#0000 0 5px,#ffffff1f 6px,#0000 7px);position:absolute;inset:4% 5%}.metal-surface i{z-index:1;aspect-ratio:1;background:#464646;border-radius:50%;width:6%;position:absolute;box-shadow:inset 0 0 0 3px #8a8a8a,0 2px 3px #333}.metal-surface i:first-child{top:11%;left:12%}.metal-surface i:nth-child(2){top:14%;right:14%}.metal-surface i:nth-child(3){bottom:12%;right:11%}.inspection-roi{border:1px solid var(--accent);position:absolute;inset:23% 22% 22% 25%;box-shadow:inset 0 0 0 1px #00000040}.inspection-roi:before,.inspection-roi:after{content:"";border-color:#fff;width:7px;height:7px;position:absolute}.inspection-roi:before{border-top:2px solid;border-left:2px solid;top:-1px;left:-1px}.inspection-roi:after{border-bottom:2px solid;border-right:2px solid;bottom:-1px;right:-1px}.inspection-roi b{background:var(--accent);color:#333;padding:2px 4px;font-size:6px;position:absolute;top:-15px;left:-1px}.inspection-crosshair{z-index:3;background:#debd4347;position:absolute}.inspection-crosshair--x{height:1px;top:50%;left:23%;right:20%}.inspection-crosshair--y{width:1px;top:22%;bottom:20%;left:51%}.image-overlay{color:#d4d4d4;text-shadow:0 1px 3px #000;gap:10px;font:7px Cascadia Mono,monospace;display:flex;position:absolute;bottom:7px;right:8px}.hmi-results{flex-direction:column;gap:9px;min-width:0;padding-top:28px;display:flex}.result-callout{background:#2c2c2c;border-left:3px solid #666;flex-direction:column;justify-content:center;min-height:86px;padding:12px;display:flex}.result-callout small{color:#888;letter-spacing:.12em;font-size:7px}.result-callout strong{letter-spacing:.02em;margin:3px 0 1px;font-size:28px;line-height:1}.result-callout span{color:#8b8b8b;font-size:8px}.result-callout--pass{border-left-color:#6cad70}.result-callout--pass strong{color:#83c486}.metric-pair{background:#383838;grid-template-columns:1fr 1fr;gap:1px;display:grid}.metric-pair span{background:#2d2d2d;flex-direction:column;padding:10px 11px;display:flex}.metric-pair small{color:#777;letter-spacing:.1em;font-size:6px}.metric-pair b{margin-top:4px;font-size:16px;font-weight:550}.metric-row{color:#929292;background:#2d2d2d;grid-template-columns:1fr auto;gap:5px;padding:6px 9px;font-size:8px;display:grid}.metric-row b{color:#d5d5d5}.metric-row>i{background:#454545;grid-column:1/-1;height:2px}.metric-row em{background:var(--accent);height:100%;display:block}.hmi-detections{color:#999;border:1px solid #393939;justify-content:space-between;align-items:center;margin-top:auto;padding:9px;font-size:8px;display:flex}.hmi-detections span{align-items:center;gap:6px;display:flex}.hmi-detections b{color:#cfcfcf}.hmi-actions{background:#292929;border-top:1px solid #383838;align-items:center;gap:6px;padding:9px 16px;display:flex}.hmi-action{color:#ccc;letter-spacing:.06em;background:#323232;border:1px solid #424242;justify-content:center;align-items:center;gap:6px;min-width:86px;height:34px;font-size:8px;font-weight:650;display:flex}.hmi-action:hover:not(:disabled){background:#3c3c3c;border-color:#686868}.hmi-action:disabled{color:#606060}.hmi-action--run:not(:disabled){color:#92cc95;border-color:#4f7651}.hmi-action--stop:not(:disabled){color:#dc8272;border-color:#754a43}.hmi-last-cycle{flex-direction:column;align-items:flex-end;margin-left:auto;display:flex}.hmi-last-cycle span{color:#777;font-size:7px}.hmi-last-cycle b{color:#aaa;margin-top:3px;font:8px Cascadia Mono,monospace}.hmi-empty{color:#d2d2d2;text-align:center;background:#303030;place-content:center;gap:7px;display:grid;position:absolute;inset:0}.hmi-empty span{color:#8f8f8f;max-width:420px;font-size:11px}.hmi-workspace--real{background:#303030;grid-template-rows:36px minmax(0,1fr);place-items:stretch stretch;padding:0;display:grid;overflow:hidden}.hmi-designer-toolbar{background:#292929;border-bottom:1px solid #202020;align-items:center;gap:5px;min-width:0;padding:4px 7px;display:flex}.hmi-designer-toolbar>span{flex:1}.hmi-designer-toolbar button,.hmi-designer-toolbar select{color:#c9c9c9;text-transform:capitalize;background:#343434;border:1px solid #464646;border-radius:2px;align-items:center;gap:5px;height:27px;padding:0 8px;font-size:10px;display:inline-flex}.hmi-designer-toolbar button:hover:not(:disabled){border-color:var(--accent);color:#fff}.hmi-designer-toolbar button:disabled{opacity:.42}.hmi-real-layout{grid-template-columns:42px minmax(0,1fr) 190px;min-height:0;display:grid}.hmi-pages{background:#2b2b2b;border-right:1px solid #252525;flex-direction:column;gap:3px;min-height:0;padding:6px 4px;display:flex}.hmi-page-tabs{flex-direction:column;flex:1;gap:3px;min-height:0;display:flex;overflow:auto}.hmi-page-tabs button{color:#888;writing-mode:vertical-rl;text-overflow:ellipsis;background:0 0;border:1px solid #0000;flex:0 0 30px;height:30px;font-size:8px;overflow:hidden}.hmi-page-tabs button.is-active{color:#ddd;background:#393939;border-color:#555}.hmi-page-actions{border-top:1px solid #3a3a3a;grid-template-columns:1fr 1fr;gap:2px;padding-top:5px;display:grid}.hmi-page-actions button{color:#929292;background:0 0;place-items:center;width:15px;height:20px;padding:0;display:grid}.hmi-page-actions button:hover:not(:disabled){color:#eee;background:#444}.hmi-page-actions button:disabled{opacity:.38}.hmi-real-canvas-scroll{background-color:#353535;background-image:linear-gradient(#414141 1px,#0000 1px),linear-gradient(90deg,#414141 1px,#0000 1px);background-size:var(--hmi-grid,10px) var(--hmi-grid,10px);padding:18px;overflow:auto}.hmi-real-canvas{border:1px solid #1f1f1f;min-width:1px;min-height:1px;margin:0 auto;position:relative;box-shadow:0 14px 38px #00000047}.hmi-real-component{touch-action:none;border:1px solid #0000;border-radius:2px;position:absolute;overflow:hidden}.hmi-real-component:hover{border-color:#ffffff2e}.hmi-real-component.is-selected{border-color:var(--hmi-accent,var(--accent));box-shadow:0 0 0 1px #00000073}.hmi-real-component.is-selected:not(.is-locked){cursor:move}.hmi-real-component.is-locked:after{z-index:3;content:"";pointer-events:none;background:#4c4526;border:1px solid #c2b05c;border-radius:1px;width:6px;height:6px;position:absolute;top:3px;right:3px}.hmi-real-component>*{width:100%;height:100%}.hmi-component-resizer{z-index:5;background:linear-gradient(135deg, transparent 0 42%, var(--hmi-accent,var(--accent)) 43% 57%, transparent 58%);cursor:nwse-resize;border:1px solid #2d2d2d;position:absolute;bottom:-1px;right:-1px;width:12px!important;height:12px!important}.hmi-runtime-button{color:#eee;cursor:pointer;letter-spacing:.01em;background:#3b3b3b;border:1px solid #555;place-items:center;width:100%;height:100%;font-size:11px;font-weight:650;display:grid}.hmi-runtime-button:hover:not(:disabled){border-color:var(--hmi-accent,var(--accent));background:#454545}.hmi-runtime-button:disabled{cursor:not-allowed;opacity:.45}.hmi-runtime-button--stop_button,.hmi-runtime-button--role-danger{color:#f29a8a;border-color:#744c45}.hmi-runtime-button--run_button,.hmi-runtime-button--run_once_button,.hmi-runtime-button--role-trigger{color:#9bd29d;border-color:#4e7450}.hmi-runtime-button--role-reset{color:#e4cf7a;border-color:#7d7144}.hmi-runtime-button--role-bypass{color:#a4c4e8;border-color:#546b8a}.hmi-runtime-button.is-feedback{border-color:var(--hmi-accent,var(--accent));box-shadow:inset 0 0 0 1px #debd433d}.hmi-control{color:#bababa;background:#303030;grid-template-columns:minmax(40px,.7fr) minmax(60px,1fr);align-items:center;gap:7px;padding:7px 9px;font-size:10px;display:grid}.hmi-control input,.hmi-control select{color:#e0e0e0;background:#252525;border:1px solid #4b4b4b;border-radius:1px;min-width:0;height:25px}.hmi-control input:focus,.hmi-control select:focus{border-color:var(--hmi-accent,var(--accent));outline:0}.hmi-control input[type=range]{accent-color:var(--hmi-accent,var(--accent))}.hmi-control b{color:#d9d9d9;grid-column:2;justify-self:end;font-size:9px}.hmi-boolean-control,.hmi-switch{color:#c4c4c4;background:#303030;align-items:center;gap:8px;height:100%;padding:7px 9px;font-size:10px;display:flex}.hmi-boolean-control input{width:14px;height:14px;accent-color:var(--hmi-accent,var(--accent));margin:0}.hmi-switch{cursor:pointer}.hmi-switch input{opacity:0;width:1px;height:1px;position:absolute}.hmi-switch-track{background:#242424;border:1px solid #555;border-radius:999px;flex:0 0 30px;width:30px;height:16px;transition:background .12s,border-color .12s;position:relative}.hmi-switch-track i{background:#858585;border-radius:50%;width:10px;height:10px;transition:transform .12s,background .12s;position:absolute;top:2px;left:2px}.hmi-switch input:checked+.hmi-switch-track{background:#35543a;border-color:#6d9d70}.hmi-switch input:checked+.hmi-switch-track i{background:#a8d3a7;transform:translate(14px)}.hmi-switch input:focus-visible+.hmi-switch-track{outline:1px solid var(--hmi-accent,var(--accent));outline-offset:2px}.hmi-switch input:disabled+.hmi-switch-track{opacity:.45}.hmi-image-component{color:#bdbdbd;background:radial-gradient(circle at 50% 45%,#555,#252525 75%);place-items:center;min-width:0;min-height:0;display:grid;position:relative;overflow:hidden}.hmi-image-title{z-index:2;color:#f0f0f0;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 2px #000;max-width:calc(100% - 18px);font-size:9px;font-weight:650;position:absolute;top:6px;left:8px;overflow:hidden}.hmi-image-wait{background:var(--hmi-wait-background,#222b31);width:calc(100% - 22px);height:calc(100% - 36px);color:var(--hmi-wait-color,#bfd9ea);text-align:center;border:1px dashed #57778d;place-items:center;padding:8px;font-size:10px;display:grid}.hmi-image-component small{z-index:2;color:var(--hmi-accent,var(--accent));text-shadow:0 1px 2px #000;font-size:8px;position:absolute;bottom:6px;right:7px}.hmi-image-component video{object-fit:contain;pointer-events:none;background:#111;width:100%;height:100%}.hmi-led{color:#ddd;background:#303030;border:1px solid #494949;align-items:center;gap:7px;padding:8px;display:flex}.hmi-led>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:9px;overflow:hidden}.hmi-led b{background:var(--hmi-led-unknown,#555);color:#e5e5e5;letter-spacing:.04em;border:1px solid #666;border-radius:8px;margin-left:auto;padding:3px 7px;font-size:8px;font-weight:750}.hmi-led.is-on b{border-color:var(--hmi-led-on-border,#78c785);background:var(--hmi-led-on,#62a66d);color:var(--hmi-led-on-text,#101010)}.hmi-led.is-off b{border-color:var(--hmi-led-off-border,#e0798b);background:var(--hmi-led-off,#c75d72);color:var(--hmi-led-off-text,#101010)}.hmi-value{background:#303030;flex-direction:column;justify-content:center;min-width:0;padding:8px 11px;display:flex}.hmi-value small{color:#858585;text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.hmi-value strong{color:#e0e0e0;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:17px;overflow:hidden}.hmi-cycle-time strong{color:var(--hmi-accent,var(--accent));font-variant-numeric:tabular-nums}.hmi-value.is-multiline pre{color:#dedede;white-space:pre-wrap;margin:4px 0 0;font:10px/1.35 Cascadia Mono,Consolas,monospace;overflow:auto}.hmi-log-viewer{background:#222;flex-direction:column;min-height:0;padding:8px;display:flex}.hmi-log-viewer b{color:#d4d4d4;font-size:9px}.hmi-log-viewer pre{color:#9aaf91;white-space:pre-wrap;flex:1;min-height:0;margin:6px 0 0;font:9px/1.45 Cascadia Mono,Consolas,monospace;overflow:auto}.hmi-tabs{background:#2d2d2d;border:1px solid #494949;grid-template-rows:25px minmax(0,1fr);display:grid}.hmi-tabs>div{background:#262626;gap:2px;display:flex;overflow:hidden}.hmi-tabs button{color:#777;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;border-bottom:1px solid #0000;min-width:0;max-width:50%;padding:0 9px;font-size:8px;overflow:hidden}.hmi-tabs button.is-active{border-bottom-color:var(--hmi-accent,var(--accent));color:#ddd;background:#3b3b3b}.hmi-tabs button:hover{color:#eee}.hmi-tabs small{color:#777;place-self:center;font-size:9px}.hmi-panel-label{color:#aaa;background:#373737b3;border:1px solid #505050;flex-direction:column;gap:4px;min-height:0;padding:9px;font-size:9px;display:flex}.hmi-panel-label b{color:#ddd}.hmi-panel-label span{color:#858585;font-size:8px}.hmi-spacer{border:1px dashed #505050}.hmi-label{text-align:center;background:#353535;place-items:center;padding:5px;font-size:11px;display:grid}.hmi-properties{background:#2b2b2b;border-left:1px solid #252525;min-width:0;padding:8px;overflow:auto}.hmi-properties header{color:#ddd;justify-content:space-between;align-items:center;gap:4px;margin-bottom:9px;font-size:10px;display:flex}.hmi-properties header b{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.hmi-properties header>span{align-items:center;gap:1px;display:flex}.hmi-properties header button{color:#aaa;background:0 0;border:0;place-items:center;width:22px;height:22px;display:grid}.hmi-properties header button:hover:not(:disabled){color:#eee;background:#414141}.hmi-properties header button[aria-label=Delete\ component]{color:#d88}.hmi-properties label{color:#888;grid-template-columns:50px 1fr;align-items:center;gap:5px;margin-bottom:5px;font-size:9px;display:grid}.hmi-properties input,.hmi-properties select,.hmi-properties textarea{color:#ddd;background:#242424;border:1px solid #454545;min-width:0}.hmi-properties input,.hmi-properties select{height:24px}.hmi-properties textarea{resize:vertical;min-height:92px;padding:5px;font:8px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace}.hmi-properties__props{align-items:start!important}.hmi-properties__apply{color:#ddd;background:#393939;border:1px solid #575757;width:100%;height:24px;margin:2px 0 6px;font-size:9px}.hmi-properties__apply:hover:not(:disabled){border-color:var(--accent);background:#4a4329}.hmi-properties__error{margin:-1px 0 5px;color:#df8585!important}.hmi-properties small,.hmi-properties p{overflow-wrap:anywhere;color:#777;font-size:8px;display:block}.hmi-page-properties,.hmi-validation-summary{border-bottom:1px solid #3b3b3b;margin-bottom:12px;padding-bottom:9px}.hmi-page-properties p{color:#c8c8c8;min-height:14px;margin:0;font-size:9px}.hmi-page-rename{gap:5px;display:grid}.hmi-page-rename>span{gap:4px;display:flex}.hmi-page-rename button{color:#d5d5d5;background:#353535;border:1px solid #454545;min-width:0;height:21px;padding:0 6px;font-size:8px}.hmi-validation-summary header>span{letter-spacing:.04em;border:1px solid #555;padding:2px 4px;font-size:7px;font-weight:700}.hmi-validation-summary header>span.is-valid{color:#7fc98c;border-color:#4d8256}.hmi-validation-summary header>span.is-invalid{color:#e08989;border-color:#8d4b4b}.hmi-validation-summary ul{gap:4px;margin:0 0 6px;padding:0;list-style:none;display:grid}.hmi-validation-summary li{color:#aaa;overflow-wrap:anywhere;grid-template-columns:39px minmax(0,1fr);gap:4px;font-size:8px;display:grid}.hmi-validation-summary li b{letter-spacing:.03em;font-size:7px}.hmi-validation-summary li.is-error b{color:#df8585}.hmi-validation-summary li.is-warning b{color:#d3b66c}.hmi-canvas-theme-properties{border-bottom:1px solid #3b3b3b;margin-bottom:12px;padding-bottom:9px}.hmi-canvas-theme-properties__snap input{width:14px;height:14px;accent-color:var(--accent);justify-self:start;margin:0}.hmi-hidden-components{border-top:1px solid #3b3b3b;gap:4px;margin-top:12px;padding-top:9px;display:grid}.hmi-hidden-components>small{color:#c6b06b;letter-spacing:.04em;text-transform:uppercase;font-size:8px;font-weight:700}.hmi-hidden-components button{color:#c6c6c6;text-align:left;align-items:center;gap:5px;min-width:0;padding:4px 3px;font-size:9px;display:flex}.hmi-hidden-components button:hover{color:#fff;background:#454545}.studio-blocks{color:#eee;background:#474747;border-left:1px solid #262626;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.studio-blocks__heading{background:#303030;border-bottom:1px solid #292929;justify-content:space-between;align-items:center;height:28px;padding:0 8px;font-size:10px;font-weight:700;display:flex}.studio-blocks__heading>button{color:#c7c7c7;background:0 0;place-items:center;width:22px;height:22px;display:grid}.studio-blocks__heading>button:hover{color:#fff;background:#494949}.studio-blocks__tabs{scrollbar-width:thin;background:#414141;border-bottom:1px solid #292929;min-height:33px;display:flex;overflow:auto hidden}.studio-blocks__tabs button{color:#eee;white-space:nowrap;background:#474747;border-bottom:2px solid #0000;border-right:1px solid #303030;min-width:max-content;padding:0 15px;font-size:9px}.studio-blocks__tabs button:hover{background:#515151}.studio-blocks__tabs button.is-active{color:#292929;background:#debd43;border-bottom-color:#debd43;font-weight:700}.studio-blocks__list{overscroll-behavior:contain;flex:1;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;min-height:0;display:grid;overflow:auto}.studio-blocks__section{border-bottom:1px solid #3b3b3b;padding-bottom:8px}.studio-blocks__section.is-wide{grid-column:1/-1}.studio-blocks__section:not(.is-wide):nth-of-type(2n){border-left:1px solid #3b3b3b}.studio-blocks__section>h2{color:#f3f3f3;border-bottom:1px solid #393939;margin:0;padding:9px 9px 5px;font-size:9px;font-weight:700}.studio-blocks__section>div{padding:2px 0}.studio-blocks__node{color:#f0f0f0;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;width:100%;min-height:22px;padding:0 9px;font-size:9px;line-height:22px;display:block;overflow:hidden}.studio-blocks__node:hover:not(:disabled){color:#fff;background:#555}.studio-blocks__node:active:not(:disabled){background:#5f5430}.studio-blocks__node:disabled{color:#888;cursor:not-allowed}.studio-blocks__empty{color:#aaa;text-align:center;margin:26px 12px;font-size:9px}.studio-blocks__footer{color:#aaa;background:#404040;border-top:1px solid #343434;min-height:22px;padding:0 9px;font-size:8px;line-height:22px}.studio-blocks__designer-heading{background:#303030;border-bottom:1px solid #292929;align-items:center;gap:8px;height:28px;display:flex}.studio-blocks__designer-heading button{color:#eee;background:#3f3f3f;border-right:1px solid #292929;align-self:stretch;padding:0 10px;font-size:9px}.studio-blocks__designer-heading button:hover{background:#4c4c4c}.studio-blocks__designer-heading span{color:#ddd;font-size:9px;font-weight:650}.project-open-layer{z-index:120;background:#0000007a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.project-open-dialog{background:#3b3b3b;border:1px solid #222;grid-template-rows:auto auto auto minmax(160px,340px);width:min(470px,100vw - 48px);max-height:min(590px,100vh - 48px);display:grid;overflow:hidden;box-shadow:0 24px 60px #00000094}.project-open-dialog__header{background:#353535;border-bottom:1px solid #282828;justify-content:space-between;align-items:center;min-height:54px;padding:0 10px 0 14px;display:flex}.project-open-dialog__header>div{gap:2px;display:grid}.project-open-dialog__header span{color:#9a9a9a;letter-spacing:.12em;text-transform:uppercase;font-size:8px;font-weight:700}.project-open-dialog__header h2{color:#eee;margin:0;font-size:13px;font-weight:600}.project-open-dialog__header button{color:#aaa;background:0 0;place-items:center;width:26px;height:26px;display:grid}.project-open-dialog__header button:hover{color:#fff;background:#505050}.project-open-dialog__tabs{background:#363636;border-bottom:1px solid #2d2d2d;height:31px;display:flex}.project-open-dialog__tabs button{color:#999;background:0 0;border-bottom:2px solid #0000;justify-content:center;align-items:center;gap:5px;min-width:116px;padding:0 12px;font-size:9px;display:inline-flex}.project-open-dialog__tabs button:hover{color:#ddd;background:#414141}.project-open-dialog__tabs button.is-active{border-bottom-color:var(--accent);color:#f0f0f0}.project-open-dialog__search{color:#888;background:#303030;border:1px solid #2a2a2a;align-items:center;gap:6px;height:33px;margin:8px 10px;padding:0 8px;display:flex}.project-open-dialog__search:focus-within{color:#bbb;border-color:#796b35}.project-open-dialog__search input{color:#eee;background:0 0;border:0;outline:0;width:100%;min-width:0;height:100%;font-size:10px}.project-open-dialog__search input::placeholder{color:#747474}.project-open-dialog__list{min-height:0;margin:0;padding:0 5px 6px;list-style:none;overflow:auto}.project-open-dialog__list>li>button{color:#bbb;text-align:left;background:0 0;border-bottom:1px solid #333;align-items:center;gap:9px;width:100%;min-height:48px;padding:7px 8px;display:flex}.project-open-dialog__list>li>button:hover{color:#fff;background:#505050}.project-open-dialog__list>li>button.is-active{box-shadow:inset 2px 0 var(--accent);background:#444}.project-open-dialog__list>li>button>span{flex:1;gap:3px;min-width:0;display:grid}.project-open-dialog__list b{color:#e1e1e1;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:600;overflow:hidden}.project-open-dialog__list small{color:#919191;font-size:8px}.project-open-dialog__list i{color:#e0c85e;text-transform:uppercase;border:1px solid #6d6235;padding:2px 4px;font-size:7px;font-style:normal}.project-open-dialog__empty{color:#888;text-align:center;margin:32px 12px;font-size:10px}.studio-about-layer{z-index:120;background:#0000007a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.studio-about-dialog{background:#3b3b3b;border:1px solid #222;width:min(410px,100vw - 48px);overflow:hidden;box-shadow:0 24px 60px #00000094}.studio-about-dialog>header{background:#353535;border-bottom:1px solid #282828;justify-content:space-between;align-items:center;min-height:54px;padding:0 10px 0 14px;display:flex}.studio-about-dialog>header>div{gap:2px;display:grid}.studio-about-dialog>header span{color:#9a9a9a;letter-spacing:.12em;text-transform:uppercase;font-size:8px;font-weight:700}.studio-about-dialog h2{color:#eee;margin:0;font-size:13px;font-weight:600}.studio-about-dialog>header button{color:#aaa;background:0 0;place-items:center;width:26px;height:26px;display:grid}.studio-about-dialog>header button:hover{color:#fff;background:#505050}.studio-about-dialog>p{color:#b8b8b8;margin:14px 14px 11px;font-size:10px;line-height:1.5}.studio-about-dialog dl{border-top:1px solid #303030;margin:0 14px 14px}.studio-about-dialog dl>div{border-bottom:1px solid #303030;grid-template-columns:114px minmax(0,1fr);align-items:center;min-height:29px;display:grid}.studio-about-dialog dt{color:#939393;font-size:9px}.studio-about-dialog dd{color:#dedede;text-overflow:ellipsis;white-space:nowrap;margin:0;font:9px Cascadia Mono,Consolas,monospace;overflow:hidden}.studio-about-dialog footer{background:#353535;border-top:1px solid #292929;justify-content:flex-end;padding:9px 10px;display:flex}.studio-about-dialog footer button{color:#eee;background:#514a2d;border:1px solid #665c35;min-width:64px;padding:6px 10px;font-size:9px}.studio-about-dialog footer button:hover{background:#665c35}
