/* ============================================================
   GridAxon — Insights print stylesheet (also used for the PDFs)
   Linked with media="print". tools/insights-pdf.js prints pieces
   through headless Chrome/Edge, so this file defines the PDF layout.
   The running footer (brand, URL, page numbers) is drawn by Chrome
   in the bottom margin; see footerTemplate in tools/insights-pdf.js.
   ============================================================ */
@page { size: Letter; margin: 18mm 18mm 22mm; }

html, body { background: #fff !important; color: #111 !important; }
body { font-size: 10.5pt; }

/* site chrome and interactive parts are not part of the document */
.nav, .mobile-menu, .footer, .status-banner, .breadcrumb, .piece-actions, .signup,
.series-nav, .related, .hero-scroll, canvas, .filters, .no-print { display: none !important; }
.print-only { display: block !important; }

/* motion-only reveal offsets must never apply on paper */
.reveal, .reveal-text, .reveal-pills .pill { transform: none !important; transition: none !important; }

.container { max-width: none; padding: 0; }
.piece-head { padding: 0 0 12pt; border-bottom: 1pt solid #ccc; }
.piece-head h1 { font-size: 22pt; max-width: none; margin-top: 8pt; }
.standfirst { font-size: 12pt; color: #333; }
.byline { font-size: 9.5pt; color: #333; margin-top: 10pt; }
.byline a { color: #111; }
.chips { gap: 4pt; }
.chip { border-color: #999; color: #333; background: none !important; font-size: 7.5pt; }

/* first-page masthead: logo + "Insights" */
.print-masthead {
  display: flex !important; align-items: center; gap: 10pt;
  padding-bottom: 8pt; margin-bottom: 14pt; border-bottom: 1.5pt solid #0a7488;
}
.print-masthead img { height: 26pt; width: auto; }
.print-masthead span {
  font-family: var(--font-mono); font-size: 9pt; letter-spacing: 0.18em; text-transform: uppercase;
  color: #0a7488; border-left: 1pt solid #bbb; padding-left: 10pt;
}

/* first-page note: where the original lives */
.print-original { margin-top: 8pt; font-size: 9.5pt; color: #222; }

.piece-body { max-width: none; padding: 14pt 0 0; }
.piece-body h2 { font-size: 14pt; margin-top: 16pt; break-after: avoid; }
.piece-body h3 { font-size: 12pt; margin-top: 12pt; break-after: avoid; }
.piece-body p, .piece-body li { line-height: 1.5; orphans: 3; widows: 3; }
.piece-body a { color: #111; text-decoration: none; }

.in-short { background: none; border: 1pt solid #999; border-left: 3pt solid #0a7488; break-inside: avoid; }
.piece-body figure, .table-wrap, .equation { break-inside: avoid; }
.piece-body figure img { border-color: #ccc; max-height: 110mm; object-fit: contain; }
.table-wrap { overflow: visible; border-color: #ccc; }
.table-wrap th, .table-wrap td { white-space: normal; border-color: #ccc; }
.sources ol { color: #222; font-size: 9pt; }
.piece-body ul { list-style: disc; }
.piece-note { color: #444; }

/* closing box on the last page: who we are and how to reach us */
.print-about {
  margin-top: 18pt; padding: 12pt 14pt; break-inside: avoid;
  border: 1pt solid #ccc; border-top: 3pt solid #0a7488; border-radius: 4pt;
}
.print-about img { height: 20pt; width: auto; }
.print-about h2 { font-size: 11pt; margin: 8pt 0 4pt; }
.print-about p { font-size: 9.5pt; line-height: 1.45; color: #222; margin: 0; }
.print-about .print-contact { margin-top: 6pt; font-weight: 600; color: #0a7488; }
