
:root{color-scheme:light dark;--fg:#1b1f24;--bg:#f6f7f9;--card:#fff;--line:#c9ced6;--accent:#0b5cad;--err:#a4161a;--errbg:#fdecec;--okfg:#14532d;--okbg:#e3f6e8;--warnfg:#5c3d00;--warnbg:#fff1c9;--infofg:#0a3d75;--infobg:#e1effe;--neutfg:#343a40;--neutbg:#e9ecef;--onaccent:#fff}
@media (prefers-color-scheme:dark){:root{--fg:#e8eaed;--bg:#14171a;--card:#1d2125;--line:#3a4048;--accent:#6cb2ff;--err:#ff8a8d;--errbg:#3a1d1e;--okfg:#9be4b0;--okbg:#17321f;--warnfg:#ffd97a;--warnbg:#3b2f0a;--infofg:#a9d1ff;--infobg:#12294a;--neutfg:#d5d9de;--neutbg:#2c3238;--onaccent:#0b1220}}
*{box-sizing:border-box}
body{margin:0;font:16px/1.5 system-ui,sans-serif;color:var(--fg);background:var(--bg)}
main{max-width:26rem;margin:8vh auto;padding:0 1rem}
.card{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:1.5rem}
h1{font-size:1.4rem;margin:0 0 1rem}
label{display:block;font-weight:600;margin:1rem 0 .25rem}
input[type=email],input[type=password]{width:100%;padding:.6rem;border:1px solid var(--line);border-radius:6px;font:inherit;color:inherit;background:transparent}
button{margin-top:1.25rem;padding:.65rem 1.1rem;border:0;border-radius:6px;background:var(--accent);color:var(--onaccent);font:inherit;font-weight:600;cursor:pointer}
button:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.erro{background:var(--errbg);color:var(--err);border:1px solid var(--err);border-radius:6px;padding:.6rem .8rem;margin-bottom:.5rem}
.muted{opacity:.8}
main.wide{max-width:76rem;margin:0 auto;padding:1rem}
.skip{position:absolute;left:-999px;top:0;background:var(--card);color:var(--fg);padding:.6rem 1rem;border:2px solid var(--accent)}
.skip:focus{left:.5rem;top:.5rem;z-index:10}
a{color:var(--accent)}
a:focus-visible,select:focus-visible,textarea:focus-visible,.scroll:focus-visible,main:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.topbar{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;align-items:center;padding:.6rem 1rem;background:var(--card);border-bottom:1px solid var(--line)}
.brand{margin:0;font-weight:700}
.nav{display:flex;flex-wrap:wrap;gap:.25rem 1rem;list-style:none;margin:0;padding:0}
.nav a{display:inline-block;padding:.35rem .15rem;text-decoration:none;border-bottom:3px solid transparent}
.nav a[aria-current=page]{border-bottom-color:var(--accent);font-weight:700}
.who{margin-left:auto;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}
.who button,.btn-secondary{margin:0;background:transparent;color:var(--accent);border:2px solid var(--accent)}
button:disabled{opacity:.6;cursor:not-allowed;background:var(--neutbg);color:var(--neutfg)}
h2{font-size:1.15rem;margin:0 0 .75rem}
h3{font-size:1rem;margin:1rem 0 .25rem}
.card{margin:1rem 0}
.filtros{display:flex;flex-wrap:wrap;gap:.75rem 1rem;align-items:end;margin:1rem 0}
.filtros label{margin:0 0 .25rem}
.filtros button{margin:0}
select,input[type=date],textarea{font:inherit;color:inherit;background:var(--card);border:1px solid var(--line);border-radius:6px;padding:.5rem;max-width:100%}
textarea{width:100%;font-family:ui-monospace,monospace}
.limpar{align-self:center;margin-left:.5rem}
.total{font-weight:600}
.scroll{overflow-x:auto;border:1px solid var(--line);border-radius:8px;background:var(--card)}
table{border-collapse:collapse;width:100%;min-width:52rem}
caption{text-align:left;font-weight:600;padding:.6rem .75rem}
th,td{text-align:left;padding:.5rem .75rem;border-top:1px solid var(--line);vertical-align:top;overflow-wrap:normal}
th{white-space:nowrap}
td:first-child{white-space:nowrap;min-width:6rem}
td[data-label=Empresa]{min-width:9rem}
td[data-label=Motivo]{min-width:12rem}
th:first-child,td:first-child{position:sticky;left:0;background:var(--card)}
thead th{background:var(--neutbg);color:var(--neutfg)}
.badge{display:inline-block;padding:.1rem .55rem;border-radius:999px;border:1px solid currentColor;font-size:.85rem;font-weight:600;white-space:nowrap}
.b-neutral,.b-muted{background:var(--neutbg);color:var(--neutfg)}
.b-info{background:var(--infobg);color:var(--infofg)}
.b-warn{background:var(--warnbg);color:var(--warnfg)}
.b-err{background:var(--errbg);color:var(--err)}
.vazio,.aviso,.ok{border:1px dashed var(--line);border-radius:8px;padding:1rem;margin:1rem 0;background:var(--card)}
.aviso{background:var(--warnbg);color:var(--warnfg);border:1px solid var(--warnfg)}
.ok{background:var(--okbg);color:var(--okfg);border:1px solid var(--okfg)}
.pager{display:flex;gap:1rem;align-items:center;margin:1rem 0}
.inds{display:grid;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:.75rem;margin:0}
.ind{border:1px solid var(--line);border-radius:8px;padding:.75rem;background:var(--card)}
.ind dt{margin:0 0 .35rem}
.ind dd{margin:0;font-size:1.75rem;font-weight:700}
.erros{padding-left:1.25rem}
@media (max-width:30rem){main.wide{padding:.75rem}.who{margin-left:0}}
