/* print: clean PDF export */
@media print {
  :root, [data-theme="dark"] {
    --bg: #ffffff;
    --bg-soft: #f7f9fb;
    --bg-raise: #ffffff;
    --bg-sunken: #f2f5f9;
    --border: #d5dde6;
    --border-soft: #e4eaf1;
    --fg: #0f172a;
    --fg-soft: #334155;
    --fg-mute: #64748b;
    --accent: #0369a1;
    --accent-strong: #075985;
    --accent-glow: transparent;
    --pill-bg: #e8f4fd;
    --pill-border: #9dd6f5;
    --pill-fg: #075985;
    --shadow: none;
    --grid-line: transparent;
  }

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

  body { font-size: 10.5pt; }
  body::before { display: none; }

  .nav, .theme-btn, .mm-controls, .mm-card, .mm-hint, .mm-nav, .scroll-hint { display: none !important; }

  .hero { min-height: auto; padding-top: 10mm; }
  .hero__glow { display: none; }

  section { padding: 8mm 0; max-width: none; page-break-inside: avoid; }
  h2 { page-break-after: avoid; }
  figure, .table-wrap, .stat-card, .stage, .fit-card, .cost-card { page-break-inside: avoid; }
  #chart-recall svg { max-width: 70mm; display: block; margin: 0 auto; }
  #landscape { page-break-before: always; }

  /* reveals: force visible */
  .reveal, .reveal-stagger > *, .chart text { opacity: 1 !important; transform: none !important; }
  .chart .bar, .chart .bar--v { transform: none !important; }
  .hero > * { animation: none !important; }

  /* hard questions: force open */
  .hardq details { page-break-inside: avoid; }
  .hardq summary::after { display: none; }
  .hardq details:not([open]) .hardq__a { display: block; }

  /* mindmap: flattened (mindmap.js pre-expands on beforeprint) */
  .mindmap-wrap { border: 1px solid var(--border); box-shadow: none; }
  .mm-leafgroup[data-open="false"] { opacity: 1 !important; pointer-events: none; }
  .mm-dim { opacity: 1 !important; }
  .mm-legend { position: static; padding: 4mm; }

  a { color: var(--fg); text-decoration: none; }
  .appendix-link { border: none; padding: 0; }

  .close-sec { min-height: auto; }
}
