:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0d1117;--bg-elevated:#161b22;--bg-inset:#0d1117;--border:#30363d;--border-muted:#21262d;--text:#e6edf3;--text-muted:#8b949e;--accent:#58a6ff;--success:#3fb950;--failure:#f85149;--neutral:#8b949e;--cancelled:#d29922;--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);font-family:var(--font-sans);margin:0;padding:0;font-size:14px;line-height:1.5}.app-header{border-bottom:1px solid var(--border-muted);background:var(--bg-elevated);padding:20px 24px}.app-header h1{margin:0;font-size:20px;font-weight:600}.header-sub{color:var(--text-muted);font-size:15px;font-weight:400}.header-note{color:var(--text-muted);margin:4px 0 0;font-size:13px}#app{max-width:960px;margin:0 auto;padding:24px}.dash-header{background:var(--bg-elevated);border:1px solid var(--border-muted);border-radius:6px;align-items:center;gap:16px;margin-bottom:16px;padding:12px 16px;font-size:13px;display:flex}.header-relays{color:var(--text-muted);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.header-coordinator{color:var(--text-muted);font-family:var(--font-mono);margin-left:auto}.live-dot{border-radius:50%;flex:none;width:10px;height:10px}.live-dot.live{background:var(--success);box-shadow:0 0 6px var(--success)}.live-dot.down{background:var(--failure);box-shadow:0 0 6px var(--failure)}.conn-lost{color:var(--failure);text-transform:uppercase;letter-spacing:.03em;font-size:12px;font-weight:600}.reconnect-btn{background:var(--bg-inset);color:var(--accent);border:1px solid var(--border);font-size:12px;font-family:var(--font-sans);cursor:pointer;border-radius:4px;padding:4px 10px}.reconnect-btn:hover{border-color:var(--accent);background:#58a6ff1a}.run-list{flex-direction:column;gap:8px;display:flex}.run-row{background:var(--bg-elevated);border:1px solid var(--border-muted);cursor:pointer;border-radius:6px;align-items:center;gap:12px;padding:10px 14px;display:flex}.run-row.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.run-title{color:var(--text);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.conclusion-icon{font-family:var(--font-mono);flex:none;font-size:14px;font-weight:700}.conclusion-icon.conclusion-ok{color:var(--success)}.conclusion-icon.conclusion-fail{color:var(--failure)}.conclusion-icon.conclusion-warn{color:var(--cancelled)}.conclusion-icon.conclusion-skip,.conclusion-icon.conclusion-neutral{color:var(--neutral)}.run-status,.job-status{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.03em;border-radius:12px;padding:2px 8px;font-size:12px}.status-in_progress{color:var(--accent);background:#58a6ff26}.status-queued{color:var(--text-muted);background:#8b949e26}.status-concluded{color:var(--success);background:#3fb9501f}.conclusion-badge{font-family:var(--font-mono);border-radius:12px;padding:2px 8px;font-size:12px}.conclusion-ok{color:var(--success);background:#3fb95026}.conclusion-fail{color:var(--failure);background:#f8514926}.conclusion-warn{color:var(--cancelled);background:#d2992226}.conclusion-skip,.conclusion-neutral{color:var(--neutral);background:#8b949e26}.run-commit{font-family:var(--font-mono);color:var(--accent)}.run-workflow{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.run-trigger{color:var(--text-muted);font-size:12px}.run-time{color:var(--text-muted);white-space:nowrap;margin-left:auto;font-size:12px}.job-list-pane{background:var(--bg-elevated);border:1px solid var(--border-muted);border-radius:6px;margin-top:16px;padding:12px 16px}.job-list-heading{color:var(--text);margin:0 0 8px;font-size:14px;font-weight:600}.job-pane-empty{color:var(--text-muted);background:var(--bg-elevated);border:1px solid var(--border-muted);border-radius:6px;margin-top:16px;padding:12px 16px}.job-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.job-row{background:var(--bg-inset);border:1px solid var(--border-muted);border-radius:4px;flex-wrap:wrap;align-items:center;gap:10px;padding:6px 12px;display:flex}.job-name{font-family:var(--font-mono);min-width:180px;font-size:13px}.job-exit{font-family:var(--font-mono);color:var(--failure);font-size:12px}.job-runs-on{font-family:var(--font-mono);color:var(--text-muted);font-size:12px}.job-queued,.job-started{color:var(--text-muted);white-space:nowrap;font-size:12px}.job-spinner{color:var(--accent);font-size:14px;animation:1s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.job-log-details{flex-basis:100%;margin-top:4px}.log-toggle{cursor:pointer;color:var(--accent);-webkit-user-select:none;user-select:none;font-size:12px}.job-log-tail{background:var(--bg);border:1px solid var(--border-muted);font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;color:var(--text);border-radius:4px;max-height:240px;margin:6px 0 0;padding:8px 10px;font-size:12px;overflow:auto}.job-empty{color:var(--text-muted);margin:4px 0;font-size:13px}.empty-state{color:var(--text-muted);text-align:center;padding:40px 0}
