:root{--ink:#14231f;--muted:#63706b;--line:#dce4df;--paper:#f6f8f6;--green:#0d5c46;--mint:#d9eee7;--amber:#d88914;--red:#a93737}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;font:14px/1.45 Inter,ui-sans-serif,system-ui;color:var(--ink);background:var(--paper)}button,input,select{font:inherit}.login{min-height:100vh;display:grid;place-items:center;background:#10241f}.login form{width:min(390px,90vw);padding:38px;background:white;border-radius:12px;box-shadow:0 20px 60px #0005}.brand{font-weight:800;font-size:22px;letter-spacing:-1px}.brand span{color:#36a77d}.login h1{margin:32px 0 4px}.login p{color:var(--muted);margin-top:0}.login label{display:grid;gap:6px;margin:18px 0;font-weight:600}.login input{padding:11px;border:1px solid var(--line);border-radius:6px}.login button,button.primary{width:100%;padding:11px;border:0;border-radius:6px;background:var(--green);color:white;font-weight:700}.error{color:var(--red);margin-top:12px}header{height:64px;position:fixed;top:0;left:0;right:0;z-index:3;background:#10241f;color:white;display:flex;align-items:center;justify-content:space-between;padding:0 24px}header>div:last-child{display:flex;align-items:center;gap:16px}header b{font-size:11px;background:#f2bd53;color:#302000;padding:5px 9px;border-radius:20px;letter-spacing:.6px}header small{font-size:12px;color:#a9c8bc;letter-spacing:2px;margin-left:8px}button.link{border:0;background:none;color:#cfe0d9;cursor:pointer}aside{position:fixed;top:64px;bottom:0;width:210px;background:white;border-right:1px solid var(--line);padding:20px 12px;display:flex;flex-direction:column;justify-content:space-between}nav{display:grid;gap:5px}nav a{padding:10px 12px;color:var(--ink);text-decoration:none;border-radius:6px;font-weight:600}nav a.active,nav a:hover{background:var(--mint);color:var(--green)}#identity{padding:12px;color:var(--muted);font-size:12px}main{margin-left:210px;padding:94px 26px 50px;max-width:1700px}h1{font-size:26px;margin:0 0 4px}h2{font-size:18px}.lede{color:var(--muted);margin:0 0 24px}.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.toolbar input,.toolbar select{padding:9px 10px;border:1px solid var(--line);border-radius:6px;background:white}.card{background:white;border:1px solid var(--line);border-radius:9px;padding:18px;margin:14px 0}.table-wrap{overflow:auto;background:white;border:1px solid var(--line);border-radius:9px}.table-wrap table{width:100%;border-collapse:collapse;min-width:1050px}th{position:sticky;top:0;background:#eef3f0;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:#53615c}th,td{padding:11px 10px;border-bottom:1px solid var(--line);vertical-align:top}tbody tr:hover{background:#fafcfb}td a{color:var(--green);font-weight:700}.badge{display:inline-block;padding:3px 7px;border-radius:20px;background:#e8eeeb;font-size:11px;font-weight:700}.badge.failed,.badge.conflict,.badge.blocked{background:#f8dddd;color:var(--red)}.badge.open,.badge.ready,.badge.accepted,.badge.sent,.badge.live{background:var(--mint);color:var(--green)}.badge.retryable,.badge.processing,.badge.awaiting{background:#ffedc9;color:#8a570b}.muted{color:var(--muted)}.mono{font:12px ui-monospace,SFMono-Regular,Menlo;overflow-wrap:anywhere}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:12px}.kv{display:grid;grid-template-columns:130px 1fr;gap:7px 12px}.kv b{color:var(--muted);font-size:12px}.readonly{border-left:4px solid var(--amber);background:#fff8e9}.empty,.loading{padding:50px;text-align:center;color:var(--muted)}details pre{white-space:pre-wrap;word-break:break-word;background:#f2f5f3;padding:10px;border-radius:6px}.action-cell{position:sticky;right:0;background:inherit;min-width:160px}.disabled{border:1px solid var(--line);background:#f1f3f2;color:#7a827f;padding:7px;border-radius:5px}.stale{color:var(--red);font-weight:700}@media(max-width:800px){header{padding:0 12px}header #refresh-state{display:none}aside{position:fixed;z-index:2;top:auto;bottom:0;left:0;right:0;width:auto;height:62px;padding:6px;display:block;border-top:1px solid var(--line)}aside nav{display:flex;overflow:auto}aside nav a{font-size:11px;white-space:nowrap;padding:9px}#identity{display:none}main{margin:0;padding:82px 12px 82px}.table-wrap table{min-width:850px}.card{padding:14px}}
