/* Printing the site.
   Phil reviews the wording on paper and sends back marked-up photos, so the
   printout has to carry every word the screen does. On screen a lot of copy is
   behind a disclosure or a reveal, and a collapsed section prints as nothing at
   all - he would be reviewing a document with the text missing and no way to
   tell. Everything here exists to put the words back on the page. */
@media print {

  /* Browsers drop background graphics by default, so pale text on a dark band
     prints white on white. Flip those sections to ink on paper instead. */
  .band.navy, .tally, .paper .ph, .part[aria-pressed="true"] {
    background: #fff !important;
    color: #111 !important;
    border: 1px solid #999 !important;
  }
  .band.navy *, .tally *, .paper .ph * { color: #111 !important; }

  /* Furniture and wordless decoration only. Navigation labels and button text
     are copy Phil may want to change, so they stay on the page - flattened,
     not removed. The 3D house carries no words and prints blank, so it goes. */
  header.site { position: static !important; }
  .mobar, .parallax, #stage, canvas, [aria-hidden="true"] { display: none !important; }
  .btn, .btn.ghost {
    background: #fff !important;
    color: #111 !important;
    border: 1px solid #666 !important;
    transform: none !important;
    box-shadow: none !important;
  }

  /* The sample-schedule envelope is collapsed until clicked. */
  .env-body { grid-template-rows: 1fr !important; }
  .env-inner { overflow: visible !important; }
  .flap, .seal { display: none !important; }

  /* Disclosures. The JS in app.js opens them for the print; this styles the
     result so each question and its answer read as one block. */
  details { display: block !important; break-inside: avoid; margin-bottom: 10pt; }
  details > summary {
    list-style: none;
    font-weight: 700;
    cursor: auto;
  }
  details > summary::marker,
  details > summary::-webkit-details-marker { display: none; }

  /* Keep a heading with what it introduces, and never split a priced row. */
  h1, h2, h3 { break-after: avoid; }
  tr, li, .item, .faq, .card { break-inside: avoid; }

  /* Paper, not screen. */
  body { background: #fff !important; color: #111 !important; font-size: 11pt; }
  a { color: #111 !important; text-decoration: underline; }
  @page { margin: 16mm 14mm; }
}
