/* === Print Layout Styles ===
 * Loaded only by the print layout (app/views/layouts/print.html.erb).
 * Handles single-page PDF/print rendering: hides interactive elements,
 * forces collapsed sections open, converts sticky to static, etc.
 */

.print-layout {
  /* No global font override - reused partials use their own Tailwind text classes */
}

.print-layout .card {
  box-shadow: none;
  border: 1px solid #e5e7eb;
  background-color: #ffffff !important;
  background-image: none !important;
}

/* Disable sticky sidebar behavior */
.print-layout .notes-sidebar {
  position: static;
}

.print-layout .notes-sidebar-scroll {
  max-height: none;
  overflow-y: visible;
}

/* Hide interactive elements */
.print-layout .no-print {
  display: none !important;
}

/* Show print-only elements (e.g. absolute timestamps) */
.print-layout .print-only {
  display: block !important;
}

/* Force collapsible sections open */
.print-layout [data-collapsible-target="content"].hidden {
  display: block !important;
}

/* Hide chevron toggle icons */
.print-layout [data-collapsible-target="chevron"] {
  display: none !important;
}

/* Hide chart loading states */
.print-layout [data-query-trend-chart-target="loading"],
.print-layout [data-payment-distribution-chart-target="loading"],
.print-layout [data-payment-delay-trend-chart-target="loading"] {
  display: none !important;
}

/* Ensure SVG icons render properly in PDF exports */
.print-layout svg {
  /* Prevent width/height from being zeroed out */
  display: inline-block;
}

/* Browser print media styles */
@media print {
  .no-print { display: none !important; }
  .print-only { display: block !important; }
  body { -webkit-print-color-adjust: exact; print-color-adjust: exact; }

  /* Only avoid page breaks inside small self-contained elements */
  .print-layout .print-header,
  .print-layout .print-metric-cards,
  .print-layout img { page-break-inside: avoid; }

  /* Allow large content to flow across pages naturally */
  .print-layout .card,
  .print-layout .notes-sidebar,
  .print-layout #notes-list { page-break-inside: auto; }
}
