/* Imprimer seulement le contenu de #main_content */
@media print {
   header, nav, .site-nav, .sidebar, .breadcrumb, .toc, footer, .site-footer,
  .cookie-banner, .skip-link, .no-print {
    display: none !important;
    visibility: hidden !important;
  }  
  /* 0) Page propre */
  @page { size: A4; margin: 1.5cm; }
  html, body {
    background: #fff !important;
    color: #000 !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
    font-size: 12pt;
    line-height: 1.45;
  }

  /* 1) Tout masquer par défaut */
  body * {
    visibility: hidden !important;
  }

  /* 2) Montrer uniquement le contenu principal */
  #main_content, #main_content * {
    visibility: visible !important;
  }

  /* 3) Faire démarrer le contenu en haut à gauche, pleine largeur */
  #main_content {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 0.8cm !important;
  }

  /* 4) Sauts de page propres */
  h1:not(:first-child) { break-before: page; }
  h2, h3 { break-after: avoid; }
  .page-break { break-before: page; }

  /* 5) Éviter les coupures moches */
  img, svg, canvas, pre, blockquote, table, tr { page-break-inside: avoid; }
  img, svg, canvas { max-width: 100% !important; height: auto !important; }

  /* 6) Sécurité anti-overlays/modales au cas où (#main_content ne les contient pas) */
  .modal, .modal-backdrop, [role="dialog"], [aria-modal="true"],
  #accessconfig, .accessconfig, .ac-wrapper, .ac-panel, [data-accessconfig],
  .offcanvas, .toast, .popover, .dropdown-menu, dialog[open] {
    display: none !important;
    visibility: hidden !important;
  }
}
