/* Feuille d'impression, liée avec media="print" dans _document.tsx : le
   navigateur ne l'applique qu'à l'impression et la charge sans bloquer
   l'affichage (règle RWEB 0031).

   Une page imprimée garde le texte, les visuels et les coordonnées ; elle
   perd tout ce qui ne sert qu'à l'écran (navigation, boutons, formulaires,
   lecteurs intégrés) et n'imprime aucun fond. Les modules
   CSS complètent ces règles pour leurs propres éléments (@media print). */

@page {
  margin: 15mm;
}

/* `html:root` : passe devant le `:root` de globals.css, quel que soit
   l'ordre de chargement des deux feuilles. */
html:root {
  --csc-bg: #fff;
  --csc-bg-deep: #fff;
  --csc-paper: #fff;
  --csc-ink: #000;
  --csc-body: #000;
  --csc-label: #444;
  --csc-muted: #444;
  /* Les marges de la feuille remplacent celles de l'écran. */
  --csc-margin: 0px;
}

html,
body {
  background: #fff !important;
  color: #000;
}

/* Aucun mouvement : tout est à sa place d'arrivée, même ce qui n'a pas
   encore défilé à l'écran. */
*,
*::before,
*::after {
  animation: none !important;
  transition: none !important;
}

.csc-lines .csc-line,
.csc-rise {
  opacity: 1 !important;
  transform: none !important;
}

.csc-mask > * {
  clip-path: none !important;
}

.csc-drawn-top::before,
.csc-drawn-bottom::after {
  transform: scaleX(1) !important;
}

nav,
button,
form,
object,
iframe,
video,
.csc-btn {
  display: none !important;
}

.csc-mask,
.csc-placeholder {
  break-inside: avoid;
}

.csc-placeholder {
  display: none !important;
}

h1,
h2,
h3 {
  break-after: avoid;
}

p,
li {
  orphans: 3;
  widows: 3;
}

/* Sur papier, un lien externe n'est utile que si l'on voit son adresse. */
.rich-text a[href^='http']::after,
.csc-prose a[href^='http']::after {
  content: ' (' attr(href) ')';
  font-size: 0.85em;
  word-break: break-all;
}
