/* Printing (recap sheets, but any page prints cleanly): no menu nor bars, black on white, callouts kept. */

@page { size: A4; margin: 14mm 14mm 16mm; }

@media print {
  body { font-size: 10.5pt; line-height: 1.45; color: #000; background: #fff; }
  .skip-link, .flash, .button, .button-secondary, .mandy-open input, .mandy-open button, .no-print, .term-popup,
  .app-sidebar, .app-topbar, .actionbar, .track-switcher, .reader-toc, .next-step, .confetti, .quiz-progress { display: none !important; }
  .app-shell, .app-content { display: block; padding: 0; background: none; }
  .app-panel { border: 0; box-shadow: none; padding: 0; }
  .inner { padding: 0; max-width: none; }
  .print-only { display: block; }
  .prose { max-width: none; }
  h1 { font-size: 17pt; margin-top: 0; }
  h2 { font-size: 13pt; }
  h3 { font-size: 11.5pt; }
  h1, h2, h3 { break-after: avoid; }
  a { color: #000; text-decoration: none; }
  abbr.term { text-decoration: none; }
  .prose blockquote, .callout { break-inside: avoid; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  table, tr, .question { break-inside: avoid; }
  .table-scroll { overflow: visible; width: auto !important; }
  th { -webkit-print-color-adjust: exact; print-color-adjust: exact; }

  /* Recap sheet: two columns, À retenir and Attention, whatever the width of the paper. */
  .recap-header { padding: 0 0 8px; margin-bottom: 12px; border-bottom: 2px solid #000; }
  .recap-header .page-title, .recap-header .eyebrow, .recap-header .page-lead { color: #000; }
  .recap-cols { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .recap-cols-1 { grid-template-columns: minmax(0, 1fr); }
  .recap-col .callout { padding: 8px 10px; }
}
