/* ═══════════════════════════════════════════════════════
   ESTILOS DE IMPRESSÃO — Salvar como PDF
   Ativo apenas com window.print() / Ctrl+P
══════════════════════════════════════════════════════════ */

@media print {
  /* ── Ocultar elementos de navegação ── */
  .report-header,
  .report-header__actions,
  #btn-pdf,
  #btn-restart,
  #section-landing,
  #section-questionnaire,
  #section-loading,
  #section-error,
  #lead-modal {
    display: none !important;
  }

  /* ── Mostrar cabeçalho apenas no PDF ── */
  .report-title-block {
    display: flex !important;
    align-items: center;
    gap: 16px;
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 2px solid #D7DBE0;
  }
  .report-title-block h1 {
    font-size: 1.25rem;
    font-weight: 700;
    color: #004641;
    margin: 0;
  }

  /* ── Layout base ── */
  body {
    background: #fff !important;
    color: #292F35 !important;
    font-family: "DM Sans", "Inter", Arial, sans-serif;
    font-size: 11pt;
    line-height: 1.5;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .container, .container--narrow {
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .report-container {
    padding: 0 !important;
  }

  /* ── Seções: quebra de página inteligente ── */
  .report-section {
    break-inside: avoid;
    page-break-inside: avoid;
    border: 1px solid #D7DBE0;
    border-radius: 0;
    margin-bottom: 16pt;
    padding: 16pt;
    box-shadow: none !important;
    background: #fff !important;
  }

  .report-section h2 {
    font-size: 13pt;
    color: #004641;
    border-bottom: 1.5pt solid #D7DBE0;
    padding-bottom: 8pt;
    margin-bottom: 12pt;
  }

  .report-section h3 { font-size: 11pt; }
  .report-section h4 { font-size: 10pt; }

  /* ── Score cards: linha única no PDF ── */
  .score-cards {
    display: flex;
    flex-wrap: wrap;
    gap: 12pt;
  }
  .score-card {
    flex: 1;
    min-width: 150pt;
    border-left: 3pt solid;
    padding: 10pt;
    break-inside: avoid;
  }

  /* ── Rule cards ── */
  .rule-card {
    break-inside: avoid;
    page-break-inside: avoid;
    border: 1pt solid #D7DBE0;
    border-radius: 0;
    box-shadow: none !important;
    margin-bottom: 10pt;
  }
  .rule-card--alta { border-left: 3pt solid #D32F2F; }
  .rule-card--media { border-left: 3pt solid #FFAB40; }
  .rule-card--baixa { border-left: 3pt solid #37CC9A; }

  .rule-card__header { padding: 10pt 12pt; }
  .rule-card__body { padding: 10pt 12pt; gap: 10pt; }

  /* Expand details por padrão no PDF */
  .rule-detail { border: none; }
  .rule-detail summary { display: none; }
  .rule-detail[open] .rule-detail__text,
  .rule-detail .rule-detail__text {
    display: block !important;
    padding: 8pt 0;
    font-style: italic;
    color: #708190;
    font-size: 9.5pt;
  }

  /* ── Links: mostrar URL ── */
  .source-link::after {
    content: " (" attr(href) ")";
    font-size: 8pt;
    color: #708190;
    word-break: break-all;
  }
  a[href^="#"]::after, a[href^="javascript"]::after { content: ""; }

  /* ── CTA de marketing: oculto no PDF ── */
  .rule-cta { display: none !important; }

  /* ── Badges e chips ── */
  .badge, .timeframe-chip, .report-tag {
    border: 1pt solid currentColor !important;
    background: transparent !important;
  }

  /* ── Timeline ── */
  .timeline { padding-left: 20pt; }
  .timeline__phase { break-inside: avoid; }

  /* ── Conteúdos Treasy: grid simples ── */
  .content-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10pt;
  }
  .content-card {
    border: 1pt solid #D7DBE0;
    box-shadow: none;
    transform: none !important;
  }

  /* ── Disclaimer: destaque ── */
  .disclaimer__main {
    font-size: 10pt;
    border-left: 3pt solid #FFAB40;
    padding: 8pt;
    background: #FFF0D1 !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  /* ── Fonte técnica ── */
  .source-entry {
    break-inside: avoid;
    padding: 8pt;
    border: 1pt solid #D7DBE0;
    margin-bottom: 8pt;
  }

  /* ── Página ── */
  @page {
    size: A4 portrait;
    margin: 15mm 20mm;
  }

  @page :first {
    margin-top: 10mm;
  }
}
