@import"https://fonts.googleapis.com/css2?family=Courier+Prime:wght@400;700&display=swap";body{margin:0;font-family:Courier New,Courier,monospace;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0036d8}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.page{justify-content:start;align-items:start;padding:16px;overflow-y:auto;gap:16px;background-color:#222;color:#fff}@media (min-width: 1100px){.page{margin:0 100px}}@media (min-width: 1500px){.page{margin:0 300px}}.modal-content{color:#fff}.pane{background-color:#000;border:2px solid #ffffff;outline:4px solid #afafaf;padding:16px}button{background-color:transparent;color:#fff;border:2px solid #ffffff;padding:8px 16px;cursor:pointer;font-family:Courier New,Courier,monospace}button.selected{background-color:#ffbf00;color:#000}button:hover{border-color:#ffbf00;color:#ffbf00}.cancel-button{color:red}.confirm-button{color:green}input[type=text],input[type=password],input[type=number],select,textarea{background-color:#222;color:#aaf;border:2px solid #AAF;padding:8px;font-family:Courier New,Courier,monospace;font-size:16px;outline:none}input[type=text]::placeholder,input[type=password]::placeholder,input[type=number]::placeholder select::placeholder,textarea::placeholder{color:#aaf;opacity:.5}.app-tile{color:#0f0;width:200px;height:150px;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;font-family:Courier New,Courier,monospace;text-align:center}.app-tile:hover{border-color:#ffbf00}.app-tile-icon{font-size:50px;margin-bottom:8px;display:flex;justify-content:center;align-items:center;height:40px}.app-tile-icon img{object-fit:contain;filter:brightness(0) invert(1)}.app-tile-icon svg{stroke:currentColor}.app-tile-name{font-weight:700;margin-bottom:4px}.app-tile-description{font-size:12px}@media (max-width: 520px){.app-tile{width:100%}}.app-list{display:flex;flex-wrap:wrap;gap:16px;padding:20px;background-color:#121212}.bridge-restarting{background-color:#7c3333;color:#fff;padding:16px;text-align:center}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000000bf;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{max-height:80vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 0 0 4px #000000bf;position:relative}.modal-inner{overflow-y:auto;padding:20px;flex:1}.modal-close{position:absolute;top:8px;right:8px;background:transparent;border:none;color:#888;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;z-index:10;transition:color .2s}.modal-close:hover{color:#fff;border-color:transparent}.toggle-wrapper{display:inline-flex;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none;padding:4px 8px;border:2px solid transparent}.toggle-wrapper.action-main{flex:1;justify-content:center;background:#ffffff0d;border:1px solid rgba(255,255,255,.2)}.toggle-wrapper.disabled{cursor:not-allowed;opacity:.6}.toggle{position:relative;width:44px;height:22px;border:2px solid #ffffff;background-color:transparent;display:inline-flex;align-items:center;justify-content:center;transition:background-color .3s ease;flex-shrink:0}.toggle-wrapper .toggle-label{margin-left:8px}.toggle:before{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background-color:#fff;transition:left .3s ease,background-color .3s ease;z-index:1}.toggle.active{background-color:#3faf00}.toggle.active:before{left:24px;background-color:#fff}.toggle.loading:before{display:none}.toggle-loading-spinner{width:16px;height:16px;border:2px solid #ffffff;border-bottom-color:transparent;border-radius:50%;animation:toggle-spin .8s linear infinite;z-index:2}@keyframes toggle-spin{to{transform:rotate(360deg)}}.toggle-label{color:#fff}.rerun-modal-content{max-width:800px;width:90%;background-color:#000;border:2px solid #fff;box-shadow:0 0 20px #fff3}.rerun-modal-header{padding:16px 20px;border-bottom:2px solid #333;margin-bottom:20px}.rerun-modal-title{margin:0;font-size:20px;color:#ffbf00;font-weight:700;letter-spacing:1px}.rerun-modal-body{padding:0 20px 20px}.rerun-section{margin-bottom:24px}.rerun-section-title{font-size:14px;color:#aaf;border-bottom:1px solid #333;padding-bottom:4px;margin-bottom:12px;text-transform:uppercase;letter-spacing:2px;font-weight:700}.rerun-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.rerun-form-row{display:flex;flex-direction:column;gap:6px}.rerun-form-row label{font-size:11px;color:#888;text-transform:uppercase}.rerun-form-row input,.rerun-form-row select,.rerun-form-row textarea{background-color:#111;border:1px solid #444;color:#fff;padding:8px 12px;font-family:inherit;font-size:14px}.rerun-form-row input:focus{border-color:#ffbf00;outline:none}.step-selection-list{display:flex;flex-direction:column;gap:8px;max-height:250px;overflow-y:auto;border:1px solid #333;padding:10px;background-color:#050505}.step-selection-item{display:flex;align-items:center;gap:10px;padding:8px;border:1px solid #222;cursor:pointer;transition:background-color .2s}.step-selection-item:hover{background-color:#1a1a1a}.step-selection-item.selected{background-color:#ffbf001a;border-color:#ffbf00}.step-info{display:flex;flex-direction:column}.step-name{font-size:13px;font-weight:700;color:#fff}.step-id{font-size:10px;color:#666}.rerun-modal-footer{display:flex;justify-content:flex-end;gap:12px;margin-top:20px;border-top:1px solid #333;padding-top:20px}.rerun-btn{padding:10px 24px;font-size:14px;font-weight:700;text-transform:uppercase}.rerun-btn-primary{background-color:#000;color:#0f0;border-color:#0f0}.rerun-btn-primary:hover:not(:disabled){background-color:#0f0;color:#000}.rerun-btn-secondary{color:#888;border-color:#444}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;color:#888}.error-message{color:#f87171;background-color:#f871711a;padding:12px;border:1px solid rgba(248,113,113,.3);margin-bottom:16px;font-size:13px}.workflow-pane{position:relative;margin-bottom:20px;border:2px solid #ffffff;background-color:#000;height:80vh;overflow-y:auto;outline:4px solid #afafaf}.workflow-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:16px;padding:16px}.workflow-pane h2{margin:0;font-family:Courier New,Courier,monospace}.navbar{display:flex;justify-content:space-between;align-items:center;background-color:#001f3f;color:#0f0;padding:16px;font-family:Courier New,Courier,monospace;font-size:20px;border-bottom:2px solid #ffffff}.navbar-left{display:flex;align-items:center}.navbar-title{color:#0f0;text-decoration:none;font-weight:700;margin-right:8px;display:flex;align-items:center}.navbar-home-icon{display:none;margin-right:8px}.navbar-path-container{display:flex;align-items:center}.navbar-separator{font-size:24px;color:#fff}.navbar-title:hover{color:#ffbf00}.navbar-path{font-size:24px;color:#fff}@media screen and (max-width: 600px){.has-app-name .navbar-title-text{display:none}.has-app-name .navbar-home-icon{display:block}.has-app-name .navbar-separator{display:none}.has-app-name .navbar-path{font-size:18px}.navbar{padding:12px;font-size:16px}}.info-pane h1{margin-bottom:20px;font-size:24px;color:#eee}.info-pane p{margin-bottom:30px;color:#ddd;font-size:16px}.login-form h2{margin-bottom:20px;font-size:22px;color:#ccc}label{display:block;margin:15px 0;font-size:14px;color:#ccc;text-align:left}.login-input{width:90%;margin-top:5px}.error-message{color:#d9534f;margin:15px 0;font-size:14px}.login-buttons{display:flex;justify-content:space-between;margin-top:20px}.breadcrumb-link{color:#0f0;text-decoration:none}.file-item{-webkit-user-select:none;user-select:none}.selected{background-color:#ffffff80}.toast-container{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:1000;display:flex;flex-direction:column;align-items:center}.toast{background-color:#333;color:#fff;padding:12px 24px;border-radius:4px;margin-bottom:10px;opacity:1;transition:opacity .5s ease-in-out}.toast.hidden{opacity:0}.toast.failure,.toast.error{background-color:#f44336}.document-viewer-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.document-viewer-content{background-color:#fff;padding:0;margin:2rem;border-radius:8px;box-shadow:0 4px 16px #0000004d;position:relative;display:flex;flex-direction:column;max-width:80%;max-height:80%}.document-viewer-text-content{width:90%;max-width:1200px;height:85vh;max-height:85vh}.document-viewer-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #e0e0e0;background-color:#f5f5f5;border-radius:8px 8px 0 0}.document-viewer-filename{font-weight:500;color:#333;font-size:.95rem}.close-button{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.close-button:hover{background-color:#e0e0e0}.document-text-container{flex:1;overflow-y:auto;padding:1.5rem;background-color:#fafafa;border-radius:0 0 8px 8px}.document-text{white-space:pre-wrap;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;line-height:1.6;font-size:14px;color:#333}.document-code-wrapper{margin:0;padding:0;background:#f8f8f8;overflow:auto;border-radius:4px}.document-code-wrapper code{font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:14px;line-height:1.6;display:block;white-space:pre;background:transparent;padding:1rem}.document-text-container pre[class*=language-]{background:transparent;margin:0;padding:0}.document-text-container code[class*=language-]{background:transparent}.document-text-container::-webkit-scrollbar{width:8px}.document-text-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.document-text-container::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.document-text-container::-webkit-scrollbar-thumb:hover{background:#555}.document-image{max-width:100%;max-height:100%;display:block;margin:2rem auto;border-radius:4px;box-shadow:0 2px 8px #00000026}.loading-message{padding:3rem;text-align:center;color:#666}.error-message{color:#d32f2f;font-weight:500;padding:3rem;text-align:center}@media (max-width: 768px){.document-viewer-content{margin:1rem}.document-viewer-text-content{width:95%;height:90vh}.document-text-container{padding:1rem}.document-code-wrapper code,.document-text{font-size:13px}}.retro-download-notifier{position:fixed;bottom:0;left:0;right:0;padding:12px;text-align:center;font-family:Courier New,Courier,monospace;font-size:14px;font-weight:700;color:#fc0;background:linear-gradient(to right,#2d2d2d,#1a1a1a,#2d2d2d);border-top:2px solid #666666;animation:shimmer 2s infinite;transition:opacity .5s ease-in-out}@keyframes shimmer{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.retro-download-notifier.hidden{opacity:0;pointer-events:none}.mips-options-modal-button{width:100%}.error{color:red}.settings-row{display:flex;justify-content:space-between;padding:10px;background-color:#ffffff1a;margin:5px 0}.pipeline-grid{display:flex;flex-wrap:wrap;gap:16px;margin-top:24px}.pipeline-card{width:320px}.pipeline-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.pipeline-icon-info{display:flex;align-items:center;gap:12px}.pipeline-icon{font-size:24px}.pipeline-name{font-size:18px;font-weight:700;color:#fff;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}.pipeline-version{font-size:12px;color:#aaf;margin:0}.pipeline-mnemonic{font-size:10px;color:#ffbf00;background-color:#ffbf001a;border:1px solid rgba(255,191,0,.3);padding:1px 4px;border-radius:2px;font-family:monospace}.pipeline-status-badge{font-size:12px;padding:2px 6px;border:1px solid currentColor}.pipeline-status-active{color:#0f0;background-color:#00ff001a}.pipeline-status-inactive{color:#aaf;background-color:#aaaaff1a}.pipeline-description{font-size:14px;color:#ccc;margin-bottom:12px;height:40px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.pipeline-stats{display:flex;gap:16px;font-size:12px;color:#aaf;margin-bottom:16px}.pipeline-actions{display:flex;gap:8px}.pipeline-actions .retro-button{flex:0 0 auto;padding:4px 8px}.pipeline-actions .action-main{flex:1}.controls-bar{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;margin-bottom:24px}.search-filter-group{display:flex;gap:16px;flex:1}.input-with-icon{position:relative;display:flex;align-items:center}.input-with-icon svg{position:absolute;left:8px;color:#aaf;pointer-events:none}.input-with-icon input,.input-with-icon select{padding-left:32px}.loading-screen{min-height:400px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#aaf}.error-banner{background-color:#ff00001a;border:2px solid #FF0000;padding:12px;margin-bottom:24px;display:flex;align-items:center;gap:12px;color:#f77}.error-banner button{margin-left:auto;border:none;background:none;color:inherit;font-size:20px;cursor:pointer}.modal-form-row input,.modal-form-row textarea{width:100%;box-sizing:border-box}.empty-state{text-align:center;padding:48px 0;color:#aaf}.empty-state h3{color:#fff;margin-bottom:8px}:root{--bg-primary: #000000;--bg-secondary: #222222;--border-primary: #ffffff;--border-secondary: #afafaf;--text-primary: #ffffff;--text-secondary: #AAF;--text-muted: #888;--accent-yellow: #ffbf00;--accent-green: #00ff00;--accent-blue: #0036d8;--accent-purple: #a855f7;--accent-orange: #f97316;--accent-red: #ff4444;--dos-shadow: 4px 4px 0px 0px rgba(175, 175, 175, .5)}body.is-dragging-workflow *{-webkit-user-select:none!important;user-select:none!important;cursor:grabbing!important}.editor-root{display:flex;flex-direction:column;height:100vh;background-color:var(--bg-primary);color:var(--text-primary);font-family:Courier Prime,Courier New,Courier,monospace;overflow:hidden}.header{padding:16px 24px;border-bottom:2px solid var(--border-primary);background-color:var(--bg-primary);z-index:10}.header-content{display:flex;justify-content:space-between;align-items:center}.header-left{display:flex;align-items:center;gap:16px}.title{margin:0;font-size:24px;display:flex;align-items:center;gap:12px;color:var(--text-primary)}.title-icon{font-size:28px}.version-badge{font-size:12px;color:var(--text-secondary);border:1px solid var(--border-secondary);padding:2px 6px;margin-left:4px;vertical-align:middle;font-weight:400}.description{margin:4px 0 0;font-size:14px;color:var(--text-secondary)}.back-button{background:transparent;border:2px solid var(--border-primary);color:var(--text-primary);width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;box-sizing:border-box}.icon{width:20px;height:20px}.icon-small{width:16px;height:16px}.back-button:hover{background-color:#ffffff1a}.save-button,.config-button{background-color:var(--bg-primary);color:var(--text-primary);border:2px solid var(--border-primary);padding:8px 16px;display:flex;align-items:center;gap:8px;cursor:pointer;font-family:inherit;font-weight:700;text-transform:uppercase}.save-button:hover:not(:disabled),.config-button:hover{background-color:var(--text-primary);color:var(--bg-primary)}.modal-form-row{margin-bottom:16px}.modal-form-row label{display:block;font-size:14px;color:#aaf;margin-bottom:4px}.modal-form-row input,.modal-form-row textarea{width:100%;background-color:#000;border:1px solid var(--border-secondary);color:var(--text-primary);padding:10px 12px;font-family:inherit;font-size:14px;box-sizing:border-box}.checkbox-row{display:flex;align-items:center;gap:8px;margin-top:12px}.checkbox-row input[type=checkbox]{width:16px;height:16px;accent-color:#AAF}.modal-footer{display:flex;gap:12px;margin-top:24px}.retro-button{background-color:var(--bg-primary);color:var(--text-primary);border:2px solid var(--border-primary);padding:8px 16px;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-family:inherit;font-weight:700;text-transform:uppercase}.retro-button:hover:not(:disabled){background-color:var(--text-primary);color:var(--bg-primary)}.confirm-button{border-color:var(--accent-green);color:var(--accent-green)}.confirm-button:hover:not(:disabled){background-color:var(--accent-green);color:#000}.cancel-button{border-color:var(--accent-red);color:var(--accent-red)}.cancel-button:hover:not(:disabled){background-color:var(--accent-red);color:#000}.editor-body{display:flex;flex:1;overflow:hidden}.editor-sidebar{width:320px;border-right:2px solid var(--border-primary);background-color:var(--bg-primary);display:flex;flex-direction:column;overflow-x:hidden}.sidebar-tabs{display:flex;border-bottom:2px solid var(--border-primary);flex-shrink:0}.sidebar-tab{flex:1;background-color:var(--bg-primary);color:var(--text-secondary);border:none;border-right:2px solid var(--border-primary);padding:12px;font-family:inherit;font-weight:700;text-transform:uppercase;cursor:pointer;letter-spacing:2px;transition:all .2s}.sidebar-tab:last-child{border-right:none}.sidebar-tab:hover{background-color:#ffffff1a}.sidebar-tab.active{background-color:var(--text-primary);color:var(--bg-primary)}.sidebar-content{flex:1;overflow-y:auto;overflow-x:hidden}.editor-workspace{flex:1;background-color:var(--bg-primary);overflow-y:auto;padding:24px;display:flex;flex-direction:column}.toolbox-container{padding:16px}.toolbox-section{margin-bottom:24px}.toolbox-section-title{font-size:14px;font-weight:700;color:var(--text-secondary);margin-bottom:12px;border-bottom:1px solid var(--border-secondary);padding-bottom:4px;letter-spacing:2px}.toolbox-items{display:flex;flex-direction:column;gap:8px}.toolbox-item{display:flex;align-items:center;gap:12px;padding:10px;background-color:var(--bg-secondary);border:1px solid var(--border-secondary);cursor:grab;transition:all .2s;-webkit-user-select:none;user-select:none}.toolbox-item:hover{border-color:var(--border-primary);background-color:#333}.toolbox-item.is-dragging{opacity:.5}.toolbox-item-icon{color:var(--text-primary);display:flex;align-items:center}.toolbox-item-label{flex:1;font-size:12px;text-transform:uppercase;font-weight:700}.toolbox-item-drag-handle{color:var(--text-muted)}.execution-parameters-container{padding:16px}.section-title{font-size:14px;font-weight:700;color:var(--text-secondary);margin-bottom:16px;letter-spacing:2px}.parameters-list{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.parameter-item{background-color:var(--bg-secondary);border:1px solid var(--border-secondary);padding:8px}.parameter-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.parameter-key{display:flex;align-items:center;gap:6px;font-weight:700;font-size:12px;color:var(--accent-yellow);flex:1}.parameter-key-input{background:transparent;border:none;border-bottom:1px solid transparent;color:var(--accent-yellow);font-family:inherit;font-size:12px;font-weight:700;padding:0;width:100%;outline:none;transition:all .2s}.parameter-key-input:focus{border-bottom-color:var(--accent-yellow);background:#ffbf001a}.parameter-type-badge{display:flex;align-items:center;gap:4px;font-size:10px;color:var(--text-secondary)}.parameter-type-select{background:transparent;border:none;color:var(--text-secondary);font-family:inherit;font-size:10px;padding:0;cursor:pointer;outline:none;appearance:none;-moz-appearance:none;-webkit-appearance:none}.parameter-type-select:hover{color:var(--text-primary)}.parameter-type-select:focus{background:#ffffff1a}.parameter-input-wrapper{display:flex;gap:8px}.parameter-input{flex:1;background:#000;border:1px solid var(--border-secondary);color:var(--text-primary);padding:4px 8px;font-family:inherit;font-size:12px}.parameter-remove-btn{background:transparent;border:1px solid var(--accent-red);color:var(--accent-red);padding:4px;cursor:pointer}.parameter-remove-btn:hover{background:var(--accent-red);color:#000}.add-parameter-form .form-row{display:flex;gap:4px;flex-wrap:wrap}.new-param-input{flex:1;min-width:100px;background:#000;border:1px solid var(--border-primary);color:var(--text-primary);padding:6px 10px;font-family:inherit;font-size:12px}.new-param-type-select{background:#000;border:1px solid var(--border-primary);color:var(--text-primary);padding:6px;font-family:inherit;font-size:10px;max-width:100px}.add-param-btn{background:var(--bg-primary);border:1px solid var(--border-primary);color:var(--text-primary);padding:6px;cursor:pointer}.add-param-btn:hover:not(:disabled){background:var(--text-primary);color:var(--bg-primary)}.workflow-canvas-container{flex:1;display:flex;flex-direction:column;border:2px solid var(--border-primary);background-color:#050505;padding:20px;position:relative;box-shadow:var(--dos-shadow)}.canvas-header{margin-bottom:24px;border-bottom:2px solid var(--border-primary);padding-bottom:8px}.canvas-title{margin:0;font-size:18px;font-weight:700;letter-spacing:4px}.workflow-items-list{display:flex;flex-direction:column}.workflow-item-container{position:relative}.workflow-item-container.is-dragging{opacity:.2}.workflow-item-container.is-ghost{pointer-events:none}.is-ghost .workflow-node{opacity:.4;border-style:dotted;box-shadow:none;background-color:transparent}.is-ghost .workflow-node:before,.is-ghost .workflow-node:after{display:none}.workflow-placeholder{margin-bottom:4px;padding:0;border:1px dashed transparent;background-color:transparent;min-height:4px;display:flex;align-items:center;justify-content:center;position:relative;-webkit-user-select:none;user-select:none;transition:all .2s ease}body.is-dragging-workflow .workflow-placeholder{padding:12px;border:2px dashed var(--border-secondary);background-color:#ffffff0d;min-height:50px}.workflow-placeholder.is-over{border-color:var(--accent-yellow)!important;background-color:#ffbf001a!important}.workflow-placeholder .placeholder-content{display:none}body.is-dragging-workflow .workflow-placeholder .placeholder-content{display:block;font-size:10px;color:var(--text-muted);font-weight:700;letter-spacing:2px}.canvas-empty-state{flex:1;display:flex;align-items:center;justify-content:center;border:2px dashed var(--border-secondary);margin-top:20px;min-height:200px}.empty-text{color:var(--text-muted);font-weight:700;font-size:14px}.workflow-node-wrapper,.workflow-group-wrapper{position:relative;margin-bottom:4px}.workflow-node{display:flex;align-items:center;gap:12px;padding:12px;background-color:var(--bg-primary);border:2px solid var(--border-primary);min-height:50px;transition:all .1s;position:relative;overflow:hidden;-webkit-user-select:none;user-select:none}.workflow-node:before{content:"";position:absolute;top:0;left:0;width:100%;height:1px;background-color:#fff6;pointer-events:none}.workflow-node:after{content:"";position:absolute;top:0;left:0;width:1px;height:100%;background-color:#fff6;pointer-events:none}.workflow-node:hover{box-shadow:2px 2px 0 0 var(--border-primary);transform:translate(-1px,-1px)}.node-drag-handle{cursor:grab;color:var(--text-muted);display:flex;align-items:center}.node-icon-wrapper{width:32px;height:32px;background-color:var(--bg-secondary);border:1px solid var(--border-secondary);display:flex;align-items:center;justify-content:center;color:var(--text-primary)}.node-content{flex:1;min-width:0}.node-type-label{font-size:10px;color:var(--text-secondary);text-transform:uppercase;font-weight:700;margin-bottom:2px}.node-title-label{font-size:14px;font-weight:700;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.node-actions{display:flex;align-items:center;gap:8px}.node-action-btn{background:transparent;border:1px solid var(--text-secondary);color:var(--text-secondary);font-size:10px;padding:4px 8px;cursor:pointer;text-transform:uppercase;font-weight:700;display:flex;align-items:center;gap:4px}.node-action-btn:hover{background:var(--text-secondary);color:#000}.node-delete-button{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:4px}.node-delete-button:hover{color:var(--accent-red)}.node-async-badge{color:var(--accent-yellow);display:flex;align-items:center}.node-create-instance,.node-start-dormant,.node-webhook{border-color:var(--accent-blue)}.node-jump{border-color:var(--accent-yellow);border-style:dashed}.node-calculate{border-color:var(--text-primary)}.node-complete-workflow{border-color:var(--accent-green)}.node-abort-workflow{border-color:var(--accent-red)}.node-send-notification{border-color:var(--accent-purple)}.node-if,.node-if-branch,.node-else-if-branch,.node-else-branch{border-color:var(--accent-orange)}.node-parallel,.node-parallel-branch{border-color:var(--accent-blue)}.node-loop{border-color:var(--accent-purple)}.hierarchy-lines{position:absolute;left:-32px;top:0;bottom:0;pointer-events:none}.hierarchy-line-segment{position:absolute;width:2px;top:0;bottom:0;background-color:var(--border-secondary);opacity:.3}.hierarchy-arrow{position:absolute;top:0;bottom:-16px;display:flex;flex-direction:column;align-items:center}.arrow-stem{width:2px;height:16px;background-color:var(--border-secondary);opacity:.3}.arrow-head{width:8px;height:8px;border-right:2px solid var(--border-secondary);border-bottom:2px solid var(--border-secondary);transform:rotate(45deg);opacity:.3;margin-top:-4px}.is-branch{margin-top:0}.branch-node{background-color:#ff73160d}.group-children{position:relative;display:flex;flex-direction:column}@keyframes pop-in{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.is-new{animation:pop-in .3s ease-out}.step-config-modal{max-width:800px;width:90%;background-color:var(--bg-primary);border:2px solid var(--border-primary);box-shadow:8px 8px #fff3}.modal-header{padding:16px 24px;border-bottom:2px solid var(--border-primary);background-color:var(--bg-secondary)}.modal-title{margin:0;font-size:18px;font-weight:700;letter-spacing:2px;color:var(--accent-yellow)}.modal-body{padding:24px;max-height:70vh;overflow-y:auto}.form-sections{display:flex;flex-direction:column;gap:32px}.form-section{display:flex;flex-direction:column;gap:16px}.form-section .section-title{font-size:14px;font-weight:700;color:var(--text-secondary);margin:0;border-bottom:1px solid var(--border-secondary);padding-bottom:8px;text-transform:uppercase;letter-spacing:2px}.form-group{display:flex;flex-direction:column;gap:8px}.form-label{font-size:12px;font-weight:700;color:var(--text-primary);text-transform:uppercase}.form-input{background-color:#000;border:1px solid var(--border-secondary);color:var(--text-primary);padding:10px 12px;font-family:inherit;font-size:14px;width:100%;box-sizing:border-box}.form-input:focus{outline:none;border-color:var(--accent-yellow);box-shadow:0 0 0 2px #ffbf0033}select.form-input{cursor:pointer}textarea.form-input{resize:vertical;min-height:80px}.modal-footer{padding:16px 24px;border-top:2px solid var(--border-primary);background-color:var(--bg-secondary);display:flex;justify-content:flex-end;gap:12px}.btn{padding:10px 20px;font-family:inherit;font-weight:700;text-transform:uppercase;cursor:pointer;border:2px solid var(--border-primary);transition:all .2s}.btn-primary{background-color:var(--bg-primary);color:var(--text-primary)}.btn-primary:hover{background-color:var(--text-primary);color:var(--bg-primary)}.btn-secondary{background-color:transparent;color:var(--text-muted);border-color:var(--border-secondary)}.btn-secondary:hover{background-color:#ffffff1a;color:var(--text-primary)}.parameter-mapping-list{border:1px solid var(--border-secondary);padding:16px;background-color:#050505;display:flex;flex-direction:column;gap:16px;margin-top:4px}.parameter-mapping-item{display:flex;flex-direction:column;gap:6px}.parameter-mapping-label{font-size:11px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px}.wildcard-input-container{position:relative;width:100%}.wildcard-input-backdrop{position:absolute;top:-1px;left:-3px;right:0;bottom:0;padding:10px 12px;font-family:Courier Prime,Courier New,Courier,monospace!important;font-size:16px;line-height:1.5!important;letter-spacing:normal!important;white-space:pre-wrap;word-wrap:break-word;color:var(--text-primary);pointer-events:none;background-color:#000;border:1px solid transparent;overflow:hidden;box-sizing:border-box}.wildcard-input-backdrop.is-textarea{min-height:80px;scrollbar-gutter:stable}.wildcard-real-input{position:relative;background-color:transparent!important;color:transparent!important;caret-color:var(--text-primary);z-index:1;font-family:Courier Prime,Courier New,Courier,monospace!important;font-size:16px;line-height:1.5!important;letter-spacing:normal!important;box-sizing:border-box;scrollbar-gutter:stable}.wildcard-real-input::placeholder{color:#444}.wildcard-highlight-valid{color:var(--accent-green)!important;font-weight:400!important}.wildcard-highlight-invalid{color:var(--accent-red)!important;font-weight:400!important;text-decoration:underline wavy var(--accent-red)}.drag-overlay-item{opacity:.8;pointer-events:none;z-index:1000}.log-viewer{min-height:100vh;background-color:#000;color:#4ade80;font-family:Courier New,monospace;padding:1rem}.loading-container{text-align:center}.loading-title{font-size:1.25rem;margin-bottom:1rem}.loading-spinner{animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.error-viewer{color:#f87171}.error-container{border:1px solid #f87171;padding:1rem}.error-title{font-size:1.25rem;margin-bottom:.5rem}.error-message{margin:0}.header{margin-bottom:1.5rem;border:1px solid #4ade80;padding:.75rem}.header-title{font-size:1.25rem;margin-bottom:.5rem}.header-info{font-size:.875rem}.header-info>div{margin-bottom:.25rem}.status-indicator{color:#fbbf24}.no-logs{border:1px solid #4ade80;padding:1rem}.no-logs-message{color:#fbbf24}.terminals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(600px,1fr));gap:1.5rem}.terminal{border:1px solid #4ade80}.terminal-header{background-color:#4ade80;color:#000;padding:.25rem .75rem;font-size:.875rem;font-weight:700}.terminal-content{height:24rem;overflow-y:auto;padding:.75rem;background-color:#000}.log-entries{display:flex;flex-direction:column;gap:.25rem}.log-entry{font-size:.875rem;display:flex;align-items:flex-start;flex-wrap:wrap}.log-timestamp{color:#22d3ee;margin-right:.5rem}.log-step{color:#fbbf24;margin:0 .5rem}.log-message{color:#fff;flex:1;word-break:break-word}.terminal-footer{background-color:#4ade80;color:#000;padding:.25rem .75rem;font-size:.75rem}.status-bar{position:fixed;bottom:0;left:0;right:0;background-color:#4ade80;color:#000;padding:.25rem 1rem;font-size:.875rem;font-weight:700;z-index:1000}@media (max-width: 768px){.terminals-grid{grid-template-columns:1fr}.log-viewer{padding:.5rem .5rem 3rem}.terminal-content{height:20rem}.log-entry{flex-direction:column;gap:.25rem}.log-timestamp,.log-step{margin:0}}.terminal-content::-webkit-scrollbar{width:8px}.terminal-content::-webkit-scrollbar-track{background:#1a1a1a}.terminal-content::-webkit-scrollbar-thumb{background:#4ade80;border-radius:4px}.terminal-content::-webkit-scrollbar-thumb:hover{background:#22c55e}.workflow-console-page{display:flex;flex-direction:column;height:100vh;background-color:#0a0a0a;color:#fff;font-family:Courier New,Courier,monospace}.console-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:2px solid #333;background-color:#111}.header-left{display:flex;align-items:center;gap:20px}.menu-toggle{display:none}.console-title{margin:0;font-size:18px;font-weight:700;letter-spacing:1px;display:flex;align-items:center;color:#0f0;overflow:hidden}.icon-button{width:40px;height:40px;padding:0}.status-badge{font-size:12px;font-weight:700;padding:4px 12px;border-radius:4px;height:24px;display:flex;align-items:center;justify-content:center;width:fit-content;border:1px solid transparent;box-sizing:border-box}.status-live{color:#0f0;background-color:#00ff001a;border-color:#00ff004d}.status-stopped,.status-refreshing{color:#aaa;background-color:#aaaaaa1a;border-color:#aaaaaa4d}.console-body{display:flex;flex:1;overflow:hidden;position:relative}.console-sidebar{width:280px;background-color:#111;border-right:2px solid #333;display:flex;flex-direction:column;padding:20px 0}.sidebar-status-container{padding:0 20px 20px;border-bottom:1px solid #333;margin-bottom:20px}.sidebar-section{margin-bottom:32px}.sidebar-label{font-size:11px;color:#666;padding:0 20px;margin-bottom:12px;letter-spacing:2px}.sidebar-item{width:100%;display:flex;align-items:center;gap:12px;padding:10px 20px;background:transparent;border:none;color:#aaa;cursor:pointer;text-align:left;font-family:inherit;transition:all .2s}.sidebar-item:hover{background-color:#222;color:#fff}.sidebar-item.active{background-color:#333;color:#0f0;border-left:4px solid #00ff00}.sidebar-empty{padding:0 20px;font-size:12px;color:#444;font-style:italic}.console-main{flex:1;padding:20px;display:flex;flex-direction:column;overflow:hidden}.terminal-window{flex:1;background-color:#000;border:2px solid #333;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 10px 30px #00000080}.terminal-header{background-color:#222;padding:8px 16px;font-size:12px;color:#888;border-bottom:1px solid #333;display:flex;align-items:center;justify-content:space-between;gap:8px}.terminal-header-left{display:flex;align-items:center;gap:8px}.terminal-search-container{display:flex;align-items:center;gap:8px;background-color:#000;border:1px solid #333;padding:2px 8px;border-radius:4px;flex:0 0 250px}.terminal-search-container:focus-within{border-color:#0f0;box-shadow:0 0 5px #0f03}.search-icon{color:#444}.terminal-search-input{background:transparent;border:none;color:#0f0;font-family:inherit;font-size:11px;width:100%;outline:none}.terminal-search-input::placeholder{color:#333}.terminal-content{flex:1;padding:10px 20px;overflow-y:auto;font-size:14px;line-height:1.5;color:#d1d1d1;display:flex;flex-direction:column}.log-lines{flex:1}.log-line{white-space:pre-wrap;word-break:break-all;font-family:Courier New,Courier,monospace;padding:1px 0}.log-line-error{color:#f87171;background-color:#f871710d}.log-line-warning{color:#fbbf24;background-color:#fbbf240d}.log-highlight{background-color:#0f0;color:#000;font-weight:700;padding:0 2px}.terminal-loading,.terminal-empty{display:flex;justify-content:center;align-items:center;height:100%;color:#444;font-weight:700;letter-spacing:2px}.task-sidebar-item{padding:12px 20px}.task-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.task-item-content{display:flex;flex-direction:column;gap:4px;overflow:hidden}.task-log-name{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-meta{display:flex;justify-content:space-between;font-size:10px;color:#666}.task-progress{color:#888}.task-last-seen{font-style:italic}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.abort-button{background-color:#450a0a!important;color:#f87171!important;border-color:#7f1d1d!important;display:flex;align-items:center;gap:8px;font-weight:700}.abort-button:hover{background-color:#7f1d1d!important;color:#fff!important;box-shadow:0 0 15px #f8717166}@media screen and (max-width: 768px){.console-header{padding:12px 16px;gap:8px}.header-left{gap:8px;flex:1;min-width:0}.menu-toggle{display:flex;align-items:center;justify-content:center}.title-icon{display:none}.title-text{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.button-text{display:none}.abort-button{padding:8px;width:40px;height:40px;justify-content:center}.console-sidebar{position:absolute;top:0;left:0;bottom:0;z-index:1000;width:280px;transform:translate(-100%);transition:transform .3s ease;box-shadow:5px 0 15px #00000080}.console-sidebar.open{transform:translate(0)}.sidebar-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#000000b3;z-index:999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.console-main{padding:10px}.terminal-header{flex-direction:column;align-items:stretch;padding:10px;gap:10px}.terminal-header-left{font-size:11px}.terminal-search-container{flex:1 1 auto;width:100%}.terminal-content{padding:10px;font-size:12px}.log-line{padding:2px 0}}@media screen and (max-width: 480px){.console-title{max-width:150px}.header-right{flex-shrink:0}}
