h1{font-family:var(--font-serif);font-weight:400;font-size:var(--fs-title);margin:0 0 var(--gap-sm)}
h2{font-size:var(--fs-body);font-weight:var(--fw-medium);margin:0 0 var(--gap-sm)}
.aviso-privado{background:var(--color-panel);border:1px solid var(--color-border-line);border-left:3px solid var(--color-ok);border-radius:var(--radius);padding:var(--pad-sm) var(--pad-lg);max-width:70rem;margin:0 0 var(--gap-sm)}
.aviso-privado a{color:inherit}
.nota{color:var(--color-fg-muted);font-size:var(--fs-caption);margin:0 0 var(--gap-sm)}
.barra{display:flex;flex-wrap:wrap;gap:var(--gap-sm);align-items:center;margin:var(--gap-md) 0}
.barra label{font-size:var(--fs-caption);color:var(--color-fg-muted)}
select,input[type=number],input[type=text],input[type=password]{font:inherit;font-size:var(--fs-caption);padding:5px 8px;border:1px solid var(--color-border-line);border-radius:8px;background:var(--color-panel);color:var(--color-fg)}
.btn{display:inline-block;font:inherit;font-size:var(--fs-caption);border:1px solid var(--color-accent);background:transparent;color:var(--color-accent);border-radius:8px;padding:5px 10px;cursor:pointer;text-decoration:none}
.btn:hover{background:color-mix(in srgb,var(--color-accent) 10%,transparent)}
.btn.perigo{border-color:var(--color-bad);color:var(--color-bad)}
.btn:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}
.status{font-size:var(--fs-caption);color:var(--color-fg-muted)}
.abas{display:inline-flex;border:1px solid var(--color-border-line);border-radius:var(--radius);overflow:hidden;margin-bottom:var(--gap-md)}
.abas button{font:inherit;font-size:var(--fs-caption);border:0;background:transparent;color:var(--color-fg-muted);padding:6px 14px;cursor:pointer}
.abas button:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}
.abas button[aria-selected="true"]{background:var(--color-panel);color:var(--color-fg);font-weight:var(--fw-medium)}
.grade{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:var(--gap-md);align-items:start}
@media (max-width:900px){.grade{grid-template-columns:minmax(0,1fr)}}
.grade.modo-ativos{grid-template-columns:minmax(0,1fr)}
.grade.modo-ativos #analise .tiles{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:900px){.grade.modo-ativos #analise .tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
.card{background:var(--color-panel);border:1px solid var(--color-border-line);border-radius:var(--radius);padding:var(--pad-lg);min-width:0;margin-bottom:var(--gap-md)}
.campo{display:flex;gap:var(--gap-sm);align-items:center;margin-bottom:var(--gap-sm)}
.campo label{font-size:var(--fs-caption);color:var(--color-fg-muted);min-width:11rem}
.linha-cat{display:grid;grid-template-columns:12px minmax(0,1fr) 90px;gap:8px;align-items:center;padding:6px 0;border-bottom:1px solid var(--color-border-line)}
.linha-cat .sw{width:12px;height:12px;border-radius:3px}
.total{font-size:var(--fs-caption);margin-top:var(--gap-sm)}
.acoes-csv{display:flex;flex-wrap:wrap;gap:var(--gap-sm);align-items:center;margin-bottom:var(--gap-sm)}
.avisos{margin:0 0 var(--gap-sm);padding-left:18px;color:var(--color-warn);font-size:var(--fs-caption)}
.tw{overflow-x:auto}
table{width:100%;border-collapse:collapse;font-size:var(--fs-caption);font-variant-numeric:tabular-nums}
th,td{padding:4px 6px;border-bottom:1px solid var(--color-border-line);text-align:left;white-space:nowrap}
th{color:var(--color-fg-muted);font-weight:var(--fw-medium)}
.editor input{width:100%;min-width:70px}
.editor input[type=number]{text-align:right}
.editor .cod input{min-width:96px;text-transform:uppercase}
.editor th.num,.editor tfoot th.num{text-align:right}
.editor tfoot th{color:var(--color-fg);border-bottom:0;padding-top:8px}
.editor tr.alerta td{background:color-mix(in srgb,var(--color-warn) 12%,transparent)}
.editor .dica{display:block;font-size:11px;color:var(--color-warn);white-space:normal;max-width:16rem}
.editor td.num,.tabela td.num,.tabela th.num{text-align:right}
.editor .rem{border:0;background:none;color:var(--color-bad);cursor:pointer;font-size:16px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.totais .k{display:block;font-size:var(--fs-caption);color:var(--color-fg-muted)}
.totais .v{display:block;font-size:28px;font-weight:600;font-variant-numeric:tabular-nums}
.totais .c{font-size:var(--fs-caption);color:var(--color-fg-muted)}
.pizza{position:relative;height:240px;margin:var(--gap-sm) 0}
.splitbar{display:flex;height:10px;border-radius:6px;overflow:hidden;background:var(--color-border-line)}
.splitbar i{display:block;height:100%}
.splitlbl{display:flex;justify-content:space-between;font-size:var(--fs-caption);color:var(--color-fg-muted);margin:6px 0 var(--gap-md)}
.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:var(--gap-sm)}
.tile{border:1px solid var(--color-border-line);border-radius:10px;padding:8px 10px;background:var(--color-bg)}
.tile .k{font-size:12px;color:var(--color-fg-muted)}
.tile .v{font-size:22px;font-weight:600;font-variant-numeric:tabular-nums}
.tile .c{font-size:11.5px;color:var(--color-fg-muted)}
.neg{color:var(--color-bad)}.pos{color:var(--color-ok)}
.graficos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-md)}
@media (max-width:900px){.graficos{grid-template-columns:minmax(0,1fr)}}
.graficos figure{margin:0;min-width:0}
.graficos figcaption{font-size:var(--fs-caption);color:var(--color-fg-muted);margin-bottom:6px}
.chartbox{position:relative;height:240px}
.legenda{display:flex;flex-wrap:wrap;gap:14px;font-size:var(--fs-caption);color:var(--color-fg-muted);margin-bottom:var(--gap-sm)}
.legenda i{display:inline-block;width:18px;border-top:2px solid;vertical-align:middle;margin-right:6px}
.lg-cart{border-color:var(--color-accent)!important}
.lg-mod{border-color:#8C8C8C!important;border-top-style:dashed!important}
.lg-cdi{border-color:var(--color-fg-muted)!important;border-top-style:dotted!important}
@media (max-width:600px){
  .editor,.editor tbody,.editor tfoot{display:block}
  .editor thead{display:none}
  .editor tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;border:1px solid var(--color-border-line);border-radius:10px;padding:10px;margin-bottom:10px;position:relative}
  .editor tbody td{display:block;border:0;padding:0;white-space:normal}
  .editor tbody td::before{content:attr(data-rotulo);display:block;font-size:11px;color:var(--color-fg-muted);margin-bottom:2px}
  .editor tbody td.num{grid-column:1/-1;text-align:left;font-weight:var(--fw-medium)}
  .editor tbody td.cod,.editor tbody td.nome{grid-column:auto}
  .editor tbody td.acao{position:absolute;top:4px;right:6px}
  .editor tbody td.acao::before{content:none}
  .editor tbody td select,.editor tbody td input{width:100%}
  .editor tr.alerta{border-color:var(--color-warn)}
  .editor tr.alerta td{background:none}
  .editor tfoot tr{display:flex;justify-content:space-between;padding:4px 2px}
  .editor tfoot th:empty{display:none}
  .editor .dica{max-width:none}
}
.guarda .opcoes{display:grid;gap:8px;margin-bottom:var(--gap-sm)}
.guarda .opcoes label{display:block;cursor:pointer}
.guarda .opcoes .nota{display:block;margin:2px 0 0 1.6rem}
.arquivo-barra{display:flex;flex-wrap:wrap;gap:var(--gap-sm);align-items:center;margin-top:var(--gap-sm)}
.lembrete{margin:var(--gap-sm) 0 0;font-size:var(--fs-caption);color:var(--color-warn)}
.sujo{color:var(--color-warn)}
