/* ==========================================================================
   MemPulse Print Stylesheet
   Optimized for physical printing and PDF export of membership rosters and analytics reports.
   ========================================================================== */

@media print {
  body {
    background: #fff !important;
    color: #000 !important;
    font-size: 10pt;
    overflow: visible !important;
  }

  .app-header,
  .toolbar-section,
  .active-chips-bar,
  .urgent-banner,
  .action-buttons-cell,
  .pagination-bar,
  .app-footer,
  .toast-container,
  .view-toggle-wrap,
  .modal-backdrop:not(#analyticsModal):not(.show-on-print),
  th:last-child,
  td:last-child {
    display: none !important;
  }

  /* When Analytics Modal is open during print */
  #analyticsModal:not(.hidden) {
    position: static !important;
    background: #fff !important;
    color: #000 !important;
    padding: 0 !important;
    display: block !important;
    z-index: 9999 !important;
  }

  #analyticsModal:not(.hidden) .modal-dialog {
    max-width: 100% !important;
    box-shadow: none !important;
    border: none !important;
    background: #fff !important;
    color: #000 !important;
    padding: 0 !important;
  }

  #analyticsModal:not(.hidden) .modal-close,
  #analyticsModal:not(.hidden) #btnPrintAnalytics {
    display: none !important;
  }

  #analyticsModal:not(.hidden) .analytics-toolbar {
    background: #f8fafc !important;
    border: 1px solid #cbd5e1 !important;
    color: #000 !important;
  }

  #analyticsModal:not(.hidden) .analytics-kpi-card,
  #analyticsModal:not(.hidden) .analytics-card {
    background: #fff !important;
    border: 1px solid #cbd5e1 !important;
    color: #000 !important;
    box-shadow: none !important;
  }

  #analyticsModal:not(.hidden) .analytics-kpi-val,
  #analyticsModal:not(.hidden) .analytics-card-title,
  #analyticsModal:not(.hidden) .plan-bar-name,
  #analyticsModal:not(.hidden) h3 {
    color: #000 !important;
  }

  #analyticsModal:not(.hidden) .matrix-table th,
  #analyticsModal:not(.hidden) .matrix-table td {
    border: 1px solid #cbd5e1 !important;
    color: #000 !important;
  }

  #analyticsModal:not(.hidden) .matrix-table th {
    background-color: #f1f5f9 !important;
  }

  .app-main {
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .metrics-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 10px !important;
    margin-bottom: 20px !important;
  }

  .metric-card {
    border: 1px solid #ccc !important;
    background: #f9f9f9 !important;
    color: #000 !important;
    padding: 10px !important;
    box-shadow: none !important;
  }

  .metric-value {
    color: #000 !important;
    font-size: 1.4rem !important;
  }

  .table-card-wrapper {
    border: 1px solid #000 !important;
    box-shadow: none !important;
    background: #fff !important;
  }

  .records-table {
    width: 100% !important;
    border-collapse: collapse !important;
  }

  .records-table th,
  .records-table td {
    border: 1px solid #ddd !important;
    padding: 6px 8px !important;
    color: #000 !important;
  }

  .records-table th {
    background-color: #f0f0f0 !important;
  }

  .badge {
    border: 1px solid #888 !important;
    color: #000 !important;
    background: transparent !important;
  }
}
