/* ═══ Print: only the one-page report ═══ */
.print-only { display: none; }

@media print {
  @page { size: A4; margin: 10mm; }
  :root, :root[data-theme="dark"] {
    --bg-0: #fff; --bg-1: #fff; --panel: #fff; --panel-2: #f6f3ee;
    --text-1: #111; --text-2: #333; --text-3: #555; --border: #ccc; --grid: #ddd;
    --cat-adhd: #b98314; --cat-autism: #5566c2; --cat-ocd: #9c4a78;
    --accent: #2f6a5e; --accent-2: #a8522f;
  }
  body { background: #fff !important; font-size: 10.5pt; line-height: 1.35; }
  #mesh, .rail, .bottombar, .topbar, .disclaimer-strip, .no-print, #tooltip { display: none !important; }
  .content { padding: 0 !important; max-width: none; }
  .print-only { display: block; }
  .card { box-shadow: none; border-color: #ccc; padding: 10px 12px; break-inside: avoid; }
  .report-page .grid.cols-3 { grid-template-columns: repeat(3, 1fr); gap: 8px; }
  .report-page .grid { gap: 8px; }
  .report-page .grid.cols-2 { grid-template-columns: 1.15fr 1fr; }
  .report-page .stack { gap: 8px !important; }
  .report-page td.wrap { font-size: 8pt; }
  .report-page .tile .t-value { font-size: 1.4rem; margin: 0; }
  .report-page .section { margin: 10px 0 6px; }
  .report-page table { font-size: 8.5pt; }
  .report-page td, .report-page th { padding: 3px 6px; }
  .report-page h1 { font-size: 16pt; }
  a { color: inherit; text-decoration: none; }
  * { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}

@media print {
  h1, h2, h3 { font-family: var(--font) !important; font-weight: 700; }
  .report-page .card.notable { break-inside: auto; }
  .report-page .card.notable tr:nth-child(n+6) { display: none; }
}
