/* =====================================================================
   print.css · vista imprimible del plan
   Se activa al imprimir (Ctrl/Cmd + P) o con el botón "Imprimir el plan".
   ===================================================================== */

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

  body { background: #fff; color: #000; font-size: 10.5pt; }

  .app-header, .app-nav, .app-footer, .toast-stack,
  .btn, .no-print, .modal-backdrop, .offline-bar, .skip-link { display: none !important; }

  .app-main { max-width: none; padding: 0; }

  .card, .stat, .compare__col, .table-wrap {
    border: 1px solid #999 !important; box-shadow: none !important;
    break-inside: avoid; page-break-inside: avoid; border-radius: 6px;
  }

  .hero-card {
    background: #fff !important; color: #000 !important;
    border: 2px solid #000 !important;
  }
  .hero-card h2, .hero-card .stat__value { color: #000 !important; }
  .hero-card .stat__label { color: #333 !important; }
  .hero-card__block { background: #fff !important; border: 1px solid #999 !important; }

  table.data { min-width: 0; font-size: 9pt; }
  table.data thead { display: table-header-group; }
  table.data thead th { background: #eee !important; color: #000 !important; position: static; }

  .table-wrap.collapse-mobile { display: block !important; }
  .mobile-summary { display: none !important; }

  a[href]::after { content: ""; }

  /* Los supuestos SIEMPRE se imprimen: una cifra sin su supuesto engaña. */
  .print-assumptions { display: block !important; break-before: auto; }
  .print-assumptions li { font-size: 9pt; }

  .print-only { display: block !important; }
  details { open: open; }
  details > summary { display: none; }
  details > * { display: block !important; }
}

.print-only { display: none; }
