:root{color-scheme:dark;--bg:#07100e;--panel:#101b18;--panel2:#14231f;--line:#263b35;--text:#edf7f2;--muted:#91a89e;--accent:#7cf7be;--accent2:#49c993;--warn:#ffc66d;--danger:#ff7f8c;--shadow:0 22px 60px rgba(0,0,0,.34)}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 85% 0,#14352b 0,transparent 32%),var(--bg);color:var(--text);font:15px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.hidden{display:none!important}.app-shell{min-height:100vh;display:grid;grid-template-columns:240px 1fr}.sidebar{position:sticky;top:0;height:100vh;padding:28px 20px;border-right:1px solid var(--line);background:rgba(7,16,14,.88);backdrop-filter:blur(18px);display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;margin:0 8px 34px}.brand strong{font-size:18px}.brand small{display:block;color:var(--muted)}.brand-mark{width:54px;height:54px;border-radius:17px;display:grid;place-items:center;background:linear-gradient(145deg,var(--accent),#2d9972);color:#042219;font-weight:900;font-size:25px;box-shadow:0 10px 30px rgba(73,201,147,.25)}.brand-mark.small{width:40px;height:40px;border-radius:12px;font-size:19px}nav{display:grid;gap:7px}nav a{color:var(--muted);text-decoration:none;padding:11px 13px;border-radius:11px;border:1px solid transparent}nav a:hover,nav a.active{background:var(--panel2);border-color:var(--line);color:var(--text)}.ghost{margin-top:auto;background:transparent;color:var(--muted);border:1px solid var(--line)}main{padding:32px 42px 70px;max-width:1500px;width:100%}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}h1,h2,h3,p{margin-top:0}h1{font-size:30px;letter-spacing:-.03em}h2{font-size:19px}.eyebrow{font-size:11px;letter-spacing:.18em;color:var(--accent);font-weight:800;margin-bottom:5px}.muted{color:var(--muted)}.status-pill,.badge{display:inline-flex;align-items:center;border-radius:999px;padding:7px 11px;background:#16372b;color:var(--accent);font-size:12px;font-weight:700}.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.card{grid-column:span 4;background:linear-gradient(145deg,rgba(20,35,31,.96),rgba(14,27,23,.96));border:1px solid var(--line);border-radius:17px;padding:20px;box-shadow:var(--shadow)}.card.wide{grid-column:span 8}.card.full{grid-column:1/-1}.metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.metric{padding:13px;border-radius:12px;background:rgba(7,16,14,.5);border:1px solid var(--line)}.metric strong{display:block;font-size:24px}.metric span{color:var(--muted);font-size:12px}.health-row,.agent-row,.approval-row{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid var(--line)}.health-row:last-child,.agent-row:last-child,.approval-row:last-child{border:0}.ok{color:var(--accent)}.warning{color:var(--warn)}.danger{color:var(--danger)}button,input,select{font:inherit;border-radius:10px;border:1px solid var(--line);padding:10px 12px}button{cursor:pointer;font-weight:750}.primary{background:var(--accent);color:#05231a;border-color:transparent}.secondary{background:var(--panel2);color:var(--text)}button:disabled{opacity:.48;cursor:not-allowed}input,select{background:#091512;color:var(--text);outline:none}input:focus,select:focus{border-color:var(--accent2)}.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px;background:var(--panel)}table{width:100%;border-collapse:collapse;min-width:720px}th,td{text-align:left;padding:13px 15px;border-bottom:1px solid var(--line)}th{color:var(--muted);font-size:12px;background:#0c1714}tr[data-id]{cursor:pointer}tr[data-id]:hover{background:var(--panel2)}.badge{padding:4px 8px;background:#1a332b}.badge.failed,.badge.disabled{background:#3b2026;color:#ffb0b9}.badge.waiting_approval{background:#40351b;color:#ffd992}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.detail{padding:13px;background:#0b1613;border:1px solid var(--line);border-radius:11px}.detail small{display:block;color:var(--muted)}pre{white-space:pre-wrap;word-break:break-word;background:#091310;border:1px solid var(--line);padding:14px;border-radius:11px;color:#cde4da}.actions{display:flex;gap:8px;flex-wrap:wrap}.login-shell{min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{width:min(430px,100%);background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:34px;box-shadow:var(--shadow)}.login-card .brand-mark{margin-bottom:22px}.login-card label{display:grid;gap:6px;margin:16px 0;color:var(--muted)}.login-card button{width:100%;margin-top:8px}.error{min-height:22px;color:var(--danger);margin-top:14px}.empty{padding:40px;text-align:center;color:var(--muted)}@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;flex-direction:row;align-items:center;overflow:auto;padding:14px}.brand{margin:0 12px 0 0}.brand div{display:none}nav{display:flex}.ghost{margin:0 0 0 auto}main{padding:24px 16px}.card,.card.wide{grid-column:1/-1}.detail-grid{grid-template-columns:1fr}header{align-items:flex-start}.status-pill{display:none}}
textarea{width:100%;resize:vertical;min-height:88px;background:var(--panel2);color:var(--text);border:1px solid var(--line);border-radius:12px;padding:12px;font:inherit;box-sizing:border-box}
textarea:focus{outline:2px solid var(--accent);outline-offset:1px}
.task-compose{display:grid;gap:12px;margin-bottom:18px}
.task-compose button,.chat-compose button{justify-self:start}
.task-chat{margin-top:18px}
.chat-messages{display:grid;gap:10px;margin:14px 0}
.chat-bubble{max-width:min(760px,88%);padding:12px 14px;border-radius:14px;white-space:pre-wrap;line-height:1.45}
.chat-bubble.user{justify-self:end;background:var(--accent);color:#fff;border-bottom-right-radius:4px}
.chat-bubble.assistant{justify-self:start;background:var(--panel2);border:1px solid var(--line);border-bottom-left-radius:4px}
.chat-compose{display:grid;gap:10px;margin-top:16px}
.button-link{display:inline-flex;align-items:center;text-decoration:none;padding:10px 14px;border-radius:10px;background:var(--accent);color:#fff;font-weight:600}
