.drawflow,.drawflow .parent-node{position:relative}.parent-drawflow{touch-action:none;outline:0;display:flex;overflow:hidden}.drawflow{-webkit-user-select:none;user-select:none;perspective:0;width:100%;height:100%}.drawflow .drawflow-node{color:#000;z-index:2;background:#0ff;border:2px solid #000;border-radius:4px;align-items:center;width:160px;min-height:40px;padding:15px;display:flex;position:absolute}.drawflow .drawflow-node.selected{background:red}.drawflow .drawflow-node:hover{cursor:move}.drawflow .drawflow-node .inputs,.drawflow .drawflow-node .outputs{width:0}.drawflow .drawflow-node .drawflow_content_node{width:100%;display:block}.drawflow .drawflow-node .input,.drawflow .drawflow-node .output{cursor:crosshair;z-index:1;background:#fff;border:2px solid #000;border-radius:50%;width:20px;height:20px;margin-bottom:5px;position:relative}.drawflow .drawflow-node .input{background:#ff0;top:2px;left:-27px}.drawflow .drawflow-node .output{top:2px;right:-3px}.drawflow svg{z-index:0;position:absolute;overflow:visible!important}.drawflow .connection{pointer-events:none;aspect-ratio:1;position:absolute}.drawflow .connection .main-path{fill:none;stroke-width:5px;stroke:#4682b4;pointer-events:all}.drawflow .connection .main-path:hover{stroke:#1266ab;cursor:pointer}.drawflow .connection .main-path.selected{stroke:#43b993}.drawflow .connection .point{cursor:move;stroke:#000;stroke-width:2px;fill:#fff;pointer-events:all}.drawflow .connection .point.selected,.drawflow .connection .point:hover{fill:#1266ab}.drawflow .main-path{fill:none;stroke-width:5px;stroke:#4682b4}.drawflow-delete{color:#fff;z-index:4;text-align:center;cursor:pointer;background:#000;border:2px solid #fff;border-radius:50%;width:30px;height:30px;font-family:monospace;font-weight:700;line-height:30px;display:block;position:absolute}.drawflow>.drawflow-delete{margin-top:15px;margin-left:-15px}.parent-node .drawflow-delete{top:-15px;right:-15px}body{font-family:Inter,sans-serif}#sidebar.sidebar-collapsed .nav-label,#sidebar.sidebar-collapsed .sidebar-section-title,#sidebar.sidebar-collapsed #user-name,#sidebar.sidebar-collapsed .sidebar-section-title-wrap{display:none}#sidebar:not(.sidebar-collapsed) #sidebar-brand-row{justify-content:flex-start}#sidebar.sidebar-collapsed #sidebar-brand-row{justify-content:center;padding-left:.5rem;padding-right:.5rem}#brand-favicon-mini,#sidebar.sidebar-collapsed #brand-logo{display:none}#sidebar.sidebar-collapsed #brand-favicon-mini{display:block}#sidebar.sidebar-collapsed .nav-link,#sidebar.sidebar-collapsed #logout-btn{justify-content:center}#sidebar.sidebar-collapsed .nav-link .material-icons,#sidebar.sidebar-collapsed #logout-btn .material-icons{margin-right:0}#sidebar.sidebar-collapsed nav ul{padding-left:.25rem;padding-right:.25rem}#sidebar.sidebar-collapsed #sidebar-user-row{justify-content:center;padding-left:.5rem;padding-right:.5rem}#sidebar.sidebar-collapsed #user-avatar{margin-right:0}#drawflow{background-color:#f9fafb;background-image:radial-gradient(#d1d5db 1px,#0000 1px);background-size:20px 20px;width:100%;height:100%}.drawflow{cursor:crosshair}.drawflow .drawflow-node{color:#111827;background:#fff;border:1px solid #e5e7eb;border-radius:8px;min-width:250px;padding:0;transition:box-shadow .2s;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.drawflow .drawflow-node:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.drawflow .drawflow-node.selected{border:2px solid #4f46e5;box-shadow:0 0 0 4px #4f46e533}.drawflow .drawflow-node .title-box{border-bottom:1px solid #e5e7eb;border-top-left-radius:8px;border-top-right-radius:8px;align-items:center;padding:10px 15px;font-weight:600;display:flex}.drawflow .drawflow-node .title-box i{margin-right:8px}.drawflow .drawflow-node .box{padding:15px;font-size:14px}.drawflow .connection .main-path{stroke:#9ca3af;stroke-width:3px}.drawflow .connection.selected .main-path{stroke:#4f46e5;stroke-width:4px}.drawflow .drawflow-node .input,.drawflow .drawflow-node .output{cursor:pointer;z-index:10;background:#6b7280;border:2px solid #fff;border-radius:50%;width:14px;height:14px;transition:transform .2s,background .2s}.drawflow .drawflow-node .input:hover,.drawflow .drawflow-node .output:hover{background:#4f46e5;transform:scale(1.2)}.drawflow .drawflow-node.active-pulse{border-color:#f59e0b;animation:1.5s infinite pulse-border;box-shadow:0 0 15px 5px #f59e0b66}.drawflow .drawflow-node.success-pulse{border-color:#10b981}.drawflow .drawflow-node.error-pulse{border-color:#ef4444}.drawflow .drawflow-node.workflow-node-running{z-index:5;border:3px solid #22c55e!important;box-shadow:0 0 0 4px #22c55e40,0 8px 24px #22c55e26!important}.drawflow .drawflow-node.workflow-node-completed{border:2px solid #86efac!important;box-shadow:0 2px 8px #22c55e1f!important}.drawflow .drawflow-node.workflow-node-failed{border:2px solid #f87171!important;box-shadow:0 0 0 3px #f8717133!important}@keyframes workflow-wire-flow{to{stroke-dashoffset:-32px}}.drawflow .connection.workflow-connection-active{z-index:1;filter:drop-shadow(0 0 4px #22c55e73)}.drawflow .connection.workflow-connection-active .main-path{stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:10 14;animation:1s linear infinite workflow-wire-flow;stroke:#22c55e!important;stroke-width:4px!important}.drawflow .connection.workflow-connection-active.selected .main-path{stroke:#16a34a!important}.workflow-run-progress-strip{pointer-events:none}.workflow-run-progress-strip .progress-track{background:#e5e7eb;border-radius:9999px;height:6px;overflow:hidden}.workflow-run-progress-strip .progress-fill{background:linear-gradient(90deg,#4f46e5,#22c55e);border-radius:9999px;width:0%;height:100%;transition:width .35s}.drawflow .drawflow-node.output-node-wide{min-width:280px;max-width:340px}.drawflow .drawflow-node .output-node-box{min-height:72px;padding:12px}.drawflow .drawflow-node .output-node-preview{background:#fafafa;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.drawflow .drawflow-node .output-node-preview.output-node-preview--text{color:#374151;word-break:break-word;max-height:180px;padding:10px 12px;font-size:12px;line-height:1.5;overflow-y:auto}.workflow-output-prose{color:#1f2937;word-break:break-word;font-size:.875rem;line-height:1.6}.workflow-output-prose>:first-child{margin-top:0}.workflow-output-prose>:last-child{margin-bottom:0}.workflow-output-prose h1,.workflow-output-prose h2,.workflow-output-prose h3,.workflow-output-prose h4{color:#111827;margin:.85em 0 .4em;font-weight:600;line-height:1.35}.workflow-output-prose h1{font-size:1.125rem}.workflow-output-prose h2{font-size:1.05rem}.workflow-output-prose h3,.workflow-output-prose h4{font-size:1rem}.workflow-output-prose p{margin:.5em 0}.workflow-output-prose ul,.workflow-output-prose ol{margin:.5em 0;padding-left:1.25rem}.workflow-output-prose li{margin:.2em 0}.workflow-output-prose a{color:#4f46e5;text-decoration:underline}.workflow-output-prose code{background:#f3f4f6;border-radius:4px;padding:.1em .35em;font-size:.9em}.workflow-output-prose pre{background:#f3f4f6;border-radius:6px;margin:.6em 0;padding:.65rem .75rem;font-size:.8em;line-height:1.45;overflow-x:auto}.workflow-output-prose pre code{background:0 0;padding:0}.workflow-output-prose blockquote{color:#6b7280;border-left:3px solid #e5e7eb;margin:.5em 0;padding-left:.75rem}.workflow-output-prose hr{border:0;border-top:1px solid #e5e7eb;margin:1em 0}.workflow-output-prose--compact{font-size:12px;line-height:1.5}.workflow-output-prose--compact h1{font-size:1.05rem}.workflow-output-prose--compact h2,.workflow-output-prose--compact h3,.workflow-output-prose--compact h4{font-size:.95rem}.drawflow .drawflow-node .output-node-thumb-wrap{background:#f3f4f6;line-height:0;position:relative}.drawflow .drawflow-node .output-node-thumb{object-fit:contain;width:100%;max-height:160px;display:block}.drawflow .drawflow-node .output-node-img-actions{background:#fff;border-top:1px solid #e5e7eb;flex-wrap:wrap;gap:8px;padding:8px 10px;display:flex}.drawflow .drawflow-node .output-node-img-actions button{color:#4f46e5;cursor:pointer;background:#eef2ff;border:1px solid #e0e7ff;border-radius:6px;padding:4px 8px;font-size:11px;font-weight:500;transition:background .15s,border-color .15s}.drawflow .drawflow-node .output-node-img-actions button:hover{background:#e0e7ff;border-color:#c7d2fe}.drawflow .drawflow-node .output-node-text-actions{background:#fff;border-top:1px solid #e5e7eb;flex-wrap:wrap;gap:8px;padding:8px 10px;display:flex}.drawflow .drawflow-node .output-node-text-actions button{color:#4f46e5;cursor:pointer;background:#eef2ff;border:1px solid #e0e7ff;border-radius:6px;align-items:center;padding:4px 8px;font-size:11px;font-weight:500;transition:background .15s,border-color .15s;display:inline-flex}.drawflow .drawflow-node .output-node-text-actions button:hover{background:#e0e7ff;border-color:#c7d2fe}.drawflow .drawflow-node .output-node-text-actions__icon{margin-right:4px;font-size:14px}.output-image-modal{z-index:200;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f172aa6;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.output-image-modal[hidden]{display:none!important}.output-image-modal__panel{background:#fff;border-radius:16px;flex-direction:column;width:100%;max-width:min(96vw,1200px);max-height:92vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000059}.output-image-modal__img-wrap{background:#f8fafc;flex:1;justify-content:center;align-items:center;min-height:200px;padding:16px;display:flex;overflow:auto}.output-image-modal__img{object-fit:contain;border-radius:8px;max-width:100%;max-height:min(78vh,900px);box-shadow:0 4px 24px #00000014}.output-text-modal{z-index:200;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f172aa6;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.output-text-modal[hidden]{display:none!important}.output-text-modal__panel{background:#fff;border-radius:16px;flex-direction:column;width:100%;max-width:min(96vw,720px);max-height:92vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000059}.output-text-modal__body{color:#1f2937;background:#fafafa;flex:1;min-height:120px;padding:20px 24px;overflow:auto}.output-text-modal__body .workflow-output-prose{max-width:100%}@keyframes pulse-border{0%{box-shadow:0 0 #f59e0bb3}70%{box-shadow:0 0 0 10px #f59e0b00}to{box-shadow:0 0 #f59e0b00}}.loader{border:4px solid #f3f3f3;border-top-color:#4f46e5;border-radius:50%;width:30px;height:30px;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
