@matt82198/aesop 0.1.0-rc.1 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +101 -2
- package/README.md +66 -15
- package/bin/cli.js +164 -41
- package/daemons/run-watchdog.sh +16 -4
- package/daemons/selfheal.sh +231 -0
- package/docs/ANY-REPO.md +427 -0
- package/docs/CONTRIBUTING.md +72 -0
- package/docs/DEMO.md +334 -0
- package/docs/INSTALL.md +70 -1
- package/docs/QUICKSTART.md +80 -0
- package/docs/README.md +33 -3
- package/docs/TEAM-STATE.md +540 -0
- package/driver/CLAUDE.md +148 -0
- package/driver/README.md +383 -0
- package/driver/aesop.config.example.json +80 -0
- package/driver/agent_driver.py +355 -0
- package/driver/backend_config.py +253 -0
- package/driver/claude_code_driver.py +198 -0
- package/driver/codex_driver.py +626 -0
- package/driver/openai_compatible_driver.py +249 -0
- package/driver/openai_transport.py +146 -0
- package/driver/verification_policy.py +75 -0
- package/driver/wave_bridge.py +246 -0
- package/driver/wave_loop.py +1041 -0
- package/hooks/pre-push-policy.sh +109 -28
- package/mcp/server.mjs +320 -4
- package/package.json +23 -15
- package/skills/CLAUDE.md +132 -2
- package/skills/buildsystem/SKILL.md +330 -0
- package/skills/buildsystem/wave-flat-dispatch.template.mjs +658 -0
- package/skills/fleet/SKILL.md +113 -0
- package/skills/power/SKILL.md +246 -131
- package/state_store/__init__.py +2 -1
- package/state_store/api.py +19 -4
- package/state_store/coordination.py +209 -0
- package/state_store/identity.py +51 -0
- package/state_store/store.py +185 -73
- package/templates/wave-presets/data.json +65 -0
- package/templates/wave-presets/library.json +65 -0
- package/templates/wave-presets/saas.json +64 -0
- package/tools/audit_report.py +388 -0
- package/tools/bench_runner.py +100 -3
- package/tools/ci_merge_wait.py +256 -35
- package/tools/ci_workflow_lint.py +430 -0
- package/tools/claudemd_drift.py +394 -0
- package/tools/claudemd_lint.py +359 -0
- package/tools/common.py +39 -3
- package/tools/cost_ceiling.py +63 -31
- package/tools/cost_econ.py +480 -0
- package/tools/defect_escape.py +252 -0
- package/tools/doctor.js +1 -1
- package/tools/eod_sweep.py +58 -0
- package/tools/fleet.js +260 -0
- package/tools/fleet_ledger.py +209 -7
- package/tools/git_identity_check.py +315 -0
- package/tools/health-score.js +40 -0
- package/tools/health_score.py +361 -0
- package/tools/metrics_gate.py +13 -4
- package/tools/mutation_test.py +401 -0
- package/tools/portability_check.py +206 -0
- package/tools/reconcile.py +7 -4
- package/tools/secret_scan.py +137 -50
- package/tools/self_stats.py +20 -0
- package/tools/transcript_digest.py +380 -0
- package/tools/verify_activity_filter.py +437 -0
- package/tools/verify_agent_inspector.py +2 -0
- package/tools/verify_dash.py +2 -0
- package/tools/verify_dispatch_panel.py +301 -0
- package/tools/verify_failure_drilldown.py +188 -0
- package/tools/verify_prboard.py +2 -0
- package/tools/verify_scorecards.py +281 -0
- package/tools/verify_submit_encoding.py +2 -0
- package/tools/verify_ui_trio.py +409 -0
- package/tools/verify_wave_telemetry.py +268 -0
- package/tools/wave_backlog_analyzer.py +490 -0
- package/tools/wave_ledger_hook.py +150 -0
- package/tools/wave_preflight.py +512 -0
- package/tools/wave_resume.py +215 -0
- package/tools/wave_templates.py +215 -0
- package/ui/agents.py +68 -14
- package/ui/collectors.py +0 -55
- package/ui/config.py +7 -2
- package/ui/cost.py +231 -12
- package/ui/handler.py +183 -0
- package/ui/quality_scorecard.py +232 -0
- package/ui/wave_audit_tail.py +213 -0
- package/ui/wave_dispatch.py +280 -0
- package/ui/wave_failure.py +288 -0
- package/ui/wave_gantt.py +152 -0
- package/ui/wave_reasoning_tail.py +176 -0
- package/ui/wave_telemetry.py +377 -0
- package/ui/web/dist/assets/index-BGbgw2Nh.js +9 -0
- package/ui/web/dist/assets/index-DqZLgwNg.css +1 -0
- package/ui/web/dist/index.html +2 -2
- package/bin/CLAUDE.md +0 -76
- package/daemons/CLAUDE.md +0 -36
- package/dash/CLAUDE.md +0 -32
- package/docs/archive/README.md +0 -3
- package/docs/archive/spikes/tiered-cognition/ACTIVATION.md +0 -125
- package/docs/archive/spikes/tiered-cognition/DESIGN.md +0 -287
- package/docs/archive/spikes/tiered-cognition/FINDINGS.md +0 -113
- package/docs/archive/spikes/tiered-cognition/README.md +0 -27
- package/docs/archive/spikes/tiered-cognition/aesop-cognition.example.md +0 -32
- package/docs/archive/spikes/tiered-cognition/force-model-policy.merged.mjs +0 -673
- package/docs/archive/spikes/tiered-cognition/strip-tools-hook.mjs +0 -434
- package/hooks/CLAUDE.md +0 -89
- package/mcp/CLAUDE.md +0 -213
- package/monitor/CLAUDE.md +0 -40
- package/scan/CLAUDE.md +0 -30
- package/state_store/CLAUDE.md +0 -39
- package/tools/CLAUDE.md +0 -79
- package/ui/CLAUDE.md +0 -127
- package/ui/web/dist/assets/index-0qQYnvMC.js +0 -9
- package/ui/web/dist/assets/index-BdIlFieV.css +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.health-header{z-index:100;background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:var(--space-3) var(--space-5);position:sticky;top:0}.health-header__cells{gap:var(--space-4);max-width:var(--content-max-width);flex-wrap:wrap;align-items:center;margin:0 auto;display:flex}.health-header__cell{align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-bg-subtle);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer;transition:background-color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);flex-direction:column;display:flex}.health-header__cell:hover{background:var(--color-bg-inset);border-color:var(--color-border)}.health-header__cell:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.health-header__label{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.05em}.health-header__status{font-family:var(--font-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-text)}.health-header__count{font-family:var(--font-mono);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-accent)}.health-header__badge{padding:var(--space-1) var(--space-2);background:var(--color-status-warn-bg);color:var(--color-status-warn);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);display:inline-block}.health-header__icon{font-size:var(--font-size-lg);line-height:1}.health-header__cell--sse{cursor:default}.health-header__cell--sse:hover{background:var(--color-bg-subtle);border-color:var(--color-border-subtle)}.health-header__cell--timestamp{cursor:default}.health-header__cell--timestamp:hover{background:var(--color-bg-subtle);border-color:var(--color-border-subtle)}.health-header__cell--stale,.health-header__cell--stale:hover{background:var(--color-status-warn-bg);border-color:var(--color-status-warn)}.health-header__cell--theme,.health-header__cell--refresh{margin-left:auto}@media (width<=768px){.health-header{padding:var(--space-2) var(--space-3)}.health-header__cells{gap:var(--space-3)}.health-header__cell{padding:var(--space-2);font-size:var(--font-size-xs)}.health-header__count{font-size:var(--font-size-md)}}.health-header__data-wrapper{gap:var(--space-2);flex-direction:column;display:flex}.health-header__warning-strip{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-status-warn-bg);border:1px solid var(--color-status-warn);border-radius:var(--radius-md);color:var(--color-status-warn);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);animation:1.5s ease-in-out infinite pulse-warning;display:flex}.health-header__warning-icon{font-size:var(--font-size-sm);flex-shrink:0;display:inline-block}.health-header__warning-text{font-family:var(--font-mono);font-size:var(--font-size-xs)}@keyframes pulse-warning{0%,to{opacity:1}50%{opacity:.7}}@media (prefers-reduced-motion:reduce){.health-header__cell{transition:none}.health-header__warning-strip{animation:none}}.agent-row{border-bottom:1px solid var(--color-border-subtle);padding:var(--space-3) 0;list-style:none}.agent-row:last-child{border-bottom:none}.agent-row__inspect{padding:var(--space-1) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);white-space:nowrap;background:0 0;margin-left:auto}.agent-row__inspect:hover{background:var(--color-bg-subtle)}.agent-row__inspect:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.agent-row__toggle{width:var(--space-5);height:var(--space-5);margin-right:var(--space-2);cursor:pointer;color:var(--color-text-muted);transition:color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.agent-row__toggle:hover{color:var(--color-accent)}.agent-row__toggle:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px;border-radius:var(--radius-sm)}.agent-row__toggle-icon{font-size:var(--font-size-xs);line-height:1;display:inline-block}.agent-row__header{align-items:center;gap:var(--space-3);font-size:var(--font-size-sm);line-height:var(--line-height-normal);display:flex}.agent-row__status-icon{font-size:var(--font-size-lg);flex-shrink:0;display:inline-block}.agent-row__id{font-family:var(--font-mono);font-weight:var(--font-weight-bold);color:var(--color-accent);flex-shrink:0;min-width:100px}.agent-row__age{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-muted);flex-shrink:0;min-width:50px}.agent-row__hint{color:var(--color-text);word-break:break-word;flex-grow:1}.agent-row__detail{margin-top:var(--space-3);margin-left:calc(var(--space-5) + var(--space-2));padding:var(--space-3);background:var(--color-bg-subtle);border-left:2px solid var(--color-accent);border-radius:var(--radius-md);animation:.15s expand-in}@keyframes expand-in{0%{opacity:0;max-height:0}to{opacity:1;max-height:100vh}}@media (prefers-reduced-motion:reduce){.agent-row__detail{animation:none}}.agent-row__detail-row{gap:var(--space-3);margin-bottom:var(--space-2);font-size:var(--font-size-sm);line-height:var(--line-height-normal);grid-template-columns:120px 1fr;align-items:baseline;display:grid}.agent-row__detail-label{font-weight:var(--font-weight-bold);color:var(--color-text-muted);text-align:right}.agent-row__detail-value{color:var(--color-text);font-family:var(--font-mono);word-break:break-word}.agent-row__prompt{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--color-border-subtle)}.agent-row__prompt-label{margin-bottom:var(--space-2);font-weight:var(--font-weight-bold);color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;display:block}.agent-row__prompt-text{background:var(--color-bg-inset);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);font-size:var(--font-size-xs);line-height:var(--line-height-normal);color:var(--color-text);font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;max-height:300px;margin:0;overflow-y:auto}.agent-row__prompt-loading,.agent-row__prompt-error{background:var(--color-bg-inset);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);font-family:var(--font-mono);font-size:var(--font-size-sm)}.agent-row__prompt-loading{color:var(--color-text-muted)}.agent-row__prompt-error{color:var(--color-status-error)}@media (width<=768px){.agent-row__detail-row{gap:var(--space-2);grid-template-columns:1fr}.agent-row__detail-label{text-align:left;font-weight:var(--font-weight-bold)}}.agent-inspector-backdrop{z-index:1000;background:#00000073;justify-content:flex-end;display:flex;position:fixed;inset:0}.agent-inspector{background:var(--color-surface);border-left:1px solid var(--color-border);width:min(560px,100%);max-width:100%;height:100%;box-shadow:var(--shadow-md);padding:var(--space-5);gap:var(--space-4);flex-direction:column;display:flex;overflow-y:auto}.agent-inspector__head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.agent-inspector__title{font-size:var(--font-size-xl);color:var(--color-text);margin:0}.agent-inspector__close{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:2rem;height:2rem;color:var(--color-text);cursor:pointer;font-size:var(--font-size-md);background:0 0;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}.agent-inspector__close:hover{background:var(--color-bg-subtle)}.agent-inspector__close:focus-visible,.agent-inspector__transcript a:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.agent-inspector__meta{gap:var(--space-2);margin:0;display:grid}.agent-inspector__meta-row{gap:var(--space-3);font-size:var(--font-size-sm);grid-template-columns:8rem 1fr;align-items:baseline;display:grid}.agent-inspector__meta-row dt{color:var(--color-text-muted);font-weight:var(--font-weight-medium);margin:0}.agent-inspector__meta-row dd{color:var(--color-text);word-break:break-word;margin:0}.agent-inspector__mono{font-family:var(--font-mono);font-size:var(--font-size-xs)}.agent-inspector__status{align-items:center;gap:var(--space-1);font-weight:var(--font-weight-medium);display:inline-flex}.agent-inspector__status-icon{font-size:.9em}.agent-inspector__section h3{margin:0 0 var(--space-2);font-size:var(--font-size-md);color:var(--color-text)}.agent-inspector__truncated{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:400}.agent-inspector__prompt{padding:var(--space-3);background:var(--color-bg-inset);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-mono);font-size:var(--font-size-xs);line-height:var(--line-height-normal);white-space:pre-wrap;word-break:break-word;max-height:12rem;margin:0;overflow-y:auto}.agent-inspector__callout{padding:var(--space-3);border-left:4px solid var(--color-accent);border-radius:var(--radius-md);background:var(--color-bg-subtle);color:var(--color-text);font-size:var(--font-size-sm)}.agent-inspector__callout--error{border-left-color:var(--color-status-error);background:var(--color-status-error-bg)}.agent-inspector__transcript{gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:0;padding:var(--space-3);flex-direction:column;max-height:24rem;margin:0;list-style:none;display:flex;overflow-y:auto}.agent-inspector__tail-entry{gap:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border-subtle);grid-template-columns:6rem 1fr;align-items:start;display:grid}.agent-inspector__tail-entry:last-child{border-bottom:none;padding-bottom:0}.agent-inspector__tail-type{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted);white-space:nowrap}.agent-inspector__tail-type--user{color:var(--color-accent)}.agent-inspector__tail-type--assistant{color:var(--color-text)}.agent-inspector__tail-text{font-family:var(--font-mono);font-size:var(--font-size-xs);line-height:var(--line-height-normal);color:var(--color-text);white-space:pre-wrap;word-break:break-word;margin:0}@media (width<=768px){.agent-inspector{width:100%;padding:var(--space-4)}.agent-inspector__meta-row,.agent-inspector__tail-entry{gap:var(--space-1);grid-template-columns:1fr}}.agents-panel{min-width:0;padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);flex:1}.agents-panel h2{margin:0 0 var(--space-4) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text)}.agents-panel__summaries{gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-3);background:var(--color-bg-subtle);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.agent-summary{align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);font-size:var(--font-size-sm);display:flex}.agent-summary__project{font-weight:var(--font-weight-medium);color:var(--color-text);flex:none;min-width:fit-content}.agent-summary__status{padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;white-space:nowrap;flex:none}.agent-summary__status--running{background:var(--color-status-ok-bg);color:var(--color-status-ok)}.agent-summary__status--idle{background:var(--color-status-info-bg);color:var(--color-status-info)}.agent-summary__status--SUSPICIOUS,.agent-summary__status--HIGH{background:var(--color-status-error-bg);color:var(--color-status-error)}.agent-summary__status--MED,.agent-summary__status--DRIFT{background:var(--color-status-warn-bg);color:var(--color-status-warn)}.agent-summary__runtime{text-align:right;font-family:var(--font-mono);color:var(--color-text-muted);flex:1;min-width:fit-content}.agents-panel__list{margin:0;margin-top:var(--space-4);padding:0;list-style:none}@media (width<=768px){.agents-panel{padding:var(--space-3)}.agents-panel h2{font-size:var(--font-size-md)}}.alerts-panel{min-width:0;padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);flex:1}.alerts-panel h2{margin:0 0 var(--space-4) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text)}.alerts-panel__list{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.alerts-panel__item{gap:var(--space-3);padding:var(--space-3);background:var(--color-bg-subtle);border-left:4px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);line-height:var(--line-height-normal);word-break:break-word;align-items:flex-start;display:flex}.alerts-panel__item[data-severity=error]{background:var(--color-status-error-bg)}.alerts-panel__item[data-severity=warn]{background:var(--color-status-warn-bg)}.alerts-panel__item[data-severity=info]{background:var(--color-status-info-bg)}.alerts-panel__severity{min-width:60px;padding:var(--space-1) var(--space-2);font-weight:var(--font-weight-bold);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-sm);background:#0000000d;border:1.5px solid;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}@media (prefers-color-scheme:dark){.alerts-panel__severity{background:#ffffff1a}}.alerts-panel__text{color:var(--color-text);font-family:var(--font-mono);font-size:var(--font-size-xs);flex-grow:1}@media (width<=768px){.alerts-panel{padding:var(--space-3)}.alerts-panel h2{font-size:var(--font-size-md)}.alerts-panel__item{padding:var(--space-2);gap:var(--space-2)}}.events-feed{min-width:0;padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);flex:1}.events-feed h2{margin:0 0 var(--space-4) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text)}.events-feed__list{gap:var(--space-2);background:linear-gradient(to bottom, var(--color-surface) 0%, var(--color-surface) 85%, #0000000d 100%);flex-direction:column;max-height:300px;margin:0;padding:0;list-style:none;display:flex;position:relative;overflow-y:auto}.events-feed__item{padding:var(--space-2) var(--space-3);background:var(--color-bg-inset);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);font-size:var(--font-size-xs);line-height:var(--line-height-normal);color:var(--color-text-muted)}.events-feed__item code{font-family:var(--font-mono);color:var(--color-text);word-break:break-word}.empty-state{padding:var(--space-2) var(--space-3);text-align:center;color:var(--color-text-muted);font-size:var(--font-size-sm);background:var(--color-bg-inset);border-radius:var(--radius-sm);width:fit-content;margin:0 auto;display:inline-block}@media (width<=768px){.events-feed{padding:var(--space-3)}.events-feed h2{font-size:var(--font-size-md)}.events-feed__list{max-height:200px}.events-feed__item{padding:var(--space-2);font-size:var(--font-size-xs)}}.repos-panel{min-width:0;padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);flex:1}.repos-panel h2{margin:0 0 var(--space-4) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text)}.repos-panel__list{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.repos-panel__item{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--color-bg-subtle);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);font-size:var(--font-size-sm);display:flex}.repos-panel__item[data-severity=ok]{background:var(--color-status-ok-bg);border-color:var(--color-status-ok)}.repos-panel__item[data-severity=warn]{background:var(--color-status-warn-bg);border-color:var(--color-status-warn)}.repos-panel__item[data-severity=error]{background:var(--color-status-error-bg);border-color:var(--color-status-error)}.repos-panel__name{font-weight:var(--font-weight-bold);color:var(--color-text);font-family:var(--font-mono)}.repos-panel__state{font-family:var(--font-mono);font-size:var(--font-size-xs);text-align:right}.empty-state{padding:var(--space-4);text-align:center;color:var(--color-text-muted);font-size:var(--font-size-sm)}@media (width<=768px){.repos-panel{padding:var(--space-3)}.repos-panel h2{font-size:var(--font-size-md)}.repos-panel__item{padding:var(--space-2);flex-direction:column;align-items:flex-start}.repos-panel__state{text-align:left}}.inbox-form{padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.inbox-form h2{margin:0 0 var(--space-4) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text)}.inbox-form__form{gap:var(--space-3);flex-direction:column;display:flex}.inbox-form__group{gap:var(--space-2);align-items:stretch;display:flex}.inbox-form__input{min-width:0;padding:var(--space-3) var(--space-4);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-family:var(--font-sans);color:var(--color-text);line-height:var(--line-height-normal);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);flex:1}.inbox-form__input:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px;border-color:var(--color-accent)}.inbox-form__input::placeholder{color:var(--color-text-muted)}.inbox-form__input:disabled{opacity:.6;cursor:not-allowed}.inbox-form__submit{padding:var(--space-3) var(--space-5);background:var(--color-accent);color:var(--color-text-inverse);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);cursor:pointer;transition:background-color var(--transition-fast);border:none}.inbox-form__submit:hover:not(:disabled){background:var(--color-accent-emphasis)}.inbox-form__submit:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.inbox-form__submit:disabled{opacity:.5;cursor:not-allowed}.inbox-form__error{padding:var(--space-3);background:var(--color-status-error-bg);color:var(--color-status-error);border-left:4px solid var(--color-status-error);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.inbox-form__success{padding:var(--space-3);background:var(--color-status-ok-bg);color:var(--color-status-ok);border-left:4px solid var(--color-status-ok);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=768px){.inbox-form{padding:var(--space-3)}.inbox-form h2{font-size:var(--font-size-md)}.inbox-form__group{flex-direction:column}.inbox-form__submit{width:100%}}@media (prefers-reduced-motion:reduce){.inbox-form__input,.inbox-form__submit{transition:none}}.overview{gap:var(--space-4);padding:var(--space-6);max-width:var(--content-max-width);flex-direction:column;width:100%;margin:0 auto;display:flex}.overview__section{gap:var(--space-5);display:flex}.overview__section--full{width:100%}.overview__section--row{gap:var(--space-5);grid-template-columns:repeat(3,1fr);display:grid}@media (width<=1200px){.overview__section--row{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.overview{gap:var(--space-4);padding:var(--space-4)}.overview__section{gap:var(--space-3)}.overview__section--row{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.overview{scroll-behavior:auto}}.work-view{padding:var(--space-4)}.work-container{gap:var(--space-6);max-width:var(--content-max-width);grid-template-columns:1fr 300px;margin:0 auto;display:grid}@media (width<=1200px){.work-container{grid-template-columns:1fr}.work-sidebar{order:2}}.board-header{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.board-header h2{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.add-item-button{padding:var(--space-2) var(--space-3);background:var(--color-accent);color:var(--color-text-inverse);border-radius:var(--radius-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-normal);border:none}.add-item-button:hover{background:var(--color-accent-emphasis)}.add-item-button:disabled{opacity:.5;cursor:not-allowed}.form-container{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4)}.tracker-form{gap:var(--space-3);flex-direction:column;display:flex}.form-group{gap:var(--space-1);flex-direction:column;display:flex}.form-group label{font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);color:var(--color-text)}.form-group input,.form-group select,.form-group textarea{padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font-size:var(--font-size-sm)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-accent)}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{opacity:.6;cursor:not-allowed}.tracker-form button{padding:var(--space-2) var(--space-3);background:var(--color-accent);color:var(--color-text-inverse);border-radius:var(--radius-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-normal);border:none}.tracker-form button:hover:not(:disabled){background:var(--color-accent-emphasis)}.tracker-form button:disabled{opacity:.5;cursor:not-allowed}.form-error{padding:var(--space-2) var(--space-3);background:var(--color-status-error-bg);color:var(--color-status-error);border-radius:var(--radius-sm);border-left:3px solid var(--color-status-error)}.form-success{padding:var(--space-2) var(--space-3);background:var(--color-status-ok-bg);color:var(--color-status-ok);border-radius:var(--radius-sm);border-left:3px solid var(--color-status-ok)}.tracker-board{gap:var(--space-4);flex-direction:column;display:flex}.lanes-container{gap:var(--space-3);grid-template-columns:repeat(4,1fr);display:grid}@media (width<=1600px){.lanes-container{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.lanes-container{grid-template-columns:1fr}}.tracker-lane{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);min-height:300px}.lane-header{margin-bottom:var(--space-3);font-size:var(--font-size-md);font-weight:var(--font-weight-bold);justify-content:space-between;align-items:center;display:flex}.lane-count{padding:var(--space-1) var(--space-2);background:var(--color-accent);color:var(--color-text-inverse);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);display:inline-block}.lane-badge{padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);white-space:nowrap;display:inline-block}.lane-badge--active{background:var(--color-accent);color:var(--color-text-inverse)}.lane-badge--empty{background:var(--color-bg-inset);color:var(--color-text-muted)}.lane-content{gap:var(--space-2);flex-direction:column;max-height:600px;display:flex;overflow-y:auto}.lane-empty{text-align:center;color:var(--color-text-muted);padding:var(--space-4);font-style:italic}.tracker-card{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);padding:var(--space-3);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-normal)}.tracker-card:hover{box-shadow:var(--shadow-md)}.tracker-card-header{justify-content:space-between;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.tracker-card-title-row{align-items:flex-start;gap:var(--space-2);flex:1;display:flex}.priority-chip{padding:var(--space-1) var(--space-2);color:var(--color-text-inverse);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);border-radius:var(--radius-sm);white-space:nowrap;flex-shrink:0;display:inline-block}.tracker-card-title{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);line-height:var(--line-height-tight);margin:0}.expand-button{padding:var(--space-1);cursor:pointer;color:var(--color-text-muted);font-size:var(--font-size-sm);background:0 0;border:none}.expand-button:hover{color:var(--color-text)}.tracker-card-tags{gap:var(--space-1);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.tag{padding:var(--space-1) var(--space-2);background:var(--color-bg-inset);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-xs);color:var(--color-text-muted);display:inline-block}.tracker-card-details{background:var(--color-bg-inset);border-top:1px solid var(--color-border);margin:var(--space-2) 0;padding:var(--space-2) 0}.detail-section{padding:var(--space-2) 0;border-bottom:1px solid var(--color-border-subtle)}.detail-section:last-child{border-bottom:none}.detail-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-text-muted);text-transform:uppercase;margin-bottom:var(--space-1);display:block}.detail-section p,.detail-section time,.detail-section a,.detail-section code{font-size:var(--font-size-sm);color:var(--color-text)}.detail-section a{word-break:break-all}.pr-link-inert{padding:var(--space-1) var(--space-2);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-status-error);word-break:break-all;white-space:pre-wrap;display:block}.tracker-card-actions{gap:var(--space-1);margin-top:var(--space-2);display:flex}.tracker-card-actions button{padding:var(--space-1) var(--space-2);background:var(--color-accent);color:var(--color-text-inverse);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-normal);border:none;flex:1}.tracker-card-actions button:hover:not(:disabled){background:var(--color-accent-emphasis)}.tracker-card-actions button:disabled{opacity:.5;cursor:not-allowed}.card-error{padding:var(--space-2);background:var(--color-status-error-bg);color:var(--color-status-error);border-radius:var(--radius-sm);border-left:3px solid var(--color-status-error);margin-top:var(--space-2);font-size:var(--font-size-sm)}.archived-summary{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);margin-top:var(--space-4)}.archived-summary h3{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);margin-bottom:var(--space-2)}.archived-list{gap:var(--space-1);flex-direction:column;max-height:200px;list-style:none;display:flex;overflow-y:auto}.archived-item{gap:var(--space-2);padding:var(--space-2);background:var(--color-surface);border-radius:var(--radius-sm);font-size:var(--font-size-sm);align-items:center;display:flex}.archived-title{color:var(--color-text-muted);flex:1;text-decoration:line-through}.archived-priority{padding:var(--space-1) var(--space-2);background:var(--color-bg-inset);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-text-muted)}.backlog-panel{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);top:calc(var(--header-height) + var(--space-3));position:sticky}.backlog-panel h3{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);margin-bottom:var(--space-3)}.empty-state{color:var(--color-text-muted);text-align:center;padding:var(--space-3);font-style:italic}.backlog-tier{margin-bottom:var(--space-3)}.tier-header{margin-bottom:var(--space-2);justify-content:space-between;align-items:center;display:flex}.tier-header h4{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);margin:0}.tier-counts{font-size:var(--font-size-xs);color:var(--color-text-muted)}.tier-progress-bar{background:var(--color-bg-inset);border-radius:var(--radius-sm);height:6px;margin-bottom:var(--space-2);display:flex;overflow:hidden}.progress-segment{height:100%;transition:width var(--transition-normal);flex:none}.progress-segment.done{background:var(--color-status-ok)}.progress-segment.inflight{background:var(--color-status-warn)}.progress-segment.todo{background:var(--color-status-neutral)}.tier-items-list{gap:var(--space-1);flex-direction:column;max-height:250px;display:flex;position:relative;overflow-y:auto}.tier-items-list:after{background:linear-gradient(to bottom, transparent, var(--color-bg-subtle));pointer-events:none;height:20px;position:absolute;bottom:0;left:0;right:0}.backlog-item{gap:var(--space-2);padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs);background:var(--color-surface);border-radius:var(--radius-sm);word-break:break-word;align-items:flex-start;display:flex}.item-status{font-size:var(--font-size-sm);flex-shrink:0}.item-tag{font-weight:var(--font-weight-bold);color:var(--color-accent);flex-shrink:0;min-width:fit-content}.item-title{color:var(--color-text);flex:1}._container_1pt1h_5{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle);padding:var(--space-4)}._title_1pt1h_12{margin:0 0 var(--space-4) 0;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--color-text)}._timelineContent_1pt1h_19{gap:var(--space-4);flex-direction:column;display:flex}._row_1pt1h_25{gap:var(--space-3);grid-template-columns:160px 1fr 80px;align-items:center;display:grid}._rowLabel_1pt1h_32{gap:var(--space-1);font-size:var(--font-size-sm);flex-direction:column;display:flex;overflow:hidden}._agentId_1pt1h_40{font-family:var(--font-mono);font-weight:var(--font-weight-bold);color:var(--color-text);word-break:break-all}._agentStatus_1pt1h_47{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase}._barContainer_1pt1h_53{background:var(--color-bg);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);height:24px;position:relative;overflow:visible}._bar_1pt1h_53{border-radius:var(--radius-sm);height:100%;transition:width var(--transition-normal);min-width:5%;max-width:100%;padding-right:var(--space-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-inverse);white-space:nowrap;justify-content:flex-end;align-items:center;display:flex;overflow:hidden}._status-ok_1pt1h_80{background:var(--color-status-ok)}._status-info_1pt1h_84{background:var(--color-status-info)}._status-warn_1pt1h_88{background:var(--color-status-warn)}._status-error_1pt1h_92{background:var(--color-status-error)}._status-neutral_1pt1h_96{background:var(--color-status-neutral)}._rowDuration_1pt1h_100{text-align:right;font-size:var(--font-size-sm);font-family:var(--font-mono);color:var(--color-text-muted);min-width:60px}._footer_1pt1h_108{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border-subtle);font-size:var(--font-size-xs);color:var(--color-text-muted)}._legend_1pt1h_116{line-height:var(--line-height-normal);display:inline-block}@media (width<=768px){._row_1pt1h_25{gap:var(--space-2);grid-template-columns:1fr}._rowLabel_1pt1h_32{gap:var(--space-2);flex-direction:row;align-items:baseline;display:flex}._barContainer_1pt1h_53{order:3;grid-column:1}._rowDuration_1pt1h_100{text-align:left;order:2}}@media (prefers-reduced-motion:reduce){._bar_1pt1h_53{transition:none}}._scaleLabels_1pt1h_154{pointer-events:none;height:18px;display:flex;position:absolute;top:-20px;left:0;right:0}._scaleTick_1pt1h_164{flex-direction:column;align-items:center;height:100%;display:flex;position:absolute}._scaleLabel_1pt1h_154{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:var(--font-weight-normal);white-space:nowrap;text-transform:lowercase}._barLabel_1pt1h_181{font-size:var(--font-size-xs);color:var(--color-text-inverse);font-weight:var(--font-weight-bold);white-space:nowrap;margin-left:var(--space-1)}._container_jryat_5{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle);flex-direction:column;height:100%;display:flex;overflow:hidden}._header_jryat_15{padding:var(--space-4);border-bottom:1px solid var(--color-border-subtle);background:var(--color-bg);justify-content:space-between;align-items:center;display:flex}._title_jryat_24{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--color-text);margin:0}._toggleButton_jryat_31{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text-muted);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}._toggleButton_jryat_31:hover{background:var(--color-bg-inset);color:var(--color-text)}._toggleButton_jryat_31:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}._toggleButton_jryat_31[aria-pressed=true]{background:var(--color-status-ok-bg);color:var(--color-status-ok);border-color:var(--color-status-ok)}._messagesBox_jryat_58{padding:var(--space-4);gap:var(--space-3);scroll-behavior:smooth;flex-direction:column;flex:1;display:flex;overflow-y:auto}._emptyState_jryat_68{color:var(--color-text-muted);font-size:var(--font-size-sm);text-align:center;padding:var(--space-8) var(--space-4)}._message_jryat_58{padding:var(--space-3) var(--space-4);border-left:3px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);font-size:var(--font-size-sm)}._role-user_jryat_84{border-left-color:var(--color-status-info);background:#0969da0a}._role-assistant_jryat_89{border-left-color:var(--color-status-ok);background:#1a7f370a}._role_jryat_84{font-weight:var(--font-weight-bold);text-transform:uppercase;font-size:var(--font-size-xs);margin-right:var(--space-2);display:inline-block}._role-user_jryat_84 ._role_jryat_84{color:var(--color-status-info)}._role-assistant_jryat_89 ._role_jryat_84{color:var(--color-status-ok)}._timestamp_jryat_110{color:var(--color-text-muted);font-size:var(--font-size-xs);font-family:var(--font-mono);margin-left:var(--space-2);display:inline-block}._text_jryat_118{margin-top:var(--space-2);color:var(--color-text);line-height:var(--line-height-normal);word-wrap:break-word;white-space:pre-wrap}._footer_jryat_126{padding:var(--space-2) var(--space-4);border-top:1px solid var(--color-border-subtle);background:var(--color-bg);text-align:right;font-size:var(--font-size-xs)}._footerTimestamp_jryat_134{color:var(--color-text-muted);font-family:var(--font-mono)}@media (prefers-reduced-motion:reduce){._messagesBox_jryat_58{scroll-behavior:auto}}._container_lfdfx_5{gap:var(--space-6);flex-direction:column;height:100%;display:flex;overflow-y:auto}._section_lfdfx_13{flex-direction:column;flex:0 auto;min-height:200px;display:flex}._section_lfdfx_13:first-child{flex:0 40%}._section_lfdfx_13:last-child{flex:60%}@media (width<=768px){._container_lfdfx_5{gap:var(--space-4)}._section_lfdfx_13:first-child{flex:0 auto;min-height:auto}._section_lfdfx_13:last-child{flex:auto;min-height:250px}}.cost-table-wrapper{border-radius:var(--radius-md);overflow-x:auto}.cost-table{border-collapse:collapse;width:100%;font-size:var(--font-size-sm);background:var(--color-surface)}.cost-table caption{text-align:left;padding:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-muted);caption-side:top}.cost-table thead{background:var(--color-bg-inset);border-bottom:2px solid var(--color-border)}.cost-table th{padding:var(--space-2) var(--space-3);text-align:left;font-weight:var(--font-weight-bold);color:var(--color-text)}.cost-table th.col-numeric{text-align:right}.cost-table tbody tr{border-bottom:1px solid var(--color-border-subtle)}.cost-table tbody tr:hover{background:var(--color-bg-subtle)}.cost-table td{padding:var(--space-2) var(--space-3);text-align:left;color:var(--color-text)}.cost-table td.col-numeric{text-align:right;font-family:var(--font-mono)}.cost-table .model-name{font-weight:var(--font-weight-medium);font-family:var(--font-mono);font-size:var(--font-size-xs);word-break:break-word;max-width:180px}.cost-table .verdict-failed{color:var(--color-status-error)}.cost-table .verdict-empty{color:var(--color-status-warn)}.cost-table .verdict-hung{color:var(--color-status-error)}.cost-table .col-total{font-weight:var(--font-weight-bold)}@media (width<=640px){.cost-table .verdict-col-header,.cost-table .verdict-cell{display:none}}@media (width<=768px){.cost-table{font-size:var(--font-size-xs)}.cost-table th,.cost-table td{padding:var(--space-1) var(--space-2)}.cost-table .model-name{max-width:100px}}.chart-container{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);flex-direction:column;display:flex;overflow:hidden}.chart-empty{min-height:250px;padding:var(--space-6);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.chart-empty-message{margin:0 0 var(--space-2) 0;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--color-text)}.chart-empty-hint{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.cost-chart-svg{max-width:100%;height:auto;display:block;overflow:visible}.chart-footer{padding:var(--space-2) var(--space-4);border-top:1px solid var(--color-border-subtle);background:var(--color-bg);text-align:right;font-size:var(--font-size-xs)}.chart-footer-timestamp{color:var(--color-text-muted);font-family:var(--font-mono)}.chart-axis{stroke:var(--color-border);stroke-width:2px}.chart-label-x,.chart-label-y{fill:var(--color-text-muted);font-size:12px;font-family:var(--font-sans)}.bar-segment{stroke:var(--color-border-subtle);stroke-width:.5px;transition:opacity var(--transition-fast);cursor:pointer}.bar-segment:hover{opacity:.8}.bar-input{fill:var(--color-status-info)}.bar-output{fill:var(--color-accent)}.chart-legend{font-size:12px}.legend-text{fill:var(--color-text-muted);font-family:var(--font-sans);font-size:12px}@media (width<=768px){.cost-chart-svg{width:100%}.chart-label-x,.chart-label-y,.legend-text{font-size:10px}}.scorecard{padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.scorecard-header{margin-bottom:var(--space-4)}.scorecard-header h3{margin:0 0 var(--space-2) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--color-text)}.scorecard-total{font-size:var(--font-size-sm);color:var(--color-text-muted)}.scorecard-tiles{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));display:grid}.scorecard-tile{padding:var(--space-3);border-radius:var(--radius-md);text-align:center;border:1px solid var(--color-border);background:var(--color-bg-subtle)}.tile-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin-bottom:var(--space-1)}.tile-percent{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-1)}.tile-count{font-size:var(--font-size-xs);color:var(--color-text-muted)}.scorecard-tile--ok{border-color:var(--color-status-ok);background:var(--color-status-ok-bg)}.scorecard-tile--ok .tile-label,.scorecard-tile--ok .tile-percent{color:var(--color-status-ok)}.scorecard-tile--error{border-color:var(--color-status-error);background:var(--color-status-error-bg)}.scorecard-tile--error .tile-label,.scorecard-tile--error .tile-percent{color:var(--color-status-error)}.scorecard-tile--warn{border-color:var(--color-status-warn);background:var(--color-status-warn-bg)}.scorecard-tile--warn .tile-label,.scorecard-tile--warn .tile-percent{color:var(--color-status-warn)}.scorecard-tile--neutral{border-color:var(--color-status-neutral)}.scorecard-tile--neutral .tile-label,.scorecard-tile--neutral .tile-percent{color:var(--color-status-neutral)}.scorecard-footer{border-top:1px solid var(--color-border-subtle);padding-top:var(--space-3)}.scorecard-footer small{color:var(--color-text-muted);font-size:var(--font-size-xs)}.view-cost{padding:var(--space-5);max-width:var(--content-max-width)}.view-cost h2{margin-top:0;margin-bottom:var(--space-5);font-size:var(--font-size-xl);color:var(--color-text)}.view-cost h3{font-size:var(--font-size-lg);color:var(--color-text);margin-top:var(--space-5);margin-bottom:var(--space-3)}.cost-callout{padding:var(--space-4);border-left:4px solid var(--color-accent);border-radius:var(--radius-md);background:var(--color-bg-subtle);margin-bottom:var(--space-5)}.cost-callout h3{margin-top:0;margin-bottom:var(--space-2);font-size:var(--font-size-md)}.cost-callout p{color:var(--color-text);font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin:0}.cost-callout code{background:var(--color-bg-inset);font-family:var(--font-mono);border-radius:3px;padding:.2em .4em;font-size:.9em}.cost-callout--info{border-left-color:var(--color-status-info)}.cost-layout{gap:var(--space-5);display:grid}.cost-section{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);background:var(--color-surface)}.cost-section h3{margin-top:0;margin-bottom:var(--space-3)}@media (width<=768px){.view-cost{padding:var(--space-3)}.cost-layout{gap:var(--space-4)}.cost-section{padding:var(--space-3)}}.view-prboard{padding:var(--space-5);max-width:var(--content-max-width)}.prboard-head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);display:flex}.view-prboard h2{font-size:var(--font-size-xl);color:var(--color-text);margin:0}.view-prboard h3{margin-top:0;margin-bottom:var(--space-2);font-size:var(--font-size-md);color:var(--color-text)}.prboard-refresh{padding:var(--space-1) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);background:0 0}.prboard-refresh:hover{background:var(--color-bg-subtle)}.prboard-refresh:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.prboard-callout{padding:var(--space-4);border-left:4px solid var(--color-accent);border-radius:var(--radius-md);background:var(--color-bg-subtle);margin-bottom:var(--space-5);color:var(--color-text);font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.prboard-callout p{margin:var(--space-2) 0 0}.prboard-callout code{background:var(--color-bg-inset);font-family:var(--font-mono);border-radius:3px;padding:.2em .4em;font-size:.9em}.prboard-callout--info{border-left-color:var(--color-status-info)}.prboard-callout--warn{border-left-color:var(--color-status-warn)}.prboard-callout--error{border-left-color:var(--color-status-error);background:var(--color-status-error-bg)}.prboard-table-wrapper{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);overflow-x:auto}.prboard-table{border-collapse:collapse;width:100%;font-size:var(--font-size-sm)}.prboard-table caption{text-align:left;padding:var(--space-3) var(--space-4);color:var(--color-text-muted);font-size:var(--font-size-xs)}.prboard-table th{text-align:left;padding:var(--space-2) var(--space-4);border-bottom:2px solid var(--color-border);color:var(--color-text-muted);font-weight:var(--font-weight-bold);white-space:nowrap}.prboard-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-subtle);color:var(--color-text);vertical-align:top}.prboard-table tbody tr:last-child td{border-bottom:none}.prboard-num{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:var(--font-weight-medium)}.prboard-branch-tag{border-radius:var(--radius-sm);background:var(--color-bg-inset);color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.03em;padding:.1em .5em;display:inline-block}.prboard-title a{color:var(--color-accent);font-weight:var(--font-weight-medium);text-decoration:none}.prboard-title a:hover{text-decoration:underline}.prboard-title a:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px;border-radius:var(--radius-sm)}.prboard-draft-badge{color:var(--color-text-muted);font-size:var(--font-size-xs)}.prboard-branchcol code{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-muted);word-break:break-all}.prboard-status{align-items:center;gap:var(--space-1);white-space:nowrap;font-weight:var(--font-weight-medium);display:inline-flex}.prboard-status-icon{font-size:.9em}.prboard-agecol{color:var(--color-text-muted);white-space:nowrap}.prboard-blocker{color:var(--color-status-warn)}@media (width<=768px){.view-prboard{padding:var(--space-3)}.prboard-table th,.prboard-table td{padding:var(--space-2) var(--space-3)}}:root{--color-bg:#fff;--color-bg-subtle:#f6f8fa;--color-bg-inset:#eff2f5;--color-surface:#fff;--color-border:#d0d7de;--color-border-subtle:#e4e8ec;--color-text:#1f2328;--color-text-muted:#59636e;--color-text-inverse:#fff;--color-accent:#0969da;--color-accent-emphasis:#0550ae;--color-status-ok:#1a7f37;--color-status-warn:#9a6700;--color-status-error:#cf222e;--color-status-info:#0969da;--color-status-neutral:#59636e;--color-status-ok-bg:#dafbe1;--color-status-warn-bg:#fff8c5;--color-status-error-bg:#ffebe9;--color-status-info-bg:#ddf4ff;--color-focus-ring:#0969da;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, "Cascadia Mono", Consolas, "Liberation Mono", Menlo, monospace;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.375rem;--line-height-tight:1.25;--line-height-normal:1.5;--font-weight-normal:400;--font-weight-medium:500;--font-weight-bold:600;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--shadow-sm:0 1px 2px #1f232814;--shadow-md:0 3px 8px #1f23281f;--header-height:3rem;--content-max-width:90rem;--transition-fast:.12s ease;--transition-normal:.2s ease;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.text-status-ok{color:var(--color-status-ok)}.text-status-warn{color:var(--color-status-warn)}.text-status-error{color:var(--color-status-error)}.text-status-info{color:var(--color-status-info)}.text-status-neutral{color:var(--color-status-neutral)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-bg:#0d1117;--color-bg-subtle:#161b22;--color-bg-inset:#010409;--color-surface:#161b22;--color-border:#30363d;--color-border-subtle:#21262d;--color-text:#e6edf3;--color-text-muted:#9198a1;--color-text-inverse:#0d1117;--color-accent:#4493f8;--color-accent-emphasis:#79b8ff;--color-status-ok:#3fb950;--color-status-warn:#d29922;--color-status-error:#f85149;--color-status-info:#58a6ff;--color-status-neutral:#9198a1;--color-status-ok-bg:#12261e;--color-status-warn-bg:#3d3a1f;--color-status-error-bg:#4a2028;--color-status-info-bg:#121d2f;--color-focus-ring:#58a6ff;--shadow-sm:0 1px 2px #01040999;--shadow-md:0 3px 8px #010409b3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--color-bg:#0d1117;--color-bg-subtle:#161b22;--color-bg-inset:#010409;--color-surface:#161b22;--color-border:#30363d;--color-border-subtle:#21262d;--color-text:#e6edf3;--color-text-muted:#9198a1;--color-text-inverse:#0d1117;--color-accent:#4493f8;--color-accent-emphasis:#79b8ff;--color-status-ok:#3fb950;--color-status-warn:#d29922;--color-status-error:#f85149;--color-status-info:#58a6ff;--color-status-neutral:#9198a1;--color-status-ok-bg:#12261e;--color-status-warn-bg:#3d3a1f;--color-status-error-bg:#4a2028;--color-status-info-bg:#121d2f;--color-focus-ring:#58a6ff;--shadow-sm:0 1px 2px #01040999;--shadow-md:0 3px 8px #010409b3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);font-size:var(--font-size-md);line-height:var(--line-height-normal);color:var(--color-text);background:var(--color-bg)}img,svg{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--color-accent)}:focus{outline:none}:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px;border-radius:var(--radius-sm)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-header{z-index:100;align-items:center;gap:var(--space-3);min-height:var(--header-height);padding:0 var(--space-4);background:var(--color-bg-subtle);border-bottom:1px solid var(--color-border);display:flex;position:sticky;top:0}.app-title{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);white-space:nowrap}.app-nav{gap:var(--space-1);display:flex}.app-nav a{padding:var(--space-2) var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border-bottom:2px solid #0000;text-decoration:none;display:inline-block}.app-nav a[aria-current=page]{color:var(--color-text);border-bottom-color:var(--color-accent)}.app-nav a:hover{color:var(--color-text)}.app-main{max-width:var(--content-max-width);padding:var(--space-4);margin:0 auto}.view-placeholder{padding:var(--space-6);border:1px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);text-align:center}.theme-toggle{padding:var(--space-1) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-muted);background:0 0;margin-left:auto}.theme-toggle:hover{color:var(--color-text);background:var(--color-bg-inset)}.sse-status{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);white-space:nowrap}.sse-status[data-status=live]{color:var(--color-status-ok);background:var(--color-status-ok-bg)}.sse-status[data-status=reconnecting]{color:var(--color-status-warn);background:var(--color-status-warn-bg)}.sse-status[data-status=error]{color:var(--color-status-error);background:var(--color-status-error-bg)}
|