/* Print Styles */

/* Hide elements that shouldn't be printed */
@media print {
  /* Hide sidebar, header, and navigation */
  .sidebar,
  .navbar,
  .page-header,
  .no-print,
  .card-header.no-print,
  .btn,
  .alert,
  .breadcrumb,
  .badge:not(.print-keep),
  footer {
    display: none !important;
  }

  /* Show print-only elements */
  .print-header {
    display: block !important;
  }

  /* Reset body and main container */
  body {
    background: white !important;
    color: black !important;
    margin: 0;
    padding: 20px;
  }

  .main-content,
  .container,
  .container-fluid {
    padding: 0 !important;
    margin: 0 !important;
    max-width: 100% !important;
  }

  /* Card styles for print */
  .card {
    border: 1px solid #dee2e6 !important;
    box-shadow: none !important;
    page-break-inside: avoid;
  }

  .card-body {
    padding: 0 !important;
  }

  /* Table styles for print */
  .table {
    width: 100%;
    border-collapse: collapse;
    font-size: 11pt;
  }

  .table thead {
    background-color: #f8f9fa !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .table th,
  .table td {
    border: 1px solid #dee2e6 !important;
    padding: 8px !important;
    text-align: left;
  }

  .table th {
    font-weight: bold;
    background-color: #e9ecef !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .table tbody tr {
    page-break-inside: avoid;
  }

  /* Status badges for print */
  .badge {
    border: 1px solid currentColor;
    padding: 2px 6px;
    border-radius: 3px;
    font-size: 9pt;
  }

  .badge.bg-success {
    color: #198754 !important;
    background-color: transparent !important;
  }

  .badge.bg-danger {
    color: #dc3545 !important;
    background-color: transparent !important;
  }

  /* Print header styles */
  .print-header {
    margin-bottom: 20px;
    border-bottom: 2px solid #000;
    padding-bottom: 15px;
  }

  .print-header h2 {
    font-size: 18pt;
    font-weight: bold;
    margin-bottom: 5px;
  }

  .print-header h3 {
    font-size: 14pt;
    margin-bottom: 10px;
  }

  .print-header div {
    font-size: 10pt;
  }

  /* Page break utilities */
  .page-break-before {
    page-break-before: always;
  }

  .page-break-after {
    page-break-after: always;
  }

  /* Ensure links are visible */
  a {
    color: black !important;
    text-decoration: none !important;
  }

  /* Font styling */
  .font-monospace {
    font-family: 'Courier New', monospace;
  }

  /* Hide hover effects */
  .table-hover tbody tr:hover {
    background-color: transparent !important;
  }
}

/* Hide print header by default (show only when printing) */
.print-header {
  display: none;
}
