.estoque-numeros { margin-bottom: var(--sp-4); }
.estoque-cartao + .estoque-cartao { margin-top: var(--sp-4); }
.estoque-meta { font-size: var(--fs-12); margin: 0 0 var(--sp-4); }
.estoque-barra { margin-top: var(--sp-3); }
.estoque-bloco { margin-top: var(--sp-4); }
.estoque-sub { display: block; font-size: var(--fs-12); color: var(--text-2); margin-top: 2px; }
.estoque-docs { gap: var(--sp-2); margin-top: var(--sp-2); }
.estoque-docs .badge { white-space: normal; }
.estoque-config { min-height: 150px; }

.conferencia-veredito { margin: 0 0 var(--sp-3); }
.conferencia-titulo {
  display: flex; align-items: center; gap: var(--sp-2); flex-wrap: wrap;
  font-size: var(--fs-14); font-weight: var(--fw-semibold); margin: var(--sp-4) 0 var(--sp-2);
}
.conferencia-lista { list-style: none; margin: 0; padding: 0; }
.conferencia {
  display: flex; align-items: flex-start; gap: var(--sp-2);
  padding: var(--sp-2) 0; border-bottom: 1px solid var(--border); font-size: var(--fs-13);
}
.conferencia .ico { width: 16px; height: 16px; flex: 0 0 16px; margin-top: 2px; }
.conferencia-ok .ico { color: var(--success); }
.conferencia-falha .ico { color: var(--danger); }
.conferencia-aviso { font-size: var(--fs-12); margin: var(--sp-2) 0 0; }

.filiais-opcoes { display: flex; flex-wrap: wrap; gap: var(--sp-3) var(--sp-5); margin-top: var(--sp-2); }

.field-note { display: block; }
.field-note > .ico { display: inline-block; vertical-align: -2px; margin-right: 4px; }

.tabela-wrap.is-cartoes { border: 0; background: transparent; overflow-x: visible; }
.tabela-wrap.is-cartoes .tabela,
.tabela-wrap.is-cartoes .tabela tbody,
.tabela-wrap.is-cartoes .tabela tr,
.tabela-wrap.is-cartoes .tabela td { display: block; width: 100%; }
.tabela-wrap.is-cartoes .tabela thead { display: none; }
.tabela-wrap.is-cartoes .tabela tbody tr {
  border: 1px solid var(--border); border-radius: var(--r-md);
  background: var(--surface-raised); margin-bottom: var(--sp-3);
  padding: var(--sp-3) var(--sp-4);
}
.tabela-wrap.is-cartoes .tabela td {
  border: 0; padding: 3px 0; display: flex; gap: var(--sp-3); align-items: center; min-height: 28px;
}
.tabela-wrap.is-cartoes .tabela td::before {
  content: attr(data-rotulo); flex: 0 0 40%; align-self: center;
  color: var(--text-3); font-size: var(--fs-11);
  text-transform: uppercase; letter-spacing: var(--tracking-caps);
}
.tabela-wrap.is-cartoes .tabela .col-num { text-align: left; }
.tabela-wrap.is-cartoes .tabela td:first-child {
  display: block; padding-bottom: var(--sp-2); margin-bottom: var(--sp-2);
  border-bottom: 1px solid var(--border);
}
.tabela-wrap.is-cartoes .tabela td:first-child::before { display: none; }
.tabela-wrap.is-cartoes .tabela td:first-child .cel-principal {
  display: block; font-size: var(--fs-15); font-weight: var(--fw-semibold);
  letter-spacing: var(--tracking-tight);
}
.tabela-wrap.is-cartoes .tabela td:first-child .cel-sub { margin-top: 2px; }
.tabela-wrap.is-cartoes .tabela td.col-acoes {
  width: auto; justify-content: flex-start;
  margin-top: var(--sp-2); padding-top: var(--sp-2);
  border-top: 1px solid var(--border);
}
.tabela-wrap.is-cartoes .tabela td.col-acoes::before { content: ""; flex: 0; }
.tabela-wrap.is-cartoes .acoes-linha { justify-content: flex-start; }
.tabela-wrap.is-cartoes .matriz td.col-nivel { width: auto; }
.tabela-wrap.is-cartoes .matriz td.col-nivel .celula-nivel { max-width: 120px; }
.card-flush > .tabela-wrap.is-cartoes { padding: var(--sp-3) var(--sp-3) 0; }

.relatorio-impressao { display: none; }

@media print {
  @page { size: A4 landscape; margin: 12mm; }
  body.imprimindo { background: #fff; }
  body.imprimindo > *:not(.relatorio-impressao) { display: none !important; }
  body.imprimindo .relatorio-impressao { display: block; color: #000; font-size: 10pt; }
  .relatorio-impressao .rel-titulo { font-size: 16pt; margin: 0 0 4pt; }
  .relatorio-impressao .rel-sub, .relatorio-impressao .rel-rodape { font-size: 9pt; margin: 0 0 8pt; }
  .relatorio-impressao .rel-tabela { width: 100%; border-collapse: collapse; }
  .relatorio-impressao .rel-tabela th, .relatorio-impressao .rel-tabela td {
    border: 0.5pt solid #999; padding: 3pt 5pt; text-align: left; vertical-align: top;
  }
  .relatorio-impressao .rel-tabela th { background: #eee; }
  .relatorio-impressao .rel-tabela .num { text-align: right; font-variant-numeric: tabular-nums; }
  .relatorio-impressao .rel-tabela tr { break-inside: avoid; }
  .relatorio-impressao .rel-cod, .relatorio-impressao .rel-nota { color: #444; font-size: 8.5pt; }
}
