/* ============================================================
   peq-print.css — Shared print/PDF media rules for all pages
   Extracted from 7 HTML files to eliminate duplication.
   Each page may still add page-specific @media print overrides.
   ============================================================ */

@media print {
  /* --- Base reset --- */
  body { background: #fff; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .page { max-width: 100%; padding: 0 12px; margin: 0; }
  h1 { font-size: 22px; margin-bottom: 4px; }
  .subtitle { font-size: 12px; }
  h2.section { font-size: 16px; margin-top: 20px; padding-bottom: 4px; break-after: avoid; }
  .hidden { display: none !important; }
  a { color: #012169; text-decoration: none; }

  /* --- Hide chrome (nav, footer, server controls, buttons) --- */
  .nav, .peq-nav, .peq-footer, .peq-server-warn,
  #stopServerBtn, #launchServerBtn, #serverWarn,
  .gpg-report-bar, .footer-btn, .footer-btn-outline,
  .sample-banner { display: none !important; }
  button { display: none !important; }

  /* --- Tables --- */
  table { break-inside: avoid; font-size: 10px; }
  .gap-tbl, .ob-tbl, .bench-tbl, .data-table, .legis-table { box-shadow: none; border: 1px solid #ccc; }
  .gap-tbl thead th, .ob-tbl thead th, .bench-tbl thead th { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .gap-tbl td, .ob-tbl td, .bench-tbl td { padding: 6px 8px; }
  .bench-tile { box-shadow: none; border: 1px solid #ddd; }
  .tip-box { display: none !important; }

  /* --- Charts --- */
  .chart-wrap { height: auto !important; max-height: 220px; }
  canvas { max-height: 220px; }

  /* --- Cards --- */
  .demo-card, .reg-card, .chart-card, .bench-group, .kpi { break-inside: avoid; box-shadow: none; border: 1px solid #ddd; }
  .demo-grid, .reg-grid, .chart-grid, .kpi-grid { gap: 12px; }

  /* --- Print header & footer (populated by boot.js) --- */
  .print-header {
    display: block !important;
    font-size: 11px; color: #012169; font-weight: 600;
    padding: 0 0 6px; margin-bottom: 12px; border-bottom: 2px solid #012169;
  }
  .print-footer {
    display: flex !important;
    font-size: 10px; color: #666; padding: 12px 0 0;
    margin-top: 24px; border-top: 1px solid #ccc; align-items: center; gap: 8px;
    break-inside: avoid;
  }
  .print-footer img { height: 18px; width: auto; }

  @page { margin: 15mm 12mm; }
}
