#print-root { display: none; }
/* Printed working papers (A4, browser "Save as PDF"): firm band, reference block, standards chips, zebra tables, sign-off strip. */
@media print {
  @page { size: A4; margin: 15mm 14mm 17mm; }
  body { background: #fff !important; }
  body.printing > *:not(#print-root) { display: none !important; }
  body.printing #print-root { display: block !important; }
  #print-root, #print-root * { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  #print-root { font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 9.8pt; line-height: 1.42; color: #1d2430; }
  #print-root h1 { font-size: 15pt; margin: 0 0 3pt; color: #0c2340; letter-spacing: -.005em; }
  #print-root h2 { font-size: 11.5pt; margin: 13pt 0 5pt; color: #12315a; border-bottom: 1.2pt solid #14a3a5; padding-bottom: 2.5pt; break-after: avoid; }
  #print-root h3 { font-size: 10pt; margin: 10pt 0 4pt; color: #0b6e70; break-after: avoid; }
  #print-root p { margin: 0 0 6pt; }
  #print-root table { width: 100%; border-collapse: collapse; margin: 4pt 0 9pt; font-size: 8.8pt; page-break-inside: auto; }
  #print-root th, #print-root td { border-bottom: .5pt solid #d9dee6; padding: 3.2pt 5pt; vertical-align: top; text-align: left; }
  #print-root thead th { background: #12315a !important; color: #fff; font-weight: 600; border-bottom: 0; }
  #print-root tbody th { background: #f7f9fc !important; color: #3b475a; font-weight: 600; width: 38%; }
  #print-root tbody tr:nth-child(even) td { background: #f7f9fc !important; }
  #print-root td.num, #print-root th.num { text-align: right; font-variant-numeric: tabular-nums; }
  #print-root tr { page-break-inside: avoid; }
  #print-root thead { display: table-header-group; }
  #print-root .wp-band { display: flex; justify-content: space-between; align-items: flex-end; gap: 12pt; background: #0c2340 !important; color: #fff; padding: 9pt 11pt; border-bottom: 3pt solid #14a3a5; margin-bottom: 0; }
  #print-root .wp-band h1 { color: #fff; margin: 2pt 0 0; }
  #print-root .wp-band .firm { font-size: 8.5pt; color: #a9bad2; letter-spacing: .02em; }
  #print-root .wp-band .ref { text-align: right; font-size: 8.5pt; color: #c9d5e6; white-space: nowrap; }
  #print-root .wp-band .ref b { display: block; font-size: 14pt; color: #fff; }
  #print-root .wp-head { display: grid; grid-template-columns: 1fr 1fr; border: .5pt solid #d9dee6; border-top: 0; margin-bottom: 8pt; background: #f7f9fc !important; }
  #print-root .wp-head div { padding: 3pt 8pt; border-bottom: .5pt solid #e6eaf0; font-size: 8.8pt; }
  #print-root .wp-head div b { color: #3b475a; }
  #print-root .refs { display: flex; flex-wrap: wrap; gap: 3pt 4pt; align-items: center; margin: 0 0 8pt; font-size: 7.6pt; }
  #print-root .refs .lbl { font-weight: 700; color: #7d8796; letter-spacing: .06em; margin-right: 3pt; }
  #print-root .refs span.chip { background: #e3f5f2 !important; color: #0b6e70; border-left: 1.6pt solid #14a3a5; padding: 1.5pt 5pt; }
  #print-root .signoff { display: grid; grid-template-columns: repeat(3, 1fr); gap: 5pt; margin-top: 12pt; font-size: 8.8pt; break-inside: avoid; }
  #print-root .signoff div { padding: 5pt 7pt; border: .5pt solid #d9dee6; border-top: 2pt solid #1b7a43; background: #f7f9fc !important; min-height: 36pt; }
  #print-root .signoff div b { font-size: 7pt; letter-spacing: .06em; text-transform: uppercase; color: #5d6878; }
  #print-root .draft-mark { border-left: 3pt solid #a3242b; background: #fbeeee !important; color: #a3242b; padding: 4pt 8pt; font-size: 8.5pt; font-weight: 600; margin: 6pt 0; }
  #print-root .footer { margin-top: 16pt; font-size: 7.6pt; color: #5d6878; border-top: .5pt solid #d9dee6; padding-top: 4pt; }
  #print-root .page-break { page-break-before: always; }
}
