.react-flow{direction:ltr;--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: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--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: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--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: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--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 rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.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: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--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: #777;--xy-background-pattern-lines-color-default: #777;--xy-background-pattern-cross-color-default: #777;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--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: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--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 rgba(0, 0, 0, .08);--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{position:absolute;width:100%;height:100%;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{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.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;-moz-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:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.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:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;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%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;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{position:absolute;z-index:5;margin:15px}.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{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.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{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.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{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;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))}.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{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.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-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.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))}.statechart-view{position:relative;flex:1;min-height:0}.statechart-missing{display:flex;align-items:center;justify-content:center;color:var(--text-dim)}.statechart-header{container:statechart-header / inline-size;display:flex;align-items:center;gap:8px;width:420px;max-width:100%;padding:4px;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-pop)}.statechart-header .btn{flex:none;display:inline-flex;align-items:center;gap:6px}.statechart-back{padding:0 8px 0 6px}.statechart-crumbs{display:flex;flex:1;align-items:center;min-width:0;overflow:hidden;margin:0;padding:0;list-style:none;color:var(--text-dim);font-size:var(--text-sm)}.statechart-crumbs li{flex:0 1 auto;min-width:2ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.statechart-crumbs li+li:before{content:"/";margin:0 6px;color:var(--text-faint)}.statechart-crumbs li[aria-current=page]{color:var(--text);font-weight:600}.statechart-crumbs li:first-child{flex-shrink:4}.statechart-crumbs li[aria-current=page]{flex:none;max-width:calc(100% - 4ch)}.statechart-crumb{max-width:100%;overflow:hidden;padding:0;border:0;background:none;color:inherit;font:inherit;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.statechart-crumb:hover{color:var(--text);text-decoration:underline}.statechart-count{font-family:var(--mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap}.statechart-count .k{color:var(--text-faint)}.statechart-count .v{color:var(--text);font-weight:600}.statechart-lock-reason{color:var(--text-dim);font-size:var(--text-xs)}@media(pointer:coarse){.statechart-header .btn,.statechart-crumb{min-height:44px}.statechart-header .btn{min-width:44px;justify-content:center}}@media(max-width:760px){.statechart-header{container-type:normal;width:auto}.statechart-crumbs li:first-child{display:none}.statechart-crumbs li[aria-current=page]{max-width:calc(100% - 2ch)}.statechart-crumbs li:nth-child(2):before{content:none}.statechart-button-text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}}@container statechart-header (max-width: 360px){.statechart-button-text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}}@media(max-width:360px){.statechart-count .k{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}}.statechart-param{display:flex;flex-direction:column;gap:8px}.statechart-summary{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2)}.statechart-summary-head{display:flex;align-items:baseline;gap:8px;font-size:var(--text-md)}.statechart-summary-title{color:var(--text);font-weight:600}.statechart-summary-size{color:var(--text-dim);font-size:var(--text-sm)}.statechart-summary-row{font-size:var(--text-sm)}.statechart-summary-row .k{color:var(--text-faint)}.statechart-summary-row .v{color:var(--text);font-weight:600}.statechart-summary-problems{font-size:var(--text-sm)}.statechart-summary-problems.err{color:color-mix(in srgb,var(--error) 80%,var(--text))}.statechart-summary-problems.warn{color:color-mix(in srgb,var(--warn) 80%,var(--text))}.statechart-param-json>summary{color:var(--text-dim);font-size:var(--text-sm);cursor:pointer}.statechart-param-json[open]>summary{margin-bottom:8px}@media(pointer:coarse){.statechart-param-json>summary{display:flex;align-items:center;min-height:44px}}.sc-pick-list{display:flex;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none}.sc-pick{display:flex;align-items:baseline;gap:8px;width:100%;min-height:28px;padding:4px 8px;border:1px solid transparent;border-radius:var(--radius);background:none;color:var(--text);font:var(--text-sm) / 1.4 var(--sans);text-align:left;cursor:pointer}.sc-pick>:first-child{flex:none}.sc-pick:hover{border-color:var(--border);background:var(--panel-2)}.sc-pick-note{min-width:0;overflow:hidden;color:var(--text-faint);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap}.sc-add-transition,.sc-endpoints{display:flex;gap:8px}.sc-add-transition select{flex:1;min-width:0}.sc-endpoints>.field{flex:1;min-width:0}.sc-trigger-field{display:flex;flex-direction:column;gap:6px}@media(pointer:coarse){.sc-pick{min-height:44px}}.sc-state{--accent: var(--gray-600);--sc-line: color-mix(in srgb, var(--accent) 40%, var(--border-strong));--sc-halo: transparent;position:relative;box-sizing:border-box;min-width:112px;max-width:260px;border:1px solid var(--sc-line);border-radius:var(--radius-lg);background:var(--panel);box-shadow:0 0 0 2px var(--sc-halo),var(--shadow-node);color:var(--text);font-family:var(--sans);transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.sc-state.selected{--sc-line: var(--accent);--sc-halo: color-mix(in srgb, var(--accent) 28%, transparent)}.sc-state.has-warnings{--sc-line: var(--warn);--sc-halo: color-mix(in srgb, var(--warn) 24%, transparent)}.sc-state.has-errors{--sc-line: var(--error);--sc-halo: color-mix(in srgb, var(--error) 24%, transparent)}.sc-state.ghost{border-style:dashed}.react-flow__node:focus-visible .sc-state{outline:2px solid var(--focus);outline-offset:4px}.react-flow__node-scState:focus-visible,.react-flow__node-scGhost:focus-visible{outline:none}.sc-state-name{display:flex;align-items:center;gap:8px;min-height:38px;padding:0 12px}.sc-state-title{min-width:0;flex:1;overflow:hidden;font:600 var(--text-md) / 1.3 var(--sans);text-align:center;text-overflow:ellipsis;white-space:nowrap}.sc-state-title.mono{font-family:var(--mono)}.sc-state-count{flex:none;padding:1px 6px;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--border));border-radius:var(--radius-pill);color:var(--text);font:600 var(--text-xs) / 1.4 var(--mono);font-variant-numeric:tabular-nums}.sc-state-activities{display:flex;flex-direction:column;padding:4px 12px 6px;border-top:1px solid var(--border)}.sc-state-activity{display:flex;gap:6px;font:var(--text-xs) / 1.55 var(--mono);white-space:nowrap}.sc-state-activity .k{flex:none;color:var(--text-faint)}.sc-state-activity .v{min-width:0;overflow:hidden;color:var(--text);font-weight:600;text-overflow:ellipsis}.sc-state-ghost-note{color:var(--text-faint);font-size:var(--text-xs)}.sc-pseudostate{position:absolute;top:12px;right:100%;overflow:visible;pointer-events:none}.sc-pseudostate circle{fill:var(--text)}.sc-pseudostate path{fill:none;stroke:var(--edge);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.react-flow__handle.sc-pseudostate-handle{top:20px;left:-33px;width:14px;height:14px;border:0;background:transparent}.sc-no-initial{display:flex;align-items:center;gap:6px;color:color-mix(in srgb,var(--error) 80%,var(--text));font:500 var(--text-xs) / 1.4 var(--sans);white-space:nowrap}.sc-no-initial circle{fill:var(--error)}.react-flow__handle.sc-state-port{width:9px;height:9px;border:2px solid var(--accent);background:var(--panel);opacity:0;pointer-events:none}.sc-state:hover .sc-state-port,.sc-state.selected .sc-state-port,.react-flow__node:focus-within .sc-state-port{opacity:1;pointer-events:auto}.react-flow__handle.sc-state-target{top:0;left:0;width:100%;height:100%;min-width:0;min-height:0;transform:none;border:0;border-radius:inherit;background:transparent;pointer-events:none}.react-flow:has(.react-flow__connection) .react-flow__handle.sc-state-target{pointer-events:auto}.react-flow__handle.sc-state-target.valid{background:color-mix(in srgb,var(--accent) 8%,transparent)}@media(pointer:coarse){.sc-state-port:before,.sc-pseudostate-handle:before{--reach: calc(44px / var(--canvas-zoom, 1));content:"";position:absolute;top:calc(50% - var(--reach) / 2);left:calc(50% - var(--reach) / 2);width:var(--reach);height:var(--reach)}.sc-state-name{min-height:44px}}.react-flow__edge-scTransition .react-flow__edge-path{fill:none;stroke-linecap:round;stroke-linejoin:round}.sc-transition-label{position:absolute;display:inline-flex;align-items:center;gap:4px;max-width:260px;padding:2px 5px;border-radius:var(--radius-sm);background:var(--panel);color:var(--text);font:500 var(--text-xs) / 1.4 var(--mono);white-space:nowrap;pointer-events:all}.sc-transition-label.selectable{cursor:pointer}.sc-transition-label.authored{font-family:var(--sans)}.sc-transition-text{min-width:0;overflow:hidden;text-overflow:ellipsis}.sc-trigger-mark{flex:none;color:var(--text-faint)}.sc-transition-label.selected{box-shadow:0 0 0 1px var(--accent)}.sc-transition-label.has-errors{box-shadow:0 0 0 1px var(--error)}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-vietnamese-wght-normal-6IgcOCM7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-normal-BgDaEnEv.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-ext-wght-normal-I4S5GZfc.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-wght-normal-BmXc_FBt.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-symbols2-wght-normal-GZpp1pK2.woff2) format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-vietnamese-wght-normal-D8KDMBhC.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-ext-wght-normal-DrnZ1wKl.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-wght-normal-B_7UjwxQ.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--gray-100: #f2f2f2;--gray-200: #ebebeb;--gray-300: #e6e6e6;--gray-400: #eaeaea;--gray-500: #c9c9c9;--gray-600: #a8a8a8;--gray-700: #8f8f8f;--gray-800: #7d7d7d;--gray-900: #4d4d4d;--gray-1000: #171717;color-scheme:light;--bg: #fafafa;--panel: #ffffff;--panel-2: #fafafa;--panel-3: #f2f2f2;--border: rgba(0, 0, 0, .07);--border-strong: rgba(0, 0, 0, .12);--border-hover: rgba(0, 0, 0, .2);--heading: var(--gray-1000);--text: var(--gray-1000);--text-dim: var(--gray-900);--text-faint: #6e6e6e;--accent: #006bff;--focus: var(--accent);--ok: #00952d;--warn: #a85b00;--error: #e5001d;--edge: var(--gray-500);--dots: rgba(0, 0, 0, .06);--scroll-thumb: var(--gray-300);--scroll-thumb-hover: var(--gray-500);--action-bg: #171717;--action-bg-hover: #383838;--action-text: #ffffff;--radius-sm: 4px;--radius: 6px;--radius-lg: 12px;--radius-pill: 9999px;--text-xs: .6875rem;--text-sm: .75rem;--text-md: .8125rem;--text-lg: .875rem;--text-xl: .9375rem;--text-2xl: 1.375rem;--run-live: var(--accent);--run-done: var(--ok);--shadow-node-color: rgba(0, 0, 0, .04);--shadow-node: 0 2px 2px var(--shadow-node-color);--shadow-pop: 0 1px 1px rgba(0, 0, 0, .02), 0 4px 8px -4px rgba(0, 0, 0, .04), 0 16px 24px -8px rgba(0, 0, 0, .06);--dur: .15s;--ease: cubic-bezier(.175, .885, .32, 1.1);--console-bg: #0a0a0a;--console-text: #a0a0a0;--console-accent-sim: #0090ff;--console-accent-sd: #00ac3a;--console-accent-agent: #ffae00;--console-accent-state: #a78bfa;--console-scroll-thumb: #2a2a2a;--scrim: rgba(0, 0, 0, .4);--z-raised: 1;--z-resizer: 10;--z-menu: 50;--z-tooltip: 60;--z-modal: 100;--z-context-menu: 1000;--z-overlay: 2000;--ns-des: #006bff;--ns-abm: #a85b00;--ns-sd: #00952d;--ns-data: #475569;--ns-rf: #0d7f73;--ns-core: #7c3aed;--plug-0: #c81e6f;--plug-1: #0e7490;--plug-2: #4d7c0f;--plug-3: #6d28d9;--plug-4: #ea580c;--plug-5: #0369a1;--peer-assistant: #a21caf;--peer-1: #4338ca;--peer-2: #155e75;--peer-3: #4f6f12;--peer-4: #b0256f;--mono: "Geist Mono Variable", "Geist Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--sans: "Geist Variable", "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}.dark{--gray-100: #1a1a1a;--gray-200: #1f1f1f;--gray-300: #292929;--gray-400: #2e2e2e;--gray-500: #454545;--gray-600: #878787;--gray-700: #8f8f8f;--gray-800: #7d7d7d;--gray-900: #a0a0a0;--gray-1000: #ededed;color-scheme:dark;--bg: #000000;--panel: #0a0a0a;--panel-2: #1a1a1a;--panel-3: #1f1f1f;--border: rgba(255, 255, 255, .09);--border-strong: rgba(255, 255, 255, .14);--border-hover: rgba(255, 255, 255, .22);--heading: var(--gray-1000);--text: var(--gray-1000);--text-dim: var(--gray-900);--text-faint: var(--gray-700);--accent: #0090ff;--focus: var(--accent);--ok: #00ac3a;--warn: #ffae00;--error: #f13242;--edge: var(--gray-500);--dots: rgba(255, 255, 255, .06);--scroll-thumb: #2a2a2a;--scroll-thumb-hover: var(--gray-500);--action-bg: #ededed;--action-bg-hover: #cccccc;--action-text: #000000;--shadow-node-color: rgba(0, 0, 0, .4);--shadow-node: 0 2px 2px var(--shadow-node-color);--shadow-pop: 0 1px 1px rgba(0, 0, 0, .2), 0 4px 8px -4px rgba(0, 0, 0, .4), 0 16px 24px -8px rgba(0, 0, 0, .5);--ns-des: #0090ff;--ns-abm: #ffae00;--ns-sd: #00ac3a;--ns-data: #94a3b8;--ns-rf: #2ec4b0;--ns-core: #a78bfa;--plug-0: #e8618c;--plug-1: #22c1d6;--plug-2: #c4d64b;--plug-3: #9a7cf0;--plug-4: #f08c5a;--plug-5: #56b8e6;--peer-assistant: #e879f9;--peer-1: #a5b4fc;--peer-2: #67e8f9;--peer-3: #bef264;--peer-4: #f9a8d4}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--sans);font-size:var(--text-md);overflow:hidden;text-rendering:geometricprecision;-webkit-font-smoothing:antialiased}::selection{background:var(--accent);color:var(--action-text)}::placeholder{color:var(--text-faint);font-family:var(--sans);opacity:1}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}:where(input:not([type=checkbox],[type=radio],[type=range]),select,textarea):focus-visible{outline:none}[data-press-focus]:focus-visible{outline:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:5px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--scroll-thumb-hover);background-clip:content-box;border:2px solid transparent}::-webkit-scrollbar-corner{background:transparent}code{font-family:var(--mono);font-size:.92em}.mono{font-family:var(--mono)}.dim{color:var(--text-dim)}.pad{padding:14px}.pad-s{padding:8px}.app{height:100%}.canvas-stack{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}.stage-view,.stage-fallback{flex:1;min-height:0;background:var(--panel-2)}.stage-view{position:relative;overflow:hidden}.stage-view canvas{display:block}.stage-fallback{display:flex;align-items:center;justify-content:center;color:var(--text-faint);font-size:var(--text-md)}.view-error{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:26px 14px;color:var(--text-dim);font-size:var(--text-md);line-height:1.6;text-align:center}.view-error p{margin:0}.pane-resizer{position:absolute;left:-2px;top:0;bottom:0;width:5px;z-index:var(--z-resizer);cursor:col-resize;touch-action:none;background:transparent;transition:background var(--dur) var(--ease)}.pane-resizer:hover,.pane-resizer:active,.pane-resizer:focus-visible{background:var(--focus);outline:none}.run-drawer{position:relative;background:var(--panel);border-top:1px solid var(--border);display:flex;flex-direction:column;min-height:0}.drawer-resizer{position:absolute;top:-2px;left:0;right:0;height:5px;z-index:var(--z-resizer);cursor:row-resize;touch-action:none;background:transparent;transition:background var(--dur) var(--ease)}.drawer-resizer:hover,.drawer-resizer:active,.drawer-resizer:focus-visible{background:var(--focus);outline:none}.drawer-tabs{display:flex;align-items:stretch;gap:2px;padding:0 8px;border-bottom:1px solid var(--border);flex:none}.drawer-tablist{display:flex;flex:0 1 auto;min-width:0;gap:2px;margin-bottom:-1px;overflow-x:auto;scrollbar-width:none}.drawer-tablist::-webkit-scrollbar{display:none}@media(max-width:760px){.drawer-tablist .drawer-tab{padding-inline:6px}}.drawer-spring{flex:1}.drawer-close{align-self:center;width:24px;height:24px;display:grid;place-items:center;background:none;border:none;border-radius:var(--radius);color:var(--text-faint);font-size:var(--text-sm);cursor:pointer;transition:color var(--dur) var(--ease),background var(--dur) var(--ease)}.drawer-close:hover{color:var(--text);background:var(--panel-3)}.drawer-tab{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;background:none;border:none;border-bottom:1px solid transparent;font-family:var(--sans);font-size:var(--text-sm);font-weight:500;color:var(--text-faint);cursor:pointer;transition:color var(--dur) var(--ease)}.drawer-tab:hover{color:var(--text-dim)}.drawer-tab.on{color:var(--text);border-bottom-color:var(--accent)}.drawer-tab:focus-visible,.drawer-close:focus-visible{outline-offset:-2px}.tab-badge{font-family:var(--mono);font-size:var(--text-xs);line-height:1;padding:3px 5px;border-radius:var(--radius-pill);border:1px solid var(--border-strong)}.tab-badge.warn{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 35%,var(--border-strong))}.tab-badge.err{color:var(--error);border-color:color-mix(in srgb,var(--error) 40%,var(--border-strong))}.drawer-content{flex:1;overflow:auto;min-height:0;scroll-padding-block:8px}.pane-title{font-family:var(--sans);font-size:var(--text-sm);font-weight:500;letter-spacing:normal;text-transform:none;color:var(--text-faint)}.sc-type-glyph{width:14px;height:14px;stroke:var(--accent);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round;flex:none}.sc-type-dot{width:6px;height:6px;border-radius:2px;background:var(--accent);flex:none}.topbar{grid-row:1;display:flex;align-items:center;gap:12px;padding:0 14px;background:var(--panel);border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:8px;-webkit-user-select:none;user-select:none}.brand-mark{display:block;width:20px;height:20px;color:var(--heading)}.brand-name{font-weight:600;letter-spacing:-.01em;font-size:var(--text-lg);color:var(--heading)}.brand-tag{font-family:var(--mono);font-size:var(--text-xs);letter-spacing:.04em;color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);border-radius:var(--radius);padding:2px 6px}.topbar-doc{flex:1;min-width:0;overflow:hidden}.doc-file{font-size:var(--text-md);color:var(--text-dim);white-space:nowrap}.dirty-dot{display:inline-block;flex:none;width:7px;height:7px;margin-left:7px;border-radius:50%;background:var(--text-dim);vertical-align:middle}.load-error{display:flex;align-items:flex-start;gap:4px;padding:4px 4px 4px 12px;border:1px solid color-mix(in srgb,var(--error) 40%,var(--border-strong));border-radius:var(--radius);background:var(--panel);color:var(--error)}.load-error p{flex:1;min-width:0;margin:0;padding-block:4px;line-height:1.5;overflow-wrap:anywhere}.topbar-actions{display:flex;align-items:center;gap:8px}.topbar-sep{width:1px;height:20px;background:var(--border-strong);margin:0 4px}.menubar-btn{height:32px;padding:0 10px;font-family:var(--sans);font-size:var(--text-md);font-weight:500;color:var(--text-dim);background:none;border:none;border-radius:var(--radius);cursor:pointer;transition:background var(--dur) var(--ease),color var(--dur) var(--ease)}.menubar-btn:hover,.menubar-btn.open{background:var(--panel-3);color:var(--text)}.menubar-btn:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.menubar-btn.icon{width:32px;padding:0;display:inline-flex;align-items:center;justify-content:center}.menu-list.app-menu-list,.menu-list.model-page-list{left:0;right:auto;max-height:calc(100dvh - 67px);overflow-y:auto;scroll-padding-block:8px}.app-menu-list .menu-item:focus-visible,.model-page-choice:focus-visible,.model-page-list .menu-item:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.menu-list.app-menu-list{min-width:220px}.app-menu-list .menu-item{overflow-wrap:anywhere}.app-menu-group-label{padding:8px 10px 4px}.model-page-trigger{min-width:32px;min-height:32px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 9px;border:0;border-radius:var(--radius);background:transparent;color:var(--text);font:600 var(--text-lg) var(--sans);cursor:pointer}.model-page-trigger>.dirty-dot{margin-left:0}.model-page-trigger:hover,.model-page-trigger.open{background:var(--panel-3)}.model-page-trigger:focus-visible,.model-page-more:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.menu-list.model-page-list{min-width:280px;max-width:360px;padding:6px}.model-page-row{position:relative;display:flex;flex-wrap:wrap;align-items:center;border-radius:var(--radius)}.model-page-row:hover,.model-page-row.open{background:var(--panel-3)}.model-page-choice{min-width:0;min-height:42px;flex:1;align-self:stretch;display:flex;align-items:center;gap:8px;padding:0 10px;border:0;border-radius:var(--radius);background:transparent;color:var(--text);font:500 var(--text-md) var(--sans);text-align:left;cursor:pointer}.model-page-check{flex:none;display:inline-grid;place-items:center;width:14px;color:var(--text)}.model-page-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-page-list>.menu-item{padding-left:32px}.model-page-more{width:30px;height:30px;display:inline-grid;place-items:center;margin-right:4px;border:0;border-radius:var(--radius);background:transparent;color:var(--text-dim);cursor:pointer}.model-page-more:hover,.model-page-more[aria-expanded=true]{background:var(--panel);color:var(--text)}.menu-list.model-page-actions{position:static;flex:0 0 100%;min-width:0;padding:0 4px 4px 22px;border:0;border-radius:0;background:transparent;box-shadow:none}.model-page-actions .menu-item:hover:not(:disabled){background:var(--panel)}.menu-separator{height:1px;margin:4px 6px;background:var(--border)}@media(max-width:760px){.model-page-trigger{min-width:44px;min-height:44px;padding:0}.menu-list.model-page-list{max-width:calc(100vw - 77px)}}@media(max-width:760px),(pointer:coarse){.menu-list.app-menu-list,.menu-list.model-page-list{max-height:calc(100dvh - 79px)}}.btn{display:inline-flex;align-items:center;gap:6px;height:32px;font-family:var(--sans);font-size:var(--text-md);font-weight:500;letter-spacing:normal;text-transform:none;color:var(--text);background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius);padding:0 12px;cursor:pointer;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease),color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);white-space:nowrap}.btn:hover:not(:disabled){background:var(--panel-3);border-color:var(--border-hover)}.btn:focus-visible{outline:none;box-shadow:0 0 0 2px var(--panel),0 0 0 4px var(--focus)}.btn:disabled{opacity:.45;cursor:default}.btn.primary{background:var(--action-bg);border-color:var(--action-bg);color:var(--action-text);font-weight:500}.btn.primary:hover:not(:disabled){background:var(--action-bg-hover);border-color:var(--action-bg-hover)}.btn.danger{border-color:color-mix(in srgb,var(--error) 45%,var(--border-strong));color:var(--error)}.btn.danger:hover:not(:disabled){background:color-mix(in srgb,var(--error) 10%,var(--panel));border-color:color-mix(in srgb,var(--error) 60%,var(--border-strong));color:color-mix(in srgb,var(--error) 80%,var(--text))}.btn.small{height:28px;padding:0 9px;font-size:var(--text-sm)}.btn.ghost{background:transparent;border-color:transparent;color:var(--text-dim)}.btn.ghost:hover:not(:disabled){background:var(--panel-3);border-color:transparent}.btn.toggle.on{border-color:var(--accent);color:var(--accent)}.btn.icon{padding:0 8px}.view-switch{display:inline-flex}.view-switch .btn{border-radius:0}.view-switch .btn:first-child{border-radius:var(--radius) 0 0 var(--radius)}.view-switch .btn+.btn{margin-left:-1px;border-radius:0 var(--radius) var(--radius) 0}.view-switch .btn.on{position:relative;z-index:var(--z-raised)}.menu{position:relative}.menu-list{position:absolute;top:calc(100% + 6px);right:0;z-index:var(--z-menu);min-width:280px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);padding:6px}.menu-item{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;background:none;border:none;border-radius:var(--radius);padding:8px 10px;cursor:pointer;color:var(--text);font-family:var(--sans)}.menu-item:hover:not(:disabled,[aria-disabled=true]){background:var(--panel-3)}.menu-item:disabled,.menu-item[aria-disabled=true]{cursor:default}.menu-item:disabled .menu-item-label,.menu-item[aria-disabled=true] .menu-item-label{color:var(--text-faint)}.menu-item-label{font-size:var(--text-md);font-weight:500}.menu-item-hint{font-size:var(--text-sm);color:var(--text-dim)}.palette{--palette-pad: 10px;padding:var(--palette-pad);display:flex;flex-direction:column;gap:8px}.palette-options{display:contents}.palette-lib{margin-top:4px}.palette-lib-header{display:flex;align-items:center;gap:8px;padding:4px 2px}.palette-lib-dot{width:8px;height:8px;border-radius:var(--radius);flex:none}.palette-lib-name{font-size:var(--text-md);font-weight:600;flex:1}.palette-lib-meta{font-family:var(--mono);font-size:var(--text-xs);color:var(--text-faint)}.palette-category{font-family:var(--sans);font-size:var(--text-xs);font-weight:500;letter-spacing:normal;text-transform:none;color:var(--text-faint);margin:8px 2px 4px}.palette-item{display:flex;align-items:center;gap:10px;width:100%;padding:7px 10px;margin-bottom:4px;text-align:left;font-family:var(--sans);color:var(--text);background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);cursor:grab;-webkit-user-select:none;user-select:none;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease)}.palette-item:hover{background:var(--panel-3);border-color:var(--border-strong)}.palette-item:active{cursor:grabbing}.notation-mark{flex:none}.notation-mark-outline,.notation-mark-inner{stroke:color-mix(in srgb,var(--accent) 45%,var(--border-strong));stroke-width:1.25px;stroke-linecap:round;stroke-linejoin:round}.notation-mark-outline{fill:color-mix(in srgb,var(--accent) 9%,transparent)}.notation-mark-inner{fill:none}.notation-mark-solid{fill:var(--accent)}.notation-mark.shape-register .notation-mark-outline{fill:color-mix(in srgb,var(--accent) 24%,transparent);stroke:var(--accent)}.notation-mark.form-card,.notation-mark.form-chip{display:grid;place-items:center;box-sizing:border-box;width:var(--mark-size);border:1px solid color-mix(in srgb,var(--accent) 45%,var(--border-strong));border-radius:var(--radius-sm);background:color-mix(in srgb,var(--accent) 9%,transparent)}.notation-mark.form-card{height:var(--mark-size)}.notation-mark.form-card .sc-type-glyph{width:calc(var(--mark-size) * .62);height:calc(var(--mark-size) * .62)}.notation-mark.form-chip{height:calc(var(--mark-size) * .64)}.notation-mark.form-chip .sc-type-glyph{width:calc(var(--mark-size) * .46);height:calc(var(--mark-size) * .46)}.palette-item-text{display:flex;flex-direction:column;gap:1px;min-width:0}.catalogue-details{display:contents}.catalogue-description,.catalogue-detail-grid{display:none}.catalogue-expanded .palette{--palette-pad: 16px;display:grid;grid-template-columns:minmax(220px,320px) minmax(0,1fr);align-content:start;column-gap:20px}.catalogue-expanded .palette-search,.catalogue-expanded .palette-hint{grid-column:1 / -1}.catalogue-expanded .palette-lib{display:contents}.catalogue-expanded .palette-lib-header{grid-column:1 / -1;margin-top:8px;border-bottom:1px solid var(--border)}.catalogue-expanded .palette-lib>div{display:contents}.catalogue-expanded .palette-category{grid-column:1 / -1;margin-top:14px}.catalogue-expanded .palette-item{grid-column:1 / -1;display:grid;grid-template-columns:28px minmax(160px,250px) minmax(0,1fr);align-items:start;padding:12px;cursor:pointer}.catalogue-expanded .catalogue-details{display:flex;flex-direction:column;gap:8px;min-width:0;padding-left:12px;border-left:1px solid var(--border)}.catalogue-expanded .catalogue-description{display:block;color:var(--text-dim);font-size:var(--text-sm);line-height:1.45}.catalogue-expanded .catalogue-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:12px}.catalogue-detail-grid>span{display:flex;flex-direction:column;gap:3px}.catalogue-detail-grid strong{margin-bottom:2px;color:var(--text-faint);font-size:var(--text-xs);font-weight:500}.catalogue-detail-grid code,.catalogue-detail-empty{color:var(--text-dim);font:var(--text-xs) var(--mono)}.catalogue-port{display:flex;align-items:baseline;gap:6px}.catalogue-port-direction{color:var(--text-faint);font:500 var(--text-xs) var(--sans)}.palette-item-label{font-size:var(--text-md);font-weight:500}.palette-item-type{font-family:var(--mono);font-size:var(--text-xs);color:var(--text-faint)}.palette-hint{font-size:var(--text-sm);color:var(--text-faint);margin:6px 2px}.palette-foot{flex:none;margin:0;padding:8px 12px;border-top:1px solid var(--border);font-size:var(--text-sm);line-height:1.45;color:var(--text-faint)}@media(max-width:760px){.catalogue-expanded .palette{display:flex}.catalogue-expanded .palette-lib,.catalogue-expanded .palette-lib>div{display:block}.catalogue-expanded .palette-item{display:grid;grid-template-columns:28px minmax(0,1fr)}.catalogue-expanded .catalogue-details{grid-column:1 / -1;margin-top:8px;padding:8px 0 0;border-top:1px solid var(--border);border-left:0}.catalogue-expanded .catalogue-detail-grid{grid-template-columns:1fr}}.palette-search{flex:none;padding:6px 10px;font-size:var(--text-sm)}@media(pointer:coarse){.palette-search{min-height:44px}}.palette-search::-webkit-search-cancel-button{-webkit-appearance:none}.palette-tooltip{position:fixed;z-index:var(--z-tooltip);width:280px;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);padding:10px 12px;pointer-events:none}.palette-tooltip-title{display:flex;align-items:baseline;gap:8px;margin-bottom:4px}.palette-tooltip-label{font-size:var(--text-md);font-weight:600}.palette-tooltip-type{font-family:var(--mono);font-size:var(--text-xs);color:var(--text-faint)}.palette-tooltip-text{font-size:var(--text-sm);color:var(--text-dim);line-height:1.55;margin:0}.runbar{flex:none;display:flex;align-items:center;gap:10px;height:42px;padding:0 12px;background:var(--panel);border-bottom:1px solid var(--border)}.runbar>*{min-width:0}.time-track{flex:none;display:flex;align-items:center;gap:12px;height:34px;padding:0 12px;background:var(--panel);border-bottom:1px solid var(--border)}.time-track-readout{min-width:12ch;text-align:right}.time-track-readout{flex:none;font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--text-dim);white-space:nowrap}.time-track-readout.percent{min-width:4ch}.time-track-unit{min-width:0;overflow:hidden;color:var(--text-faint);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap}.sc-scrubber{flex:1;min-width:80px;width:auto;height:22px;padding:0;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;cursor:pointer}.sc-scrubber:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:var(--radius-pill)}.sc-scrubber:focus{box-shadow:none}.sc-scrubber::-webkit-slider-runnable-track{height:4px;border-radius:var(--radius-pill);background:var(--panel-3)}.sc-scrubber::-webkit-slider-thumb{width:15px;height:15px;margin-top:-5.5px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border-strong);border-radius:50%;background:var(--accent)}.sc-scrubber::-moz-range-track{height:4px;border-radius:var(--radius-pill);background:var(--panel-3)}.sc-scrubber::-moz-range-thumb{width:15px;height:15px;border:1px solid var(--border-strong);border-radius:50%;background:var(--accent)}.sc-scrubber:disabled{cursor:default;opacity:.45}.runbar-track{position:relative;flex:1;min-width:64px;height:4px;border-radius:var(--radius-pill);background:var(--panel-3);overflow:hidden}.runbar-fill{height:100%;width:100%;background:var(--run-live);transform:scaleX(0);transform-origin:left center;transition:transform .22s linear}.runbar-track.phase-starting .runbar-fill,.runbar-track.phase-fetching .runbar-fill{width:34%;animation:runbar-indeterminate 1.1s var(--ease) infinite}.runbar-track.phase-error .runbar-fill,.runbar-track.phase-unreachable .runbar-fill{transform:scaleX(1);background:var(--error)}@keyframes runbar-indeterminate{0%{transform:translate(-100%)}to{transform:translate(300%)}}.run-phase{flex:none;display:inline-flex;align-items:center;gap:6px;color:var(--text-dim);font-size:var(--text-xs);font-weight:500;white-space:nowrap}.run-phase-dot{width:6px;height:6px;border-radius:50%;background:var(--text-faint)}.run-phase.live .run-phase-dot{background:var(--run-live)}.run-phase.done .run-phase-dot{background:var(--run-done)}.run-phase.fault .run-phase-dot{background:var(--error)}.run-phase.working .run-phase-dot{animation:run-phase-pulse 1.6s ease-in-out infinite}@keyframes run-phase-pulse{50%{opacity:.35}}@media(prefers-reduced-motion:reduce){.runbar-track.phase-starting .runbar-fill,.runbar-track.phase-fetching .runbar-fill{animation:none;width:100%;transform:scaleX(1);opacity:.4}.runbar-fill{transition:none}.run-phase.working .run-phase-dot{animation:none}}.runbar-stack{display:flex;flex-direction:column;min-width:0}.runbar-stack .runbar{flex-wrap:wrap;min-height:42px;height:auto;padding:4px 6px;gap:5px;border:0}.transport-buttons{display:flex;align-items:center;gap:3px;flex:none}.btn.transport-button{display:inline-flex;align-items:center;justify-content:center;width:32px;min-width:32px;height:32px;padding:0}.btn.transport-button.stop{background:var(--panel);border-color:var(--run-live);color:var(--run-live)}.btn.transport-button.stop:hover:not(:disabled){background:color-mix(in srgb,var(--run-live) 10%,var(--panel));border-color:var(--run-live)}.btn.transport-button[aria-disabled=true]{border-color:color-mix(in srgb,var(--border-strong) 45%,transparent);cursor:default}.btn.transport-button[aria-disabled=true]>svg{opacity:.45}.btn.transport-button[aria-disabled=true]:hover{background:var(--panel);border-color:color-mix(in srgb,var(--border-strong) 45%,transparent)}.btn.transport-button.primary[aria-disabled=true],.btn.transport-button.primary[aria-disabled=true]:hover{background:var(--action-bg);border-color:var(--action-bg)}.runbar-warning-count{flex:none;padding:3px 6px;border:1px solid color-mix(in srgb,var(--warn) 35%,var(--border));border-radius:var(--radius-pill);background:color-mix(in srgb,var(--warn) 8%,var(--panel));color:var(--warn);font:600 var(--text-xs) var(--sans);cursor:pointer}.transport-select{display:grid;grid-template-rows:auto auto;align-items:center;min-width:0;min-height:32px;padding:2px 7px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);transition:border-color var(--dur) var(--ease)}.transport-select:hover:not(:disabled,:has(select:disabled)){border-color:var(--border-hover)}button.transport-select{text-align:left;cursor:pointer}button.transport-select strong{overflow:hidden;color:var(--text);font:600 var(--text-xs)/18px var(--mono);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.transport-select>span{color:var(--text-faint);font:500 var(--text-xs) / 1.1 var(--sans)}.transport-select select{width:100%;min-width:0;height:18px;padding:0 22px 0 0;border:0;background-color:transparent;color:var(--text);font:600 var(--text-xs)/18px var(--sans);text-overflow:ellipsis;cursor:pointer}.transport-select select:disabled{cursor:default;opacity:1}.transport-select select:focus{outline:none;box-shadow:none}.transport-select:has(select:focus-visible){outline:2px solid var(--focus);outline-offset:2px}.transport-select:has(select:disabled){opacity:.45}button.transport-select:disabled{cursor:default;opacity:.45}.transport-experiment{width:112px}.transport-steps,.transport-branch{position:relative;width:68px}.transport-steps>.transport-select,.transport-branch>.transport-select{width:100%}.steps-menu{right:auto;top:auto;bottom:calc(100% + 6px);left:0;min-width:180px}.steps-menu .menu-item{flex-direction:row;align-items:center;justify-content:space-between}.steps-custom{display:grid;grid-template-columns:1fr auto;align-items:end;gap:6px;padding:8px;border-top:1px solid var(--border)}.steps-custom label{display:grid;gap:3px;color:var(--text-faint);font-size:var(--text-xs)}.steps-custom input{width:92px}.steps-custom .field-error{grid-column:1 / -1;color:var(--error);font-size:var(--text-xs)}.transport-branch strong svg{margin-right:4px;vertical-align:-1px;color:var(--text-faint)}.branch-menu{top:auto;right:0;bottom:calc(100% + 6px);left:auto;min-width:260px}.branch-menu .menu-item.on{background:color-mix(in srgb,var(--accent) 10%,transparent)}.branch-menu .menu-item.on .menu-item-label{color:var(--accent)}.transport-speed{width:106px}.transport-run-target{width:min(230px,24vw)}.btn.results-button{display:inline-flex;align-items:center;gap:5px;flex:none;height:32px}.run-status{display:flex;align-items:center;gap:8px;padding:5px 10px 6px;border-top:1px solid var(--border);font-size:var(--text-xs);line-height:1.4;contain:inline-size}.execution-message{display:flex;align-items:center;min-width:0;color:var(--text-dim)}.execution-message>*{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.execution-message:before{content:"·";margin-right:8px;color:var(--text-faint)}.execution-message.err{color:var(--error)}.execution-message-action{padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.execution-message-action:hover{text-decoration:underline;text-underline-offset:2px}@media(max-width:760px),(pointer:coarse){.runbar-stack .runbar .transport-button{width:44px;min-width:44px;height:44px}.results-button{min-height:44px}.transport-select{position:relative;display:block;height:44px;min-height:44px}.transport-select>span{position:absolute;top:3px;left:7px;pointer-events:none}.transport-select select{height:44px;padding-top:10px;line-height:30px}.transport-steps,.transport-branch{width:76px;height:44px}.transport-menu>.transport-select strong{display:block;padding-top:10px;line-height:34px}.sc-scrubber{height:44px}.sc-scrubber:focus-visible{outline-offset:-2px}}@media(max-width:760px){.steps-menu{right:0;left:auto}.steps-menu[data-align=start]{right:auto;left:0}.transport-branch{position:static}.branch-menu{left:0;min-width:0}.transport-experiment,.transport-run-target{flex:1 1 120px;width:auto}}@media(pointer:coarse){.steps-custom input,.runbar-warning-count{min-height:44px}.run-status{box-sizing:content-box;min-height:44px;padding-block:0}.execution-message-action{min-height:44px;margin-inline:-4px;padding-inline:4px}.execution-message-action:focus-visible{outline-offset:-2px}}@media(pointer:coarse)and (max-height:600px){.run-status{flex:1 0 min(300px,100%);margin:-2.5px 0 -2.5px -6px;padding-inline:0;border-top:0}.run-status>.run-phase{margin-inline-start:10px}.run-status>.execution-message{margin-inline-end:4px}}.canvas-host{flex:1;min-height:0;position:relative}.layout-animating .react-flow__node{transition:transform .32s cubic-bezier(.22,1,.36,1)}@media(prefers-reduced-motion:reduce){.layout-animating .react-flow__node{transition:none}}.sc-context-menu{position:fixed;z-index:var(--z-context-menu);width:max-content;min-width:180px;max-width:calc(100vw - 8px);background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);padding:4px}.sc-context-menu button{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;background:none;border:none;border-radius:var(--radius);padding:6px 10px;font-family:var(--sans);font-size:var(--text-md);text-align:left;color:var(--text);cursor:pointer}.sc-context-menu button:hover:not(:disabled){background:var(--panel-3)}.sc-context-menu button:disabled{color:var(--text-faint);cursor:default}.sc-context-menu kbd{font-family:var(--mono);font-size:var(--text-xs);color:var(--text-faint)}.canvas-empty{flex:1;display:grid;place-items:center;position:relative}.react-flow{--xy-background-color: var(--bg)}.react-flow__background{background:var(--bg)}.react-flow__background pattern circle{fill:var(--dots)}.react-flow__attribution{background:transparent;color:var(--text-faint);font-size:var(--text-xs)}.react-flow__attribution a{position:relative;color:inherit}.react-flow__attribution a:focus-visible{outline-offset:0}.react-flow__attribution a:before{content:"";position:absolute;top:-10px;right:-3px;bottom:-2px;left:0}@media(pointer:coarse){.react-flow__attribution a:before{top:-28px;right:-3px;bottom:-2px;left:0}}@media(max-width:760px){.react-flow__panel.react-flow__attribution{margin:0 12px calc(var(--exec-top, 0px) + 12px) 0}}@media not (max-width:1100px){.workbench:has(>.workbench-inspector) .react-flow__panel.react-flow__attribution{margin-right:var(--side-width, 360px)}}.react-flow__controls{box-shadow:var(--shadow-node);border:1px solid var(--border-strong);border-radius:var(--radius);overflow:hidden}.react-flow__controls-button{background:var(--panel);border-bottom:0;color:var(--text-dim)}.react-flow__controls-button+.react-flow__controls-button{border-top:1px solid var(--border)}.react-flow__controls-button:hover{background:var(--panel-3);color:var(--text)}.react-flow__controls-button[aria-pressed=true]{background:color-mix(in srgb,var(--accent) 12%,var(--panel));color:var(--accent)}.react-flow__controls-button:focus-visible{outline-offset:-2px}.react-flow__controls-button:first-child{border-top-left-radius:calc(var(--radius) - 1px);border-top-right-radius:calc(var(--radius) - 1px)}.react-flow__controls-button:last-child{border-bottom-left-radius:calc(var(--radius) - 1px);border-bottom-right-radius:calc(var(--radius) - 1px)}.react-flow__controls-button:disabled .sc-control-icon{opacity:.45;fill-opacity:1}.react-flow__controls-button:disabled{pointer-events:auto;cursor:default;background:var(--panel);color:var(--text-dim)}.diagram-lock-note,.tool-lock-note{margin:0;padding:4px 8px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow-node);color:var(--text-dim);font:500 var(--text-xs) / 1.4 var(--sans);white-space:nowrap;pointer-events:none}.placing-component .react-flow__pane:not(.dragging){cursor:crosshair}.placement-preview{position:absolute;z-index:var(--z-raised);width:max-content;max-width:230px;display:flex;flex-direction:column;gap:4px;padding:7px 10px;border:1px solid color-mix(in srgb,var(--accent) 55%,var(--border-strong));border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow-node);color:var(--text);font-size:var(--text-sm);font-weight:600;pointer-events:none}.placement-preview-type{display:inline-flex;align-items:center;gap:8px}.placement-preview-hint{color:var(--text-dim);font:500 var(--text-xs) / 1.4 var(--sans)}.react-flow__minimap{box-sizing:content-box;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-node);overflow:hidden;opacity:.75;transition:opacity var(--dur) var(--ease)}.react-flow__minimap:hover{opacity:1}.react-flow__minimap-mask{fill:color-mix(in srgb,var(--bg) 55%,transparent);stroke:var(--border-hover);stroke-width:2}.react-flow__panel.react-flow__minimap{margin:0 12px calc(var(--exec-top, 0px) + 12px) 0}.workbench:has(>.results-tray) .react-flow__panel.react-flow__minimap{margin-bottom:calc(var(--tray-top, 0px) + 12px)}.workbench[data-no-map-room] :is(.map-control,.react-flow__minimap){display:none}.workbench:has(>.workbench-inspector) .react-flow__panel.react-flow__minimap{margin-right:calc(var(--side-width, 360px) + 12px)}.react-flow__node:focus-visible{outline:none}.react-flow__edge:focus-visible{outline:none}.react-flow__edge-path{--sc-line: var(--edge);--xy-edge-stroke-selected: var(--sc-line);stroke:var(--sc-line);stroke-width:1.5}.react-flow__edge.state-edge .react-flow__edge-path{stroke-width:2;stroke-linecap:round;stroke-dasharray:.5 4.5}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge:focus-visible .react-flow__edge-path{--sc-line: var(--accent);stroke-width:2}.react-flow__edge.has-errors .react-flow__edge-path{--sc-line: var(--error);stroke-width:2}.react-flow__edge.has-warnings .react-flow__edge-path{--sc-line: var(--warn);stroke-width:2}.react-flow__edge:focus-visible .react-flow__edge-path{stroke-width:3}.sc-edge-label{position:absolute;box-sizing:border-box;display:grid;grid-auto-flow:column;grid-auto-columns:max-content;align-items:baseline;min-width:min-content;padding:2px 4px;border-radius:var(--radius-sm);background:var(--panel);color:var(--text-dim);font:500 var(--text-xs) / 1.4 var(--sans);white-space:nowrap;pointer-events:all}.sc-edge-label.selectable{cursor:pointer}.sc-edge-label:has(>.sc-edge-label-author){grid-template-columns:minmax(1em,max-content)}.sc-edge-label-author{overflow:hidden;text-overflow:ellipsis}.sc-edge-label.rule{padding:2px 6px;border:1px solid var(--border-strong);border-radius:var(--radius)}.sc-edge-label-rule{font-family:var(--mono);font-weight:600;font-variant-numeric:tabular-nums}.sc-edge-label-author+.sc-edge-label-rule:before{content:"·";margin:0 4px}.react-flow__connection-path{stroke:var(--accent)}.react-flow__handle{width:9px;height:9px;border-radius:50%;background:var(--panel);border:2px solid var(--accent, var(--gray-600))}.react-flow__handle[data-kind=message]{border-radius:1px}.react-flow__handle-left[data-kind=value]{border-radius:1px;transform:translate(-50%,-50%) rotate(45deg)}.react-flow__handle-right[data-kind=value]{border-radius:1px;transform:translate(50%,-50%) rotate(45deg)}.react-flow__handle.view-handle{opacity:0;pointer-events:none}.notation-node{--accent: var(--gray-600);--sc-line: color-mix(in srgb, var(--accent) 42%, var(--border-strong));--sc-fill: var(--panel);--sc-halo: transparent;--sc-stroke: 1.5px;position:relative;font-family:var(--sans)}.react-flow__node-scComponent{pointer-events:none!important}.react-flow__node-scComponent.selectable .sc-node-symbol{pointer-events:auto}.react-flow__node-scComponent.selectable .notation-node.form-bare .sc-node-symbol{pointer-events:none}.react-flow__node-scComponent.selectable .notation-node.form-bare .sc-node-outline,.react-flow__node-scComponent.selectable .notation-node.form-bare .sc-node-inner,.react-flow__node-scComponent.selectable .notation-node.form-bare .sc-node-caption,.react-flow__node-scComponent.selectable .notation-node.form-bare .sc-node-live-badge,.react-flow__node-scComponent.selectable .notation-node.form-bare .sc-node-diagnostic{pointer-events:auto}@media(pointer:coarse){.react-flow__node-scComponent.selectable .notation-node.form-bare .sc-node-symbol{pointer-events:auto}}.notation-node.form-card,.notation-node.form-chip{--sc-line: color-mix(in srgb, var(--accent) 36%, var(--border))}.notation-node.shape-register{--sc-fill: color-mix(in srgb, var(--accent) 24%, var(--panel));--sc-line: var(--accent)}.notation-node.interactive{--sc-stroke: 5px}.notation-node.selected{--sc-line: var(--accent);--sc-halo: color-mix(in srgb, var(--accent) 28%, transparent)}.notation-node.has-warnings{--sc-line: var(--warn);--sc-halo: color-mix(in srgb, var(--warn) 24%, transparent)}.notation-node.has-errors{--sc-line: var(--error);--sc-halo: color-mix(in srgb, var(--error) 24%, transparent)}.sc-node-silhouette{position:absolute;top:0;right:0;bottom:0;left:0;overflow:visible;pointer-events:none}.sc-node-halo,.sc-node-outline,.sc-node-gap,.sc-node-inner{stroke-linejoin:round;transition:stroke var(--dur) var(--ease)}.sc-node-halo{fill:none;stroke:var(--sc-halo);stroke-width:calc(var(--sc-stroke) + 4px)}.sc-node-shadow{fill:var(--shadow-node-color);transform:translateY(calc(2px + var(--sc-stroke) / 2))}.sc-node-outline{fill:var(--sc-fill);stroke:var(--sc-line);stroke-width:var(--sc-stroke)}.sc-node-gap{fill:none;stroke:var(--sc-fill);stroke-width:calc(var(--sc-stroke) - 3px)}.sc-node-inner{fill:none;stroke:var(--sc-line);stroke-width:1.5px;stroke-linecap:round}.sc-node-solid{fill:var(--accent)}.notation-node.unknown .sc-node-outline{stroke-dasharray:4 3}.sc-node-cloud{fill:var(--panel);stroke:var(--edge);stroke-width:1.5px;stroke-linejoin:round}.sc-node-cloud .sc-node-pipe{fill:var(--edge)}.sc-node-symbol{position:absolute;box-sizing:border-box;border-radius:var(--radius-sm)}.notation-node.shape-circle .sc-node-symbol,.notation-node.shape-delay .sc-node-symbol{border-radius:50%}.react-flow__node:focus-visible .sc-node-symbol{outline:2px solid var(--focus);outline-offset:4px}.sc-node-reading{position:absolute;transform:translate(-50%,-50%);overflow:hidden;color:var(--text);font-family:var(--mono);font-weight:600;font-variant-numeric:tabular-nums;line-height:1;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}.sc-node-mark{position:absolute;left:calc(100% + 1px);color:var(--text);font:600 var(--text-sm) / 1 var(--mono);pointer-events:none}.sc-node-mark.top{bottom:calc(100% - 4px)}.sc-node-mark.bottom{top:calc(100% - 4px)}.sc-node-live-badge{position:absolute;right:-7px;bottom:-6px;max-width:62px;padding:2px 5px;overflow:hidden;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--border));border-radius:var(--radius-pill);background:var(--panel);color:var(--text);font:600 var(--text-xs) var(--mono);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.sc-node-diagnostic{position:absolute;top:-7px;left:-7px;z-index:var(--z-raised);display:grid;width:16px;height:16px;place-items:center;border-radius:50%;background:var(--error);color:var(--panel);font:700 var(--text-xs) / 1 var(--sans)}.has-warnings .sc-node-diagnostic{background:var(--warn)}.sc-node-label{box-sizing:border-box;min-width:0;max-width:100%;overflow:hidden;color:var(--text);font:600 var(--text-sm) / 1.25 var(--sans);text-overflow:ellipsis;white-space:nowrap}.sc-node-label:focus-visible,.sc-node-label-input{outline:2px solid var(--focus);outline-offset:1px}.sc-node-label-input{border:0;border-radius:var(--radius-sm);padding:0;background:var(--panel);cursor:text}.sc-node-caption{position:absolute;z-index:var(--z-raised);display:flex;flex-direction:column;align-items:center;width:max-content;max-width:150px;padding:2px 4px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--bg) 88%,transparent);text-align:center}.sc-node-caption .sc-node-label{cursor:grab}.sc-node-caption .sc-node-label-input{width:132px;text-align:center}.sc-node-sublabel{max-width:100%;overflow:hidden;color:var(--text-faint);font:400 var(--text-xs) / 1.3 var(--mono);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.sc-node-sublabel.live{color:var(--text);font-weight:600}.sc-node-caption.anchor-n{left:50%;bottom:calc(100% + 6px);transform:translate(-50%)}.sc-node-caption.anchor-ne{left:calc(100% + 6px);bottom:calc(100% + 2px);align-items:flex-start;text-align:left}.sc-node-caption.anchor-e{left:calc(100% + 6px);top:50%;transform:translateY(-50%);align-items:flex-start;text-align:left}.sc-node-caption.anchor-se{left:calc(100% + 6px);top:calc(100% + 2px);align-items:flex-start;text-align:left}.sc-node-caption.anchor-s{left:50%;top:calc(100% + 6px);transform:translate(-50%)}.sc-node-caption.anchor-sw{right:calc(100% + 6px);top:calc(100% + 2px);align-items:flex-end;text-align:right}.sc-node-caption.anchor-w{right:calc(100% + 6px);top:50%;transform:translateY(-50%);align-items:flex-end;text-align:right}.sc-node-caption.anchor-nw{right:calc(100% + 6px);bottom:calc(100% + 2px);align-items:flex-end;text-align:right}.sc-node-card,.sc-node-chip{background:var(--panel);border:1px solid var(--sc-line);border-radius:var(--radius);box-shadow:0 0 0 2px var(--sc-halo),var(--shadow-node);transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.notation-node.interactive .sc-node-card,.notation-node.interactive .sc-node-chip{box-shadow:0 0 0 2px var(--panel),0 0 0 3px var(--sc-line),0 0 0 5px var(--sc-halo),var(--shadow-node)}.notation-node.unknown .sc-node-card,.notation-node.unknown .sc-node-chip{border-style:dashed}.sc-node-card-head{display:flex;align-items:center;gap:7px;height:30px;padding:0 10px}.sc-node-card-head .sc-type-glyph{width:15px;height:15px}.sc-node-card-body{display:flex;flex-direction:column;padding:5px 10px 6px;border-top:1px solid var(--border)}.sc-node-row{display:flex;align-items:baseline;gap:6px;font-family:var(--mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;line-height:1.45;white-space:nowrap}.sc-node-row .k{flex:none;color:var(--text-faint)}.sc-node-row .v{min-width:0;overflow:hidden;color:var(--text);font-weight:600;text-overflow:ellipsis}.sc-node-row .of{margin:0 .6ch;color:var(--text-faint);font-weight:400}.sc-node-chip{display:flex;align-items:center;gap:6px;height:28px;padding:0 10px;transform:translate(-50%,-50%);white-space:nowrap}.sc-node-chip .sc-type-glyph{width:14px;height:14px}.sc-node-chip .sc-node-label{max-width:120px}.sc-node-setting{display:inline-flex;gap:.6ch;font-family:var(--mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.sc-node-setting:before{content:"·";color:var(--text-faint)}.sc-node-setting .k{color:var(--text-faint)}.sc-node-setting .v{color:var(--text);font-weight:600}.sc-node-details{position:absolute;z-index:var(--z-tooltip);left:100%;top:0;width:230px;box-sizing:border-box;display:flex;flex-direction:column;gap:4px;padding:9px 10px;pointer-events:none;visibility:hidden;opacity:0;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-pop);color:var(--text-dim);font-size:var(--text-xs);text-align:left;white-space:normal;transform-origin:0 0;transform:scale(calc(1 / var(--canvas-zoom, 1))) translate(var(--details-x, 12px),var(--details-y, -10px));transition:opacity .1s var(--ease) .22s,visibility 0s linear .32s}.sc-node-details strong{overflow:hidden;color:var(--text);font-size:var(--text-sm);font-weight:600;text-overflow:ellipsis;white-space:nowrap}.sc-node-details code{color:var(--text-faint);font-size:var(--text-xs)}.sc-node-details .sc-node-row{white-space:normal}.sc-node-details .sc-node-row .v{overflow-wrap:anywhere}.sc-node-detail-error{color:var(--error)}.sc-node-detail-warning{color:var(--warn)}.notation-node:not(.selected):hover .sc-node-details,.react-flow__node:focus-visible .notation-node:not(.selected) .sc-node-details{visibility:visible;opacity:1;transition-delay:.22s,.22s}.react-flow__nodes{position:relative;z-index:0}.react-flow__node:not(.selected):hover,.react-flow__node:not(.selected):focus-within{z-index:var(--z-raised)!important}.notation-node .react-flow__handle{opacity:0;pointer-events:none}.notation-node:hover .react-flow__handle,.react-flow__node:focus-within .react-flow__handle,.notation-node.selected .react-flow__handle{opacity:1;pointer-events:auto}@media(pointer:coarse){.react-flow__node-scComponent.selected:not(.dragging){z-index:calc(-1 * var(--z-raised))!important}.notation-node .react-flow__handle:before{--reach: calc(44px / var(--canvas-zoom, 1));--tall: min(var(--reach), var(--port-gap, var(--reach)));content:"";position:absolute;top:calc(50% - var(--tall) / 2);width:calc(100% + var(--reach));height:var(--tall)}.notation-node .react-flow__handle-left:before{right:0;transform-origin:calc(50% + var(--reach) / 2) 50%}.notation-node .react-flow__handle-right:before{left:0;transform-origin:calc(50% - var(--reach) / 2) 50%}.notation-node .react-flow__handle[data-kind=value]:before{rotate:-45deg}}.react-flow__edge .react-flow__edge-path.sc-edge-pulse{--sc-line: var(--accent);stroke-width:3;stroke-linecap:round;stroke-dasharray:.5 11;animation:sc-edge-flow .7s linear infinite}.react-flow__edge.has-errors .sc-edge-pulse{--sc-line: var(--error)}.react-flow__edge.has-warnings .sc-edge-pulse{--sc-line: var(--warn)}@keyframes sc-edge-flow{to{stroke-dashoffset:-11.5}}@media(prefers-reduced-motion:reduce){.react-flow__edge .react-flow__edge-path.sc-edge-pulse{animation:none;stroke-dasharray:none;stroke-width:2.5}}@media(pointer:coarse){.notation-node .react-flow__handle{z-index:var(--z-raised)}}.react-flow__node.connect-target:not(:focus-visible) .sc-node-symbol{outline:calc(2px / var(--canvas-zoom, 1)) dashed var(--focus);outline-offset:calc(4px / var(--canvas-zoom, 1))}.react-flow__node.connect-target .sc-node-symbol{cursor:pointer}.react-flow__node.connect-blocked .notation-node{opacity:.35}.react-flow__node.connect-blocked .sc-node-symbol{cursor:not-allowed}@media(pointer:coarse){.canvas-host.connecting .sc-node-details{display:none}}.connect-status{position:absolute;top:calc(var(--chrome-top, 0px) + 12px);left:50%;z-index:var(--z-raised);display:flex;align-items:center;gap:8px;width:max-content;max-width:calc(100% - 24px);padding:4px 4px 4px 12px;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-pop);transform:translate(-50%)}.connect-status-text{margin:0;color:var(--text-dim);font:500 var(--text-sm) / 1.4 var(--sans)}.connect-status-text strong{color:var(--text);font-weight:600}.configuration-head .connect-start{position:relative;z-index:calc(var(--z-resizer) + 1);margin-left:auto}.configuration-head .connect-start+button{margin-left:0}.app-start{display:block;overflow-y:auto}.start-screen{position:relative;width:100%;min-height:100%;display:grid;place-items:center;padding:24px;background:var(--bg)}.start-content{width:min(472px,100%)}.start-mark{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 0 64px;color:var(--heading);font-size:var(--text-2xl);font-weight:600;letter-spacing:-.012em}.start-mark .brand-mark{width:40px;height:40px}.start-actions{display:grid;gap:2px;padding-bottom:24px;border-bottom:1px solid var(--border-strong)}.start-actions button{min-height:48px;display:flex;align-items:center;justify-content:space-between;margin-inline:-12px;padding:0 12px;border:0;border-radius:var(--radius);background:transparent;color:var(--text);font:inherit;font-size:var(--text-xl);text-align:left;cursor:pointer}.start-actions button:hover{background:var(--panel-3)}.start-actions button:focus-visible,.start-help:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.start-actions kbd{color:var(--text-faint);font-family:var(--sans);font-size:var(--text-md)}.start-recents,.start-examples{padding-top:24px}.start-recents h2,.start-examples h2{margin:0 0 18px;color:var(--text-faint);font-size:var(--text-xl);font-weight:500}.start-recents p{margin:0;color:var(--text-faint);font-size:var(--text-md)}.start-examples{margin-top:24px;border-top:1px solid var(--border-strong)}.start-recent-list,.start-example-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 24px}.start-recent-list button,.start-example-list button{min-width:0;display:flex;flex-direction:column;gap:3px;margin-inline:-12px;padding:9px 12px;border:0;border-radius:var(--radius);background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.start-recent-list button:hover,.start-example-list button:hover{background:var(--panel-3)}.start-recent-list button:focus-visible,.start-example-list button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.start-recent-list span,.start-example-list span{font-size:var(--text-md);font-weight:500}.start-recent-list small,.start-example-list small{color:var(--text-faint);font-size:var(--text-xs);line-height:1.4;overflow-wrap:anywhere}.start-screen .load-error{margin-top:12px}.start-help{position:fixed;right:12px;bottom:12px;width:32px;height:32px;display:grid;place-items:center;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--panel);color:var(--text);cursor:pointer}.start-help:hover{border-color:var(--border-hover);background:var(--panel-3)}@media(max-width:560px){.start-screen{align-items:start;padding:20vh 24px 76px}.start-mark{margin-bottom:44px}.start-actions button,.start-help{min-height:44px}.start-help{width:44px;height:44px}.start-recent-list,.start-example-list{grid-template-columns:1fr}}@media(prefers-reduced-motion:no-preference){.start-actions button,.start-recent-list button,.start-example-list button{transition:background var(--dur) var(--ease)}}.workbench{position:relative;display:block;overflow:clip}.workbench-canvas{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--bg)}.workbench-canvas:focus-visible:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:var(--z-raised);box-shadow:inset 0 0 0 2px var(--focus);pointer-events:none}.workbench-app,.workbench-view,.workbench-execution,.workbench-tools,.workbench-inspector{position:absolute;z-index:var(--z-menu)}.workbench-app:has(.menu-list),.workbench-execution:has(.menu-list){z-index:calc(var(--z-menu) + 2)}.workbench-app{top:12px;left:12px;max-width:min(420px,calc(50vw - 92px));max-height:calc(100% - max(var(--exec-top, 0px),var(--controls-top, 0px)) - 24px);display:flex;flex-direction:column;align-items:flex-start;gap:6px;pointer-events:none}.workbench-app>*{pointer-events:auto}.workbench-app>:not(.model-summary){flex-shrink:0}.workbench-view{top:12px;left:50%;transform:translate(-50%)}.workbench-execution{bottom:12px;left:50%;transform:translate(-50%);width:max-content;max-width:calc(100% - (2*max(var(--controls-right, 0px),var(--credit-width, 0px))) - 24px);min-width:0;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-pop);overflow:visible}.workbench-tools{top:12px;right:12px;display:flex;flex-direction:column;align-items:flex-end;gap:8px;pointer-events:none}.workbench-tools>.tool-strip{pointer-events:auto}.stage-controls{z-index:var(--z-raised)}.react-flow__panel.bottom.left{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin:12px;pointer-events:none}.react-flow__panel.bottom.left>.react-flow__controls{pointer-events:auto}.react-flow__controls-button{width:28px;height:28px;padding:4px}.react-flow__controls-button .sc-control-icon{width:15px;height:15px;max-width:none;max-height:none;flex:0 0 15px;stroke:currentColor}@media(max-width:760px){.react-flow__controls-button{width:44px;height:44px}}@media(max-width:760px),(pointer:coarse)and (max-height:600px),(max-height:340px){.authoring-control,.lock-control[aria-pressed=false],.map-control,.react-flow__minimap,.diagram-lock-note{display:none}}.component-catalogue{z-index:calc(var(--z-menu) + 1);display:flex;flex-direction:column;min-height:0;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);overflow:hidden}.catalogue-edge{--catalogue-top: 62px;position:absolute;top:var(--catalogue-top);bottom:calc(var(--exec-top, 0px) + 12px);right:12px;width:min(340px,calc(100vw - 24px))}@media(pointer:coarse){.catalogue-edge{--catalogue-top: 74px}}.workbench:has(>.workbench-inspector) .catalogue-edge{--beside-overflow: calc(var(--chrome-right, 0px) + 12px + 340px + 12px + var(--side-width, 360px) - 100vw);--below-overflow: calc(var(--chrome-top, 0px) + 12px + 240px + 12px + var(--exec-top, 0px) - 100dvh);top:max(var(--catalogue-top),min(calc(var(--chrome-top, 0px) + 12px),calc(var(--beside-overflow) * 1000),calc(var(--below-overflow) * -1000)));right:calc(var(--side-width, 360px) + 12px - clamp(0px,min(var(--beside-overflow),var(--below-overflow)) * 1000,var(--side-width, 360px)))}.catalogue-quick{position:fixed;width:min(320px,calc(100vw - 24px));max-height:min(460px,calc(100dvh - 24px))}.catalogue-expanded{position:absolute;top:12px;right:12px;bottom:12px;left:12px}.experiment-dialog{z-index:var(--z-overlay)}.experiment-dialog-body{flex:1;min-height:0;overflow-y:auto;scroll-padding-block:8px}.experiment-dialog-body>.inspector-body{width:min(1120px,100%);margin:0 auto;padding:24px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:28px}.experiment-dialog-body .inspector-body>.pane-section~.pane-section{padding-top:0;border-top:0}.catalogue-head{min-height:42px;display:flex;align-items:center;gap:12px;padding:6px 8px 6px 12px;border-bottom:1px solid var(--border);font-size:var(--text-sm);font-weight:600}.catalogue-head-actions{display:flex;align-items:center;gap:4px;margin-left:auto}.component-catalogue>.palette{flex:1;min-height:0;overflow-y:auto;scroll-padding-block:8px}.component-catalogue .pane-title{display:none}.workbench-inspector{--inspect-top: calc(64px + var(--inspect-offset, 0px));z-index:calc(var(--z-menu) - 1);top:var(--inspect-top);right:0;width:var(--side-width, 360px);max-width:calc(100vw - 12px);max-height:calc(100dvh - var(--inspect-top) - 12px);display:flex;flex-direction:column;min-height:0;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius-lg) 0 0 var(--radius-lg);box-shadow:var(--shadow-pop);overflow:hidden}@media(pointer:coarse){.workbench-inspector{--inspect-top: calc(76px + var(--inspect-offset, 0px))}}.workbench-inspector>.drawer-resizer{display:none}.configuration-head{min-height:44px;display:flex;align-items:center;gap:12px;padding:5px 8px 5px 14px;border-bottom:1px solid var(--border)}.configuration-head h2{margin:0;font-size:var(--text-md);font-weight:600}.configuration-head button{margin-left:auto}@media not (max-width:760px){.workbench:has(>.workbench-inspector)>.results-tray{right:calc(var(--side-width, 360px) + 12px)}.workbench:has(>.workbench-inspector) .code-view{padding-right:var(--side-width, 360px)}}@media not (max-width:1100px){.workbench:has(>.workbench-inspector)>.workbench-execution{left:calc((100% - var(--side-width, 360px)) / 2);max-width:calc(100% - var(--side-width, 360px) - 2 * max(var(--controls-right, 0px),var(--credit-width, 0px)) - 24px)}}@media(not (max-width:760px))and (max-width:1100px){.workbench-inspector{max-height:calc(100dvh - var(--inspect-top) - var(--exec-top, 0px) - 12px)}}.floating-control{display:inline-flex;align-items:center;padding:4px;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-pop)}.floating-control button{min-height:32px;padding:0 11px;border:0;border-radius:var(--radius);background:transparent;color:var(--text-dim);font:500 var(--text-sm) var(--sans);cursor:pointer}.floating-control button.icon-centered{display:inline-flex;align-items:center;justify-content:center}.floating-control button:hover{background:color-mix(in srgb,var(--panel-3) 50%,var(--panel));color:var(--text)}.floating-control button:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.floating-control button.on{background:var(--panel-3);color:var(--text)}.floating-control button:disabled,.floating-control button:disabled:hover{background:transparent;color:var(--text-faint);opacity:.5;cursor:default}.workspace-view-switch button{min-width:62px}.workspace-view-switch button:not(.on):hover{background:transparent}.tool-strip{gap:2px}.tool-separator{width:1px;height:22px;margin:0 3px;background:var(--border-strong)}.workbench:has(.tool-lock-note)>.workbench-inspector{--inspect-offset: calc(8px + var(--text-xs) * 1.4 + 10px)}.workbench-app .topbar{width:max-content;max-width:100%;height:42px;padding:0 4px;gap:4px;border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop)}.workbench-app .load-error{width:100%;max-width:320px;border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);font-size:var(--text-sm)}.workbench-app .brand{padding-inline:5px}.workbench-app .brand-tag{display:none}.workbench-app .topbar-doc{flex:0 1 auto;max-width:130px}.workbench-app .topbar-actions{gap:0}.workbench-execution .runbar{min-height:40px;height:auto;padding:3px 6px;gap:6px;border:0;border-radius:0 0 var(--radius-lg) var(--radius-lg)}.workbench-execution .time-track{height:32px;border-bottom:1px solid var(--border);border-radius:var(--radius-lg) var(--radius-lg) 0 0}@media(pointer:coarse){.workbench-execution .time-track{height:44px}}.workbench-execution .time-track:empty{height:0;border-bottom:0}.workbench-execution:has(>.time-track:empty){--reserve-above: 32px}.workbench-execution:has(>.time-track:empty) .runbar{border-radius:var(--radius-lg)}@media(pointer:coarse),(max-width:760px){.workbench-execution:has(>.time-track:empty){--reserve-above: 44px}}@media(pointer:coarse)and (max-height:600px){.workbench-execution .runbar-stack{flex-flow:row wrap;align-items:center;gap:6px;padding:3px 6px}.workbench-execution .runbar{display:contents}}.workbench>.run-drawer{position:absolute;z-index:var(--z-menu);right:12px;bottom:calc(var(--exec-top, 0px) + 12px);left:calc(var(--controls-panel-right, 0px) + 12px);height:var(--drawer-height, 308px);max-height:min(45vh,calc(100dvh - var(--chrome-top, 0px) - var(--exec-top, 0px) - 24px));border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);overflow:hidden}.workbench>.results-fullscreen{position:fixed;z-index:var(--z-modal);top:0;right:0;bottom:0;left:0;width:auto;height:auto;max-height:none;border:0;border-radius:0;box-shadow:none}.results-tray .drawer-tabs{container-type:inline-size;flex-wrap:wrap}@container (max-width: 400px){.results-tray .drawer-tablist{order:1;flex-basis:100%}}.run-drawer .tab-badge[data-clipped]{opacity:0}.workbench .code-view{z-index:var(--z-raised)}@media(max-width:1100px){.workbench-app .brand-name,.workbench-app .topbar-doc{display:none}.workbench-app{max-width:260px}}@media(max-width:760px){.workbench-app .topbar{height:54px}.workbench-app .load-error{max-width:280px}.workspace-view-switch button{min-width:54px;min-height:44px}.workbench-app{max-width:calc(100vw - 154px);gap:12px}.workbench-app .topbar-actions{display:none}.workbench-app .menubar-btn{width:44px;min-width:44px;height:44px}.workbench-execution{top:auto;bottom:12px;left:12px;right:12px;width:calc(100% - 24px);max-width:none;min-width:0;transform:none}.workbench-execution .runbar{width:100%;height:auto;box-sizing:border-box}.workbench-execution .time-track{height:44px}.workbench-view{right:12px;left:auto;transform:none}.react-flow__panel.bottom.left{bottom:var(--exec-top, 0px)}.workbench-inspector{top:auto;right:12px;bottom:calc(var(--exec-top, 0px) + 12px);left:12px;width:auto;max-width:none;height:var(--sheet-height, min(340px, 40vh));max-height:calc(100dvh - var(--chrome-top, 0px) - var(--exec-top, 0px) - 24px);border-radius:var(--radius-lg)}.workbench-inspector>.pane-resizer{display:none}.workbench-inspector>.drawer-resizer{display:block;top:0}.workbench-inspector>.drawer-resizer:before{content:"";position:absolute;inset:0 56px auto 0;height:44px}.workbench-inspector>.drawer-resizer:after{content:"";position:absolute;top:6px;left:50%;width:36px;height:4px;border-radius:var(--radius-pill);background:var(--border-hover);transform:translate(-50%,-50%)}.workbench-tools{display:none}.workbench>.run-drawer{right:8px;left:calc(var(--controls-right, 0px) + 8px);height:var(--drawer-height, 300px);max-height:min(48vh,calc(100dvh - var(--chrome-top, 0px) - var(--exec-top, 0px) - 24px))}.workbench:has(>.workbench-inspector)>.results-tray{max-height:min(48vh,min(var(--sheet-height, min(340px, 40vh)),100dvh - var(--chrome-top, 0px) - var(--exec-top, 0px) - 24px) - 56px)}.workbench>.results-fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;width:auto;height:auto;max-height:none;border:0;border-radius:0}.catalogue-edge,.catalogue-quick{position:absolute;top:auto!important;right:8px!important;bottom:8px;left:8px!important;width:auto;max-height:min(520px,70vh)}.catalogue-expanded{top:8px;right:8px;bottom:8px;left:8px}.experiment-dialog{top:0;right:0;bottom:0;left:0;border:0;border-radius:0}.experiment-dialog-body>.inspector-body{padding:16px;grid-template-columns:1fr;gap:20px}}@media(pointer:coarse){.drawer-close,.chart-btn,.model-page-more,.floating-control button,.react-flow__controls .react-flow__controls-button,.menubar-btn,.model-summary-expand,.btn.small,.experiment-tab.add,.experiment-tab.more{min-width:44px;min-height:44px}.drawer-tab,.btn,.hist-statistic,.trace-reader-pickers select,.experiment-tab,.model-page-trigger,.sc-context-menu button{min-height:44px}.btn.icon{min-width:44px;justify-content:center}.menu-item{min-height:44px;justify-content:center}.command-item{display:flex;align-items:center;min-height:44px}.start-help{width:44px;height:44px}.workbench-app .topbar{height:54px}.react-flow__handle{width:18px;height:18px}.results-tray>.drawer-resizer:before,.workbench-inspector>.pane-resizer:before,.workbench-inspector>.pane-resizer:after,.results-tray .drawer-tabs>.drawer-spring:before{content:"";position:absolute}.results-tray>.drawer-resizer:before{inset:2px 0 auto;height:44px}.results-tray .drawer-tablist,.results-tray .drawer-tabs>button{position:relative;z-index:calc(var(--z-resizer) + 1)}.workbench-inspector>.pane-resizer:before{inset:0 auto auto 2px;width:44px;height:44px}.workbench-inspector>.pane-resizer:after,.results-tray .drawer-tabs>.drawer-spring:before{border-radius:var(--radius-pill);background:var(--border-hover)}.workbench-inspector>.pane-resizer:after{inset:8px auto auto 7px;width:4px;height:28px}.results-tray .drawer-tabs>.drawer-spring{position:relative;min-width:44px}.results-tray .drawer-tabs>.drawer-spring:before{inset:4px auto auto 50%;width:min(36px,100%);height:4px;transform:translate(-50%)}.pane-resizer:hover:not(:active,:focus-visible),.drawer-resizer:hover:not(:active,:focus-visible){background:transparent}}.model-summary{width:320px;max-width:100%;min-height:42px;padding:8px 10px;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-pop);overflow-y:auto}.model-summary-title-row{display:flex;align-items:center;gap:4px}.model-summary .model-summary-title,.model-summary-description textarea{width:100%;min-width:0;padding:0;border:0;background:transparent;color:var(--text)}.model-summary .model-summary-title:focus-visible,.model-summary-description textarea:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.model-summary .model-summary-title{min-height:24px;font:600 var(--text-md) var(--sans);text-overflow:ellipsis}.model-summary-description{position:relative}.model-summary.expanded .model-summary-description{margin-top:2px}.model-summary-description-clamp,.model-summary-description textarea{margin:0;color:var(--text-dim);font:400 var(--text-sm) / 20px var(--sans)}.model-summary-description textarea{display:block;min-height:20px;max-height:160px;resize:none;field-sizing:content}.model-summary:not(.expanded) .model-summary-description textarea:placeholder-shown:not(:focus){max-height:20px}.model-summary-description-clamp{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;white-space:pre-wrap;overflow-wrap:break-word}.model-summary-description-clamp+textarea{position:absolute;top:0;right:0;bottom:0;left:0;height:100%;overflow:hidden;opacity:0}.model-summary-description:focus-within .model-summary-description-clamp{display:none}.model-summary-description:focus-within textarea{position:static;height:auto;overflow:auto;opacity:1}.model-summary-expand{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:0;border-radius:var(--radius);background:transparent;color:var(--text-dim);cursor:pointer}.model-summary-expand:hover{background:var(--panel-3);color:var(--text)}.model-summary-name{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;margin-top:8px}.model-summary-name>span{color:var(--text-faint);font:500 var(--text-xs) var(--sans)}.model-summary-name input{min-width:0}.model-summary-name .field-error{grid-column:2}.model-summary-facts{display:flex;align-items:center;flex-wrap:wrap;gap:3px 8px;margin-top:5px}.model-summary-facts button{padding:0;border:0;background:transparent;color:var(--text-faint);font:400 var(--text-xs) var(--sans);cursor:pointer}.model-summary-value{color:var(--text);font-family:var(--mono);font-weight:600;font-variant-numeric:tabular-nums}.model-summary-facts button:hover{color:var(--text);text-decoration:underline;text-underline-offset:2px}.model-summary-facts .model-summary-problems.warn{color:var(--warn)}.model-summary-facts .model-summary-problems.err{color:var(--error)}.model-summary-facts button:not(:last-child):after{content:"·";content:"·" / "";display:inline-block;margin-left:8px;color:var(--text-faint)}@media(max-width:760px){.model-summary{width:280px}.model-summary-expand{width:44px;height:44px}.model-summary-facts{column-gap:0;margin-inline:-10px}.model-summary-facts button{position:relative;min-width:44px;min-height:44px;padding:0 10px}.model-summary-facts button:not(:last-child):after{position:absolute;top:50%;right:-2px;width:4px;margin:0;text-align:center;transform:translateY(-50%);pointer-events:none}.model-summary-facts button:focus-visible{outline-offset:-2px}}@media(pointer:coarse){.model-summary{min-height:62px}.model-summary .model-summary-title,.model-summary-name input{min-height:44px}.model-summary-description textarea,.model-summary-description-clamp{min-height:44px;align-content:center}.model-summary-description-clamp+textarea{padding-block:calc((44px - 2lh)/2)}.model-summary-facts{margin-top:0;column-gap:0;margin-inline:-10px}.model-summary-facts button{position:relative;min-width:44px;min-height:44px;padding:0 10px}.model-summary-facts button:not(:last-child):after{position:absolute;top:50%;right:-2px;width:4px;margin:0;text-align:center;transform:translateY(-50%);pointer-events:none}.model-summary-facts button:focus-visible{outline-offset:-2px}}@media(pointer:coarse)and (max-height:600px){.model-summary:not(.expanded) .model-summary-description{display:none}}.code-view{flex:1;min-height:0;display:flex;flex-direction:column;padding-top:calc(var(--chrome-top, 0px) + 12px);background:var(--panel)}.code-view-bar{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--border)}.code-view-bar .pane-title{flex:1}.code-view-meta{font-family:var(--mono);font-size:var(--text-xs);color:var(--text-faint)}.code-view-pre{flex:1;margin:0;padding:12px 14px;overflow:auto;font-family:var(--mono);font-size:var(--text-xs);line-height:1.55;background:var(--panel-2);color:var(--text);white-space:pre}.code-view-pre:focus-visible{outline-offset:-2px}.code-view-pre::-webkit-scrollbar-thumb{background:var(--scroll-thumb);background-clip:content-box;border:2px solid transparent}.side-content{flex:1;overflow-y:auto;min-height:0;scroll-padding-block:8px}.pane-section{display:flex;flex-direction:column;gap:8px}.inspector-body>.pane-section~.pane-section{border-top:1px solid var(--border);padding-top:12px}.pane-section-head{display:flex;align-items:center;gap:8px}.pane-section-spring{flex:1}.inspector-body{padding:14px;display:flex;flex-direction:column;gap:14px}.inspector-heading{display:flex;align-items:center;gap:8px;font-size:var(--text-xs)}.type-chip{font-size:var(--text-xs);letter-spacing:normal;border:1px solid var(--border-strong);border-radius:var(--radius);padding:2px 7px;color:var(--text)}.model-label{margin:0;font-size:var(--text-xl);font-weight:600}.field{display:flex;flex-direction:column;gap:5px}.live-readout{margin:0;padding:8px 10px;display:flex;flex-direction:column;gap:4px;background:color-mix(in srgb,var(--accent) 4%,var(--panel-2));border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));border-radius:var(--radius)}.live-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.live-row dt{font-size:var(--text-sm);color:var(--text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.live-row dd{margin:0;font-size:var(--text-sm);font-weight:600;font-variant-numeric:tabular-nums;color:var(--text);white-space:nowrap}.field-label{font-family:var(--sans);font-size:var(--text-xs);font-weight:500;letter-spacing:normal;text-transform:none;color:var(--text-faint)}input,select,textarea{font-family:var(--sans);font-size:var(--text-md);color:var(--text);background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius);padding:7px 10px;outline:none;width:100%;transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}input.mono,textarea{font-family:var(--mono)}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 25%,transparent)}input.has-error,select.has-error,textarea.has-error{border-color:var(--error)}input.has-error:focus,select.has-error:focus,textarea.has-error:focus{box-shadow:0 0 0 2px color-mix(in srgb,var(--error) 25%,transparent)}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236e6e6e' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 7px center;background-size:14px}:where(.dark) select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238f8f8f' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}@media(pointer:coarse){.field input,.field select,.field textarea,.param-row input:not([type=checkbox]),.param-row select,.param-row textarea{min-height:44px}}.params-editor{font-size:var(--text-sm);line-height:1.5;resize:vertical;white-space:pre}.field-error{font-size:var(--text-xs);color:color-mix(in srgb,var(--error) 80%,var(--text));font-family:var(--sans);overflow-wrap:anywhere}.field-hint{font-size:var(--text-xs);color:var(--text-dim);font-family:var(--sans);margin-top:2px}.readonly{background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);padding:7px 10px;font-size:var(--text-md);color:var(--text-dim)}.readonly.pre{margin:0;white-space:pre;overflow-x:auto;font-family:var(--mono);font-size:var(--text-xs)}.help-block{border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;background:var(--panel-2)}.help-block.error{border-color:color-mix(in srgb,var(--error) 40%,var(--border))}.help-title{font-family:var(--sans);font-size:var(--text-xs);font-weight:500;letter-spacing:normal;text-transform:none;color:var(--text-faint);margin-bottom:6px}.help-text{font-size:var(--text-sm);line-height:1.5;color:var(--text-dim);margin:0 0 4px}.state-var{margin-bottom:7px}.state-var:last-child{margin-bottom:0}.state-var code{font-size:var(--text-xs)}.state-var-type{font-family:var(--mono);font-size:var(--text-xs);color:var(--text-faint);margin-left:7px}.state-var-type.port-facts{font-family:var(--sans)}.param-form{display:flex;flex-direction:column;gap:8px}.param-form-note,.param-description{font-size:var(--text-sm);line-height:1.45;color:var(--text-dim)}.param-row{border:1px solid var(--border);background:var(--panel-2);border-radius:var(--radius);padding:10px;display:flex;flex-direction:column;gap:7px}.param-title{display:flex;align-items:center;gap:8px;font-size:var(--text-md)}.param-name{font-weight:600;color:var(--text)}.param-badge{border:1px solid var(--border-strong);border-radius:var(--radius-pill);padding:1px 7px;font-family:var(--sans);font-size:var(--text-xs);font-weight:500;color:var(--text-faint)}.param-badge.live{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 10%,transparent);color:color-mix(in srgb,var(--accent) 80%,var(--text))}.live-param{margin-top:5px;padding:6px 8px;background:color-mix(in srgb,var(--accent) 4%,var(--panel-2));border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));border-radius:var(--radius)}.live-param input:not(:focus){border-color:color-mix(in srgb,var(--accent) 30%,var(--border-strong))}.checkbox-row{display:flex;align-items:center;gap:8px;font-size:var(--text-md);color:var(--text-dim)}.checkbox-row input{width:auto;accent-color:var(--accent)}@media(pointer:coarse){.checkbox-row{min-height:44px}.checkbox-row input{width:22px;height:22px}}.param-form-actions{display:flex;align-items:center;gap:8px}.param-list{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.param-list-row{display:flex;align-items:flex-start;gap:6px;width:100%}.param-list-index{font-size:var(--text-xs);color:var(--text-faint);padding-top:9px;min-width:12px;text-align:right}.param-list-item{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.param-list-row .btn{margin-top:3px}.param-list.has-error{border-radius:var(--radius);outline:1px solid var(--error);outline-offset:4px}.expression-editor.has-error .cm-editor{border-color:var(--error)}.expression-editor.has-error .cm-editor.cm-focused{box-shadow:0 0 0 2px color-mix(in srgb,var(--error) 25%,transparent)}.expression-editor .cm-placeholder{font-family:var(--sans)}.value-input{display:flex;flex-direction:column;gap:6px}.value-modes{display:inline-flex;gap:2px;padding:2px;background:var(--panel-3);border:1px solid var(--border);border-radius:var(--radius);align-self:flex-start}.value-mode-chip{font-family:var(--sans);font-size:var(--text-xs);line-height:1;color:var(--text-faint);background:transparent;border:none;border-radius:calc(var(--radius) - 2px);padding:4px 8px;cursor:pointer;transition:background var(--dur) var(--ease),color var(--dur) var(--ease)}.value-mode-chip.symbol{font-family:var(--mono)}.value-mode-chip:hover:not(:disabled){color:var(--text)}.value-mode-chip:disabled{opacity:.45;cursor:default}.value-mode-chip.promote{margin-left:6px;border-left:1px solid var(--border);padding-left:9px}.value-mode-chip.active{background:var(--panel);color:var(--text);box-shadow:var(--shadow-node)}@media(pointer:coarse){.value-modes{flex-wrap:wrap}.value-mode-chip{min-width:44px;min-height:44px}}.dist-editor{display:flex;flex-direction:column;gap:8px;border-left:2px solid var(--border-strong);padding-left:10px}.dist-arg{display:flex;flex-direction:column;gap:4px}.dist-arg-label{font-size:var(--text-xs);color:var(--text-faint)}.dist-arg .value-input{gap:4px}.diagnostics-panel{--severity: var(--error);display:block;width:calc(100% - 28px);margin:14px 14px 0;border:1px solid color-mix(in srgb,var(--severity) 42%,var(--border));border-radius:var(--radius);background:color-mix(in srgb,var(--severity) 7%,var(--panel-2));padding:10px 12px;font:inherit;color:var(--text);text-align:left;cursor:pointer;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease)}.diagnostics-panel.has-warnings{--severity: var(--warn)}.diagnostics-panel:hover{border-color:color-mix(in srgb,var(--severity) 60%,var(--border));background:color-mix(in srgb,var(--severity) 11%,var(--panel-2))}.diagnostics-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:7px}.diagnostics-title{font-family:var(--sans);font-size:var(--text-xs);font-weight:500;letter-spacing:normal;text-transform:none;color:color-mix(in srgb,var(--severity) 80%,var(--text))}.diagnostics-open{flex:none;font-family:var(--sans);font-size:var(--text-xs);font-weight:500;color:var(--text-dim);transition:color var(--dur) var(--ease)}.diagnostics-panel:hover .diagnostics-open{color:var(--text)}.diagnostics-list{display:block}.diagnostic-row{display:grid;grid-template-columns:minmax(0,1fr);gap:2px;padding:6px 0;border-top:1px solid color-mix(in srgb,var(--severity) 18%,transparent)}.diagnostic-row:first-child{border-top:0;padding-top:0}.diagnostic-code{font-family:var(--mono);font-size:var(--text-xs);color:color-mix(in srgb,var(--error) 80%,var(--text))}.diagnostic-row.severity-warning .diagnostic-code{color:color-mix(in srgb,var(--warn) 80%,var(--text))}.diagnostic-message .field-hint{display:block}.diagnostic-target{font-family:var(--mono);font-size:var(--text-xs);color:var(--text-dim)}.diagnostic-message{font-size:var(--text-sm);line-height:1.4;color:var(--text);overflow-wrap:anywhere}.experiment-tabs{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:10px}.experiment-tablist{display:contents}.experiment-tab{padding:4px 9px;font-family:var(--sans);font-size:var(--text-sm);font-weight:500;color:var(--text-dim);background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius);cursor:pointer;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease),color var(--dur) var(--ease)}.experiment-tab:hover{background:var(--panel-3)}.experiment-tab.on{border-color:var(--accent);color:color-mix(in srgb,var(--accent) 80%,var(--text));background:color-mix(in srgb,var(--accent) 8%,transparent)}.experiment-tab.add{padding:4px 10px;color:var(--text-faint)}.experiment-tab.more{padding:4px 8px;color:var(--text-faint);line-height:1}.experiment-tab.more.on{border-color:var(--border-strong);color:var(--text);background:var(--panel-3)}.experiment-tab>svg{display:block}.experiment-menu{display:flex;margin-left:auto}.menu-item.danger .menu-item-label{color:color-mix(in srgb,var(--error) 80%,var(--text))}.menu-item.danger:disabled .menu-item-label,.menu-item.danger[aria-disabled=true] .menu-item-label{color:var(--text-faint)}.experiment-form{display:flex;flex-direction:column;gap:10px}.experiment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px 8px}.experiment-grid>.field{display:contents}.experiment-grid .field-label{grid-row:1}.experiment-grid .field>input{grid-row:2}.experiment-grid .field-error{grid-column:1 / -1}.experiment-grid input{padding:7px 8px}.sweep-axis{font-size:var(--text-xs);line-height:1.5}.experiment-cost{margin:0;font-size:var(--text-xs);color:var(--text-faint);font-variant-numeric:tabular-nums}.baseline-mark{margin-right:5px;vertical-align:-1px}.outputs-block{display:flex;flex-direction:column;gap:8px}.outputs-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.outputs-count{font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--text-faint)}.output-list{display:flex;flex-direction:column;gap:6px}.output-row{display:flex;flex-direction:column;gap:6px;padding:7px 9px 8px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel)}.output-row-head{display:flex;align-items:center;gap:6px}.output-toggle{flex:1;min-width:0;display:flex;align-items:center;gap:8px;cursor:pointer}.output-toggle input{flex:none;width:14px;height:14px;margin:0;padding:0;accent-color:var(--accent)}.output-path{flex:1;min-width:0;font-size:var(--text-xs);font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.output-recorders{display:flex;flex:none;gap:2px}.output-recorder-toggle{cursor:pointer}.output-recorder-toggle input{position:absolute;opacity:0;pointer-events:none}.output-recorder-toggle span{display:block;padding:3px 5px;border-radius:4px;color:var(--text-faint);font-size:var(--text-xs);line-height:1;text-transform:capitalize}.output-recorder-toggle input:checked+span{color:var(--text);background:var(--panel-3)}.output-recorder-toggle input:focus-visible+span{outline:2px solid var(--focus);outline-offset:1px}.output-note{margin:0;font-size:var(--text-xs);line-height:1.5;color:var(--text-dim)}.output-note.warn,.field-hint.warn{color:var(--warn)}.output-search{font-size:var(--text-sm);padding:5px 9px}.output-interval{padding-left:24px}.output-add{position:relative}.output-add-trigger{width:100%;justify-content:center}.output-picker{margin-top:6px;padding:6px;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-pop)}.output-picker .output-search{width:100%}.output-candidates{max-height:220px;margin-top:5px;overflow-y:auto}.output-candidates button{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:7px 8px;border:0;border-radius:var(--radius);background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.output-candidates button:hover,.output-candidates button:focus-visible{background:var(--panel-3)}.output-candidates button:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.output-candidates small{color:var(--text-faint);font-size:var(--text-xs);line-height:1.4}@media(pointer:coarse){.output-toggle,.output-search{min-height:44px}.output-toggle input{width:22px;height:22px}.output-recorder-toggle{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}.output-interval{padding-left:30px}}.parameter-list{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.parameter-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel)}.parameter-row.open{border-color:var(--border-strong)}.parameter-summary{display:flex;align-items:center;gap:8px;width:100%;padding:6px 9px;text-align:left;background:none;border:none;border-radius:var(--radius);cursor:pointer}.parameter-summary:hover{background:var(--panel-3)}.parameter-name{font-size:var(--text-sm);font-weight:400;color:var(--text-faint);flex:1;overflow:hidden;text-overflow:ellipsis}.parameter-default{font-size:var(--text-xs);font-weight:600;font-variant-numeric:tabular-nums;color:var(--text)}.parameter-form{display:flex;flex-direction:column;gap:9px;padding:4px 9px 10px}.parameter-form textarea{font-family:var(--sans);field-sizing:content;resize:none}@media(pointer:coarse){.parameter-summary{min-height:44px}}.trace-setting select{width:100%}.results-body{padding:14px;display:flex;flex-direction:column;gap:14px}.drawer-empty{max-width:62ch;padding:26px 20px}.results-body .drawer-empty{padding:0}.drawer-empty-title{margin:0 0 6px;font-size:var(--text-xl);line-height:1.35;font-weight:600;color:var(--text)}.drawer-empty-text{margin:0;font-size:var(--text-md);line-height:1.6;color:var(--text-dim)}.drawer-empty-text+.drawer-empty-text{margin-top:8px}.run-section-title{font-family:var(--sans);font-size:var(--text-sm);font-weight:500;letter-spacing:normal;text-transform:none;color:var(--text-dim);margin-bottom:8px;flex:none}.chart-compare{display:inline-flex;align-items:center;gap:7px;font-size:var(--text-sm);color:var(--text-dim);cursor:pointer}.chart-compare input{width:auto;margin:0;accent-color:var(--accent)}@media(pointer:coarse){.chart-compare{min-height:44px}.chart-compare input{width:20px;height:20px}}.metric-charts{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(380px,100%),1fr));gap:12px}.chart-block{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);padding:9px 10px 4px;transition:border-color var(--dur) var(--ease)}.chart-block:hover{border-color:var(--border-strong)}.chart-scenario-legend{display:flex;flex-wrap:wrap;gap:3px 12px;margin:0 0 4px 15px}.chart-title{display:flex;align-items:center;gap:7px;font-size:var(--text-sm);color:var(--text);margin-bottom:4px}.chart-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chart-swatch{width:8px;height:8px;border-radius:var(--radius-sm);flex:none}.chart-band-swatch{width:12px;height:8px;border-radius:var(--radius-sm);opacity:.16}.chart-count{font-size:var(--text-xs);color:var(--text-faint)}.chart-btn{flex:none;display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-faint);cursor:pointer}.chart-btn:hover{color:var(--text);background:var(--panel-3)}.chart-plot{position:relative;-webkit-user-select:none;user-select:none;cursor:crosshair}.chart-plot.zoomed{cursor:grab}.chart-plot.panning{cursor:grabbing}.chart-playhead{position:absolute;pointer-events:none}.chart-playhead-line{position:absolute;top:0;right:0;bottom:0;left:0}.chart-playhead.live .chart-playhead-line{will-change:transform}.chart-playhead-line:before{content:"";position:absolute;top:0;bottom:0;left:0;width:1px;background-image:repeating-linear-gradient(to bottom,currentColor 0 2px,transparent 2px 4px)}.chart-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:32px;background:var(--scrim)}.chart-modal{display:flex;flex-direction:column;gap:6px;width:min(960px,100%);padding:14px 16px 10px;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-pop)}.chart-modal-body{height:min(56vh,460px)}.chart-modal-body .chart-plot{height:100%}.chart-hint{font-size:var(--text-xs);color:var(--text-faint)}.event-log-wrap{display:flex;flex-direction:column;min-height:0;height:100%;padding:12px 14px 14px}.trace-reader-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.trace-reader-head .run-section-title{margin-bottom:8px}.trace-reader-pickers{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px}.trace-reader-pickers select{width:auto;height:26px;padding:0 22px 0 6px;font-size:var(--text-xs)}.trace-reader-count{font-size:var(--text-xs);font-weight:600;font-variant-numeric:tabular-nums;color:var(--text);white-space:nowrap}.trace-reader-note{margin:0 0 8px;font-size:var(--text-xs);line-height:1.5;color:var(--text-dim)}.trace-reader-more{margin:8px auto;display:block}.event-log{flex:1;min-height:120px;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--console-bg);font-family:var(--mono);font-size:var(--text-xs);line-height:1.65;padding:5px 0;container-type:inline-size}.trace-reader-log{overflow-anchor:none}.event-log::-webkit-scrollbar-thumb{background:var(--console-scroll-thumb);background-clip:content-box;border:2px solid transparent}.event-row{display:flex;gap:8px;padding:0 8px;white-space:nowrap}.ev-time{color:#9a9a9a;min-width:56px;text-align:right;flex:none}.ev-type{flex:none;width:18ch;overflow:hidden;text-overflow:ellipsis}.ev-sim{color:var(--console-accent-sim)}.ev-entity{color:#52a8ff}.ev-metric{color:var(--console-accent-sd)}.ev-agent{color:var(--console-accent-agent)}.ev-state{color:var(--console-accent-state)}.ev-other{color:#8f8f8f}.ev-source{color:#8f8f8f;flex:none;width:16ch;overflow:hidden;text-overflow:ellipsis}.ev-payload{flex:1 1 0;min-width:0;color:#9a9a9a;white-space:normal;overflow-wrap:anywhere}@container (max-width: 640px){.event-row{flex-wrap:wrap;row-gap:0}.ev-payload{flex-basis:100%;padding-left:64px}}.results-scroll{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius)}.results-table{border-collapse:collapse;width:100%;font-size:var(--text-xs)}.results-table th{position:sticky;top:0;background:var(--panel-3);color:var(--text-faint);font-weight:500;text-align:left;padding:7px 9px;border-bottom:1px solid var(--border-strong);white-space:nowrap;font-size:var(--text-xs)}.results-table th.mono{color:var(--text-dim)}.results-table th .th-stat{color:var(--text-faint);font-weight:400}.results-table td{padding:5px 9px;border-bottom:1px solid var(--border);white-space:nowrap}.results-table td.value{font-weight:600;font-variant-numeric:tabular-nums;color:var(--text)}.results-table tr:last-child td{border-bottom:none}.results-note{font-size:var(--text-xs);color:var(--text-faint);margin:6px 2px 0}.results-warning{margin:0;padding:8px 10px;font-size:var(--text-sm);line-height:1.5;color:var(--text);background:color-mix(in srgb,var(--warn) 8%,var(--panel-2));border:1px solid color-mix(in srgb,var(--warn) 40%,var(--border));border-radius:var(--radius)}.results-note{margin:0;padding:8px 10px;font-size:var(--text-sm);line-height:1.5;color:var(--text-dim);background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius)}.results-toolbar{display:flex;align-items:center;gap:10px;min-height:28px}.chart-stats{display:flex;flex-wrap:wrap;gap:3px 14px;margin:0 0 6px;padding:0}.chart-stats>div{display:flex;align-items:baseline;gap:5px}.chart-stats dt{font-size:var(--text-xs);color:var(--text-faint)}.chart-stats dd{margin:0;font-family:var(--mono);font-size:var(--text-xs);font-weight:600;font-variant-numeric:tabular-nums;color:var(--text)}.chart-stats-caption dt{color:var(--text-dim)}.chart-stats-caption dd{font-family:var(--sans);font-weight:400;color:var(--text-faint)}.chart-readout{padding:8px 10px;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-pop);font-size:var(--text-xs);line-height:1.5;white-space:nowrap}.chart-readout-label{margin:0 0 4px;color:var(--text-faint)}.chart-readout ul{display:grid;gap:2px;margin:0;padding:0;list-style:none}.chart-readout li{display:flex;align-items:center;gap:6px}.chart-readout-name{color:var(--text-faint)}.chart-readout-value{margin-left:auto;padding-left:12px;font-family:var(--mono);font-weight:600;font-variant-numeric:tabular-nums;color:var(--text)}.hist-section{display:flex;flex-direction:column}.hist-statistic{flex:none;width:auto;height:20px;padding:0 20px 0 6px;font-family:var(--mono);font-size:var(--text-xs);border-color:var(--border-strong)}.hist-plot{cursor:default}.hist-note{margin:0 0 8px;font-size:var(--text-sm);line-height:1.5;color:var(--text-dim)}.hist-value{font-size:var(--text-xs);font-weight:600;font-variant-numeric:tabular-nums;color:var(--text)}.compare-block{display:flex;flex-direction:column}.compare-title{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px}.compare-title>.btn{margin-inline-start:auto}.compare-delta{font-variant-numeric:tabular-nums;font-weight:600;color:var(--text)}.compare-delta.none{font-weight:400;color:var(--text-faint)}.series-count{font-size:var(--text-xs);color:var(--text-faint)}.series-menu{z-index:calc(var(--z-modal) + 1);min-width:280px;max-height:60vh;overflow-y:auto;padding:8px}.series-menu-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 4px 4px}.series-menu-head:first-child{padding-top:2px}.series-row{display:flex;align-items:center;gap:8px;padding:5px 6px;font-size:var(--text-sm);color:var(--text);border-radius:var(--radius);cursor:pointer}.series-row:hover{background:var(--panel-3)}.series-row input{width:auto;margin:0;accent-color:var(--accent)}@media(pointer:coarse){.series-row{min-height:44px}.series-row input{width:20px;height:20px}}.series-menu .menu-item-hint{margin:2px 6px 0;line-height:1.45}.chart-block.combined{grid-column:1 / -1}.chart-legend{display:flex;flex-wrap:wrap;gap:4px 14px;margin-bottom:6px}.chart-legend-item{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-xs);color:var(--text-dim)}.shown-run{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin-bottom:0}.shown-run>.btn{margin-inline-start:auto}.shown-run p{margin:0;overflow-wrap:anywhere}.shown-run-name{color:var(--text)}.runs-table td{vertical-align:middle}.runs-name-cell{max-width:32ch;white-space:normal}.runs-name{font:inherit;font-weight:500;color:var(--text);background:none;border:none;padding:0;text-align:left;overflow-wrap:anywhere}button.runs-name{cursor:pointer}button.runs-name:hover{text-decoration:underline;text-underline-offset:2px}.runs-unnamed{font-weight:400;color:var(--text-faint)}.runs-tag{display:inline-block;margin-left:6px;padding:0 6px;font-size:var(--text-xs);line-height:16px;color:var(--text-faint);border:1px solid var(--border-strong);border-radius:var(--radius-pill);white-space:nowrap}.runs-name-field{min-width:18ch;padding:3px 8px}.runs-by{display:inline-flex;align-items:center;gap:6px}.runs-dot{flex:none;width:7px;height:7px;border-radius:50%;background:var(--peer)}.runs-running{color:var(--run-live)}.runs-failed{color:color-mix(in srgb,var(--error) 80%,var(--text))}.runs-not-saved{color:var(--text-dim)}.runs-actions{width:1%;padding-block:2px;text-align:right}.runs-table th:last-child,.runs-actions{position:sticky;right:0}.runs-actions{background:var(--panel)}.runs-show-more{align-self:flex-start}.runs-storage{margin-bottom:0}.runs-storage p{margin:0}.runs-menu{z-index:calc(var(--z-modal) + 1);min-width:260px;max-width:320px}@media(pointer:coarse){button.runs-name,.runs-name-field{min-height:44px}}.problem-list{list-style:none;margin:0;padding:4px 0;container-type:inline-size}.problem-row{display:grid;grid-template-columns:7px 52px minmax(50%,1fr) minmax(0,max-content);align-items:center;gap:2px 8px;width:100%;padding:5px 14px;background:none;border:none;text-align:left;font-family:var(--sans);font-size:var(--text-sm);color:var(--text-dim);cursor:pointer;transition:background var(--dur) var(--ease)}.problem-row:hover:not(:disabled){background:var(--panel-2);color:var(--text)}.problem-row:disabled{cursor:default}.problem-row:focus-visible{outline-offset:-2px}.problem-dot{width:7px;height:7px;border-radius:50%;background:var(--text-faint)}.problem-row.error .problem-dot{background:var(--error)}.problem-row.warning .problem-dot{background:var(--warn)}.problem-severity{font-size:var(--text-xs);font-weight:500;color:var(--text-faint)}.problem-message,.problem-target{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.problem-target{font-size:var(--text-xs);color:var(--text-faint)}.problem-hint{grid-column:3 / -1}@container (max-width: 560px){.problem-row{grid-template-columns:7px 52px minmax(0,1fr);align-items:baseline;align-content:center}.problem-target{grid-column:3}.problem-message,.problem-target{white-space:normal;overflow-wrap:anywhere}}@media(pointer:coarse){.problem-row{min-height:44px}}.command-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay);display:flex;justify-content:center;align-items:flex-start;padding-top:14vh;background:var(--scrim)}.command-panel{width:min(560px,calc(100vw - 32px));max-height:60vh;display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);overflow:hidden}.command-input{width:100%;background:none;border:none;border-bottom:1px solid var(--border);border-radius:0;padding:14px 16px;font-family:var(--sans);font-size:var(--text-xl);color:var(--text);outline:none}.command-input:focus{border-color:var(--focus);box-shadow:inset 0 -1px 0 var(--focus)}.command-list{margin:0;padding:4px;list-style:none;overflow-y:auto}.command-item{padding:8px 12px;border-radius:var(--radius);font-size:var(--text-md);color:var(--text);cursor:pointer}.command-item.active{background:var(--panel-3)}.command-empty{margin:0;padding:14px 16px;font-size:var(--text-md);color:var(--text-dim)}.settings-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay);display:grid;place-items:center;padding:16px;background:var(--scrim)}.settings-dialog{width:min(480px,calc(100vw - 32px));max-height:min(680px,calc(100dvh - 32px));display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);overflow:hidden}.settings-head{display:flex;align-items:center;padding:8px 10px 8px 16px;border-bottom:1px solid var(--border)}.settings-head h2{margin:0;font-size:var(--text-lg);font-weight:600}.settings-head button{margin-left:auto}.settings-body{min-height:0;padding:18px;overflow-y:auto;scroll-padding-block:8px}.settings-body h3{margin:0 0 14px;font-size:var(--text-md);font-weight:600}.settings-body section+section{margin-top:24px;padding-top:18px;border-top:1px solid var(--border)}.settings-body section>.field+.field{margin-top:18px}.model-time-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 120px;gap:5px 12px;padding-top:4px}.model-time-fields>.field{display:contents}.model-time-fields .field-label{grid-row:1}.model-time-fields .field>:is(input,select){grid-row:2}.model-time-fields .field-error{grid-column:1 / -1}@media(max-width:560px){.model-time-fields{grid-template-columns:1fr;gap:12px}.model-time-fields>.field{display:flex}}.shortcut-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay);display:flex;justify-content:center;align-items:flex-start;padding:10vh 16px;background:var(--scrim)}.shortcut-panel{width:min(760px,100%);max-height:80vh;display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);overflow:hidden}.shortcut-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px 8px 16px;border-bottom:1px solid var(--border)}.shortcut-header h2{margin:0;font-size:var(--text-lg);font-weight:600;color:var(--text)}.shortcut-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 32px;padding:12px 16px 16px;overflow-y:auto}.shortcut-groups:focus-visible{outline-offset:-2px;border-radius:0 0 calc(var(--radius-lg) - 1px) calc(var(--radius-lg) - 1px)}.shortcut-group h3{margin:12px 0 6px;font-size:var(--text-xs);font-weight:500;color:var(--text-faint)}.shortcut-group dl{margin:0}.shortcut-row{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:3px 0}.shortcut-row dt{font-size:var(--text-md);color:var(--text)}.shortcut-row dd{margin:0;display:flex;gap:3px;white-space:nowrap}.shortcut-or{padding:0 2px;font-size:var(--text-xs);color:var(--text-faint)}.shortcut-row kbd{min-width:20px;padding:1px 5px;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--mono);font-size:var(--text-xs);text-align:center;color:var(--text-dim)}@media(max-width:640px){.shortcut-groups{grid-template-columns:minmax(0,1fr)}}.collab-chip{display:block;max-width:240px;padding:2px 8px;overflow:hidden;border-radius:var(--radius-pill);background:var(--peer);box-shadow:var(--shadow-node);color:var(--action-text);font:500 var(--text-xs) / 1.4 var(--sans);text-overflow:ellipsis;white-space:nowrap}.edit-controls{position:relative}.edit-controls .menubar-btn[aria-disabled=true],.edit-controls .menubar-btn[aria-disabled=true]:hover{background:none;color:var(--text-faint);cursor:default}.edit-reason{position:absolute;top:calc(100% + 8px);left:9px;z-index:var(--z-tooltip);margin:0;padding:4px 8px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow-pop);color:var(--text-dim);font:500 var(--text-xs) / 1.4 var(--sans);white-space:nowrap;pointer-events:none}.menu-list.edit-history-list{left:0;right:auto;width:340px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 67px);overflow-y:auto;scroll-padding-block:8px}@media(pointer:coarse){.menu-list.edit-history-list{max-height:calc(100dvh - 79px)}}.edit-history-items .menu-item:focus-visible,.edit-history-more:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.edit-history-row{display:flex;flex-wrap:wrap;align-items:center;border-radius:var(--radius)}.edit-history-row:has(>.edit-history-more):hover,.edit-history-row.open{background:var(--panel-3)}.edit-history-row>.menu-item{flex:1;min-width:0}.edit-history-row:has(>.edit-history-more)>.menu-item:hover{background:transparent}.edit-history-item .menu-item-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.edit-history-item.undone .menu-item-label{color:var(--text-faint)}.edit-history-hint{display:flex;align-items:center;gap:6px;min-width:0;font-variant-numeric:tabular-nums}.edit-history-hint>time:before,.edit-history-hint>span:not(.edit-history-dot,.edit-history-name):before{content:"·";margin-right:6px}.edit-history-hint>time:first-child:before{content:none}.edit-history-dot{flex:none;width:7px;height:7px;border-radius:50%;background:var(--peer)}.edit-history-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.edit-history-more{flex:none;width:30px;height:30px;display:inline-grid;place-items:center;margin-right:4px;border:0;border-radius:var(--radius);background:transparent;color:var(--text-dim);cursor:pointer}.edit-history-more:hover,.edit-history-more[aria-expanded=true]{background:var(--panel);color:var(--text)}.menu-list.edit-history-batch,.menu-list.edit-history-nested{position:static;flex:0 0 100%;min-width:0;border:0;border-radius:0;background:transparent;box-shadow:none}.menu-list.edit-history-batch{padding:0 4px 4px 22px}.edit-history-batch .menu-item:hover:not(:disabled,[aria-disabled=true]){background:var(--panel)}.menu-item.edit-history-toggle{flex-direction:row;align-items:center;justify-content:space-between}.edit-history-toggle svg{flex:none;color:var(--text-dim)}.menu-list.edit-history-nested{padding:0 0 4px 12px}.edit-history-section{margin-top:4px;padding:10px 10px 4px;border-top:1px solid var(--border)}.collab-cursor{position:absolute;top:0;left:0;z-index:var(--z-raised);pointer-events:none}.collab-cursor-mark{display:flex;align-items:flex-start;transform:scale(calc(1 / var(--canvas-zoom, 1)));transform-origin:0 0}.collab-pointer{flex:none;overflow:visible;fill:var(--peer);stroke:var(--panel);stroke-width:1.5px;stroke-linejoin:round}.collab-cursor .collab-chip{margin-top:13px;margin-left:-2px}.react-flow__panel.collab-docked{top:64px;right:12px;margin:0;display:flex;flex-direction:column;align-items:flex-end;gap:6px;pointer-events:none}.workbench:has(>.workbench-inspector) .react-flow__panel.collab-docked{right:calc(var(--side-width, 360px) + 12px)}@media(pointer:coarse),(max-width:760px){.react-flow__panel.collab-docked{top:76px}}@media(max-width:760px){.workbench:has(>.workbench-inspector) .react-flow__panel.collab-docked{right:12px}}.react-flow__node .sc-node-symbol:after{position:absolute;inset:calc(-9px / var(--canvas-zoom, 1));border:calc(2px / var(--canvas-zoom, 1)) dotted var(--peer);border-radius:calc(var(--radius) + 9px / var(--canvas-zoom, 1));pointer-events:none}.notation-node.shape-circle .sc-node-symbol:after,.notation-node.shape-delay .sc-node-symbol:after{border-radius:50%}@keyframes collab-ring-0{75%{opacity:1}to{opacity:0}}@keyframes collab-ring-1{75%{opacity:1}to{opacity:0}}@keyframes collab-arrive{0%{scale:.6;opacity:0}}.react-flow__node .sc-node-silhouette{transform-origin:88px 72px}.workbench-app .run-notice{display:flex;align-items:center;gap:4px;width:100%;max-width:320px;padding:4px 4px 4px 12px;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-pop);font-size:var(--text-sm)}.run-notice p{flex:1;min-width:0;margin:0;padding-block:4px;color:var(--text-dim);line-height:1.5;overflow-wrap:anywhere}@media(max-width:760px){.workbench-app .run-notice{max-width:280px}}.configuration-head.tabbed{align-items:stretch;gap:4px;padding:0 8px 0 4px}.configuration-head.tabbed>button,.configuration-head.tabbed>.menu{align-self:center}.configuration-tabs,.configuration-head .assistant-menu{position:relative;z-index:calc(var(--z-resizer) + 1)}.configuration-tabs .drawer-tab{margin-left:0;padding-inline:10px;font-size:var(--text-md)}.configuration-tabs .drawer-tab.on{font-weight:600}.tab-dot{width:6px;height:6px;border-radius:var(--radius-pill);background:var(--accent)}.configuration-head .assistant-menu{margin-left:auto}.configuration-head .assistant-menu+button{margin-left:0}.assistant-menu .menu-list{min-width:260px}.workbench-inspector:has(>.assistant-content){height:100dvh}.side-content.assistant-content{display:flex;flex-direction:column;overflow:hidden}.assistant-transcript{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding:14px;scroll-padding-block:14px}.assistant-transcript:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.assistant-row{display:flex;flex-direction:column;gap:4px;min-width:0}.assistant-user{align-items:flex-end}.assistant-bubble{max-width:88%;margin:0;padding:7px 11px;border-radius:var(--radius-lg) var(--radius-lg) var(--radius-sm) var(--radius-lg);background:var(--panel-3);color:var(--text);font-size:var(--text-md);line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.assistant-context{margin:0;font-size:var(--text-xs);line-height:1.4;color:var(--text-faint);overflow-wrap:anywhere}.assistant-name{display:flex;align-items:center;gap:6px;margin:0;font-size:var(--text-xs);font-weight:500;line-height:1.4;color:var(--text-faint)}.assistant-name-dot{width:6px;height:6px;border-radius:var(--radius-pill);background:var(--peer-assistant)}.assistant-prose{font-size:var(--text-md);line-height:1.6;color:var(--text);overflow-wrap:anywhere}.assistant-prose>:first-child{margin-top:0}.assistant-prose>:last-child{margin-bottom:0}.assistant-prose p{margin:0 0 8px}.assistant-prose ul,.assistant-prose ol{margin:0 0 8px;padding-left:20px}.assistant-prose li+li{margin-top:2px}.assistant-prose li>p,.assistant-prose li>ul,.assistant-prose li>ol{margin-bottom:2px}.assistant-prose strong{font-weight:600}.assistant-prose code{font-family:var(--mono);font-size:var(--text-sm);padding:1px 4px;border-radius:var(--radius-sm);background:var(--panel-3)}.assistant-code{margin:0 0 8px;padding:8px 10px;max-height:320px;overflow:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);font-family:var(--mono);font-size:var(--text-xs);line-height:1.55;color:var(--text);white-space:pre}.assistant-code code{padding:0;background:none;font-size:inherit}.assistant-progress{margin:0;font-size:var(--text-sm);line-height:1.5;color:var(--text-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.assistant-working:before{content:"";display:inline-block;width:6px;height:6px;margin-right:8px;border-radius:var(--radius-pill);background:var(--peer-assistant);vertical-align:1px;animation:run-phase-pulse 1.6s ease-in-out infinite}.assistant-note{margin:0;font-size:var(--text-sm);line-height:1.5;color:var(--text-dim)}.assistant-error{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:8px 10px;border:1px solid color-mix(in srgb,var(--error) 30%,var(--border-strong));border-radius:var(--radius);background:color-mix(in srgb,var(--error) 6%,var(--panel))}.assistant-error p{margin:0;font-size:var(--text-md);line-height:1.5;color:var(--text)}.assistant-tool{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--panel)}.assistant-tool-head{display:flex;align-items:center;gap:8px;padding:0 4px 0 10px;min-height:34px}.assistant-tool-dot{flex:none;width:6px;height:6px;border-radius:var(--radius-pill);background:var(--gray-600)}.assistant-tool.running .assistant-tool-dot{background:var(--run-live);animation:run-phase-pulse 1.6s ease-in-out infinite}.assistant-tool.error .assistant-tool-dot{background:var(--error)}.assistant-tool-main{flex:1;min-width:0;display:flex;align-items:baseline;gap:6px;margin:0;padding:7px 0;border:0;background:none;font-family:var(--sans);text-align:left;color:var(--text)}button.assistant-tool-main{cursor:pointer}button.assistant-tool-main:hover .assistant-tool-title{text-decoration:underline;text-underline-offset:3px}button.assistant-tool-main:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--radius-sm)}.assistant-tool-status{flex:none;font-size:var(--text-xs);font-weight:500;color:var(--text-faint)}.assistant-tool.error .assistant-tool-status{color:color-mix(in srgb,var(--error) 80%,var(--text))}.assistant-tool-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-md);font-weight:500}.assistant-tool-target{flex-shrink:100;min-width:4ch;margin-left:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs);color:var(--text-faint)}.assistant-tool-more{flex:none;width:26px;height:26px;display:grid;place-items:center;border:0;border-radius:var(--radius);background:none;color:var(--text-faint);cursor:pointer}.assistant-tool-more:hover{background:var(--panel-3);color:var(--text)}.assistant-tool-more:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.assistant-tool-details{display:flex;flex-direction:column;gap:4px;padding:2px 10px 10px;border-top:1px solid var(--border)}.assistant-tool-details[hidden]{display:none}.assistant-tool-label{margin:6px 0 0;font-size:var(--text-xs);font-weight:500;color:var(--text-faint)}.assistant-tool-details .assistant-code{margin:0;max-height:200px}.assistant-tool-summary{margin:0;font-size:var(--text-md);line-height:1.5;color:var(--text-dim);overflow-wrap:anywhere}.assistant-run{display:flex;flex-direction:column;gap:8px;padding:0 10px 10px 24px}.assistant-run-figures{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;margin:0}.assistant-run-figure{display:contents}.assistant-run-figure dt{display:flex;align-items:baseline;gap:6px;min-width:0;font-size:var(--text-xs);color:var(--text-faint)}.assistant-run-figure dt .mono{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assistant-run-statistic{flex:none}.assistant-run-figure dd{margin:0;font-size:var(--text-xs);font-weight:600;font-variant-numeric:tabular-nums;color:var(--text);text-align:right}.assistant-run-note{margin:0;font-size:var(--text-xs);color:var(--text-faint)}.assistant-run-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.assistant-run-actions p{margin:0;font-size:var(--text-sm);color:var(--text-dim)}.assistant-composer{flex:none;display:flex;flex-direction:column;gap:6px;padding:10px 12px 12px;border-top:1px solid var(--border);background:var(--panel)}.assistant-composer .assistant-context{padding-left:2px}.assistant-field{display:flex;align-items:flex-end;gap:8px}.assistant-field textarea{flex:1;min-width:0;max-height:200px;margin:0;padding:6px 10px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--panel);color:var(--text);font-family:var(--sans);font-size:var(--text-md);line-height:1.5;resize:none;overflow-y:auto}.assistant-field textarea::placeholder{color:var(--text-faint)}.assistant-field textarea:focus{outline:none;border-color:var(--focus);box-shadow:0 0 0 2px color-mix(in srgb,var(--focus) 25%,transparent)}.assistant-field textarea[readonly]{color:var(--text-dim)}.assistant-field .btn{flex:none;height:32px}.assistant-field .btn[aria-disabled=true]{opacity:.45;cursor:default}.btn.assistant-stop{background:var(--panel);border-color:var(--run-live);color:var(--run-live)}.btn.assistant-stop:hover:not([aria-disabled=true]){background:color-mix(in srgb,var(--run-live) 10%,var(--panel));border-color:var(--run-live)}.assistant-composer-note{margin:0;font-size:var(--text-sm);color:var(--text-dim)}.assistant-link{flex:none;margin:0;padding:6px 14px;font-size:var(--text-sm);color:var(--text-dim)}.assistant-empty{flex:1;overflow-y:auto;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding-bottom:20px}.assistant-empty>.btn{margin-left:20px}.assistant-suggestions{align-self:stretch;display:flex;flex-direction:column;gap:6px;margin:0;padding:0 20px;list-style:none}.assistant-suggestion{width:100%;padding:8px 10px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--panel);color:var(--text);font-family:var(--sans);font-size:var(--text-md);text-align:left;cursor:pointer;transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease)}.assistant-suggestion:hover:not([aria-disabled=true]){background:var(--panel-3);border-color:var(--border-hover)}.assistant-suggestion:focus-visible{outline:none;box-shadow:0 0 0 2px var(--panel),0 0 0 4px var(--focus)}.assistant-suggestion[aria-disabled=true]{color:var(--text-faint);cursor:default}@media(max-width:1100px){.workbench-app .assistant-toggle,.workbench-app .share-toggle{display:none}}@media(max-width:760px){.workbench>.workbench-inspector.assistant-full{position:fixed;z-index:calc(var(--z-modal) - 1);top:0;right:0;bottom:0;left:0;width:auto;height:auto;max-height:none;border:0;border-radius:0;box-shadow:none}}@media(pointer:coarse){.assistant-tool-head{min-height:44px}.assistant-tool-main{align-self:stretch;align-items:center;min-height:44px}.assistant-tool-more,.assistant-field .btn{min-width:44px;height:44px}.assistant-suggestion{min-height:44px}.assistant-field textarea{min-height:44px;padding-block:11px}}@media(prefers-reduced-motion:reduce){.assistant-working:before,.assistant-tool.running .assistant-tool-dot{animation:none}}.settings-dialog.signin-dialog{width:min(400px,calc(100vw - 32px))}.signin-body{display:flex;flex-direction:column;gap:14px;padding:18px}.signin-lead{margin:0;color:var(--text-dim);font-size:var(--text-md);line-height:1.6;overflow-wrap:anywhere}.signin-email{display:inline-block;max-width:100%;color:var(--text)}.signin-code{font-size:var(--text-lg);font-variant-numeric:tabular-nums;letter-spacing:.3em}.signin-body .field-error{margin:-8px 0 0}.signin-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.signin-legal{margin:0;color:var(--text-dim);font-size:var(--text-sm);line-height:1.5}.signin-legal a{color:var(--text);text-underline-offset:2px}.signin-legal a:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:2px}.app-menu-account{overflow-wrap:anywhere}.connections-body p{margin:0}.connections-lead,.connections-empty,.connections-notice:not(.field-error){color:var(--text-dim);font-size:var(--text-md);line-height:1.6}.connections-empty{color:var(--text)}.connections-problem{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.connections-list{margin:0;padding:0;list-style:none}.connections-row{display:flex;align-items:center;gap:12px;padding:10px 0}.connections-row:first-child{padding-top:0}.connections-row+.connections-row{border-top:1px solid var(--border)}.connections-tool{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;overflow-wrap:anywhere}.connections-name{color:var(--text);font-size:var(--text-md);font-weight:500}.connections-hint{color:var(--text-dim);font-size:var(--text-sm)}.connections-row .btn{flex:none}.connections-notice:not(:empty){margin-top:12px}.connections-help{margin-top:18px;padding-top:16px;border-top:1px solid var(--border)}.connections-help .connections-address{margin-top:8px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);color:var(--text);font-size:var(--text-sm);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.start-account{position:fixed;top:12px;right:12px;display:flex;align-items:center;gap:8px;max-width:calc(100vw - 24px)}.start-account-email{min-width:0;overflow:hidden;color:var(--text-dim);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap}.cloud-sync{flex:none;display:flex;align-items:center;padding:0 8px;border:1px solid var(--border-strong);border-radius:var(--radius-pill);color:var(--text-dim);font-size:var(--text-xs);font-weight:500;line-height:20px;white-space:nowrap}.cloud-sync:empty{padding:0;border:0}.cloud-sync svg{display:none}.cloud-notice{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;padding:4px 4px 4px 12px;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--panel);font-size:var(--text-sm)}.workbench-app .cloud-notice{width:100%;max-width:320px;box-shadow:var(--shadow-pop)}.start-screen .cloud-notice{margin-top:12px}.cloud-notice p{flex:1 1 180px;min-width:0;margin:0;padding-block:4px;color:var(--text-dim);line-height:1.5;overflow-wrap:anywhere}.cloud-notice .btn{flex:none;margin-left:auto}@media(max-width:760px){.workbench-app .cloud-notice{max-width:280px}.cloud-sync{height:28px;padding:0 5px}.cloud-sync svg{display:block}.cloud-sync-word{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%)}}.share-dialog .settings-body>*+*{margin-top:12px}.share-link{display:flex;gap:8px}.share-link input{flex:1 1 auto;min-width:0}.share-link .btn{flex:none}.share-preview{display:block;width:100%;aspect-ratio:40 / 21;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-3)}.settings-action{margin-top:10px}.model-inspector-actions{display:flex;flex-wrap:wrap;gap:8px}@media(max-width:760px)and (max-height:480px){.react-flow__panel.bottom.left{top:4px;bottom:auto;left:var(--topbar-right, 0px)}.react-flow__controls{flex-direction:row}.react-flow__controls-button+.react-flow__controls-button{border-top:0;border-left:1px solid var(--border)}.react-flow__controls-button:first-child{border-radius:calc(var(--radius) - 1px) 0 0 calc(var(--radius) - 1px)}.react-flow__controls-button:last-child{border-radius:0 calc(var(--radius) - 1px) calc(var(--radius) - 1px) 0}.workbench-app{max-height:calc(100% - var(--exec-top, 0px) - 24px)}.workbench>.run-drawer{left:8px}}@media(max-height:340px){.workbench-tools{display:none}.model-summary:not(.expanded) :is(.model-summary-description,.model-summary-facts){display:none}.workbench-execution:has(>.time-track:empty){--reserve-above: 0px}}
