/* ============================================================================
 * sp-print.css — Impression du gabarit « réglementation » (.sp-*)
 *
 * La BASE est dans CSS/print.css (papier blanc, chrome masqué, jetons
 * repeints, surfaces verre neutralisées, bandeau de marque) : elle est
 * injectée par layout.js sur toutes les pages. Ici, uniquement ce qui est
 * propre à ce gabarit.
 *
 * Chargée par les sept pages du gabarit — ai-act, cra, grc, nis2, dora,
 * ebios-rm, iso-27001 — APRÈS le <style> de la page, pour gagner les égalités
 * de spécificité sur ses règles d'écran. Une nouvelle page .sp-* n'a qu'à
 * ajouter le même <link>.
 * ========================================================================== */

@media print {
  .sp-crosslink, .sp-back, .sp-hero-icon { display: none !important; }

  .sp-wrap { margin: 0 !important; padding: 0 !important; max-width: none !important; }

  /* Le héros est une carte sombre à l'écran : sur le papier, il redevient un
     simple chapô, sous le bandeau de marque. */
  .sp-hero { border: 0 !important; border-radius: 0; padding: 0 0 0.4rem; text-align: left; margin-bottom: 0.9rem; }
  .sp-hero h1 { font-size: 15pt; }
  .sp-hero p { font-size: 10pt; max-width: none; }
  .sp-intro { border: 0 !important; border-left: 4px solid #0a6b4f !important; border-radius: 0; padding: 0.2rem 0 0.2rem 0.7rem; font-size: 10pt; }
  .sp-note { font-size: 9pt; margin-bottom: 1rem; }

  .sp-section { border: 0 !important; border-top: 1px solid #cfcfcf !important; border-radius: 0; padding: 0.9rem 0 0; margin-bottom: 0.9rem; }
  .sp-steps li, .sp-bullets li, .sp-map dd { break-inside: avoid; page-break-inside: avoid; }

  /* Pastille numérotée : l'aplat vert ne s'imprime pas, on la rend au trait. */
  .sp-steps li::before { color: #0a6b4f !important; border: 1px solid #0a6b4f; font-size: 0.8rem; }

  /* Cartes colorées (niveaux de risque, verdicts) : le statut passe par un
     liseré et par le texte, pas par un aplat — lisible en noir et blanc. */
  .dx-verdict { border: 1px solid #cfcfcf !important; border-radius: 6px; break-inside: avoid; page-break-inside: avoid; }
  .dx-bad  { border-left: 4px solid #b03325 !important; }
  .dx-warn { border-left: 4px solid #9a4708 !important; }
  .dx-good { border-left: 4px solid #0a6b4f !important; }
  .dx-info { border-left: 4px solid #6a6a6a !important; }
  .dx-intro, .dx-hint { border: 0 !important; border-left: 3px solid #0a6b4f !important; border-radius: 0; }

  /* Une référence sans son adresse ne sert à rien sur papier. */
  .sp-refs a::after { content: " — " attr(href); font-size: 8pt; font-weight: 400; color: #6a6a6a !important; word-break: break-all; }
  .sp-refs i { display: none !important; }

  .dgm { break-inside: avoid; page-break-inside: avoid; }
  .dgm svg { max-width: 380px; }
}
