/* §320 — layout de relatório (frame v2) pintado por report-frame.js.
   Carregado pelo Tomate (base.html) e pelo SabeTudo (ui.html): uma camada só.
   Cor = tinta da folha (`--rpt-ink-*`, cai no currentColor) — nada de hex aqui:
   na folha branca do TRB e na bolha tematizada do SabeTudo o texto herda o papel. */

.rpt-lay-wrap { display: block; }
.rpt-frame.rpt-lay { align-items: center; }
.rpt-lay-col { flex-direction: column; gap: .15rem; }
.rpt-frame-l.rpt-lay-col { align-items: flex-start; text-align: left; }
.rpt-frame-c.rpt-lay-col { align-items: center; text-align: center; flex: 2 1 0; }
.rpt-frame-r.rpt-lay-col { align-items: flex-end; text-align: right; }

.rpt-lay-img { width: auto; height: auto; max-width: 100%; object-fit: contain; }
.rpt-lay-header .rpt-lay-img.rpt-lay-s { max-height: 32px; }
.rpt-lay-header .rpt-lay-img.rpt-lay-m { max-height: 52px; }
.rpt-lay-header .rpt-lay-img.rpt-lay-l { max-height: 76px; }
.rpt-lay-footer .rpt-lay-img.rpt-lay-s { max-height: 18px; }
.rpt-lay-footer .rpt-lay-img.rpt-lay-m { max-height: 28px; }
.rpt-lay-footer .rpt-lay-img.rpt-lay-l { max-height: 40px; }

.rpt-lay-t { margin: 0; overflow-wrap: anywhere; line-height: 1.25; }
.rpt-lay-title {
  font-size: 1.15em; font-weight: 700; letter-spacing: .01em;
  color: var(--rpt-ink-1, currentColor);
}
.rpt-lay-sub { font-size: .86em; color: var(--rpt-ink-2, currentColor); opacity: .9; }
.rpt-lay-meta { font-size: .78em; color: var(--rpt-ink-detail, currentColor); opacity: .85; }

.rpt-lay-band {
  margin: -.35rem 0 .8rem; padding: .35rem 0 .45rem;
  border-bottom: 1px dashed color-mix(in srgb, currentColor 22%, transparent);
  font-size: .82em; color: var(--rpt-ink-detail, currentColor);
}
.rpt-lay-desc { margin: 0 0 .3rem; font-style: italic; }
.rpt-lay-filters { margin: 0; }
.rpt-lay-filters.is-grid {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(13rem, 1fr));
  gap: .15rem 1rem;
}
.rpt-lay-f { display: flex; gap: .35rem; min-width: 0; }
.rpt-lay-f dt { font-weight: 600; white-space: nowrap; }
.rpt-lay-f dt::after { content: ":"; }
.rpt-lay-f dd { margin: 0; overflow-wrap: anywhere; }
.rpt-lay-filters.is-line b { font-weight: 600; }

/* sem logo à esquerda/direita: o centro continua centrado na folha */
.rpt-lay-col:empty { min-height: 1px; }

@media (max-width: 560px) {
  .rpt-frame.rpt-lay { flex-wrap: wrap; }
  .rpt-frame-c.rpt-lay-col { order: 3; flex-basis: 100%; }
}
@media print {
  .rpt-lay-band { break-inside: avoid; }
}
