/**
 * ==============================================================================
 * Requisition Supporting Information Detail - Dedicated Design System
 * File: css/app-supporting-detail.css
 * Ultra-Clean, Professional, Compact Enterprise ERP Design System
 * Teal (#0f766e) & Dark Slate / White Theme
 * Screen & A4 Print Unified Styling
 * ==============================================================================
 */

:root {
  --sup-teal: #0f766e;
  --sup-teal-hover: #115e59;
  --sup-teal-light: #f0fdfa;
  --sup-teal-border: #ccfbf1;
  --sup-teal-focus: rgba(15, 118, 110, 0.2);

  --sup-dark: #0f172a;
  --sup-text: #1e293b;
  --sup-text-secondary: #475569;
  --sup-muted: #64748b;
  --sup-light-gray: #94a3b8;

  --sup-border: #e2e8f0;
  --sup-border-light: #f1f5f9;
  --sup-border-strong: #cbd5e1;

  --sup-bg-card: #ffffff;
  --sup-bg-soft: #f8fafc;
  --sup-bg-row-alt: #fcfdfe;

  --sup-radius: 6px;
  --sup-radius-sm: 4px;
  --sup-radius-pill: 999px;

  --sup-shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.04);
  --sup-shadow: 0 4px 12px rgba(15, 23, 42, 0.05);

  --sup-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
}

/* ==============================================================================
   1. PAGE CONTAINER & WRAPPER
   ============================================================================== */
.supporting-detail {
  font-family: var(--sup-font) !important;
  color: var(--sup-text) !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  padding: 0 !important;
  margin: 0 !important;
}

.supporting-detail-card {
  background: var(--sup-bg-card) !important;
  border: 1px solid var(--sup-border) !important;
  border-radius: var(--sup-radius) !important;
  box-shadow: var(--sup-shadow-sm) !important;
  margin: 0 !important;
  overflow: hidden !important;
}

.supporting-detail-card > .card-body {
  padding: 10px 12px !important;
}

/* ==============================================================================
   2. TOP HEADER & ACTION BAR
   ============================================================================== */
.sup-top-header {
  align-items: center !important;
  background: var(--sup-bg-card) !important;
  border-bottom: 1px solid var(--sup-border) !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px 14px !important;
  justify-content: space-between !important;
  min-height: 48px !important;
  padding: 8px 16px !important;
  width: 100% !important;
}

.sup-top-left {
  align-items: center !important;
  display: inline-flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  flex: 1 1 auto !important;
}

.sup-badge-type {
  align-items: center !important;
  background: var(--sup-teal-light) !important;
  border: 1px solid var(--sup-teal-border) !important;
  border-radius: var(--sup-radius-sm) !important;
  color: var(--sup-teal) !important;
  display: inline-flex !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  gap: 5px !important;
  letter-spacing: 0.5px !important;
  padding: 3px 8px !important;
  text-transform: uppercase !important;
}

.sup-page-title {
  color: var(--sup-dark) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: -0.2px !important;
  margin: 0 !important;
}

.sup-meta-pill {
  align-items: center !important;
  background: var(--sup-bg-soft) !important;
  border: 1px solid var(--sup-border) !important;
  border-radius: var(--sup-radius-pill) !important;
  color: var(--sup-muted) !important;
  display: inline-flex !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  padding: 2px 8px !important;
}

.sup-top-actions {
  align-items: center !important;
  display: inline-flex !important;
  gap: 8px !important;
  margin-left: auto !important;
  margin-right: 0 !important;
  flex-shrink: 0 !important;
  justify-content: flex-end !important;
}

/* Action Buttons */
.sup-btn {
  align-items: center !important;
  border-radius: var(--sup-radius-sm) !important;
  cursor: pointer !important;
  display: inline-flex !important;
  font-family: var(--sup-font) !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
  gap: 6px !important;
  height: 28px !important;
  line-height: 26px !important;
  padding: 0 12px !important;
  text-decoration: none !important;
  transition: all 0.15s ease !important;
  white-space: nowrap !important;
}

.sup-btn-secondary {
  background: #ffffff !important;
  border: 1px solid var(--sup-border-strong) !important;
  color: var(--sup-text-secondary) !important;
}

.sup-btn-secondary:hover {
  background: var(--sup-bg-soft) !important;
  border-color: var(--sup-muted) !important;
  color: var(--sup-dark) !important;
}

.sup-btn-primary {
  background: var(--sup-teal) !important;
  border: 1px solid var(--sup-teal) !important;
  color: #ffffff !important;
}

.sup-btn-primary:hover {
  background: var(--sup-teal-hover) !important;
  border-color: var(--sup-teal-hover) !important;
  color: #ffffff !important;
  box-shadow: 0 2px 6px rgba(15, 118, 110, 0.25) !important;
}

/* ==============================================================================
   3. DOCUMENT BANNER & HEADER
   ============================================================================== */
.print-header,
.sup-doc-banner {
  background: linear-gradient(180deg, #ffffff 0%, var(--sup-bg-soft) 100%) !important;
  border: 1px solid var(--sup-border) !important;
  border-radius: var(--sup-radius) !important;
  margin-bottom: 12px !important;
  padding: 12px 16px !important;
  text-align: center !important;
}

.print-header h1,
.sup-doc-banner h1 {
  color: var(--sup-dark) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  letter-spacing: 0.3px !important;
  line-height: 1.25 !important;
  margin: 0 0 2px !important;
  text-transform: uppercase !important;
}

.print-header h2,
.sup-doc-banner h2 {
  color: var(--sup-teal) !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.2px !important;
  line-height: 1.3 !important;
  margin: 0 0 4px !important;
}

.print-header p,
.sup-doc-banner p {
  color: var(--sup-text-secondary) !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  margin: 0 auto !important;
  max-width: 860px !important;
}

/* Meta Line under header */
.sup-doc-meta-line {
  align-items: center !important;
  border-top: 1px dashed var(--sup-border) !important;
  color: var(--sup-muted) !important;
  display: flex !important;
  font-size: 10.5px !important;
  font-weight: 500 !important;
  justify-content: space-between !important;
  margin-top: 8px !important;
  padding-top: 6px !important;
}

/* ==============================================================================
   4. STRUCTURED SUMMARY INFO GRID (TABLE)
   ============================================================================== */
.info-table {
  background: var(--sup-bg-card) !important;
  border: 1px solid var(--sup-border) !important;
  border-collapse: separate !important;
  border-radius: var(--sup-radius) !important;
  border-spacing: 0 !important;
  margin: 0 0 14px !important;
  overflow: hidden !important;
  width: 100% !important;
}

.info-table td {
  border-bottom: 1px solid var(--sup-border-light) !important;
  border-right: 1px solid var(--sup-border-light) !important;
  font-size: 11.5px !important;
  padding: 6px 12px !important;
  vertical-align: middle !important;
}

.info-table td:last-child {
  border-right: none !important;
}

.info-table tr:last-child td {
  border-bottom: none !important;
}

.info-table td.label {
  background: var(--sup-bg-soft) !important;
  color: var(--sup-muted) !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.4px !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  width: 120px !important;
}

.info-table td.value {
  color: var(--sup-dark) !important;
  font-weight: 600 !important;
}

/* ==============================================================================
   5. SUPPORTING ITEMS TOOLBAR
   ============================================================================== */
.supporting-detail .app-table-toolbar {
  align-items: center !important;
  border-left: 3px solid var(--sup-teal) !important;
  display: flex !important;
  justify-content: space-between !important;
  margin: 10px 0 8px !important;
  padding: 2px 0 2px 8px !important;
}

.supporting-detail .app-table-toolbar__title {
  color: var(--sup-dark) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: -0.1px !important;
  margin: 0 !important;
}

.supporting-detail .badge-light {
  background: var(--sup-bg-soft) !important;
  border: 1px solid var(--sup-border) !important;
  color: var(--sup-muted) !important;
  font-size: 10.5px !important;
  font-weight: 600 !important;
  padding: 3px 8px !important;
}

/* ==============================================================================
   6. HIGH-DENSITY ENTERPRISE DATA TABLE
   ============================================================================== */
.supporting-detail .app-table-wrap {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  margin-bottom: 14px !important;
  overflow-x: auto !important;
  padding: 0 !important;
  width: 100% !important;
}

.supporting-detail .app-table {
  border: 1px solid var(--sup-border) !important;
  border-collapse: collapse !important;
  margin: 0 !important;
  table-layout: auto !important;
  width: 100% !important;
}

/* Table Header */
.supporting-detail .app-table thead th {
  background: var(--sup-bg-soft) !important;
  border: 1px solid var(--sup-border) !important;
  color: var(--sup-text-secondary) !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.4px !important;
  padding: 6px 10px !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

/* Table Body Cells */
.supporting-detail .app-table tbody td {
  background: var(--sup-bg-card) !important;
  border: 1px solid var(--sup-border) !important;
  color: var(--sup-text) !important;
  font-size: 11.5px !important;
  font-weight: 500 !important;
  padding: 5px 10px !important;
  vertical-align: middle !important;
}

.supporting-detail .app-table tbody tr:nth-child(even) td {
  background: var(--sup-bg-row-alt) !important;
}

.supporting-detail .app-table tbody tr:hover td {
  background: var(--sup-teal-light) !important;
}

/* Column Alignments & Proportions */
.supporting-detail .app-table .col-sup-sl,
.supporting-detail .app-table .app-table__serial {
  color: var(--sup-muted) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-align: center !important;
  width: 44px !important;
}

.supporting-detail .app-table .col-sup-name { min-width: 170px !important; }
.supporting-detail .app-table .col-sup-desig { min-width: 140px !important; }
.supporting-detail .app-table .col-sup-part { min-width: 250px !important; }
.supporting-detail .app-table .col-sup-rate { width: 110px !important; }
.supporting-detail .app-table .col-sup-qty { width: 90px !important; }
.supporting-detail .app-table .col-sup-total { width: 120px !important; }
.supporting-detail .app-table .col-sup-remarks { min-width: 130px !important; }
.supporting-detail .app-table .col-sup-action { width: 96px !important; text-align: center !important; }

.supporting-detail .app-table th:nth-child(1),
.supporting-detail .app-table td:nth-child(1) {
  text-align: center !important;
  width: 44px !important;
}

.supporting-detail .app-table th.app-table__number,
.supporting-detail .app-table td.app-table__number,
.supporting-detail .app-table .cell-rate,
.supporting-detail .app-table .cell-qty,
.supporting-detail .app-table .cell-amount {
  font-variant-numeric: tabular-nums !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.supporting-detail .app-table .cell-amount {
  color: var(--sup-dark) !important;
  font-weight: 700 !important;
}

/* Employee & Designation Columns */
.supporting-detail .app-table .cell-employee {
  color: var(--sup-dark) !important;
  font-weight: 600 !important;
  font-size: 11.5px !important;
}

.supporting-detail .app-table .cell-designation {
  color: var(--sup-text-secondary) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
}

.supporting-detail .app-table .cell-particulars {
  color: var(--sup-dark) !important;
  font-size: 11.5px !important;
  font-weight: 500 !important;
}

.linked-employee {
  align-items: center !important;
  color: var(--sup-dark) !important;
  display: inline-flex !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  gap: 6px !important;
  line-height: 1.25 !important;
}

.linked-employee i {
  color: var(--sup-teal) !important;
  font-size: 12px !important;
}

.employee-designation {
  color: var(--sup-muted) !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  margin-left: 18px !important;
}

/* Table Footer / Grand Total */
.supporting-detail .app-table tfoot td {
  background: var(--sup-teal-light) !important;
  border-top: 2px solid var(--sup-teal-border) !important;
  border-bottom: 1px solid var(--sup-border) !important;
  color: var(--sup-teal) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  padding: 6px 10px !important;
}

.supporting-detail .app-table tfoot #grand-total {
  color: var(--sup-teal) !important;
  font-size: 12.5px !important;
  font-weight: 800 !important;
}

/* Inwords Row */
.supporting-detail .app-table tr.inwords-row td {
  background: var(--sup-bg-soft) !important;
  border-top: 1px dashed var(--sup-border-strong) !important;
  border-bottom: 1px solid var(--sup-border) !important;
  color: var(--sup-text-secondary) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  padding: 8px 12px !important;
}

.supporting-detail .app-table tr.inwords-row strong {
  color: var(--sup-dark) !important;
  font-weight: 700 !important;
}

/* Inline Edit Controls */
.supporting-detail .form-control {
  border: 1px solid var(--sup-border-strong) !important;
  border-radius: var(--sup-radius-sm) !important;
  font-family: var(--sup-font) !important;
  font-size: 11px !important;
  height: 26px !important;
  line-height: 24px !important;
  padding: 2px 6px !important;
}

.supporting-detail .form-control:focus {
  border-color: var(--sup-teal) !important;
  box-shadow: 0 0 0 2px var(--sup-teal-focus) !important;
}

.supporting-detail .select2-container--default .select2-selection--single {
  border: 1px solid var(--sup-border-strong) !important;
  border-radius: var(--sup-radius-sm) !important;
  font-size: 11px !important;
  height: 26px !important;
  line-height: 24px !important;
}

.supporting-detail .select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 24px !important;
  padding-left: 6px !important;
}

.supporting-detail .app-table__actions {
  text-align: center !important;
  white-space: nowrap !important;
  width: 90px !important;
}

.supporting-detail .app-table__actions .btn {
  border-radius: var(--sup-radius-sm) !important;
  font-size: 10px !important;
  height: 24px !important;
  line-height: 22px !important;
  min-height: 24px !important;
  min-width: 24px !important;
  padding: 0 6px !important;
}

/* ==============================================================================
   7. SIGNATURES & APPROVAL SECTION
   ============================================================================== */
.signature-area {
  margin-top: 14px !important;
}

.sup-signature-title {
  border-left: 3px solid var(--sup-teal) !important;
  color: var(--sup-muted) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  margin: 0 0 8px !important;
  padding-left: 8px !important;
  text-transform: uppercase !important;
}

.signature-grid {
  display: grid !important;
  gap: 10px !important;
  grid-template-columns: repeat(5, 1fr) !important;
  text-align: center !important;
}

.signature-box {
  background: var(--sup-bg-card) !important;
  border: 1px solid var(--sup-border) !important;
  border-radius: var(--sup-radius) !important;
  box-shadow: var(--sup-shadow-sm) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  min-height: 84px !important;
  padding: 8px 6px !important;
  transition: all 0.15s ease !important;
}

.signature-box:hover {
  border-color: var(--sup-teal-border) !important;
  box-shadow: 0 2px 8px rgba(15, 118, 110, 0.08) !important;
}

.signature-box img {
  display: block !important;
  height: 28px !important;
  margin: 0 auto 3px !important;
  max-width: 100% !important;
  object-fit: contain !important;
}

.signature-box .signature-placeholder-line {
  border-bottom: 1px dashed var(--sup-border-strong) !important;
  height: 28px !important;
  margin: 0 12px 3px !important;
}

.signature-box .date {
  color: var(--sup-muted) !important;
  font-size: 9px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
}

.signature-box .name {
  color: var(--sup-dark) !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  margin: 2px 0 1px !important;
}

.signature-box .designation {
  color: var(--sup-muted) !important;
  font-size: 9px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
}

/* ==============================================================================
   8. RESPONSIVE MEDIA QUERIES (SCREEN)
   ============================================================================== */
@media (max-width: 991.98px) {
  .signature-grid {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}

@media (max-width: 767.98px) {
  .supporting-detail {
    padding: 6px !important;
  }
  .supporting-detail-card > .card-body {
    padding: 10px !important;
  }
  .info-table td.label {
    width: 90px !important;
  }
  .signature-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

/* ==============================================================================
   9. COMPACT A4 PRINT SETTINGS (INDUSTRY ERP STANDARD)
   ============================================================================== */
@media print {
  @page {
    size: A4 portrait;
    margin: 8mm 10mm 8mm 10mm;
  }

  * {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    color-adjust: exact !important;
  }

  html,
  body {
    background: #ffffff !important;
    color: #0f172a !important;
    font-family: var(--sup-font) !important;
    font-size: 9pt !important;
    line-height: 1.3 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Hide screen elements */
  .card-header,
  .sup-top-header,
  .app-table-toolbar,
  .d-print-none,
  .main-header,
  .main-sidebar,
  .main-footer,
  .btn {
    display: none !important;
  }

  .content-wrapper {
    background: transparent !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .supporting-detail {
    margin: 0 !important;
    padding: 0 !important;
  }

  .supporting-detail-card {
    border: none !important;
    box-shadow: none !important;
    margin: 0 !important;
  }

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

  /* Print Document Header */
  .print-header,
  .sup-doc-banner {
    background: transparent !important;
    border: none !important;
    border-bottom: 1.5px solid #0f172a !important;
    border-radius: 0 !important;
    margin: 0 0 6px !important;
    padding: 0 0 5px !important;
  }

  .print-header h1,
  .sup-doc-banner h1 {
    color: #0f172a !important;
    font-size: 13pt !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    margin: 0 0 2px !important;
  }

  .print-header h2,
  .sup-doc-banner h2 {
    color: #0f766e !important;
    font-size: 10.5pt !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    margin: 0 0 2px !important;
  }

  .print-header p,
  .sup-doc-banner p {
    color: #334155 !important;
    font-size: 8.5pt !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    margin: 0 !important;
  }

  .sup-doc-meta-line {
    border-top: 1px dotted #cbd5e1 !important;
    color: #475569 !important;
    display: flex !important;
    font-size: 7.5pt !important;
    font-weight: 500 !important;
    justify-content: space-between !important;
    margin-top: 4px !important;
    padding-top: 3px !important;
  }

  /* Info Summary Table */
  .info-table {
    border: 1px solid #94a3b8 !important;
    border-radius: 0 !important;
    margin: 0 0 8px !important;
  }

  .info-table td {
    border-bottom: 1px solid #cbd5e1 !important;
    border-right: 1px solid #cbd5e1 !important;
    font-size: 8pt !important;
    line-height: 1.25 !important;
    padding: 3px 6px !important;
  }

  .info-table td.label {
    background: #f1f5f9 !important;
    color: #334155 !important;
    font-size: 7.5pt !important;
    font-weight: 700 !important;
    width: 95px !important;
  }

  .info-table td.value {
    color: #0f172a !important;
    font-weight: 600 !important;
  }

  /* Print Table */
  .supporting-detail .app-table-wrap {
    border: none !important;
    box-shadow: none !important;
    margin: 0 0 8px !important;
    overflow: visible !important;
  }

  .supporting-detail .app-table {
    border: 1px solid #64748b !important;
    border-right: 1.5px solid #64748b !important;
    border-collapse: collapse !important;
    box-sizing: border-box !important;
    font-size: 8pt !important;
    margin: 0 !important;
    max-width: calc(100% - 2px) !important;
    table-layout: fixed !important;
    width: calc(100% - 2px) !important;
  }

  .supporting-detail .app-table th,
  .supporting-detail .app-table td {
    min-width: 0 !important;
    box-sizing: border-box !important;
    word-break: break-word !important;
  }

  .supporting-detail .app-table thead th {
    background: #f1f5f9 !important;
    border: 1px solid #94a3b8 !important;
    color: #0f172a !important;
    font-size: 7.5pt !important;
    font-weight: 700 !important;
    letter-spacing: 0.2px !important;
    padding: 3px 5px !important;
    white-space: normal !important;
  }

  .supporting-detail .app-table tbody td {
    background: #ffffff !important;
    border: 1px solid #cbd5e1 !important;
    color: #0f172a !important;
    font-size: 8pt !important;
    line-height: 1.2 !important;
    padding: 2.5px 5px !important;
  }

  .supporting-detail .app-table tbody tr:nth-child(even) td {
    background: #fafbfc !important;
  }

  /* Specific Column Widths in Print (Sum = 100%) */
  /* SL */
  .supporting-detail .app-table th.col-sup-sl,
  .supporting-detail .app-table td.app-table__serial {
    width: 5% !important;
    max-width: 5% !important;
    text-align: center !important;
  }

  /* Employee Mode Columns */
  .supporting-detail .app-table th.col-sup-name,
  .supporting-detail .app-table td.cell-employee {
    width: 25% !important;
    max-width: 25% !important;
  }

  .supporting-detail .app-table th.col-sup-desig,
  .supporting-detail .app-table td.cell-designation {
    width: 22% !important;
    max-width: 22% !important;
  }

  /* Non-Employee Mode Columns */
  .supporting-detail .app-table th.col-sup-part,
  .supporting-detail .app-table td.cell-particulars {
    width: 47% !important;
    max-width: 47% !important;
  }

  /* Rate & Qty */
  .supporting-detail .app-table th.col-sup-rate,
  .supporting-detail .app-table td.cell-rate {
    width: 12% !important;
    max-width: 12% !important;
    text-align: right !important;
    white-space: nowrap !important;
  }

  .supporting-detail .app-table th.col-sup-qty,
  .supporting-detail .app-table td.cell-qty {
    width: 9% !important;
    max-width: 9% !important;
    text-align: right !important;
    white-space: nowrap !important;
  }

  /* Total Amount */
  .supporting-detail .app-table th.col-sup-total,
  .supporting-detail .app-table td.cell-amount,
  .supporting-detail .app-table tfoot td.app-table__number {
    width: 14% !important;
    max-width: 14% !important;
    text-align: right !important;
    white-space: nowrap !important;
  }

  /* Remarks (Rightmost Column) */
  .supporting-detail .app-table th.col-sup-remarks,
  .supporting-detail .app-table td.cell-remarks,
  .supporting-detail .app-table td.col-sup-remarks {
    width: 13% !important;
    max-width: 13% !important;
    border-right: 1.5px solid #64748b !important;
  }

  /* Ensure the last visible cell on the right ALWAYS has a clean, solid border */
  .supporting-detail .app-table tr > th:nth-last-child(2),
  .supporting-detail .app-table tr > td:nth-last-child(2),
  .supporting-detail .app-table tr > th:last-child:not(.d-print-none),
  .supporting-detail .app-table tr > td:last-child:not(.d-print-none),
  .supporting-detail .app-table tfoot td.cell-remarks,
  .supporting-detail .app-table tfoot td.col-sup-remarks {
    border-right: 1.5px solid #64748b !important;
  }

  /* Table Footer / Grand Total (Only show once at the end of the table, do not repeat across pages) */
  tfoot,
  .supporting-detail .app-table tfoot {
    display: table-row-group !important;
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }

  .supporting-detail .app-table tfoot tr {
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }

  .supporting-detail .app-table tfoot td {
    background: #f0fdfa !important;
    border: 1px solid #94a3b8 !important;
    border-top: 1.5px solid #0f766e !important;
    color: #0f766e !important;
    font-size: 8.5pt !important;
    font-weight: 800 !important;
    padding: 3px 5px !important;
  }

  .supporting-detail .app-table tfoot #grand-total {
    color: #0f766e !important;
    font-size: 8.5pt !important;
    font-weight: 800 !important;
  }

  .supporting-detail .app-table tr.inwords-row td {
    background: #ffffff !important;
    border: 1px solid #94a3b8 !important;
    border-right: 1.5px solid #64748b !important;
    color: #334155 !important;
    font-size: 7.5pt !important;
    font-weight: normal !important;
    padding: 4px 6px !important;
  }

  .supporting-detail .app-table tr.inwords-row td strong {
    color: #0f172a !important;
    font-weight: 700 !important;
  }

  .linked-employee {
    font-size: 8pt !important;
    gap: 3px !important;
  }

  .linked-employee i {
    display: none !important;
  }

  .employee-designation {
    color: #475569 !important;
    font-size: 7pt !important;
    margin-left: 0 !important;
  }

  thead {
    display: table-header-group !important;
  }

  tr {
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }

  /* Signatures */
  .signature-area {
    margin-top: 10px !important;
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }

  .sup-signature-title {
    display: none !important;
  }

  .signature-grid {
    display: grid !important;
    gap: 6px !important;
    grid-template-columns: repeat(5, 1fr) !important;
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }

  .signature-box {
    background: #ffffff !important;
    border: 1px solid #94a3b8 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    min-height: 60px !important;
    padding: 4px !important;
  }

  .signature-box img {
    height: 22px !important;
    margin-bottom: 2px !important;
  }

  .signature-box .signature-placeholder-line {
    border-bottom: 1px dashed #94a3b8 !important;
    height: 20px !important;
    margin: 0 8px 2px !important;
  }

  .signature-box .date {
    color: #475569 !important;
    font-size: 6.5pt !important;
  }

  .signature-box .name {
    color: #0f172a !important;
    font-size: 7.5pt !important;
    font-weight: 700 !important;
  }

  .signature-box .designation {
    color: #475569 !important;
    font-size: 6.5pt !important;
  }
}
