/* ==========================================================================
   Version imprimable des guides publics — 29/10/2026 (lot 133)
   Chargée seulement sur les pages qui déclarent $impression_guide (includes/header.php), avec media="print" :
   elle ne retarde jamais l'affichage à l'écran.

   Ce que fait une page imprimée (ou enregistrée en PDF) :
     - une page de couverture lisible (marque, titre, date de relecture, adresse) ;
     - ni menu, ni bandeau, ni boutons, ni encarts de vente, ni formulaires ;
     - chaque lien écrit en toutes lettres après son texte (adresse complète) ;
     - encre noire sur blanc, quel que soit le thème choisi à l'écran ;
     - des sauts de page propres : un titre n'est jamais seul en bas de page, un bloc court n'est jamais coupé ;
     - en pied de CHAQUE page (boîte de marge @page, texte posé par includes/header.php) : « Neurod.eu · titre · relu le … · adresse · sources », et le numéro de page.
   ========================================================================== */
@page{ size:A4; margin:18mm 16mm 26mm; }

@media print{
  /* Les jetons de couleur du site, forcés en clair et en noir : le thème sombre ou sépia ne sort pas à l'encre. */
  :root, :root[data-theme]{
    --color-bg:#fff; --color-bg-alt:#fff; --color-surface:#fff; --color-ink:#000; --color-ink-soft:#222; --color-ink-mute:#333;
    --color-border:#999; --color-border-strong:#555; --color-primary:#000; --color-primary-dark:#000; --color-primary-light:#fff;
    --color-accent:#000; --color-accent-btn:#000; --color-accent-light:#fff; --color-accent-text:#000; --color-accent-2-text:#000;
    --color-accent-3-text:#000; --color-success-text:#000; --color-danger:#000; color-scheme:light;
  }
  html{ font-size:11.5pt !important; }
  body[data-impression]{ background:#fff !important; color:#000 !important; font-size:11.5pt; line-height:1.5; }
  body[data-impression] *{ box-shadow:none !important; text-shadow:none !important; animation:none !important; transition:none !important; }
  body[data-impression] [data-reveal]{ opacity:1 !important; transform:none !important; }

  /* Ce qui n'a rien à faire sur du papier */
  body[data-impression] .site-header, body[data-impression] .site-footer, body[data-impression] .nl-section,
  body[data-impression] .cookie-banner, body[data-impression] .skip-link, body[data-impression] .lecture,
  body[data-impression] .breadcrumb, body[data-impression] .tag-pill, body[data-impression] .reading-time,
  body[data-impression] .share-buttons, body[data-impression] .newsletter-box, body[data-impression] .maillage,
  body[data-impression] .encart-offre, body[data-impression] .gd-encart, body[data-impression] .type-hero-photo,
  body[data-impression] .btn, body[data-impression] button, body[data-impression] form,
  body[data-impression] .sidebar-cta, body[data-impression] .affiliate-box, body[data-impression] video,
  body[data-impression] iframe, body[data-impression] .gd-noprint, body[data-impression] .fiche-maj{ display:none !important; }

  /* Mise en page : une colonne pleine largeur, sans fond ni cadre décoratif */
  body[data-impression] section, body[data-impression] .container{ padding-top:0 !important; padding-bottom:0 !important; max-width:none !important; margin:0 !important; background:none !important; }
  body[data-impression] .type-hero{ background:none !important; border:0 !important; padding:0 0 .6rem !important; }
  body[data-impression] .type-hero-grid{ display:block !important; }
  body[data-impression] main{ display:block; }
  body[data-impression] h1{ font-size:22pt; line-height:1.2; margin:0 0 .4rem; }
  body[data-impression] h2{ font-size:16pt; margin:1.4rem 0 .4rem; }
  body[data-impression] h3{ font-size:13pt; margin:1rem 0 .3rem; }
  body[data-impression] p, body[data-impression] li{ orphans:3; widows:3; max-width:none !important; }
  body[data-impression] .type-hero .lead{ display:none !important; }   /* déjà sur la couverture */
  body[data-impression] .lead{ font-size:12.5pt !important; color:#000 !important; max-width:none !important; margin:0 0 .6rem !important; }

  /* Sauts de page propres */
  body[data-impression] h1, body[data-impression] h2, body[data-impression] h3, body[data-impression] h4{ break-after:avoid; page-break-after:avoid; }
  body[data-impression] li, body[data-impression] tr, body[data-impression] figure, body[data-impression] blockquote,
  body[data-impression] .callout, body[data-impression] .card, body[data-impression] dt, body[data-impression] dd,
  body[data-impression] .content-block > p{ break-inside:avoid; page-break-inside:avoid; }
  body[data-impression] ul, body[data-impression] ol{ break-before:avoid; }
  body[data-impression] table{ width:100%; border-collapse:collapse; }
  body[data-impression] thead{ display:table-header-group; }
  body[data-impression] th, body[data-impression] td{ border:1px solid #666; padding:.25rem .4rem; color:#000; background:none; }
  body[data-impression] .callout{ border:1px solid #555 !important; border-left:4px solid #000 !important; background:none !important; color:#000 !important; padding:.5rem .8rem; }
  body[data-impression] img{ max-width:100%; height:auto; filter:none !important; break-inside:avoid; }
  body[data-impression] details:not([open]) > *:not(summary){ display:block !important; }   /* repli par défaut de Chrome ; le script ouvre aussi tout */
  body[data-impression] summary{ font-weight:700; list-style:none; }
  body[data-impression] summary::-webkit-details-marker{ display:none; }

  /* Liens en toutes lettres : main.js recopie l'adresse complète de chaque lien dans data-lien (guides seulement) */
  body[data-impression] main a[data-lien]::after{ content:" (" attr(data-lien) ")"; font-size:.82em; font-weight:400; word-break:break-all; color:#000; }
  body[data-impression] main a{ color:#000 !important; text-decoration:underline; }
  body[data-impression] main a.skip-link::after, body[data-impression] main a[data-lien=""]::after{ content:none; }

  /* Page de couverture : seule sur la première page */
  body[data-impression] .impression-couverture{ display:flex !important; flex-direction:column; justify-content:center; min-height:225mm; padding:0 4mm; break-after:page; page-break-after:always; }
  .impression-couverture-marque{ font-size:15pt; font-weight:800; letter-spacing:.04em; margin:0 0 3rem; border-bottom:3px solid #000; padding-bottom:.6rem; }
  .impression-couverture-type{ font-size:12pt; text-transform:uppercase; letter-spacing:.14em; margin:0 0 .8rem; }
  .impression-couverture-titre{ font-size:32pt; line-height:1.15; font-weight:800; margin:0 0 1.2rem; }
  .impression-couverture-sous{ font-size:14pt; line-height:1.45; margin:0 0 2.4rem; max-width:34em; }
  .impression-couverture-meta{ font-size:11.5pt; line-height:1.6; margin:0; }
  .impression-couverture-alerte{ font-size:10.5pt; margin:2.4rem 0 0; border-top:1px solid #555; padding-top:.7rem; max-width:40em; }

  /* Pied de chaque page : écrit par includes/header.php dans une boîte de marge @page (date de relecture, sources, adresse, numéro de page) */
}
@media screen{
  .impression-couverture{ display:none; }
}
