/* Print / "Save as PDF" layout for /route (public/html/prov/route.html).
   Loaded with media="print" only, so it never affects the screen layout.
   The page normally scrolls inside a fixed #scrollArea under an overflow:hidden
   body (main.css) — both must be released or only the first viewport prints. */
/* Zero page margin is the only CSS way to suppress the browser's own header/footer (date, title, page URL).
   The visible margins are re-created as padding on #scrollArea, repeated on every printed page via
   box-decoration-break: clone (browsers without block-fragment clone support only get it on the first/last page). */
@page { size: A4; margin: 0; }

html, body {
  height: auto !important;
  overflow: visible !important;
  background: #fff !important;
  color: #181b20 !important;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}
body { display: block !important; min-height: 0 !important; zoom: .82; }
#scrollArea {
  position: static !important; overflow: visible !important; height: auto !important;
  box-sizing: border-box; padding: 14mm 13mm !important;
  -webkit-box-decoration-break: clone; box-decoration-break: clone;
}
main { display: block !important; }

/* Chrome and interactive parts that mean nothing on paper. */
.header-container, #siteFooter, #zone-hint, .guide-nav-btns, #notificationModal,
.rm-section-top, .rm-print-bar, .rm-entry-panel, .rm-left > .rm-eyebrow,
#qhost, .rm-progress, #testsPanel, #coveragePanel, .rm-debug-hidden,
.rm-qhelp, .exit-modal-overlay { display: none !important; }

/* Flatten the two-column app shell into one flowing document. */
.apply-roadmap-page .rm-section { padding: 0 !important; background: #fff !important; border: 0 !important; max-width: none !important; }
.apply-roadmap-page .rm-app-shell { max-width: none !important; border: 0 !important; box-shadow: none !important; background: #fff !important; }
.rm-wrap { display: block !important; }
.apply-roadmap-page .rm-col { padding: 0 !important; border: 0 !important; max-width: none !important; }
.rm-input-row { display: block !important; }
.apply-roadmap-page .rm-panel { border: 0 !important; box-shadow: none !important; padding: 0 !important; background: transparent !important; }
.rm-eyebrow { margin: 16px 0 6px !important; }

/* Document header / footer. */
.rm-print-head, .rm-print-foot { display: block !important; }
.rm-print-only { display: block !important; }
.rm-print-head { margin: 0 0 14px; padding-bottom: 10px; border-bottom: 2px solid #0b3474; }
.rm-print-brand { margin: 0 0 6px; color: #0b3474; font-size: 9pt; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.rm-print-head h1 { margin: 0 0 6px; color: #181b20; font-size: 20pt; line-height: 1.15; letter-spacing: -.01em; }
.rm-print-meta, .rm-print-note { margin: 0; color: #5f6672; font-size: 8.5pt; line-height: 1.45; }
.rm-print-note { margin-top: 4px; color: #92400e; }
.rm-print-note:empty { display: none; }
.rm-print-foot { margin-top: 18px; padding-top: 8px; border-top: 1px solid #dce1e8; color: #5f6672; font-size: 8pt; line-height: 1.45; }

/* Answers summary (the on-screen trail buttons become plain rows). */
#answersPanel[hidden] { display: none !important; }
/* The on-screen trail is a horizontal scroller — flatten it into a plain list so nothing is clipped. */
.rm-trail { display: block !important; overflow: visible !important; padding: 0 !important; margin: 0 0 8px !important; border: 0 !important; }
.apply-roadmap-page .rm-trail-item {
  display: grid !important; grid-template-columns: 2.4em minmax(0, 1fr) minmax(0, 40%); column-gap: 10px; align-items: baseline;
  width: 100%; max-width: none !important; margin: 0; padding: 4px 0 !important;
  border: 0 !important; border-bottom: 1px solid #e6eaf0 !important; border-radius: 0 !important; box-shadow: none !important;
  background: transparent !important; color: #181b20 !important; font-size: 9.5pt; text-align: left;
}
.rm-trail-item:last-child { border-bottom: 0 !important; }
.rm-trail-q, .rm-trail-a { white-space: normal !important; overflow: visible !important; text-overflow: clip !important; }
.rm-trail-num { color: #0b3474; font-weight: 700; }
.rm-trail-q { color: #5f6672 !important; }
.rm-trail-a { margin: 0; font-weight: 700; text-align: right; }

/* Tighter vertical rhythm for the roadmap so the document stays on fewer pages. */
.apply-roadmap-page .rm-regrow { padding: 5px 0 !important; }
/* Timeline rail: drawn as a border (not a background) so it survives print scaling and stays visible. */
.apply-roadmap-page .rm-route::before { width: 0 !important; background: none !important; border-left: 2px solid #9db0c9; }
.rm-stage { padding-bottom: 10px !important; }
.rm-band:not(:first-child) { margin-top: 6px !important; }

/* Keep each stage / provider row whole across page breaks. */
.apply-roadmap-page .rm-own { padding: 2px 0 8px !important; border: 0 !important; background: transparent !important; }
.rm-own-tag { border: 1px solid #ffb81c; background: transparent !important; }
.rm-own { break-inside: avoid; page-break-inside: avoid; }
.rm-stage, .rm-regrow, .rm-trackhead, .rm-band { break-inside: avoid; page-break-inside: avoid; }
.rm-trackhead, .rm-band, .rm-eyebrow { break-after: avoid; page-break-after: avoid; }

/* Provider links: styled as text; the link stays clickable inside the saved PDF
   (the address itself is not printed). */
a.rm-btn[href] {
  display: inline !important; padding: 0 !important; border: 0 !important; background: transparent !important;
  color: #064aa6 !important; font-weight: 700; text-decoration: underline; box-shadow: none !important;
}
