@media print {
  @page {
    margin: 0.5in;
  }

  body {
    background: #fff !important;
    color: #000;
  }

  .skip-link,
  .site-header__back,
  .btn-print,
  .link-btn,
  .legend-btn,
  .no-print {
    display: none !important;
  }

  .chart-legend li {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.75rem;
    margin-right: 0.75rem;
  }

  .legend-btn {
    display: inline-flex !important;
    opacity: 1 !important;
    text-decoration: none !important;
    color: #000 !important;
    padding: 0 !important;
  }

  .site-header {
    border-bottom: 2px solid #1b75bc;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .shell {
    padding: 0.35rem 0 0;
    max-width: none;
  }

  .calc-top {
    border-bottom-color: #ccc;
  }

  .panel,
  .kpi-strip,
  .verdict,
  .chart-panel,
  .compare-pair,
  .summary-table {
    box-shadow: none !important;
    break-inside: avoid;
  }

  .panel--assumptions {
    position: static;
    max-height: none;
    overflow: visible;
  }

  .layout-calc {
    grid-template-columns: 200px 1fr;
    gap: 0.55rem;
  }

  .kpi-strip {
    grid-template-columns: repeat(4, 1fr);
  }

  .kpi-strip--3 {
    grid-template-columns: repeat(3, 1fr);
  }

  .site-footer {
    padding-top: 0.4rem;
  }

  a {
    text-decoration: none;
    color: inherit;
  }
}
