/* ============================================================================
   PRINT
   Sponsors will PDF this page to show a partner or a boss. The inventory
   needs to survive that trip as a clean, readable table.
   ========================================================================== */

@media print {
  :root {
    --text-hero: 34pt;
    --text-display: 22pt;
    --text-heading: 15pt;
    --text-body: 10.5pt;
    --text-caption: 9pt;
    --section-pad-y: 18pt;
  }

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

  /* Interactive chrome carries nothing on paper. */
  .nav,
  .stage__hint,
  .views,
  .hero__actions,
  .pathswitch,
  .form-section,
  .embed,
  [data-requires-js] { display: none !important; }

  /* Dark bands invert — printing large ink fields wastes toner and reads worse. */
  .section--dark,
  .section--deck,
  .footer {
    background: #fff !important;
    color: #000 !important;
  }
  .section--dark *,
  .section--deck *,
  .footer * { color: #000 !important; }
  .honesty { border: 1pt solid #999; }

  .section { padding-block: var(--section-pad-y); break-inside: avoid; }

  /* The inventory is the point of a printed copy. */
  .tier-list { display: block; }
  .tier {
    break-inside: avoid;
    margin-block-end: 14pt;
    border-block-start: 2pt solid #000;
  }
  .zone-row {
    padding: 4pt 0;
    border-block-start: 0.5pt solid #ccc;
  }
  .zone-row__status { color: #444 !important; }

  .stage { aspect-ratio: 16 / 9; max-height: none; border: 0.5pt solid #ccc; }
  .stage canvas { display: none !important; }
  .stage__still { opacity: 1 !important; position: static; }

  a { text-decoration: none; }
  .footer__legal p { color: #444 !important; }

  h1, h2, h3 { break-after: avoid; }
}
