@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap";*{box-sizing:border-box;margin:0;padding:0}body{background:#f0f2f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.header{color:#fff;background:linear-gradient(135deg,#0f0c29,#1a1a3e,#24243e);flex-shrink:0;justify-content:space-between;align-items:center;height:48px;padding:0 20px;display:flex;box-shadow:0 2px 8px #00000059}.header-left{align-items:center;gap:10px;display:flex}.header-logo{background:linear-gradient(135deg,#4a90d9,#7b2ff7);border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;display:flex;box-shadow:0 2px 8px #7b2ff780}.header-title{letter-spacing:.3px;background:linear-gradient(90deg,#fff 60%,#a78bfa);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:16px;font-weight:700}.header-badge{color:#a78bfa;letter-spacing:.5px;-webkit-text-fill-color:#a78bfa;background:#ffffff1a;border:1px solid #fff3;border-radius:20px;padding:2px 8px;font-size:10px;font-weight:600}.header-right{align-items:center;gap:12px;display:flex}.header-author{color:#fff6;letter-spacing:.3px;font-size:12px}.layout{height:calc(100vh - 48px);display:flex}.sidebar{z-index:2;background:#fff;border-right:1px solid #ddd;flex-direction:column;width:280px;height:100%;transition:width .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.sidebar h3{color:#555;text-transform:uppercase;letter-spacing:.5px;background:#f7f7f7;border-bottom:1px solid #ddd;padding:12px 16px;font-size:13px}.node-list{flex:1;min-height:0;padding:8px;overflow-y:auto}.node-card{cursor:pointer;background:#fff;border:1px solid #e0e0e0;border-radius:6px;margin-bottom:8px;padding:10px 12px;transition:border-color .15s}.node-card:hover{background:#f0f7ff;border-color:#4a90d9}.node-card .node-id{color:#333;font-size:13px;font-weight:700}.node-card .node-url{color:#888;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;overflow:hidden}.node-card .node-method{color:#fff;background:#4caf50;border-radius:3px;margin-right:6px;padding:1px 6px;font-size:10px;display:inline-block}.node-card .node-method.post{background:#ff9800}.add-btn{color:#fff;cursor:pointer;background:#4a90d9;border:none;border-radius:5px;margin:10px;padding:8px;font-size:13px}.add-btn:hover{background:#357abd}.sidebar.collapsed{width:72px}.sidebar.collapsed h3{padding:8px 6px}.sidebar.collapsed h3 span:first-child{display:none}.collapsed-flow-container:hover .collapsed-flow-tooltip,.collapsed-node-container:hover .collapsed-node-tooltip{display:flex!important}.sidebar-toggle{cursor:pointer;color:#475569;z-index:3;background:#fff;border:1px solid #cbd5e1;justify-content:center;align-items:center;width:24px;height:24px;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;position:absolute;top:18px;right:-12px;box-shadow:0 2px 5px #00000014,0 1px 2px #0000000a;border-radius:50%!important}.sidebar-toggle:hover{color:#0f172a;background:#f8fafc;border-color:#94a3b8;transform:scale(1.05);box-shadow:0 4px 10px #0000001f}.sidebar.collapsed .sidebar-toggle{width:24px;height:24px}.sidebar:not(.collapsed) h3{padding-right:48px}.sidebar-toggle-chevron{width:14px;height:14px;display:block}.theme-dark .sidebar-toggle{color:#94a3b8;background:#1f2937;border-color:#374151;box-shadow:0 4px 12px #0000004d}.theme-dark .sidebar-toggle:hover{color:#f1f5f9;background:#374151;border-color:#4b5563}.main{flex-direction:column;flex:1;display:flex;overflow:hidden}.toolbar{background:#fff;border-bottom:1px solid #ddd;flex-shrink:0;align-items:center;gap:10px;padding:10px 16px;display:flex}.settings-btn{color:#fff;cursor:pointer;background:#34495e;border:none;border-radius:5px;padding:5px 12px;font-size:12px;font-weight:600;transition:background .15s}.settings-btn:hover{background:#2a3d4f}.flow-name-input{border:1px solid #ccc;border-radius:4px;width:180px;padding:5px 10px;font-size:14px}.run-btn{color:#fff;cursor:pointer;background:#27ae60;border:none;border-radius:5px;padding:6px 18px;font-size:14px;font-weight:700}.run-btn:hover{background:#1e8449}.run-btn:disabled{cursor:not-allowed;background:#aaa}.save-btn{color:#fff;cursor:pointer;background:#8e44ad;border:none;border-radius:5px;padding:6px 16px;font-size:14px;font-weight:700}.save-btn:hover{background:#7d3c98}.save-btn:disabled{cursor:not-allowed;background:#aaa}.canvas{isolation:isolate;background:#f8fafc;flex:1;position:relative;overflow:hidden;transform:translateZ(0)}.canvas-zoom-controls{z-index:10;flex-direction:column;gap:4px;display:flex;position:absolute;bottom:16px;right:16px}.canvas-zoom-btn{cursor:pointer;color:#333;background:#fff;border:1px solid #ccc;border-radius:5px;justify-content:center;align-items:center;width:30px;height:30px;font-size:16px;display:flex;box-shadow:0 1px 4px #0000001f}.canvas-zoom-btn:hover{background:#f0f7ff;border-color:#4a90d9}.canvas-scale-badge{color:#999;z-index:10;pointer-events:none;-webkit-user-select:none;user-select:none;background:#ffffffd9;border:1px solid #eee;border-radius:4px;padding:3px 8px;font-size:11px;position:absolute;bottom:16px;left:16px}.client-node{background:#fff;border:2px solid #555;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;width:120px;padding:14px 10px;display:flex}.client-node-icon{margin-bottom:6px;font-size:28px;line-height:1}.client-node-label{color:#333;font-size:13px;font-weight:700}.client-node-sub{color:#999;margin-top:2px;font-size:10px}.dnode-wrap{flex-direction:column;align-items:center;width:400px;display:flex}.dnode-box{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;width:360px;min-height:230px;transition:all .2s;display:flex;overflow:hidden;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}.dnode-box:hover{border-color:#cbd5e1;transform:translateY(-2px);box-shadow:0 10px 15px -3px #00000014,0 4px 6px -2px #0000000a}.dnode-box.success{border-color:#10b981}.dnode-box.error{border-color:#ef4444}.dnode-box.running,.theme-dark .dnode-box.running{border-color:#f59e0b;background:linear-gradient(145deg,#0b0f19,#020617)!important;border-style:solid!important;border-width:2px!important;animation:2s ease-in-out infinite premium-glow!important}.dnode-title.running,.theme-dark .dnode-title.running{color:#fbbf24!important;background:linear-gradient(135deg,#1e293b 0%,#0b0f19 100%)!important;border-top:2px solid #fbbf24!important;border-bottom:1px solid #f59e0b4d!important}@keyframes premium-glow{0%,to{border-color:#f59e0b;box-shadow:0 0 0 2px #f59e0b,0 0 15px #f59e0b73,0 8px 32px #00000080}50%{border-color:#fbbf24;box-shadow:0 0 0 4px #fbbf24,0 0 30px #fbbf24b3,0 12px 40px #0009}}.dnode-box.running .dnode-meta{color:#cbd5e1!important}.dnode-box.running .dnode-method{border:1px solid #fff3!important}.dnode-box.running .dnode-method.GET{box-shadow:0 0 12px #10b981,inset 0 0 4px #ffffff4d!important}.dnode-box.running .dnode-method.POST{box-shadow:0 0 12px #f59e0b,inset 0 0 4px #ffffff4d!important}.dnode-box.running .dnode-method.PUT{box-shadow:0 0 12px #8b5cf6,inset 0 0 4px #ffffff4d!important}.dnode-box.running .dnode-method.PATCH{box-shadow:0 0 12px #0ea5e9,inset 0 0 4px #ffffff4d!important}.dnode-box.running .dnode-method.DELETE{box-shadow:0 0 12px #ef4444,inset 0 0 4px #ffffff4d!important}@keyframes spin{to{transform:rotate(360deg)}}.dnode-title{color:#0f172a;background:#fff;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.dnode-title.success{color:#166534;background:#f0fdf4}.dnode-title.error{color:#991b1b;background:#fef2f2}.dnode-title.running{color:#fbbf24!important;background:linear-gradient(135deg,#1e293b 0%,#0b0f19 100%)!important}.dnode-title.skipped{color:#64748b;background:#f8fafc}.dnode-title.selected{font-weight:700;color:#f0fdfa!important;background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%)!important;border-top:2px solid #06b6d4!important;border-bottom:1px solid #0f766e!important}.dnode-box.skipped{opacity:.6;border-color:#e2e8f0}.dnode-meta{color:#64748b;align-items:center;padding:12px 16px;font-size:12px;display:flex}.dnode-method{color:#fff;letter-spacing:.5px;background:#10b981;border-radius:4px;margin-right:8px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-block}.dnode-method.POST{background:#f59e0b}.dnode-method.PUT{background:#8b5cf6}.dnode-method.PATCH{background:#0ea5e9}.dnode-method.DELETE{background:#ef4444}.dnode-response{flex-direction:column;flex:1;width:100%;display:flex}.dnode-response-header{text-transform:uppercase;letter-spacing:.5px;color:#64748b;background:#fff;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;padding:8px 16px;font-size:12px;font-weight:600}.dnode-response-header.success{color:#10b981}.dnode-response-header.error{color:#ef4444}.dnode-response-header.skipped{color:#94a3b8}.dnode-response-body{color:#d4d4d4;white-space:pre-wrap;resize:vertical;background:#1e1e1e;border:none;flex:1;min-height:60px;max-height:300px;padding:16px;font-family:JetBrains Mono,Fira Code,Consolas,Courier New,monospace;font-size:13px;line-height:1.6;transition:background-color .2s,color .2s;display:block;overflow:auto;box-shadow:inset 0 2px 4px #00000005}.theme-light .dnode-response-body{color:#0f172a;background:#f1f5f9}.dnode-response-body::-webkit-scrollbar{width:8px;height:8px}.dnode-response-body::-webkit-scrollbar-track{background:0 0}.dnode-response-body::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.dnode-response-body::-webkit-scrollbar-thumb:hover{background:#94a3b8}.dnode-response-body.error{color:#fca5a5;background:#2a1616}.theme-light .dnode-response-body.error{color:#b91c1c;background:#fef2f2}.darrow{flex-direction:column;flex-shrink:0;justify-content:flex-start;align-items:center;width:60px;padding-top:28px;display:flex;position:relative}.darrow-line{background:#999;width:100%;height:2px;position:relative}.darrow-line:after{content:"";border-top:6px solid #0000;border-bottom:6px solid #0000;border-left:10px solid #999;position:absolute;top:-5px;right:-1px}.darrow-line.success{background:#27ae60}.darrow-line.success:after{border-left-color:#27ae60}.darrow-line.error{background:#e74c3c}.darrow-line.error:after{border-left-color:#e74c3c}.darrow-code{margin-top:5px;font-size:11px;font-weight:700}.darrow-code.success{color:#27ae60}.darrow-code.error{color:#e74c3c}.darrow-code.pending{color:#aaa}.insert-btn{color:#fff;cursor:pointer;opacity:.7;background:#4a90d9;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:14px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 1px 4px #0000004d}.insert-btn:hover{opacity:1}.dnode-selected{border-color:#4a90d9!important;box-shadow:0 0 0 3px #4a90d9!important}.dnode-box.selected{color:#f0fdfa!important;background:#0f172a!important;border:2px solid #06b6d4!important;box-shadow:0 0 0 2px #06b6d4,0 0 12px #06b6d466,0 10px 30px #06b6d426!important}.theme-dark .dnode-box.selected{color:#f0fdfa!important;background:#0f172a!important;border:2px solid #06b6d4!important;box-shadow:0 0 0 2px #06b6d4,0 0 12px #06b6d466,0 10px 30px #06b6d433!important}.del-btn{color:inherit;cursor:pointer;opacity:.6;background:0 0;border:none;font-size:15px;line-height:1}.del-btn:hover{opacity:1}.result-error-bar{color:#c0392b;background:#fdedec;border-top:2px solid #e74c3c;flex-shrink:0;padding:10px 16px;font-size:13px}.modal-overlay{z-index:100;background:#0c142070;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{background:#fff;border:1px solid #0f172a14;border-radius:18px;width:620px;max-width:100%;max-height:92vh;padding:24px 28px;overflow-y:auto;box-shadow:0 28px 90px #0f172a2e}.modal h3{color:#111827;margin-bottom:16px;font-size:18px}.settings-modal{width:min(100%,420px);max-width:420px}.settings-section{margin-bottom:14px}.swatch-list{flex-wrap:wrap;gap:6px;display:flex}.swatch-btn{cursor:pointer;border:1px solid #0000001a;border-radius:4px;width:24px;min-width:24px;height:24px;min-height:24px;transition:transform .18s,border-color .18s}.swatch-btn:hover{transform:translateY(-1px)}.swatch-selected{border-color:#4a90d9;box-shadow:0 0 0 3px #4a90d92e}.preview-box{border-radius:12px;min-height:84px}.arrow-preview-box{background:#fff;border:1px solid #d1d5db;border-radius:14px;padding:10px}.form-row{margin-bottom:14px}.form-row label{color:#334155;margin-bottom:8px;font-size:13px;font-weight:600;display:block}.form-row input[type=text],.form-row input:not([type]),.form-row input[type=password],.form-row input[type=email],.form-row input[type=number],.form-row input[type=url],.form-row textarea,.form-row select{background:#f8fafc;border:1px solid #d1d5db;width:100%;min-height:35px;padding:5px 14px;font-size:14px;line-height:1.5;transition:border-color .18s,box-shadow .18s,background .18s;box-shadow:inset 0 1px 2px #0f172a0d}.form-row textarea{resize:vertical;min-height:100px}.form-row input[type=radio],.form-row input[type=checkbox]{width:auto;margin:0}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{background:#fff;border-color:#2563eb;outline:none;box-shadow:0 0 0 4px #3b82f61f}.form-row input::placeholder,.form-row textarea::placeholder{color:#94a3b8}:-webkit-any(.form-row input:-webkit-autofill,.form-row textarea:-webkit-autofill,.form-row select:-webkit-autofill){-webkit-text-fill-color:#111827!important;box-shadow:inset 0 0 0 1000px #f8fafc!important}:is(.form-row input:autofill,.form-row textarea:autofill,.form-row select:autofill){-webkit-text-fill-color:#111827!important;box-shadow:inset 0 0 0 1000px #f8fafc!important}.extract-row{gap:8px;margin-bottom:8px;display:flex}.extract-row input:first-child{flex:0 0 110px}.extract-row input:nth-child(2){flex:1}.modal-footer{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.btn-cancel{cursor:pointer;background:#fff;border:1px solid #ccc;border-radius:4px;padding:6px 14px;font-size:12px}.btn-save{color:#fff;cursor:pointer;background:#4a90d9;border:none;border-radius:4px;padding:6px 14px;font-size:12px}.theme-dark{color:#e2e8f0;background:#0f172a}.theme-dark .header{color:#e5e7eb;background:#111827}.theme-dark .sidebar{color:#e5e7eb;background:#111827;border-color:#1f2937}.theme-dark .sidebar h3{color:#e5e7eb;background:#111827;border-bottom-color:#1f2937}.theme-dark .dnode-title{background:#1f2937;border-bottom-color:#374151}.theme-dark .dnode-box{color:#e5e7eb;background:#111827;border-color:#374151}.theme-dark .node-card{color:#e5e7eb;background:#1f2937;border-color:#374151}.theme-dark .node-card:hover{background:#152238}.theme-dark .toolbar{background:#111827;border-bottom-color:#1f2937}.theme-dark .flow-name-input,.theme-dark .modal input,.theme-dark .modal select,.theme-dark .modal textarea{color:#e5e7eb;background:#111827;border-color:#374151}.theme-dark .modal{color:#e5e7eb;background:#111827;border-color:#ffffff14}.theme-dark .modal h3{color:#f8fafc}.theme-dark .settings-btn,.theme-dark .history-btn{color:#e5e7eb;background:#1f2937}.theme-dark .settings-btn:hover,.theme-dark .history-btn:hover{background:#172133}.theme-dark .save-btn{background:#2563eb}.theme-dark .save-btn:hover{background:#1d4ed8}.theme-dark .btn-cancel{color:#e5e7eb;background:#1f2937;border-color:#374151}.theme-dark .arrow-preview-box{background:#0f172a;border-color:#374151}.theme-dark .preview-box{border-color:#374151}.history-btn{color:#fff;cursor:pointer;background:#34495e;border:none;border-radius:5px;padding:6px 14px;font-size:13px;font-weight:700;transition:background .15s}.history-btn:hover{background:#2c3e50}.history-panel{background:#fff;border-left:1px solid #ddd;flex-direction:column;width:360px;min-width:360px;display:flex;overflow:hidden;box-shadow:-3px 0 12px #00000014}.history-panel-header{color:#fff;background:linear-gradient(135deg,#0f0c29,#1a1a3e);flex-shrink:0;justify-content:space-between;align-items:center;padding:10px 14px;font-size:13px;display:flex}.history-drawer-close{color:#ffffff80;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:22px;line-height:1}.history-drawer-close:hover{color:#fff}.history-panel-body{background:#f7f8fa;flex-direction:column;flex:1;gap:6px;padding:8px;display:flex;overflow-y:auto}.history-run-card{background:#fff;border:1px solid #e8e8e8;border-left:3px solid #ccc;border-radius:6px;overflow:visible}.history-run-card.open{overflow:visible;box-shadow:0 2px 8px #00000012}.history-run-header{cursor:pointer;background:#fafafa;align-items:center;gap:8px;padding:9px 12px;transition:background .12s;display:flex}.history-restore-btn{color:#4a90d9;cursor:pointer;white-space:nowrap;background:#e8f0fb;border:1px solid #c2d6f5;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600}.history-restore-btn:hover{color:#fff;background:#4a90d9;border-color:#4a90d9}.history-steps{background:#fafafa;border-top:1px solid #f0f0f0;border-radius:0 0 6px 6px;flex-direction:column;gap:3px;padding:6px 8px;display:flex}.history-step-row{background:#fff;border:1px solid #ebebeb;border-radius:4px;overflow:visible}.history-step-header{cursor:pointer;align-items:center;gap:7px;min-height:36px;padding:6px 10px;transition:background .1s;display:flex}.history-step-header:hover{background:#f5f5f5!important}.history-step-detail{border-top:1px solid #333;overflow:hidden}.history-step-pre{color:#d4d4d4;white-space:pre-wrap;background:#1e1e1e;max-height:240px;margin:0;padding:8px 10px;font-family:Consolas,monospace;font-size:11px;overflow-y:auto}.login-bg{background:linear-gradient(135deg,#0f0c29 0%,#1a1a3e 50%,#24243e 100%);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{background:#fff;border-radius:14px;flex-direction:column;align-items:stretch;gap:14px;width:340px;padding:40px 36px 36px;display:flex;box-shadow:0 20px 60px #00000073}.login-logo{text-align:center;margin-bottom:2px}.login-title{text-align:center;color:#1a1a3e;letter-spacing:.3px;margin:0;font-size:22px;font-weight:800}.login-sub{text-align:center;color:#aaa;margin-top:-8px;font-size:12px}.login-field{flex-direction:column;gap:5px;display:flex}.login-field label{color:#555;font-size:12px;font-weight:600}.login-field input{border:1.5px solid #ddd;border-radius:7px;outline:none;padding:9px 12px;font-size:14px;transition:border-color .15s,box-shadow .15s}.login-field input:focus{border-color:#7b2ff7;box-shadow:0 0 0 3px #7b2ff71f}.login-error{color:#e74c3c;text-align:center;background:#fdedec;border:1px solid #f5b7b1;border-radius:6px;padding:7px 12px;font-size:12px}.login-btn{color:#fff;cursor:pointer;letter-spacing:.3px;background:linear-gradient(135deg,#4a90d9,#7b2ff7);border:none;border-radius:8px;margin-top:4px;padding:11px;font-size:14px;font-weight:700;transition:opacity .15s,transform .1s}.login-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.login-btn:disabled{opacity:.6;cursor:not-allowed}.profile-page-overlay{z-index:9999;background:#f0f2f5f2;justify-content:center;align-items:flex-start;padding:80px 20px 40px;display:flex;position:fixed;inset:0;overflow-y:auto}.theme-dark .profile-page-overlay{background:#0f172af2}.profile-container{flex-direction:column;gap:20px;width:100%;max-width:600px;animation:.4s cubic-bezier(.16,1,.3,1) forwards slideUpFade;display:flex}@keyframes slideUpFade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.profile-header{align-items:center;display:flex}.btn-back{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:8px 12px;font-size:14px;font-weight:600;transition:background .2s,color .2s;display:flex}.btn-back:hover{color:#111827;background:#0000000d}.theme-dark .btn-back{color:#94a3b8}.theme-dark .btn-back:hover{color:#f1f5f9;background:#ffffff14}.profile-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;position:relative;overflow:hidden;box-shadow:0 12px 40px #0000001a}.theme-dark .profile-card{background:#1e293b;border-color:#334155;box-shadow:0 12px 40px #0006}.profile-banner{background:linear-gradient(135deg,#4a90d9,#7b2ff7);height:140px}.profile-avatar-wrapper{background:#fff;border-radius:50%;padding:6px;position:absolute;top:90px;left:30px;box-shadow:0 4px 12px #0000001a}.theme-dark .profile-avatar-wrapper{background:#1e293b}.profile-avatar{object-fit:cover;border-radius:50%;width:80px;height:80px;display:block}.profile-info{flex-direction:column;align-items:flex-start;gap:6px;padding:50px 30px 24px;display:flex}.profile-info h2{color:#111827;margin:0;font-size:24px;font-weight:800}.theme-dark .profile-info h2{color:#f1f5f9}.profile-role-badge{color:#7b2ff7;text-transform:uppercase;letter-spacing:.5px;background:#7b2ff71a;border-radius:12px;padding:4px 10px;font-size:11px;font-weight:700}.theme-dark .profile-role-badge{color:#a78bfa;background:#a78bfa26}.profile-email{color:#64748b;margin:0;font-size:14px}.theme-dark .profile-email{color:#94a3b8}.profile-divider{background:#e2e8f0;height:1px;margin:0 30px}.theme-dark .profile-divider{background:#334155}.profile-stats{grid-template-columns:repeat(3,1fr);gap:16px;padding:24px 30px;display:grid}.stat-box{flex-direction:column;gap:6px;display:flex}.stat-label{color:#64748b;text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600}.theme-dark .stat-label{color:#94a3b8}.stat-value{color:#111827;font-size:16px;font-weight:700}.theme-dark .stat-value{color:#f1f5f9}.user-plan-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;flex-direction:column;gap:14px;margin:24px 30px;padding:24px;display:flex;box-shadow:0 4px 12px #00000008}.theme-dark .user-plan-card{background:#111827;border-color:#334155;box-shadow:0 4px 12px #00000040}.user-plan-title{color:#64748b;letter-spacing:.8px;text-transform:uppercase;margin-bottom:4px;font-size:13px;font-weight:800}.theme-dark .user-plan-title{color:#94a3b8}.user-plan-label{color:#64748b;font-size:15px;font-weight:500}.theme-dark .user-plan-label{color:#94a3b8}.user-plan-value{color:#0f172a;font-size:16px;font-weight:700}.theme-dark .user-plan-value{color:#f1f5f9}.flow-line-running{stroke-dasharray:8 4!important;stroke:#f59e0b!important;animation:.5s linear infinite flow-line-dash,.8s ease-in-out infinite alternate flow-line-flash!important}.flow-marker-running{animation:.8s ease-in-out infinite alternate flow-marker-flash!important}@keyframes flow-line-dash{0%{stroke-dashoffset:24px}to{stroke-dashoffset:0}}@keyframes flow-line-flash{0%{opacity:.45;filter:drop-shadow(0 0 1px #f59e0b66)}to{opacity:1;filter:drop-shadow(0 0 6px #f59e0be6)}}@keyframes flow-marker-flash{0%{opacity:.45;fill:#f59e0b}to{opacity:1;fill:#fbbf24}}.flow-line-flowing{stroke-dasharray:10 6;opacity:.95;animation:1.5s linear infinite flow-line-flowing}@keyframes flow-line-flowing{0%{stroke-dashoffset:0}to{stroke-dashoffset:-16px}}.flow-line-marching-ants{stroke-dasharray:12 8!important;stroke:#10b981!important;animation:2s linear infinite marching-ants-forward!important}@keyframes marching-ants-forward{0%{stroke-dashoffset:0}to{stroke-dashoffset:-20px}}.flow-line-pulse-glow{filter:drop-shadow(0 0 2px);animation:2s ease-in-out infinite flow-line-pulse-glow}@keyframes flow-line-pulse-glow{0%{stroke-width:2px;filter:drop-shadow(0 0 1px);opacity:1}50%{stroke-width:3px;filter:drop-shadow(0 0 4px);opacity:1}to{stroke-width:2px;filter:drop-shadow(0 0 1px);opacity:1}}.flow-line-active{stroke-dasharray:10 6;filter:drop-shadow(0 0 3px #4a90d999);animation:1.8s linear infinite flow-line-active}@keyframes flow-line-active{0%{stroke-dashoffset:0}to{stroke-dashoffset:-16px}}.rule-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:12px;margin-bottom:12px;padding:14px;display:flex;box-shadow:0 1px 3px #0f172a08}.theme-dark .rule-card{box-shadow:none;background:#ffffff05;border-color:#374151}.rule-card-label{color:#64748b;text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600}.theme-dark .rule-card-label{color:#94a3b8}.selection-taskbar{z-index:1000;-webkit-backdrop-filter:blur(12px);color:#f8fafc;background:#0f172ad9;border:1px solid #6366f159;border-radius:40px;align-items:center;gap:16px;padding:10px 18px;animation:.3s cubic-bezier(.16,1,.3,1) forwards taskbar-slide-up;display:flex;position:absolute;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #00000080,inset 0 1px #ffffff0d}@keyframes taskbar-slide-up{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}.selection-taskbar-info{color:#cbd5e1;border-right:1px solid #ffffff1a;align-items:center;gap:8px;padding-right:16px;font-size:13px;font-weight:500;display:flex}.selection-taskbar-count{color:#fff;background:#6366f1;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;font-weight:700;display:inline-flex}.selection-taskbar-delete{color:#f87171;cursor:pointer;background:#ef44441a;border:1px solid #ef444433;border-radius:20px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:600;transition:all .2s;display:flex}.selection-taskbar-delete:hover{color:#fff;background:#ef4444;border-color:#ef4444;box-shadow:0 0 12px #ef444466}.selection-taskbar-compare{color:#c084fc;cursor:pointer;background:#8b5cf61a;border:1px solid #8b5cf633;border-radius:20px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:600;transition:all .2s;display:flex}.selection-taskbar-compare:hover:not(:disabled){color:#fff;background:#8b5cf6;border-color:#8b5cf6;box-shadow:0 0 12px #8b5cf666}.selection-taskbar-compare:disabled{color:#475569;cursor:not-allowed;background:#ffffff05;border-color:#ffffff0d}.selection-taskbar-cancel{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 8px;font-size:12px;transition:color .2s}.selection-taskbar-cancel:hover{color:#f1f5f9}.export-btn,.import-btn{color:#334155;cursor:pointer;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:5px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:600;transition:all .15s ease-in-out;display:inline-flex}.export-btn:hover,.import-btn:hover{color:#1e293b;background:#e2e8f0;border-color:#94a3b8}.theme-dark .export-btn,.theme-dark .import-btn{color:#e5e7eb;background:#1f2937;border-color:#374151}.theme-dark .export-btn:hover,.theme-dark .import-btn:hover{color:#fff;background:#374151;border-color:#4b5563}.history-flow-path-scroll{-ms-overflow-style:none;scrollbar-width:none}.history-flow-path-scroll::-webkit-scrollbar{display:none}.history-run-card.selected{transition:all .2s cubic-bezier(.4,0,.2,1);background:#f8fafc!important;border:5px solid #6366f1!important;border-left-width:3px!important;box-shadow:0 4px 15px #6366f126,0 0 0 1px #6366f11a!important}.history-run-card.selected .history-steps{background:#6366f10a!important}.theme-dark .history-run-card{background:#1a1b26;border-color:#24283b}.theme-dark .history-run-header{color:#c0caf5;background:#1f2335}.theme-dark .history-run-header:hover{background:#24283b}.theme-dark .history-steps{background:#1a1b26;border-top-color:#24283b}.theme-dark .history-step-row{background:#1f2335;border-color:#24283b}.theme-dark .history-run-card.selected{background:#242b4d!important;border-color:#7aa2f7!important;box-shadow:0 4px 20px #7aa2f72e,0 0 0 1px #7aa2f726!important}.theme-dark .history-run-card.selected .history-run-header{color:#7aa2f7;background:#7aa2f71f!important}.theme-dark .history-run-card.selected .history-steps{background:#7aa2f70d!important}.chat-panel{z-index:10;background:#fff;border-left:1px solid #e2e8f0;flex-direction:column;width:320px;height:100%;transition:all .3s;display:flex;box-shadow:-4px 0 16px #0000000d}.chat-header{color:#1e293b;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.chat-header h3{color:inherit;margin:0;font-size:16px;font-weight:700}.chat-messages{flex-direction:column;flex:1;gap:12px;padding:20px;display:flex;overflow-y:auto}.chat-bubble{color:#0f172a;white-space:pre-wrap;word-break:break-word;background:#f1f5f9;border-radius:0 12px 12px;padding:8px 12px;font-size:13px;line-height:1.4}.chat-input-area{border-top:1px solid #e2e8f0;align-items:center;gap:8px;padding:16px 20px;display:flex}.chat-textarea{resize:none;color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:8px;outline:none;flex:1;height:36px;padding:8px 12px;font-size:13px}.chat-send-btn{color:#fff;cursor:pointer;background:#3b82f6;border:none;border-radius:8px;padding:8px 12px;font-size:13px;font-weight:600}.theme-dark .chat-panel{background:#111827;border-left-color:#1f2937}.theme-dark .chat-header{color:#e5e7eb;border-bottom-color:#1f2937}.theme-dark .chat-bubble{color:#e5e7eb;background:#1f2937}.theme-dark .chat-input-area{border-top-color:#1f2937}.theme-dark .chat-textarea{color:#e5e7eb;background:#1f2937;border-color:#374151}.chat-input-container{border-top:1px solid #e2e8f0}.theme-dark .chat-input-container{border-top-color:#1f2937}.typing-dots:after{content:"";animation:1.5s step-start infinite typingBlink}@keyframes typingBlink{0%{content:""}25%{content:" ."}50%{content:" .."}75%{content:" ..."}}:root{--bg-app:#f8fafc;--bg-header:linear-gradient(135deg, #fff 0%, #f1f5f9 100%);--text-header:#0f172a;--border-header:#cbd5e1;--bg-header-btn:#f1f5f9;--border-header-btn:#cbd5e1;--bg-header-btn-hover:#e2e8f0;--bg-sidebar:#fff;--bg-toolbar:#fff;--bg-card:#fff;--bg-card-hover:#f1f5f9;--border-color:#cbd5e1;--border-color-hover:#6366f1;--text-main:#0f172a;--text-muted:#475569;--text-white:#fff;--text-inverse:#fff;--accent-primary:#6366f1;--accent-secondary:#06b6d4;--bg-modal:#fff;--shadow-luminous:0 4px 20px #6366f10f;--shadow-card:0 10px 15px -3px #6366f10d, 0 4px 6px -2px #6366f108;--btn-run-bg:linear-gradient(135deg, #10b981 0%, #059669 100%);--btn-run-glow:#10b98159;--btn-save-bg:linear-gradient(135deg, #6366f1 0%, #4f46e5 100%);--btn-save-glow:#6366f159;--btn-history-bg:linear-gradient(135deg, #06b6d4 0%, #0891b2 100%);--btn-history-glow:#06b6d459;--btn-settings-bg:linear-gradient(135deg, #475569 0%, #334155 100%);--btn-settings-glow:#47556933;--btn-cancel-bg:#f1f5f9;--btn-cancel-hover:#e2e8f0;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", Consolas, Monaco, monospace}.theme-dark{--bg-app:#030712;--bg-header:linear-gradient(135deg, #090b16 0%, #03040b 100%);--text-header:#fff;--border-header:#6366f140;--bg-header-btn:#ffffff14;--border-header-btn:#ffffff26;--bg-header-btn-hover:#ffffff26;--bg-sidebar:#090a15;--bg-toolbar:#090a15;--bg-card:#0d1026d9;--bg-card-hover:#161c42f2;--border-color:#6366f140;--border-color-hover:#06b6d4;--text-main:#f1f5f9;--text-muted:#94a3b8;--text-white:#fff;--text-inverse:#030712;--accent-primary:#8b5cf6;--accent-secondary:#06b6d4;--bg-modal:#090a18;--shadow-luminous:0 0 25px #6366f133;--shadow-card:0 8px 30px #0000008c, 0 0 1px #6366f126;--btn-run-bg:linear-gradient(135deg, #10b981 0%, #047857 100%);--btn-run-glow:#10b9818c;--btn-save-bg:linear-gradient(135deg, #8b5cf6 0%, #6d28d9 100%);--btn-save-glow:#8b5cf68c;--btn-history-bg:linear-gradient(135deg, #06b6d4 0%, #0e7490 100%);--btn-history-glow:#06b6d48c;--btn-settings-bg:linear-gradient(135deg, #374151 0%, #1f2937 100%);--btn-settings-glow:#37415166;--btn-cancel-bg:#1f2937;--btn-cancel-hover:#374151}body,input,button,select,textarea,.modal,.sidebar,.header,.toolbar{font-family:var(--font-sans)!important}body{background:var(--bg-app)!important;color:var(--text-main)!important}.header{background:var(--bg-header)!important;color:var(--text-header)!important;border-bottom:1px solid var(--border-header)!important;box-shadow:var(--shadow-luminous)!important;flex-wrap:nowrap!important;align-items:center!important;height:48px!important;display:flex!important}.header button{background:var(--bg-header-btn)!important;color:var(--text-header)!important;border:1px solid var(--border-header-btn)!important;border-radius:6px!important;justify-content:center!important;align-items:center!important;width:32px!important;height:32px!important;padding:0!important;font-size:14px!important;display:inline-flex!important}.header button:hover{background:var(--bg-header-btn-hover)!important}.header-right span{color:var(--text-header)!important}.header-left svg{mix-blend-mode:normal!important}.sidebar{background:var(--bg-sidebar)!important;border-right:1px solid var(--border-color)!important;color:var(--text-main)!important}.sidebar h3{background:var(--bg-sidebar)!important;color:var(--text-muted)!important;border-bottom:1px solid var(--border-color)!important}.toolbar{background:var(--bg-toolbar)!important;border-bottom:1px solid var(--border-color)!important;flex-flow:row!important;align-items:center!important;height:48px!important;padding:0 16px!important;display:flex!important}.node-card{background:var(--bg-card)!important;border:1px solid var(--border-color)!important;box-shadow:var(--shadow-card)!important;transition:all .25s!important}.node-card:hover{transform:translateY(-1px);background:var(--bg-card-hover)!important;border-color:var(--border-color-hover)!important}.node-card .node-id{color:var(--text-main)!important}.node-card .node-url{color:var(--text-muted)!important}.canvas{background-color:var(--bg-app)!important}.run-btn{background:var(--btn-run-bg)!important;box-shadow:0 4px 14px var(--btn-run-glow)!important;color:#fff!important;white-space:nowrap!important;cursor:pointer!important;border:none!important;border-radius:8px!important;justify-content:center!important;align-items:center!important;gap:6px!important;height:32px!important;padding:0 16px!important;font-size:13px!important;font-weight:600!important;transition:all .2s cubic-bezier(.4,0,.2,1)!important;display:inline-flex!important}.run-btn:hover:not(:disabled){opacity:.95;transform:translateY(-1.5px)scale(1.02);box-shadow:0 6px 20px var(--btn-run-glow)!important}.save-btn{background:var(--btn-save-bg)!important;box-shadow:0 4px 14px var(--btn-save-glow)!important;color:#fff!important;white-space:nowrap!important;cursor:pointer!important;border:none!important;border-radius:8px!important;justify-content:center!important;align-items:center!important;gap:6px!important;height:32px!important;padding:0 16px!important;font-size:13px!important;font-weight:600!important;transition:all .2s cubic-bezier(.4,0,.2,1)!important;display:inline-flex!important}.save-btn:hover:not(:disabled){opacity:.95;transform:translateY(-1.5px)scale(1.02);box-shadow:0 6px 20px var(--btn-save-glow)!important}.history-btn{background:var(--btn-history-bg)!important;box-shadow:0 4px 14px var(--btn-history-glow)!important;color:#fff!important;white-space:nowrap!important;cursor:pointer!important;border:none!important;border-radius:8px!important;justify-content:center!important;align-items:center!important;gap:6px!important;height:32px!important;padding:0 16px!important;font-size:13px!important;font-weight:600!important;transition:all .2s cubic-bezier(.4,0,.2,1)!important;display:inline-flex!important}.history-btn:hover:not(:disabled){opacity:.95;transform:translateY(-1.5px)scale(1.02);box-shadow:0 6px 20px var(--btn-history-glow)!important}.settings-btn{background:var(--btn-settings-bg)!important;box-shadow:0 4px 12px var(--btn-settings-glow)!important;border-radius:8px!important;transition:all .2s cubic-bezier(.4,0,.2,1)!important}.settings-btn:hover{opacity:.95;transform:translateY(-1px);box-shadow:0 6px 16px var(--btn-settings-glow)!important}.flow-name-input{background:var(--bg-card)!important;color:var(--text-main)!important;border:1px solid var(--border-color)!important;border-radius:8px!important;height:32px!important;padding:0 12px!important;font-size:13px!important;transition:all .2s!important}.flow-name-input:focus{border-color:var(--accent-primary)!important;box-shadow:0 0 0 3px #6366f12e!important}.modal{background:var(--bg-modal)!important;border:1px solid var(--border-color)!important;box-shadow:var(--shadow-card)!important;color:var(--text-main)!important;border-radius:20px!important}.modal h3{color:var(--text-main)!important}.form-row label{color:var(--text-muted)!important}.form-row input[type=text],.form-row input:not([type]),.form-row input[type=password],.form-row input[type=email],.form-row input[type=number],.form-row input[type=url],.form-row textarea,.form-row select{background:var(--bg-card)!important;color:var(--text-main)!important;border:1px solid var(--border-color)!important;border-radius:8px!important}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:var(--accent-primary)!important;box-shadow:0 0 0 4px #6366f12e!important}.history-panel{background:var(--bg-sidebar)!important;border-left:1px solid var(--border-color)!important}.history-panel-header{background:var(--bg-header)!important;color:var(--text-header)!important;border-bottom:1px solid var(--border-color)!important}.history-drawer-close{color:var(--text-header)!important}.history-panel-body{background:var(--bg-app)!important}.history-run-card{background:var(--bg-card)!important;border:1px solid var(--border-color)!important;border-left:3px solid var(--border-color)!important;border-radius:8px!important}.history-run-header{background:var(--bg-card)!important;color:var(--text-main)!important}.history-run-header:hover{background:var(--bg-card-hover)!important}.history-run-card.selected{border:2px solid var(--accent-primary)!important;border-left:4px solid var(--accent-primary)!important;box-shadow:var(--shadow-luminous)!important}.history-run-card.selected .history-run-header{background:var(--bg-card-hover)!important}.history-steps{background:var(--bg-card)!important;border-top:1px solid var(--border-color)!important}.history-step-row{border-color:var(--border-color)!important;background:var(--bg-card-hover)!important}.history-step-header{color:var(--text-main)!important}.chat-panel{background:var(--bg-sidebar)!important;border-left:1px solid var(--border-color)!important}.chat-header{border-bottom:1px solid var(--border-color)!important;color:var(--text-main)!important}.chat-bubble{background:var(--bg-card-hover)!important;color:var(--text-main)!important;border:1px solid var(--border-color)!important}.chat-input-area,.chat-input-container{border-top:1px solid var(--border-color)!important}.chat-textarea{background:var(--bg-card)!important;color:var(--text-main)!important;border:1px solid var(--border-color)!important;border-radius:8px!important}.dnode-box{border:1px solid var(--border-color)!important;box-shadow:var(--shadow-card), inset 0 1px 0 #ffffff26!important;-webkit-backdrop-filter:blur(16px)!important;border-radius:20px!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important;overflow:hidden!important}.theme-dark .dnode-box{box-shadow:0 12px 36px #00000080,inset 0 1px #ffffff1f!important}.theme-light .dnode-box{box-shadow:0 10px 30px #6366f10a,inset 0 1px #ffffffb3!important}.dnode-box:hover{border-color:var(--border-color-hover)!important;box-shadow:var(--shadow-luminous), 0 18px 45px #6366f126, inset 0 1px 0 #ffffff40!important;transform:translateY(-3px)scale(1.015)!important}.dnode-title{border-bottom:1px solid var(--border-color)!important;letter-spacing:.3px!important;padding:14px 18px!important;font-size:13px!important;font-weight:750!important}.dnode-title.success{color:#10b981!important;background:#10b98114!important;border-bottom-color:#10b98133!important}.dnode-title.error{color:#f43f5e!important;background:#f43f5e14!important;border-bottom-color:#f43f5e33!important}.dnode-title.selected{border-top:3px solid var(--accent-primary)!important;border-bottom:1px solid var(--border-color)!important}.dnode-response-header{border-top:1px solid var(--border-color)!important;border-bottom:1px solid var(--border-color)!important;background:var(--bg-card)!important}.profile-card{background:var(--bg-card)!important;border-color:var(--border-color)!important;box-shadow:var(--shadow-card)!important}.profile-avatar-wrapper{background:var(--bg-card)!important}.profile-info h2{color:var(--text-main)!important}.profile-divider{background:var(--border-color)!important}.stat-label{color:var(--text-muted)!important}.stat-value{color:var(--text-main)!important}.user-plan-card{background:var(--bg-card)!important;border-color:var(--border-color)!important;box-shadow:var(--shadow-card)!important}.user-plan-title,.user-plan-label{color:var(--text-muted)!important}.user-plan-value{color:var(--text-main)!important}.profile-page-overlay{background:var(--bg-app)!important}.admin-table{border-collapse:collapse;width:100%;margin-top:16px}.admin-table th{text-align:left;text-transform:uppercase;color:var(--admin-subtext);border-bottom:2px solid var(--admin-border-line);padding:12px 16px;font-size:12px;font-weight:700}.admin-table td{color:var(--admin-text);border-bottom:1px solid var(--admin-border-line);padding:14px 16px;font-size:13px}.admin-table tr:hover{background:var(--admin-border-line)}
