@page {
  margin: 0.55in;
}

@media print {
  *,
  *::before,
  *::after {
    box-shadow: none !important;
    text-shadow: none !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  html,
  body {
    width: auto !important;
    min-width: 0 !important;
    background: #ffffff !important;
    color: #111827 !important;
  }

  body {
    margin: 0 !important;
    font-size: 10pt !important;
    line-height: 1.45 !important;
  }

  main,
  .page {
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  header {
    max-width: none !important;
    padding: 0 0 14pt !important;
  }

  h1,
  h2,
  h3 {
    color: #111827 !important;
    break-after: avoid-page;
    page-break-after: avoid;
  }

  h1 {
    max-width: none !important;
    font-size: 22pt !important;
    line-height: 1.12 !important;
  }

  h2 {
    margin-top: 22pt !important;
    font-size: 14pt !important;
  }

  h3 {
    font-size: 11pt !important;
  }

  p,
  li,
  blockquote,
  figcaption {
    orphans: 3;
    widows: 3;
  }

  a {
    color: inherit !important;
    text-decoration: underline;
    text-decoration-thickness: 0.05em;
    text-underline-offset: 0.14em;
  }

  code,
  pre {
    white-space: pre-wrap !important;
    overflow-wrap: anywhere !important;
  }

  pre {
    overflow: visible !important;
  }

  img,
  svg,
  canvas {
    max-width: 100% !important;
    height: auto !important;
  }

  svg {
    overflow: visible !important;
  }

  script,
  noscript,
  #__html_edit_toolbar {
    display: none !important;
  }

  .metric-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8pt !important;
  }

  .chart-container,
  .metric-box,
  .confusion-matrix,
  .callout,
  .table-wrap {
    break-inside: avoid;
    page-break-inside: avoid;
  }

  .metric-box,
  .callout,
  .table-wrap {
    background: #ffffff !important;
    border-color: #d1d5db !important;
  }

  .table-wrap {
    overflow: visible !important;
    border-radius: 0 !important;
  }

  table,
  .table-wrap table {
    width: 100% !important;
    min-width: 0 !important;
    border-collapse: collapse !important;
    font-size: 7.5pt !important;
    table-layout: auto !important;
  }

  thead {
    display: table-header-group;
  }

  tfoot {
    display: table-footer-group;
  }

  tr,
  th,
  td {
    break-inside: avoid;
    page-break-inside: avoid;
  }

  th,
  td {
    padding: 3.5pt 4.5pt !important;
    color: #111827 !important;
    overflow-wrap: anywhere !important;
  }

  th {
    background: #f3f4f6 !important;
  }

  .chart-target {
    min-height: 0 !important;
    break-inside: avoid;
    page-break-inside: avoid;
  }

  footer {
    margin-top: 24pt !important;
    color: #4b5563 !important;
  }
}
