:root{--ink: #16202e;--muted: #5b6b80;--line: #e3e8ef;--line-soft: #edf1f6;--bg: #f4f6f9;--panel: #ffffff;--accent: #1d4ed8;--accent-ink: #1e3a8a;--side: #0f1b2d;--side-hover: #16263d;--side-active: #1c2f4a;--side-ink: #e6ecf5;--side-muted: #8fa0b8;--danger: #b42318;--danger-bg: #fde3e1;--danger-soft: #fef1f0;--warn: #9a4a00;--warn-bg: #fdebdd;--warn-soft: #fff6ec;--ok: #1b6b3a;--ok-bg: #e3f4ea;--wait: #34506f;--wait-bg: #e8eef7;--neutral-bg: #eceff3;--radius: 14px;font-family:Plus Jakarta Sans,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink)}*{box-sizing:border-box}body{margin:0;background:var(--bg)}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-ink)}.shell{display:flex;min-height:100vh}.side{width:248px;flex-shrink:0;background:var(--side);color:var(--side-ink);display:flex;flex-direction:column;gap:28px;padding:28px 18px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:12px;padding:0 8px}.brand-mark{width:36px;height:36px;border-radius:10px;background:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}.brand-name{display:flex;flex-direction:column}.brand-name strong{font-weight:800;font-size:16px;letter-spacing:-.01em}.brand-name span{font-size:12px;color:var(--side-muted)}.side nav{display:flex;flex-direction:column;gap:4px}.side nav a{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:10px;color:#b7c4d6;font-weight:500;font-size:14px}.side nav a:hover{background:var(--side-hover);color:#fff}.side nav a.active{background:var(--side-active);color:#fff;font-weight:600}.side nav a svg{flex-shrink:0}.badge{margin-left:auto;font-size:12px;font-weight:700;background:var(--danger);color:#fff;border-radius:999px;padding:2px 8px}.user{margin-top:auto;display:flex;align-items:center;gap:10px;padding:12px;border-radius:12px;background:var(--side-hover)}.avatar{width:34px;height:34px;border-radius:999px;background:#2b4468;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px}.user-name{display:flex;flex-direction:column;min-width:0;flex-grow:1}.user-name strong{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-name span{font-size:12px;color:var(--side-muted)}.user button{background:transparent;border:1px solid #2b4468;color:var(--side-ink);padding:6px 10px}.user button:hover:not(:disabled){border-color:var(--side-muted);color:#fff}.main{flex:1;padding:32px 40px;min-width:0;display:flex;flex-direction:column}.main h2{margin:0 0 6px;font-size:28px;font-weight:800;letter-spacing:-.02em}.main .hint{color:var(--muted);font-size:14px;margin:0 0 24px;max-width:900px;line-height:1.5}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}.page-head .hint{margin:0}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:20px;margin-bottom:16px}.card h3{margin:0 0 12px;font-size:16px;font-weight:700}.card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.card-head h3{margin:0}.card-head a{font-size:13px;font-weight:600}.card table{border:0;border-radius:0}.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:16px}.tile{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:8px}.tile-label{font-size:13px;font-weight:600;color:var(--muted)}.tile-value{font-size:32px;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.tile-note{font-size:12px;font-weight:600;color:var(--muted)}.tile.ok .tile-note{color:var(--ok)}.tile.warn .tile-value,.tile.warn .tile-note{color:var(--warn)}.tile.danger .tile-value,.tile.danger .tile-note{color:var(--danger)}.split{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:16px;align-items:start}.attention{display:flex;flex-direction:column;gap:10px}.attention-item{display:flex;gap:12px;padding:12px;border-radius:12px;background:var(--danger-soft)}.attention-item.warn{background:var(--warn-soft)}.attention-item .dot{width:8px;height:8px;border-radius:999px;background:var(--danger);margin-top:6px;flex-shrink:0}.attention-item.warn .dot{background:#c2620a}.attention-item strong{display:block;font-size:14px}.attention-item span{font-size:13px;color:var(--muted)}.all-clear{padding:16px;border-radius:12px;background:var(--ok-bg);color:var(--ok);font-size:14px;font-weight:600}table{width:100%;border-collapse:separate;border-spacing:0;background:var(--panel);font-size:14px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}th,td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line-soft)}tbody tr:last-child td{border-bottom:0}th{color:var(--muted);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.04em;background:var(--panel)}tbody tr:hover{background:#f8fafc}td.strong{font-weight:600}td.soft{color:var(--muted)}.num{text-align:right;font-variant-numeric:tabular-nums}.filters{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px;align-items:flex-end;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:16px}.filters label{display:flex;flex-direction:column;font-size:12px;font-weight:600;color:var(--muted);gap:6px}input,select{height:40px;padding:0 12px;border:1px solid #d5dce6;border-radius:10px;font:inherit;font-size:14px;background:var(--panel);color:var(--ink)}input:focus,select:focus{outline:2px solid color-mix(in srgb,var(--accent) 30%,transparent);border-color:var(--accent)}button{height:40px;padding:0 16px;border:1px solid #d5dce6;border-radius:10px;background:var(--panel);font:inherit;font-size:14px;font-weight:600;color:var(--ink);cursor:pointer}button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--accent);color:#fff;border-color:var(--accent)}button.primary:hover:not(:disabled){background:var(--accent-ink);border-color:var(--accent-ink);color:#fff}.pill{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}.pill.Quarantined,.pill.Failed{background:var(--danger-bg);color:var(--danger)}.pill.Open,.pill.Retrying,.pill.HalfOpen{background:var(--warn-bg);color:var(--warn)}.pill.Pending,.pill.Running,.pill.Received{background:var(--wait-bg);color:var(--wait)}.pill.Applied,.pill.Closed,.pill.Completed{background:var(--ok-bg);color:var(--ok)}.pill.Superseded,.pill.Rejected{background:var(--neutral-bg);color:var(--muted)}dialog.confirm{width:min(520px,calc(100vw - 32px));border:1px solid var(--line);border-radius:var(--radius);padding:20px;background:var(--panel);color:var(--ink)}dialog.confirm::backdrop{background:#0f1b2d73}dialog.confirm h3{margin:0 0 8px;font-size:16px}dialog.confirm p{font-size:14px;color:var(--muted)}dialog.confirm label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;color:var(--muted)}dialog.confirm textarea{padding:10px 12px;border:1px solid #d5dce6;border-radius:10px;font:inherit;font-size:14px;background:var(--panel);color:var(--ink);resize:vertical}dialog.confirm .actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}pre{background:#0f1b2d;color:#dde5ee;padding:14px;border-radius:10px;overflow:auto;font-size:12px;max-height:340px}.kv{display:grid;grid-template-columns:180px 1fr;gap:8px 16px;font-size:14px}.kv dt{color:var(--muted)}.kv dd{margin:0;word-break:break-all}.error{background:var(--danger-soft);color:var(--danger);padding:12px 14px;border-radius:10px;font-size:14px;margin-bottom:16px}.notice{background:var(--ok-bg);color:var(--ok);padding:12px 14px;border-radius:10px;font-size:14px;margin-bottom:16px}.empty{color:var(--muted);font-size:14px;padding:32px;text-align:center;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}@media(max-width:1100px){.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.split{grid-template-columns:minmax(0,1fr)}}
