/* Print sheet. Loaded with media="print".
   Keeps the method, assumptions, result and sources on paper, and drops the
   navigation, decoration and interactive controls. No headings are introduced
   here, so the printed page keeps exactly one h1. */

* {
  background: #fff !important;
  color: #000 !important;
  box-shadow: none !important;
}

.skip-link,
.site-header,
.site-footer,
.breadcrumbs,
.hero-art,
.pitch-motif,
.tool-actions,
.related,
.status-links,
.gif-frame,
.card-grid,
.identity-grid,
.back-link {
  display: none !important;
}

.print-only { display: block !important; }

body {
  font-size: 11pt;
  line-height: 1.4;
}

.wrap { width: auto !important; max-width: none !important; }

.doc-head, .post-head, .page-head, .hero {
  padding: 0 0 0.5cm !important;
  border-bottom: 1pt solid #000;
}

h1 { font-size: 20pt; }
h2 { font-size: 13pt; margin-top: 0.6cm; }
h3 { font-size: 11.5pt; }

.kicker, .standfirst, .post-meta {
  font-size: 9.5pt;
}

a { text-decoration: underline; }

/* Show the destination of external links on paper. */
.doc-body a[href^="http"]::after,
.post-body a[href^="http"]::after,
.sources a[href^="http"]::after {
  content: " (" attr(href) ")";
  font-size: 8.5pt;
  word-break: break-all;
}

.tool-form {
  border: 1pt solid #000;
  padding: 0.3cm;
}

.tool-form input, .tool-form select {
  border: 0 !important;
  border-bottom: 1pt solid #000 !important;
  padding: 0 !important;
  min-height: 0 !important;
}

.field-help { display: none; }

.tool-result {
  border: 1pt solid #000;
  border-top: 3pt solid #000;
  padding: 0.3cm;
  page-break-inside: avoid;
}

.result-grid, .result-stat, table, .note, .source-card {
  border: 1pt solid #000 !important;
  page-break-inside: avoid;
}

.print-stamp {
  margin-top: 0.5cm;
  padding-top: 0.2cm;
  border-top: 1pt solid #000;
  font-size: 9pt;
}

section, .moment, figure { page-break-inside: avoid; }
