/* Report Center (spa/reports.js) — the N3 AI / QNE-style paper preview. */
.rpt-center { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 14px; align-items: start; }
.rpt-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.rpt-list li { display: grid; gap: 1px; }
.rpt-list a { font-weight: 600; }
.rpt-frow { flex-wrap: wrap; }
.rpt-out { overflow-x: auto; padding-bottom: 8px; }
.rpt-paper { background: #fff; color: #111; margin: 0 auto; padding: 28px 30px 34px; box-shadow: 0 1px 3px rgba(0,0,0,.12), 0 6px 18px rgba(0,0,0,.06);
  font-family: "Inter", "Segoe UI", system-ui, sans-serif; font-size: 12px; }
.rpt-paper.portrait { max-width: 820px; }
.rpt-paper.landscape { max-width: 1160px; }
.rpt-head { text-align: center; margin-bottom: 14px; position: relative; }
.rpt-co { font-size: 16px; font-weight: 700; }
.rpt-reg { font-size: 11px; font-weight: 500; color: #444; }
.rpt-co-info { font-size: 10.5px; color: #333; line-height: 1.45; margin-top: 2px; }
.rpt-logo { display: block; max-height: 48px; max-width: 180px; margin: 0 auto 4px; }
.rpt-title { font-size: 14px; font-weight: 700; margin-top: 4px; text-transform: uppercase; letter-spacing: .02em; }
.rpt-period { font-size: 12px; margin-top: 3px; }
.rpt-filters { font-size: 11px; color: #444; margin-top: 2px; }
.rpt-meta { display: flex; justify-content: space-between; font-size: 10.5px; color: #555; margin-top: 10px; border-bottom: 1.5px solid #111; padding-bottom: 4px; }
.rpt-section { font-weight: 700; margin: 16px 0 4px; font-size: 12.5px; }
.rpt-table { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.rpt-table th { text-align: left; font-weight: 700; border-bottom: 1px solid #111; padding: 5px 6px; font-size: 11.5px; white-space: nowrap; }
.rpt-table td { padding: 3px 6px; vertical-align: top; }
.rpt-table .r { text-align: right; white-space: nowrap; }
.rpt-table .c { text-align: center; }
.rpt-table tr.rk-group td { font-weight: 700; padding-top: 8px; }
.rpt-table tr.rk-subtotal td { font-weight: 600; }
.rpt-table tr.rk-subtotal td.r { border-top: 1px solid #111; }
.rpt-table tr.rk-total td { font-weight: 700; }
.rpt-table tr.rk-total td.r { border-top: 1px solid #111; }
.rpt-table tr.rk-grand td { font-weight: 700; }
.rpt-table tr.rk-grand td.r { border-top: 1px solid #111; border-bottom: 3px double #111; }
.rpt-table tr.rk-note td { color: #555; font-style: italic; }
.rpt-table tr.rk-heading td { font-weight: 700; padding-top: 10px; border-bottom: 1px solid #bbb; }
.rpt-drill { color: inherit; text-decoration: none; border-bottom: 1px dotted #888; cursor: pointer; }
.rpt-drill:hover { color: #0b5cad; border-bottom-color: #0b5cad; }
.rpt-foot { margin-top: 14px; font-size: 10.5px; color: #555; white-space: pre-line; }
/* A warning printed ON the paper (a statement out of balance, a listing that stopped at its cap). */
.rpt-warn { border: 1.5px solid #b42318; color: #7a1a12; background: #fff4f2; padding: 6px 10px; margin: 0 0 10px; font-size: 11.5px; font-weight: 600; }
.rpt-paper.landscape { font-size: 11px; }
.rpt-paper.landscape .rpt-table td, .rpt-paper.landscape .rpt-table th { padding-left: 4px; padding-right: 4px; }
@media (max-width: 700px) { .rpt-paper { padding: 18px 14px 22px; } }
@media print {
  .rpt-print .rpt-paper, .rpt-paper { box-shadow: none; padding: 0; max-width: none; }
  .rpt-drill { border-bottom: 0; color: inherit; }
  .rpt-warn { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .rpt-table thead { display: table-header-group; }
  .rpt-table tr { break-inside: avoid; }
}
@page rptlandscape { size: A4 landscape; margin: 10mm; }
.rpt-print.landscape { page: rptlandscape; }
@page { @bottom-right { content: "Page " counter(page) " of " counter(pages); font-size: 9pt; color: #555; } }
