/* Tokens compartilhados — mesma identidade do relatório */
:root{
  --bg:#f3f5f8; --panel:#ffffff; --fg:#1b2531; --muted:#5f6d7e; --line:#d6dde6; --line-strong:#b9c4d1;
  --accent:#1f5b8f; --accent-fg:#ffffff; --l1:#d8e6f3; --l2:#e8f0f8; --l3:#f2f5f9; --sub:#3f7cb3; --sub-fg:#ffffff;
  --input:#fff5d2; --ok:#2b7a46; --warn:#b4541e; --help:#8a97a7;
  --font:"Source Sans 3",system-ui,-apple-system,"Segoe UI",sans-serif; --mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
}
@media (prefers-color-scheme: dark){ :root{
  --bg:#121820; --panel:#1a222c; --fg:#e4e9f0; --muted:#9aa8b8; --line:#2b3643; --line-strong:#3d4a5a;
  --accent:#6ea8de; --accent-fg:#0f1620; --l1:#243b53; --l2:#1f3044; --l3:#1c2633; --sub:#2d5a86; --sub-fg:#eaf2fb;
  --input:#3b3420; --ok:#6fc38a; --warn:#e5905c; --help:#7f8c9b; color-scheme:dark } }
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font);font-size:14px;line-height:1.4;padding:20px 16px 48px}
h1{font-size:22px;margin:0;font-weight:700}
h2{font-size:16px;margin:0 0 10px}
.eyebrow{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:18px}
.field{display:flex;flex-direction:column;gap:4px}
.field label{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600}
input,select{font:inherit;font-size:14px;padding:8px 10px;border:1px solid var(--line-strong);border-radius:4px;background:var(--input);color:var(--fg);width:100%}
input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.btn{font:inherit;font-size:13px;font-weight:600;padding:8px 14px;border:1px solid var(--line-strong);background:var(--panel);color:var(--fg);border-radius:4px;cursor:pointer}
.btn:hover{border-color:var(--accent)}
.btn.on{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}
.btn.sm{font-size:12px;padding:5px 9px}
.btn:disabled{opacity:.5;cursor:default}
.msg{font-size:13px;min-height:18px}
.msg.err{color:var(--warn);font-weight:600}
.msg.ok{color:var(--ok);font-weight:600}
.note{font-size:12px;color:var(--muted);margin:0}
a{color:var(--accent)}
.topbar{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;justify-content:space-between;max-width:1180px;margin:0 auto 18px}
.topbar .who{font-size:13px;color:var(--muted)}
.topbar nav{display:flex;gap:8px;flex-wrap:wrap}
table.adm{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums}
table.adm th{background:var(--accent);color:var(--accent-fg);text-align:left;padding:8px 10px;font-size:13px}
table.adm td{padding:6px 10px;border-bottom:1px solid var(--line);vertical-align:middle}
.pill{display:inline-block;font-size:11px;font-weight:600;padding:2px 7px;border-radius:10px;border:1px solid var(--line-strong);color:var(--muted)}
.pill.on{border-color:var(--ok);color:var(--ok)}
.pill.off{border-color:var(--warn);color:var(--warn)}
code{font-family:var(--mono);font-size:13px;background:var(--l3);padding:1px 5px;border-radius:3px}
