:root{--bg:#f5f8fb;--panel:#fff;--panel-2:#eef3f8;--ink:#15202b;--muted:#586977;--line:#dbe3ec;--accent:#1b3a5c;--accent-2:#2e7bb8;--ok:#1e7b45;--ok-bg:#e4f2ea;--warn:#8c5b12;--warn-bg:#f8efd9;--bad:#b3261e;--bad-bg:#fae6e4;--radius:8px;--shadow:0 1px 2px #14283c0d,0 8px 24px #14283c0f}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0d151e;--panel:#15202c;--panel-2:#1b2937;--ink:#e7eef5;--muted:#93a5b5;--line:#26333f;--accent:#4c97d6;--accent-2:#6fb2e6;--ok:#57be83;--ok-bg:#123120;--warn:#dda744;--warn-bg:#33280c;--bad:#e36c64;--bad-bg:#361715;--shadow:0 1px 2px #0000004d,0 8px 24px #0006}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font:15px/1.55 ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}code,.mono{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.88em}a{color:var(--accent-2);text-decoration:none}a:hover{text-decoration:underline}.shell{grid-template-columns:236px 1fr;min-height:100vh;display:grid}@media (max-width:820px){.shell{grid-template-columns:1fr}.side{height:auto;position:static}}.side{background:var(--panel);border-right:1px solid var(--line);height:100vh;padding:18px 14px;position:sticky;top:0;overflow:auto}.brand{letter-spacing:-.01em;margin:0 0 2px;font-weight:700}.brand small{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:500;display:block}.navlist{margin:18px 0 0;padding:0;list-style:none}.navlist a{color:var(--ink);border-radius:6px;padding:7px 10px;font-size:14px;display:block}.navlist a:hover{background:var(--panel-2);text-decoration:none}.navlist a[aria-current=page]{background:var(--accent-2);color:#fff}.main{max-width:1180px;padding:26px 30px}@media (max-width:820px){.main{padding:18px}}h1{letter-spacing:-.01em;margin:0 0 4px;font-size:24px}h2{margin:26px 0 10px;font-size:17px}.sub{color:var(--muted);margin:0 0 18px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin:0 0 16px;padding:16px}.grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;display:grid}.stat{letter-spacing:-.02em;font-size:26px;font-weight:700}.stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:12px}.tablewrap{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:9px 12px}th{background:var(--panel-2);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:12px;font-weight:600}tbody tr:last-child td{border-bottom:0}.chip{border:1px solid;border-radius:999px;padding:1px 8px;font-size:11.5px;font-weight:600;display:inline-block}.chip-ok{color:var(--ok);background:var(--ok-bg);border-color:var(--ok)}.chip-warn{color:var(--warn);background:var(--warn-bg);border-color:var(--warn)}.chip-bad{color:var(--bad);background:var(--bad-bg);border-color:var(--bad)}.chip-mute{color:var(--muted);background:var(--panel-2);border-color:var(--line)}button,.btn{font:inherit;border:1px solid var(--line);background:var(--panel-2);color:var(--ink);cursor:pointer;border-radius:6px;padding:7px 14px;font-size:14px}button:hover:not(:disabled){border-color:var(--accent-2)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--accent-2);border-color:var(--accent-2);color:#fff}input,select,textarea{font:inherit;border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:6px;width:100%;padding:7px 10px;font-size:14px}label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 4px;font-size:12px;display:block}.field{margin:0 0 12px}.row{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.msg{border-radius:6px;margin:0 0 12px;padding:9px 12px;font-size:13.5px}.msg-err{color:var(--bad);background:var(--bad-bg);border:1px solid var(--bad)}.msg-ok{color:var(--ok);background:var(--ok-bg);border:1px solid var(--ok)}.ghost{background:var(--warn-bg);border:1px solid var(--warn);color:var(--warn);border-radius:6px;margin:0 0 14px;padding:9px 12px;font-size:13.5px}.empty{color:var(--muted);text-align:center;padding:20px;font-size:14px}.signin{max-width:440px;margin:9vh auto;padding:0 18px}details.card summary{cursor:pointer;color:var(--muted);letter-spacing:.02em;font-size:13.5px}details.card[open] summary{color:var(--ink);margin-bottom:2px}
