:root{--bg:#edf3fa;--card:#fff;--ink:#0f172a;--muted:#64748b;--line:#d9e4f2;--blue:#075ac9;--nav:#071d38;--nav2:#123054;--green:#0f9f6e;--red:#c92323;--amber:#d97706;--shadow:0 12px 30px rgba(15,23,42,.08)}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--ink)}button,input,textarea,select{font:inherit}button{border:0;border-radius:12px;padding:10px 16px;background:#edf4ff;color:#09254a;font-weight:700;cursor:pointer}button:hover{filter:brightness(.97)}.primary{background:var(--blue);color:white}.danger{background:#ffe7e7;color:#a40000}.ghost{margin-top:auto}.full{width:100%}.hidden{display:none!important}.small{font-size:12px}.muted{color:var(--muted)}.login-wrap{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#061b34,#0b5dd7)}.login-card{width:min(460px,92vw);background:white;border-radius:24px;padding:30px;box-shadow:var(--shadow)}.brand-row,.brand{display:flex;gap:12px;align-items:center}.logo{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:#1265d8;color:white;font-weight:900}.login-card h1{margin:0}.login-card p{margin-top:4px;color:var(--muted)}label{display:block;font-weight:750;margin:14px 0 7px}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:13px;padding:12px 14px;background:white;color:var(--ink);outline:none}textarea{resize:vertical}.app{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:var(--nav);color:white;padding:24px 18px;display:flex;flex-direction:column;gap:12px}.brand{margin-bottom:12px}.brand span{display:block;font-size:12px;color:#a9b9cf}.nav{background:transparent;color:#d6e5ff;text-align:left}.nav.active,.nav:hover{background:var(--nav2);color:#fff}.content{padding:28px}.topbar{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.topbar h1{margin:0 0 6px}.topbar p{margin:0;color:var(--muted)}.top-actions{display:flex;align-items:center;gap:12px}.top-actions a{color:#113d7c;text-decoration:none}.badge{display:inline-block;border-radius:999px;padding:6px 11px;background:#e8eef8;color:#17314f;font-size:12px;font-weight:800}.badge.ok{background:#dcfce7;color:#166534}.badge.bad{background:#fee2e2;color:#991b1b}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.card{background:var(--card);border-radius:22px;padding:22px;margin-bottom:18px;box-shadow:var(--shadow);border:1px solid #e6eef8}.metric span{display:block;color:#667085;text-transform:uppercase;font-size:12px;letter-spacing:.1em;font-weight:900}.metric strong{display:block;font-size:30px;margin:12px 0 6px}.metric small{color:var(--muted)}.card h2{margin:0 0 6px}.card p{color:var(--muted);margin-top:0}.card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.inline-form{display:grid;grid-template-columns:1fr auto;gap:10px}.page{display:none}.page.active{display:block}.output,.chat-output{background:#081426;color:#d7fff0;border-radius:15px;padding:16px;overflow:auto;max-height:420px;white-space:pre-wrap;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px}.chat-output.empty{background:#f8fbff;color:var(--muted);font-family:inherit}.result-card{background:#f8fbff;border:1px solid var(--line);border-radius:16px;padding:16px;margin-top:12px}.result-card h4{margin:0 0 8px}.result-card p{margin:0;color:var(--ink);line-height:1.55}.tech-toggle{margin-top:12px}.table{width:100%;border-collapse:collapse}.table th{text-align:left;color:#667085;font-size:12px;text-transform:uppercase;letter-spacing:.08em;padding:12px;border-bottom:1px solid var(--line)}.table td{padding:12px;border-bottom:1px solid var(--line);vertical-align:top}.pill{display:inline-block;border-radius:999px;padding:5px 9px;background:#eef2ff;color:#3730a3;font-size:12px;font-weight:900}.pill.online{background:#dcfce7;color:#166534}.pill.offline,.pill.expired{background:#f1f5f9;color:#475569}.pill.revoked,.pill.cancelled,.pill.failed{background:#fee2e2;color:#991b1b}.pill.needs_approval{background:#fff7ed;color:#9a3412}.pill.queued,.pill.pending{background:#eef2ff;color:#3730a3}.pill.running{background:#dbeafe;color:#1d4ed8}.pill.completed{background:#dcfce7;color:#166534}.row-actions{display:flex;gap:6px;flex-wrap:wrap}.row-actions button{font-size:12px;padding:7px 10px}.notice{background:#eaf4ff;border:1px solid #bad8ff;color:#052b59;border-radius:14px;padding:14px;margin:14px 0}.summary-row{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.summary-row span{background:#f8fbff;border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-size:13px;font-weight:800}.tip{display:inline-grid;place-items:center;width:16px;height:16px;border-radius:50%;background:#e1ecff;color:#073d85;font-size:11px;cursor:help}.toast{position:fixed;right:22px;bottom:22px;background:#081426;color:white;padding:14px 18px;border-radius:14px;box-shadow:var(--shadow);z-index:20}.checklist{line-height:1.8}.warning{color:#b42318}.actions{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}@media(max-width:1100px){.app{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.grid4,.grid3,.grid2{grid-template-columns:1fr}.content{padding:18px}.topbar{display:block}.inline-form{grid-template-columns:1fr}.table{font-size:13px}}
/* v3 brain monitor and proper chat */
.grid-chat{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(340px,.8fr);gap:18px}.chat-panel{min-height:72vh;display:flex;flex-direction:column}.chat-thread{background:#f6f9fd;border:1px solid var(--line);border-radius:18px;padding:16px;min-height:420px;max-height:62vh;overflow:auto;display:flex;flex-direction:column;gap:12px}.bubble{max-width:82%;border-radius:18px;padding:14px 16px;box-shadow:0 6px 16px rgba(15,23,42,.05)}.bubble p{margin:6px 0 0;color:var(--ink);line-height:1.5}.bubble.user{align-self:flex-end;background:#075ac9;color:white}.bubble.user p{color:white}.bubble.assistant{align-self:flex-start;background:white;border:1px solid var(--line)}.bubble.thinking{align-self:flex-start;background:#fff7ed;border:1px solid #fed7aa}.bubble.error{align-self:flex-start;background:#fee2e2;border:1px solid #fecaca}.chat-composer{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:12px;align-items:end}.brain-side{position:sticky;top:24px;height:max-content}.pipeline{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:12px 0}.pipe-step{background:#f8fbff;border:1px solid var(--line);border-radius:16px;padding:12px;min-height:96px;transition:.2s}.pipe-step span{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e6eef8;color:#123054;font-weight:900;font-size:12px}.pipe-step strong{display:block;margin-top:8px;font-size:13px;line-height:1.25}.pipe-step small{display:block;color:var(--muted);margin-top:6px}.pipe-step.active{border-color:#075ac9;box-shadow:0 0 0 3px rgba(7,90,201,.12)}.pipe-step.active span{background:#075ac9;color:white}.pipe-step.done{border-color:#86efac;background:#f0fdf4}.pipe-step.done span{background:#16a34a;color:white}.pipe-step.bad{border-color:#fecaca;background:#fef2f2}.pipe-step.bad span{background:#dc2626;color:white}.trace{background:#081426;color:#d7fff0;border-radius:16px;padding:14px;min-height:180px;max-height:360px;overflow:auto}.trace.empty{background:#f8fbff;color:var(--muted);font-family:inherit}.trace-line{display:grid;grid-template-columns:14px 1fr;gap:10px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.08)}.trace-line:last-child{border-bottom:0}.trace-line>span{width:10px;height:10px;margin-top:5px;border-radius:50%;background:#38bdf8}.trace-line.bad>span{background:#ef4444}.trace-line strong{display:block;color:#fff}.trace-line p{margin:3px 0 0;color:#bae6fd;font-size:13px}.decision-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px}.decision-grid div{background:#f8fbff;border:1px solid var(--line);border-radius:12px;padding:10px}.decision-grid span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.decision-grid strong{display:block;margin-top:5px;font-size:13px}.highlight{background:#eaf4ff;border:1px solid #bad8ff;border-radius:14px;padding:12px;margin:12px 0;color:#09254a}.highlight button{font-size:12px;padding:6px 9px;margin-left:8px}.tech-details{margin-top:12px}.tech-details summary,details summary{cursor:pointer;font-weight:800;color:#075ac9}.tech-details pre,.bubble details pre{white-space:pre-wrap;max-height:280px;overflow:auto;background:#081426;color:#d7fff0;border-radius:12px;padding:12px;font-size:12px}.compact label{margin-top:8px}.grid1{display:grid;grid-template-columns:1fr;gap:10px}.clean-reply p{font-size:15px}@media(max-width:1200px){.grid-chat{grid-template-columns:1fr}.brain-side{position:relative;top:0}.pipeline{grid-template-columns:repeat(2,1fr)}.decision-grid{grid-template-columns:1fr 1fr}}@media(max-width:700px){.pipeline,.decision-grid{grid-template-columns:1fr}.chat-composer{grid-template-columns:1fr}.bubble{max-width:100%}}
