/* Isolated Drawflow presentation; the app owns the rule configuration. */
.edge-flow-surface{position:relative;width:100%;height:100%;min-height:360px;overflow:hidden;border-radius:0;background-color:#f7f9fc;background-image:radial-gradient(#cbd6e1 1px,transparent 1px);background-size:var(--flow-grid-size,24px) var(--flow-grid-size,24px);background-position:var(--flow-grid-x,0) var(--flow-grid-y,0)}
.edge-flow-drawflow{position:absolute;inset:0;overflow:hidden;outline:none;touch-action:none;cursor:grab}
.edge-flow-drawflow:active{cursor:grabbing}.edge-flow-drawflow:focus-visible{outline:2px solid #74baca;outline-offset:-3px}
.edge-flow-drawflow .parent-drawflow{height:100%}.edge-flow-drawflow .drawflow{position:relative;width:100%;height:100%;transform-origin:0 0}
.edge-flow-drawflow .drawflow .drawflow-node.edge-flow-node{width:236px;min-width:236px;padding:0;border:1px solid #d8e3ec;border-radius:15px;background:#fff;box-shadow:0 5px 15px #274d6a09;cursor:grab;transition:box-shadow .15s,border-color .15s;min-height:172px;align-items:stretch}
.edge-flow-drawflow .drawflow .drawflow-node.edge-flow-node:hover{border-color:#a4bccf;box-shadow:0 8px 20px #274d6a13}
.edge-flow-drawflow .drawflow .drawflow-node.edge-flow-node.selected{border-color:#298d86;box-shadow:0 0 0 3px #27a69816,0 6px 18px #274d6a12}
.edge-flow-drawflow .drawflow .drawflow-node.edge-flow-node:active{cursor:grabbing}
.edge-flow-drawflow .drawflow_content_node{width:100%;min-width:0}.flow-node-body{padding:18px 18px 0;min-height:172px;display:flex;flex-direction:column;box-sizing:border-box;overflow:hidden;border-radius:15px}
.edge-flow-drawflow .flow-node-body svg{position:static}
.flow-node-heading{display:flex;gap:9px;align-items:center;min-height:31px;margin-bottom:12px}.flow-node-symbol{width:31px;height:31px;border-radius:9px;background:#e7f3fc;color:#4c8fbc;display:grid;place-items:center}.flow-node-symbol svg{width:17px;height:17px}.flow-node-kicker{font-size:10px;font-weight:650;color:#718897;text-transform:uppercase;letter-spacing:.6px}.flow-node-number{font-size:9px;color:#aab9c4;margin-left:auto}.flow-node-title{display:block;color:#2b4658;font-size:13px;line-height:1.4;font-weight:650;margin-bottom:6px;overflow-wrap:anywhere}.flow-node-detail{font-size:10px;color:#8195a4;line-height:1.5;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere;min-height:30px;margin-bottom:14px}.flow-node-config{display:flex;align-items:center;justify-content:space-between;width:calc(100% + 36px);margin:0 -18px;padding:10px 18px;border:0;border-top:1px solid #edf2f6;background:#fbfcfe;color:#6e8595;cursor:pointer;font-size:10px;text-align:left;min-height:36px;margin-top:auto}.flow-node-config:hover{color:#247c73;background:#f0f9f7}.flow-node-config:focus-visible{outline:2px solid #278c86;outline-offset:-3px}.flow-node-config svg{width:13px;height:13px;color:#93a7b4}
.flow-node-conditions .flow-node-symbol{background:#f2edfd;color:#9273ca}.flow-node-action .flow-node-symbol{background:#e7f5ef;color:#318d73}
.edge-flow-drawflow .drawflow .drawflow-node.edge-flow-node .input,.edge-flow-drawflow .drawflow .drawflow-node.edge-flow-node .output{width:14px;height:14px;min-width:14px;border:3px solid #fff;background:#8fa5b5;box-shadow:0 0 0 1px #8fa5b5;top:calc(50% - 7px);position:absolute;cursor:crosshair;margin:0;border-radius:50%}
.edge-flow-drawflow .drawflow .drawflow-node.edge-flow-node .input{left:-8px}.edge-flow-drawflow .drawflow .drawflow-node.edge-flow-node .output{right:-8px;left:auto;background:#559e94;box-shadow:0 0 0 1px #559e94}
.edge-flow-drawflow .drawflow .drawflow-node.edge-flow-node .inputs,.edge-flow-drawflow .drawflow .drawflow-node.edge-flow-node .outputs{position:static;min-width:0;width:0}
.edge-flow-drawflow .drawflow .drawflow-node.edge-flow-node .input:hover,.edge-flow-drawflow .drawflow .drawflow-node.edge-flow-node .output:hover{box-shadow:0 0 0 5px #3fa79320,0 0 0 1px #238e81;background:#238e81}
.edge-flow-drawflow .drawflow .connection .main-path{stroke:#7ea6a6;stroke-width:2.2;fill:none;transition:stroke .15s;pointer-events:stroke}.edge-flow-drawflow .drawflow .connection .main-path:hover{stroke:#248e82;stroke-width:3.3}.edge-flow-drawflow .drawflow .connection .main-path.selected{stroke:#16887c;stroke-width:3.5}.edge-flow-drawflow .drawflow .connection{z-index:0}.edge-flow-drawflow .drawflow .drawflow-node{z-index:1}
.edge-flow-drawflow .drawflow-delete{font-size:16px;background:#d46f68;color:white;width:24px;height:24px;border:2px solid #fff;box-shadow:0 2px 7px #36516625;display:grid;place-items:center}.edge-flow-drawflow .edge-flow-node .drawflow-delete{display:none!important}
.edge-flow-feedback{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);z-index:4;max-width:calc(100% - 40px);padding:11px 16px;border:1px solid #d8e6e9;border-radius:9px;background:#fff;color:#567685;box-shadow:0 5px 18px #203c5310;font-size:11px;line-height:1.5;text-align:center;pointer-events:none}.edge-flow-feedback[hidden]{display:none}
@media(max-width:700px){.flow-node-config{min-height:40px}.edge-flow-feedback{bottom:12px;max-width:calc(100% - 24px);font-size:10px}}
@media(prefers-reduced-motion:reduce){.edge-flow-drawflow .drawflow .drawflow-node.edge-flow-node,.edge-flow-drawflow .drawflow .connection .main-path{transition:none}}
