/* ============================================================
   print.css — Preparo universal para exportar PDF idêntico à tela
   Real Investor · incluir em toda tela que terá botão "Exportar PDF"
   Uso no <head>:  <link rel="stylesheet" href="/print.css">
   (ver print.js para o comportamento; DESIGN-SYSTEM.md para a regra)
   ============================================================ */

/* Botão reutilizável de exportar (some no PDF) */
.pdf-btn{position:fixed;right:22px;bottom:22px;z-index:90;background:#095B90;color:#fff;border:none;
  border-radius:999px;padding:12px 20px;font:600 13px/1 'DM Sans',system-ui,sans-serif;cursor:pointer;
  box-shadow:0 10px 30px -8px rgba(15,24,46,.28);display:inline-flex;align-items:center;gap:8px;
  transition:background .18s,transform .18s}
.pdf-btn:hover{background:#0A4A72;transform:translateY(-2px)}
.pdf-btn svg{width:16px;height:16px}

/* Durante a exportação: congela animações no estado final */
.printing *{transition:none !important;animation:none !important}

@media print{
  @page{margin:12mm}
  html,body{background:#fff !important}

  /* CRÍTICO: preserva TODAS as cores de fundo (navy, chips, barras, cards).
     Sem isto, o navegador imprime esses fundos em branco. */
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact;
    transition:none !important;animation:none !important}

  /* elementos que são só de tela não vão para o PDF */
  .no-print,.pdf-btn,.tt,.tooltip,.crosshair,.focus-dot{display:none !important}

  /* animações de entrada sempre no estado final (gráficos nunca saem em branco) */
  .reveal{opacity:1 !important;transform:none !important}

  /* evita cortar blocos no meio da página.
     Marque blocos próprios com class="pdf-keep" para não serem partidos.
     `.cq-kpi` é o cartão de KPI do catálogo (Caixa e Resultado · Resultado Contábil):
     sem ele na lista, o cartão partia entre duas páginas e saía com sombra. */
  .card,.kpi,.cq-kpi,.metric,.chart-card,table,tr,thead,figure,.pdf-keep{break-inside:avoid}
  thead{display:table-header-group}          /* repete o cabeçalho em tabelas longas */

  /* impressão limpa */
  .card,.kpi,.cq-kpi,.metric,.chart-card{box-shadow:none}

  /* Contêineres de rolagem lateral do Contas a Pagar (`.cp-tblwrap` no extrato,
     `.cr-tblwrap` na fila e no documento da remessa): na tela eles existem para a tabela
     rolar dentro do cartão em vez de estourar a página. No papel não há rolagem — sem
     liberar o overflow, o PDF sairia com a coluna de valor cortada. Seletores exclusivos
     dessa aba: nenhuma outra tela os usa.
     `.cr-doc` entra na lista de não-quebrar junto com `.card`: o documento é o bloco que o
     aprovador confere inteiro, e partir SALDO INICIAL de SALDO FINAL em duas páginas é
     exatamente o que não pode acontecer numa prova de conferência. */
  .cp-tblwrap,.cr-tblwrap{overflow:visible !important}
  .cr-doc{break-inside:avoid;box-shadow:none}
}
