/* fiscaldoo · estado público — mesma linguagem visual do Plano Director, do Painel
   fiscaldoo, do portal (F1-EPIC-07) e do backoffice (F1-EPIC-13). Propositadamente
   NÃO é o "cloud SaaS" genérico: tom de ledger/documento certificado, nunca
   dashboard escuro com gráficos roxo-azul. */
:root{
  --paper:#F1F2ED; --surface:#FBFBF8; --surface-2:#F7F8F2;
  --ink:#16222E; --ink-muted:#4C5B62; --ink-faint:#7C8A86;
  --accent:#1F5C6B; --accent-ink:#0F3A45; --accent-soft:#E3EDEC;
  --critical:#8C332E; --critical-soft:#F3E4DF; --critical-ink:#6B2420;
  --good:#3F7D4F; --good-soft:#E3EEE1; --good-ink:#2C5B38;
  --warn:#A8762A; --warn-soft:#F3E9D6; --warn-ink:#7E5A1E;
  --line:#D9DBD1; --line-strong:#C3C6B8;
}
@media (prefers-color-scheme: dark){
  :root{
    --paper:#10161C; --surface:#161D24; --surface-2:#131920;
    --ink:#E7EAE4; --ink-muted:#9FB0AC; --ink-faint:#71817D;
    --accent:#5FB8C9; --accent-ink:#BFE9EF; --accent-soft:#1B3339;
    --critical:#E08478; --critical-soft:#3A1E1C; --critical-ink:#F2B6AC;
    --good:#7FC08E; --good-soft:#1C3322; --good-ink:#AEE0B8;
    --warn:#D7AE64; --warn-soft:#3A2E16; --warn-ink:#EAC989;
    --line:#2A3138; --line-strong:#3A4248;
  }
}
*{box-sizing:border-box}
body{
  margin:0; background:var(--paper); color:var(--ink);
  font-family:"Public Sans", system-ui, sans-serif; font-size:15px; line-height:1.55;
}
h1,h2{font-family:"Newsreader", Georgia, serif; font-weight:600; margin:0}
code,.mono{font-family:"IBM Plex Mono", ui-monospace, monospace}
a{color:var(--accent)}
.wrap{max-width:880px; margin:0 auto; padding:2rem 1.2rem 4rem}
header.top{display:flex; align-items:baseline; gap:1.2rem; margin-bottom:.4rem; flex-wrap:wrap}
header.top h1{font-size:1.6rem}
.sub{color:var(--ink-muted); font-size:.88rem; margin:0 0 1.8rem}
.pill{display:inline-flex; align-items:center; gap:.35rem; font-size:.76rem; font-weight:600; padding:.1rem .55rem; border-radius:999px}
.pill .d{width:7px;height:7px;border-radius:50%}
.pill.good{background:var(--good-soft); color:var(--good-ink)} .pill.good .d{background:var(--good)}
.pill.crit{background:var(--critical-soft); color:var(--critical-ink)} .pill.crit .d{background:var(--critical)}
.pill.warn{background:var(--warn-soft); color:var(--warn-ink)} .pill.warn .d{background:var(--warn)}

.svc{border:1px solid var(--line); border-radius:4px; background:var(--surface); padding:1rem 1.1rem; margin-bottom:.8rem}
.svc .row1{display:flex; align-items:center; gap:.8rem; flex-wrap:wrap; margin-bottom:.6rem}
.svc .name{font-weight:600}
.svc .url{font-size:.74rem; color:var(--ink-faint); margin-left:auto}
.svc .pct{font-family:"IBM Plex Mono",monospace; font-size:.8rem; color:var(--ink-muted)}
.history{display:flex; gap:2px; align-items:flex-end}
.dot{width:8px; height:16px; border-radius:1px; background:var(--line-strong)}
.dot.ok{background:var(--good)}
.dot.fail{background:var(--critical)}
.history-empty{font-size:.78rem; color:var(--ink-faint)}
.err{font-size:.76rem; color:var(--critical-ink); margin-top:.4rem; font-family:"IBM Plex Mono",monospace}

.note{font-size:.8rem; color:var(--ink-faint); margin-top:1.8rem; padding-top:1rem; border-top:1px solid var(--line)}
