/* Auditor Fiscal: base visual comum às telas do servidor.
   Linguagem de sistema corporativo: cores chapadas, bordas finas, cantos discretos, sem sombras decorativas. */
:root{
  --bg:#f7f8fa; --card:#fff; --ink:#1f2937; --mut:#6b7280; --line:#e5e7eb; --soft:#f9fafb; --head:#fafbfc;
  --err:#b42318; --err-bg:#fef3f2; --adv:#93600b; --adv-bg:#fffaeb; --ok:#067647; --ok-bg:#ecfdf3;
  --pri:#2f6db5; --pri-h:#255a96; --pri-bg:#eef4fb; --pri-ink:#fff; --link:#2f6db5;
  --navy:#2f6db5; --raio:6px;
}
@media (prefers-color-scheme: dark){:root{
  --bg:#12161c; --card:#1a2028; --ink:#e3e7ed; --mut:#9aa4b2; --line:#2c3440; --soft:#1e252e; --head:#202833;
  --err:#f08a80; --err-bg:#3a1e1c; --adv:#e5b45a; --adv-bg:#352a14; --ok:#7cc79a; --ok-bg:#183024;
  --pri:#8eb0da; --pri-h:#a9c3e4; --pri-bg:#1f2c3d; --pri-ink:#0e1824; --link:#9dbbe0; --navy:#0e1824;
}}
[hidden]{display:none!important} *{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 "IBM Plex Sans",-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
a{color:var(--link)}
button{font:inherit;font-weight:500;cursor:pointer;border-radius:var(--raio);border:1px solid var(--line);background:var(--card);color:var(--ink);padding:7px 14px}
button:hover{background:var(--soft)} button:disabled{opacity:.5;cursor:default}
button.pri{background:var(--pri);border-color:var(--pri);color:var(--pri-ink)} button.pri:hover{background:var(--pri-h)}
button.link{border:0;background:none;color:var(--link);padding:2px 4px;text-decoration:underline;text-underline-offset:2px}
button.grande{padding:10px 18px}
input,select{font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:var(--raio);padding:7px 10px;width:100%}
input[type=checkbox],input[type=radio]{width:auto;padding:0}
input:focus,select:focus{outline:2px solid var(--pri-bg);border-color:var(--pri)}
label.campo{display:grid;gap:4px;font-size:12.5px;font-weight:600;color:var(--mut)}
label.campo small{font-weight:400}

/* conteúdo */
main.pg{max-width:1160px;margin:0 auto;padding:24px 20px 60px;display:grid;gap:16px}
.titulo{border-bottom:1px solid var(--line);padding-bottom:14px}
.titulo h1{font-size:20px;font-weight:600;margin:0 0 2px} .titulo p{color:var(--mut);margin:0}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--raio);padding:18px}
.card h2{font-size:13px;font-weight:600;color:var(--ink);margin:-18px -18px 16px;padding:10px 18px;background:var(--head);
  border-bottom:1px solid var(--line);border-radius:var(--raio) var(--raio) 0 0}
.chips{display:flex;flex-wrap:wrap;gap:6px} .chip{border:1px solid var(--line);border-radius:4px;padding:3px 8px;font-size:12.5px;background:var(--soft)}
.chip.ok{border-color:#b9dcc6;background:var(--ok-bg);color:var(--ok)}
.aviso,.erro,.okbox{border-radius:var(--raio);padding:9px 12px;font-size:13px;margin:10px 0;border:1px solid}
.aviso{background:var(--adv-bg);color:var(--adv);border-color:#ecd9a8}
.erro{background:var(--err-bg);color:var(--err);border-color:#efc4c0}
.okbox{background:var(--ok-bg);color:var(--ok);border-color:#b9dcc6}
@media (prefers-color-scheme: dark){.aviso,.erro,.okbox,.chip.ok{border-color:var(--line)}}
.tw{overflow-x:auto} table{width:100%;border-collapse:collapse;font-size:13px}
th{text-align:left;color:var(--mut);font-weight:600;font-size:12px;padding:7px 10px;background:var(--soft);border-bottom:1px solid var(--line);white-space:nowrap}
td{padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:top}
td a{margin-right:12px;white-space:nowrap}
.mut{color:var(--mut)}
.selo{display:inline-block;font-size:12px;font-weight:600;border-radius:4px;padding:1px 7px;border:1px solid var(--line);color:var(--mut)}
.selo.ok{color:var(--ok);background:var(--ok-bg);border-color:transparent} .selo.adv{color:var(--adv);background:var(--adv-bg);border-color:transparent}
.selo.err{color:var(--err);background:var(--err-bg);border-color:transparent}
.carregando{position:fixed;inset:0;background:rgba(18,26,38,.4);display:none;place-items:center;z-index:30}
.carregando.on{display:grid}
.carregando div{background:var(--card);border:1px solid var(--line);padding:14px 18px;border-radius:var(--raio);display:flex;gap:10px;align-items:center}
.carregando div::before{content:"";width:14px;height:14px;border-radius:50%;border:2px solid var(--line);border-top-color:var(--pri);animation:gira .8s linear infinite}
@keyframes gira{to{transform:rotate(360deg)}}
