/* ============================================================================
   print.css — view de impressão (o usuário salva como PDF pelo navegador)
   architecture.md 5.9: "MVP exporta CSV + uma view de impressão (@media print).
   Nenhuma biblioteca de PDF no Worker."
   design-system.md 6.1.1 (Regra de confiança): o nome da empresa ativa aparece
   no cabeçalho de TODA impressão. Num produto multi-empresa, um relatório sem
   identificação é erro de negócio esperando acontecer.
   ========================================================================== */

@media print {
  @page { margin: 14mm; }

  body { background: #FFF; color: #000; }

  /* Cromo de aplicação não é conteúdo de relatório */
  .sidenav, .topbar, .nav-overlay, .filter-bar, .bulk-bar, .pagination,
  .drawer, .overlay, .modal, .toast-region, .menu,
  .page-header__actions, .no-print { display: none !important; }

  .app { display: block; }
  .content { max-width: none; padding: 0; margin: 0; }

  /* Cabeçalho de impressão: empresa ativa + CNPJ + período + data de geração.
     Fica oculto na tela e só aparece no papel. */
  .print-header { display: block !important; margin-bottom: 12pt; border-bottom: 1px solid #000; padding-bottom: 6pt; }
  .print-header__company { font-size: 13pt; font-weight: 600; }
  .print-header__meta { font-size: 9pt; }

  .card, .table-wrap, .kpi { border: 1px solid #999; box-shadow: none; break-inside: avoid; }
  .kpi-row, .kpi-row--3 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6pt; }

  table.data { font-size: 9pt; }
  table.data thead { display: table-header-group; }   /* repete o cabeçalho por página */
  table.data thead th { background: #EEE; color: #000; position: static; }
  table.data tbody tr { break-inside: avoid; }
  table.data tbody tr.row--vencido { background: #F4F4F4; }

  a { color: #000; text-decoration: none; }
  details.chart-data { display: block; }
  details.chart-data > summary { display: none; }     /* dado tabular sempre impresso */

  .skeleton { animation: none; }
}

/* Fora da impressão, o cabeçalho de impressão não ocupa espaço */
.print-header { display: none; }
