@media print {
  nav, footer, .day-nav, .link-row, .hero-actions, .trainer-banner { display:none !important; }
  body { background:#fff !important; color:#000 !important; }
  main { padding-top:0 !important; }
  .hero { padding:10px 0 !important; text-align:left !important; }
  .hero-bg { display:none !important; }
  a { text-decoration:none !important; color:#000 !important; }
  .goal-box, .warning-box, .big-statement, .callout { border:1px solid #999 !important; background:#f5f5f5 !important; color:#000 !important; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  .big-statement h3, .big-statement p { color:#000 !important; }
  table.ref-table th { background:#eee !important; color:#000 !important; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  table.ref-table tr:nth-child(even) td { background:#f9f9f9 !important; }

  /* quick-reference card — keep the border, keep it on one page */
  .quick-card {
    border:2px solid #000 !important; box-shadow:none !important;
    break-inside:avoid; page-break-inside:avoid;
  }
  .quick-card h3, .quick-card-rule strong { color:#000 !important; }
  .quick-card-label, .quick-card-row .k { color:#333 !important; }
  .quick-card-tip { background:#f5f5f5 !important; -webkit-print-color-adjust:exact; print-color-adjust:exact; }

  /* FAQ — never split an answer across pages */
  .faq-item { break-inside:avoid; page-break-inside:avoid; }
  .faq-item:target { background:transparent !important; box-shadow:none !important; }
  .faq-summary { background:#f5f5f5 !important; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  .faq-link { display:none !important; }
}
