@media print {
  /* ── Page setup ── */
  @page {
    size: A2;
    margin: 0.7cm !important;
  }

  /* ── Remove root-level height constraints ── */
  html,
  body,
  #root {
    height: auto !important;
    overflow: visible !important;
    background: white !important;
  }
  body {
    min-width: 1000px;
  }

  .print-header {
    top: 0;
    left: 0;
    width: 100%;
    border-bottom: 1px solid #eee;
  }

  .print-header img {
    height: 130px;
    width: auto;
  }

  /* ── Preserve colors (SVG fills, backgrounds) when printing ── */
  * {
    print-color-adjust: exact !important;
    -webkit-print-color-adjust: exact !important;
  }

  .section-title {
    break-after: avoid;
  }

  /* ── Break the flex/height chain ── */
  .MainLayout {
    display: block !important;
    height: auto !important;
    padding: 0 !important;
    overflow: visible !important;
    background: white !important;
  }

  .MainContent {
    display: block !important;
    overflow: visible !important;
    border-radius: 0 !important;
    height: auto !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  .Viewer {
    display: block !important;
    position: static !important;
    flex: none !important;
    max-width: 100% !important;
    width: 100% !important;
    height: auto !important;
    overflow: visible !important;
    box-shadow: none !important;
  }

  .Viewer .report-viewer {
    display: block !important;
    overflow: visible !important;
    height: auto !important;
    max-width: 100% !important;
    width: 100% !important;
    background-color: white !important;
  }

  .content {
    overflow: visible !important;
    height: auto !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  /* ── Override Bootstrap h-100 and overflow utilities ── */
  .h-100 {
    height: auto !important;
  }

  .overflow-y-auto {
    overflow: visible !important;
    height: auto !important;
  }

  /* ── Force accordions open ── */
  .accordion-button::after {
    display: none !important;
  }

  /* ── Links: keep visible and clickable in PDF ── */
  a[href] {
    color: var(--violet-8) !important;
    text-decoration: underline !important;
  }

  .card {
    border: 0 !important;
    box-shadow: none !important;
    .card-body {
      padding: 0 !important;
      margin: 0 !important;
    }
  }

  /* ── Tables: fit within A4 page width ── */
  .table-responsive {
    overflow: visible !important;
  }

  .report-table {
    font-size: 10pt !important;
    border-radius: 8px !important;
    overflow: hidden !important;
  }

  .report-table-column {
    min-width: 6rem !important;
    max-width: 8rem !important;
  }

  .report-table .report-table-cell-text {
    display: block;
    line-clamp: unset;
    -webkit-box-orient: initial;
    -webkit-line-clamp: unset;
    overflow: visible;
  }

  small {
    font-size: 8pt !important;
    font-weight: 600;
    letter-spacing: -0.02em;
    line-height: 100% !important;
  }
  p,
  span {
    font-size: 10pt !important;
  }
  .status-badge {
    font-size: 8pt !important;
    white-space: wrap !important;
    display: inline-flex !important;
    align-items: center !important;
    line-height: 1.2 !important;
    padding: 3px 8px 2px !important;
  }

  .chip.badge {
    font-size: 8pt !important;
    padding: 4px 8px !important;
    border-radius: 4px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1.2 !important;
  }
  *::-webkit-scrollbar {
    display: none;
  }

  /* Hide scrollbar for IE, Edge and Firefox */
  * {
    -ms-overflow-style: none; /* IE and Edge */
    scrollbar-width: none; /* Firefox */
  }

  .print-row-cols-1 > * {
    flex: 0 0 auto !important;
    width: 100% !important;
  }

  .print-row-cols-2 > * {
    flex: 0 0 auto !important;
    width: 50% !important;
  }

  .print-row-cols-3 > * {
    flex: 0 0 auto !important;
    width: 33.3333% !important;
  }

  .print-row-cols-4 > * {
    flex: 0 0 auto !important;
    width: 25% !important;
  }

  .print-row-cols-5 > * {
    flex: 0 0 auto !important;
    width: 20% !important;
  }

  .print-row-cols-6 > * {
    flex: 0 0 auto !important;
    width: 16.6667% !important;
  }

  .print-row-cols-7 > * {
    flex: 0 0 auto !important;
    width: 14.2857% !important;
  }

  .print-row-cols-8 > * {
    flex: 0 0 auto !important;
    width: 12.5% !important;
  }

  .print-row-cols-9 > * {
    flex: 0 0 auto !important;
    width: 11.1111% !important;
  }

  .print-row-cols-10 > * {
    flex: 0 0 auto !important;
    width: 10% !important;
  }

  .print-row-cols-11 > * {
    flex: 0 0 auto !important;
    width: 9.0909% !important;
  }

  .print-row-cols-12 > * {
    flex: 0 0 auto !important;
    width: 8.3333% !important;
  }

  .report-filters.shadow-sm {
    box-shadow: none !important;
  }
}
