:root,:root[data-theme=night]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--app-bg:#07141e;--app-bg-elevated:#0f2331;--app-background:radial-gradient(circle at top left, #83d8cb29, transparent 26%), radial-gradient(circle at top right, #ffcb7d24, transparent 24%), linear-gradient(180deg, #102635 0%, var(--app-bg) 34%, #08111a 100%);--app-grid-line:#ffffff06;--surface-bg:#0a1b27db;--surface-bg-strong:#0e2230f0;--surface-bg-muted:#0c1c288f;--surface-bg-subtle:#0c1b268c;--surface-border:#7fb3c433;--surface-border-strong:#b7f2ea6b;--surface-border-muted:#96c6d624;--surface-overlay:#030a10b8;--surface-sheen:#ffffff0d;--panel-bg:var(--surface-bg);--panel-bg-strong:var(--surface-bg-strong);--panel-border:var(--surface-border);--panel-shadow:0 28px 60px #02070c61;--text-primary:#f6efe2;--text-secondary:#bfd0db;--text-muted:#86a0af;--accent:#83d8cb;--accent-strong:#b7f2ea;--accent-warm:#ffcb7d;--success:#93ddb0;--warning:#ffcb7d;--error:#ff8f7d;--error-bg:#4518136b;--error-text:#ffd8d1;--button-bg:linear-gradient(180deg, #204258eb, #122a39f2);--button-bg-hover:linear-gradient(180deg, #2b546ef5, #122f40f5);--button-bg-active:linear-gradient(180deg, #4c818af5, #1c454ff5);--button-border:#96c6d633;--button-shadow:0 14px 26px #02090e33;--button-shadow-hover:0 16px 32px #02090e42;--button-text-active:#f8fff9;--button-control-min-height:2.3rem;--button-control-padding-block:.62rem;--button-control-padding-inline:.9rem;--button-control-gap:.45rem;--button-control-font-size:.78rem;--button-control-line-height:1.2;--button-control-letter-spacing:.12em;--button-control-icon-size:.875rem;--field-bg:#06121bc7;--field-border:#96c6d629;--link-bg:#0f2331b8;--link-bg-hover:#132c3deb;--topbar-bg:#07141ed1;--sidebar-bg:linear-gradient(180deg, #0a1b27f5, #08151ff5), var(--surface-bg);--brand-bg:radial-gradient(circle at top left, #83d8cb29, transparent 36%), #0a1b27b8;--hero-bg:radial-gradient(circle at top right, #ffcb7d1f, transparent 28%), linear-gradient(135deg, #132d3df2, #081823e6), var(--surface-bg);--banner-bg:linear-gradient(135deg, #132d3df2, #081823e6), var(--surface-bg);--workspace-bg:linear-gradient(135deg, #132d3deb, #081823e0), var(--surface-bg);--callout-bg:linear-gradient(135deg, #ffcb7d1a, #83d8cb14);--notice-bg:#49311547;--status-bg:#102736bf;--badge-bg:#122938c2;--canvas-bg:radial-gradient(circle at top, #83d8cb14, transparent 35%), linear-gradient(180deg, #0f2331eb, #08151ff0);--canvas-grid:#7ac7d624;--canvas-control-bg:#0c1b26eb;--canvas-control-bg-hover:#122938fa;--canvas-palette-bg:#0d212deb;--node-bg:linear-gradient(180deg, #143140fa, #0b1f2bfa);--node-border:#83d8cb3d;--edge-stroke:#83d8cbb3;--edge-label-bg:#06121bd6;--handle-border:#0c1b26e0;--focus-ring:#b7f2eae6;--radius-xs:6px;--radius-sm:8px;--radius-md:10px;--radius-lg:12px;--radius-xl:14px;--radius-pill:999px;--display-font:"Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;--body-font:"Avenir Next", "Segoe UI", "Helvetica Neue", sans-serif;--mono-font:"SFMono-Regular", "SF Mono", "Menlo", "Consolas", monospace;font-family:var(--body-font);background:var(--app-background);color:var(--text-primary)}:root[data-theme=day]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--app-bg:#edf3f4;--app-bg-elevated:#f7fbfb;--app-background:radial-gradient(circle at top left, #167d7a1a, transparent 28%), radial-gradient(circle at top right, #9a5f1217, transparent 24%), linear-gradient(180deg, #f9fbfa 0%, var(--app-bg) 42%, #e4ecef 100%);--app-grid-line:#16414e0e;--surface-bg:#ffffffdb;--surface-bg-strong:#fffffff5;--surface-bg-muted:#eaf3f4d1;--surface-bg-subtle:#f1f7f8b8;--surface-border:#315b6838;--surface-border-strong:#167d7a61;--surface-border-muted:#315b6829;--surface-overlay:#12222957;--surface-sheen:#ffffff9e;--panel-shadow:0 22px 48px #21343b29;--text-primary:#17303b;--text-secondary:#50636c;--text-muted:#6f858d;--accent:#167d7a;--accent-strong:#0f6664;--accent-warm:#9a5f12;--success:#187044;--warning:#9a5f12;--error:#b34535;--error-bg:#b345351f;--error-text:#842f24;--button-bg:linear-gradient(180deg, #fffffff5, #e7eff1f5);--button-bg-hover:linear-gradient(180deg, #fff, #daedeefa);--button-bg-active:linear-gradient(180deg, #268f89eb, #126865f5);--button-border:#315b6838;--button-shadow:0 12px 22px #21343b1f;--button-shadow-hover:0 16px 30px #21343b29;--button-text-active:#f8fffd;--field-bg:#ffffffe0;--field-border:#315b6833;--link-bg:#f0f8f9e0;--link-bg-hover:#ddf1f1eb;--topbar-bg:#f8fcfcd1;--sidebar-bg:linear-gradient(180deg, #ffffffe6, #ecf5f6e6), var(--surface-bg);--brand-bg:radial-gradient(circle at top left, #167d7a1a, transparent 36%), #ffffffad;--hero-bg:radial-gradient(circle at top right, #9a5f121a, transparent 28%), linear-gradient(135deg, #fffffff5, #e9f3f4e6), var(--surface-bg);--banner-bg:linear-gradient(135deg, #fffffff5, #e9f3f4e6), var(--surface-bg);--workspace-bg:linear-gradient(135deg, #fffffff2, #e9f3f4e0), var(--surface-bg);--callout-bg:linear-gradient(135deg, #9a5f121a, #167d7a14);--notice-bg:#9a5f121a;--status-bg:#edf7f8c7;--badge-bg:#e7f2f3d1;--canvas-bg:radial-gradient(circle at top, #167d7a14, transparent 34%), linear-gradient(180deg, #f8fcfcf5, #e0ebeef0);--canvas-grid:#2a7a8838;--canvas-control-bg:#f8fcfcf0;--canvas-control-bg-hover:#e5f4f4fa;--canvas-palette-bg:#fffffff0;--node-bg:linear-gradient(180deg, #fffffffa, #ebf7f6fa);--node-border:#167d7a47;--edge-stroke:#167d7ab8;--edge-label-bg:#ffffffe6;--handle-border:#ffffffeb;--focus-ring:#167d7ac2}@media (prefers-color-scheme:light){:root:not([data-theme]){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--app-bg:#edf3f4;--app-bg-elevated:#f7fbfb;--app-background:radial-gradient(circle at top left, #167d7a1a, transparent 28%), radial-gradient(circle at top right, #9a5f1217, transparent 24%), linear-gradient(180deg, #f9fbfa 0%, var(--app-bg) 42%, #e4ecef 100%);--app-grid-line:#16414e0e;--surface-bg:#ffffffdb;--surface-bg-strong:#fffffff5;--surface-bg-muted:#eaf3f4d1;--surface-bg-subtle:#f1f7f8b8;--surface-border:#315b6838;--surface-border-strong:#167d7a61;--surface-border-muted:#315b6829;--surface-overlay:#12222957;--surface-sheen:#ffffff9e;--panel-shadow:0 22px 48px #21343b29;--text-primary:#17303b;--text-secondary:#50636c;--text-muted:#6f858d;--accent:#167d7a;--accent-strong:#0f6664;--accent-warm:#9a5f12;--success:#187044;--warning:#9a5f12;--error:#b34535;--error-bg:#b345351f;--error-text:#842f24;--button-bg:linear-gradient(180deg, #fffffff5, #e7eff1f5);--button-bg-hover:linear-gradient(180deg, #fff, #daedeefa);--button-bg-active:linear-gradient(180deg, #268f89eb, #126865f5);--button-border:#315b6838;--button-shadow:0 12px 22px #21343b1f;--button-shadow-hover:0 16px 30px #21343b29;--button-text-active:#f8fffd;--field-bg:#ffffffe0;--field-border:#315b6833;--link-bg:#f0f8f9e0;--link-bg-hover:#ddf1f1eb;--topbar-bg:#f8fcfcd1;--sidebar-bg:linear-gradient(180deg, #ffffffe6, #ecf5f6e6), var(--surface-bg);--brand-bg:radial-gradient(circle at top left, #167d7a1a, transparent 36%), #ffffffad;--hero-bg:radial-gradient(circle at top right, #9a5f121a, transparent 28%), linear-gradient(135deg, #fffffff5, #e9f3f4e6), var(--surface-bg);--banner-bg:linear-gradient(135deg, #fffffff5, #e9f3f4e6), var(--surface-bg);--workspace-bg:linear-gradient(135deg, #fffffff2, #e9f3f4e0), var(--surface-bg);--callout-bg:linear-gradient(135deg, #9a5f121a, #167d7a14);--notice-bg:#9a5f121a;--status-bg:#edf7f8c7;--badge-bg:#e7f2f3d1;--canvas-bg:radial-gradient(circle at top, #167d7a14, transparent 34%), linear-gradient(180deg, #f8fcfcf5, #e0ebeef0);--canvas-grid:#2a7a8838;--canvas-control-bg:#f8fcfcf0;--canvas-control-bg-hover:#e5f4f4fa;--canvas-palette-bg:#fffffff0;--node-bg:linear-gradient(180deg, #fffffffa, #ebf7f6fa);--node-border:#167d7a47;--edge-stroke:#167d7ab8;--edge-label-bg:#ffffffe6;--handle-border:#ffffffeb;--focus-ring:#167d7ac2}}:root[data-theme=heon]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--app-bg:#fff;--app-bg-elevated:#fafafa;--app-background:#fff;--app-grid-line:#0000000f;--surface-bg:#fff;--surface-bg-strong:#fff;--surface-bg-muted:#f5f5f5;--surface-bg-subtle:#fafafa;--surface-border:#ededed;--surface-border-strong:#e5e5e5;--surface-border-muted:#f0f0f0;--surface-overlay:#11111173;--surface-sheen:#fff9;--panel-bg:var(--surface-bg);--panel-bg-strong:var(--surface-bg-strong);--panel-border:var(--surface-border);--panel-shadow:0 1px 2px 0 #0000000d;--text-primary:#212121;--text-secondary:#4d4d4d;--text-muted:#999;--accent:#292b66;--accent-strong:#1a1b41;--accent-warm:#9feb01;--success:#3db871;--warning:#e6b31a;--error:#ef4444;--error-bg:#fcdada;--error-text:#dc2626;--button-bg:#fff;--button-bg-hover:#f5f5f5;--button-bg-active:var(--accent);--button-border:#ededed;--button-shadow:0 1px 2px 0 #0000000d;--button-shadow-hover:0 2px 4px 0 #00000014;--button-text-active:#fff;--link-bg:transparent;--link-bg-hover:#f5f5f5;--button-control-min-height:2.5rem;--button-control-padding-block:.5rem;--button-control-padding-inline:1rem;--button-control-gap:.5rem;--button-control-font-size:.875rem;--button-control-line-height:1.25;--button-control-letter-spacing:0;--button-control-icon-size:1rem;--field-bg:#fff;--field-border:#e5e5e5;--focus-ring:#9feb01;--syntax-comment:#767676;--syntax-meta:#5f6368;--syntax-keyword:#292b66;--syntax-property:#3730a3;--syntax-property-font-weight:700;--syntax-atom:#187044;--syntax-number:#8a5a00;--syntax-string:#9d174d;--syntax-literal:#6d28d9;--syntax-punctuation:#6b7280;--syntax-invalid:#dc2626;--topbar-bg:#fafafa;--sidebar-bg:#fff;--brand-bg:#fafafa;--hero-bg:#fff;--banner-bg:#fff;--workspace-bg:#fff;--callout-bg:#f5f5f5;--notice-bg:#fffbeb;--status-bg:#f5f5f5;--badge-bg:#f5f5f5;--canvas-bg:#fafafa;--canvas-grid:#9feb012e;--canvas-control-bg:#fff;--canvas-control-bg-hover:#f5f5f5;--canvas-palette-bg:#fff;--node-bg:#fff;--node-border:#ededed;--edge-stroke:#292b66b3;--edge-label-bg:#fff;--handle-border:#fff;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-pill:999px;--display-font:"Geist", "Inter", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--body-font:"Geist", "Inter", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mono-font:"Geist Mono", "SFMono-Regular", "SF Mono", "Menlo", "Consolas", monospace;font-family:var(--body-font);background:var(--app-background);color:var(--text-primary)}.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:#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:#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}.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-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}*{box-sizing:border-box}html{background:var(--app-bg)}body{min-height:100vh;color:var(--text-primary);background:0 0;margin:0;overflow-x:hidden}body:before{content:"";background:linear-gradient(90deg, var(--app-grid-line) 0, var(--app-grid-line) 1px, transparent 1px, transparent 96px), linear-gradient(var(--app-grid-line) 0, var(--app-grid-line) 1px, transparent 1px, transparent 96px);opacity:.25;pointer-events:none;position:fixed;inset:0}#root{min-height:100vh}a{color:inherit}h1,h2,h3,h4,h5,h6{font-family:var(--display-font);letter-spacing:.01em;margin:0;font-weight:600}p{margin:0}button,input,select,textarea{font:inherit}button{min-height:var(--button-control-min-height);justify-content:center;align-items:center;gap:var(--button-control-gap);padding:var(--button-control-padding-block) var(--button-control-padding-inline);cursor:pointer;border-radius:var(--radius-lg);border:1px solid var(--button-border);background:var(--button-bg);color:var(--text-primary);font-family:var(--mono-font);font-size:var(--button-control-font-size);line-height:var(--button-control-line-height);letter-spacing:var(--button-control-letter-spacing);text-transform:uppercase;box-shadow:var(--button-shadow);margin:0;transition:transform .16s,border-color .16s,background .16s,box-shadow .16s;display:inline-flex}button:hover:not(:disabled){border-color:var(--surface-border-strong);background:var(--button-bg-hover);box-shadow:var(--button-shadow-hover);transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.6}button svg,.primary-link svg,.secondary-link svg{width:var(--button-control-icon-size);height:var(--button-control-icon-size);flex:none}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}select{appearance:none}textarea{resize:vertical;min-height:5rem;line-height:1.45}.page-eyebrow,.panel-kicker,.status-pill,.badge,.panel-note,.metric-card__label,.canvas-node__port-row,.palette-item__type{font-family:var(--mono-font);letter-spacing:.16em;text-transform:uppercase;font-size:.76rem}.page-eyebrow{color:var(--accent-warm)}.primary-link,.secondary-link,.text-link{justify-content:center;align-items:center;gap:var(--button-control-gap);border-radius:var(--radius-lg);border:1px solid var(--button-border);text-decoration:none;transition:transform .16s,border-color .16s,background .16s;display:inline-flex}.primary-link,.secondary-link{min-height:var(--button-control-min-height);padding:var(--button-control-padding-block) var(--button-control-padding-inline);background:var(--link-bg);font-family:var(--mono-font);font-size:var(--button-control-font-size);line-height:var(--button-control-line-height);letter-spacing:var(--button-control-letter-spacing);text-transform:uppercase}.primary-link{color:var(--accent-strong)}.secondary-link{color:var(--text-primary)}.text-link{min-height:auto;color:var(--accent-strong);background:0 0;border:0;padding:0}.primary-link:hover,.secondary-link:hover,.text-link:hover{border-color:var(--surface-border-strong);background:var(--link-bg-hover);transform:translateY(-1px)}.text-link:hover{background:0 0}.link-button{min-height:var(--button-control-min-height);padding:var(--button-control-padding-block) var(--button-control-padding-inline);box-shadow:none;color:var(--accent-strong);font-family:var(--mono-font);font-size:var(--button-control-font-size);line-height:var(--button-control-line-height);letter-spacing:var(--button-control-letter-spacing);text-transform:uppercase;background:0 0;border:0}.link-button:hover:not(:disabled){box-shadow:none;background:0 0;transform:none}.route-card,.editor-screen{padding:1.5rem clamp(1.2rem,2vw,2rem) 2rem}.route-card{border:1px solid var(--panel-border);border-radius:var(--radius-xl);background:var(--panel-bg);max-width:54rem;box-shadow:var(--panel-shadow);gap:.85rem;margin:2rem auto;padding:1.6rem;display:grid}.route-card--error{color:var(--error)}.route-card--narrow{max-width:34rem}.inline-actions,.tag-row{flex-wrap:wrap;gap:.75rem;display:flex}.status-pill{border-radius:var(--radius-lg);border:1px solid var(--surface-border-muted);background:var(--status-bg);align-items:center;gap:.45rem;padding:.46rem .78rem;display:inline-flex}.status-pill--success{color:var(--success);border-color:#93ddb042}.status-pill--warning{color:var(--warning);border-color:#ffcb7d47}.status-pill--error{color:var(--error);border-color:#ff8f7d4d}.status-pill--neutral{color:var(--accent-strong)}.badge{border-radius:var(--radius-lg);border:1px solid var(--surface-border-muted);background:var(--badge-bg);color:var(--accent-strong);align-items:center;padding:.28rem .58rem;display:inline-flex}.field-block,.io-buttons{gap:.5rem;display:grid}.field-block>span{color:var(--text-secondary);font-size:.87rem}.field-block input:not([type=checkbox]),.field-block select,.field-block textarea,.panel-header input,.inpector-header input,.predicate-row input,.predicate-row textarea{border-radius:var(--radius-md);border:1px solid var(--field-border);background:var(--field-bg);width:100%;color:var(--text-primary);padding:.72rem .82rem}.field-block input[type=checkbox]{width:1.1rem;height:1.1rem;accent-color:var(--accent);margin:0}.code-field{font-family:var(--mono-font);font-size:.84rem}.panel-callout{border-radius:var(--radius-lg);background:var(--callout-bg);border:1px solid #ffcb7d24;gap:.35rem;padding:.95rem 1rem;display:grid}.panel-callout strong{font-family:var(--mono-font);letter-spacing:.1em;text-transform:uppercase;font-size:.76rem}.panel-callout span,.panel-empty,.error-text{color:var(--text-secondary)}.panel-empty{border:1px dashed var(--surface-border);border-radius:var(--radius-lg);background:var(--surface-bg-subtle);padding:1rem}.error-text{border-radius:var(--radius-lg);background:var(--error-bg);color:var(--error-text);border:1px solid #ff8f7d3d;padding:.85rem .95rem}.plain-list,.io-buttons{margin:0;padding:0;list-style:none}.io-buttons--grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width<=800px){.route-card{margin-inline:1rem}.io-buttons--grid{grid-template-columns:1fr}}.public-shell{grid-template-columns:minmax(18rem,26rem) minmax(0,1fr);min-height:100vh;display:grid}.public-shell__brand,.public-shell__content{padding:clamp(1.5rem,4vw,3rem)}.public-shell__brand{border-right:1px solid var(--surface-border-muted);background:var(--brand-bg);align-content:end;gap:1rem;display:grid}.public-shell__brand p{color:var(--text-secondary)}.public-shell__content{align-content:center;display:grid}.auth-shell{grid-template-columns:minmax(18rem,20rem) minmax(0,1fr);min-height:100vh;display:grid;overflow-x:hidden}.auth-sidebar{border-right:1px solid var(--surface-border-muted);background:var(--sidebar-bg);align-content:start;gap:1.5rem;height:100vh;padding:1.5rem;display:grid;position:sticky;top:0}.auth-sidebar__brand{gap:.65rem;display:grid}.auth-sidebar__brand p:last-child{color:var(--text-secondary)}.app-nav{gap:.75rem;display:grid}.app-nav__link{border:1px solid var(--surface-border-muted);border-radius:var(--radius-lg);background:var(--surface-bg-muted);gap:.25rem;padding:.95rem 1rem;text-decoration:none;transition:transform .16s,border-color .16s,background .16s;display:grid}.app-nav__link span{color:var(--text-secondary);font-size:.92rem}.app-nav__link:hover,.app-nav__link--active{border-color:var(--surface-border-strong);background:var(--link-bg-hover);transform:translateY(-1px)}.auth-main{grid-template-rows:auto 1fr;min-width:0;display:grid}.auth-topbar{z-index:20;border-bottom:1px solid var(--surface-border-muted);background:var(--topbar-bg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.4rem clamp(1.2rem,2vw,2rem);display:flex;position:sticky;top:0}.auth-topbar__copy,.auth-topbar__meta{gap:.55rem;display:grid}.auth-topbar__copy p,.breadcrumbs{color:var(--text-secondary)}.breadcrumbs ol{font-family:var(--mono-font);letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:.55rem;margin:0;padding:0;font-size:.78rem;list-style:none;display:flex}.breadcrumbs li{align-items:center;gap:.55rem;display:inline-flex}.breadcrumbs li+li:before{content:"";opacity:.62;border-top:1px solid;border-right:1px solid;width:.38rem;height:.38rem;transform:rotate(45deg)}.breadcrumbs a{text-decoration:none}.breadcrumbs a:hover{color:var(--accent-strong)}.auth-topbar__meta{flex-wrap:wrap;place-content:start flex-end;align-items:center;gap:.75rem;display:flex}.theme-selector{align-items:center;gap:.5rem;display:inline-flex}.theme-selector__label{color:var(--text-secondary);font-family:var(--mono-font);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem}.theme-selector select{min-height:var(--button-control-min-height);border-radius:var(--radius-pill);border:1px solid var(--field-border);background:var(--field-bg);color:var(--text-primary);padding:var(--button-control-padding-block) 2rem var(--button-control-padding-block) var(--button-control-padding-inline)}.profile-menu{width:min(100%,14rem);position:relative}.profile-menu__trigger{width:100%;min-height:var(--button-control-min-height);align-items:center;gap:var(--button-control-gap);padding:var(--button-control-padding-block) var(--button-control-padding-inline);border-radius:var(--radius-lg);letter-spacing:0;text-align:left;text-transform:none;grid-template-columns:2rem minmax(0,1fr) .7rem;font-family:inherit;display:grid}.profile-menu__trigger:after{content:"";opacity:.72;border-bottom:1.5px solid;border-right:1.5px solid;width:.45rem;height:.45rem;transition:transform .16s;transform:rotate(45deg)translateY(-1px)}.profile-menu__trigger[aria-expanded=true]:after{transform:rotate(225deg)translate(-2px,-1px)}.profile-menu__avatar{border:1px solid var(--surface-border-strong);background:var(--status-bg);width:2rem;height:2rem;color:var(--accent-strong);font-family:var(--mono-font);border-radius:50%;place-items:center;font-size:.78rem;font-weight:700;display:grid}.profile-menu__identity{min-width:0;display:grid}.profile-menu__trigger-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:650;overflow:hidden}.profile-menu__identity span:last-child{color:var(--text-secondary);font-size:var(--button-control-font-size)}.profile-menu__popover{z-index:30;border:1px solid var(--panel-border);border-radius:var(--radius-lg);background:var(--panel-bg-strong);width:min(18rem,100vw - 2.4rem);box-shadow:var(--panel-shadow);gap:.65rem;padding:.75rem;display:grid;position:absolute;top:calc(100% + .5rem);right:0}.profile-menu__identity{gap:.45rem;padding:.35rem}.profile-menu__identity .status-pill{width:fit-content}.profile-menu__item{text-align:left;width:100%}.auth-content{min-width:0}.workspace-shell{gap:1rem;display:grid}.workspace-shell__content{min-width:0}@media (width<=1100px){.public-shell,.auth-shell{grid-template-columns:1fr}.public-shell__brand{border-right:0;border-bottom:1px solid var(--surface-border-muted)}.auth-sidebar{border-right:0;border-bottom:1px solid var(--surface-border-muted);height:auto;position:static}}@media (width<=800px){.auth-topbar{flex-direction:column;align-items:stretch}.auth-topbar__meta{justify-content:flex-start}.theme-selector{flex:13rem}.profile-menu{flex:14rem}.theme-selector select{flex:1;min-width:0}}.page-stack{gap:1rem;display:grid}.hero-panel,.content-panel,.metric-card,.process-card{border:1px solid var(--panel-border);border-radius:var(--radius-xl);background:var(--panel-bg);box-shadow:var(--panel-shadow)}.hero-panel,.content-panel{padding:1.35rem}.hero-panel{background:var(--hero-bg);gap:1rem;display:grid}.hero-panel p:last-child,.content-panel p,.process-card p,.metric-card p{color:var(--text-secondary)}.metric-grid,.detail-grid,.persona-grid{gap:1rem;display:grid}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-card{gap:.45rem;padding:1rem;display:grid}.metric-card strong{font-family:var(--display-font);font-size:2rem}.section-heading{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.process-grid{gap:1rem;display:grid}.process-form{gap:1rem;max-width:48rem;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.process-card{gap:.85rem;padding:1.1rem;display:grid}.process-card__header,.process-meta,.detail-list{gap:.65rem;display:grid}.process-card__header{grid-template-columns:minmax(0,1fr) auto;align-items:start}.process-meta,.detail-list{color:var(--text-secondary);font-size:.92rem}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-list>div{border-top:1px solid var(--surface-border-muted);gap:.2rem;padding-top:.75rem;display:grid}.persona-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.persona-button{letter-spacing:0;text-align:left;text-transform:none;gap:.35rem;font-family:inherit;display:grid}.persona-button span{color:var(--text-secondary)}@media (width<=1000px){.metric-grid,.detail-grid,.form-grid,.persona-grid{grid-template-columns:1fr}}@media (width<=700px){.section-heading,.process-card__header{grid-template-columns:1fr}}.editor-screen{--workbench-editor-surface-height:780px;gap:1rem;display:grid}.editor-workbench-surface{gap:1rem;display:grid}.editor-banner{border:1px solid var(--panel-border);border-radius:var(--radius-xl);background:var(--banner-bg);box-shadow:var(--panel-shadow);grid-template-columns:minmax(0,1.4fr) minmax(18rem,24rem);gap:1rem;padding:1.35rem;display:grid;position:relative;overflow:hidden}.editor-banner:before{content:"";pointer-events:none;background:radial-gradient(circle at 15% 20%,#83d8cb29,#0000 32%),radial-gradient(circle at 85% 15%,#ffcb7d24,#0000 24%);position:absolute;inset:0}.editor-banner>*{z-index:1;position:relative}.editor-banner__copy{align-content:start;gap:.85rem;display:grid}.editor-banner h2{font-size:clamp(2rem,3vw,2.85rem)}.editor-banner__description,.panel-caption,.panel-note,.editor-banner__meta,.palette-item__capability,.canvas-node__header span,.diagnostic span{color:var(--text-secondary)}.editor-banner__status-row,.editor-banner__meta{flex-wrap:wrap;gap:.65rem;display:flex}.editor-banner__meta{font-size:.92rem}.editor-banner__actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.editor-banner__notice{border-radius:var(--radius-lg);background:var(--notice-bg);border:1px solid #ffcb7d47;gap:.45rem;padding:.9rem 1rem;display:grid}.editor-banner__notice strong{color:var(--warning)}.editor-banner__notice ul{color:var(--text-secondary);margin:0;padding-left:1.1rem}.editor-banner__notice li+li{margin-top:.2rem}.editor-banner__notice span{color:var(--text-secondary);font-size:.9rem}.editor-banner__save-error{color:var(--error)}.editor-banner__stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.editor-stat{border:1px solid var(--surface-border-muted);border-radius:var(--radius-lg);background:var(--surface-bg-muted);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);gap:.35rem;padding:1rem;display:grid}.editor-stat__value{font-family:var(--display-font);font-size:2rem;line-height:1}.editor-stat__hint{color:var(--text-muted);font-size:.84rem}.editor-grid{grid-template-columns:minmax(0,1fr) minmax(19rem,25rem);align-items:start;gap:1rem;display:grid}.editor-surface-stack{flex-direction:column;gap:1rem;min-width:0;display:flex}.panel{--inspector-group-bg:var(--panel-bg);--panel-header-bg:var(--inspector-group-bg);border:1px solid var(--panel-border);border-radius:var(--radius-xl);background:var(--panel-bg);min-height:0;box-shadow:var(--panel-shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:1.1rem;position:relative}.panel:before{content:"";border-radius:inherit;background:linear-gradient(180deg, var(--surface-sheen), transparent 22%);pointer-events:none;position:absolute;inset:0}.panel>*{z-index:1;position:relative}.panel--canvas{grid-area:1/1}.panel--validation{grid-area:1/2}.panel--canvas,.panel--palette,.panel--inspector,.panel--yaml,.panel--validation{gap:.95rem;display:grid}.panel--palette{background:var(--inspector-group-bg)}.editor-mode-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.editor-mode-switch{border:1px solid var(--surface-border-muted);border-radius:var(--radius-lg);background:var(--surface-bg-subtle);grid-template-columns:repeat(2,minmax(0,1fr));min-width:min(100%,14rem);padding:.18rem;display:inline-grid}.editor-mode-switch button{justify-content:center;align-items:center;gap:var(--button-control-gap);min-width:0;padding:var(--button-control-padding-block) var(--button-control-padding-inline);border-radius:var(--radius-md);color:var(--text-secondary);background:0 0;border:0;display:inline-flex}.editor-mode-switch button.is-active,.editor-mode-switch button[aria-pressed=true]{background:var(--button-bg-active);color:var(--button-text-active)}.topology-yaml-editor{height:var(--workbench-yaml-panel-height,var(--workbench-editor-surface-height));grid-template-rows:minmax(0,1fr);padding:0;overflow:hidden}.topology-yaml-editor>div{height:100%;min-height:0}.topology-yaml-editor .cm-editor{background:var(--field-bg);height:100%;min-height:0;color:var(--text-primary);font-family:var(--mono-font)}.topology-yaml-editor .cm-editor.cm-focused{outline:2px solid var(--focus-ring);outline-offset:-2px}.topology-yaml-editor .cm-scroller{background:var(--field-bg);color:var(--text-primary);font-family:var(--mono-font);font-size:.86rem;line-height:1.55;overflow:auto}.topology-yaml-editor .cm-content{caret-color:var(--accent-strong);color:var(--text-primary)}.topology-yaml-editor .cm-gutters{border-right:1px solid var(--field-border);background:var(--surface-bg-subtle);color:var(--text-secondary)}.topology-yaml-editor .cm-gutterElement{color:var(--text-secondary)}.topology-yaml-editor .cm-activeLine{background:var(--surface-bg-muted)}.topology-yaml-editor .cm-activeLineGutter{background:var(--surface-bg-muted);color:var(--text-primary)}.topology-yaml-editor .cm-cursor{border-left-color:var(--accent-strong)}.topology-yaml-editor .cm-selectionBackground,.topology-yaml-editor .cm-focused .cm-selectionBackground{background:color-mix(in srgb, var(--accent) 34%, transparent)}.topology-yaml-editor .cm-content ::selection{background:color-mix(in srgb, var(--accent) 34%, transparent)}.topology-yaml-strip{border-radius:var(--radius-lg);background:var(--notice-bg);border:1px solid #ffcb7d47;gap:.75rem;padding:.9rem 1rem;display:grid}.topology-yaml-strip--error{background:var(--error-bg);border-color:#ff8f7d47}.topology-yaml-strip__copy{gap:.25rem;display:grid}.topology-yaml-strip__copy strong{color:var(--warning)}.topology-yaml-strip--error .topology-yaml-strip__copy strong{color:var(--error)}.topology-yaml-strip__copy span,.topology-yaml-issues p{color:var(--text-secondary)}.topology-yaml-strip__actions{flex-wrap:wrap;gap:.55rem;display:flex}.topology-yaml-issues{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.topology-yaml-issues li{border:1px solid var(--surface-border-muted);border-radius:var(--radius-md);background:var(--surface-bg-subtle);gap:.15rem;padding:.65rem .75rem;display:grid}.topology-yaml-issues span{color:var(--text-muted);font-family:var(--mono-font);font-size:.75rem}.topology-yaml-issues p{margin:0}.panel-header{z-index:3;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;justify-content:space-between;align-items:flex-start;gap:.9rem;margin-bottom:10px;display:flex;position:sticky;top:0}.inpector-header{z-index:3;background:var(--panel-header-bg);-webkit-backdrop-filter:none;backdrop-filter:none;justify-content:space-between;align-items:flex-start;gap:.9rem;margin-bottom:10px;display:flex;position:sticky;top:0}.panel-header__actions{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:.55rem;display:flex}.topology-node-icon{width:1.25rem;height:1.25rem;color:var(--accent-strong);flex:0 0 1.25rem;justify-content:center;align-items:center;display:inline-flex}.inpector-header .topology-node-icon{flex-basis:33px;width:33px;height:33px}.inpector-header .topology-node-icon svg{width:33px;height:33px}.canvas-node__title,.inspector-title-row,.palette-item__title{align-items:flex-start;gap:.45rem;min-width:0;display:inline-flex}.canvas-node__title strong,.inspector-title-row h2,.palette-item__title strong{overflow-wrap:anywhere;min-width:0}.panel-header--stacked input{max-width:14rem}.panel-caption{margin-top:.25rem;font-size:.92rem}.button-chip{justify-content:center;align-items:center;gap:var(--button-control-gap);min-height:var(--button-control-min-height);padding:var(--button-control-padding-block) var(--button-control-padding-inline);border-radius:var(--radius-lg);font-family:var(--mono-font);font-size:var(--button-control-font-size);line-height:var(--button-control-line-height);letter-spacing:var(--button-control-letter-spacing);text-transform:uppercase;display:inline-flex}.button-chip--active,.button-chip[aria-pressed=true]{border-color:var(--surface-border-strong);background:var(--button-bg-active);color:var(--button-text-active)}.topology-scope-breadcrumb{border:1px solid var(--surface-border-muted);border-radius:var(--radius-md);background:var(--surface-bg-subtle);min-width:0;color:var(--text-secondary);padding:.55rem .7rem;overflow-x:auto}.topology-scope-breadcrumb ol{flex-wrap:wrap;align-items:center;gap:.42rem;margin:0;padding:0;list-style:none;display:flex}.topology-scope-breadcrumb li{align-items:center;gap:.42rem;min-width:0;display:inline-flex}.topology-scope-breadcrumb li+li:before{content:"";opacity:.58;border-top:1px solid;border-right:1px solid;flex:none;width:.34rem;height:.34rem;transform:rotate(45deg)}.topology-scope-breadcrumb__button,.topology-scope-breadcrumb__current{max-width:min(18rem,100%);font-family:var(--mono-font);font-size:var(--button-control-font-size);letter-spacing:var(--button-control-letter-spacing);line-height:var(--button-control-line-height);text-align:left;text-transform:uppercase;overflow-wrap:anywhere}.topology-scope-breadcrumb__button{padding:var(--button-control-padding-block) var(--button-control-padding-inline);border-radius:var(--radius-md);color:inherit;background:0 0;border:0}.topology-scope-breadcrumb__button:hover{background:var(--button-bg-hover);color:var(--accent-strong)}.topology-scope-breadcrumb__current{color:var(--text-primary)}.palette-groups,.validation-list,.canvas-actions,.validation-filters{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.palette-group,.frame-card,.diagnostic,.inspector-group{gap:.75rem;display:grid}.palette-group,.frame-card,.diagnostic button,.plain-list li{border:1px solid var(--surface-border-muted);border-radius:var(--radius-lg);background:var(--surface-bg-muted);padding:.9rem}.palette-group__header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.palette-pending-source{border:1px solid var(--surface-border-muted);border-radius:var(--radius-lg);background:var(--surface-bg-subtle);overflow-wrap:anywhere;gap:.3rem;padding:.75rem .85rem;display:grid}.palette-pending-source span{color:var(--text-secondary);font-family:var(--mono-font);text-transform:uppercase;font-size:.78rem}.palette-pending-source strong{min-width:0;font-family:var(--mono-font);line-height:1.35}.palette-item,.diagnostic button{border-radius:var(--radius-lg);letter-spacing:0;text-align:left;text-transform:none;justify-content:stretch;place-items:start;gap:.35rem;width:100%;font-family:inherit;display:grid}.palette-item__capability,.palette-item__type{display:block}.palette-item__title{align-items:center;width:100%}.palette-item__title strong{font-size:20px;line-height:20px}.palette-item__type{font-size:var(--button-control-font-size)}.canvas-host{height:var(--workbench-editor-surface-height);border:1px solid var(--field-border);border-radius:var(--radius-xl);background:var(--canvas-bg);position:relative;overflow:hidden}.canvas-palette-trigger{z-index:5;justify-content:center;align-items:center;gap:var(--button-control-gap);min-height:var(--button-control-min-height);padding:var(--button-control-padding-block) var(--button-control-padding-inline);border-radius:var(--radius-lg);background:var(--canvas-palette-bg);display:inline-flex;position:absolute;top:1rem;left:1rem;box-shadow:0 16px 32px #03080e47}.canvas-node{border-radius:var(--radius-lg);border:1px solid var(--node-border);background:var(--node-bg);min-width:230px;color:var(--text-primary);padding:.95rem 1rem;box-shadow:0 14px 30px #03080e42}.canvas-node--selected{box-shadow:0 0 0 2px var(--focus-ring), 0 18px 36px #03080e4d}.canvas-node--error{border-color:#ff8f7d8f}.canvas-node--warning{border-color:#ffcb7d8f}.canvas-node--incomplete{border-style:dashed}.canvas-node__header,.canvas-node__meta,.canvas-node__ports,.predicate-row,.validation-filters,.canvas-actions,.canvas-actions__group{gap:.5rem;display:grid}.canvas-node__header{margin-bottom:5px}.canvas-node__header strong{font-size:1.02rem}.canvas-node__meta{flex-wrap:wrap;display:flex}.canvas-node__nexus-summary{gap:.42rem;display:grid}.canvas-node__nexus-row{color:var(--text-secondary);align-items:center;gap:.45rem;padding-left:10px;font-size:.88rem;line-height:1.25;display:flex}.canvas-node__nexus-row svg{color:var(--accent-strong);flex:none}.canvas-node__nexus-row span{white-space:nowrap;min-width:0}.canvas-node__nexus-chip{justify-self:start;font-size:.7rem}.canvas-node__port-row{color:var(--text-secondary);justify-content:space-between;align-items:center;padding-top:5px;padding-right:1rem;display:flex;position:relative}.inspector-group{border-top:1px solid var(--surface-border-muted);background:var(--inspector-group-bg);padding-top:.85rem}.panel--inspector>.inspector-group{border-top:0;padding-top:0}.panel--inspector>.inspector-group~.inspector-group{border-top:1px solid var(--surface-border-muted);padding-top:.85rem}.inspector-group h3,.inspector-group h4,.inspector-group h5{font-size:1rem}.inspector-group__header{gap:.35rem;display:grid}.inspector-group__header p{color:var(--text-secondary)}.inspector-tabs{border-bottom:1px solid var(--surface-border-muted);flex-wrap:wrap;gap:.35rem;display:flex}.inspector-tabs button{border-bottom-right-radius:0;border-bottom-left-radius:0}.inspector-tabs button[aria-selected=true]{border-color:var(--accent);background:var(--accent-muted);color:var(--text-primary)}.inspector-tab-panel{gap:.85rem;display:grid}.inspector-tab-panel[hidden]{display:none}.attribute-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem 1rem;margin:0;display:grid}.attribute-list div{gap:.25rem;display:grid}.attribute-list dt,.config-field__description,.inspector-muted{color:var(--text-secondary);font-size:.84rem}.attribute-list dd{overflow-wrap:anywhere;margin:0}@media (width<=640px){.attribute-list{grid-template-columns:1fr}}.config-object-fields,.config-array-list,.config-json-field,.config-target-field{gap:.85rem;display:grid}.config-field{min-width:0}.config-fieldset{border:1px solid var(--surface-border-muted);border-radius:var(--radius-md);gap:.75rem;min-width:0;margin:0;padding:.85rem;display:grid}.config-fieldset legend,.config-array-field h4,.config-target-field legend{color:var(--text-primary);padding:0;font-size:.92rem;font-weight:700}.config-target-field{border:0;min-width:0;margin:0;padding:0}.config-target-mode{grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem;margin-top:5px;display:grid}.config-target-mode__option{border-color:var(--surface-border-muted);background:var(--surface-bg-subtle);min-width:0;min-height:2.25rem;color:var(--text-secondary);text-align:center;white-space:normal;padding:.5rem .65rem;font-weight:700}.config-target-mode__option[aria-pressed=true]{border-color:var(--accent);background:var(--accent-muted);color:var(--text-primary)}.config-target-options{gap:.55rem;max-height:15rem;padding-right:.15rem;display:grid;overflow-y:auto}.config-target-option{border-color:var(--surface-border-muted);background:var(--surface-bg-subtle);width:100%;min-height:2.75rem;color:var(--text-primary);text-align:left;white-space:normal;overflow-wrap:anywhere;justify-items:start;gap:.2rem;padding:.65rem .75rem;display:grid}.config-target-option[aria-pressed=true]{border-color:var(--accent);background:var(--accent-muted);color:var(--text-primary)}.config-target-option--unknown{border-style:dashed}.config-target-option__label{min-width:0;font-weight:700;line-height:1.25}.config-target-option__value{min-width:0;color:var(--text-secondary);font-size:.9rem;line-height:1.25}.config-array-field{gap:.85rem;display:grid}.config-array-field__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.config-array-list__row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.5rem;display:grid}.nexus-section,.nexus-ordered-list,.nexus-item-card,.nexus-assembly-fields,.nexus-type-fields{gap:.85rem;display:grid}.nexus-section__header,.nexus-item-card__header,.nexus-item-card__actions,.nexus-toggle{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.nexus-section__header,.nexus-item-card__header{justify-content:space-between}.nexus-section__header h3,.nexus-section__header h4{margin:0}.nexus-ordered-list{margin:0;padding:0;list-style:none}.nexus-item-card__header strong,.nexus-item-card__header span{display:block}.nexus-item-card__header span{color:var(--text-secondary);font-size:.84rem}.nexus-toggle{color:var(--text-secondary);font-size:.87rem}.nexus-toggle input{width:1.1rem;height:1.1rem;accent-color:var(--accent);margin:0}.predicate-card__preview{color:var(--text-secondary);overflow-wrap:anywhere;margin:.25rem 0 0;font-size:.84rem}.predicate-card__controls{gap:.85rem;min-width:0;display:grid}.json-draft-field{gap:.55rem;display:grid}.json-draft-field__actions{flex-wrap:wrap;gap:.5rem;display:flex}.json-draft-field__error{color:var(--error);margin:0;font-size:.84rem}.category-list{gap:.85rem;display:grid}.category-card{gap:.85rem}.category-card__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.category-card__header button{padding-inline:var(--button-control-padding-inline)}.category-card__description{min-height:8.5rem}.frame-card{background:var(--surface-bg-subtle)}.predicate-row{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr))}.plain-list li{gap:.55rem;display:grid}.plain-list li.receptor-source-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.receptor-source-row__name{min-width:0;color:var(--text-primary);font-family:var(--mono-font);overflow-wrap:anywhere;font-size:.88rem}.receptor-source-row button{flex:none}.canvas-actions,.validation-filters{flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;display:flex}.canvas-actions{gap:.6rem}.canvas-actions__group,.validation-filters{flex-wrap:wrap;gap:.5rem;display:flex}.diagnostic button{border-radius:var(--radius-lg)}.diagnostic--error button{border-color:#ff8f7d6b}.diagnostic--warning button{border-color:#ffcb7d6b}.edge-details{gap:.75rem;margin:0;display:grid}.edge-details div{border:1px solid var(--surface-border-muted);border-radius:var(--radius-md);background:var(--surface-bg-subtle);gap:.25rem;padding:.75rem;display:grid}.edge-details dt{color:var(--text-muted);font-family:var(--mono-font);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem}.edge-details dd{overflow-wrap:anywhere;margin:0}.workbench-popup-overlay{z-index:100;background:var(--surface-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);place-items:center;padding:clamp(.75rem,3vw,2rem);display:grid;position:fixed;inset:0}.workbench-popup-dialog{border:1px solid var(--surface-border);border-radius:var(--radius-xl);background:var(--panel-bg-strong);width:min(100%,48rem);max-height:min(88vh,58rem);box-shadow:var(--panel-shadow);grid-template-rows:auto minmax(0,1fr);display:grid;overflow:hidden}.workbench-popup-dialog--palette{width:min(100%,44rem)}.workbench-popup-dialog--headerless{grid-template-rows:minmax(0,1fr)}.workbench-popup-header{border-bottom:1px solid var(--surface-border-muted);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.1rem;display:flex}.workbench-popup-header h2{font-size:1.2rem}.workbench-popup-close{padding-inline:var(--button-control-padding-inline);flex:none}.workbench-popup-body{--workbench-popup-body-padding-block:1.1rem;--workbench-popup-body-padding-inline:1.1rem;min-height:0;padding:var(--workbench-popup-body-padding-block) var(--workbench-popup-body-padding-inline);overflow:auto}.workbench-popup-body>.panel{--inspector-group-bg:var(--panel-bg-strong);--panel-header-bg:var(--inspector-group-bg);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;padding:0}.workbench-popup-body>.panel--palette{background:var(--inspector-group-bg)}.workbench-popup-body>.panel:before{display:none}.workbench-popup-body>.panel>.panel-header{margin:calc(-1 * var(--workbench-popup-body-padding-block)) calc(-1 * var(--workbench-popup-body-padding-inline)) 10px;padding:var(--workbench-popup-body-padding-block) var(--workbench-popup-body-padding-inline) .85rem;border-bottom:1px solid var(--surface-border-muted)}.workbench-popup-body>.panel>.inpector-header{top:calc(-1 * var(--workbench-popup-body-padding-block));margin:calc(-1 * var(--workbench-popup-body-padding-block)) calc(-1 * var(--workbench-popup-body-padding-inline)) 10px;padding:var(--workbench-popup-body-padding-block) var(--workbench-popup-body-padding-inline) .85rem;border-bottom:1px solid var(--surface-border-muted)}@media (width<=1200px){.editor-screen{--workbench-editor-surface-height:560px}.editor-banner,.editor-grid{grid-template-columns:1fr}.panel--canvas,.panel--yaml,.panel--validation{grid-area:auto}.canvas-actions,.validation-filters{justify-content:flex-start}}@media (width<=800px){.workbench-popup-overlay{place-items:stretch stretch;padding:.5rem}.workbench-popup-dialog,.workbench-popup-dialog--palette{border-radius:var(--radius-lg);width:100%;max-height:calc(100svh - 1rem)}.workbench-popup-header{padding-inline:.85rem}.workbench-popup-body{--workbench-popup-body-padding-inline:.85rem}.panel-header,.inpector-header{flex-direction:column;align-items:stretch}.editor-mode-toolbar{justify-content:flex-start;align-items:stretch}.editor-banner__stats{grid-template-columns:1fr}.panel-header--stacked input{max-width:none}}.react-flow{background:0 0}.react-flow__attribution{background:var(--field-bg)!important;color:var(--text-muted)!important}.react-flow__controls{border:1px solid var(--field-border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 14px 28px #03080e3d}.react-flow__controls-button{width:var(--button-control-min-height);height:var(--button-control-min-height);min-height:var(--button-control-min-height);background:var(--canvas-control-bg);border-bottom:1px solid var(--surface-border-muted);color:var(--text-primary);padding:0}.react-flow__controls-button svg{width:var(--button-control-icon-size);height:var(--button-control-icon-size);max-width:var(--button-control-icon-size);max-height:var(--button-control-icon-size)}.react-flow__controls-button:hover{background:var(--canvas-control-bg-hover)}.react-flow__edge-path,.react-flow__connection-path{stroke:var(--edge-stroke);stroke-width:2px}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge:focus .react-flow__edge-path{stroke:var(--accent-strong);stroke-width:3px}.react-flow__edge-text{fill:var(--text-secondary);font-family:var(--mono-font);font-size:11px}.react-flow__edge-textbg{fill:var(--edge-label-bg)}.react-flow__handle{border:2px solid var(--handle-border);background:var(--accent);width:.75rem;height:.75rem}
