@import "https://fonts.googleapis.com/css2?family=Geist:wght@100..900&family=Geist+Mono:wght@100..900&display=swap";:root{--blue:#2463eb;--blue-hover:#1450d2;--blue-10:#2463eb1a;--blue-20:#2463eb33;--foreground:#171717;--muted:#5d636f;--bg:#fff;--bg-subtle:#f6f7f8;--bg-card:#fff;--border:#e1e7ef;--green:#21c45d;--green-light:#e9fbf0;--red:#ef4343;--red-light:#fdecec;--amber:#f59f0a;--amber-light:#fef5e7;--radius:.75rem;--radius-sm:.5rem;--max-w:80rem;--max-w-app:72rem;--sidebar-w:248px;--font:"Geist", system-ui, -apple-system, sans-serif;--font-mono:"Geist Mono", ui-monospace, monospace;--color-sprint-mode:#2362ea;--color-studios:#7947d1;--color-mode:#0c917b;--color-hub:#4f5d93;--color-sprint-capital:#1fac6a;--color-privacyai:#0891b2;--color-dev-portal:#4a4a52;--color-signal:#c24576;--color-api:#c2410c;--color-collect:#dc2626;--tint-sprint-mode:#e9effc;--tint-studios:#f1ecfa;--tint-mode:#e6f4f1;--tint-hub:#eef0f8;--tint-sprint-capital:#e8f6f0;--tint-privacyai:#e8f4f8;--tint-dev-portal:#b8b8bc;--tint-signal:#f9ecf1;--tint-api:#faeadf;--tint-collect:#fce8e8;--accent:#2362ea;--accent-10:#2362ea1a}[data-theme=dark]{--foreground:#ededed;--muted:#8a919e;--bg:#16181d;--bg-subtle:#1d1f26;--bg-card:#1d1f26;--border:#31363f;--green-light:#203c2a;--red-light:#3c2020;--amber-light:#3c3220;--blue:#5c8bf0;--blue-hover:#7ca2f3;--blue-10:#5c8bf026;--blue-20:#5c8bf040}[data-product=sprint-mode]{--accent:#2362ea;--accent-10:#2362ea1a}[data-product=studios]{--accent:#7947d1;--accent-10:#7947d11a}[data-product=mode]{--accent:#0c917b;--accent-hover:#0a7d6a;--accent-10:#0c917b1a;--accent-20:#0c917b33;--accent-tint:#e6f4f1}[data-product=hub]{--accent:#4f5d93;--accent-10:#4f5d931a}[data-product=sprint-capital]{--accent:#1fac6a;--accent-10:#1fac6a1a}[data-product=privacyai]{--accent:#0fb67f;--accent-10:#0fb67f1a}[data-product=investor]{--accent:#2362ea;--accent-10:#2362ea1a}[data-product=dev-portal]{--accent:#4a4a52;--accent-10:#4a4a521a}[data-product=signal]{--accent:#c24576;--accent-hover:#a83b65;--accent-10:#c245761a;--accent-20:#c2457633;--accent-tint:#f9ecf1}[data-product=api]{--accent:#c2410c;--accent-hover:#a3370a;--accent-10:#c2410c1a;--accent-20:#c2410c33;--accent-tint:#faeadf}[data-product=collect]{--accent:#dc2626;--accent-hover:#b91c1c;--accent-10:#dc26261a;--accent-20:#dc262633;--accent-tint:#fce8e8}*,:before,:after{box-sizing:border-box}body{font-family:var(--font);color:var(--foreground);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}body,input,textarea,button,select{font-family:var(--font)}a{color:var(--accent)}h1{margin:0 0 4px;font-size:22px;font-weight:800}p{margin:0}hr{border:none;border-top:1px solid var(--border)}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite sm-spin}@keyframes sm-spin{to{transform:rotate(360deg)}}.shell{height:100vh;display:flex;overflow:hidden}.shell-body{flex:1;display:flex;overflow:hidden}.portal-main{background:var(--bg);flex:1;min-height:0;padding:32px 28px 80px;overflow-y:auto}.portal-page-title{margin:0 0 4px;font-size:22px;font-weight:800}.portal-page-sub{color:var(--muted);margin:0;font-size:14px}.portal-sidebar{width:var(--sidebar-w);background:var(--bg);border-right:1px solid var(--border);z-index:50;flex-direction:column;flex-shrink:0;min-height:0;display:flex;overflow-y:auto}.portal-sidebar-logo{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:8px;padding:16px 18px;display:flex}.portal-sidebar-nav{flex:1;padding:8px 10px;overflow-y:auto}.ps-section{margin-bottom:4px}.ps-section-header{letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:var(--radius-sm);text-align:left;width:100%;font-size:10px;font-weight:700;font-family:var(--font);background:0 0;border:none;align-items:center;gap:8px;padding:6px 8px;transition:background .12s;display:flex}.ps-section-header:hover{background:var(--bg-subtle)}.ps-section-header img,.ps-section-header svg{border-radius:4px;flex-shrink:0;width:18px;height:18px}.ps-section-chevron{opacity:.4;margin-left:auto;transition:transform .15s}.ps-section.collapsed .ps-section-chevron{transform:rotate(-90deg)}.ps-section.collapsed .ps-section-items{display:none}.ps-section-items{padding:2px 0 6px}.ps-item{border-radius:var(--radius-sm);color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;text-align:left;width:100%;font-size:13px;font-weight:400;font-family:var(--font);background:0 0;border:none;align-items:center;gap:10px;padding:7px 12px;text-decoration:none;transition:all .12s;display:flex}.ps-item:hover{background:var(--bg-subtle);color:var(--foreground)}.ps-item.active{background:var(--bg-subtle);color:var(--foreground);font-weight:600}.ps-item svg{opacity:.55;flex-shrink:0}.ps-item.active svg{opacity:1}.ps-item.disabled{opacity:.35;cursor:not-allowed;pointer-events:none}.ps-item.locked{opacity:.35}.ps-section[data-product] .ps-item.active{background:var(--section-tint,var(--bg-subtle));color:var(--section-color,var(--foreground))}.ps-section[data-product] .ps-item.active svg{stroke:var(--section-color,currentColor)}.ps-step{border:1.5px solid var(--border);width:20px;height:20px;color:var(--muted);background:var(--bg);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:10px;font-weight:700;display:flex}.ps-section[data-product] .ps-item.active .ps-step,.ps-step.done{border-color:var(--section-color,var(--accent));color:var(--section-color,var(--accent));background:var(--section-tint,var(--accent-tint))}.ps-item.completed{opacity:.75}.portal-sidebar-user{border-top:1px solid var(--border);flex-shrink:0;align-items:center;gap:10px;padding:12px 14px;display:flex}.portal-avatar{background:var(--accent);color:#fff;cursor:pointer;width:32px;height:32px;font-size:12px;font-weight:700;font-family:var(--font);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.portal-sidebar-user-name{color:var(--foreground);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.portal-sidebar-user-co{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.portal-dropdown{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:12px;box-shadow:0 8px 30px #0000001f}.portal-dropdown-name{font-size:13px;font-weight:600}.portal-dropdown-company{color:var(--muted);font-size:11px}.portal-dropdown hr{margin:8px 0}.portal-dropdown a{color:var(--foreground);border-radius:4px;padding:6px 8px;font-size:13px;text-decoration:none;display:block}.portal-dropdown a:hover{background:var(--bg-subtle)}.portal-mobile-bar{z-index:60;background:var(--bg);border-bottom:1px solid var(--border);align-items:center;gap:12px;height:52px;padding:0 16px;display:none;position:sticky;top:0}.portal-sidebar-overlay{z-index:49;background:#0006;display:none;position:fixed;inset:0}.portal-sidebar-overlay.open{display:block}.shell-with-header{flex-direction:column}.shell-header{background:var(--bg-card,var(--bg));border-bottom:1px solid var(--border);z-index:9000;flex-shrink:0;position:sticky;top:0}.shell-header-inner{justify-content:space-between;align-items:center;gap:16px;height:56px;padding:0 20px;display:flex}.shell-header-logo{color:var(--foreground);flex-shrink:0;align-items:center;gap:10px;text-decoration:none;display:flex}.shell-header-logo-icon{background:var(--accent-10);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.shell-header-title{letter-spacing:-.3px;font-size:17px;font-weight:500}.shell-header-company{color:var(--muted);font-weight:400}.shell-header-byline{color:var(--muted);font-size:13px;font-weight:400}.shell-header-right{align-items:center;gap:10px;display:flex}.shell-with-header{flex-direction:column;height:100vh;display:flex}.shell-with-header .shell-body{flex:1;display:flex;overflow:hidden}.shell-with-header .portal-sidebar{border-top:none}.portal-sidebar-bottom-nav{border-top:1px solid var(--border);flex-shrink:0;margin-top:auto;padding:4px 0}.portal-sidebar-footer{border-top:1px solid var(--border);flex-shrink:0;padding:8px 16px}.portal-sidebar-bottom-nav+.portal-sidebar-footer{margin-top:0}.portal-sidebar-footer:not(.portal-sidebar-bottom-nav~.portal-sidebar-footer){margin-top:auto}.portal-sidebar-viewas{border-top:1px solid var(--border);flex-shrink:0;padding:8px 12px}.portal-sidebar-viewas-label{color:var(--muted);text-transform:uppercase;letter-spacing:1.2px;-webkit-user-select:none;user-select:none;padding:4px 0 6px;font-size:10px;font-weight:600}.portal-sidebar-viewas-select{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);width:100%;color:var(--foreground);cursor:pointer;font-size:12px;font-family:var(--font);padding:7px 10px}.portal-sidebar-viewas-select.active{background:var(--accent-10,#2362ea1a);color:var(--accent);border-color:var(--accent-10,#2362ea33);font-weight:600}.shell-viewas-banner{background:var(--accent-10,#2362ea1a);border:1px solid var(--accent);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;margin-bottom:16px;padding:8px 14px;font-size:13px;display:flex}.shell-viewas-banner strong{color:var(--accent)}.shell-viewas-hint{color:var(--muted);margin-left:8px}.shell-viewas-exit{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--foreground);cursor:pointer;font-size:12px;font-family:var(--font);padding:3px 10px}.shell-viewas-exit:hover{background:var(--bg-subtle)}@media (width<=768px){.shell{flex-direction:column}.portal-sidebar{z-index:50;transition:left .25s;position:fixed;top:0;bottom:0;left:-260px}.portal-sidebar.open{left:0}.portal-mobile-bar{display:flex}.portal-main{padding:20px 16px 80px}.shell-with-header .portal-sidebar{top:56px}}.sm-bc{color:var(--muted);letter-spacing:.5px;text-transform:uppercase;margin-bottom:8px;font-size:11px;font-weight:600}.sm-bc-product{color:var(--accent);font-weight:600}.sm-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:0 1px 3px #0000000f}.sm-card-body{padding:20px 24px}.sm-card-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.sm-card-title{color:var(--foreground);font-size:15px;font-weight:700}.sm-stats{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px;display:grid}@media (width<=768px){.sm-stats{grid-template-columns:1fr 1fr}}.sm-stat{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px}.sm-stat-label{color:var(--muted);letter-spacing:.8px;text-transform:uppercase;margin-bottom:6px;font-size:10px;font-weight:700}.sm-stat-value{font-size:26px;font-weight:800;line-height:1.1}.sm-stat-sub{color:var(--muted);margin-top:4px;font-size:11px}.sm-pill{letter-spacing:.5px;text-transform:uppercase;border-radius:20px;padding:3px 10px;font-size:10px;font-weight:700;display:inline-block}.sm-pill-green{background:var(--green-light);color:#16833e}.sm-pill-amber{background:var(--amber-light);color:#7a591f}.sm-pill-red{background:var(--red-light);color:#bc1010}.sm-pill-blue{background:var(--blue-10);color:var(--blue)}.sm-pill-gray{background:var(--bg-subtle);color:var(--muted)}.sm-pill-accent{background:var(--accent-tint);color:var(--accent)}.sm-badge{border-radius:999px;align-items:center;padding:2px 8px;font-size:12px;font-weight:600;display:inline-flex}.sm-badge-green{background:var(--green-light);color:#16833e}.sm-badge-blue{background:var(--blue-10);color:var(--blue)}.sm-badge-amber{background:var(--amber-light);color:#935f06}.sm-badge-red{background:var(--red-light);color:#d31212}.sm-badge-gray{background:var(--bg-subtle);color:var(--muted)}.sm-btn{border-radius:var(--radius-sm);font-family:var(--font);cursor:pointer;border:none;align-items:center;gap:8px;padding:10px 20px;font-size:13px;font-weight:600;line-height:1;text-decoration:none;transition:all .15s;display:inline-flex}.sm-btn-primary{background:var(--accent);color:#fff}.sm-btn-primary:hover{background:var(--accent-hover)}.sm-btn-secondary{background:var(--bg-card);color:var(--foreground);border:1px solid var(--border)}.sm-btn-secondary:hover{background:var(--bg-subtle);border-color:var(--accent);color:var(--accent)}.sm-btn-danger{background:var(--red);color:#fff}.sm-btn-danger:hover{opacity:.9}.sm-btn-sm{padding:6px 14px;font-size:12px}.sm-btn-lg{padding:14px 28px;font-size:16px}.sm-btn:disabled{opacity:.5;cursor:not-allowed}.sm-tabs{background:var(--bg-subtle);border-radius:10px;gap:3px;margin-bottom:24px;padding:3px;display:flex}.sm-tab{color:var(--muted);font-size:13px;font-weight:600;font-family:var(--font);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 18px;transition:all .15s}.sm-tab.active{background:var(--accent);color:#fff}.sm-tab:hover:not(.active){background:var(--border);color:var(--foreground)}.sm-progress{background:var(--bg-subtle);border-radius:4px;height:8px;overflow:hidden}.sm-progress-fill{border-radius:4px;height:100%;transition:width .6s}.sm-table{border-collapse:collapse;width:100%;font-size:14px}.sm-table th{text-align:left;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);border-bottom:1px solid var(--border);padding:8px 12px;font-size:11px;font-weight:600}.sm-table td{border-bottom:1px solid var(--border);color:var(--foreground);padding:12px}.sm-table tr:last-child td{border-bottom:none}.sm-table tr:hover td{background:var(--bg-subtle)}.sm-input,.sm-textarea,.sm-select{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;font-size:14px;font-family:var(--font);color:var(--foreground);background:var(--bg);padding:9px 12px;line-height:1.4}.sm-input:focus,.sm-textarea:focus,.sm-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-10);outline:none}.sm-textarea{resize:vertical;min-height:80px}.sm-label{color:var(--muted);text-transform:uppercase;letter-spacing:.4px;margin-bottom:4px;font-size:12px;font-weight:600;display:block}.sm-empty{text-align:center;color:var(--muted);padding:48px 24px}.sm-empty-icon{opacity:.4;margin-bottom:12px;font-size:32px}.sm-empty h3{color:var(--foreground);margin-bottom:8px;font-size:16px;font-weight:600}.sm-empty p{max-width:320px;margin:0 auto;font-size:14px;line-height:1.6}.sm-score-ring{flex-shrink:0;width:120px;height:120px;position:relative}.sm-score-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.sm-score-ring circle{fill:none;stroke-width:8px;stroke-linecap:round}.sm-score-ring .track{stroke:var(--bg-subtle)}.sm-score-ring .fill{stroke:var(--accent)}.sm-score-number{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.sm-score-number .num{color:var(--accent);font-size:32px;font-weight:800;line-height:1}.sm-score-number .lbl{color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin-top:2px;font-size:9px}:root{--font-mono:"Geist Mono", "Menlo", "Monaco", monospace;--accent:#4a4a52;--accent-10:#4a4a521a;--accent-tint:#ececed;--accent-foreground:#fff}.dev-mono{font-family:var(--font-mono);font-size:13px}.page-placeholder{flex-direction:column;align-items:flex-start;gap:8px;padding:32px;display:flex}.page-placeholder h1{color:var(--foreground);margin:0;font-size:22px;font-weight:700}.page-placeholder p{color:var(--muted);margin:0;font-size:14px}.page-placeholder .coming-soon-badge{background:var(--accent-tint);color:var(--accent);font-size:12px;font-weight:600;font-family:var(--font-mono);border-radius:20px;align-items:center;gap:6px;margin-top:4px;padding:4px 10px;display:inline-flex}.projects-root{flex-direction:column;gap:0;display:flex}.projects-toolbar{flex-wrap:wrap;align-items:center;gap:12px;padding:12px 0 20px;display:flex}.search-box{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;flex:1;align-items:center;gap:8px;min-width:180px;max-width:320px;padding:0 12px;display:flex}.search-box input{color:var(--foreground);background:0 0;border:none;outline:none;width:100%;padding:8px 0;font-size:13px}.search-box svg{color:var(--muted);flex-shrink:0}.toolbar-filters{gap:8px;display:flex}.toolbar-filters select{background:var(--bg-card);border:1px solid var(--border);color:var(--foreground);cursor:pointer;border-radius:8px;padding:6px 10px;font-size:13px}.repo-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;padding-top:4px;display:grid}.repo-card{background:var(--bg-card);border:1px solid var(--border);cursor:pointer;border-radius:10px;padding:16px;transition:border-color .15s,box-shadow .15s}.repo-card:hover{border-color:var(--accent,#4a4a52);box-shadow:0 2px 8px #00000014}.repo-card-header{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.repo-name{color:var(--foreground);font-size:14px;font-weight:600}.repo-badges{flex-wrap:wrap;gap:4px;display:flex}.repo-desc{color:var(--muted);margin:0 0 10px;font-size:12px;line-height:1.4}.repo-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;font-size:12px;display:flex}.repo-lang{align-items:center;gap:4px;display:flex}.lang-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block}.repo-stat{align-items:center;gap:3px;display:flex}.repo-pushed{margin-left:auto}.page-loading{justify-content:center;padding:60px 0;display:flex}.page-error{color:var(--red,#ef4444);padding:20px 0;font-size:13px}.tab-content{padding-top:20px}.overview-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:24px;display:grid}.overview-card{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:12px 14px}.ov-label{text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin-bottom:4px;font-size:11px;font-weight:600}.ov-value{color:var(--foreground);font-size:14px}.lang-section,.readme-section,.topics-section{margin-bottom:24px}.lang-bar{border-radius:4px;height:8px;margin-bottom:10px;display:flex;overflow:hidden}.lang-legend{flex-wrap:wrap;gap:10px;display:flex}.lang-item{color:var(--muted);align-items:center;gap:5px;font-size:12px;display:flex}.lang-pct{color:var(--foreground)}.readme-preview{background:var(--bg-card);border:1px solid var(--border);white-space:pre-wrap;word-break:break-word;color:var(--muted);border-radius:8px;max-height:200px;padding:14px;font-family:Geist Mono,monospace;font-size:12px;overflow:hidden}.topics-list{flex-wrap:wrap;gap:6px;display:flex}.issue-link{color:var(--foreground);align-items:center;gap:3px;text-decoration:none;display:inline-flex}.issue-link:hover{text-decoration:underline}.label-list{flex-wrap:wrap;gap:4px;display:flex}.gh-label{border-radius:10px;padding:1px 6px;font-size:11px;font-weight:600}.branch-name{background:var(--bg-card);border:1px solid var(--border);border-radius:4px;padding:1px 5px;font-family:Geist Mono,monospace;font-size:11px}.sha-link{color:var(--muted);font-family:Geist Mono,monospace;font-size:12px}.inbox-list{flex-direction:column;gap:8px;display:flex}.inbox-card{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:12px 14px}.inbox-card--failure{background:#ef444408;border-color:#ef44444d}.inbox-card-header{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.inbox-repo{color:var(--muted);font-size:12px}.inbox-repo a{color:inherit;text-decoration:none}.inbox-repo a:hover{text-decoration:underline}.inbox-time{color:var(--muted);margin-left:auto;font-size:12px}.inbox-title{color:var(--foreground);flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.unread-dot{background:#3b82f6;border-radius:50%;flex-shrink:0;width:6px;height:6px}.settings-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-bottom:24px;display:grid}.settings-section-title{color:var(--foreground);margin-bottom:6px;font-size:14px;font-weight:600}.settings-desc{color:var(--muted);margin:0 0 14px;font-size:12px;line-height:1.5}.settings-field{flex-direction:column;gap:6px;display:flex}.settings-field label{color:var(--muted);font-size:12px;font-weight:600}.settings-field input{background:var(--bg-subtle);border:1px solid var(--border);color:var(--foreground);border-radius:6px;outline:none;padding:8px 10px;font-size:13px;transition:border-color .15s}.settings-field input:focus{border-color:var(--accent,#4a4a52)}.settings-toggle{margin-bottom:10px}.settings-toggle label{cursor:pointer;color:var(--foreground);-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:13px;display:flex}.settings-toggle input[type=checkbox]{cursor:pointer;width:15px;height:15px}.settings-actions{justify-content:flex-end;display:flex}.cockpit-triage{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;padding:14px 16px}.cockpit-triage-title{letter-spacing:.5px;text-transform:uppercase;color:var(--muted);align-items:center;gap:6px;margin-bottom:10px;font-size:11px;font-weight:600;display:flex}.cockpit-triage-total{background:var(--bg-subtle);color:var(--foreground);border-radius:10px;padding:1px 8px;font-size:11px}.cockpit-triage-bucket{margin-bottom:10px}.cockpit-triage-bucket:last-child{margin-bottom:0}.cockpit-triage-bucket-header{align-items:center;gap:8px;margin-bottom:6px;display:flex}.cockpit-triage-count{color:var(--muted);font-size:12px}.cockpit-triage-items{flex-direction:column;display:flex}.cockpit-triage-item{border-radius:var(--radius-sm);align-items:center;gap:10px;padding:6px 8px;font-size:13px;display:flex}.cockpit-triage-item:hover{background:var(--bg-subtle)}.cockpit-triage-repo{color:var(--foreground);flex-shrink:0;font-weight:600}.cockpit-triage-id{font-family:var(--font-mono,ui-monospace, monospace);color:var(--muted);flex-shrink:0;font-size:12px}.cockpit-triage-summary{color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.cockpit-triage-kind{background:var(--bg-subtle);border:1px solid var(--border);color:var(--muted);border-radius:10px;flex-shrink:0;padding:1px 8px;font-size:11px}.cockpit-triage-item--clickable{cursor:pointer}.cockpit-triage-item--open{background:var(--bg-subtle)}.cockpit-triage-chevron{color:var(--muted);flex-shrink:0;font-size:10px}.cockpit-triage-detail{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius-sm);margin:0 8px 8px;padding:12px 14px}.cockpit-triage-detail-error{color:var(--red,#ef4444);font-size:12px}.cockpit-triage-detail-title{color:var(--foreground);margin-bottom:8px;font-size:13px;font-weight:600}.cockpit-triage-detail-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.cockpit-triage-detail-pr{color:var(--blue,#3b82f6);align-items:center;gap:4px;font-size:12px;text-decoration:none;display:inline-flex}.cockpit-triage-detail-pr:hover{text-decoration:underline}.cockpit-triage-detail-goal{color:var(--muted);margin-bottom:8px;font-size:12.5px;line-height:1.5}.cockpit-triage-detail-criteria{flex-direction:column;gap:3px;display:flex}.cockpit-triage-criterion{color:var(--foreground);align-items:baseline;gap:7px;font-size:12.5px;line-height:1.45;display:flex}.cockpit-triage-criterion--done{color:var(--muted)}.cockpit-triage-criterion-mark{color:var(--muted);flex-shrink:0;font-size:11px}.cockpit-triage-criterion--done .cockpit-triage-criterion-mark{color:var(--green,#22c55e)}.dash-triage-section .dash-triage-allclear{color:var(--green,#22c55e);font-weight:500}.dash-triage-empty{color:var(--muted);padding:4px 0;font-size:13px}.dash-triage-bucket{margin-bottom:10px}.dash-triage-bucket:last-child{margin-bottom:0}.dash-triage-bucket-header{align-items:center;gap:8px;margin-bottom:6px;display:flex}.dash-triage-count{color:var(--muted);font-size:12px}.dash-triage-items{flex-direction:column;display:flex}.dash-triage-item{border-radius:var(--radius-sm);align-items:center;gap:10px;padding:6px 8px;font-size:13px;display:flex}.dash-triage-item:hover{background:var(--bg-subtle)}.dash-triage-repo{color:var(--foreground);flex-shrink:0;font-weight:600}.dash-triage-id{font-family:var(--font-mono,ui-monospace, monospace);color:var(--muted);flex-shrink:0;font-size:12px}.dash-triage-title{color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.dash-triage-reason{background:var(--bg-subtle);border:1px solid var(--border);color:var(--muted);border-radius:10px;flex-shrink:0;padding:1px 8px;font-size:11px}.triage-root{flex-direction:column;gap:0;min-height:0;display:flex}.triage-filters{flex-wrap:wrap;align-items:center;gap:10px;padding:0 0 16px;display:flex}.triage-search-wrap{background:var(--bg-subtle);border:1px solid var(--border);min-width:180px;color:var(--muted);border-radius:8px;flex:1;align-items:center;gap:7px;padding:7px 12px;display:flex}.triage-search{color:var(--foreground);background:0 0;border:none;outline:none;width:100%;font-size:13px}.triage-select{background:var(--bg-subtle);border:1px solid var(--border);color:var(--foreground);cursor:pointer;border-radius:8px;outline:none;padding:7px 10px;font-size:13px}.triage-board{flex-direction:column;gap:10px;display:flex}.triage-lane{border:1px solid var(--border);background:var(--bg-card);border-radius:10px;overflow:hidden}.triage-lane-header{cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--bg-subtle);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 16px;transition:background .15s;display:flex}.triage-lane-header:hover{background:var(--bg-subtle)}.triage-lane-label{align-items:center;gap:10px;display:flex}.triage-lane-sublabel{color:var(--foreground);font-size:13px;font-weight:600}.triage-lane-count-row{align-items:center;gap:10px;display:flex}.triage-lane-count{color:var(--muted);background:var(--border);border-radius:12px;padding:2px 9px;font-size:13px;font-weight:700}.triage-lane-toggle{color:var(--muted);font-size:11px}.triage-lane-body{flex-direction:column;gap:8px;padding:12px;display:flex}.triage-lane-empty{text-align:center;color:var(--muted);padding:16px;font-size:13px}.triage-severity-badge{letter-spacing:.03em;border-radius:6px;justify-content:center;align-items:center;width:32px;height:22px;font-size:11px;font-weight:800;display:inline-flex}.triage-severity-badge--red{color:#fff;background:#ef4444}.triage-severity-badge--orange{color:#fff;background:#f97316}.triage-severity-badge--yellow{color:#fff;background:#eab308}.triage-severity-badge--green{color:#fff;background:#22c55e}.triage-severity-badge--muted{background:var(--border);color:var(--muted)}.triage-lane--red{border-left:3px solid #ef4444}.triage-lane--orange{border-left:3px solid #f97316}.triage-lane--yellow{border-left:3px solid #eab308}.triage-lane--green{border-left:3px solid #22c55e}.triage-lane--muted{border-left:3px solid var(--border)}.triage-card{background:var(--bg-subtle);border:1px solid var(--border);border-radius:8px;padding:12px 14px;transition:border-color .15s}.triage-card:hover{border-color:var(--blue)}.triage-card--stale{opacity:.75}.triage-card-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:6px;display:flex}.triage-card-title{color:var(--foreground);flex:1;font-size:13px;font-weight:500;line-height:1.4;text-decoration:none}.triage-card-title:hover{color:var(--blue);text-decoration:underline}.triage-card-age{color:var(--muted);white-space:nowrap;flex-shrink:0;font-size:11px}.triage-card-age--warn{color:#f97316}.triage-card-meta{align-items:center;gap:8px;margin-bottom:6px;display:flex}.triage-card-repo{color:var(--muted);background:var(--border);border-radius:4px;padding:1px 6px;font-size:11px}.triage-card-number{color:var(--muted);font-size:11px}.triage-card-assignees{align-items:center;gap:3px;margin-left:auto;display:flex}.triage-avatar{border:1px solid var(--border);border-radius:50%;width:20px;height:20px}.triage-card-labels{flex-wrap:wrap;gap:4px;display:flex}.triage-label{border:1px solid var(--border);color:var(--foreground);white-space:nowrap;border-radius:10px;padding:1px 6px;font-size:10px}.triage-loading,.triage-error{color:var(--muted);align-items:center;gap:10px;padding:32px;font-size:14px;display:flex}.triage-error{color:#ef4444}.quality-root{flex-direction:column;gap:0;display:flex}.quality-loading,.quality-error{color:var(--muted);align-items:center;gap:10px;padding:32px;font-size:14px;display:flex}.quality-error{color:#ef4444}.quality-heatmap-wrap{border:1px solid var(--border);border-radius:10px;margin-bottom:14px;overflow-x:auto}.quality-heatmap{border-collapse:collapse;width:100%;font-size:13px}.quality-heatmap thead{background:var(--bg-subtle)}.quality-heatmap th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border);white-space:nowrap;padding:10px 12px;font-size:11px;font-weight:700}.quality-repo-col{min-width:160px}.quality-dim-col{min-width:110px;text-align:center!important}.quality-heatmap tbody tr{border-bottom:1px solid var(--border)}.quality-heatmap tbody tr:last-child{border-bottom:none}.quality-heatmap tbody tr:hover{background:var(--bg-subtle)}.quality-repo-name{color:var(--foreground);white-space:nowrap;padding:10px 12px;font-size:13px;font-weight:500}.quality-repo-name a{color:var(--foreground);text-decoration:none}.quality-repo-name a:hover{color:var(--blue);text-decoration:underline}.quality-cell-wrap{text-align:center;padding:6px 8px}.quality-cell{cursor:pointer;border-radius:6px;justify-content:center;align-items:center;min-width:60px;padding:5px 10px;font-size:12px;font-weight:600;transition:opacity .15s;display:inline-flex}.quality-cell:hover{opacity:.85}.quality-cell--green{color:#16a34a;background:#22c55e22;border:1px solid #22c55e44}.quality-cell--yellow{color:#a16207;background:#eab30822;border:1px solid #eab30844}.quality-cell--red{color:#dc2626;background:#ef444422;border:1px solid #ef444444}.quality-cell--unknown{background:var(--bg-subtle);color:var(--muted);border:1px solid var(--border)}.quality-legend{color:var(--muted);align-items:center;gap:18px;margin-bottom:12px;font-size:12px;display:flex}.quality-legend-item{align-items:center;gap:5px;display:flex}.quality-dot{border-radius:50%;width:10px;height:10px}.quality-dot--green{background:#22c55e}.quality-dot--yellow{background:#eab308}.quality-dot--red{background:#ef4444}.quality-dot--unknown{background:var(--border)}.quality-errors{color:var(--muted);align-items:center;gap:8px;padding:6px 0;font-size:12px;display:flex}.quality-drawer-overlay{z-index:1000;background:#00000059;justify-content:flex-end;align-items:flex-end;display:flex;position:fixed;inset:0}.quality-drawer{background:var(--bg-card);border-left:1px solid var(--border);border-top:1px solid var(--border);flex-direction:column;width:360px;height:100%;display:flex;box-shadow:-4px 0 24px #0000001f}.quality-drawer--settings{width:440px}.quality-drawer-header{border-bottom:1px solid var(--border);background:var(--bg-subtle);align-items:center;gap:10px;padding:16px 20px;display:flex}.quality-drawer-title{color:var(--foreground);flex:1;font-size:14px;font-weight:700}.quality-drawer-dim{color:var(--muted);font-size:12px}.quality-drawer-close{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:16px}.quality-drawer-close:hover{background:var(--border)}.quality-drawer-body{flex:1;padding:24px 20px;overflow-y:auto}.quality-drawer-metric{align-items:baseline;gap:8px;margin-bottom:16px;display:flex}.quality-drawer-val{color:var(--foreground);font-size:36px;font-weight:800}.quality-drawer-unit{color:var(--muted);font-size:14px}.quality-drawer-desc{color:var(--muted);margin-bottom:20px;font-size:13px;line-height:1.6}.quality-drawer-link{color:var(--blue);font-size:13px;text-decoration:none}.quality-drawer-link:hover{text-decoration:underline}.threshold-row{border-bottom:1px solid var(--border);margin-bottom:20px;padding-bottom:20px}.threshold-row:last-of-type{border-bottom:none;margin-bottom:0}.threshold-label{color:var(--foreground);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;font-size:12px;font-weight:700}.threshold-inputs{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.threshold-inputs label{color:var(--muted);align-items:center;gap:5px;font-size:12px;display:flex}.threshold-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.threshold-dot--green{background:#22c55e}.threshold-dot--yellow{background:#eab308}.threshold-input{background:var(--bg-subtle);border:1px solid var(--border);width:60px;color:var(--foreground);border-radius:5px;outline:none;padding:4px 7px;font-size:12px}.threshold-unit{color:var(--muted);font-size:11px}.threshold-note{color:var(--muted);font-size:11px;font-style:italic}.threshold-actions{gap:8px;margin-top:20px;display:flex}.pm-filter-toggle{border:1px solid var(--border);background:var(--bg-card);color:var(--muted);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;font-weight:500;transition:all .15s;display:flex}.pm-filter-toggle:hover{border-color:var(--blue);color:var(--foreground)}.pm-filter-toggle--active{border-color:var(--blue);background:color-mix(in srgb, var(--blue) 10%, transparent);color:var(--blue)}.pm-filter-dot{background:currentColor;border-radius:50%;flex-shrink:0;width:7px;height:7px}.pm-filter-count{background:var(--blue);color:#fff;border-radius:10px;padding:1px 5px;font-size:10px}.repo-card--pm{border-left:2px solid var(--blue)}.pm-overlay{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;padding-top:8px;display:flex}.pm-health-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.pm-sprint-badge{color:var(--muted);background:var(--bg-subtle);border:1px solid var(--border);border-radius:4px;align-items:center;gap:5px;padding:2px 6px;font-size:11px;display:flex}.pm-sprint-pct{color:var(--blue);font-weight:600}.pm-gates-badge{color:var(--muted);background:var(--bg-subtle);border:1px solid var(--border);border-radius:4px;padding:2px 6px;font-size:11px}.pm-no-project{padding:40px 0}.sprint-tab{padding:0}.sprint-header{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:20px;display:flex}.sprint-selector select{background:var(--bg-card);border:1px solid var(--border);color:var(--foreground);border-radius:6px;outline:none;padding:6px 10px;font-size:13px}.sprint-meta{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.sprint-dates{color:var(--muted);font-size:12px}.sprint-progress-wrap{align-items:center;gap:8px;display:flex}.sprint-progress-bar{background:var(--border);border-radius:3px;width:80px;height:6px;overflow:hidden}.sprint-progress-fill{background:var(--blue);border-radius:3px;height:100%;transition:width .3s}.sprint-progress-pct{color:var(--blue);font-size:12px;font-weight:600}.sprint-bug-ratio{color:var(--muted);font-size:11px}.kanban-board{grid-template-columns:repeat(4,1fr);gap:12px;min-height:300px;display:grid}@media (width<=900px){.kanban-board{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.kanban-board{grid-template-columns:1fr}}.kanban-col{background:var(--bg-subtle);border:1px solid var(--border);border-radius:8px;min-height:200px;padding:12px}.kanban-col-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.kanban-col-count{color:var(--muted);font-size:12px;font-weight:600}.kanban-empty{color:var(--muted);text-align:center;padding:20px 0;font-size:12px}.kanban-cards{flex-direction:column;gap:8px;display:flex}.kanban-card{background:var(--bg-card);border:1px solid var(--border);border-radius:6px;padding:8px 10px;position:relative}.kanban-card-title{color:var(--foreground);font-size:12px;line-height:1.4}.kanban-card-meta{color:var(--muted);margin-top:4px;font-size:11px}.kanban-card-link{color:var(--muted);opacity:.5;text-decoration:none;position:absolute;top:8px;right:8px}.kanban-card-link:hover{opacity:1}.milestones-tab{padding:8px 0}.milestone-timeline{border-left:2px solid var(--border);flex-direction:column;gap:0;padding-left:16px;display:flex}.milestone-row{align-items:flex-start;gap:16px;padding:16px 0;display:flex;position:relative}.milestone-row:last-child{padding-bottom:0}.milestone-row--done{opacity:.6}.milestone-dot{border:2px solid var(--border);background:var(--bg-card);border-radius:50%;flex-shrink:0;width:12px;height:12px;margin-top:3px;margin-left:-22px}.milestone-dot--active{background:var(--blue);border-color:var(--blue)}.milestone-dot--completed{background:#22c55e;border-color:#22c55e}.milestone-dot--blocked{background:#ef4444;border-color:#ef4444}.milestone-dot--pending{background:var(--bg-card);border-color:#eab308}.milestone-dot--cancelled{background:var(--border);border-color:var(--border)}.milestone-body{flex:1}.milestone-title{color:var(--foreground);margin-bottom:6px;font-size:14px;font-weight:600}.milestone-sub{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.milestone-date{color:var(--muted);font-size:12px}.milestone-gate{color:var(--muted);background:var(--bg-subtle);border:1px solid var(--border);border-radius:4px;padding:1px 6px;font-size:11px}.milestone-desc{color:var(--muted);font-size:13px;line-height:1.5}.health-tab{flex-direction:column;gap:16px;padding:8px 0;display:flex}.health-entry{background:var(--bg-subtle);border:1px solid var(--border);border-radius:8px;padding:16px}.health-entry-header{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.health-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.health-date{color:var(--muted);font-size:12px;font-weight:500}.health-narrative{margin-top:10px}.health-narrative-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:4px;font-size:11px;font-weight:700}.health-narrative-text{color:var(--foreground);font-size:13px;line-height:1.6}.dashboard-root{flex-direction:column;height:100%;display:flex}.dashboard-body{flex-direction:column;flex:1;gap:20px;padding:24px;display:flex;overflow-y:auto}.dashboard-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}@media (width<=800px){.dashboard-grid{grid-template-columns:1fr}}.dash-section{background:var(--bg-subtle);border:1px solid var(--border);border-radius:10px;padding:20px}.dash-section--attention{background:color-mix(in srgb, #ef4444 5%, var(--bg-card));border-color:#ef4444}.dash-section-title{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);align-items:center;margin-bottom:16px;font-size:12px;font-weight:700;display:flex}.dash-section-loading{justify-content:center;padding:40px;display:flex}.dash-stat-row{grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:12px;margin-bottom:20px;display:grid}.dash-stat-card{background:var(--bg-card);border:1px solid var(--border);text-align:center;border-radius:8px;padding:12px 14px}.dash-stat-value{color:var(--foreground);margin-bottom:4px;font-size:28px;font-weight:800;line-height:1}.dash-stat-label{color:var(--muted);font-size:11px;font-weight:500}.dash-stat-sub{color:var(--muted);margin-top:3px;font-size:10px}.dash-health-list{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.dash-health-row{background:var(--bg-card);border:1px solid var(--border);border-radius:6px;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 10px;display:flex}.dash-health-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.dash-health-name{color:var(--foreground);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:13px;font-weight:600;overflow:hidden}.dash-health-company{color:var(--muted);white-space:nowrap;font-size:11px}.dash-health-sprint{color:var(--muted);align-items:center;gap:4px;font-size:11px;display:flex}.dash-health-pct{color:var(--blue);font-weight:600}.dash-gaps{border-top:1px solid var(--border);align-items:center;gap:10px;padding-top:12px;font-size:12px;display:flex}.dash-gaps-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.dash-gaps-value{color:var(--foreground)}.dash-repo-list{flex-direction:column;gap:6px;display:flex}.dash-repo-row{background:var(--bg-card);border:1px solid var(--border);border-radius:6px;align-items:center;gap:10px;padding:8px 10px;display:flex}.dash-repo-name{color:var(--foreground);flex:1;font-size:13px;font-weight:600}.dash-repo-org{flex-shrink:0}.dash-repo-pushed{color:var(--muted);white-space:nowrap;font-size:11px}.dash-attention-list{flex-direction:column;gap:6px;display:flex}.dash-attention-row{background:var(--bg-card);border:1px solid var(--border);border-radius:6px;align-items:center;gap:10px;padding:8px 10px;display:flex}.dash-attention-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.dash-attention-label{color:var(--foreground);flex:1;font-size:13px;font-weight:600}.dash-attention-detail{color:var(--muted);font-size:12px}.dash-attention-link{color:var(--muted);opacity:.6;flex-shrink:0;text-decoration:none}.dash-attention-link:hover{opacity:1}.runs-root{flex-direction:column;gap:0;display:flex}.runs-toolbar{flex-wrap:wrap;align-items:center;gap:12px;padding:8px 0 16px;display:flex}.runs-view-toggle{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;display:flex;overflow:hidden}.runs-view-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:6px 16px;font-size:13px;font-weight:500;transition:background .15s,color .15s}.runs-view-btn--active{background:var(--accent);color:var(--accent-foreground,#fff)}.runs-filters{flex-wrap:wrap;gap:8px;display:flex}.runs-filter-select{background:var(--bg-card);border:1px solid var(--border);color:var(--foreground);cursor:pointer;border-radius:8px;padding:6px 10px;font-size:13px}.runs-loading{justify-content:center;padding:40px;display:flex}.runs-error{color:var(--red,#ef4444);align-items:center;gap:8px;padding:16px;font-size:14px;display:flex}.runs-list{border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:1px;display:flex;overflow:hidden}.run-card{background:var(--bg-card);justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;transition:background .1s;display:flex}.run-card+.run-card{border-top:1px solid var(--border)}.run-card--clickable{cursor:pointer}.run-card--clickable:hover{background:var(--hover,var(--border))}.run-card-left{flex:1;align-items:flex-start;gap:10px;min-width:0;display:flex}.run-status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:5px}.run-status-dot--green{background:var(--green,#22c55e)}.run-status-dot--red{background:var(--red,#ef4444)}.run-status-dot--yellow{background:var(--yellow,#eab308);animation:1.5s infinite pulse}.run-status-dot--gray{background:var(--border)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.run-card-meta{flex:1;min-width:0}.run-card-name{color:var(--foreground);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.run-card-sub{color:var(--muted);align-items:center;gap:6px;margin-top:2px;font-size:12px;display:flex}.run-card-repo{font-weight:500}.run-card-branch,.run-card-sha{color:var(--muted)}.run-card-trigger{font-size:11px}.run-card-commit{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:400px;margin-top:3px;font-size:11px;overflow:hidden}.run-card-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.run-card-dur{color:var(--muted);font-size:12px}.run-card-time{color:var(--muted);white-space:nowrap;font-size:12px}.run-card-ext{color:var(--muted);opacity:.5;align-items:center;text-decoration:none;display:flex}.run-card-ext:hover{opacity:1}.run-mono{font-family:var(--font-mono)}.pipe-list{border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:1px;display:flex;overflow:hidden}.pipe-row{background:var(--bg-card);align-items:center;gap:16px;padding:12px 16px;display:flex}.pipe-row+.pipe-row{border-top:1px solid var(--border)}.pipe-repo-name{color:var(--foreground);flex-shrink:0;min-width:180px;font-size:12px;font-weight:600}.pipe-stages{flex-wrap:wrap;flex:1;align-items:center;gap:6px;display:flex}.pipe-stage{background:var(--bg);border:1px solid var(--border);color:var(--muted);border-radius:6px;align-items:center;gap:5px;padding:4px 8px;font-size:12px;display:flex}.pipe-stage--clickable{cursor:pointer;transition:background .1s}.pipe-stage--clickable:hover{background:var(--hover,var(--border))}.pipe-stage-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.pipe-stage-dot--green{background:var(--green,#22c55e)}.pipe-stage-dot--red{background:var(--red,#ef4444)}.pipe-stage-dot--yellow{background:var(--yellow,#eab308)}.pipe-stage-dot--gray{background:var(--border)}.pipe-stage-label{font-weight:500}.pipe-stage-time{color:var(--muted);margin-left:2px;font-size:11px}.pipe-arrow{color:var(--muted);flex-shrink:0;font-size:13px}.run-detail-root{flex-direction:column;gap:20px;display:flex}.run-detail-loading,.run-detail-error{color:var(--muted);justify-content:center;align-items:center;gap:8px;padding:40px;display:flex}.run-detail-error{color:var(--red,#ef4444)}.run-detail-back{padding-bottom:4px}.run-back-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:13px;transition:color .15s}.run-back-btn:hover{color:var(--foreground)}.run-detail-meta{border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:0;display:flex;overflow:hidden}.run-meta-row{border-top:1px solid var(--border);align-items:center;gap:12px;padding:10px 16px;font-size:13px;display:flex}.run-meta-row:first-child{border-top:none}.run-meta-key{color:var(--muted);flex-shrink:0;min-width:80px;font-weight:500}.run-meta-val{color:var(--foreground)}.run-meta-link{color:var(--accent);align-items:center;gap:4px;font-size:13px;text-decoration:none;display:flex}.run-meta-link:hover{text-decoration:underline}.run-detail-gantt{flex-direction:column;gap:12px;display:flex}.run-section-title{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:13px;font-weight:600}.gantt-root{border:1px solid var(--border);border-radius:10px;font-size:12px;overflow:hidden}.gantt-empty{color:var(--muted);text-align:center;padding:24px}.gantt-header{background:var(--bg-card);border-bottom:1px solid var(--border);align-items:center;gap:0;padding:8px 16px;display:flex}.gantt-header-label{min-width:220px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;font-size:11px;font-weight:600}.gantt-header-timeline{color:var(--muted);font-size:11px;font-family:var(--font-mono);flex:1;justify-content:space-between;display:flex}.gantt-job-group{border-top:1px solid var(--border)}.gantt-row{align-items:center;display:flex}.gantt-row--job{background:var(--bg-card);min-height:36px}.gantt-row--step{background:var(--background,#fafafa);min-height:28px}.gantt-row-label{flex-shrink:0;align-items:center;gap:6px;min-width:220px;padding:0 16px;display:flex;overflow:hidden}.gantt-row-label--job{color:var(--foreground);font-size:12px;font-weight:600}.gantt-row-label--step{color:var(--muted);padding-left:32px;font-size:11px}.gantt-step-name{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.gantt-dur{font-family:var(--font-mono);color:var(--muted);flex-shrink:0;font-size:11px}.gantt-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.gantt-dot--green{background:var(--green,#22c55e)}.gantt-dot--red{background:var(--red,#ef4444)}.gantt-dot--yellow{background:var(--yellow,#eab308)}.gantt-dot--gray{background:var(--border)}.gantt-row-track{flex:1;align-items:center;height:100%;min-height:28px;padding:0 16px 0 8px;display:flex;position:relative}.gantt-bar{border-radius:3px;min-width:3px;height:10px;position:absolute}
