.flow-designer{margin-top:22px;border:1px solid #cfdad4;border-radius:15px;overflow:hidden;background:#fff;box-shadow:0 14px 40px #183a2910}.flow-designer.expanded{position:fixed;inset:15px;z-index:100;display:flex;flex-direction:column;box-shadow:0 0 0 30px #07110fbb}.graph-toolbar{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;background:#f8faf6;border-bottom:1px solid var(--line);gap:10px;flex-wrap:wrap}.graph-brand{display:flex;gap:12px;align-items:center}.graph-brand>span{display:grid;place-items:center;width:35px;height:35px;border:1px solid #d2dfc9;border-radius:9px;background:#eaf2e1;font-size:24px;color:#497042}.graph-brand strong{font-size:14px}.graph-brand small{display:block;font-size:11px;margin-top:4px}.graph-tools{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.graph-tools button{padding:7px 10px;font-size:12px;min-width:31px}.graph-tools output{font-size:11px;color:#65806c;width:40px;text-align:center}.graph-tools button[data-graph-action=save]{background:#174c3d;color:white;border-color:#174c3d;padding:8px 18px;margin-left:8px}.graph-divider{height:20px;border-left:1px solid #dfe6df;margin:0 6px}.graph-palette{padding:11px 18px;display:flex;align-items:center;gap:9px;background:#fff;border-bottom:1px solid var(--line);flex-wrap:wrap}.graph-palette>small{font-size:10px;letter-spacing:.5px}.graph-palette>small:last-child{margin-left:auto;letter-spacing:0}.graph-palette button{font-size:12px;padding:8px 13px;display:flex;align-items:center;gap:9px;cursor:grab}.graph-palette button>span{font-size:16px}.graph-palette button>b{font-size:15px;font-weight:400;color:#839487;margin-left:6px}.graph-palette .palette-menu>span{color:#8b6dba}.graph-palette .palette-agent>span{color:#3b8e85}.graph-palette .palette-callback>span{color:#bf8936}.graph-workspace{display:grid;grid-template-columns:minmax(0,1fr) 300px;min-height:610px}.graph-canvas-area{position:relative;min-width:0;background:#101c25;display:flex;flex-direction:column}.graph-stage{position:relative;height:610px;overflow:hidden;touch-action:none;cursor:grab;background-color:#101c25;background-image:radial-gradient(#38505f 1px,transparent 1px);background-size:24px 24px;outline-offset:-4px}.graph-stage:active{cursor:grabbing}.graph-world{position:absolute;width:8000px;height:6000px;transform-origin:0 0;pointer-events:none}.graph-world>*{pointer-events:auto}.graph-wires{position:absolute;inset:0;overflow:visible;pointer-events:none}.graph-edge{cursor:pointer;pointer-events:stroke;outline:none}.graph-edge-hit{stroke:transparent;stroke-width:18px;fill:none}.graph-edge-line{fill:none;stroke:#6ca8b7;stroke-width:2.4px;pointer-events:none;transition:stroke .12s}.graph-edge.fallback .graph-edge-line{stroke:#ba975b;stroke-dasharray:6 5;opacity:.85}.graph-edge:hover .graph-edge-line,.graph-edge.selected .graph-edge-line,.graph-edge:focus .graph-edge-line{stroke:#d0ed9d;stroke-width:4px;opacity:1}.graph-preview-wire{fill:none;stroke:#d0ed9d;stroke-width:3px;stroke-dasharray:4 4;pointer-events:none}.graph-node{position:absolute;width:250px;background:#1b2c38;border:1px solid #4c6470;border-radius:10px;color:#e8eff1;box-shadow:0 6px 19px #0004;font-size:12px;cursor:default;user-select:none}.graph-node.selected{border-color:#d4ebaa;box-shadow:0 0 0 2px #c2e68d66,0 8px 22px #0006}.graph-node.has-issue{border-style:dashed}.graph-node-head{height:66px;display:block;text-align:left;width:100%;border:0;border-radius:9px 9px 0 0;padding:10px 14px;background:#27434b;color:#ecf4f4;cursor:grab;overflow:hidden}.graph-node-head:hover:not(:disabled){background:#304e57;border:0}.graph-node.menu .graph-node-head{background:#413852}.graph-node.callback .graph-node-head{background:#4a4433}.graph-node.end .graph-node-head{background:#34424b}.graph-node-head>span{display:block;text-transform:uppercase;letter-spacing:1px;color:#c4d2d7;font-size:9px;margin-bottom:6px}.graph-node-head strong{font-size:13px;font-weight:600;display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.graph-node-info{height:26px;padding:6px 14px;display:flex;align-items:center;gap:7px;font-size:10px;color:#9db3bc;overflow:hidden;white-space:nowrap}.graph-node-info>span:last-child{overflow:hidden;text-overflow:ellipsis}.graph-root{font-size:8px;border:1px solid #80996b;border-radius:3px;padding:2px 4px;color:#cfdfb8;letter-spacing:.4px}.graph-warning{color:#efc46a;font-weight:bold}.graph-input,.graph-output{position:absolute;min-width:0;width:16px;height:16px;border-radius:50%;padding:0;border:2px solid #8da4ae;background:#172732;z-index:3;cursor:crosshair}.graph-input{top:24px;left:-8px}.graph-port-row{position:relative;height:30px;padding:5px 17px 5px 14px;display:flex;align-items:center;font-size:10px;color:#bfd0d6;border-top:1px solid #ffffff08}.graph-port-row>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.graph-port-row.fallback{color:#d1b079}.graph-output{right:-8px;top:7px;border-color:#7dabb7}.graph-port-row.fallback .graph-output{border-color:#c7a66c}.graph-output.connected{background:#6295a4}.graph-port-row.fallback .graph-output.connected{background:#a78952}.graph-input:hover:not(:disabled),.graph-output:hover:not(:disabled),.graph-output.pending{background:#d4ebaa;border-color:#d4ebaa;box-shadow:0 0 0 5px #d4ebaa25}.graph-status{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 14px;min-height:36px;background:#15242d;color:#a0b4bc;font-size:10px;border-top:1px solid #344852}.graph-status button{padding:4px 9px;font-size:10px;background:#293d46;color:#e4edde;border-color:#57716a}.graph-inspector{padding:17px 16px;border-left:1px solid var(--line);background:#fbfcf8;max-height:646px;overflow-y:auto;min-width:0}.graph-inspector-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}.graph-inspector-title small{font-size:9px;letter-spacing:1px}.graph-inspector-title button{font-size:10px;padding:6px 8px}.graph-inspector .install-node-editor{border:0;box-shadow:none;border-radius:0;background:transparent;padding:0}.graph-inspector .formgrid{grid-template-columns:1fr;gap:16px}.graph-inspector label{font-size:11px}.graph-inspector input,.graph-inspector select,.graph-inspector textarea{font-size:12px;padding:9px}.graph-inspector h3{font-size:13px}.graph-inspector .install-choices>div{grid-template-columns:55px 1fr}.graph-inspector .install-choices>div>label:nth-child(3){grid-column:1/-1}.graph-inspector .install-choices button{justify-self:end}.graph-inspector .small-btn{font-size:10px;padding:6px 8px}.graph-inspector .section-title{margin-top:23px}.graph-inspector fieldset{border:0}.graph-inspector small{font-size:10px}.graph-checks{display:flex;align-items:center;gap:13px;flex-wrap:wrap;background:#f5f8ee;padding:12px 18px;border-top:1px solid var(--line);font-size:11px}.graph-checks>small{margin-left:auto;font-size:10px}.graph-checks.needs-work{background:#fbf5e7;color:#89672d}.graph-checks details button{display:block;border:0;background:transparent;text-align:left;padding:6px 0;font-size:11px}.graph-checks summary{cursor:pointer}.flow-designer.expanded .graph-workspace{flex:1;min-height:0}.flow-designer.expanded .graph-stage{height:100%;min-height:200px;flex:1}.flow-designer.expanded .graph-inspector{max-height:none;height:100%;min-height:0}.flow-designer.expanded .graph-canvas-area{min-height:0}.flow-designer.expanded .graph-workspace{overflow:hidden}.flow-designer.expanded .graph-checks{flex-shrink:0;max-height:130px;overflow:auto}@media(max-width:1050px){.graph-workspace{grid-template-columns:minmax(0,1fr) 260px}.graph-palette>small:last-child{display:none}}@media(max-width:760px){.graph-workspace{grid-template-columns:1fr}.graph-stage{height:460px}.graph-inspector{max-height:420px;border-left:0;border-top:1px solid var(--line)}.graph-status span:last-child{display:none}.graph-tools{gap:4px}.graph-toolbar{padding:12px}.graph-palette{padding:12px;gap:7px}.graph-palette button{padding:7px 10px}.graph-palette>small:first-child{width:100%}.graph-checks>small{margin-left:0}.flow-designer.expanded{inset:5px}.flow-designer.expanded .graph-workspace{display:flex;flex-direction:column}.flow-designer.expanded .graph-canvas-area{height:55%;flex:1}.flow-designer.expanded .graph-inspector{height:40%;max-height:40%}.graph-inspector .install-choices>div{grid-template-columns:55px 1fr 1fr 30px}.graph-inspector .install-choices>div>label:nth-child(3){grid-column:auto}.graph-inspector .formgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){.graph-edge-line{transition:none}}
