:root{--bg:#0f1117;--bg-card:#1a1d27;--bg-hover:#22252f;--bg-input:#14161e;--border:#2a2d3a;--text:#e4e4e7;--text-muted:#71717a;--primary:#6366f1;--primary-hover:#4f46e5;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--info:#3b82f6;--radius:8px;--sidebar-w:220px}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;line-height:1.5}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}code{background:var(--bg-input);border-radius:4px;padding:2px 6px;font-size:.85em}.app-layout{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-w);background:var(--bg-card);border-right:1px solid var(--border);z-index:100;flex-direction:column;padding:16px 0;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar-header{border-bottom:1px solid var(--border);color:var(--primary);align-items:center;gap:10px;margin-bottom:8px;padding:0 16px 16px;display:flex}.sidebar-title{font-size:1.1rem;font-weight:700}.system-health-indicator{cursor:default;border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-left:auto;display:inline-block}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:8px;display:flex}.nav-link{border-radius:var(--radius);color:var(--text-muted);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:.9rem;text-decoration:none;transition:all .15s;display:flex}.nav-link:hover{background:var(--bg-hover);color:var(--text);text-decoration:none}.nav-link.active{background:var(--primary);color:#fff}.logout-btn{color:var(--text-muted);margin:8px}.logout-btn:hover{color:var(--danger)}.badge{background:var(--danger);color:#fff;border-radius:99px;margin-left:auto;padding:2px 7px;font-size:.7rem;font-weight:600}.main-content{margin-left:var(--sidebar-w);flex:1;min-width:0;max-width:1200px;padding:24px 32px;overflow-x:hidden}.loading,.loading-screen{justify-content:center;align-items:center;padding:80px 0;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:32px;height:32px;animation:.7s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinning{animation:1s linear infinite spin}.empty-state{text-align:center;color:var(--text-muted);padding:80px 20px}.empty-state h2{color:var(--text);margin-bottom:12px}.empty-state svg{opacity:.3;margin-bottom:16px}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.page-header h1{font-size:1.5rem;font-weight:700}.run-slug{color:var(--text-muted);margin:4px 0 0;font-family:monospace;font-size:13px}.phase-badge{text-transform:uppercase;background:var(--bg-hover);color:var(--text-muted);vertical-align:middle;border-radius:99px;margin-left:8px;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-block}.phase-badge.phase-done{color:var(--success);background:#064e3b}.phase-badge.phase-blocked,.phase-badge.phase-escalated,.phase-badge.phase-paused{color:var(--warning);background:#451a03}.phase-badge.phase-abandoned{color:var(--danger);background:#450a0a}.phase-badge.phase-human_review{color:var(--primary);background:#1e1b4b}.phase-badge-sm{background:var(--bg-hover);border-radius:4px;padding:2px 6px;font-size:.7rem}.timer-badge{font-variant-numeric:tabular-nums;color:var(--text-muted,#6b7280);vertical-align:middle;margin-left:8px;font-size:.85rem}.stats-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-bottom:24px;display:grid}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.stat-label{color:var(--text-muted);margin-bottom:4px;font-size:.8rem}.progress-container{margin-bottom:24px}.progress-bar{background:var(--border);border-radius:99px;height:8px;margin-bottom:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--primary), var(--success));border-radius:99px;height:100%;transition:width .5s}.progress-phases{justify-content:space-between;margin-bottom:4px;display:flex}.progress-phase .phase-dot{background:var(--border);border-radius:50%;width:8px;height:8px}.progress-phase.done .phase-dot{background:var(--success)}.progress-phase.current .phase-dot{background:var(--primary);box-shadow:0 0 6px var(--primary)}.progress-label{color:var(--text-muted);font-size:.85rem}.timeline{flex-direction:column;gap:0;display:flex}.timeline-item{align-items:flex-start;gap:12px;padding:8px 0;display:flex;position:relative}.timeline-item:not(:last-child):after{content:"";background:var(--border);width:2px;position:absolute;top:30px;bottom:-8px;left:8px}.timeline-done:not(:last-child):after{background:var(--success)}.timeline-current:not(:last-child):after{background:var(--primary)}.timeline-icon{color:var(--text-muted);flex-shrink:0}.timeline-done .timeline-icon{color:var(--success)}.timeline-current .timeline-icon{color:var(--primary)}.timeline-error .timeline-icon{color:var(--warning)}.timeline-content{align-items:center;gap:8px;display:flex}.timeline-phase{font-size:.85rem;font-weight:500}.timeline-active{color:var(--primary);background:#6366f126;border-radius:4px;padding:1px 8px;font-size:.75rem}.btn{border-radius:var(--radius);cursor:pointer;border:none;align-items:center;gap:6px;padding:8px 16px;font-size:.85rem;font-weight:500;transition:all .15s;display:inline-flex}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover)}.btn-success{background:var(--success);color:#fff}.btn-success:hover{opacity:.9}.btn-warning{background:var(--warning);color:#000}.btn-warning:hover{opacity:.9}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{opacity:.9}.btn-ghost{color:var(--text-muted);border:1px solid var(--border);background:0 0}.btn-ghost:hover{background:var(--bg-hover);color:var(--text)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-icon{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:4px}.btn-icon:hover{color:var(--text)}.actions-bar{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.alert{border-radius:var(--radius);gap:12px;margin-bottom:16px;padding:16px;display:flex}.alert-error{color:var(--danger);background:#ef44441a;border:1px solid #ef44444d}.alert-error p{color:var(--text-muted);margin-top:4px}.preview-link{margin-bottom:16px}.preview-link a{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:6px;padding:10px 16px;transition:all .15s;display:inline-flex}.preview-link a:hover{background:var(--bg-hover);text-decoration:none}.modal-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-header h2{font-size:1.1rem}.modal form{padding:20px}.form-group{margin-bottom:16px}.form-group label{color:var(--text-muted);margin-bottom:8px;font-size:.85rem;font-weight:500;display:block}.scope-options{flex-direction:column;gap:6px;display:flex}.scope-option{border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;flex-direction:column;gap:2px;padding:10px 12px;transition:all .15s;display:flex}.scope-option:hover{border-color:var(--primary)}.scope-option.selected{border-color:var(--primary);background:#6366f11a}.scope-option input{display:none}.scope-option strong{font-size:.85rem}.scope-option span{color:var(--text-muted);font-size:.75rem}textarea,input[type=email],input[type=password],select{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);width:100%;color:var(--text);outline:none;padding:10px 12px;font-family:inherit;font-size:.9rem;transition:border-color .15s}textarea:focus,input:focus,select:focus{border-color:var(--primary)}.modal-actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.login-page{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-form{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:16px;width:100%;max-width:380px;padding:32px;display:flex}.login-header{color:var(--primary);align-items:center;gap:12px;margin-bottom:8px;display:flex}.login-header h1{font-size:1.3rem}.login-form button[type=submit]{background:var(--primary);color:#fff;border-radius:var(--radius);cursor:pointer;border:none;padding:12px;font-size:.9rem;font-weight:500}.login-form button:hover{background:var(--primary-hover)}.error-msg{color:var(--danger);border-radius:var(--radius);background:#ef44441a;border:1px solid #ef44444d;padding:10px;font-size:.85rem}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);padding:10px 12px;font-size:.85rem}th{color:var(--text-muted);text-transform:uppercase;font-size:.8rem;font-weight:500}.clickable-row{cursor:pointer}.clickable-row:hover{background:var(--bg-hover)}.no-data{text-align:center;color:var(--text-muted);padding:24px}.runs-table,.logs-container{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.logs-filters{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:8px;padding:12px;display:flex}.logs-filters select{width:auto;min-width:140px}.logs-table{width:100%}.log-time{white-space:nowrap;color:var(--text-muted)}.status-badge{border-radius:4px;padding:2px 8px;font-size:.75rem;font-weight:500;display:inline-block}.status-badge.status-valid,.status-badge.status-completed,.status-badge.status-passed{color:var(--success);background:#10b98126}.status-badge.status-issues_found,.status-badge.status-warning{color:var(--warning);background:#f59e0b26}.status-badge.status-error,.status-badge.status-block{color:var(--danger);background:#ef444426}.notifications-list{flex-direction:column;display:flex}.notification-item{border-bottom:1px solid var(--border);cursor:pointer;align-items:flex-start;gap:12px;padding:14px 16px;transition:background .15s;display:flex}.notification-item:hover{background:var(--bg-hover)}.notification-item.unread{background:#6366f10d}.notif-icon{flex-shrink:0;margin-top:2px}.notif-icon.priority-info{color:var(--info)}.notif-icon.priority-high{color:var(--warning)}.notif-icon.priority-critical{color:var(--danger)}.notif-content{flex:1}.notif-message{font-size:.9rem}.notif-meta{color:var(--text-muted);font-size:.75rem}.unread-dot{background:var(--primary);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:6px}.charts-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px;display:grid}.chart-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.chart-card h3{color:var(--text-muted);margin-bottom:12px;font-size:.9rem}.report-selector{margin-bottom:16px}.report-selector select{max-width:400px}.report-iframe{border:1px solid var(--border);border-radius:var(--radius);background:#fff;width:100%;height:600px}.section{margin-bottom:32px}.section h2{border-bottom:1px solid var(--border);margin-bottom:16px;padding-bottom:8px;font-size:1.1rem}.settings-field{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 0;font-size:.9rem;display:flex}.settings-field label{color:var(--text-muted);font-weight:500}.settings-hint{color:var(--text-muted);margin-bottom:12px;font-size:.85rem}.masked{color:var(--text-muted);font-family:monospace;font-size:.8rem}.run-meta{color:var(--text-muted);gap:16px;font-size:.85rem;display:flex}@media (width<=768px){.sidebar{border-right:none;border-top:1px solid var(--border);z-index:200;flex-direction:row;width:100%;height:auto;padding:0;position:fixed;inset:auto 0 0}.sidebar-header{display:none}.sidebar-nav{flex-direction:row;flex:1;justify-content:space-around;gap:0;padding:4px}.nav-link{flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:8px 4px;font-size:.7rem}.nav-link.desktop-only,.sidebar-separator,.logout-btn{display:none}.main-content{margin-left:0;padding:16px 16px 72px}.stats-grid{grid-template-columns:repeat(3,1fr)}.charts-grid{grid-template-columns:1fr}}.mode-options{flex-direction:column;gap:8px;display:flex}.mode-option{border:1px solid var(--border);cursor:pointer;border-radius:8px;align-items:flex-start;gap:12px;padding:12px;transition:all .15s;display:flex}.mode-option:hover{border-color:var(--primary)}.mode-option.selected{border-color:var(--primary);background:#6366f11a}.mode-option input[type=radio]{display:none}.mode-option div{flex:1}.mode-option p{opacity:.7;margin:2px 0 0;font-size:.85rem}.mode-time{opacity:.6;margin-left:8px;font-size:.8rem}.mode-badge{background:var(--primary);color:#fff;border-radius:4px;margin-left:8px;padding:2px 8px;font-size:.75rem;font-weight:600}.modal-lg{max-width:560px}.timeline-v2{flex-direction:column;gap:2px;margin:16px 0;display:flex}.tl-step{border-left:2px solid var(--border);padding-bottom:4px;padding-left:16px}.tl-step.tl-done{border-left-color:#22c55e}.tl-step.tl-current{border-left-color:var(--primary);border-left-width:3px}.tl-step.tl-waiting{border-left-width:3px;border-left-color:#f59e0b}.tl-step.tl-error{border-left-color:#ef4444}.tl-step.tl-skipped{border-left-color:var(--border);border-left-style:dashed}.tl-header{align-items:center;gap:8px;padding:6px 0;display:flex}.tl-dot{background:var(--bg);align-items:center;margin-left:-23px;padding:2px;display:flex}.tl-done .tl-dot{color:#22c55e}.tl-current .tl-dot{color:var(--primary)}.tl-waiting .tl-dot{color:#f59e0b}.tl-error .tl-dot{color:#ef4444}.tl-skipped .tl-dot{color:#6b7280}.tl-pending .tl-dot{color:#4b5563}.tl-label{font-size:.9rem;font-weight:500}.tl-pending .tl-label{opacity:.4}.tl-detail{color:#9ca3af;background:#ffffff0d;border-radius:4px;padding:1px 6px;font-size:.75rem}.tl-active-badge{background:var(--primary);color:#fff;border-radius:10px;padding:1px 8px;font-size:.7rem;animation:2s infinite pulse}.tl-waiting-badge{color:#000;background:#f59e0b;border-radius:10px;padding:1px 8px;font-size:.7rem}.tl-expand{color:#9ca3af;align-items:center;gap:2px;margin-left:auto;font-size:.75rem;display:flex}.tl-log-count{background:#ffffff1a;border-radius:8px;padding:0 5px;font-size:.7rem}.tl-logs{flex-direction:column;gap:3px;margin:4px 0 8px;display:flex}.tl-log-entry{background:#ffffff08;border-left:2px solid #0000;border-radius:4px;align-items:center;gap:8px;padding:4px 8px;font-size:.8rem;display:flex}.tl-log-completed{border-left-color:#22c55e}.tl-log-started{background:#a78bfa0f;border-left-color:#a78bfa;animation:2s ease-in-out infinite pulse-bg}.tl-log-failed{border-left-color:#ef4444}.tl-log-skipped{border-left-color:#6b7280}@keyframes pulse-bg{0%,to{background:#a78bfa0f}50%{background:#a78bfa1f}}.tl-log-agent{min-width:120px;font-weight:500}.tl-log-model{opacity:.7;font-size:.7rem}.tl-log-duration{color:#9ca3af;min-width:40px}.tl-log-tokens{color:#6b7280;font-size:.7rem}.tl-log-status{font-size:.7rem;font-weight:600}.model-opus{color:#a78bfa}.model-sonnet{color:#60a5fa}.model-haiku{color:#34d399}.tl-log-error{color:#fca5a5;white-space:pre-wrap;word-break:break-all;background:#ef44441a;border-radius:4px;width:100%;margin-top:4px;padding:4px 8px;font-family:monospace;font-size:.7rem}.log-error-detail{color:#fca5a5;white-space:pre-wrap;word-break:break-all;background:#ef44441a;border-radius:4px;margin:0;padding:8px;font-size:.75rem}.log-detail-row td{padding:0 8px 8px!important}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.sidebar-separator{background:var(--border);height:1px;margin:8px 12px}.page-header-actions{align-items:center;gap:8px;display:flex}.result-count{color:var(--text-muted);background:var(--bg-input);border-radius:var(--radius);padding:4px 10px;font-size:.8rem}.search-bar{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:8px;margin-bottom:16px;padding:10px 14px;display:flex}.search-bar svg{color:var(--text-muted);flex-shrink:0}.search-input{color:var(--text);background:0 0;border:none;outline:none;flex:1;font-size:.9rem}.filters-bar{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:12px;display:flex}.filter-group{flex-direction:column;gap:4px;min-width:140px;display:flex}.filter-label{color:var(--text-muted);text-transform:uppercase;font-size:.75rem;font-weight:500}.sort-bar{align-items:center;gap:8px;margin-bottom:16px;font-size:.85rem;display:flex}.sort-label{color:var(--text-muted)}.toggle-label{color:var(--text-muted);cursor:pointer;align-items:center;gap:6px;font-size:.85rem;display:flex}.search-select{min-width:140px;position:relative}.search-select.disabled{opacity:.5;pointer-events:none}.search-select-trigger{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);width:100%;color:var(--text);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;padding:8px 10px;font-size:.85rem;transition:border-color .15s;display:flex}.search-select.open .search-select-trigger{border-color:var(--primary)}.search-select-value{align-items:center;gap:6px;display:flex}.search-select-placeholder{color:var(--text-muted)}.search-select-actions{align-items:center;gap:4px;margin-left:auto;display:flex}.search-select-clear{cursor:pointer;color:var(--text-muted)}.search-select-clear:hover{color:var(--text)}.search-select-icon{font-size:1rem}.rotated{transform:rotate(180deg)}.search-select-dropdown{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);z-index:200;flex-direction:column;max-height:240px;margin-top:4px;display:flex;position:absolute;top:100%;left:0;right:0;overflow:hidden;box-shadow:0 8px 24px #0006}.search-select-search{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:8px 10px;display:flex}.search-select-search input{color:var(--text);background:0 0;border:none;outline:none;flex:1;font-size:.85rem}.search-select-options{flex:1;padding:4px;overflow-y:auto}.search-select-loading,.search-select-empty{text-align:center;color:var(--text-muted);padding:12px;font-size:.85rem}.search-select-option{width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:4px;align-items:center;gap:8px;padding:8px 10px;font-size:.85rem;transition:background .1s;display:flex}.search-select-option:hover{background:var(--bg-hover)}.search-select-option.selected{color:var(--primary);background:#6366f126}.search-select-meta{color:var(--text-muted);margin-left:auto;font-size:.75rem}.search-multi{position:relative}.search-multi-input{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);cursor:text;flex-wrap:wrap;align-items:center;gap:4px;min-height:38px;padding:6px 10px;transition:border-color .15s;display:flex}.search-multi.open .search-multi-input{border-color:var(--primary)}.search-multi-tag{color:var(--primary);background:#6366f126;border-radius:4px;align-items:center;gap:4px;padding:2px 8px;font-size:.8rem;display:flex}.search-multi-tag svg{cursor:pointer}.search-multi-tag svg:hover{color:var(--danger)}.search-multi-text{min-width:60px;color:var(--text);background:0 0;border:none;outline:none;flex:1;padding:0;font-size:.85rem}.search-multi-dropdown{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);z-index:50;max-height:200px;margin-top:4px;padding:4px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0000004d}.search-multi-option{width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:4px;padding:8px 10px;font-size:.85rem;display:block}.search-multi-option:hover{background:var(--bg-hover)}.search-multi-option.create{color:var(--primary);font-style:italic}.pagination{justify-content:center;align-items:center;gap:12px;margin-top:20px;padding:12px 0;display:flex}.pagination-info{color:var(--text-muted);font-size:.8rem}.state-loading{color:var(--text-muted);flex-direction:column;align-items:center;gap:12px;padding:60px 20px;display:flex}.state-error{border-radius:var(--radius);color:var(--danger);background:#ef44441a;border:1px solid #ef44444d;align-items:center;gap:8px;padding:16px;display:flex}.state-error .error-icon{background:var(--danger);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-weight:700;display:flex}.state-empty{text-align:center;color:var(--text-muted);padding:60px 20px;font-size:.9rem}.modal-sm{max-width:400px}.confirm-header{align-items:center;gap:10px;padding:20px;display:flex}.confirm-header h3{font-size:1rem}.modal-sm p{color:var(--text-muted);padding:0 20px 20px;font-size:.9rem}.text-danger{color:var(--danger)}.memory-list{flex-direction:column;gap:8px;display:flex}.memory-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;transition:border-color .15s}.memory-card:hover{border-color:var(--primary)}.memory-card.archived{opacity:.5}.memory-header{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.layer-badge{color:#fff;text-transform:uppercase;border-radius:4px;padding:2px 8px;font-size:.7rem;font-weight:600;display:inline-block}.category-badge{background:var(--bg-hover);color:var(--text-muted);border-radius:4px;padding:2px 8px;font-size:.7rem;font-weight:500;display:inline-block}.confidence-badge{border-radius:4px;padding:2px 8px;font-size:.7rem;display:inline-block}.confidence-badge.suggested{color:var(--warning);background:#f59e0b26}.score{color:var(--text-muted);margin-left:auto;font-size:.75rem}.tag{color:var(--primary);background:#6366f11a;border-radius:3px;padding:1px 6px;font-size:.7rem;display:inline-block}.memory-key{margin-bottom:4px;font-size:.9rem}.memory-value{color:var(--text-muted);margin-bottom:8px;font-size:.85rem}.memory-meta{color:var(--text-muted);margin-bottom:8px;font-size:.75rem}.memory-actions{gap:6px;display:flex}.inline-form{flex-direction:column;gap:8px;padding:8px 0;display:flex}.inline-form textarea{min-height:60px}.form-actions{justify-content:flex-end;gap:6px;display:flex}.form-error{color:var(--danger);font-size:.8rem}.form-hint{color:var(--text-muted);font-size:.75rem}.form-row{flex-wrap:wrap;gap:12px;display:flex}.form-row>.form-group{flex:1;min-width:140px}.form-fieldset{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;padding:12px 16px}.form-fieldset legend{color:var(--primary);padding:0 8px;font-size:.85rem;font-weight:600}.required{color:var(--danger)}.radio-group{gap:12px;margin-bottom:8px;display:flex}.radio-group label{cursor:pointer;color:var(--text-muted);align-items:center;gap:4px;font-size:.85rem;display:flex}.wiring-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding:12px 16px;display:flex}.wiring-card.suggestion{border-color:var(--warning);background:#f59e0b0d}.wiring-info{flex-wrap:wrap;flex:1;align-items:center;gap:8px;display:flex}.wiring-endpoint{background:var(--bg-input);border-radius:4px;padding:4px 8px;font-size:.85rem}.wiring-type{text-transform:uppercase;color:var(--text-muted);margin-right:4px;font-size:.7rem}.wiring-arrow{color:var(--text-muted)}.wiring-categories{gap:4px;display:flex}.wiring-meta{color:var(--text-muted);margin-left:auto;font-size:.75rem}.wiring-actions{gap:6px;display:flex}.section-title{align-items:center;gap:8px;display:flex}.env-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.env-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;gap:14px;padding:16px;transition:all .15s;display:flex}.env-card:hover{border-color:var(--primary);background:var(--bg-hover)}.env-icon{font-size:2rem}.env-info h3{margin-bottom:4px;font-size:1rem}.env-info p{color:var(--text-muted);margin-bottom:4px;font-size:.85rem}.env-meta{color:var(--text-muted);font-size:.75rem}.config-card{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:8px;padding:12px 16px}.config-header{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.config-details{flex-direction:column;gap:4px;display:flex}.config-field{gap:8px;font-size:.85rem;display:flex}.config-field .field-label{color:var(--text-muted);min-width:120px}.config-actions{gap:6px;margin-top:8px;display:flex}.secret-badge{border-radius:4px;padding:2px 8px;font-size:.7rem;font-weight:500}.secret-badge.configured{color:var(--success);background:#10b98126}.secret-badge.missing{color:var(--danger);background:#ef444426}.project-list{flex-direction:column;gap:6px;display:flex}.project-card{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;justify-content:space-between;align-items:center;padding:12px 16px;transition:all .15s;display:flex}.project-card:hover{border-color:var(--primary)}.mission-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:8px;padding:12px 16px}.mission-header{align-items:center;gap:8px;margin-bottom:6px;display:flex}.mission-brief{color:var(--text-muted);margin-bottom:4px;font-size:.85rem}.mission-meta{color:var(--text-muted);font-size:.75rem}.tabs{border-bottom:1px solid var(--border);gap:0;margin-bottom:20px;display:flex}.tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 20px;font-size:.9rem;transition:all .15s}.tab:hover{color:var(--text)}.tab.active{color:var(--primary);border-bottom-color:var(--primary)}.drop-zone{border:2px dashed var(--border);border-radius:var(--radius);text-align:center;color:var(--text-muted);flex-direction:column;align-items:center;gap:8px;margin-bottom:16px;padding:32px;transition:all .15s;display:flex}.drop-zone.active{border-color:var(--primary);background:#6366f10d}.drop-zone svg{opacity:.4}.drop-hint{font-size:.75rem}.file-label{color:var(--primary);cursor:pointer;text-decoration:underline}.knowledge-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:8px;padding:12px 16px}.knowledge-header{align-items:center;gap:8px;margin-bottom:8px;display:flex}.knowledge-size{color:var(--text-muted);font-size:.75rem}.knowledge-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.trust-badge{border-radius:4px;padding:2px 8px;font-size:.7rem}.trust-badge.trusted{color:var(--success);background:#10b98126}.trust-badge.extracted{color:var(--warning);background:#f59e0b26}.extraction-error{color:var(--danger);margin-top:4px;font-size:.8rem}.chat-page{flex-direction:column;height:calc(100vh - 48px);display:flex}.chat-layout{flex:1;gap:0;display:flex;overflow:hidden}.chat-sidebar{background:var(--bg-card);border-right:1px solid var(--border);flex-shrink:0;width:240px;padding:16px;overflow-y:auto}.chat-sidebar-section{margin-bottom:20px}.chat-sidebar-section h3{color:var(--text-muted);text-transform:uppercase;align-items:center;gap:6px;margin-bottom:8px;font-size:.8rem;display:flex}.chat-sidebar-empty{color:var(--text-muted);font-size:.8rem}.chat-context-card{background:var(--bg-input);border-radius:var(--radius);padding:8px;font-size:.85rem}.context-status{color:var(--primary);text-transform:uppercase;font-size:.7rem;font-weight:600}.context-detail{color:var(--text-muted);font-size:.8rem}.chat-env-badge{background:var(--bg-input);border-radius:4px;margin-bottom:4px;padding:4px 8px;font-size:.85rem}.chat-pending-action{background:#f59e0b1a;border-radius:4px;justify-content:space-between;align-items:center;margin-bottom:4px;padding:6px 8px;font-size:.8rem;display:flex}.chat-shortcut{text-align:left;width:100%;margin-bottom:4px;font-size:.8rem;display:block}.chat-main{flex-direction:column;flex:1;display:flex;overflow:hidden}.chat-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.chat-header h1{font-size:1.1rem}.chat-search{background:var(--bg-input);border-radius:var(--radius);border:1px solid var(--border);align-items:center;gap:6px;padding:4px 10px;display:flex}.chat-search input{color:var(--text);background:0 0;border:none;outline:none;width:160px;font-size:.8rem}.chat-messages{flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.chat-date-separator{color:var(--text-muted);align-items:center;gap:6px;padding:8px 0;font-size:.75rem;display:flex}.chat-date-separator:before,.chat-date-separator:after{content:"";background:var(--border);flex:1;height:1px}.chat-bubble{border-radius:12px;max-width:80%;padding:10px 14px;font-size:.9rem;line-height:1.5}.chat-bubble.user{background:var(--primary);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}.chat-bubble.assistant{background:var(--bg-card);border:1px solid var(--border);border-bottom-left-radius:4px;align-self:flex-start}.chat-bubble.history{background:var(--bg-input);border:1px solid var(--border);opacity:.7;align-self:flex-start}.chat-bubble.error{color:var(--danger);background:#ef44441a;border:1px solid #ef44444d;align-self:center}.chat-history-label{color:var(--text-muted);text-transform:uppercase;margin-bottom:4px;font-size:.7rem}.chat-content{white-space:pre-wrap}.chat-time{color:var(--text-muted);margin-top:4px;font-size:.7rem}.chat-error{align-items:center;gap:6px;display:flex}.chat-action{border-radius:6px;align-items:center;gap:6px;margin-top:8px;padding:6px 10px;font-size:.8rem;display:flex}.chat-action.executed{color:var(--success);background:#10b9811a}.chat-action.pending{color:var(--warning);background:#f59e0b1a}.action-buttons{gap:6px;margin-left:auto;display:flex}.action-result{color:var(--text-muted);margin-left:8px;font-size:.75rem}.chat-input{border-top:1px solid var(--border);background:var(--bg-card);gap:8px;padding:12px 16px;display:flex}.chat-input textarea{resize:none;flex:1;min-height:40px}.stats-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:12px;padding:16px;display:flex}.stat-icon{color:var(--primary);flex-shrink:0}.stat-body{flex:1}.stat-value{font-size:1.5rem;font-weight:700}.stat-label{color:var(--text-muted);font-size:.8rem}.stat-bar{background:var(--border);border-radius:2px;height:4px;margin-top:4px;overflow:hidden}.stat-bar-fill{background:var(--success);border-radius:2px;height:100%;transition:width .5s}.stat-link{font-size:.75rem}.analysis-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px}.analysis-header{align-items:center;gap:8px;margin-bottom:8px;display:flex}.analysis-date{color:var(--text-muted);font-size:.85rem}.analysis-status{color:var(--success);font-size:.75rem}.text-success{color:var(--success)}.analysis-payload{flex-direction:column;gap:4px;display:flex}.analysis-field{gap:8px;font-size:.85rem;display:flex}.analysis-field-label{color:var(--text-muted);text-transform:capitalize}.pattern-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:6px;padding:10px 14px}.pattern-header{align-items:center;gap:8px;margin-bottom:4px;display:flex}.pattern-key{font-size:.9rem}.pattern-value{color:var(--text-muted);font-size:.85rem}.pattern-tags{gap:4px;margin-top:4px;display:flex}.archived-list{flex-direction:column;gap:6px;display:flex}.archived-card{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);opacity:.7;padding:10px 14px}.archived-header{align-items:center;gap:8px;margin-bottom:4px;display:flex}.archived-date{color:var(--text-muted);margin-left:auto;font-size:.75rem}.archived-content{margin-bottom:4px;font-size:.85rem}.archived-meta{color:var(--text-muted);font-size:.75rem}.suggestion-card{background:var(--bg-input);border-radius:var(--radius);margin-bottom:4px;padding:8px 12px;font-size:.85rem}.section-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.btn-xs{padding:2px 6px;font-size:.7rem}@media (width<=768px){.filters-bar{flex-direction:column}.filter-group{min-width:100%}.env-grid{grid-template-columns:1fr}.chat-layout{flex-direction:column}.chat-sidebar{border-right:none;border-bottom:1px solid var(--border);width:100%;max-height:200px}.form-row{flex-direction:column}}.home-no-active{padding:24px}.home-no-active-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}@media (width<=768px){.home-no-active{padding:12px}.home-no-active-header{flex-direction:column;align-items:flex-start}.home-no-active-header h2{font-size:1.2rem}}.recent-runs-history{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:16px;overflow-x:auto}.recent-runs-title{color:var(--text);margin-bottom:12px;font-size:1rem;font-weight:600}.recent-runs-empty{color:var(--text-muted);font-size:.875rem}.recent-runs-table{border-collapse:collapse;width:100%;font-size:.875rem}.recent-runs-table th{text-align:left;border-bottom:1px solid var(--border);color:var(--text-muted);padding:8px 12px;font-weight:500}.recent-runs-table td{border-bottom:1px solid var(--border);padding:10px 12px}.recent-runs-row{cursor:pointer;transition:background .15s}.recent-runs-row:hover{background:var(--bg-hover)}.recent-runs-feature{white-space:nowrap;text-overflow:ellipsis;max-width:240px;overflow:hidden}.recent-runs-outcome{border-radius:4px;align-items:center;padding:2px 8px;font-size:.75rem;font-weight:600;display:inline-flex}.search-select-create-btn{border:1px dashed var(--border);width:100%;color:var(--primary);cursor:pointer;background:0 0;border-radius:6px;margin-top:4px;padding:8px 12px;font-size:.85rem;transition:background .15s,border-color .15s;display:block}.search-select-create-btn:hover{background:var(--bg-hover);border-color:var(--primary)}.inline-create-form{flex-direction:column;gap:8px;display:flex}.inline-create-form input{width:100%}.inline-create-actions{justify-content:flex-end;gap:8px;display:flex}.specs-tab{flex-direction:column;gap:16px;display:flex}.specs-tab-nav{border-bottom:1px solid var(--border);gap:8px;padding-bottom:8px;display:flex}.specs-tab-btn{border:1px solid var(--border);cursor:pointer;color:var(--text-muted);background:0 0;border-radius:6px;padding:6px 14px;font-size:.85rem;transition:background .15s,color .15s}.specs-tab-btn:hover{background:var(--bg-hover)}.specs-tab-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.specs-tab-content{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;min-height:200px;padding:16px}.specs-tab-loading{color:var(--text-muted);padding:16px;font-size:.9rem}.specs-tab-empty{color:var(--text-muted);padding:16px;font-size:.9rem;font-style:italic}.specs-tab-error{color:var(--danger);margin-bottom:8px;font-size:.9rem}.run-detail-tabs{border-bottom:1px solid var(--border);gap:0;margin-top:20px;margin-bottom:20px;display:flex}.specs-comparator{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-top:24px;padding:16px}.specs-comparator-header{margin-bottom:12px}.specs-comparator-title{font-size:.95rem;font-weight:600}.specs-comparator-controls{flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:16px;display:flex}.specs-compare-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.specs-compare-col{min-width:0}.specs-compare-header{color:var(--text-muted);margin-bottom:8px;font-size:.9rem;font-weight:600}.agents-tab{flex-direction:column;gap:20px;display:flex}.agents-tab-loading{color:var(--text-muted);padding:16px;font-size:.9rem}.agents-tab-empty{color:var(--text-muted);padding:16px;font-size:.9rem;font-style:italic}.agents-tab-table{border-collapse:collapse;width:100%;font-size:.9rem}.agents-tab-table th{text-align:left;border-bottom:2px solid var(--border);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;padding:8px 12px;font-size:.8rem;font-weight:600}.agents-tab-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:8px 12px}.agents-tab-table tr:hover td{background:var(--bg-hover)}.agents-tab-btn{border:1px solid var(--primary);color:var(--primary);cursor:pointer;background:0 0;border-radius:4px;padding:4px 12px;font-size:.85rem;transition:background .15s,color .15s}.agents-tab-btn:hover{background:var(--primary);color:#fff}.agents-tab-btn:disabled{opacity:.5;cursor:not-allowed}.agents-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.agents-modal{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;flex-direction:column;width:100%;max-width:800px;max-height:85vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #00000080}.agents-modal-header{border-bottom:1px solid var(--border);background:var(--bg-hover);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.agents-modal-meta{align-items:center;gap:10px;min-width:0;display:flex}.agents-modal-title{color:var(--text);word-break:break-all;font-size:.9rem;font-weight:600}.agents-modal-phase{background:var(--bg-input);color:var(--text-muted);border-radius:4px;flex-shrink:0;padding:2px 8px;font-family:monospace;font-size:.75rem}.agents-modal-close{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;transition:background .15s,color .15s;display:flex}.agents-modal-close:hover{background:var(--bg-card);color:var(--text)}.agents-modal-body{flex:1;min-height:120px;padding:24px;line-height:1.6;overflow-y:auto}.agents-tab-error{color:var(--danger);padding:8px 0;font-size:.9rem}.spinner-sm{border:2px solid var(--border);border-top-color:var(--primary);vertical-align:middle;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spin;display:inline-block}.mission-card.selected{border-color:var(--primary);background:var(--bg-hover)}.mission-card.clickable{cursor:pointer;transition:all .15s}.mission-card.clickable:hover{border-color:var(--primary);background:var(--bg-hover)}.mission-chevron{color:var(--text-muted);flex-shrink:0;margin-left:auto}.mission-run-count{color:var(--text-muted);background:var(--bg-input);border-radius:10px;padding:2px 8px;font-size:.75rem}.breadcrumb{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:16px;font-size:.85rem;display:flex}.breadcrumb a{color:var(--primary);text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.breadcrumb-sep{color:var(--text-muted)}.breadcrumb-current{color:var(--text);font-weight:600}.project-meta-row{flex-wrap:wrap;align-items:center;gap:10px;margin-top:6px;display:flex}.project-repo-link{color:var(--primary);align-items:center;gap:4px;font-size:.8rem;text-decoration:none;display:inline-flex}.project-repo-link:hover{text-decoration:underline}.project-description{color:var(--text-muted);font-size:.85rem}.mission-meta-row{flex-wrap:wrap;align-items:center;gap:10px;margin-top:6px;display:flex}.mission-stat{color:var(--text-muted);align-items:center;gap:4px;font-size:.8rem;display:inline-flex}.mission-brief-block{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:20px;padding:14px 16px}.mission-brief-block h3{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-size:.85rem;font-weight:600}.mission-brief-block p{color:var(--text);white-space:pre-wrap;font-size:.9rem;line-height:1.5}.mission-runs-list{flex-direction:column;gap:6px;display:flex}.mission-run-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;align-items:center;gap:12px;padding:12px 16px;transition:all .15s;display:flex}.mission-run-card:hover{border-color:var(--primary);background:var(--bg-hover)}.mission-run-main{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.mission-run-feature{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.mission-run-details{color:var(--text-muted);flex-shrink:0;align-items:center;gap:12px;font-size:.75rem;display:flex}.phase-icon.done{color:var(--success)}.phase-icon.abandoned{color:var(--danger)}.phase-icon.review{color:var(--warning)}.phase-icon.running{color:var(--primary)}@media (width<=768px){.specs-compare-grid{grid-template-columns:1fr}.specs-comparator-controls{flex-direction:column}.mission-run-card{flex-direction:column;align-items:flex-start}.mission-run-details{flex-wrap:wrap}.breadcrumb{font-size:.75rem}}.daemon-control{margin-top:8px}.daemon-control-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.daemon-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.daemon-card--active{border-color:var(--success)}.daemon-card--inactive{border-color:var(--danger)}.daemon-card--railway{border-color:var(--border)}.daemon-card-header{align-items:center;gap:10px;margin-bottom:16px;display:flex}.daemon-card-status{font-size:1.1rem;font-weight:600}.daemon-card-title{color:var(--text);font-size:1rem;font-weight:600}.daemon-dot{border-radius:50%;flex-shrink:0;width:12px;height:12px}.daemon-dot--green{background:var(--success);box-shadow:0 0 8px var(--success);animation:2s ease-in-out infinite daemon-pulse}.daemon-dot--red{background:var(--danger);box-shadow:0 0 8px var(--danger)}@keyframes daemon-pulse{0%,to{opacity:1}50%{opacity:.5}}.daemon-card-source{background:var(--bg-hover);border-radius:6px;align-items:center;gap:8px;margin-bottom:16px;padding:8px 12px;font-weight:500;display:flex}.daemon-source-label{font-size:.95rem}.daemon-card-details{flex-direction:column;gap:8px;display:flex}.daemon-detail{justify-content:space-between;align-items:center;font-size:.85rem;display:flex}.daemon-detail-label{color:var(--text-muted)}.daemon-detail-value{color:var(--text);font-family:SF Mono,Fira Code,monospace;font-size:.8rem;font-weight:500}.daemon-card-desc{color:var(--text-muted);margin-bottom:16px;font-size:.85rem;line-height:1.5}.daemon-restart-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;gap:8px;padding:8px 16px;font-size:.85rem;font-weight:500;transition:background .15s;display:inline-flex}.daemon-restart-btn:hover:not(:disabled){background:var(--primary-hover)}.daemon-restart-btn:disabled{opacity:.6;cursor:not-allowed}.daemon-spin{animation:1s linear infinite daemon-spin-anim}@keyframes daemon-spin-anim{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.daemon-msg{border-radius:6px;margin-top:12px;padding:8px 12px;font-size:.8rem}.daemon-msg--success{color:var(--success);background:#10b98126;border:1px solid #10b9814d}.daemon-msg--error{color:var(--danger);background:#ef444426;border:1px solid #ef44444d}.daemon-switch-progress{color:var(--primary);background:#6366f11a;border:1px solid #6366f14d;border-radius:6px;align-items:center;gap:8px;margin-bottom:12px;padding:8px 12px;font-size:.85rem;display:flex}.daemon-actions{gap:8px;margin-bottom:12px;display:flex}.daemon-action-btn{border:1px solid var(--border);cursor:pointer;background:var(--bg-hover);color:var(--text);border-radius:6px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px 12px;font-size:.85rem;font-weight:500;transition:all .15s;display:inline-flex}.daemon-action-btn:hover:not(:disabled){border-color:var(--primary);background:#6366f11a}.daemon-action-btn:disabled{opacity:.5;cursor:not-allowed}.daemon-action-btn--current{border-color:var(--success);color:var(--success);background:#10b9811a}.daemon-action-btn--current:hover:not(:disabled){border-color:var(--success);background:#10b9811a}.daemon-stop-btn{color:var(--danger);border:1px solid var(--danger);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:8px;margin-top:8px;padding:8px 16px;font-size:.8rem;font-weight:500;transition:all .15s;display:inline-flex}.daemon-stop-btn:hover:not(:disabled){background:#ef44441a}.daemon-stop-btn:disabled{opacity:.5;cursor:not-allowed}.daemon-copy-cmd{background:var(--bg-input);border:1px solid var(--border);border-radius:6px;align-items:center;gap:8px;margin-top:8px;padding:8px 10px;display:flex}.daemon-copy-cmd--standalone{margin-top:0;margin-bottom:12px}.daemon-cmd-text{color:var(--text-muted);word-break:break-all;background:0 0;flex:1;padding:0;font-family:SF Mono,Fira Code,monospace;font-size:.75rem}.daemon-copy-btn{background:var(--bg-hover);color:var(--text);border:1px solid var(--border);cursor:pointer;white-space:nowrap;border-radius:4px;align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;transition:all .15s;display:inline-flex}.daemon-copy-btn:hover{border-color:var(--primary);background:#6366f11a}@media (width<=768px){.daemon-control-grid{grid-template-columns:1fr}.daemon-actions{flex-direction:column}}.upload-zone{border:2px dashed var(--border);border-radius:var(--radius);color:var(--text-muted);cursor:pointer;text-align:center;flex-direction:column;align-items:center;gap:8px;padding:24px;font-size:.8rem;transition:all .15s;display:flex}.upload-zone:hover,.upload-zone.drag-over{border-color:var(--primary);background:#6366f10d}.image-previews{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.image-preview{border-radius:var(--radius);border:1px solid var(--border);width:80px;height:80px;position:relative;overflow:hidden}.image-preview img{object-fit:cover;width:100%;height:100%}.remove-image{color:#fff;cursor:pointer;background:#000000b3;border:none;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;padding:0;display:flex;position:absolute;top:2px;right:2px}.fix-context-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:12px;padding:12px 16px}.fix-context-header{align-items:center;gap:8px;margin-bottom:6px;display:flex}.fix-context-specs{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.fix-spec-badge{color:var(--primary);background:#6366f126;border-radius:4px;padding:2px 8px;font-size:.7rem}.fix-context-ok{color:var(--success);font-size:.75rem}.fix-context-loading,.fix-context-empty{color:var(--text-muted);font-size:.75rem;font-style:italic}.run-type-badge{letter-spacing:.05em;border-radius:4px;align-items:center;padding:2px 8px;font-size:.7rem;font-weight:700;display:inline-flex}.run-type-fix{color:#f87171;background:#ef444426;border:1px solid #ef44444d}.tl-feedback-images{flex-wrap:wrap;gap:6px;margin-top:6px;padding:4px 0;display:flex}.tl-feedback-thumb{object-fit:cover;cursor:pointer;border:1px solid var(--border,#e2e8f0);border-radius:4px;width:48px;height:48px;transition:opacity .15s}.tl-feedback-thumb:hover{opacity:.85}.screenshots-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.screenshot-card{border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:border-color .15s;overflow:hidden}.screenshot-card:hover{border-color:var(--primary)}.screenshot-card img{width:100%;height:auto;display:block}.screenshot-label{color:var(--text-muted);background:var(--bg-card);text-transform:capitalize;padding:8px 12px;font-size:.8rem;font-weight:500;display:block}.screenshot-lightbox{background:var(--bg-card);border-radius:var(--radius);max-width:90vw;max-height:90vh;overflow:hidden}.screenshot-lightbox-header{text-transform:capitalize;justify-content:space-between;align-items:center;padding:12px 16px;font-weight:500;display:flex}.screenshot-lightbox img{width:100%;height:auto;display:block}.score-badge{background:var(--bg-input);color:var(--text);cursor:help;border-radius:4px;align-items:center;padding:2px 10px;font-size:.8rem;font-weight:700;display:inline-flex}.token-counter{cursor:default;color:var(--text-muted,#9ca3af);border-radius:4px;align-items:center;gap:4px;padding:2px 6px;font-size:11px;transition:color .15s;display:flex}.token-counter:hover{color:var(--text-primary,#f9fafb)}.token-counter-icon{opacity:.7;flex-shrink:0}.token-counter-label{white-space:nowrap;font-variant-numeric:tabular-nums}.sound-toggle{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:4px;flex-shrink:0;align-items:center;padding:4px;transition:color .15s;display:flex}.sound-toggle:hover{color:var(--text)}.sound-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.notes-overlay{z-index:999;background:#0000004d;position:fixed;inset:0}.notes-panel{background:var(--surface);border-left:1px solid var(--border);z-index:1000;flex-direction:column;width:360px;height:100vh;transition:transform .2s;display:flex;position:fixed;top:0;right:0;transform:translate(100%)}.notes-panel.open{transform:translate(0)}.notes-header{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:16px;display:flex}.notes-header h3{margin:0;font-size:1rem;font-weight:600}.notes-status{color:var(--text-muted);align-items:center;margin-left:auto;font-size:.8rem;display:flex}.notes-check{color:var(--success,#22c55e)}.notes-close-btn{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:4px;align-items:center;padding:4px;transition:color .15s;display:flex}.notes-close-btn:hover{color:var(--text)}.notes-close-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.notes-textarea{resize:none;color:var(--text);background:0 0;border:none;outline:none;flex:1;padding:16px;font-family:inherit;font-size:.9rem;line-height:1.5}.notes-textarea::placeholder{color:var(--text-muted)}.notes-footer{border-top:1px solid var(--border);justify-content:flex-end;padding:12px 16px;display:flex}.notes-copy-btn{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:8px 14px;font-size:.85rem;transition:background .15s,border-color .15s;display:flex}.notes-copy-btn:hover:not(:disabled){background:var(--bg);border-color:var(--text-muted)}.notes-copy-btn:disabled{opacity:.4;cursor:not-allowed}.notes-copy-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@media (width<=768px){.notes-panel{width:100%}}@media (prefers-reduced-motion:reduce){.notes-panel{transition:none}}.weekly-stats-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px;display:grid}@media (width<=1023px){.weekly-stats-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=639px){.weekly-stats-grid{grid-template-columns:1fr}}.weekly-stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:6px;padding:14px 16px;display:flex}.weekly-stat-header{color:var(--text-muted);align-items:center;gap:6px;font-size:.8rem;display:flex}.weekly-stat-value{color:var(--text);font-size:1.4rem;font-weight:700;line-height:1.2}.weekly-stat-delta{color:var(--text-muted);align-items:center;gap:4px;font-size:.8rem;display:flex}.delta-up{color:var(--success);font-weight:600}.delta-down{color:var(--danger);font-weight:600}.weekly-stats-loading{height:90px;color:var(--text-muted);justify-content:center;align-items:center;font-size:.85rem;display:flex}.agents-list{margin-bottom:1.5rem}.agents-list-title{text-transform:uppercase;letter-spacing:.08em;color:#6b7280;margin:0 0 .75rem;font-size:.75rem;font-weight:600}.agents-list-rows{flex-direction:column;gap:.25rem;display:flex}.agent-row{background:#ffffff08;border:1px solid #ffffff0f;border-radius:6px;align-items:center;gap:.5rem;padding:.375rem .625rem;transition:background .15s;display:flex}.agent-row:hover{background:#ffffff0f}.agent-status-dot{background:#6b7280;border-radius:50%;flex-shrink:0;width:8px;height:8px;transition:background .2s}.agent-status-dot[data-status=COMPLETED]{background:#10b981}.agent-status-dot[data-status=WARNING]{background:#f59e0b}.agent-status-dot[data-status=BLOCK],.agent-status-dot[data-status=ERROR]{background:#ef4444}.agent-spinner{color:#6b7280;flex-shrink:0;animation:1s linear infinite spin}.agent-name{color:#e5e7eb;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.8125rem;overflow:hidden}.agent-model{color:#9ca3af;background:#ffffff12;border-radius:4px;flex-shrink:0;padding:.1rem .375rem;font-size:.6875rem;font-weight:500}.agent-phase{color:#6b7280;white-space:nowrap;flex-shrink:0;font-size:.6875rem}.agent-duration{color:#9ca3af;font-variant-numeric:tabular-nums;text-align:right;flex-shrink:0;min-width:3rem;font-size:.75rem}.run-files-section{margin-top:8px}.run-files-title{color:var(--text);margin:0 0 12px;font-size:14px;font-weight:600}.run-files-list{margin:0;padding:0;list-style:none}.run-files-item{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:6px 0;display:flex}.run-files-item:last-child{border-bottom:none}.run-files-path{color:var(--text);word-break:break-all;flex:1;font-family:monospace;font-size:12px}.run-files-badge{border-radius:10px;flex-shrink:0;padding:2px 8px;font-size:11px;font-weight:500}.run-files-badge--created{color:#10b981;background:#10b98126}.run-files-badge--modified{color:#f59e0b;background:#f59e0b26}.run-files-empty{color:var(--text-muted);margin:0;font-size:13px}.migration-section{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);margin-bottom:20px;overflow:hidden}.migration-header{border-bottom:1px solid var(--border);background:var(--bg-hover);align-items:center;gap:10px;padding:14px 16px;display:flex}.migration-header h3{flex:1;margin:0;font-size:.95rem;font-weight:600}.migration-verdict-badge{text-transform:uppercase;letter-spacing:.05em;border:1px solid;border-radius:4px;align-items:center;gap:4px;padding:2px 10px;font-size:.8rem;font-weight:600;display:inline-flex}.migration-confirmed-badge{background:var(--success);color:#fff;border-radius:4px;align-items:center;gap:4px;padding:2px 10px;font-size:.8rem;font-weight:600;display:inline-flex}.migration-sql-block{border-bottom:1px solid var(--border)}.migration-sql-header{color:var(--text-muted);background:var(--bg-input);justify-content:space-between;align-items:center;padding:8px 16px;font-family:monospace;font-size:.8rem;display:flex}.migration-sql-code{max-height:400px;color:var(--text);background:var(--bg);margin:0;padding:16px;font-size:.85rem;line-height:1.5;overflow:auto}.migration-review-block{border-bottom:1px solid var(--border)}.migration-review-block summary{cursor:pointer;color:var(--text-muted);padding:10px 16px;font-size:.85rem}.migration-review-block summary:hover{color:var(--text)}.migration-review-content{padding:0 16px 16px;font-size:.85rem;line-height:1.6}.migration-actions{padding:16px}.migration-instructions{color:var(--text-muted);margin-bottom:12px;font-size:.85rem;line-height:1.6}.migration-buttons{gap:10px;display:flex}.migration-action-done{color:var(--success);padding:16px;font-size:.85rem;font-weight:600}.migration-modal{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;width:100%;max-width:480px;padding:24px;box-shadow:0 20px 60px #00000080}.migration-modal h3{margin:0 0 12px;font-size:1rem}.migration-modal p{color:var(--text-muted);margin-bottom:16px;font-size:.9rem}.migration-modal-actions{justify-content:flex-end;gap:10px;display:flex}.migration-reject-input{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-input);width:100%;color:var(--text);resize:vertical;margin-bottom:12px;padding:10px;font-size:.9rem}.migration-reject-input:focus{border-color:var(--primary);outline:none}.sv-panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);margin-bottom:20px;overflow:hidden}.sv-header{border-bottom:1px solid var(--border);background:var(--bg-hover);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.sv-header h3{margin:0;font-size:.9rem;font-weight:600}.sv-final-verdict{color:var(--text-muted);font-size:.8rem;font-weight:600}.sv-timeline{flex-direction:column;gap:6px;padding:12px 16px;display:flex}.sv-item{border-radius:6px;align-items:center;gap:10px;padding:6px 8px;transition:background .15s;display:flex}.sv-item:hover{background:var(--bg-hover)}.sv-item--review{opacity:.8;padding-left:24px}.sv-item-dot{border:2px solid;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.sv-item-body{flex:1;min-width:0}.sv-item-header{align-items:center;gap:8px;font-size:.85rem;display:flex}.sv-item-type{text-transform:uppercase;font-size:.75rem;font-weight:600}.sv-item-version{color:var(--text-muted);font-size:.75rem}.sv-item-verdict{text-transform:uppercase;font-size:.75rem;font-weight:700}.sv-item-issues{color:var(--warning);font-size:.75rem;font-weight:600}.sv-item-meta{color:var(--text-muted);gap:8px;margin-top:2px;font-size:.7rem;display:flex}.sv-item-view{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:4px;flex-shrink:0;padding:4px 8px;transition:all .15s}.sv-item-view:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.analysis-tab{flex-direction:column;gap:20px;display:flex}.analysis-header{justify-content:space-between;align-items:center;display:flex}.analysis-header h2{align-items:center;gap:8px;margin:0;font-size:1.1rem;display:flex}.analysis-scores{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.score-card{background:var(--card-bg);border:1px solid var(--border);text-align:center;border-radius:10px;padding:16px}.score-card.score-global{border-color:var(--accent);background:#6c5ce714}.score-value{font-size:2rem;font-weight:700;line-height:1}.score-value span{color:var(--text-muted);font-size:.9rem;font-weight:400}.score-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-top:4px;font-size:.8rem}.analysis-errors{background:var(--card-bg);border:1px solid var(--border);border-radius:10px;padding:16px 20px}.analysis-errors h3{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;font-size:.85rem}.error-bars{flex-direction:column;gap:8px;display:flex}.error-bar-row{align-items:center;gap:10px;display:flex}.error-type{font-size:.8rem;font-family:var(--font-mono,monospace);color:var(--text-muted);min-width:160px}.error-bar-track{background:var(--border);border-radius:4px;flex:1;height:8px;overflow:hidden}.error-bar-fill{background:var(--accent);border-radius:4px;min-width:2px;height:100%;transition:width .3s}.error-count{text-align:right;min-width:24px;font-size:.85rem;font-weight:600}.analysis-resume{background:var(--card-bg);border:1px solid var(--border);border-radius:10px;padding:12px 18px}.resume-stats{color:var(--text-muted);flex-wrap:wrap;gap:16px;font-size:.85rem;display:flex}.resume-stats span{align-items:center;gap:5px;display:flex}.synthesis-block{border:1px solid;border-radius:10px;padding:14px 18px}.synthesis-block h3{text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:8px;margin-bottom:8px;font-size:.85rem;display:flex}.synthesis-block ul{margin:0;padding-left:18px}.synthesis-block li{margin:3px 0;font-size:.85rem;line-height:1.6}.synthesis-good{background:#4ade800f;border-color:#4ade8033}.synthesis-good h3{color:#4ade80}.synthesis-good li{color:#bbf7d0}.synthesis-bad{background:#fbbf240f;border-color:#fbbf2433}.synthesis-bad h3{color:#fbbf24}.synthesis-bad li{color:#fde68a}.synthesis-blind{background:#60a5fa0f;border-color:#60a5fa33}.synthesis-blind h3{color:#60a5fa}.synthesis-blind li{color:#bfdbfe}.synthesis-reco{background:#a78bfa0f;border-color:#a78bfa33}.synthesis-reco h3{color:#a78bfa}.synthesis-reco li{color:#ddd6fe}.synthesis-reco h4{color:#c4b5fd;margin:10px 0 4px;font-size:.82rem;font-weight:600}.synthesis-reco h4:first-child{margin-top:0}.reco-group+.reco-group{margin-top:6px}.verdict-panel{background:var(--card-bg);border:2px solid #2dd4a84d;border-radius:12px;padding:20px 24px;position:relative;overflow:hidden}.verdict-panel:before{content:"";background:linear-gradient(90deg,#2dd4a8,#818cf8);height:3px;position:absolute;top:0;left:0;right:0}.verdict-panel-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.verdict-panel-header h3{color:#2dd4a8;align-items:center;gap:8px;margin:0;font-size:1rem;display:flex}.verdict-loading{border-style:dashed;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:32px;display:flex}.verdict-loading p{color:var(--text-muted);font-size:.9rem}.verdict-spinner{color:#2dd4a8}.verdict-markdown{font-size:.88rem;line-height:1.75}.verdict-markdown h1{color:#5eead4;margin:0 0 12px;font-size:1.15rem;line-height:1.3}.verdict-markdown h2{color:#99f6e4;border:none;margin:18px 0 8px;padding:0;font-size:.95rem}.verdict-markdown p{color:var(--text-muted);margin:6px 0}.verdict-markdown ul{margin:6px 0;padding-left:18px}.verdict-markdown li{color:var(--text-muted);margin:4px 0;line-height:1.6}.verdict-markdown strong{color:var(--text)}.verdict-markdown ol{margin:6px 0;padding-left:18px}.verdict-markdown ol li{margin:4px 0}.verdict-markdown em{color:var(--text-muted);font-style:italic}.btn-verdict{color:#2dd4a8;background:#2dd4a81f;border:1px solid #2dd4a84d}.btn-verdict:hover{background:#2dd4a833}.analysis-actions{gap:8px;display:flex}.full-report-toggle{text-align:center;width:100%;margin-bottom:12px}.analysis-report{background:var(--card-bg);border:1px solid var(--border);border-radius:10px;min-height:200px;padding:24px}.analysis-empty{text-align:center;color:var(--text-muted);padding:40px 0}.analysis-empty p{margin:4px 0}.analysis-markdown{font-size:.9rem;line-height:1.7}.analysis-markdown h1{margin:0 0 16px;font-size:1.3rem}.analysis-markdown h2{border-bottom:1px solid var(--border);margin:24px 0 12px;padding-bottom:6px;font-size:1.1rem}.analysis-markdown h3{margin:16px 0 8px;font-size:.95rem}.analysis-markdown p{margin:8px 0}.analysis-markdown ul,.analysis-markdown ol{margin:8px 0;padding-left:20px}.analysis-markdown li{margin:4px 0}.analysis-markdown code{background:var(--border);border-radius:4px;padding:2px 6px;font-size:.85em}.analysis-markdown pre{background:var(--bg);border:1px solid var(--border);border-radius:8px;margin:12px 0;padding:12px 16px;overflow-x:auto}.analysis-markdown table{border-collapse:collapse;width:100%;margin:12px 0;font-size:.85rem}.analysis-markdown th,.analysis-markdown td{border:1px solid var(--border);text-align:left;padding:8px 10px}.analysis-markdown th{background:var(--bg);font-weight:600}.spin{animation:1s linear infinite spin}@media (width<=768px){.analysis-scores{grid-template-columns:repeat(2,1fr)}.error-type{min-width:100px;font-size:.7rem}}.history-filters{flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.history-filter-group{flex-direction:column;gap:4px;display:flex}.history-filter-group label{color:var(--text-muted);font-size:.8rem;font-weight:500}.history-filter-group input[type=date]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);cursor:pointer;padding:8px 12px;font-size:.85rem}.history-filter-group input[type=date]:focus{border-color:var(--primary);outline:none}.history-filter-group .search-select{min-width:180px}.history-stats{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px;display:grid}.history-stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:4px;padding:16px;display:flex}.history-stat-card svg{color:var(--primary);margin-bottom:4px}.history-stat-value{color:var(--text);font-size:1.5rem;font-weight:700}.history-stat-label{color:var(--text-muted);font-size:.8rem}.run-slug-small{color:var(--text-muted);font-family:monospace;font-size:11px}@media (width<=768px){.history-stats{grid-template-columns:repeat(2,1fr)}.history-filters{flex-direction:column;align-items:stretch}.history-filter-group .search-select{min-width:unset}}.run-group{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:8px;overflow:hidden}.run-group-header{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;min-width:0;padding:12px 16px;display:flex}.run-group-header:hover{background:var(--bg-hover)}.run-group-body{padding:0 8px 8px}.run-group-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.run-group-date{color:var(--text-muted);flex-shrink:0;font-size:.8rem}.run-group-count{color:var(--text-muted);flex-shrink:0;font-size:.85rem}.outcome-badge{letter-spacing:.05em;border-radius:4px;flex-shrink:0;align-items:center;padding:2px 8px;font-size:.7rem;font-weight:700;display:inline-flex}.badge-success{color:var(--success,#10b981);background:#10b98126}.badge-warning{color:var(--warning,#f59e0b);background:#f59e0b26}.badge-danger{color:var(--danger,#ef4444);background:#ef444426}.badge-info{color:var(--info,#3b82f6);background:#3b82f626}.badge-pulse{animation:2s ease-in-out infinite pulse}.unread-counter{color:var(--text-primary,inherit);font-weight:700}.notif-chevron{flex-shrink:0;margin-left:auto;transition:transform .15s}.notif-chevron.open{transform:rotate(180deg)}.btn-mark-run{flex-shrink:0;align-items:center;gap:4px;margin-left:4px;padding:2px 8px;font-size:.75rem;display:inline-flex}.system-group{border:1px dashed var(--border);margin-top:16px}.system-group-label{text-transform:uppercase;color:var(--text-muted);letter-spacing:.08em;font-size:.75rem}.notifications-groups{flex-direction:column;display:flex}@media (width<=768px){.run-group-header{gap:6px;padding:10px 12px}.run-group-title{font-size:.85rem}.run-group-date,.btn-mark-run{display:none}}.sq-section{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);margin-bottom:20px;overflow:hidden}.sq-header{border-bottom:1px solid var(--border);background:var(--bg-hover);align-items:center;gap:8px;padding:12px 16px;display:flex}.sq-header h3{margin:0;font-size:.9rem;font-weight:600}.sq-metrics{padding:16px}.sq-metrics-text{color:var(--text);white-space:pre-wrap;font-size:.85rem;line-height:1.6}.sq-metrics-date{color:var(--text-muted);font-size:.75rem}.sq-empty{color:var(--text-muted);padding:16px;font-size:.85rem;font-style:italic}.sq-recs{padding:0 16px 16px}.sq-recs h4{color:var(--text-muted);margin-bottom:8px;font-size:.85rem;font-weight:600}.sq-rec-card{border:1px solid var(--border);border-radius:6px;margin-bottom:8px;padding:12px}.sq-rec-text{margin-bottom:8px;font-size:.85rem;line-height:1.5}.sq-rec-actions{gap:8px;display:flex}.sq-confirmed{padding:0 16px 16px}.sq-confirmed h4{color:var(--text-muted);margin-bottom:8px;font-size:.85rem;font-weight:600}.sq-confirmed-item{color:var(--text-muted);align-items:flex-start;gap:8px;margin-bottom:4px;font-size:.8rem;display:flex}.btn-sm{padding:3px 8px;font-size:.75rem}.ih-section{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);margin-bottom:20px;overflow:hidden}.ih-header{border-bottom:1px solid var(--border);background:var(--bg-hover);align-items:center;gap:8px;padding:12px 16px;display:flex}.ih-header h3{margin:0;font-size:.9rem;font-weight:600}.ih-list{max-height:400px;overflow-y:auto}.ih-item{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:10px 16px;transition:background .15s;display:flex}.ih-item:last-child{border-bottom:none}.ih-item:hover{background:var(--bg-hover)}.ih-date{color:var(--text-muted);min-width:140px;font-size:.8rem}.ih-badge-trigger{border-radius:4px;padding:2px 8px;font-size:.7rem;font-weight:600}.ih-trigger-auto{color:#818cf8;background:#6366f126}.ih-trigger-manual{color:#a78bfa;background:#8b5cf626}.ih-trigger-cron{color:#9ca3af;background:#6b728026}.ih-badge-status{border-radius:4px;align-items:center;gap:4px;padding:2px 8px;font-size:.7rem;font-weight:600;display:flex}.ih-status-ok{color:#4ade80;background:#22c55e1f}.ih-status-fail{color:#f87171;background:#ef44441f}.ih-empty{color:var(--text-muted);text-align:center;padding:24px 16px;font-size:.85rem;font-style:italic}.ih-loading{flex-direction:column;gap:8px;padding:16px;display:flex}.ih-skeleton{background:var(--bg-hover);border-radius:6px;height:36px;animation:1.5s ease-in-out infinite ih-pulse}@keyframes ih-pulse{0%,to{opacity:.5}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.ih-skeleton{animation:none}.ih-item{transition:none}}.pp-section{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);margin-bottom:20px;overflow:hidden}.pp-header{border-bottom:1px solid var(--border);background:var(--bg-hover);align-items:center;gap:8px;padding:12px 16px;display:flex}.pp-header h3{margin:0;font-size:.9rem;font-weight:600}.pp-grid{grid-template-columns:repeat(2,1fr);gap:12px;padding:16px;display:grid}.pp-card{background:var(--bg);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.pp-card-label{color:var(--text-muted);align-items:center;gap:6px;font-size:.75rem;display:flex}.pp-value{color:var(--text);font-size:1.5rem;font-weight:700;line-height:1.2}.pp-trend{align-items:center;gap:4px;font-size:.75rem;font-weight:600;display:flex}.pp-trend-up{color:var(--success)}.pp-trend-down{color:var(--danger)}.pp-chart{padding:16px}.pp-empty{color:var(--text-muted);text-align:center;padding:24px 16px;font-size:.85rem;font-style:italic}.pp-loading{color:var(--text-muted);text-align:center;padding:24px 16px;font-size:.85rem}@media (width<=768px){.pp-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.pp-card{transition:none}}.sec-section{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);margin-bottom:20px;overflow:hidden}.sec-header{border-bottom:1px solid var(--border);background:var(--bg-hover);align-items:center;gap:8px;padding:12px 16px;display:flex}.sec-header h3{margin:0;font-size:.9rem;font-weight:600}.sec-chart{padding:16px}.sec-empty{color:var(--text-muted);text-align:center;padding:24px 16px;font-size:.85rem;font-style:italic}.sec-loading{color:var(--text-muted);text-align:center;padding:24px 16px;font-size:.85rem}@media (prefers-reduced-motion:reduce){.sec-chart *{transition:none!important}}.im-section{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);margin-bottom:20px;overflow:hidden}.im-header{border-bottom:1px solid var(--border);background:var(--bg-hover);align-items:center;gap:8px;padding:12px 16px;display:flex}.im-header h3{margin:0;font-size:.9rem;font-weight:600}.im-summary{grid-template-columns:repeat(3,1fr);gap:12px;padding:16px;display:grid}.im-summary-card{background:var(--bg);border:1px solid var(--border);text-align:center;border-radius:8px;padding:12px}.im-summary-value{color:var(--text);font-size:1.3rem;font-weight:700}.im-summary-sub{color:var(--text-muted);font-size:.85rem;font-weight:400}.im-summary-label{color:var(--text-muted);margin-top:2px;font-size:.7rem}.im-groups{flex-wrap:wrap;gap:6px;padding:0 16px 12px;display:flex}.im-group-badge{background:var(--bg-hover);color:var(--text-muted);border:1px solid var(--border);border-radius:12px;padding:3px 10px;font-size:.7rem;font-weight:600}.im-group-suggested{color:#f59e0b;margin-left:4px}.im-list{flex-direction:column;gap:10px;padding:0 16px 16px;display:flex}.im-memory{border:1px solid var(--border);border-radius:8px;padding:12px;transition:background .15s}.im-memory:hover{background:var(--bg-hover)}.im-memory-header{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.im-cat-badge{color:#818cf8;background:#6366f11f;border-radius:4px;padding:2px 8px;font-size:.7rem;font-weight:600}.im-score{color:var(--text-muted);align-items:center;gap:3px;font-size:.7rem;display:flex}.im-date{color:var(--text-muted);margin-left:auto;font-size:.7rem}.im-memory-key{color:var(--text);margin-bottom:4px;font-size:.8rem;font-weight:600}.im-memory-value{color:var(--text-muted);font-size:.8rem;line-height:1.5}.im-actions{gap:8px;margin-top:8px;display:flex}.im-actions .btn{cursor:pointer}.im-empty{color:var(--text-muted);text-align:center;padding:24px 16px;font-size:.85rem;font-style:italic}.im-loading{color:var(--text-muted);text-align:center;padding:24px 16px;font-size:.85rem}@media (width<=768px){.im-summary{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.im-memory{transition:none}}.analysis-page .page-header h1{align-items:center;gap:10px;display:flex}.analysis-summary{grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:24px;display:grid}.summary-card{background:var(--card-bg);border:1px solid var(--border);text-align:center;border-radius:10px;padding:16px}.summary-value{font-size:1.8rem;font-weight:700;line-height:1}.summary-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-top:6px;font-size:.75rem}.analysis-list{flex-direction:column;gap:4px;display:flex}.analysis-row{background:var(--card-bg);border:1px solid var(--border);color:inherit;cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;padding:12px 16px;text-decoration:none;transition:border-color .15s,background .15s;display:flex}.analysis-row:hover{border-color:var(--accent);background:#6c5ce70a}.analysis-row-main{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.analysis-date{color:var(--text-muted);font-size:.8rem;font-family:var(--font-mono,monospace);flex-shrink:0;min-width:80px}.analysis-title{white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:500;overflow:hidden}.analysis-mode{text-transform:uppercase;background:var(--border);color:var(--text-muted);border-radius:4px;flex-shrink:0;padding:2px 8px;font-size:.7rem;font-weight:600}.analysis-mode.mode-fast{color:#fbbf24;background:#fbbf2426}.analysis-mode.mode-master{color:#a78bfa;background:#8b7cf626}.analysis-mode.mode-monster{color:#f97066;background:#f9706626}.analysis-fix{text-transform:uppercase;color:#60a5fa;background:#60a5fa26;border-radius:4px;flex-shrink:0;padding:2px 8px;font-size:.7rem;font-weight:600}.analysis-row-scores{flex-shrink:0;align-items:center;gap:8px;display:flex}.mini-score{font-size:.8rem;font-family:var(--font-mono,monospace);color:var(--text-muted);text-align:center;min-width:32px}.mini-score.global{border-radius:4px;padding:2px 8px;font-size:.9rem;font-weight:700}.mini-score.global.good{color:#4ade80;background:#4ade8026}.mini-score.global.ok{color:#fbbf24;background:#fbbf2426}.mini-score.global.bad{color:#f87171;background:#f8717126}.no-score{color:var(--text-muted);font-size:.8rem;font-style:italic}.row-arrow{color:var(--text-muted);opacity:0;transition:opacity .15s}.analysis-row:hover .row-arrow{opacity:1}@media (width<=768px){.analysis-summary{grid-template-columns:repeat(3,1fr)}.analysis-row{flex-direction:column;align-items:flex-start;gap:8px}.analysis-row-scores{justify-content:flex-end;width:100%}.mini-score:not(.global){display:none}}.pipeline-map-page .page-header{justify-content:space-between;align-items:center;display:flex}.pipeline-map-page .page-header h1{align-items:center;gap:10px;display:flex}.map-view-toggle{background:var(--card-bg);border:1px solid var(--border);border-radius:8px;gap:4px;padding:3px;display:flex}.map-view-toggle .btn.active{background:var(--primary);color:#fff}.map-layout{align-items:flex-start;gap:24px;margin-top:20px;display:flex}.map-graph{flex-direction:column;flex-shrink:0;gap:0;min-width:240px;display:flex}.map-node-wrapper{flex-direction:column;align-items:center;display:flex}.map-connector{background:var(--border);width:2px;height:12px}.map-node{background:var(--card-bg);border:1px solid var(--border);cursor:pointer;width:100%;color:var(--text);text-align:left;border-radius:10px;align-items:center;gap:10px;padding:12px 16px;font-family:inherit;font-size:.9rem;transition:all .15s;display:flex;position:relative}.map-node:hover{border-color:var(--node-color);background:color-mix(in srgb, var(--node-color) 8%, var(--card-bg))}.map-node.selected{border-color:var(--node-color);background:color-mix(in srgb, var(--node-color) 12%, var(--card-bg));box-shadow:0 0 0 3px color-mix(in srgb, var(--node-color) 20%, transparent)}.map-node svg{color:var(--node-color);flex-shrink:0}.map-node-label{flex:1;font-weight:600}.map-node-agents{color:var(--text-muted);background:var(--bg);border-radius:10px;flex-shrink:0;padding:2px 8px;font-size:.72rem}.map-node-new{text-transform:uppercase;letter-spacing:1px;color:#fb923c;background:#f9731633;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:.6rem;font-weight:700}.map-node.new{border-color:#f973164d}.map-panel{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;flex:1;max-height:calc(100vh - 120px);padding:20px 24px;position:sticky;top:20px;overflow-y:auto}.map-panel-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.map-panel-header h2{border:none;align-items:center;gap:8px;margin:0;padding:0;font-size:1.1rem;display:flex}.map-panel-id{color:var(--text-muted);margin-bottom:16px;font-size:.8rem}.map-panel-id code{background:var(--bg);border-radius:4px;padding:2px 6px;font-size:.8rem}.map-panel-empty{color:var(--text-muted);padding:20px 0;font-style:italic}.map-agents-list{flex-direction:column;gap:8px;margin-bottom:20px;display:flex}.map-agent-card{background:var(--bg);border:1px solid var(--border);cursor:pointer;text-align:left;width:100%;color:inherit;border-radius:8px;padding:12px 14px;font-family:inherit;transition:all .15s;display:block}.map-agent-card:hover{border-color:var(--primary)}.map-agent-card.selected{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 8%, var(--bg));box-shadow:0 0 0 2px color-mix(in srgb, var(--primary) 15%, transparent)}.agent-card-top{align-items:center;gap:8px;margin-bottom:4px;display:flex}.agent-role{font-size:.88rem;font-weight:600;font-family:var(--font-mono,monospace)}.agent-model{text-transform:uppercase;border-radius:4px;padding:2px 7px;font-size:.68rem;font-weight:700}.agent-model.model-opus{color:#a5b4fc;background:#818cf826}.agent-model.model-sonnet{color:#5eead4;background:#2dd4a826}.agent-mode{background:var(--border);color:var(--text-muted);border-radius:4px;padding:2px 7px;font-size:.68rem}.agent-mode.mode-hooked{color:#fbbf24;background:#fbbf241f}.agent-card-desc{color:var(--text-muted);font-size:.82rem;line-height:1.4}.agent-card-prompt{margin-top:6px}.prompt-status{border-radius:4px;padding:2px 8px;font-size:.72rem}.prompt-status.has{color:#4ade80;background:#4ade801f}.prompt-status.default{background:var(--border);color:var(--text-muted)}.map-prompt-editor{border-top:1px solid var(--border);margin-top:4px;padding-top:16px}.prompt-editor-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.prompt-editor-header h3{margin:0;font-size:.9rem;font-weight:600}.prompt-editor-hint{color:var(--text-muted);margin-bottom:10px;font-size:.78rem;line-height:1.4}.prompt-editor-hint code{background:var(--bg);border-radius:3px;padding:1px 5px;font-size:.75rem}.prompt-textarea{background:var(--bg);border:1px solid var(--border);width:100%;min-height:300px;color:var(--text);font-family:var(--font-mono,monospace);resize:vertical;border-radius:8px;padding:14px 16px;font-size:.82rem;line-height:1.6;transition:border-color .15s}.prompt-textarea:focus{border-color:var(--primary);outline:none}.prompt-textarea::placeholder{color:var(--text-muted);opacity:.5}@media (width<=900px){.map-layout{flex-direction:column}.map-graph{min-width:100%}.map-panel{max-height:none;position:static}}
