:root { color:#17324d; background:#eef4f1; font-family:Inter,system-ui,sans-serif; }
.page { max-width:900px; margin:0 auto; padding:24px; }
.toolbar { display:flex; justify-content:space-between; align-items:center; margin-bottom:16px; }
.toolbar div { display:flex; gap:10px; }
.toolbar a,.toolbar button { border:1px solid #176b5b; border-radius:8px; padding:10px 14px; background:#fff; color:#155d50; font:inherit; font-weight:700; text-decoration:none; cursor:pointer; }
.toolbar .download { background:#176b5b; color:#fff; }
.report { background:#fff; border-radius:14px; padding:38px 44px; box-shadow:0 8px 28px #17324d18; }
.report-head { display:flex; justify-content:space-between; gap:24px; border-bottom:3px solid #176b5b; padding-bottom:18px; }
.report-brand { display:flex; align-items:center; gap:16px; }
.report-logo { display:block; width:138px; height:auto; object-fit:contain; }
.eyebrow { color:#176b5b; text-transform:uppercase; letter-spacing:.08em; font-size:12px; font-weight:800; }
h1 { margin:5px 0 0; font-size:29px; }
h2 { font-size:17px; margin:24px 0 8px; }
.meta { font-size:13px; color:#53697c; text-align:right; }
.facts { margin:0; padding-left:20px; }
.facts li { margin:7px 0; }
.empty { color:#657888; font-style:italic; }
.source { display:block; color:#6b7d8b; font-size:11px; margin-top:2px; }
.notice { margin-top:28px; border:1px solid #cbdad4; background:#f4f8f6; padding:14px; border-radius:8px; font-size:12px; line-height:1.45; }
.control { font-size:12px; color:#53697c; margin-top:12px; }
@media (max-width:600px) {
  .page { padding:12px; }
  .report { padding:24px 20px; }
  .toolbar,.report-head { align-items:flex-start; flex-direction:column; }
  .report-brand { align-items:flex-start; flex-direction:column; gap:8px; }
  .report-logo { width:120px; }
  .meta { text-align:left; }
}
@media print {
  body { background:#fff; }
  .page { max-width:none; padding:0; }
  .toolbar { display:none; }
  .report { box-shadow:none; border-radius:0; padding:0; }
  .report-logo { width:120px; }
  h2 { break-after:avoid; }
  .notice { break-inside:avoid; }
  @page { size:letter; margin:.5in; }
}
