/* print.css — black on white for clean printing & PDF export */

@media print {
  :root {
    --bg: #fff;
    --bg-2: #fff;
    --surface: #fff;
    --surface-2: #fff;
    --border: #999;
    --border-hi: #555;
    --text: #000;
    --text-soft: #222;
    --muted: #555;
    --code-bg: #f4f4f4;
    --code-fg: #000;
    --good: #006400;
    --warn: #b7791f;
    --bad:  #b00020;
    --shadow: transparent;

    --tier-accent: #2d1c5e;
    --tier-accent-soft: #2d1c5e;
    --tier-glow: transparent;
  }

  html, body { background: #fff !important; color: #000 !important; }
  body::after { display: none !important; }

  .topbar, .theme-toggle, .module-nav, .quiz-actions, .copy-btn,
  .cert-tools, .continue-cta a.go {
    display: none !important;
  }

  a {
    color: #000 !important;
    border-bottom: 0 !important;
    text-decoration: underline !important;
  }
  a[href]::after {
    content: " (" attr(href) ")";
    font-size: 0.78em;
    color: #555;
  }
  a[href^="#"]::after, a[href^="javascript:"]::after { content: ""; }

  pre, code {
    background: #f4f4f4 !important;
    color: #000 !important;
    border: 1px solid #ccc !important;
  }

  .section-h, header.modhead h1, .hub-hero h1, .cert-card h2 {
    color: #000 !important;
    background: transparent !important;
    -webkit-text-fill-color: #000 !important;
    text-shadow: none !important;
  }
  .section-h { border-left-color: #000 !important; }

  .quiz .opt { background: transparent !important; color: #000 !important; }
  .quiz .opt.right { border-color: #006400 !important; color: #006400 !important; background: #f0fff0 !important; }
  .quiz .opt.wrong { border-color: #b00020 !important; color: #b00020 !important; background: #fff5f5 !important; }

  .progress-fill, .tprog-fill { background: #444 !important; }

  /* Force everything to print as one column, page break friendly */
  section.mod-section { break-inside: avoid; }
  pre, .quiz, .callout, .related-list { break-inside: avoid; }
  h1, h2, h3 { break-after: avoid; }

  .page { max-width: 100% !important; padding: 0 !important; }
}
