@media print {

  /* Format de page */
  @page {
    size: A4;
    margin: 1.5cm;
  }

  /* Réinitialisation */
  * {
    box-shadow: none !important;
    text-shadow: none !important;
  }

  html,
  body {
    background: white !important;
    color: black !important;
    font-size: 11pt;
    line-height: 1.4;
  }


  /* Liens */
  a {
    color: inherit;
    text-decoration: none;
  }

  /* Images */
  img,
  picture {
    break-inside: avoid;
    page-break-inside: avoid;
  }

  img {
    max-height: 90vh;
    object-fit: contain;
  }

  /* Éviter les coupures */
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    break-after: avoid;
    page-break-after: avoid;
  }

  p,
  ul,
  ol,
  table,
  figure {
    break-inside: avoid;
    page-break-inside: avoid;
  }

  /* Tableaux */
  table {
    width: 100%;
    border-collapse: collapse;
  }

  th,
  td {
    border: 1px solid #ccc;
    padding: 0.25rem;
  }

  /* Sections importantes */
  .print-page {
    break-after: page;
    page-break-after: always;
  }

  .print-avoid-break {
    break-inside: avoid;
    page-break-inside: avoid;
  }
}