.boot-screen{background:var(--color-bg);place-items:center;height:100%;display:grid}.boot-card{background:var(--color-surface);border:1px solid var(--color-border);width:min(420px,90vw);box-shadow:var(--shadow-card);border-radius:12px;padding:2.5rem}.boot-wordmark{font-size:var(--text-xl);letter-spacing:-.01em;margin:0 0 .25rem;font-weight:650}.boot-wordmark em{color:var(--color-accent);font-style:normal}.boot-tagline{color:var(--color-text-muted);font-size:var(--text-sm);margin:0 0 1.75rem}.boot-stages{font-size:var(--text-sm);gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.boot-stage{color:var(--color-text-muted);align-items:center;gap:.6rem;display:flex}.boot-stage[data-state=active]{color:var(--color-text);font-weight:550}.boot-stage[data-state=done]{color:var(--color-success-text)}.boot-dot{background:var(--color-border);border-radius:50%;flex:none;width:8px;height:8px}.boot-stage[data-state=active] .boot-dot{background:var(--color-accent);animation:1.1s ease-in-out infinite boot-pulse}.boot-stage[data-state=done] .boot-dot{background:var(--color-success)}@keyframes boot-pulse{50%{opacity:.35}}.boot-bar{background:var(--color-surface-alt);border-radius:3px;height:6px;margin-top:1.5rem;overflow:hidden}.boot-bar-fill{background:var(--color-accent);border-radius:3px;height:100%;transition:width .2s}.boot-detail{white-space:pre-line;overflow-wrap:anywhere;min-height:1.1em;font-size:var(--text-xs);color:var(--color-text-muted);font-variant-numeric:tabular-nums;margin-top:.6rem}.error-screen{place-items:center;height:100%;padding:2rem;display:grid}.error-card{border:1px solid var(--color-danger-subtle);border-left:4px solid var(--color-danger);background:var(--color-surface);border-radius:8px;max-width:560px;padding:2rem}.crash-tabs{border-top:1px solid var(--color-border);margin:1rem 0;padding:0;list-style:none}.crash-tabs li{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:1rem;padding:.5rem 0;display:flex}.crash-notice{color:var(--color-text-muted);font-size:var(--text-sm)}.ready-shell{height:100%}.ready-header{border-bottom:1px solid var(--color-navy-line);background:var(--color-navy);align-items:center;gap:1.25rem;padding:.6rem 1.25rem;display:flex}.ready-header .boot-wordmark{color:var(--color-on-navy)}.ready-header .boot-wordmark em{color:var(--color-accent-bright)}.toolbar{align-items:center;gap:.65rem;display:flex}.toolbar-group{background:var(--color-navy-raise);border-radius:10px;align-items:center;gap:.1rem;padding:.15rem;display:flex}.toolbar-btn{width:32px;height:32px;color:var(--color-on-navy);cursor:pointer;transition:background var(--duration-fast,.15s) ease;background:0 0;border:none;border-radius:7px;justify-content:center;align-items:center;padding:0;display:inline-flex}.toolbar-btn:hover:not(:disabled){background:var(--color-navy-hover)}.toolbar-btn:disabled{color:var(--color-on-navy-muted);cursor:default}.busy-overlay{z-index:70;background:var(--backdrop);place-items:center;animation:.15s .2s both busy-appear;display:grid;position:fixed;inset:0}.busy-card{align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--text-sm);display:flex}.busy-spinner{border:2px solid var(--color-border);border-top-color:var(--color-accent);border-radius:var(--radius-full);width:16px;height:16px;animation:.8s linear infinite busy-spin}@keyframes busy-appear{0%{opacity:0}}@keyframes busy-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.busy-spinner{animation:none}}.toolbar-btn.toolbar-run[data-busy=true]{animation:1s ease-in-out infinite ui-status-pulse}@media (prefers-reduced-motion:reduce){.toolbar-btn.toolbar-run[data-busy=true],.boot-stage[data-state=active] .boot-dot{animation:none}}.toolbar-btn svg{width:18px;height:18px}.header-icon-btn{border-radius:var(--radius-sm);cursor:pointer;width:30px;height:30px;color:var(--color-on-navy-muted);transition:background var(--duration-fast) ease, color var(--duration-fast) ease;background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.header-icon-btn svg{width:16px;height:16px}.header-icon-btn:hover{background:var(--color-navy-hover);color:var(--color-on-navy)}.header-icon-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.header-icon-btn,.toolbar-btn{position:relative}.header-icon-btn:after,.toolbar-btn:after{content:attr(aria-label);background:var(--color-text);color:var(--color-surface);border-radius:var(--radius-sm);font-size:var(--text-2xs);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--duration-fast);z-index:10;padding:2px 6px;font-weight:400;position:absolute;top:calc(100% + 6px)}.header-icon-btn:after{right:0}.toolbar-btn:after{left:0}.header-icon-btn:hover:after,.toolbar-btn:hover:after{opacity:1}.toolbar-btn[aria-pressed=true]{background:var(--color-navy-hover);color:var(--color-accent-bright)}.header-icon-btn[aria-pressed=true]{background:var(--color-navy-raise);color:var(--color-accent-bright)}.engine-badge{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--text-xs);color:var(--color-on-navy-muted);font-variant-numeric:tabular-nums;margin-left:auto;overflow:hidden}.studio-grid{grid-template-rows:auto auto 1fr;height:100%;display:grid}.tab-bar{background:var(--color-surface);border-bottom:1px solid var(--color-border);font-size:var(--text-label);align-items:stretch;gap:2px;padding:.25rem .5rem 0;display:flex}.tab{background:var(--color-accent-wash);color:var(--color-text-muted);clip-path:polygon(12px 0,calc(100% - 12px) 0,calc(100% - 8px) 3px,100% 100%,0 100%,8px 3px);filter:drop-shadow(1px 0 0 var(--color-accent)) drop-shadow(-1px 0 0 var(--color-accent)) drop-shadow(0 1px 0 var(--color-accent)) drop-shadow(0 -1px 0 var(--color-accent));align-items:center;gap:.1rem;padding:.3rem .85rem;display:flex}.tab[data-active=true]{background:var(--color-accent);color:var(--color-accent-text);filter:none}.tab:hover:not([data-active=true]){background:var(--color-accent-hover);color:var(--color-accent-text)}.tab[data-active=true] .tab-icon{color:var(--color-accent-text);opacity:.85}.tab[data-active=true] .tab-icon:hover{color:var(--color-accent-text);opacity:1;background:var(--color-accent-hover)}.tab-dirty-dot{background:var(--color-warning);border-radius:50%;flex:none;width:6px;height:6px;display:inline-block}.tab-name{font:inherit;color:inherit;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;max-width:160px;padding:.1rem .3rem;overflow:hidden}.tab-rename{font:inherit;border:1px solid var(--color-accent);background:var(--color-surface);width:130px;color:var(--color-text);border-radius:4px;padding:.05rem .25rem}.tab-icon{cursor:pointer;color:var(--color-text-muted);font-size:var(--text-2xs);background:0 0;border:none;border-radius:4px;padding:.15rem;line-height:1}.tab-icon:hover{color:var(--color-text);background:var(--color-surface-hover)}.tab-add{cursor:pointer;color:var(--color-text-muted);font-size:var(--text-base);background:0 0;border:none;padding:0 .5rem;line-height:1}.tab-add:hover{color:var(--color-accent)}.studio-main{min-width:0;min-height:0;display:flex;position:relative}.studio-main>.canvas-root{flex:1;min-width:0}.toolbar-btn:focus-visible,.tab-name:focus-visible,.tab-icon:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.settings-card__problem{max-width:28rem;font-size:var(--text-xs);color:var(--color-warning);font-weight:500}.template-ghost{box-sizing:border-box;border:1px dashed var(--color-accent);border-radius:var(--radius-md);width:112px;height:72px;color:var(--color-text);background:var(--color-surface);opacity:.8;font-size:var(--text-xs);flex-direction:column;justify-content:center;padding:8px;display:flex}.template-ghost strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.template-ghost span{color:var(--color-text-muted);font-size:var(--text-2xs)}.template-placement{align-items:center;gap:var(--space-sm);padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-md);font-size:var(--text-sm);display:flex}.canvas-root[data-template-placement=true] .react-flow__node,.canvas-root[data-template-placement=true] .react-flow__node *,.canvas-root[data-template-placement=true] .react-flow__edge{pointer-events:none!important}.canvas-root[data-template-placement=true] .react-flow__pane{cursor:crosshair}.annotation-box{--annotation-outline:var(--color-text-muted);--annotation-fill:transparent;--annotation-text:var(--color-text);box-sizing:border-box;border:2px solid var(--annotation-outline);border-radius:var(--radius-sm);background:var(--annotation-fill);height:100%;color:var(--annotation-text);cursor:move;padding:12px;position:relative}.annotation-box[data-outline=none]{--annotation-outline:transparent}.annotation-box[data-fill=default]{--annotation-fill:var(--color-surface)}.annotation-box[data-outline=teal]{--annotation-outline:var(--annotation-teal)}.annotation-box[data-outline=blue]{--annotation-outline:var(--annotation-blue)}.annotation-box[data-outline=purple]{--annotation-outline:var(--annotation-purple)}.annotation-box[data-outline=amber]{--annotation-outline:var(--annotation-amber)}.annotation-box[data-outline=red]{--annotation-outline:var(--annotation-red)}.annotation-box[data-text-color=teal]{--annotation-text:var(--annotation-teal)}.annotation-box[data-text-color=blue]{--annotation-text:var(--annotation-blue)}.annotation-box[data-text-color=purple]{--annotation-text:var(--annotation-purple)}.annotation-box[data-text-color=amber]{--annotation-text:var(--annotation-amber)}.annotation-box[data-text-color=red]{--annotation-text:var(--annotation-red)}.annotation-box[data-fill=teal]{--annotation-fill:var(--annotation-fill-teal)}.annotation-box[data-fill=blue]{--annotation-fill:var(--annotation-fill-blue)}.annotation-box[data-fill=purple]{--annotation-fill:var(--annotation-fill-purple)}.annotation-box[data-fill=amber]{--annotation-fill:var(--annotation-fill-amber)}.annotation-box[data-fill=red]{--annotation-fill:var(--annotation-fill-red)}.annotation-box[data-selected=true]{outline:1px dashed var(--color-accent);outline-offset:4px}.annotation-text{min-height:32px;font-family:var(--font-family);font-size:var(--text-sm);overflow-wrap:anywhere;white-space:pre-wrap;outline:none;line-height:1.5}.annotation-text[contenteditable=true]{cursor:text}.annotation-text p,.annotation-text h1,.annotation-text h2{margin:0 0 8px}.annotation-text h1{font-size:var(--text-2xl);line-height:var(--line-height-tight)}.annotation-text h2{font-size:var(--text-lg);line-height:var(--line-height-tight)}.annotation-text ul,.annotation-text ol{margin:4px 0;padding-left:24px}.annotation-placeholder{color:var(--color-text-muted);font-size:var(--text-sm);pointer-events:none;position:absolute;top:14px;left:14px}.canvas-root:not([data-annotation-mode=true]) .react-flow__node-annotation,.canvas-root[data-annotation-mode=true] .react-flow__node:not(.react-flow__node-annotation),.canvas-root[data-annotation-mode=true] .react-flow__edge,.canvas-root[data-annotation-mode=true] .react-flow__node:not(.react-flow__node-annotation) *{pointer-events:none!important}.annotation-toolbar{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);width:max-content;max-width:calc(100% - 32px);box-shadow:var(--shadow-md);color:var(--color-text);font-size:var(--text-xs);padding:6px}.annotation-toolbar-in-group{margin-top:48px}.annotation-toolbar-heading,.annotation-tools-row,.annotation-format-tools,.annotation-colours{align-items:center;gap:2px;display:flex}.annotation-tools-row{border-top:1px solid var(--color-border);flex-wrap:wrap;margin-top:5px;padding-top:5px}.annotation-toolbar-spacer{flex:1;min-width:16px}.annotation-mode-label{font-weight:var(--weight-medium);color:var(--color-text-muted);align-items:center;gap:6px;padding:0 8px 0 4px;display:flex}.annotation-mode-label:before{content:"";border-radius:var(--radius-full);background:var(--color-accent);width:6px;height:6px}.annotation-toolbar-heading{gap:4px}.annotation-toolbar-heading .annotation-button-label:last-child{color:var(--color-accent);border-left:1px solid var(--color-border);border-radius:0;margin-left:4px;padding-left:10px}.annotation-toolbar .annotation-button{border-radius:var(--radius-sm);flex:none;width:28px;height:28px;position:relative}.annotation-button svg{flex-shrink:0;width:16px;height:16px}.annotation-toolbar .annotation-button-label{width:auto;font:inherit;white-space:nowrap;gap:5px;padding:4px 8px}.annotation-button[aria-pressed=true],.annotation-button[aria-expanded=true]{color:var(--color-accent);background:var(--color-accent-subtle)}.annotation-button:disabled{opacity:.35;cursor:default}.annotation-button:hover:not(:disabled){background:var(--color-surface-hover)}.annotation-button:after{content:attr(aria-label);border-radius:var(--radius-sm);background:var(--color-navy);color:var(--color-on-navy);font:var(--text-xs) var(--font-family);white-space:nowrap;pointer-events:none;opacity:0;z-index:var(--z-dropdown);padding:4px 7px;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%)}.annotation-button:hover:not(:disabled):after{opacity:1}.annotation-button-label:after,.annotation-colour-button[aria-expanded=true]:after{display:none}.annotation-tool-divider,.annotation-colours{border-left:1px solid var(--color-border);margin-left:4px;padding-left:4px}.annotation-format-tools select{border-radius:var(--radius-sm);background:var(--color-surface);width:82px;color:var(--color-text);font:inherit;border:none;margin-right:4px;padding:4px}.annotation-format-tools select:focus-visible{outline:2px solid var(--color-accent)}.annotation-colour-control{position:relative}.annotation-colour-button{padding-bottom:7px}.annotation-colour-indicator{background:var(--swatch-colour);border-radius:1px;width:16px;height:3px;position:absolute;bottom:3px}.annotation-colour-menu{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-md);z-index:var(--z-dropdown);padding:10px;position:absolute;top:calc(100% + 8px);right:0}.annotation-colour-menu>span{color:var(--color-text-muted);margin-bottom:8px;display:block}.annotation-swatches{gap:6px;display:flex}.annotation-swatch{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--swatch-colour);cursor:pointer;width:22px;height:22px}.annotation-swatch[aria-pressed=true]{outline:2px solid var(--color-accent);outline-offset:2px}.annotation-swatch:focus-visible{outline:2px solid var(--color-text);outline-offset:2px}.annotation-swatch[data-tone=none],.annotation-colour-indicator[data-tone=none]{background:linear-gradient(135deg, transparent 44%, var(--color-text-muted) 46%, var(--color-text-muted) 54%, transparent 56%)}[data-tone=none]{--swatch-colour:transparent}[data-tone=default]{--swatch-colour:var(--color-text)}[data-tone=teal]{--swatch-colour:var(--annotation-teal)}[data-tone=blue]{--swatch-colour:var(--annotation-blue)}[data-tone=purple]{--swatch-colour:var(--annotation-purple)}[data-tone=amber]{--swatch-colour:var(--annotation-amber)}[data-tone=red]{--swatch-colour:var(--annotation-red)}[data-kind=outline][data-tone=default]{--swatch-colour:var(--color-text-muted)}[data-kind=fill][data-tone=default]{--swatch-colour:var(--color-surface)}.annotation-swatch[data-kind=fill][data-tone=default]{border-color:var(--color-text-muted)}.annotation-colour-indicator[data-kind=fill][data-tone=default]{--swatch-colour:var(--color-text-muted)}.annotation-swatch[data-kind=fill][data-tone=teal]{--swatch-colour:var(--annotation-fill-teal);border-color:var(--annotation-teal)}.annotation-swatch[data-kind=fill][data-tone=blue]{--swatch-colour:var(--annotation-fill-blue);border-color:var(--annotation-blue)}.annotation-swatch[data-kind=fill][data-tone=purple]{--swatch-colour:var(--annotation-fill-purple);border-color:var(--annotation-purple)}.annotation-swatch[data-kind=fill][data-tone=amber]{--swatch-colour:var(--annotation-fill-amber);border-color:var(--annotation-amber)}.annotation-swatch[data-kind=fill][data-tone=red]{--swatch-colour:var(--annotation-fill-red);border-color:var(--annotation-red)}.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#555;--xy-background-pattern-lines-color-default:#333;--xy-background-pattern-cross-color-default:#333;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}.studio-node[data-category=group],.studio-node[data-category=boundary]{--node-cat-colour:var(--color-text-muted)}.group-boundary-label{font-size:var(--text-2xs);white-space:nowrap;text-overflow:ellipsis;color:var(--color-text-muted);overflow:hidden}.group-nav-button{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;flex:0 0 24px;justify-content:center;align-items:center;padding:4px;display:inline-flex}.group-nav-button svg{width:16px;height:16px}.group-nav-button:hover{background:var(--color-surface);color:var(--color-text)}.group-nav-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.group-settings-button svg{width:14px;height:14px}.studio-node[data-category=boundary] .studio-node-label{font-size:var(--text-2xs)}.studio-node[data-category=boundary] .studio-node-body{padding-inline:6px}.group-navigation{align-items:center;gap:6px;max-width:calc(100% - 32px);display:flex}.group-navigation nav{min-width:0}.group-navigation ol{font-size:var(--text-xs);align-items:center;gap:8px;margin:0;padding:0;list-style:none;display:flex}.group-navigation li{min-width:0}.group-ancestor{max-width:240px;color:var(--color-text-muted);font:inherit;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;padding:4px 0;display:block;overflow:hidden}.group-ancestor:hover{color:var(--color-text);text-decoration:underline}.group-ancestor:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.group-separator{color:var(--color-text-muted);opacity:.6}.group-current{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;max-width:280px;overflow:hidden}.studio-node{background:var(--color-surface);border:1px solid var(--color-border);width:112px;height:72px;font-size:var(--text-xs);border-radius:8px;grid-template-columns:6px 1fr;display:grid;position:relative}.studio-node[data-selected=true]{border-color:var(--color-accent);box-shadow:inset 0 0 0 1.5px var(--color-accent)}.studio-node-stripe{background:var(--node-cat-colour);border-radius:7px 0 0 7px}.studio-node[data-category=source]{--node-cat-colour:var(--color-type-continuous)}.studio-node[data-category=transform]{--node-cat-colour:var(--color-type-categorical)}.studio-node[data-category=actuarial]{--node-cat-colour:var(--color-accent)}.studio-node[data-category=sink]{--node-cat-colour:var(--color-node-output)}.studio-node-body{grid-template-rows:auto 1fr;gap:.15rem;min-width:0;padding:.4rem .55rem;display:grid}.studio-node-label{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.studio-node-category{color:var(--color-text-muted);font-size:var(--text-3xs)}.studio-node-controls{justify-content:space-between;align-items:center;gap:.2rem;display:flex}.studio-node-control-spacer{width:20px}.studio-node-iconbtn{cursor:pointer;width:20px;height:20px;color:var(--color-text-muted);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}.studio-node-iconbtn .ui-icon{width:11.2px;height:11.2px}.studio-node-iconbtn:hover{background:var(--color-surface-hover);color:var(--color-text)}.sidebar-item:focus-visible,.sidebar-toggle:focus-visible,.studio-node-iconbtn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.studio-handle{background:var(--color-surface);border:2px solid var(--color-text-muted);width:10px;height:10px}.studio-handle[data-compatible=true]{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-subtle)}.studio-handle[data-incompatible=true]{opacity:.25}.studio-handle[data-optional-unwired=true]{opacity:.45}.react-flow__handle.studio-handle[data-many=true]{height:22px;box-shadow:0 0 0 2px var(--color-surface), 0 0 0 3px var(--color-border);border-radius:6px}.studio-handle:after{content:attr(data-label);background:var(--color-text);color:var(--color-surface);border-radius:var(--radius-sm);font-family:var(--font-family);font-size:var(--text-2xs);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--duration-fast);z-index:10;padding:2px 6px;position:absolute;top:50%;transform:translateY(-50%)}.react-flow__handle-left.studio-handle:after{right:160%}.react-flow__handle-right.studio-handle:after{left:160%}.studio-handle:hover:after{opacity:1}.canvas-root{height:100%;position:relative}.sidebar{flex-direction:column;flex:none;width:34px;min-height:0;margin:.6rem;display:flex}.sidebar[data-open=true]{background:var(--color-surface);border:1px solid var(--color-border);width:232px;box-shadow:var(--shadow-md);border-radius:10px;overflow-y:auto}.sidebar-head{flex-shrink:0;align-items:center;display:flex}.sidebar-toggle{cursor:pointer;font-size:var(--text-base);color:var(--color-text-muted);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.sidebar-toggle:hover{color:var(--color-text)}.sidebar[data-open=false] .sidebar-toggle{background:var(--color-surface);border:1px solid var(--color-border);width:34px;height:34px;box-shadow:var(--shadow-sm);border-radius:8px}.sidebar[data-open=false] .sidebar-toggle:hover{background:var(--color-surface-hover);color:var(--color-text)}.sidebar[data-open=true] .sidebar-toggle{width:32px;height:32px;margin:0}.sidebar-body{align-content:start;gap:.12rem;padding:.1rem .5rem .75rem;display:grid}.cat-title,.sec-title,.sidebar-item{width:100%;font-family:inherit;font-size:var(--text-xs);color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:7px;align-items:center;gap:.25rem;font-weight:400;display:flex}.cat-title,.sec-title{list-style:none}.cat-title::-webkit-details-marker{display:none}.sec-title::-webkit-details-marker{display:none}.cat-title:before,.sec-title:before{content:"›";text-align:center;width:.7rem;font-size:var(--text-sm);transition:transform var(--duration-fast) var(--ease-out);flex-shrink:0;line-height:1}.sidebar-cat[open]>.cat-title:before,.sidebar-sec[open]>.sec-title:before{transform:rotate(90deg)}.cat-title{background:var(--color-accent);color:var(--color-accent-text);padding:.3rem .55rem .3rem .4rem}.cat-title:before{color:var(--color-accent-text)}.sidebar-sec{margin-top:.12rem;margin-left:.85rem}.sec-title{background:var(--color-accent-soft);color:var(--color-text);padding:.3rem .55rem .3rem .4rem}.sec-title:before{color:var(--color-accent)}.cat-title:hover{background:var(--color-accent-hover)}.sec-title:hover{background:var(--color-accent-soft-strong)}.sidebar-items{gap:.05rem;margin-top:.08rem;display:grid}.sidebar-item{color:var(--color-text);cursor:grab;padding:.26rem .5rem .26rem .55rem}.sidebar-item:before{content:"•";text-align:center;width:.7rem;line-height:1;font-size:var(--text-base);color:var(--color-text-muted);flex-shrink:0}.sidebar-item:hover{background:var(--color-surface-hover)}.sidebar-item:disabled{color:var(--color-text-muted);cursor:not-allowed}.palette-search-row{align-items:center;margin-bottom:.35rem;display:flex;position:relative}.palette-search{width:100%;font-size:var(--text-xs);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);appearance:none;border-radius:5px;outline:none;padding:.25rem 1.6rem .25rem .4rem;font-family:inherit}.palette-search:focus{border-color:var(--color-accent)}.palette-search-clear{cursor:pointer;width:1rem;height:1rem;color:var(--color-text-muted);font-size:var(--text-3xs);background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex;position:absolute;right:.3rem}.palette-search-clear:hover{color:var(--color-text);background:var(--color-surface-hover)}.palette-empty{color:var(--color-text-muted);font-size:var(--text-xs);margin:.2rem .1rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.studio-node-tooltip{z-index:10;overflow-wrap:anywhere;background:var(--color-surface);border:1px solid var(--color-border);width:max-content;max-width:220px;color:var(--color-text);font-size:var(--text-xs);white-space:pre-wrap;pointer-events:none;border-radius:6px;padding:.35rem .5rem;line-height:1.35;position:absolute;top:calc(100% + 6px);left:0}.canvas-root .react-flow__selection{background:var(--color-accent-subtle);border:1px dashed var(--color-accent)}.canvas-root[data-select-mode=true] .react-flow__pane,.canvas-root[data-select-mode=true] .react-flow__node{cursor:crosshair}.canvas-root .react-flow__nodesselection,.canvas-root .react-flow__nodesselection-rect{pointer-events:none}.canvas-root .react-flow__nodesselection-rect{background:0 0;border:none}.alignment-axis-label{width:76px;color:var(--color-text-muted);padding:0 4px}.canvas-navigation{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:8px;align-items:center;gap:2px;padding:4px;display:flex}.canvas-navigation .ui-button{padding:6px 8px}.canvas-navigation .ui-icon{width:16px;height:16px;display:block}.canvas-navigation output{text-align:center;min-width:42px;font-size:var(--text-xs);color:var(--color-text-muted);font-variant-numeric:tabular-nums}:root{--notice-toast-top:6.25rem}.notice-toast{--notice-tone:var(--color-accent);align-items:flex-start;gap:var(--space-sm);border:1px solid var(--notice-tone);border-radius:var(--radius-md);background:var(--color-surface-raised);width:100%;box-shadow:var(--shadow-float);color:var(--color-text);font-size:var(--text-sm);line-height:var(--line-height-tight);border-left-width:4px;padding:.65rem .75rem .65rem .9rem;display:flex}.notice-toast[data-kind=warning],.notice-history-row[data-kind=warning]{--notice-tone:var(--color-warning)}.notice-toast[data-kind=error],.notice-history-row[data-kind=error]{--notice-tone:var(--color-danger)}.notice-toast-message{overflow-wrap:anywhere;flex:1}.notice-toast-count{color:var(--color-text-muted);font-variant-numeric:tabular-nums}.notice-toast-dismiss{color:var(--color-text-muted);cursor:pointer;font-size:var(--text-sm);border-radius:var(--radius-sm);background:0 0;border:none;flex:none;padding:.15rem .3rem;line-height:1}.notice-toast-dismiss:hover{background:var(--color-surface-hover);color:var(--color-text)}.notice-toast-dismiss:focus-visible,.notice-history-clear:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.notice-history{flex:none;margin-left:-.6rem;position:relative}.notice-history .toolbar-btn{position:relative}.notice-history .toolbar-btn:after{left:auto;right:0}.notice-history .toolbar-btn[aria-expanded=true]:after{display:none}.notice-history-dot{border-radius:var(--radius-full);background:var(--color-accent-bright);width:7px;height:7px;box-shadow:0 0 0 2px var(--color-navy-raise);position:absolute;top:6px;right:6px}.notice-history-dot[data-error]{background:var(--color-danger)}.notice-history-panel{z-index:var(--z-dropdown);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-raised);width:min(24rem,100vw - 2rem);max-height:min(28rem,70vh);box-shadow:var(--shadow-xl);color:var(--color-text);flex-direction:column;display:flex;position:absolute;top:calc(100% + .5rem);right:0}.notice-history-head{padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:baseline;display:flex}.notice-history-head h2{font-size:var(--text-sm);font-weight:var(--weight-semibold);margin:0}.notice-history-clear{color:var(--color-accent-hover);cursor:pointer;font-size:var(--text-xs);border-radius:var(--radius-sm);background:0 0;border:none;padding:.15rem .3rem}.notice-history-clear:hover:not(:disabled){background:var(--color-accent-subtle)}.notice-history-clear:disabled{color:var(--color-text-muted);cursor:default}.notice-history-empty{padding:var(--space-lg) var(--space-md);color:var(--color-text-muted);font-size:var(--text-sm);margin:0}.notice-history-list{padding:var(--space-2xs) 0;margin:0;list-style:none;overflow-y:auto}.notice-history-row{--notice-tone:var(--color-accent);gap:var(--space-sm);padding:var(--space-xs) var(--space-md);display:flex}.notice-history-row+.notice-history-row{border-top:1px solid var(--color-border)}.notice-history-marker{border-radius:var(--radius-full);background:var(--notice-tone);flex:none;width:8px;height:8px;margin-top:.35rem}.notice-history-body{min-width:0}.notice-history-message{font-size:var(--text-sm);line-height:var(--line-height-tight);overflow-wrap:anywhere;margin:0}.notice-history-meta{color:var(--color-text-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums;margin:.2rem 0 0}.column-format-button{vertical-align:middle;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;border-radius:4px;margin-left:6px;padding:3px;display:inline-flex}.column-format-button:hover,.column-format-button:focus-visible{color:var(--color-text);background:var(--color-surface-hover)}.column-format-button .ui-icon{width:14px;height:14px}.column-format-dialog{box-sizing:border-box;border:1px solid var(--color-border);width:320px;max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);color:var(--color-text);background:var(--color-surface);font:inherit;border-radius:10px;margin:0;padding:20px;position:fixed;overflow:auto}.column-format-dialog::backdrop{background:0 0}.column-format-dialog form{flex-direction:column;gap:14px;display:flex}.column-format-dialog label{font-size:var(--text-label);flex-direction:column;gap:6px;display:flex}.column-format-dialog input,.column-format-dialog select{border:1px solid var(--color-border);background:var(--color-surface);min-width:0;color:var(--color-text);font:inherit;border-radius:4px;padding:7px}.column-format-dialog .column-format-check{flex-direction:row;align-items:center}.column-format-hint{font-size:var(--text-xs);color:var(--color-text-muted)}.column-format-dialog output{background:var(--color-surface-raised);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;border-radius:4px;padding:12px}.column-format-actions{justify-content:space-between;gap:8px;display:flex}.account-workspace{height:100%}.account-page{min-height:100%;padding:var(--space-xl) var(--space-md);background:var(--color-bg);place-items:center;display:grid}.account-card{width:min(100%,460px);padding:var(--space-xl);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card)}.account-wordmark{font-size:var(--text-xl);font-weight:var(--weight-semibold)}.account-wordmark em{color:var(--color-accent);font-style:normal}.account-card h1,.account-details h1{font-size:var(--text-2xl)}.account-card h2{font-size:var(--text-lg)}.account-card p,.account-details p{line-height:var(--line-height);overflow-wrap:anywhere}.account-card>p,.account-details>p{color:var(--color-text-muted)}.account-card a{margin-top:var(--space-lg);color:var(--color-accent);display:block}.account-card a.account-inline-link{margin:0;display:inline}.account-form{gap:var(--space-md);margin-block:var(--space-lg);display:grid}.account-form label{gap:var(--space-sm);font-size:var(--text-sm);display:grid}.account-form input{width:100%;padding:var(--space-sm) var(--space-md);background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-sm);font:inherit;min-height:44px}.account-form input:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.account-card [role=alert],.account-details [role=alert]{color:var(--color-danger-text)}.account-details{max-width:480px;margin:var(--space-xl) auto}.account-details .account-access{color:var(--color-success-text)}.account-preserved{border-top:1px solid var(--color-border);margin-block:var(--space-lg)}.account-preserved .ui-button{margin:var(--space-xs)}:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#f8f9fa;--color-surface:#fff;--color-surface-hover:#f1f3f5;--color-surface-alt:#00000008;--color-surface-raised:#f8f9fa;--color-border:#e2e8f0;--color-text:#0f1729;--color-text-muted:#64748b;--color-accent:#0d9488;--color-accent-hover:#0f766e;--color-accent-subtle:#0d94881a;--color-output-tab-wash:#fbeecb;--color-output-tab-text:#92610b;--color-accent-tint:#0d94880a;--color-accent-soft:#0d948829;--color-accent-soft-strong:#0d948842;--color-accent-wash:#e9f4f2;--color-accent-text:#fff;--color-danger:#e03131;--color-danger-hover:#c92a2a;--color-danger-subtle:#e0313114;--color-danger-text:#c92a2a;--color-success:#0d9488;--color-success-subtle:#0d948814;--color-success-text:#0f766e;--color-warning:#f08c00;--color-warning-subtle:#f59f0b1a;--color-warning-text:#e67700;--color-warning-border:#fde68a;--color-warning-on:#1a1b1e;--color-chart-secondary:#6c757d;--chart-origin-old:#1e293b;--chart-origin-recent:#5eead4;--chart-average-1:#4263eb;--chart-average-2:#f76707;--chart-average-3:#ae3ec9;--chart-average-4:#2f9e44;--chart-selected:#0b7285;--chart-series-1:#0d9488;--chart-series-2:#27406b;--chart-series-3:#d99a1e;--chart-series-4:#b8496f;--chart-series-5:#6f63d1;--chart-series-6:#64748b;--chart-series-7:#7d9d32;--chart-series-8:#d9682f;--color-type-categorical:#2f9e44;--color-type-categorical-subtle:#2f9e4424;--color-type-continuous:#4263eb;--color-type-continuous-subtle:#4263eb24;--color-node-output:#74c0fc;--pill-reserving:#6366f1;--pill-reserving-subtle:#6366f11a;--pill-pricing:#22c55e;--pill-pricing-subtle:#22c55e1a;--pill-transforms:#f59e0b;--pill-transforms-subtle:#f59e0b1a;--pill-scoring:#e03131;--pill-scoring-subtle:#e031311a;--color-navy:#0f1729;--color-navy-light:#1e293b;--color-navy-muted:#334155;--color-navy-subtle:#0f172914;--color-navy-line:#24314f;--color-navy-hover:#16223f;--color-navy-raise:#ffffff0f;--color-on-navy:#f1f5fb;--color-on-navy-muted:#93a1bd;--color-accent-bright:#14b8a6;--sidebar-width:240px;--sidebar-collapsed-width:52px;--sidebar-bg:#0f1729;--sidebar-text:#b0bec5;--sidebar-text-active:#fff;--sidebar-item-hover:#172038;--sidebar-item-active:#0d9488;--font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:"SF Mono", SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace;--text-3xs:.625rem;--text-2xs:.6875rem;--text-xs:.75rem;--text-label:.8125rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-doc-body:15px;--text-doc-h3:19px;--text-doc-h2:23px;--text-doc-title-narrow:28px;--text-doc-title:36px;--line-height:1.6;--line-height-tight:1.3;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--space-2xs:.125rem;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-full:9999px;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 2px 8px #00000014;--shadow-lg:0 4px 16px #0000001f;--shadow-xl:0 8px 32px #0000002e;--shadow-card:0 8px 30px #0000000f;--shadow-float:0 8px 30px #0000001f;--backdrop:#0f172973;--focus-ring:0 0 0 2px var(--color-accent-subtle);--duration-fast:.15s;--duration-normal:.25s;--ease-out:cubic-bezier(.16, 1, .3, 1);--z-dropdown:10;--z-sticky:20;--z-overlay:100;--z-modal:200;--z-toast:300}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#1a1b1e;--color-surface:#25262b;--color-surface-hover:#2c2e33;--color-surface-alt:#ffffff0a;--color-surface-raised:#2c2e33;--color-border:#373a40;--color-text:#e9ecef;--color-text-muted:#909296;--color-accent:#2dd4bf;--color-accent-hover:#14b8a6;--color-accent-text:#1a1b1e;--color-accent-tint:#2dd4bf0f;--color-accent-subtle:#2dd4bf26;--color-output-tab-wash:#3a3122;--color-output-tab-text:#e0b467;--color-accent-wash:#203634;--color-danger:#ff6b6b;--color-danger-hover:#fa5252;--color-danger-subtle:#ff6b6b1f;--color-danger-text:#ff8787;--color-success:#2dd4bf;--color-success-subtle:#2dd4bf1f;--color-success-text:#5eead4;--color-warning:#fcc419;--color-warning-subtle:#fcc41926;--color-warning-text:#ffd43b;--color-warning-border:#fcc4194d;--color-warning-on:#1a1b1e;--color-chart-secondary:#a8adb5;--chart-origin-old:#6b7a90;--chart-origin-recent:#63e6d4;--chart-selected:#3bc9db;--chart-average-1:#748ffc;--chart-average-2:#ff922b;--chart-average-3:#da77f2;--chart-average-4:#69db7c;--chart-series-1:#2dd4bf;--chart-series-2:#8fa9d9;--chart-series-3:#f2b84b;--chart-series-4:#e486a6;--chart-series-5:#a89cf0;--chart-series-6:#94a3b8;--chart-series-7:#a8c95e;--chart-series-8:#f09a6b;--color-type-categorical:#51cf66;--color-type-continuous:#748ffc;--pill-reserving:#818cf8;--pill-reserving-subtle:#818cf826;--pill-pricing:#4ade80;--pill-pricing-subtle:#4ade8026;--pill-transforms:#fbbf24;--pill-transforms-subtle:#fbbf2426;--pill-scoring:#ff6b6b;--pill-scoring-subtle:#ff6b6b26;--sidebar-bg:#1a1b1e;--sidebar-text:#c1c2c5;--sidebar-item-hover:#25262b;--shadow-sm:0 1px 2px #0003;--shadow-md:0 2px 8px #0000004d;--shadow-lg:0 4px 16px #0006;--shadow-xl:0 8px 32px #00000080;--shadow-card:0 8px 30px #00000040;--shadow-float:0 8px 30px #00000073}:root,[data-theme=light]{--annotation-teal:#075e54;--annotation-blue:#234c9a;--annotation-purple:#713a91;--annotation-amber:#805000;--annotation-red:#a02c36;--annotation-fill-teal:#eaf5f2;--annotation-fill-blue:#edf2fb;--annotation-fill-purple:#f5eef8;--annotation-fill-amber:#fcf4e4;--annotation-fill-red:#fbedef}[data-theme=dark]{--annotation-teal:#7cdece;--annotation-blue:#a5c5ff;--annotation-purple:#dbb4f4;--annotation-amber:#f0ce83;--annotation-red:#ffb0b7;--annotation-fill-teal:#213430;--annotation-fill-blue:#252f43;--annotation-fill-purple:#34293e;--annotation-fill-amber:#373022;--annotation-fill-red:#3b292e}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;accent-color:var(--color-accent);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}
