:root{--bg:#f6f7f9;--fg:#14171c;--muted:#5b6472;--card:#fff;--line:#dde1e7;--accent:#1f4fd8;--ok:#13795b;--warn:#a15c00;--bad:#b3261e}
@media (prefers-color-scheme:dark){:root{--bg:#0f1216;--fg:#e8ebf0;--muted:#9aa4b2;--card:#171b21;--line:#2a313b;--accent:#7aa2ff;--ok:#4cc9a0;--warn:#f0b35a;--bad:#ff8a80}}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.45 system-ui,sans-serif}
header{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center;padding:.6rem 16px;background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0}
.brand{white-space:nowrap}nav{display:flex;flex-wrap:wrap;gap:.25rem;flex:1}
nav a{padding:.45rem .7rem;border-radius:8px;color:var(--fg);text-decoration:none;min-height:44px;display:inline-flex;align-items:center}
nav a[aria-current=page]{background:var(--accent);color:#fff}nav a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
main{padding:16px;max-width:1200px;margin:0 auto}h1{font-size:1.4rem;margin:.2rem 0 1rem}h2{font-size:1.1rem}
.muted{color:var(--muted)}.grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px}
.board{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:start}
.col h2{margin:0 0 8px}.task{border:1px solid var(--line);border-radius:10px;padding:10px;margin-bottom:8px;background:var(--bg)}
.pill{display:inline-block;padding:.05rem .55rem;border-radius:99px;border:1px solid currentColor;font-size:.78rem}
.RUNNING,.QUEUED,.VALIDATING{color:var(--accent)}.COMPLETED,.APPROVED{color:var(--ok)}.WAITING_APPROVAL,.PENDING{color:var(--warn)}.FAILED,.CANCELLED,.REJECTED,.EXPIRED,.TIMED_OUT{color:var(--bad)}
button{font:inherit;min-height:44px;padding:.4rem .9rem;border-radius:8px;border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer}
button.ghost{background:transparent;color:var(--fg);border-color:var(--line)}button.bad{background:var(--bad);border-color:var(--bad)}button:disabled{opacity:.5;cursor:not-allowed}
input,select{font:inherit;min-height:44px;padding:.4rem .6rem;border-radius:8px;border:1px solid var(--line);background:var(--card);color:var(--fg);width:100%}
label{display:block;margin:.6rem 0 .2rem}form.card{max-width:380px;margin:8vh auto}.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.4rem;border-bottom:1px solid var(--line);vertical-align:top}.scroll{overflow-x:auto}
.live{font-size:.8rem}.err{color:var(--bad)}code{word-break:break-all}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.envbadge{background:var(--warn);color:#000;font-weight:700;padding:.1rem .6rem;border-radius:6px;letter-spacing:.05em}
[hidden]{display:none!important}
