/* ═══════════════════════════════════════════════════════════════════
   POS-SAAS-0D.6 · Centro de Reportes (filtros, vistas, paginación)
   ═══════════════════════════════════════════════════════════════════ */

.rfilters { display: grid; gap: var(--s-2); padding: var(--s-3) var(--s-4); border: 1px solid var(--c-line); border-radius: var(--r-lg); background: var(--c-surface); min-width: 0; }
.rfilters--local { padding: 0; border: 0; background: none; }
.rfilters__row { display: flex; align-items: center; gap: var(--s-2) var(--s-3); flex-wrap: wrap; min-width: 0; }
.rfilters__row .chips { flex: 1 1 auto; min-width: 0; }
.rfilters__label { font-weight: 700; font-size: var(--fs-sm); color: var(--c-ink-2); min-width: 88px; }
.rfilters__custom { display: flex; align-items: flex-end; gap: var(--s-3); flex-wrap: wrap; }
.rfilters__custom .field { min-width: 160px; }
.rfilters__custom .field__error { flex-basis: 100%; margin: 0; color: var(--c-danger); font-weight: 600; font-size: var(--fs-sm); }
.rfilters__custom .field__error:empty { display: none; }
.rfilters__custom [aria-invalid="true"] { border-color: var(--c-danger); box-shadow: 0 0 0 1px var(--c-danger); }
.rfilters__select { max-width: 360px; }

.report { min-width: 0; }
.report__head { display: flex; align-items: baseline; justify-content: space-between; gap: var(--s-2) var(--s-4); flex-wrap: wrap; }
.report__title { font-size: var(--fs-lg); font-weight: 800; }
.report__period { display: inline-flex; align-items: center; gap: var(--s-1); margin: 0; color: var(--c-ink-2); font-size: var(--fs-sm); }
.report__period .icon { width: 16px; height: 16px; }

.kpis--auto { grid-template-columns: repeat(auto-fill, minmax(min(100%, 190px), 1fr)); }

.rep-section { min-width: 0; }
.rep-section .card__head { flex-wrap: wrap; }
.rep-empty { margin: 0; color: var(--c-ink-2); }
.rep-notes { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--s-1); color: var(--c-ink-2); font-size: var(--fs-sm); }
.rep-notes li { display: flex; gap: var(--s-2); align-items: flex-start; }
.rep-notes .icon { flex: none; width: 16px; height: 16px; margin-top: 2px; }

.rep-pager { display: flex; align-items: center; justify-content: space-between; gap: var(--s-2); flex-wrap: wrap; margin-top: var(--s-3); }
.rep-pager [data-page-prev] .icon { transform: rotate(180deg); }
.rep-pager [data-page-next] { flex-direction: row-reverse; }
.rep-pager__text { font-size: var(--fs-sm); color: var(--c-ink-2); }

.rep-table td, .rep-table th { overflow-wrap: anywhere; }
@container (min-width: 981px) { .rep-table td.num { white-space: nowrap; } }
@media (min-width: 900px) {
  .kpis--c3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .kpis--c4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
.page-head + .report-legend { margin-top: var(--s-3); }
.rep-tabs .tabs { flex-wrap: wrap; overflow: visible; }
