.app{width:100%;height:100vh;margin:0;padding:0}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:1rem}.login-card{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;padding:3rem 2rem;max-width:400px;width:100%;animation:slideUp .5s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:2rem}.login-header h1{margin:0 0 .5rem;color:var(--color-text-primary);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight)}.login-header p{margin:0;color:var(--color-text-secondary);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal)}.login-form{display:flex;flex-direction:column;gap:1.5rem}.input-group{display:flex;flex-direction:column}.pin-input{padding:1rem;font-size:var(--font-size-xl);font-family:var(--font-family-base);text-align:center;border:2px solid var(--color-border);border-radius:8px;outline:none;transition:all .3s;letter-spacing:.5rem;font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.pin-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.pin-input:disabled{background-color:#f5f5f5;cursor:not-allowed}.error-message{padding:.75rem;background-color:#ffebee;border-left:4px solid #f44336;border-radius:4px;color:#c62828;font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);animation:shake .5s}.lockout-timer{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 15px #667eea4d}.timer-icon{font-size:var(--font-size-2xl);animation:pulse 2s infinite}.timer-text{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:#fff;font-variant-numeric:tabular-nums;letter-spacing:.05em}.attempts-warning{padding:.5rem .75rem;background-color:#fff3e0;border-left:4px solid #ff9800;border-radius:4px;color:#e65100;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-align:center}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.login-button{padding:1rem 2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);cursor:pointer;transition:all .3s;box-shadow:0 4px 15px #667eea66}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea80}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{background:#bdbdbd;cursor:not-allowed;box-shadow:none}.login-footer{margin-top:2rem;text-align:center}.security-note{margin:0;color:var(--color-text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);line-height:var(--line-height-relaxed)}@media(max-width:480px){.login-card{padding:2rem 1.5rem}.login-header h1{font-size:1.5rem}.pin-input{font-size:1rem;letter-spacing:.3rem}}.documentation-controls{display:flex;gap:12px;align-items:flex-end;margin-bottom:16px;flex-wrap:wrap}.documentation-actions{display:flex;gap:12px;align-items:center;margin-left:auto}[data-theme=dark] .documentation-actions svg{fill:#fff}[data-theme=dark] .documentation-actions svg path{stroke:#fff}.doc-icon-wrapper{display:flex;align-items:center;cursor:pointer}.documentation-content-card{margin-top:12px}.documentation-text{color:#dcdcdc;white-space:pre-wrap;overflow-x:auto}.md-renderer{width:100%}.md-toolbar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--canvas-color-border, #d0d7de);margin-bottom:0}.md-tabs{display:flex;gap:0}.md-tab{background:none;border:none;padding:8px 16px;cursor:pointer;font-size:14px;font-weight:500;color:var(--canvas-color-text-secondary, #656d76);border-bottom:2px solid transparent;transition:color .15s,border-color .15s}.md-tab:hover{color:var(--canvas-color-text, #1f2328)}.md-tab--active{color:var(--canvas-color-text, #1f2328);border-bottom-color:var(--canvas-color-brand, #cc0000)}[data-theme=dark] .md-tab{color:#8b949e}[data-theme=dark] .md-tab:hover,[data-theme=dark] .md-tab--active{color:#e6edf3}[data-theme=dark] .md-tab--active{border-bottom-color:var(--canvas-color-brand, #cc0000)}.md-toolbar-actions{display:flex;gap:8px;padding:4px 0}.md-btn{padding:4px 12px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;border:1px solid transparent;transition:background .15s}.md-btn--save{background:var(--canvas-color-brand, #cc0000);color:#fff;border-color:var(--canvas-color-brand, #cc0000)}.md-btn--save:hover{opacity:.9}.md-btn--cancel{background:transparent;color:var(--canvas-color-text-secondary, #656d76);border-color:var(--canvas-color-border, #d0d7de)}.md-btn--cancel:hover{background:var(--canvas-color-background-secondary, #f6f8fa)}[data-theme=dark] .md-btn--cancel{color:#8b949e;border-color:#30363d}[data-theme=dark] .md-btn--cancel:hover{background:#161b22}.md-editor{width:100%;min-height:400px;padding:16px;margin:0;border:1px solid var(--canvas-color-border, #d0d7de);border-top:none;border-radius:0 0 6px 6px;background:var(--canvas-color-background, #ffffff);color:var(--canvas-color-text, #1f2328);font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:13px;line-height:1.6;resize:vertical;box-sizing:border-box;outline:none}.md-editor:focus{border-color:var(--canvas-color-brand, #cc0000);box-shadow:0 0 0 3px #cc00001f}[data-theme=dark] .md-editor{background:#0d1117;color:#e6edf3;border-color:#30363d}[data-theme=dark] .md-editor:focus{border-color:var(--canvas-color-brand, #cc0000);box-shadow:0 0 0 3px #c003}.markdown-body{padding:24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";font-size:16px;line-height:1.6;word-wrap:break-word;color:var(--canvas-color-text, #1f2328)}[data-theme=dark] .markdown-body{color:#e6edf3}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{margin-top:24px;margin-bottom:16px;font-weight:600;line-height:1.25}.markdown-body h1{font-size:2em;padding-bottom:.3em;border-bottom:1px solid var(--canvas-color-border, #d0d7de)}[data-theme=dark] .markdown-body h1{border-bottom-color:#21262d}.markdown-body h2{font-size:1.5em;padding-bottom:.3em;border-bottom:1px solid var(--canvas-color-border, #d0d7de)}[data-theme=dark] .markdown-body h2{border-bottom-color:#21262d}.markdown-body h3{font-size:1.25em}.markdown-body h4{font-size:1em}.markdown-body p{margin-top:0;margin-bottom:16px}.markdown-body a{color:#0969da;text-decoration:none}.markdown-body a:hover{text-decoration:underline}[data-theme=dark] .markdown-body a{color:#58a6ff}.markdown-body ul,.markdown-body ol{margin-top:0;margin-bottom:16px;padding-left:2em}.markdown-body li+li{margin-top:.25em}.markdown-body code{padding:.2em .4em;margin:0;font-size:85%;white-space:break-spaces;background-color:#afb8c133;border-radius:6px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}[data-theme=dark] .markdown-body code{background-color:#6e768166}.markdown-body pre{margin-top:0;margin-bottom:16px;padding:16px;overflow:auto;font-size:85%;line-height:1.45;background-color:#f6f8fa;border-radius:6px}[data-theme=dark] .markdown-body pre{background-color:#161b22}.markdown-body pre code{padding:0;margin:0;font-size:100%;background-color:transparent;border-radius:0;white-space:pre}.markdown-body blockquote{margin:0 0 16px;padding:0 1em;color:#656d76;border-left:.25em solid var(--canvas-color-border, #d0d7de)}[data-theme=dark] .markdown-body blockquote{color:#8b949e;border-left-color:#30363d}.markdown-body table{border-collapse:collapse;border-spacing:0;margin-top:0;margin-bottom:16px;width:auto;max-width:100%;overflow:auto;display:block}.markdown-body table th,.markdown-body table td{padding:6px 13px;border:1px solid var(--canvas-color-border, #d0d7de)}.markdown-body table th{font-weight:600;background-color:#f6f8fa}[data-theme=dark] .markdown-body table th,[data-theme=dark] .markdown-body table td{border-color:#30363d}[data-theme=dark] .markdown-body table th{background-color:#161b22}.markdown-body table tr:nth-child(2n){background-color:#f6f8fa}[data-theme=dark] .markdown-body table tr:nth-child(2n){background-color:#161b22}.markdown-body hr{height:.25em;padding:0;margin:24px 0;background-color:var(--canvas-color-border, #d0d7de);border:0}[data-theme=dark] .markdown-body hr{background-color:#21262d}.markdown-body img{max-width:100%;box-sizing:border-box;border-radius:6px}.markdown-body input[type=checkbox]{margin:0 .2em .25em -1.4em;vertical-align:middle}.markdown-body>*:first-child{margin-top:0!important}.markdown-body>*:last-child{margin-bottom:0!important}.markdown-body p>a>img{display:inline;vertical-align:middle}.flow-panel-header{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--color-border, #e3e5e8);flex-wrap:wrap}.flow-tab-bar{display:flex;gap:4px;margin-left:auto}.flow-tab-btn{padding:6px 14px;font-size:13px;font-weight:500;border:1px solid var(--color-border, #d1d5db);border-radius:6px;background:var(--color-surface, #fff);color:var(--color-text, #333);cursor:pointer;transition:all .15s ease}.flow-tab-btn:hover{background:var(--color-surface-hover, #f0f0f0)}.flow-tab-btn.active{background:#ec111a;color:#fff;border-color:#ec111a}.flow-entry-points{padding:16px 20px}.flow-entry-table{width:100%;border-collapse:collapse;font-size:13px;table-layout:auto;overflow-wrap:anywhere;word-break:break-word}.flow-entry-table th{text-align:left;padding:8px 12px;border-bottom:2px solid var(--color-border, #e3e5e8);font-weight:600;color:var(--color-text-secondary, #8b949e);font-size:12px;text-transform:uppercase;letter-spacing:.5px}.flow-entry-table td{padding:8px 12px;border-bottom:1px solid var(--color-border, #f0f0f0);vertical-align:middle;word-break:break-word;white-space:normal;color:var(--color-text-primary, #e6edf3);font-family:inherit}.flow-entry-name{font-weight:600;white-space:normal;color:var(--color-text-primary, #e6edf3)}.flow-entry-name-cell{flex:1 1 auto;min-width:0;white-space:normal;word-break:break-word}.flow-no-shrink{flex-shrink:0}.flow-entry-type{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase;white-space:normal}.flow-entry-type.function{background:#eef2ff;color:#5c6ac4}.flow-entry-type.method{background:#f3f0ff;color:#7b61ff}.flow-entry-type.class{background:#fff4e6;color:#f49342}.flow-entry-file{color:var(--color-on-base);font-size:12px;font-family:Cascadia Code,Fira Code,monospace;white-space:normal;word-break:break-all}.flow-entry-score{font-weight:600;text-align:right;white-space:normal;color:var(--color-on-base)}.flow-entry-exported{color:#50b83c;font-size:11px;font-weight:600}.flow-entry-score-bar{display:inline-block;height:6px;border-radius:3px;background:#ec111a;margin-right:8px;vertical-align:middle;min-width:4px}.flow-entry-actions{display:flex;gap:4px;flex-wrap:wrap}.flow-entry-action-btn{padding:4px 10px;font-size:11px;border:1px solid var(--color-border, #d1d5db);border-radius:4px;background:var(--color-surface, #fff);color:var(--color-text, #333);cursor:pointer;transition:all .12s ease;white-space:nowrap}.flow-entry-action-btn:hover{background:#ec111a;color:#fff;border-color:#ec111a}.flow-ep-pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 20px;border-top:1px solid var(--color-border, #e3e5e8)}.flow-ep-page-btn{padding:6px 14px;font-size:12px;font-weight:500;border:1px solid var(--color-border, #d1d5db);border-radius:6px;background:var(--color-surface, #fff);color:var(--color-text, #333);cursor:pointer;transition:all .12s ease}.flow-ep-page-btn:hover:not(:disabled){background:#ec111a;color:#fff;border-color:#ec111a}.flow-ep-page-btn:disabled{opacity:.4;cursor:default}.flow-ep-page-info{font-size:12px;color:var(--color-text-secondary, #666);user-select:none;display:flex;align-items:center;gap:4px}.flow-ep-page-input{width:52px;padding:2px 4px;font-size:12px;text-align:center;border:1px solid #ccc;border-radius:4px;background:#fff;color:#333;outline:none}.flow-ep-page-input:focus{border-color:#ec111a;box-shadow:0 0 0 2px #ec111a26}.flow-ep-page-input::-webkit-inner-spin-button,.flow-ep-page-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.flow-ep-page-input{-moz-appearance:textfield;appearance:textfield}.flow-viewer{padding:16px 20px}.flow-viewer-controls{display:flex;gap:12px;align-items:center;margin-bottom:16px;flex-wrap:wrap}.flow-node-input{flex:1;min-width:200px;padding:8px 12px;font-size:13px;border:1px solid var(--color-border, #d1d5db);border-radius:6px;background:var(--color-surface, #fff);color:var(--color-text, #333);font-family:Cascadia Code,Fira Code,monospace}.flow-node-input::placeholder{color:var(--color-text-secondary, #999);font-family:inherit}.flow-run-btn{padding:8px 18px;font-size:13px;font-weight:600;border:none;border-radius:6px;background:#ec111a;color:#fff;cursor:pointer;transition:all .15s ease;white-space:nowrap}.flow-run-btn:hover:not(:disabled){background:#b30d14}.flow-run-btn:disabled{opacity:.5;cursor:not-allowed}.flow-type-toggle{display:flex;gap:2px;border:1px solid var(--color-border, #d1d5db);border-radius:6px;overflow:hidden}.flow-type-btn{padding:6px 14px;font-size:12px;font-weight:500;border:none;background:var(--color-surface, #fff);color:var(--color-text, #333);cursor:pointer;transition:all .12s ease}.flow-type-btn.active{background:#ec111a;color:#fff}.flow-path-controls{display:flex;gap:12px;align-items:center;margin-bottom:16px;flex-wrap:wrap}.flow-path-arrow{font-size:18px;color:var(--color-text-secondary, #999);font-weight:700}.flow-results{margin-top:16px}.flow-stats-row{display:flex;gap:16px;margin-bottom:16px;flex-wrap:wrap}.flow-stat-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;background:var(--color-surface-hover, #f0f0f0);font-size:12px;font-weight:600;color:var(--color-text-secondary, #666)}.flow-stat-chip .flow-stat-value{color:var(--color-text, #333)}.flow-diagram-container{border:1px solid var(--color-border, #e3e5e8);border-radius:8px;padding:20px;background:var(--color-surface, #fff);margin-top:12px}.flow-diagram-viewport{overflow:auto;max-height:600px;border:1px solid var(--color-border, #e3e5e8);border-radius:6px;padding:12px;background:var(--color-surface, #fafafa)}.flow-diagram-svg-wrapper{display:inline-block;transition:transform .15s ease}.flow-diagram-container svg{display:block}.flow-diagram-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;flex-wrap:wrap;gap:8px}.flow-diagram-header-right{display:flex;align-items:center;gap:10px}.flow-diagram-zoom-controls{display:flex;align-items:center;gap:4px;border:1px solid var(--color-border, #d1d5db);border-radius:6px;padding:2px 4px;background:var(--color-surface, #fff)}.flow-diagram-zoom-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;border-radius:4px;background:transparent;color:var(--color-text, #333);cursor:pointer;font-size:16px;font-weight:600;transition:background .12s ease}.flow-diagram-zoom-btn.flow-diagram-zoom-text{width:auto;padding:0 8px;font-size:11px;font-weight:500}.flow-diagram-zoom-btn:hover:not(:disabled){background:var(--color-surface-hover, #f0f0f0)}.flow-diagram-zoom-btn:disabled{opacity:.35;cursor:default}.flow-diagram-zoom-label{font-size:11px;font-weight:500;color:var(--color-text-secondary, #666);min-width:36px;text-align:center;user-select:none}.flow-diagram-label{font-size:13px;font-weight:600;color:var(--color-text-secondary, #666)}.flow-diagram-source{font-size:11px;padding:2px 8px;border-radius:4px;background:var(--color-surface-hover, #f0f0f0);color:var(--color-text-secondary, #888)}.flow-diagram-actions{display:flex;gap:8px;margin-top:12px}.flow-diagram-copy-btn{padding:6px 14px;font-size:12px;border:1px solid var(--color-border, #d1d5db);border-radius:6px;background:var(--color-surface, #fff);color:var(--color-text, #333);cursor:pointer;transition:all .12s ease}.flow-diagram-copy-btn:hover{background:var(--color-surface-hover, #f0f0f0)}.flow-diagram-download-btn{padding:6px 14px;font-size:12px;border:1px solid var(--color-border, #d1d5db);border-radius:6px;background:var(--color-surface, #fff);color:var(--color-text, #333);cursor:pointer;transition:all .12s ease}.flow-diagram-download-btn:hover{background:#ec111a;color:#fff;border-color:#ec111a}.flow-node-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px;margin-top:12px}.flow-node-card{padding:10px 14px;border:1px solid var(--color-border, #e3e5e8);border-radius:6px;background:var(--color-surface, #fff);cursor:pointer;transition:all .12s ease}.flow-node-card:hover{border-color:#ec111a;box-shadow:0 1px 4px #ec111a1f}.flow-node-card-name{font-weight:600;font-size:13px;margin-bottom:4px;word-break:break-all}.flow-node-card-meta{font-size:11px;color:var(--color-text-secondary, #888);display:flex;gap:8px;flex-wrap:wrap}.flow-node-card-depth{display:inline-block;padding:1px 6px;border-radius:3px;background:var(--color-surface-hover, #f0f0f0);font-size:10px;font-weight:600}.flow-path-result{margin-top:16px}.flow-path-chain{display:flex;align-items:center;gap:4px;flex-wrap:wrap;padding:12px 16px;border:1px solid var(--color-border, #e3e5e8);border-radius:8px;background:var(--color-surface, #fff);font-size:13px}.flow-path-step{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:4px;font-weight:500;white-space:nowrap}.flow-path-step.function,.flow-path-step.method{background:#eef2ff;color:#5c6ac4}.flow-path-step.class,.flow-path-step.interface{background:#fff4e6;color:#f49342}.flow-path-step.file{background:#e6f9e6;color:#3c8a2e}.flow-path-step.module,.flow-path-step.directory{background:#e6f7f7;color:#349b99}.flow-path-step-arrow{color:var(--color-text-secondary, #999);font-size:16px}.flow-path-unreachable{padding:16px;text-align:center;color:var(--color-text-secondary, #888);font-style:italic}.flow-loading{display:flex;align-items:center;justify-content:center;padding:40px;color:var(--color-text-secondary, #888);gap:8px}.flow-loading-spinner{width:20px;height:20px;border:2px solid var(--color-border, #e3e5e8);border-top-color:#ec111a;border-radius:50%;animation:flow-spin .8s linear infinite}@keyframes flow-spin{to{transform:rotate(360deg)}}.flow-empty{padding:40px;text-align:center;color:var(--color-text-secondary, #888);font-size:14px}.flow-error{margin:12px 0}[data-theme=dark] .flow-entry-type.function{background:#1e2740;color:#8b9aff}[data-theme=dark] .flow-entry-type.method{background:#2a1f4a;color:#a78bfa}[data-theme=dark] .flow-entry-type.class{background:#3a2a15;color:#f5a623}[data-theme=dark] .flow-node-input{background:#1e1e1e;border-color:var(--sg-card-border, #585c69);color:#e0e0e0}[data-theme=dark] .flow-diagram-container{background:#1e1e1e;border-color:var(--sg-card-border, #585c69)}[data-theme=dark] .flow-diagram-viewport,[data-theme=dark] .flow-diagram-zoom-controls{background:#2a2a2a;border-color:var(--sg-card-border, #585c69)}[data-theme=dark] .flow-diagram-zoom-btn{color:#e0e0e0}[data-theme=dark] .flow-diagram-zoom-btn:hover:not(:disabled){background:#3a3a3a}[data-theme=dark] .flow-diagram-zoom-label{color:#aaa}[data-theme=dark] .flow-path-chain{background:#1e1e1e;border-color:var(--sg-card-border, #585c69)}[data-theme=dark] .flow-ep-pagination{border-color:var(--sg-card-border, #585c69)}[data-theme=dark] .flow-ep-page-btn{background:#2a2a2a;border-color:var(--sg-card-border, #585c69);color:#e0e0e0}[data-theme=dark] .flow-ep-page-btn:hover:not(:disabled){background:#ec111a;color:#fff;border-color:#ec111a}[data-theme=dark] .flow-ep-page-info{color:#aaa}[data-theme=dark] .flow-ep-page-input{background:#2a2a2a;color:#ddd;border-color:var(--sg-card-border, #585c69)}[data-theme=dark] .flow-ep-page-input:focus{border-color:#ec111a;box-shadow:0 0 0 2px #ec111a40}.node-autocomplete{position:relative;flex:1;min-width:200px}.node-autocomplete .flow-node-input{width:100%;box-sizing:border-box}.node-autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;z-index:50;max-height:260px;overflow-y:auto;margin:2px 0 0;padding:4px 0;list-style:none;background:var(--color-surface, #fff);border:1px solid var(--color-border, #d0d5dd);border-radius:6px;box-shadow:0 4px 12px #0000001f}.node-autocomplete-option{display:flex;align-items:center;gap:8px;padding:6px 10px;cursor:pointer;font-size:12px;transition:background .1s}.node-autocomplete-option:hover,.node-autocomplete-option.highlighted{background:var(--color-surface-hover, #f0f3f8)}.node-ac-type{display:inline-block;padding:1px 6px;border-radius:3px;font-size:10px;font-weight:600;text-transform:uppercase;flex-shrink:0}.node-ac-type.function{background:#eef2ff;color:#5c6ac4}.node-ac-type.method{background:#f3f0ff;color:#7b61ff}.node-ac-type.class{background:#fff4e6;color:#f49342}.node-ac-type.interface{background:#e6f7f0;color:#2e7d5b}.node-ac-name{font-weight:600;color:var(--color-text, #333);white-space:nowrap}.node-ac-file{color:var(--color-text-secondary, #888);font-family:Cascadia Code,Fira Code,monospace;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}[data-theme=dark] .node-autocomplete-dropdown{background:var(--color-surface, #1e1e1e);border-color:var(--sg-card-border, #585c69)}[data-theme=dark] .node-autocomplete-option:hover,[data-theme=dark] .node-autocomplete-option.highlighted{background:var(--color-surface-hover, #2a2d32)}.job-history-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#00000073;backdrop-filter:blur(3px)}.job-history-panel{background:var(--color-base, #fff);border-radius:12px;box-shadow:0 8px 32px #0000002e;width:640px;max-width:92vw;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.job-history-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:1px solid var(--color-border, #e2e6ea)}.job-history-close{background:none;border:none;font-size:18px;cursor:pointer;color:var(--color-text-tertiary, #6c757d);padding:4px 8px;border-radius:4px;transition:background .15s}.job-history-close:hover{background:var(--color-hover, #f0f2f4)}.job-history-stats{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;gap:12px}.job-history-filter{font-family:var(--font-family-base, inherit);font-size:var(--font-size-sm, 13px);padding:4px 8px;border:1px solid var(--color-border, #ccc);border-radius:6px;background:var(--color-base, #fff);color:var(--color-text, #333);cursor:pointer}.job-history-error{margin:0 20px 8px;padding:8px 12px;background:#fce4e4;color:#c62828;border-radius:6px;font-size:var(--font-size-sm, 13px)}.job-history-bulk-bar{display:flex;align-items:center;gap:10px;padding:8px 20px;background:var(--color-surface, #f8f9fa);border-bottom:1px solid var(--color-border, #e2e6ea)}.job-history-bulk-delete{padding:5px 14px;font-size:var(--font-size-sm, 13px);font-family:var(--font-family-base, inherit);font-weight:var(--font-weight-semibold, 600);border:1px solid #ec111a;background:#fff;color:#ec111a;border-radius:6px;cursor:pointer;transition:all .15s}.job-history-bulk-delete:hover,.job-history-bulk-delete.confirm{background:#ec111a;color:#fff}.job-history-bulk-cancel{padding:5px 12px;font-size:var(--font-size-sm, 13px);font-family:var(--font-family-base, inherit);border:1px solid var(--color-border, #ccc);background:var(--color-base, #fff);color:var(--color-text, #333);border-radius:6px;cursor:pointer}.job-history-list{flex:1;overflow-y:auto;padding:8px 20px 16px;display:flex;flex-direction:column;gap:6px}.job-history-loading,.job-history-empty{text-align:center;padding:32px 0;color:var(--color-text-tertiary, #888);font-size:var(--font-size-base, 14px)}.job-history-select-all{padding:4px 0}.job-history-select-all label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:var(--font-size-sm, 13px)}.job-history-item{border-width:2px!important;transition:box-shadow .15s,border-color .15s}.job-history-item.selected{border:2px solid var(--scotia-red, #ec111a)!important;box-shadow:0 0 0 2px #ec111a22}.job-history-item.active{border:2px solid var(--scotia-red, #ec111a)!important;opacity:.85}.job-history-item-row{display:flex;align-items:center;gap:12px}.job-history-item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.job-history-repo{font-weight:var(--font-weight-semibold, 600);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.job-history-meta{color:var(--color-text-tertiary, #888);font-size:var(--font-size-xs, 12px)!important}.job-history-item-actions{display:flex;gap:6px;align-items:center;flex-shrink:0}.job-history-view-btn{padding:4px 12px;font-size:var(--font-size-sm, 13px);font-family:var(--font-family-base, inherit);font-weight:var(--font-weight-semibold, 600);background:#ec111a;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:opacity .15s}.job-history-view-btn:hover{opacity:.85}.job-history-delete-btn{padding:4px 8px;font-size:14px;background:none;border:1px solid var(--color-border, #ccc);color:var(--color-text-tertiary, #888);border-radius:6px;cursor:pointer;transition:all .15s}.job-history-delete-btn:hover{border-color:#ec111a;color:#ec111a}.job-history-pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 20px;border-top:1px solid var(--color-border, #e2e6ea)}.job-history-pagination button{padding:5px 14px;font-size:var(--font-size-sm, 13px);font-family:var(--font-family-base, inherit);border:1px solid var(--color-border, #ccc);background:var(--color-base, #fff);border-radius:6px;cursor:pointer;transition:background .15s}.job-history-pagination button:hover:not(:disabled){background:var(--color-hover, #f0f2f4)}.job-history-pagination button:disabled{opacity:.4;cursor:not-allowed}[data-theme=dark] .job-history-panel{background:var(--sg-surface, #232328);box-shadow:0 8px 32px #00000073}[data-theme=dark] .job-history-filter{background:var(--sg-card-body-bg, #0f0f0f);border-color:var(--sg-card-border, #585c69);color:#fff}[data-theme=dark] .job-history-error{background:#3a1c1c;color:#ff8a80}[data-theme=dark] .job-history-bulk-bar{background:var(--sg-card-header-bg, #232328)}[data-theme=dark] .job-history-close:hover{background:#2c2c2e}[data-theme=dark] .job-history-bulk-cancel{background:var(--sg-card-body-bg, #0f0f0f);border-color:var(--sg-card-border, #585c69);color:var(--sg-text-muted, #a9a9a9)}[data-theme=dark] .job-history-delete-btn{border-color:var(--sg-card-border, #585c69);color:var(--sg-text-muted, #a9a9a9)}[data-theme=dark] .job-history-pagination button{background:var(--sg-surface, #232328);border-color:var(--sg-card-border, #585c69);color:var(--sg-text-muted, #a9a9a9)}[data-theme=dark] .job-history-pagination button:hover:not(:disabled){background:#2c2c2e}
