@import url(https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&family=Inter:wght@400;500;600&display=swap);
.calendar-notifications-container{padding:20px}.calendar-notifications-container .calendar-card .calendar-wrapper .fc .fc-daygrid-day-number-wrapper{display:flex;flex-direction:column;align-items:center}.calendar-notifications-container .calendar-card .calendar-wrapper .fc .fc-daygrid-day-number-wrapper .notification-badges{display:flex;gap:4px;margin-top:4px;flex-wrap:wrap;justify-content:center}.calendar-notifications-container .calendar-card .calendar-wrapper .fc .fc-daygrid-day-number-wrapper .notification-badges .ant-badge .ant-badge-count{font-size:10px;height:18px;line-height:18px;min-width:18px;padding:0 4px}.calendar-notifications-container .calendar-card .calendar-wrapper .fc .fc-daygrid-day{cursor:pointer;transition:background-color .2s}.calendar-notifications-container .calendar-card .calendar-wrapper .fc .fc-daygrid-day:hover{background-color:rgba(0,0,0,.02)}.calendar-notifications-container .calendar-card .calendar-wrapper .fc .fc-daygrid-day-number{font-size:14px;font-weight:500}.calendar-notifications-container .calendar-card .notifications-day-view .notification-item{transition:background-color .2s}.calendar-notifications-container .calendar-card .notifications-day-view .notification-item:hover{background-color:rgba(0,0,0,.02)}.calendar-notifications-container .calendar-card .notifications-day-view .notification-item-restricted{opacity:.7;background-color:rgba(0,0,0,.03)}.calendar-notifications-container .calendar-card .notifications-day-view .notification-item-restricted .ant-list-item-meta-title{color:#999}.calendar-notifications-container .legend-container{display:flex;gap:20px;flex-wrap:wrap}.calendar-notifications-container .legend-container .legend-item{display:flex;align-items:center;gap:8px}.calendar-notifications-container .legend-container .legend-item .ant-badge .ant-badge-count{width:20px;height:20px;line-height:20px}.calendar-notifications-container .legend-container .legend-item span{font-size:14px}.calendar-notifications-loading{display:flex;justify-content:center;align-items:center;min-height:400px}.fc .fc-toolbar-title{font-size:1.5rem;font-weight:600}.fc .fc-button{background-color:#1890ff;border-color:#1890ff;text-transform:capitalize}.fc .fc-button:hover{background-color:#40a9ff;border-color:#40a9ff}.fc .fc-button:focus{box-shadow:0 0 0 2px rgba(24,144,255,.2)}.fc .fc-button-primary:not(:disabled).fc-button-active{background-color:#096dd9;border-color:#096dd9}.fc .fc-day-today{background-color:rgba(24,144,255,.1) !important}
/* =========================================================================
   QuotationModal Redesign Theme
   Scoped under .qm-modal to avoid global collisions.
   Based on quotation-popup (1).html reference.
   ========================================================================= */

/* IMPORTANT: Ant Modal renders at body level. We need to target the modal wrapper class */

/* 1. Modal Content Wrapper */
.qm-modal .ant-modal-content,
.qm-modal-wrapper .ant-modal-content {
  border-radius: 14px !important;
  box-shadow: 0 20px 60px rgba(0,0,0,0.16) !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* 2. Header */
.qm-modal .ant-modal-header,
.qm-modal-wrapper .ant-modal-header {
  border-bottom: 1px solid #E2E8F0 !important;
  padding: 20px 28px !important;
  background: #FFFFFF !important;
  border-radius: 14px 14px 0 0 !important;
}

.qm-modal .ant-modal-title,
.qm-modal-wrapper .ant-modal-title {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  color: #1A2B3C !important;
  display: flex;
  align-items: center;
  gap: 10px;
}

/* 3. Body */
.qm-modal .ant-modal-body,
.qm-modal-wrapper .ant-modal-body {
  padding: 24px 28px !important;
  font-family: 'DM Sans', sans-serif !important;
  color: #1A2B3C !important;
  background: #FFFFFF !important;
}

/* 4. Footer */
.qm-modal .ant-modal-footer,
.qm-modal-wrapper .ant-modal-footer {
  padding: 16px 28px !important;
  background: #F8FAFB !important;
  border-top: 1px solid #E2E8F0 !important;
  border-radius: 0 0 14px 14px !important;
}

/* Care Type Step */
.qm-step-section {
  margin-bottom: 24px;
}

.qm-step-label {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  color: #8A9BAC;
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  gap: 6px;
}

.qm-step-num {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #4AA9AE;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}

.qm-care-type-tabs {
  display: flex;
  gap: 10px;
}

.qm-care-tab {
  flex: 1 1;
  padding: 14px 20px;
  border-radius: 10px;
  border: 2px solid #E2E8F0;
  background: #FFFFFF;
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  text-align: center;
  position: relative;
  overflow: hidden;
}

.qm-care-tab:hover {
  border-color: #C1E1E2;
  background: #EDF7F7;
}

.qm-care-tab.active {
  border-color: #4AA9AE !important;
  background: #EDF7F7 !important;
  box-shadow: 0 0 0 3px rgba(74,169,174,0.15);
}

.qm-care-tab.active::before {
  content: '✓';
  position: absolute;
  top: 8px;
  right: 10px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #4AA9AE;
  color: #fff;
  font-size: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.qm-care-tab .tab-icon {
  font-size: 22px;
  margin-bottom: 4px;
  display: block;
}

.qm-care-tab .tab-title {
  font-size: 13px;
  font-weight: 600;
  color: #1A2B3C;
  display: block;
}

.qm-care-tab .tab-desc {
  font-size: 11px;
  color: #8A9BAC;
  margin-top: 2px;
  display: block;
}

/* Category Selection */
.qm-category-bar {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 6px;
}

.qm-cat-chip {
  padding: 8px 14px;
  border-radius: 20px;
  border: 1.5px solid #E2E8F0;
  background: #FFFFFF;
  cursor: pointer;
  font-size: 12px;
  font-weight: 500;
  color: #5A6B7C;
  transition: all 0.2s;
  font-family: inherit;
  white-space: nowrap;
}

.qm-cat-chip:hover {
  border-color: #C1E1E2;
  color: #1A2B3C;
}

.qm-cat-chip.active {
  border-color: #4AA9AE !important;
  background: #4AA9AE !important;
  color: #fff !important;
  box-shadow: 0 2px 8px rgba(74,169,174,0.3);
}

.qm-cat-chip.locked {
  opacity: 0.35;
  pointer-events: none;
}

/* Table */
.qm-table-wrapper {
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 16px;
  overflow-x: auto;
}

.qm-line-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}

.qm-line-table thead th {
  background: #F8FAFB;
  padding: 10px 12px;
  text-align: left;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #8A9BAC;
  border-bottom: 1px solid #E2E8F0;
  white-space: nowrap;
}

.qm-line-table tbody tr {
  background: #fff;
}

.qm-line-table tbody tr:hover {
  background: #EDF7F7;
}

.qm-line-table td {
  padding: 10px 12px;
  vertical-align: middle;
  border-bottom: 1px solid #E2E8F0;
}

.qm-line-table .ant-input,
.qm-line-table .ant-select-selector {
  border-radius: 6px !important;
  border: 1.5px solid #E2E8F0 !important;
  font-size: 13px !important;   
}

.qm-line-table .ant-input:focus,
.qm-line-table .ant-select-focused .ant-select-selector {
  border-color: #4AA9AE !important; 
  box-shadow: 0 0 0 3px rgba(74,169,174,0.12) !important;
}

.qm-remove-btn {
  color: #8A9BAC; 
  font-size: 16px;
  cursor: pointer;
  /* background: transparent; */
  border: none;
  transition: 0.2s;
  padding: 4px;
  border-radius: 4px;
}

.qm-remove-btn:hover {
  color: #E5534B;
  background: #FEF2F2;
}

/* Totals */
.qm-totals-section {
  display: flex;
  justify-content: flex-end;
  margin-top: 20px;
  margin-bottom: 24px;
}

.qm-discount-remarks-col {
  margin-right: auto;
  width: 50%;
}

.qm-discount-section {
  margin-bottom: 16px;
}

.qm-discount-method-label {
  font-size: 12px;
  color: #5A6B7C;
  margin-bottom: 8px;
  font-weight: 500;
}

.qm-discount-method-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 10px;
}

.qm-discount-method-btn {
  height: 36px;
  border-radius: 8px;
  border: 1px solid #D5DEE8;
  background: #F8FAFB;
  color: #8A9BAC;
  font-size: 12px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  cursor: pointer;
  transition: all 0.2s ease;
  font-family: inherit;
}

.qm-discount-method-btn:hover {
  border-color: #9FD7DA;
  color: #4D7A7D;
  background: #F2FBFC;
}

.qm-discount-method-btn.active {
  border-color: #8FCED2;
  background: #DDF2F4;
  color: #3A8E93;
  box-shadow: 0 0 0 2px rgba(74, 169, 174, 0.12);
}

.qm-discount-active-row {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: #6D7E90;
  margin-bottom: 10px;
}

.qm-discount-active-pill {
  background: #E7F0FF;
  color: #1F5FBF;
  border-radius: 999px;
  padding: 2px 10px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
}

.qm-discount-input-panel {
  background: #F8FAFB;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  padding: 12px;
}

.qm-discount-input-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.qm-discount-field {
  min-width: 0;
}

.qm-discount-field-label {
  display: block;
  font-size: 11px;
  color: #5A6B7C;
  margin-bottom: 4px;
  font-weight: 600;
}

.qm-discount-field .ant-input-affix-wrapper {
  border-radius: 8px !important;
  border: 1.5px solid #CBD5E0 !important;
  height: 36px;
  box-shadow: none !important;
}

.qm-discount-field .ant-input-affix-wrapper-focused {
  border-color: #4AA9AE !important;
  box-shadow: 0 0 0 3px rgba(74, 169, 174, 0.14) !important;
}

.qm-discount-input-error .ant-input-affix-wrapper,
.qm-discount-field .ant-input-affix-wrapper.qm-discount-input-error {
  border-color: #F87171 !important;
  box-shadow: 0 0 0 3px rgba(248, 113, 113, 0.15) !important;
}

.qm-discount-helper-row {
  margin-top: 8px;
  color: #8A9BAC;
  font-size: 11px;
  display: flex;
  align-items: center;
  gap: 6px;
}

.qm-discount-lineitem-hint {
  color: #5A6B7C;
}

.qm-discount-none-hint {
  color: #8A9BAC;
}

.qm-discount-error-text {
  margin-top: 6px;
  color: #D93025;
  font-size: 11px;
  font-weight: 600;
}

@media (max-width: 900px) {
  .qm-discount-method-grid {
    grid-template-columns: 1fr;
  }

  .qm-discount-input-grid {
    grid-template-columns: 1fr;
  }

  .qm-totals-section {
    flex-direction: column;
    gap: 14px;
  }

  .qm-discount-remarks-col,
  .qm-totals-card {
    width: 100%;
    margin-right: 0;
  }
}

.qm-totals-card {
  width: 320px;
  background: #F8FAFB;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  padding: 16px 18px;
}

.qm-total-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 6px 0;
  font-size: 13px;
}

.qm-total-row .t-label { color: #5A6B7C; }
.qm-total-row .t-value { font-weight: 600; color: #1A2B3C; }

.qm-total-row.grand {
  border-top: 2px solid #4AA9AE;
  margin-top: 8px;
  padding-top: 12px;
  font-size: 15px;
}

.qm-total-row.grand .t-value {
  color: #3A8E93;
  font-size: 17px;
}

/* Helper Text */
.qm-helper-text {
  font-size: 12px;
  color: #8A9BAC;
  font-style: italic;
  margin-top: 8px;
  display: flex;
  align-items: center;
  gap: 5px;
}

/* Add Button */
.qm-add-btn {
  padding: 9px 18px;
  border-radius: 6px;
  border: 1.5px dashed #4AA9AE;
  background: #EDF7F7;
  color: #3A8E93;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  transition: 0.2s;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.qm-add-btn:hover {
  background: #C1E1E2;
}

.qm-add-btn:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

/* Disabled Section */
.qm-disabled-section {
  opacity: 0.4;
  pointer-events: none;
  filter: grayscale(0.3);
}

/* Loading Overlay */
.qm-spinner-overlay {
  position: absolute;
  inset: 0;
  background: rgba(255,255,255,0.75);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
  border-radius: 14px;
}

/* ── Force white background on all inputs inside the modal ──────────────────
   AntD derives hover/focus background from the primary color token, producing
   a teal tint. We override it here at every state for all inputs & selects.   */
.qm-modal .ant-input,
.qm-modal-wrapper .ant-input,
.qm-modal .ant-input-affix-wrapper,
.qm-modal-wrapper .ant-input-affix-wrapper {
  background-color: #ffffff !important;
}

.qm-modal .ant-input:hover,
.qm-modal-wrapper .ant-input:hover,
.qm-modal .ant-input-affix-wrapper:hover,
.qm-modal-wrapper .ant-input-affix-wrapper:hover,
.qm-modal .ant-input:focus,
.qm-modal-wrapper .ant-input:focus,
.qm-modal .ant-input-affix-wrapper-focused,
.qm-modal-wrapper .ant-input-affix-wrapper-focused {
  background-color: #ffffff !important;
}

/* Select selector background */
.qm-modal .ant-select-selector,
.qm-modal-wrapper .ant-select-selector {
  background-color: #ffffff !important;
}

.qm-modal .ant-select:hover .ant-select-selector,
.qm-modal-wrapper .ant-select:hover .ant-select-selector,
.qm-modal .ant-select-focused .ant-select-selector,
.qm-modal-wrapper .ant-select-focused .ant-select-selector {
  background-color: #ffffff !important;
}

/* Textarea */
.qm-modal .ant-input.ant-input-textarea,
.qm-modal-wrapper textarea.ant-input {
  background-color: #ffffff !important;
}

/* Post Tax Amount column — intentionally keeps its teal tint */
.qm-line-table td:last-of-type .ant-input-affix-wrapper,
.qm-line-table td.qm-post-tax-cell .ant-input-affix-wrapper {
  background-color: #F0FAFA !important;
}

:root {
  --qtn-primary: #4aa9ae;
  --qtn-primary-dark: #3a8a8e;
  --qtn-white: #ffffff;
  --qtn-black: #1a1a1a;
  --qtn-gray-900: #1e2a36;
  --qtn-gray-700: #5a6b7b;
  --qtn-gray-500: #8896a4;
  --qtn-gray-400: #888888;
  --qtn-gray-300: #dce5ec;
  --qtn-gray-200: #e8ecef;
  --qtn-gray-100: #f8fafb;
  --qtn-gray-50: #f0f4f7;
  --qtn-glass-bg: #f8fcff;
  --qtn-glass-border: #dce5ec;
  --qtn-discount: #e74c3c;
  --qtn-page-w: 210mm;
  --qtn-page-h: 297mm;
  --qtn-mx: 8mm;
  --qtn-mt: 6mm;
}

.qtn-wrapper,
.qtn-wrapper *,
.qtn-wrapper *::before,
.qtn-wrapper *::after {
  box-sizing: border-box;
}

.qtn-wrapper {
  width: 100%;
  padding: 10px;
  background: #f5f7fa;
  font-family: Helvetica, Arial, sans-serif;
}

.qtn-doc {
  width: min(var(--qtn-page-w), 100%);
  margin: 0 auto;
  background: var(--qtn-white);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.1);
  height: var(--qtn-page-h);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.qtn-flex-spacer {
  flex: 1 1 auto;
  min-height: 0;
}

.qtn-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
  padding: var(--qtn-mt) var(--qtn-mx) 4mm;
}

.qtn-company-block {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  min-width: 0;
}

.qtn-logo,
.qtn-logo-fallback {
  width: 20mm;
  height: 20mm;
  flex-shrink: 0;
}

.qtn-logo {
  display: grid;
  place-items: center;
}

.qtn-logo-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.qtn-logo-fallback {
  border-radius: 8px;
  background:
    linear-gradient(to bottom, var(--qtn-primary) 0 50%, var(--qtn-primary-dark) 50% 100%);
  color: var(--qtn-white);
  font-weight: 700;
  font-size: 18px;
  display: grid;
  place-items: center;
}

.qtn-company-info {
  padding-top: 2px;
  min-width: 0;
}

.qtn-company-name {
  color: var(--qtn-black);
  font-size: 11.5pt;
  line-height: 1.15;
  font-weight: 700;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.qtn-company-addr,
.qtn-company-meta,
.qtn-company-contact {
  color: var(--qtn-gray-700);
  font-size: 7.5pt;
  line-height: 1.3;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.qtn-company-addr {
  margin-top: 3px;
}

.qtn-company-addr p {
  margin: 0;
}

.qtn-company-meta {
  margin-top: 2px;
}

.qtn-company-contact {
  margin-top: 2px;
}

.qtn-doc-info {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 2mm;
}

.qtn-title {
  color: var(--qtn-primary);
  font-size: 16pt;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0;
}

.qtn-meta-box {
  min-width: 45mm;
}

.qtn-meta-item {
  display: flex;
  align-items: center;
  gap: 6px;
  min-height: 6.2mm;
  padding: 1.2mm 2mm 1.2mm 4mm;
  border-radius: 1.8mm;
  background: var(--qtn-gray-50);
  position: relative;
}

.qtn-meta-item::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 2mm;
  border-radius: 1mm;
  background: var(--qtn-primary);
}

.qtn-meta-label {
  color: var(--qtn-gray-400);
  font-size: 7.5pt;
  font-weight: 700;
}

.qtn-meta-value {
  margin-left: auto;
  color: var(--qtn-primary);
  font-size: 7.5pt;
  font-weight: 700;
}

.qtn-divider {
  height: 0.8mm;
  background: var(--qtn-primary);
  margin: 0 var(--qtn-mx);
}

.qtn-main-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4mm;
  padding: 4mm var(--qtn-mx) 4.5mm;
}

.qtn-billto-section,
.qtn-details-section {
  background: var(--qtn-glass-bg);
  border: 1px solid var(--qtn-glass-border);
  border-radius: 1.8mm;
  overflow: hidden;
  position: relative;
}

.qtn-billto-section::before,
.qtn-details-section::before {
  content: '';
  position: absolute;
  left: 1.4mm;
  right: 1.4mm;
  top: 1.1mm;
  height: 0.2mm;
  background: rgba(255, 255, 255, 0.95);
}

.qtn-section-header {
  background: var(--qtn-primary);
  padding: 1.8mm 4mm 1.3mm;
  position: relative;
}

.qtn-section-header::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2px;
  background: var(--qtn-primary);
}

.qtn-badge {
  color: var(--qtn-white);
  font-size: 8pt;
  font-weight: 700;
  letter-spacing: 0.2px;
}

.qtn-billto-content,
.qtn-details-content {
  padding: 2mm 4mm 3mm;
  display: flex;
  flex-direction: column;
  gap: 1.5mm;
  min-height: 30mm;
}

.qtn-detail-line {
  display: flex;
  align-items: flex-start;
  gap: 4px;
  color: var(--qtn-black);
  font-size: 7.5pt;
  line-height: 1.25;
}

.qtn-detail-line-compact {
  margin-bottom: 1px;
}

.qtn-label {
  min-width: 20mm;
  color: var(--qtn-gray-700);
  font-weight: 400;
  flex-shrink: 0;
}

.qtn-label-sm {
  min-width: 26mm;
}

.qtn-value {
  color: var(--qtn-black);
  font-weight: 700;
  min-width: 0;
  word-break: break-word;
}

.qtn-table-section {
  padding: 0 var(--qtn-mx) 3mm;
}

.qtn-table {
  width: 100%;
  border-collapse: collapse;
}

.qtn-table thead th {
  background: var(--qtn-primary);
  color: var(--qtn-white);
  font-size: 8.2pt;
  font-weight: 700;
  padding: 2mm 2.5mm;
  border: none;
  text-align: left;
}

.qtn-table td {
  font-size: 8.2pt;
  color: var(--qtn-black);
  padding: 2mm 2.5mm;
  border: none;
  vertical-align: middle;
}

.qtn-row:nth-child(odd) td {
  background: var(--qtn-gray-100);
}

.qtn-th-num,
.qtn-td-num {
  width: 10mm;
  text-align: center !important;
}

.qtn-th-center,
.qtn-td-center {
  width: 16mm;
  text-align: center !important;
}

.qtn-th-right,
.qtn-td-right {
  width: 35mm;
  text-align: right !important;
}

.qtn-td-num {
  color: var(--qtn-gray-700);
}

.qtn-td-desc {
  font-weight: 400;
}

.qtn-td-right {
  color: var(--qtn-black);
}

.qtn-td-amount {
  text-align: right;
  font-weight: 700;
  color: var(--qtn-black);
}

.qtn-total-wrapper {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  padding-top: 2.5mm;
}

.qtn-total-row {
  width: 82mm;
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 10px;
  padding: 1px 0;
}

.qtn-total-label {
  color: var(--qtn-gray-700);
  font-size: 8.5pt;
  font-weight: 700;
  white-space: nowrap;
}

.qtn-total-amount {
  color: var(--qtn-gray-900);
  font-size: 8.5pt;
  font-weight: 700;
  white-space: nowrap;
}

.qtn-discount .qtn-total-label,
.qtn-discount .qtn-total-amount {
  color: var(--qtn-discount);
}

.qtn-final {
  margin-top: 3px;
  padding-top: 2mm;
  border-top: 1px solid var(--qtn-black);
}

.qtn-final .qtn-total-label {
  color: var(--qtn-black);
}

.qtn-total-value {
  color: var(--qtn-primary);
  font-size: 10pt;
  font-weight: 700;
  white-space: nowrap;
}

.qtn-section-separator {
  height: 1px;
  background: var(--qtn-gray-300);
  margin: 2mm var(--qtn-mx) 0;
}

.qtn-payment-section {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  padding: 8px 22px 12px;
  align-items: stretch;
}

.qtn-bank-box,
.qtn-qr-box {
  background: #fcfdff;
  border: 1px solid var(--qtn-gray-300);
  border-radius: 2.2mm;
}

.qtn-bank-box {
  padding: 3.5mm 4mm;
  min-height: 46mm;
}

.qtn-box-title {
  color: var(--qtn-black);
  font-size: 10pt;
  font-weight: 700;
  padding-bottom: 1.8mm;
  margin-bottom: 2mm;
  border-bottom: 1px solid var(--qtn-gray-200);
}

.qtn-bank-list {
  display: flex;
  flex-direction: column;
  gap: 1.2mm;
}

.qtn-bank-row {
  display: flex;
  align-items: baseline;
  gap: 4px;
  font-size: 8.8pt;
  line-height: 1.35;
}

.qtn-bank-row-label {
  color: var(--qtn-black);
  font-weight: 700;
  white-space: nowrap;
}

.qtn-bank-row-value {
  color: var(--qtn-gray-700);
  font-weight: 400;
  word-break: break-word;
}

.qtn-qr-box {
  border: 1px solid #e0e5ea;
  border-radius: 6px;
  padding: 8px 12px;
  background: #fcfdff;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 130px;
  height: 100%;
}

.qtn-qr-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.2mm;
  width: 100%;
}

.qtn-scan-label {
  color: var(--qtn-gray-500);
  font-size: 7pt;
  font-weight: 700;
  letter-spacing: 0.2px;
}

.qtn-qr-img {
  width: 32mm;
  height: 32mm;
  object-fit: contain;
  display: block;
}

.qtn-upi-text {
  color: var(--qtn-primary);
  font-size: 7.2pt;
  font-weight: 700;
  text-align: center;
  word-break: break-word;
}

.qtn-remark {
  margin: 0 var(--qtn-mx);
  padding: 0.8mm 0 0.8mm;
  color: var(--qtn-gray-700);
  font-size: 7.5pt;
  line-height: 1.35;
}

.qtn-remark strong {
  color: var(--qtn-black);
  font-weight: 700;
}

.qtn-terms {
  margin-top: 2mm;
  padding: 0 var(--qtn-mx) 2mm;
}

.qtn-terms::before {
  content: '';
  display: block;
  height: 1px;
  background: var(--qtn-gray-300);
  margin-bottom: 4mm;
}

.qtn-terms-title {
  display: block;
  background: var(--qtn-primary);
  color: var(--qtn-white);
  font-size: 8.2pt;
  font-weight: 700;
  border-radius: 1.6mm;
  padding: 1.8mm 4mm;
  margin-bottom: 1.2mm;
}

.qtn-terms-list {
  margin: 0;
  padding-left: 18px;
  color: #555555;
  font-size: 8.8pt;
  line-height: 1.45;
}

.qtn-terms-list li {
  margin-bottom: 3px;
  padding-left: 2px;
}

.qtn-footer-separator {
  height: 2px;
  background: #4aa9ae;
  margin: 0 22px;
}

.qtn-footer {
  margin-top: 0;
  padding: 2mm var(--qtn-mx) 3mm;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
}

.qtn-footer-left {
  color: var(--qtn-gray-700);
  font-size: 8.5pt;
  line-height: 1.45;
}

.qtn-footer-left p {
  margin: 0;
}

.qtn-footer-right {
  color: var(--qtn-gray-400);
  font-size: 6.5pt;
  font-style: italic;
  text-align: right;
  align-self: flex-start;
  margin-top: 4mm;
  line-height: 1;
  white-space: nowrap;
}

@media print {
  @page {
    size: A4;
    margin: 8mm;
  }

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

  .qtn-wrapper {
    padding: 0;
    background: #fff;
  }

  .qtn-doc {
    box-shadow: none;
  }
}

.qtn-wrapper--preview .qtn-doc {
  height: auto !important;
  overflow: visible !important;
}

.qtn-wrapper--preview .qtn-flex-spacer {
  display: none !important;
}

@media (max-width: 768px) {

  .qtn-header,
  .qtn-main-grid {
    grid-template-columns: 1fr;
    padding-left: 12px;
    padding-right: 12px;
  }

  .qtn-doc-info {
    align-items: flex-start;
  }

  .qtn-meta-box {
    width: 100%;
    min-width: 0;
  }

  .qtn-payment-section {
    grid-template-columns: 1fr;
    padding-left: 12px;
    padding-right: 12px;
  }

  .qtn-section-separator {
    margin-left: 12px;
    margin-right: 12px;
  }

  .qtn-qr-box {
    width: 100%;
    justify-self: stretch;
  }

  .qtn-table-section,
  .qtn-terms,
  .qtn-footer {
    padding-left: 12px;
    padding-right: 12px;
  }

  .qtn-remark {
    margin-left: 12px;
    margin-right: 12px;
  }

  .qtn-total-row {
    width: 100%;
  }
}

/* Financial Summary View Container */
.financial-summary-container {
    width: 100%;
    height: 100%;
    overflow-y: auto;
    background-color: #ffffff;
}

.financial-summary-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Helvetica', 'Arial', sans-serif;
}

.financial-summary-loading {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 400px;
}

/* Header Section */
.fs-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 20px;
    background: linear-gradient(135deg, #e3f2fd 0%, #f5f5f5 100%);
    border: 3px solid #2196f3;
    border-radius: 0;
    margin-bottom: 20px;
}

.fs-header-left {
    display: flex;
    align-items: center;
    gap: 15px;
}

.fs-company-logo {
    width: 80px;
    height: 80px;
    object-fit: contain;
}

.fs-company-info {
    display: flex;
    flex-direction: column;
}

.fs-company-name {
    font-size: 20px;
    font-weight: 700;
    color: #000000;
    margin: 0 0 5px 0;
    line-height: 1.2;
}

.fs-company-address {
    font-size: 12px;
    color: #424242;
    margin: 0;
    line-height: 1.4;
}

.fs-header-right {
    text-align: right;
}

.fs-title {
    font-size: 28px;
    font-weight: 700;
    color: #000000;
    margin: 0 0 10px 0;
    letter-spacing: 0.5px;
}

.fs-meta {
    font-size: 11px;
    color: #424242;
    line-height: 1.6;
}

.fs-meta p {
    margin: 2px 0;
}

.fs-meta strong {
    font-weight: 600;
}

/* Section Styles */
.fs-section {
    margin-bottom: 25px;
    border: 1px solid #e0e0e0;
    border-radius: 0;
}

.fs-section-header {
    padding: 12px 20px;
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.fs-section-header h3 {
    margin: 0;
    font-size: 14px;
    font-weight: 700;
}

.fs-section-header-blue {
    background-color: #5b7fe6;
}

.fs-section-header-green {
    background-color: #bbf7d0;
    color: #000000;
}

.fs-section-header-yellow {
    background-color: #fde68a;
    color: #000000;
}

.fs-section-header-red {
    background-color: #fca5a5;
    color: #000000;
}

.fs-section-header-cyan {
    background-color: #a5f3fc;
    color: #000000;
}

/* Patient Details Grid */
.fs-details-grid {
    padding: 15px 20px;
    background-color: #ffffff;
}

.fs-detail-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid #f0f0f0;
}

.fs-detail-row:last-child {
    border-bottom: none;
    margin-bottom: 0;
}

.fs-detail-row.fs-detail-full {
    grid-template-columns: 1fr;
}

.fs-detail-item {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.fs-detail-item-full {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.fs-detail-label {
    font-size: 12px;
    font-weight: 600;
    color: #616161;
    min-width: 140px;
    flex-shrink: 0;
}

.fs-detail-value {
    font-size: 12px;
    color: #212121;
    line-height: 1.5;
    word-break: break-word;
}

/* Balance Cards */
.fs-balance-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
    background-color: #ffffff;
}

.fs-balance-card {
    padding: 20px;
    text-align: center;
    border: 1px solid #e0e0e0;
    border-right: none;
}

.fs-balance-card:last-child {
    border-right: 1px solid #e0e0e0;
}

.fs-balance-card.fs-balance-blue {
    background-color: #dbeafe;
}

.fs-balance-card.fs-balance-green {
    background-color: #d1fae5;
}

.fs-balance-card.fs-balance-orange {
    background-color: #fed7aa;
}

.fs-balance-label {
    font-size: 13px;
    font-weight: 600;
    color: #000000;
    margin-bottom: 8px;
}

.fs-balance-amount {
    font-size: 18px;
    font-weight: 700;
    color: #1e40af;
}

/* Table Styles */
.fs-table-container {
    overflow-x: auto;
    background-color: #ffffff;
}

.fs-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
}

.fs-table thead {
    background-color: #f5f5f5;
}

.fs-table th {
    padding: 10px 12px;
    text-align: left;
    font-weight: 600;
    color: #424242;
    border-bottom: 2px solid #e0e0e0;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.fs-table td {
    padding: 10px 12px;
    border-bottom: 1px solid #f0f0f0;
    color: #333333;
    font-size: 12px;
}

.fs-table tbody tr:hover {
    background-color: #fafafa;
}

.fs-table tbody tr:last-child td {
    border-bottom: none;
}

.fs-table-right {
    text-align: right !important;
}

.fs-amount {
    font-weight: 600;
    color: #000000;
    text-align: right !important;
}

.fs-table-total td {
    background-color: #f9f9f9;
    font-weight: 600;
    padding: 12px;
    border-bottom: 1px solid #e0e0e0;
}

.fs-table-total:last-child td {
    border-bottom: none;
}

/* Financial Summary Section */
.fs-summary-header {
    padding: 15px 20px;
    background-color: #5b7fe6;
    color: #ffffff;
    text-align: center;
}

.fs-summary-header h3 {
    margin: 0;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.8px;
}

.fs-summary-content {
    padding: 20px;
    background-color: #fafafa;
}

.fs-summary-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 0;
    border-bottom: 1px solid #e0e0e0;
}

.fs-summary-row:last-of-type {
    border-bottom: 2px solid #bdbdbd;
    margin-bottom: 15px;
}

.fs-summary-label {
    font-size: 14px;
    color: #424242;
    font-weight: 500;
}

.fs-summary-value {
    font-size: 14px;
    font-weight: 600;
}

.fs-summary-green {
    color: #10b981;
}

.fs-summary-red {
    color: #dc2626;
}

.fs-summary-total {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 20px;
    background-color: #ffffff;
    border: 2px solid #e0e0e0;
    border-radius: 4px;
    margin-top: 10px;
}

.fs-summary-total-label {
    font-size: 16px;
    font-weight: 700;
    color: #212121;
}

.fs-summary-total-value {
    font-size: 24px;
    font-weight: 700;
}

/* Footer Section */
.fs-footer {
    padding: 20px;
    background-color: #f8fafc;
    text-align: center;
    margin-top: 30px;
    border-top: 1px solid #e0e0e0;
}

.fs-footer-main {
    font-size: 14px;
    color: #475569;
    margin: 0 0 8px 0;
    font-weight: 500;
}

.fs-footer-powered {
    font-size: 12px;
    color: #64748b;
    margin: 0;
    font-style: italic;
}

/* Responsive Design */
@media (max-width: 1024px) {
    .fs-header {
        flex-direction: column;
        gap: 20px;
    }

    .fs-header-right {
        text-align: left;
    }

    .fs-balance-cards {
        grid-template-columns: 1fr;
    }

    .fs-balance-card {
        border-right: 1px solid #e0e0e0;
        border-bottom: none;
    }

    .fs-balance-card:last-child {
        border-bottom: 1px solid #e0e0e0;
    }
}

@media (max-width: 768px) {
    .financial-summary-content {
        padding: 10px;
    }

    .fs-header {
        padding: 15px;
    }

    .fs-company-logo {
        width: 60px;
        height: 60px;
    }

    .fs-company-name {
        font-size: 16px;
    }

    .fs-title {
        font-size: 20px;
    }

    .fs-detail-row {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .fs-detail-label {
        min-width: 120px;
    }

    .fs-table-container {
        overflow-x: scroll;
    }

    .fs-table {
        min-width: 600px;
    }

    .fs-summary-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 5px;
    }

    .fs-summary-total {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }
}

@media (max-width: 480px) {
    .fs-company-name {
        font-size: 14px;
    }

    .fs-company-address {
        font-size: 10px;
    }

    .fs-title {
        font-size: 16px;
    }

    .fs-meta {
        font-size: 9px;
    }

    .fs-detail-label {
        font-size: 11px;
        min-width: 100px;
    }

    .fs-detail-value {
        font-size: 11px;
    }

    .fs-balance-label {
        font-size: 11px;
    }

    .fs-balance-amount {
        font-size: 16px;
    }

    .fs-summary-label,
    .fs-summary-value {
        font-size: 12px;
    }

    .fs-summary-total-label {
        font-size: 14px;
    }

    .fs-summary-total-value {
        font-size: 18px;
    }
}

/* Print Styles */
@media print {
    .financial-summary-container {
        overflow: visible;
    }

    .financial-summary-content {
        max-width: 100%;
        padding: 0;
    }

    .fs-section {
        page-break-inside: avoid;
    }

    .fs-table {
        page-break-inside: auto;
    }

    .fs-table tr {
        page-break-inside: avoid;
        page-break-after: auto;
    }
}
/* Patient Deposit Narration Ledger Styles */
/* Prefixed with 'on-' (overall-narration) to avoid global class conflicts */

/* ===== Header Summary Card ===== */
.on-ledger-summary-card {
  margin-bottom: 24px;
  border-radius: 12px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
  background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
  border: 1px solid #f0f0f0;
}

.on-ledger-summary-card .ant-card-body {
  padding: 24px 28px;
}

/* Balance Card Layout */
.on-balance-card {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px 20px;
  border-radius: 10px;
  background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%);
  border: 1px solid #bbf7d0;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.on-balance-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(82, 196, 26, 0.15);
}

.on-balance-card.on-balance-security {
  background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
  border: 1px solid #93c5fd;
}

.on-balance-card.on-balance-security:hover {
  box-shadow: 0 4px 12px rgba(24, 144, 255, 0.15);
}

/* Balance Icon */
.on-balance-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background: linear-gradient(135deg, #52c41a 0%, #389e0d 100%);
  color: #fff;
  font-size: 22px;
  flex-shrink: 0;
  box-shadow: 0 4px 8px rgba(82, 196, 26, 0.25);
}

.on-balance-icon.on-security {
  background: linear-gradient(135deg, #1890ff 0%, #096dd9 100%);
  box-shadow: 0 4px 8px rgba(24, 144, 255, 0.25);
}

/* Balance Content */
.on-balance-content {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.on-balance-label {
  font-size: 13px;
  color: #6b7280;
  font-weight: 500;
  letter-spacing: 0.01em;
}

.on-balance-value {
  font-size: 26px;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.2;
}

/* As Of Card */
.on-asof-card {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 20px;
  border-radius: 10px;
  background: linear-gradient(135deg, #f9fafb 0%, #f3f4f6 100%);
  border: 1px solid #e5e7eb;
}

.on-asof-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: linear-gradient(135deg, #6b7280 0%, #4b5563 100%);
  color: #fff;
  font-size: 20px;
  flex-shrink: 0;
}

.on-asof-content {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.on-asof-label {
  font-size: 12px;
  color: #9ca3af;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.on-asof-value {
  font-size: 17px;
  font-weight: 600;
  color: #374151;
}

/* Legacy Balance indicators (kept for compatibility) */
.on-balance-positive {
  color: #52c41a;
}

.on-balance-negative {
  color: #ff4d4f;
}

.on-balance-neutral {
  color: #1890ff;
}

/* Entry type badges */
.on-entry-type-badge {
  display: inline-block;
  padding: 2px 10px;
  border-radius: 4px;
  font-weight: 600;
  font-size: 12px;
  text-transform: uppercase;
}

.on-entry-type-cr {
  background-color: #f6ffed;
  color: #52c41a;
  border: 1px solid #b7eb8f;
}

.on-entry-type-dr {
  background-color: #fff2f0;
  color: #ff4d4f;
  border: 1px solid #ffccc7;
}

.on-entry-type-adj {
  background-color: #f5f5f5;
  color: #666;
  border: 1px solid #d9d9d9;
}

/* Account column styling */
.on-account-badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 500;
}

.on-account-advance {
  background-color: #e6f7ff;
  color: #1890ff;
}

.on-account-security {
  background-color: #fff7e6;
  color: #fa8c16;
}

.on-account-system {
  background-color: #f0f0f0;
  color: #8c8c8c;
}

/* References styling */
.on-references-container {
  font-size: 12px;
  line-height: 1.6;
}

.on-reference-link {
  color: #1890ff;
  cursor: pointer;
  text-decoration: none;
  transition: all 0.2s ease;
  font-weight: 500;
}

.on-reference-link:hover {
  color: #40a9ff;
  text-decoration: underline;
}

.on-reference-separator {
  color: #d9d9d9;
  margin: 0 2px;
}

/* Narration text */
.on-narration-text {
  font-size: 13px;
  line-height: 1.5;
  color: #333;
}

/* Timestamp styling */
.on-timestamp-display {
  font-size: 13px;
  color: #555;
}

.on-timestamp-asof {
  font-size: 14px;
  color: #888;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .on-ledger-summary-card .ant-card-body {
    padding: 16px 18px;
  }
  
  .on-balance-card,
  .on-asof-card {
    padding: 12px 16px;
  }
  
  .on-balance-icon {
    width: 40px;
    height: 40px;
    font-size: 18px;
  }
  
  .on-balance-value {
    font-size: 22px;
  }
  
  .on-asof-icon {
    width: 38px;
    height: 38px;
    font-size: 16px;
  }
  
  .on-asof-value {
    font-size: 15px;
  }
}

@media (max-width: 576px) {
  .on-balance-card,
  .on-asof-card {
    padding: 10px 14px;
    gap: 12px;
  }
  
  .on-balance-icon {
    width: 36px;
    height: 36px;
    font-size: 16px;
    border-radius: 8px;
  }
  
  .on-balance-value {
    font-size: 20px;
  }
  
  .on-balance-label {
    font-size: 12px;
  }
}

/* ============================================================
   CorrectionPages.css
   Shared styles for Correction Entry, Correction Drawer,
   Correction Help Panel, and correction rows in the
   Overall Narration Ledger.
   Prefix: corr-   |   All values use !important
   ============================================================ */

/* ===== Ledger: CORR / GCORR type badges ===== */
.corr-entry-type-corr {
  background-color: #fff7e6 !important;
  color: #d48806 !important;
  border: 1px solid #ffd591 !important;
}
.corr-button-text-dark {
  color: #1a2340 !important;
}
.corr-button-text-light {
  color: #fff !important;
}
.corr-entry-type-gcorr {
  background-color: #f9f0ff !important;
  color: #722ed1 !important;
  border: 1px solid #d3adf7 !important;
}

/* ===== Ledger: Negative amount highlight ===== */
.corr-amount-negative {
  color: #cf1322 !important;
  font-weight: 600 !important;
}

/* ===== Ledger: Correction reference links ===== */
.corr-ref-link {
  color: #0427b1 !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  text-decoration: underline !important;
}

.corr-ref-link:hover {
  color: #1d4ed8 !important;
}

.corr-ref-separator {
  color: #d9d9d9 !important;
  margin: 0 4px !important;
}

/* ===== Ledger: Correction mode tag (inline) ===== */
.corr-mode-tag {
  display: inline-block !important;
  padding: 1px 6px !important;
  border-radius: 3px !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.03em !important;
  vertical-align: middle !important;
  margin-left: 4px !important;
}

.corr-mode-tag-corr {
  background-color: #fff7e6 !important;
  color: #d48806 !important;
  border: 1px solid #ffd591 !important;
}

.corr-mode-tag-gcorr {
  background-color: #f9f0ff !important;
  color: #722ed1 !important;
  border: 1px solid #d3adf7 !important;
}

/* ===== CorrectionEntry Page ===== */
.corr-page-wrapper {
  max-width: 900px !important;
  margin: 0 auto !important;
  padding: 24px !important;
}

.corr-page-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 24px !important;
}

.corr-page-title {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #1a2340 !important;
}

.corr-page-subtitle {
  font-size: 12px !important;
  color: #6b7280 !important;
  margin-top: 2px !important;
}

/* Step pills */
.corr-steps-bar {
  display: flex !important;
  gap: 8px !important;
  margin-bottom: 24px !important;
}

.corr-step-pill {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 8px 18px !important;
  border-radius: 20px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  border: 1.5px solid #e5e7eb !important;
  background: #f9fafb !important;
  color: #9ca3af !important;
  transition: all 0.2s ease !important;
}

.corr-step-pill-active {
  background: #1a2340 !important;
  color: #fff !important;
  border-color: #1a2340 !important;
}

.corr-step-pill-done {
  background: #f0fdf4 !important;
  color: #16a34a !important;
  border-color: #bbf7d0 !important;
}

.corr-step-number {
  width: 22px !important;
  height: 22px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  background: rgba(255, 255, 255, 0.15) !important;
}

/* Patient select card */
.corr-select-card {
  background: #fff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 12px !important;
  padding: 20px 24px !important;
  margin-bottom: 16px !important;
}

.corr-select-label {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #1a2340 !important;
  margin-bottom: 8px !important;
}

/* Receipt cards */
.corr-receipt-card {
  background: #fff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 10px !important;
  padding: 14px 18px !important;
  margin-bottom: 10px !important;
  cursor: pointer !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.corr-receipt-card:hover {
  border-color: #3b82f6 !important;
  box-shadow: 0 2px 8px rgba(59, 130, 246, 0.10) !important;
}

.corr-receipt-card-selected {
  border-color: #1a2340 !important;
  box-shadow: 0 0 0 2px rgba(26, 35, 64, 0.12) !important;
}

.corr-receipt-id {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #1a2340 !important;
}

.corr-receipt-meta {
  font-size: 12px !important;
  color: #6b7280 !important;
  margin-top: 4px !important;
}

.corr-receipt-amount {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #1a2340 !important;
}

/* Generic correction toggle */
.corr-generic-toggle {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 12px 16px !important;
  background: #fffbeb !important;
  border: 1px solid #fde68a !important;
  border-radius: 8px !important;
  margin-bottom: 16px !important;
}

/* Summary card (step 3) */
.corr-summary-card {
  background: #f9fafb !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 12px !important;
  padding: 20px 24px !important;
  margin-bottom: 16px !important;
}

.corr-summary-row {
  display: flex !important;
  justify-content: space-between !important;
  padding: 6px 0 !important;
  font-size: 13px !important;
}

.corr-summary-label {
  color: #6b7280 !important;
  font-weight: 500 !important;
}

.corr-summary-value {
  color: #1a2340 !important;
  font-weight: 600 !important;
}

/* ===== CorrectionDrawer ===== */
.corr-drawer-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 16px 20px !important;
  border-bottom: 1px solid #e5e7eb !important;
}

.corr-drawer-title {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #1a2340 !important;
}

.corr-drawer-subtitle {
  font-size: 11.5px !important;
  color: #6b7280 !important;
  margin-top: 2px !important;
}

.corr-drawer-body {
  padding: 20px !important;
  overflow-y: auto !important;
}

.corr-drawer-section-title {
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.7px !important;
  color: #6b7280 !important;
  margin-bottom: 10px !important;
}

.corr-drawer-detail-row {
  display: flex !important;
  justify-content: space-between !important;
  padding: 7px 0 !important;
  font-size: 13px !important;
  border-bottom: 1px solid #f3f4f6 !important;
}

.corr-drawer-detail-label {
  color: #6b7280 !important;
  font-weight: 500 !important;
}

.corr-drawer-detail-value {
  color: #1a2340 !important;
  font-weight: 600 !important;
}

/* Balance bar */
.corr-balance-bar-bg {
  height: 8px !important;
  background: #e5e7eb !important;
  border-radius: 4px !important;
  overflow: hidden !important;
  margin-top: 6px !important;
}

.corr-balance-bar-fill {
  height: 100% !important;
  border-radius: 4px !important;
  transition: width 0.3s ease !important;
}

.corr-balance-bar-fill-ok {
  background: #22c55e !important;
}

.corr-balance-bar-fill-warn {
  background: #f59e0b !important;
}

.corr-balance-bar-fill-danger {
  background: #ef4444 !important;
}

/* Mode selector */
.corr-mode-selector {
  display: flex !important;
  gap: 10px !important;
  margin-bottom: 16px !important;
}

.corr-mode-option {
  flex: 1 1 !important;
  padding: 12px 16px !important;
  border: 1.5px solid #e5e7eb !important;
  border-radius: 10px !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  text-align: center !important;
}

.corr-mode-option:hover {
  border-color: #3b82f6 !important;
}

.corr-mode-option-active {
  border-color: #1a2340 !important;
  background: #f0f5ff !important;
}

.corr-mode-option-title {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #1a2340 !important;
}

.corr-mode-option-desc {
  font-size: 11px !important;
  color: #6b7280 !important;
  margin-top: 3px !important;
}

/* Amount input area */
.corr-amount-input-group {
  margin-bottom: 16px !important;
}

.corr-amount-input-label {
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #374151 !important;
  margin-bottom: 6px !important;
}

/* Drawer footer */
.corr-drawer-footer {
  padding: 14px 20px !important;
  border-top: 1px solid #e5e7eb !important;
  display: flex !important;
  gap: 10px !important;
  justify-content: flex-end !important;
}

/* ===== CorrectionHelpPanel ===== */
.corr-help-overlay {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 380px !important;
  background: #fff !important;
  z-index: 1000 !important;
  box-shadow: -4px 0 24px rgba(0, 0, 0, 0.08) !important;
  display: flex !important;
  flex-direction: column !important;
  transition: transform 0.25s ease !important;
}

.corr-help-overlay-visible {
  transform: translateX(0) !important;
}

.corr-help-overlay-hidden {
  transform: translateX(100%) !important;
}

.corr-help-header {
  padding: 16px 20px !important;
  border-bottom: 1px solid #e5e7eb !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

.corr-help-title {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #1a2340 !important;
}

.corr-help-subtitle {
  font-size: 11.5px !important;
  color: #6b7280 !important;
  margin-top: 2px !important;
}

.corr-help-body {
  flex: 1 1 !important;
  overflow-y: auto !important;
  padding: 16px 20px !important;
}

/* Step item in help panel */
.corr-help-step {
  display: flex !important;
  gap: 12px !important;
  margin-bottom: 16px !important;
}

.corr-help-step-icon {
  width: 36px !important;
  height: 36px !important;
  border-radius: 50% !important;
  background: #f0f5ff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 16px !important;
  flex-shrink: 0 !important;
}

.corr-help-step-title {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #1a2340 !important;
}

.corr-help-step-desc {
  font-size: 12px !important;
  color: #6b7280 !important;
  margin-top: 3px !important;
  line-height: 1.5 !important;
}

/* FAQ items in help panel */
.corr-help-faq-title {
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.7px !important;
  color: #6b7280 !important;
  margin-bottom: 12px !important;
}

.corr-help-faq-card {
  background: #f8fafb !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 8px !important;
  padding: 12px 14px !important;
  margin-bottom: 10px !important;
}

.corr-help-faq-q {
  font-size: 12.5px !important;
  font-weight: 700 !important;
  color: #1a2340 !important;
  margin-bottom: 5px !important;
}

.corr-help-faq-a {
  font-size: 12px !important;
  color: #6b7280 !important;
  line-height: 1.5 !important;
}

/* ===== Responsive ===== */
@media (max-width: 768px) {
  .corr-page-wrapper {
    padding: 16px !important;
  }

  .corr-help-overlay {
    width: 100% !important;
  }

  .corr-steps-bar {
    flex-wrap: wrap !important;
  }

  .corr-step-pill {
    font-size: 12px !important;
    padding: 6px 14px !important;
  }
}

@media (max-width: 576px) {
  .corr-mode-selector {
    flex-direction: column !important;
  }
}

.nurse-body {
    font-family: 'Inter', 'Segoe UI', -apple-system, BlinkMacSystemFont, sans-serif;
    font-size: 13px;
    color: #1a202c;
    margin: 0;
    width: 100%;
    padding: 6mm;
    box-sizing: border-box;
    background: #ffffff;
    line-height: 1.5;
    letter-spacing: -0.01em;
    font-weight: 500;
    user-select: text; /* Make all text selectable by default */
    -webkit-user-select: text;
    -moz-user-select: text;
    -ms-user-select: text;
}

.nurse-header-placeholder {
    text-align: center;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 16px;
    color: #1a202c;
    letter-spacing: 0.5px;
    background: #ffffff;
    border: 2px solid #1a202c;
    padding: 10px 16px;
    border-radius: 4px;
    text-transform: uppercase;
    user-select: text; /* Make promotional text selectable */
    -webkit-user-select: text;
    -moz-user-select: text;
    -ms-user-select: text;
}

.nurse-brand-info {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #ffffff;
    border: 2px solid #e2e8f0;
    border-radius: 4px;
    padding: 12px;
    margin: 0 0 16px 0;
    box-sizing: border-box;
}

.nurse-legacy-logo,
.nurse-legacy-banner {
    padding: 8px;
    text-align: center;
    font-weight: 500;
    font-size: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 140px;
    border-radius: 2px;
}

.nurse-legacy-logo {
    width: 220px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
}

.nurse-legacy-logo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.nurse-legacy-banner {
    flex-grow: 1;
    margin-left: 12px;
    background: #f8fafc;
    color: #4a5568;
    border: 1px solid #e2e8f0;
}

.nurse-section {
    margin-top: 12px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 4px;
    overflow: hidden;
}

.nurse-section-title {
    background: #caf0f8;
    color: #023e8a;
    border-bottom: 3px solid #0096c7;
    border-left: 4px solid #0096c7;
    padding: 12px 16px;
    font-weight: bold;
    font-size: 14px;
    margin: 0;
    /* letter-spacing: 0.5px; */
    text-transform: uppercase;
}

.nurse-table {
    width: 100%;
    border-collapse: collapse;
    margin: 0;
    background: #ffffff;
}

.nurse-table th,
.nurse-table td {
    border: 1px solid #e2e8f0;
    padding: 10px 12px;
    font-size: 12px;
    vertical-align: top;
    font-weight: 500;
    color: #1a202c;
}

.nurse-table th {
    background: #f8fafc;
    font-weight: 700;
    color: #1a202c;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.nurse-table tbody tr:nth-child(even) {
    background-color: #f9fafb;
}

.nurse-table tbody tr td:first-child {
    font-weight: 600;
    color: #374151;
    background: #f8fafc;
}

/* Ensure clean borders and spacing */
.nurse-table th {
    text-align: left;
}

.nurse-table td {
    text-align: left;
}

.nurse-specialization-label,
.nurse-language-label {
    font-weight: 700;
    color: #1a202c;
    font-size: 12px;
}

.nurse-specialization-item {
    font-size: 11px;
    font-weight: 600;
    color: #1e40af;
    background: #dbeafe;
    padding: 4px 10px;
    border-radius: 12px;
    display: inline-block;
    margin: 2px 4px 2px 0;
    border: 1px solid #93c5fd;
}

.nurse-language-item {
    font-size: 11px;
    font-weight: 600;
    color: #065f46;
    background: #d1fae5;
    padding: 4px 10px;
    border-radius: 12px;
    display: inline-block;
    margin: 2px 4px 2px 0;
    border: 1px solid #18ca92;
}

/* .nurse-specialization-item:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
} */

.nurse-profile-container {
    display: flex;
    gap: 16px;
    padding: 12px;
    background: #ffffff;
}

.nurse-profile-pic-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    background: #ffffff;
    padding: 8px;
    border-radius: 4px;
    border: 1px solid #e2e8f0;
}

.nurse-profile-pic {
    width: 240px;
    height: 300px;
    object-fit: cover;
    border-radius: 4px;
    border: 2px solid #e5e7eb;
}

.nurse-cg-id {
    font-size: 11px;
    margin-top: 8px;
    color: #1a202c;
    font-weight: 700;
    background: #e2e8f0;
    padding: 6px 72px;
    border-radius: 4px;
    border: 2px solid #4a5568;
    text-align: center;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.nurse-kyc-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 12px;
    padding: 12px;
    background: #ffffff;
}

.nurse-kyc-box {
    height: 320px;
    border: 2px dashed #cbd5e0;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    color: #6b7280;
    background: #f9fafb;
    position: relative;
    overflow: hidden;
}

.nurse-kyc-box img {
    max-height: 100%;
    max-width: 100%;
    border-radius: 2px;
    object-fit: cover;
}

.nurse-footer {
    margin-top: 16px;
    padding: 12px;
    text-align: center;
    font-size: 11px;
    color: #6b7280;
    background: #f8fafc;
    border: 1px solid #e5e7eb;
    border-radius: 4px;
}

.nurse-tick {
    color: #065f46;
    text-align: center;
    font-weight: 700;
    font-size: 12px;
    vertical-align: middle;
    background: #d1fae5;
    padding: 4px 10px;
    border-radius: 15px;
    border: 2px solid #18ca92;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    margin: 2px 4px 2px 0;
    width: fit-content;
}


/* .nurse-tick::before {
    content: '✓' !important;
    font-weight: bold !important;
    font-size: 12px !important;
}

.nurse-tick::before {
    content: '✓' !important;
    font-weight: bold !important;
    font-size: 14px !important;
} */

.nurse-details-table {
    flex: 1 1;
}

.nurse-details-table strong {
    color: #1f2937;
    font-weight: 700;
}

.nurse-company-details {
    text-align: right;
}

.nurse-company-details h4 {
    margin: 0 0 6px 0;
    font-size: 25px;
    font-weight: 900;
    color: #1a202c;
}

.nurse-company-details p {
    margin: 3px 0;
    font-size: 13px;
    color: #2d3748;
    line-height: 1.4;
}

/* Page break handling for PDF generation and printing */
.nurse-section,
.nurse-profile-container,
.nurse-table,
.nurse-kyc-grid {
    page-break-inside: avoid;
}

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

/* Enhanced typography for minimalistic design */
.nurse-details-table strong {
    color: #2d3748;
    font-weight: 600;
}

.nurse-section:first-of-type {
    margin-top: 16px;
}

/* Responsive design for smaller screens */
@media (max-width: 768px) {
    .nurse-profile-container {
        flex-direction: column;
        align-items: center;
        gap: 16px;
    }

    .nurse-kyc-grid {
        grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
        gap: 12px;
    }

    .nurse-brand-info {
        flex-direction: column;
        gap: 12px;
    }

    .nurse-legacy-logo {
        width: 100%;
    }

    .nurse-legacy-banner {
        margin-left: 0;
    }
}

/* Specific styles for printing to ensure clean output */
@media print {
    .nurse-body {
        background: #ffffff !important;
        font-size: 12px;
        padding: 8mm;
    }

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

    .nurse-header-placeholder {
        background: #667eea !important;
        color: #ffffff !important;
        box-shadow: none !important;
    }

    .nurse-section-title {
        background: #667eea !important;
        color: #ffffff !important;
    }

    .nurse-brand-info,
    .nurse-section {
        box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1) !important;
        border: 1px solid #e5e7eb !important;
    }

    .nurse-profile-pic {
        box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1) !important;
    }

    /* Ensure gradients print correctly */
    .nurse-legacy-logo {
        background: #dbeafe !important;
        border: 1px solid #bfdbfe !important;
    }

    .nurse-legacy-banner {
        background: #e0f2fe !important;
        color: #0369a1 !important;
        border: 1px solid #7dd3fc !important;
    }

    .nurse-specialization-item {
        background: #dbeafe !important;
        color: #1e40af !important;
        border: 1px solid #93c5fd !important;
    }

    .nurse-tick {
        background: #d1fae5 !important;
        color: #059669 !important;
        border: 1px solid #6ee7b7 !important;
    }

    /* Remove hover effects for print */
    .nurse-section:hover,
    .nurse-brand-info:hover,
    .nurse-specialization-item:hover,
    .nurse-tick:hover,
    .nurse-kyc-box:hover {
        transform: none !important;
        box-shadow: inherit !important;
    }

    /* Re-apply page break rules */
    .nurse-section,
    .nurse-profile-container,
    .nurse-table,
    .nurse-kyc-grid {
        page-break-inside: avoid;
    }

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

    /* Ensure proper PDF colors */
    .nurse-body {
        background: #ffffff !important;
        color: #1a202c !important;
    }

    .nurse-header-placeholder {
        background: #ffffff !important;
        color: #1a202c !important;
        border: 2px solid #1a202c !important;
    }

    .nurse-section-title {
        background: #f8fafc !important;
        color: #1a202c !important;
        border-bottom: 2px solid #1a202c !important;
    }

    .nurse-section {
        background: #ffffff !important;
        border: 1px solid #e2e8f0 !important;
    }

    .nurse-brand-info {
        background: #ffffff !important;
        border: 2px solid #e2e8f0 !important;
    }

    .nurse-table th,
    .nurse-table td {
        background: #ffffff !important;
        color: #1a202c !important;
    }

    .nurse-table th {
        background: #f8fafc !important;
    }

    .nurse-table tbody tr:nth-child(even) {
        background-color: #f9fafb !important;
    }
}

/* Field header styles for better prominence */
.nurse-field-header {
    font-weight: 800;
    color: #1a202c;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.nurse-field-value {
    font-weight: 600;
    color: #2d3748;
    font-size: 12px;
}

/* Center align document status */
/* .nurse-table td .nurse-tick {
    display: block;
    margin: 0 auto;
    width: fit-content;
} */

/* Terms and Conditions Styles */
.nurse-terms-content {
    padding: 16px;
    background: #ffffff;
    user-select: text; /* Make T&C text selectable */
    -webkit-user-select: text;
    -moz-user-select: text;
    -ms-user-select: text;
}

.nurse-term-item {
    margin-bottom: 8px;
    line-height: 1.6;
    font-size: 13px;
    color: #1a202c;
    padding-left: 4px;
    user-select: text; /* Make individual terms selectable */
    -webkit-user-select: text;
    -moz-user-select: text;
    -ms-user-select: text;
}

.nurse-term-item:last-child {
    margin-bottom: 0;
}
/* Payment Receipt CSS - "Arogya" Corporate Style */
/* Refactored with 'pmtrcpt1' prefix */

.pmtrcpt1-payment-receipt-container {
    width: 210mm;
    min-height: 297mm;
    margin: 0 auto;
    padding: 10mm 15mm;
    background: #ffffff;
    /* User Requested Text Formatting */
    font-family: Arial, Helvetica, sans-serif;
    letter-spacing: 0.01em !important;
    color: #333;
    box-sizing: border-box;
    position: relative;
    font-size: 13px;

    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
}

/* --- Header Section --- */
.pmtrcpt1-arogya-header {
    display: flex;
    gap: 20px;
    margin-bottom: 20px;
    border-bottom: 2px solid #3366cc;
    padding-bottom: 15px;
}

.pmtrcpt1-arogya-logo-container {
    flex: 0 0 100px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.pmtrcpt1-arogya-logo {
    max-width: 90px;
    max-height: 90px;
}

.pmtrcpt1-arogya-company-info {
    flex: 1 1;
}

.pmtrcpt1-arogya-company-name {
    color: #3366cc;
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 5px;
    text-transform: capitalize;
    line-height: 0.9 ;
}

.pmtrcpt1-arogya-company-address {
    font-size: 12px;
    color: #555;
    line-height: 1.4;
}

.pmtrcpt1-arogya-company-details {
    margin-top: 8px;
    font-size: 11px;
    font-weight: 600;
    color: #444;
}

/* --- Title & Meta Box --- */
.pmtrcpt1-arogya-title {
    text-align: center;
    color: #3366cc;
    font-size: 20px;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 15px;
    letter-spacing: 1px;
}

.pmtrcpt1-arogya-meta-box {
    display: flex;
    border: 1px solid #a0c0f0;
    background: #f0f6ff;
    margin-bottom: 20px;
    border-radius: 4px;
}

.pmtrcpt1-arogya-meta-item {
    flex: 1 1;
    padding: 8px 12px;
    border-right: 1px solid #d0e0ff;
}

.pmtrcpt1-arogya-meta-item:last-child {
    border-right: none;
}

.pmtrcpt1-arogya-meta-label {
    font-weight: 700;
    font-size: 11px;
    color: #333;
    margin-bottom: 3px;
    text-transform: capitalize;
}

.pmtrcpt1-arogya-meta-value {
    font-size: 13px;
    color: #000;
    font-weight: 500;
}

.pmtrcpt1-status-paid {
    color: #28a745;
    font-weight: 700;
}

/* --- Address Split Section --- */
.pmtrcpt1-arogya-address-section {
    display: flex;
    border: 1px solid #ccc;
    margin-bottom: 20px;
}

.pmtrcpt1-arogya-billed-box {
    flex: 1 1;
    border-right: 1px solid #ccc;
}

.pmtrcpt1-arogya-billed-box:last-child {
    border-right: none;
}

.pmtrcpt1-arogya-billed-header {
    background: #e6efff;
    padding: 6px 12px;
    font-weight: 700;
    font-size: 11px;
    color: #555;
    text-transform: uppercase;
    border-bottom: 1px solid #ccc;
}

.pmtrcpt1-arogya-billed-content {
    padding: 10px 12px;
    font-size: 13px;
    line-height: 1.5;
    color: #333;
}

.pmtrcpt1-field-label {
    color: #777;
    font-weight: 500;
    margin-right: 5px;
    font-size: 12px;
}

.pmtrcpt1-arogya-billed-name {
    font-weight: 700;
    margin-bottom: 4px;
    color: #000;
}

/* --- Amount Box --- */
.pmtrcpt1-arogya-amount-box {
    border: 2px solid #3366cc;
    margin-bottom: 20px;
    text-align: center;
}

.pmtrcpt1-arogya-amount-header {
    background: #ffffff;
    color: #555;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    padding: 8px 12px;
    text-align: left;
    border-bottom: 1px solid #ddd;
}

.pmtrcpt1-arogya-amount-value-container {
    padding: 15px;
    background: #ffffff;
}

.pmtrcpt1-arogya-amount-value {
    font-size: 32px;
    font-weight: 700;
    color: #3366cc;
    margin-bottom: 5px;
}

.pmtrcpt1-arogya-amount-words {
    font-style: italic;
    font-size: 13px;
    color: #666;
}

/* --- Details Table --- */
.pmtrcpt1-arogya-details-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
    font-size: 13px;
}

.pmtrcpt1-arogya-details-table td {
    border: 1px solid #ddd;
    padding: 0.5rem 0.5rem;
}

.pmtrcpt1-arogya-details-label {
    background: #f0f6ff;
    font-weight: 600;
    /* width: 20%; */
    color: #444;
}

.pmtrcpt1-arogya-details-value {
    color: #000;
        width: 30%;
}

/* --- Remarks --- */
.pmtrcpt1-arogya-remarks-box {
    border: 1px solid #99c2ff;
    background: #fdfdfd;
    margin-bottom: 30px;
}

.pmtrcpt1-arogya-remarks-header {
    background: #e6efff;
    padding: 6px 12px;
    font-weight: 700;
    font-size: 11px;
    color: #3366cc;
    text-transform: uppercase;
    border-bottom: 1px solid #99c2ff;
}

.pmtrcpt1-arogya-remarks-content {
    padding: 10px 12px;
    font-size: 13px;
    line-height: 1.5;
    color: #333;
    min-height: 40px;
}

/* This specific class is used by jsPDF logic to find remarks, so we must keep the original name or ensure we use the old class as well if needed. 
   However, user asked to prepend ALL classes. 
   If I change this, I must also update the ViewPage.tsx logic or add the old class as a secondary class. 
   Logic: allParagraphs = clonedElement.querySelectorAll('.payment-receipt-payment-details p');
   So I will add 'payment-receipt-payment-details' as a secondary class in TSX and prefix it here if I want to style it.
   But user said "prepend all css classNames".
   I will style '.pmtrcpt1-payment-receipt-payment-details' and in TSX I will add both if necessary, or better yet, I should check if I can just use the new one.
   Actually, the user said "prepend all... so that these classes do not interfere".
   The view page logic is likely relying on the OLD class name.
   I should probably keep the old class name in the TSX for the JS selector, but NOT style it (or style the new one).
   Let's create the new style.
*/
.pmtrcpt1-payment-receipt-payment-details {
    /* No specific style needed if just a wrapper, but if it had styles, move them here */
}

/* --- Footer --- */
.pmtrcpt1-arogya-footer {
    text-align: center;
    margin-top: 30px;
}

.pmtrcpt1-arogya-thank-you {
    color: #3366cc;
    font-weight: 600;
    font-size: 14px;
    margin-bottom: 15px;
}

.pmtrcpt1-arogya-brand {
    font-size: 11px;
    color: #777;
    border-top: 2px dotted #ddd;
    padding-top: 10px;
    width: 60%;
    margin: 0 auto;
}

@media print {
    .pmtrcpt1-payment-receipt-container {
        padding: 0;
        margin: 0;
        width: 100%;
        box-shadow: none;
    }
}
:root{--leads-primary-50: #ecfdf5;--leads-primary-100: #d1fae5;--leads-primary-200: #a7f3d0;--leads-primary-400: #34d399;--leads-primary-500: #15a171;--leads-primary-600: #059669;--leads-primary-700: #047857;--leads-gray-50: #f9fafb;--leads-gray-100: #f3f4f6;--leads-gray-200: #e5e7eb;--leads-gray-300: #d1d5db;--leads-gray-400: #9ca3af;--leads-gray-500: #6b7280;--leads-gray-600: #4b5563;--leads-gray-700: #374151;--leads-gray-800: #1f2937;--leads-gray-900: #111827;--leads-success: #10b981;--leads-success-light: #dcfce7;--leads-info: #3b82f6;--leads-info-light: #dbeafe;--leads-warning: #f59e0b;--leads-warning-light: #fef3c7;--leads-danger: #ef4444;--leads-danger-light: #fee2e2;--leads-purple: #8b5cf6;--leads-purple-light: #ede9fe;--leads-radius-sm: 4px;--leads-radius-md: 6px;--leads-radius-lg: 8px;--leads-radius-xl: 12px;--leads-radius-full: 9999px;--leads-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);--leads-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);--leads-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);--leads-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)}.LeadsTable_tableCard__g-APx{background:#fff;border:1px solid var(--leads-gray-200);border-radius:var(--leads-radius-xl);box-shadow:var(--leads-shadow-md);overflow:hidden}.LeadsTable_toolbar__n1ZJR{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--leads-gray-200);flex-wrap:wrap;background:#fff}.LeadsTable_searchBox__sKS93{display:flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--leads-gray-200);border-radius:var(--leads-radius-md);padding:8px 12px;min-height:48px;box-sizing:border-box;width:320px;transition:all .15s ease}.LeadsTable_searchBox__sKS93:hover{border-color:var(--leads-primary-400);background:var(--leads-primary-50)}.LeadsTable_searchBox__sKS93:focus-within{background:#fff;border-color:var(--leads-primary-500);box-shadow:0 0 0 3px rgba(21,161,113,.1)}.LeadsTable_searchBox__sKS93 .LeadsTable_searchIcon__WQlQV{color:var(--leads-gray-400);font-size:16px}.LeadsTable_searchBox__sKS93 input{border:none;outline:none;width:100%;font-size:13px;color:var(--leads-gray-800);background:rgba(0,0,0,0)}.LeadsTable_searchBox__sKS93 input::placeholder{color:var(--leads-gray-400)}.LeadsTable_searchBox__sKS93 .LeadsTable_searchSubmit__PHAuY{margin-left:8px;height:32px;padding:0 12px;border-radius:15px;background:var(--leads-primary-500);color:#fff;border:none;font-size:13px;font-weight:600;cursor:pointer;transition:all .12s ease}.LeadsTable_searchBox__sKS93 .LeadsTable_searchSubmit__PHAuY:hover{background:var(--leads-primary-700)}.LeadsTable_toolbarDivider__9H2Wo{width:1px;height:32px;background:var(--leads-gray-200);margin:0 4px}.LeadsTable_quickFilter__sPcev{display:flex;align-items:center;gap:6px;padding:8px 12px;border-radius:var(--leads-radius-md);background:#fff;border:1px solid var(--leads-gray-200);font-size:13px;color:var(--leads-gray-600);cursor:pointer;transition:all .15s ease}.LeadsTable_quickFilter__sPcev:hover{border-color:var(--leads-primary-400);background:var(--leads-primary-50)}.LeadsTable_quickFilter__sPcev select{border:none;outline:none;background:rgba(0,0,0,0);font-weight:600;color:var(--leads-gray-800);cursor:pointer;padding-right:4px}.LeadsTable_quickFilterLabel__\+tNMi{white-space:nowrap}.LeadsTable_filterBtn__ZAxbF{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:15px;background:#fff;border:1px solid var(--leads-gray-200);font-size:13px;font-weight:600;color:var(--leads-gray-700);cursor:pointer;transition:all .15s ease}.LeadsTable_filterBtn__ZAxbF:hover{border-color:var(--leads-primary-400);background:var(--leads-primary-50)}.LeadsTable_filterBadge__jH7p-{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--leads-primary-500);color:#fff;border-radius:var(--leads-radius-full);font-size:11px;font-weight:700}.LeadsTable_toolbarSpacer__XgsF3{flex:1 1}.LeadsTable_toolbarActions__xL5Gu{display:flex;gap:8px;align-items:center}.LeadsTable_chipsRow__hxzma{display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--leads-gray-50);border-bottom:1px solid var(--leads-gray-200);flex-wrap:wrap;min-height:44px}.LeadsTable_chipsRow__hxzma:empty,.LeadsTable_chipsRow__hxzma.LeadsTable_hidden__s0WZy{display:none}.LeadsTable_chip__UOxWf{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:var(--leads-radius-full);font-size:12px;font-weight:600;background:var(--leads-primary-50);border:1px solid rgba(21,161,113,.25);color:var(--leads-primary-700)}.LeadsTable_chip__UOxWf .LeadsTable_chipRemove__yfy4d{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:rgba(21,161,113,.15);cursor:pointer;font-size:14px;line-height:1;margin-left:2px}.LeadsTable_chip__UOxWf .LeadsTable_chipRemove__yfy4d:hover{background:rgba(21,161,113,.3)}.LeadsTable_chipClear__Lj2jl{background:var(--leads-gray-100);border-color:var(--leads-gray-200);color:var(--leads-gray-600);margin-left:auto}.LeadsTable_chipClear__Lj2jl .LeadsTable_chipRemove__yfy4d{background:rgba(0,0,0,.08)}.LeadsTable_chipClear__Lj2jl .LeadsTable_chipRemove__yfy4d:hover{background:rgba(0,0,0,.15)}.LeadsTable_tableWrapper__zjfLc{overflow-x:auto;overflow-y:visible;max-width:100%}.LeadsTable_tableWrapper__zjfLc::-webkit-scrollbar{height:10px}.LeadsTable_tableWrapper__zjfLc::-webkit-scrollbar-track{background:var(--leads-gray-100)}.LeadsTable_tableWrapper__zjfLc::-webkit-scrollbar-thumb{background:var(--leads-gray-300);border-radius:5px}.LeadsTable_tableWrapper__zjfLc::-webkit-scrollbar-thumb:hover{background:var(--leads-gray-400)}.LeadsTable_leadCell__Eo6P0{display:flex;flex-direction:column;gap:5px}.LeadsTable_leadId__REL4E{font-weight:700;color:var(--leads-primary-600);text-decoration:none;font-size:13px;cursor:pointer}.LeadsTable_leadId__REL4E:hover{color:var(--leads-primary-700);text-decoration:underline}.LeadsTable_leadTags__AWm6D{display:flex;gap:5px}.LeadsTable_miniTag__JZSVa{display:inline-flex;align-items:center;padding:2px 6px;border-radius:var(--leads-radius-sm);font-size:9px;font-weight:700;letter-spacing:.3px;text-transform:uppercase}.LeadsTable_tagPidYes__WbQjg{background:#dcfce7;color:#166534}.LeadsTable_tagPidNo__4HnUj{background:var(--leads-gray-100);color:var(--leads-gray-500)}.LeadsTable_tagDupYes__Qc6Ky{background:#fef3c7;color:#b45309}.LeadsTable_tagDupNo__OucPt{background:var(--leads-gray-100);color:var(--leads-gray-500)}.LeadsTable_cellName__znTFD{font-weight:600;color:var(--leads-gray-800);font-size:13px}.LeadsTable_cellMono__HpX\+7{font-family:"SF Mono",ui-monospace,monospace;font-size:12px;color:var(--leads-gray-600);letter-spacing:-0.3px}.LeadsTable_cellMuted__GfZe8{color:var(--leads-gray-400);font-size:13px}.LeadsTable_cellTruncate__XhYJn{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.LeadsTable_stageBadge__wKhZM{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:var(--leads-radius-full);font-size:11px;font-weight:600;white-space:nowrap}.LeadsTable_stageDot__auKxD{width:6px;height:6px;border-radius:50%}.LeadsTable_stageNew__\+pPxI{background:var(--leads-info-light);color:#1d4ed8}.LeadsTable_stageNew__\+pPxI .LeadsTable_stageDot__auKxD{background:#3b82f6}.LeadsTable_stageOpen__JNbHH{background:var(--leads-success-light);color:#047857}.LeadsTable_stageOpen__JNbHH .LeadsTable_stageDot__auKxD{background:#10b981}.LeadsTable_stageWip__GJpCY{background:var(--leads-warning-light);color:#b45309}.LeadsTable_stageWip__GJpCY .LeadsTable_stageDot__auKxD{background:#f59e0b}.LeadsTable_stageSwitched__ck8AR{background:var(--leads-warning-light);color:#b45309}.LeadsTable_stageSwitched__ck8AR .LeadsTable_stageDot__auKxD{background:#f59e0b}.LeadsTable_stageClosed__GZvVf{background:var(--leads-gray-100);color:var(--leads-gray-600)}.LeadsTable_stageClosed__GZvVf .LeadsTable_stageDot__auKxD{background:var(--leads-gray-400)}.LeadsTable_stageConverted__R7gC2{background:#dcfce7;color:#166534}.LeadsTable_stageConverted__R7gC2 .LeadsTable_stageDot__auKxD{background:#22c55e}.LeadsTable_stageDefault__3GLDh{background:var(--leads-gray-100);color:var(--leads-gray-700)}.LeadsTable_stageDefault__3GLDh .LeadsTable_stageDot__auKxD{background:var(--leads-gray-500)}.LeadsTable_priorityBadge__Koa7S{display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--leads-radius-full);font-size:11px;font-weight:600}.LeadsTable_priorityHot__\+Z8zJ{background:var(--leads-danger-light);color:#b91c1c}.LeadsTable_priorityNormal__9LGz5{background:var(--leads-gray-100);color:var(--leads-gray-600)}.LeadsTable_priorityLow__ZCFsn{background:var(--leads-info-light);color:#1d4ed8}.LeadsTable_reminderCell__imoij{display:flex;flex-direction:column;gap:2px}.LeadsTable_reminderType__MMK3k{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600}.LeadsTable_reminderTime__y0qLT{font-size:11px;color:var(--leads-gray-500)}.LeadsTable_reminderCall__KwAL3 .LeadsTable_reminderType__MMK3k{color:var(--leads-info)}.LeadsTable_reminderMeeting__L92n7 .LeadsTable_reminderType__MMK3k{color:var(--leads-purple)}.LeadsTable_reminderEmail__8g0XX .LeadsTable_reminderType__MMK3k{color:var(--leads-success)}.LeadsTable_reminderOverdue__CtJ30 .LeadsTable_reminderType__MMK3k{color:var(--leads-danger)}.LeadsTable_reminderOverdue__CtJ30 .LeadsTable_reminderTime__y0qLT{color:var(--leads-danger);font-weight:500}.LeadsTable_reminderBadge__OCawo{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--leads-radius-md);font-size:12px;font-weight:600;white-space:nowrap}.LeadsTable_reminderBadge__OCawo.LeadsTable_reminderUpcoming__RMbiQ{background:var(--leads-info-light);color:var(--leads-info)}.LeadsTable_reminderBadge__OCawo.LeadsTable_reminderDueSoon__i8G1S{background:var(--leads-warning-light);color:var(--leads-warning)}.LeadsTable_reminderBadge__OCawo.LeadsTable_reminderOverdue__CtJ30{background:var(--leads-danger-light);color:var(--leads-danger)}.LeadsTable_reminderBadge__OCawo.LeadsTable_reminderNone__H7org{color:var(--leads-gray-400);background:rgba(0,0,0,0)}.LeadsTable_btn__RiVzZ{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 16px;border-radius:var(--leads-radius-md);font-size:13px;font-weight:600;cursor:pointer;border:1px solid rgba(0,0,0,0);transition:all .15s ease;font-family:inherit}.LeadsTable_btnPrimary__48MuP{background:var(--leads-primary-500);color:#fff}.LeadsTable_btnPrimary__48MuP:hover{background:var(--leads-primary-600)}.LeadsTable_btnSecondary__qT2R0{background:#fff;color:var(--leads-gray-700);border-color:var(--leads-gray-300)}.LeadsTable_btnSecondary__qT2R0:hover{background:var(--leads-gray-50);border-color:var(--leads-gray-400)}.LeadsTable_btnGhost__ZXcHn{background:rgba(0,0,0,0);color:var(--leads-gray-600);border:none}.LeadsTable_btnGhost__ZXcHn:hover{background:var(--leads-gray-100)}.LeadsTable_btnIcon__1qQPJ{padding:9px;width:38px;height:38px}.LeadsTable_pageHeader__zpKKB{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:12px}.LeadsTable_pageTitle__GOdDk{font-size:22px;font-weight:700;color:var(--leads-gray-900);display:flex;align-items:center;gap:10px}.LeadsTable_countBadge__uVR0d{font-size:13px;font-weight:500;color:var(--leads-gray-500)}.LeadsTable_pageActions__1Gv3j{display:flex;gap:10px}.LeadsTable_columnToggleDropdown__DbjBv .LeadsTable_ant-dropdown-menu__rxr3e{max-height:400px;overflow-y:auto;padding:8px}.LeadsTable_columnToggleDropdown__DbjBv .LeadsTable_ant-dropdown-menu-item__rb6UB{padding:6px 12px;border-radius:var(--leads-radius-sm)}.LeadsTable_columnToggleDropdown__DbjBv .LeadsTable_ant-dropdown-menu-item__rb6UB:hover{background:var(--leads-primary-50)}.LeadsTable_columnToggleBtn__P5HP5{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--leads-radius-md);border:1px solid var(--leads-gray-200);background:#fff;color:var(--leads-gray-600);cursor:pointer;transition:all .15s ease}.LeadsTable_columnToggleBtn__P5HP5:hover{border-color:var(--leads-primary-400);color:var(--leads-primary-600);background:var(--leads-primary-50)}.LeadsTable_columnToggleBtn__P5HP5 svg,.LeadsTable_columnToggleBtn__P5HP5 .LeadsTable_anticon__wFno6{font-size:18px}.LeadsTable_filterDrawer__hS6DI .ant-drawer-header{background:var(--leads-gray-50);border-bottom:1px solid var(--leads-gray-200);padding:16px 24px}.LeadsTable_filterDrawer__hS6DI .ant-drawer-title{font-size:18px;font-weight:700;color:var(--leads-gray-900)}.LeadsTable_filterDrawer__hS6DI .ant-drawer-body{padding:16px 24px}.LeadsTable_filterSection__-0aQt{background:var(--leads-gray-50);border:1px solid var(--leads-gray-200);border-radius:var(--leads-radius-lg);padding:16px;margin-bottom:16px}.LeadsTable_filterSection__-0aQt h4{font-size:12px;font-weight:700;color:var(--leads-gray-500);text-transform:uppercase;margin-bottom:12px}.LeadsTable_filterRow__XuhEL{display:grid;grid-template-columns:1fr 1fr;gap:12px}.LeadsTable_filterField__Dnpaj{display:flex;flex-direction:column;gap:6px}.LeadsTable_filterField__Dnpaj label{font-size:12px;font-weight:600;color:var(--leads-gray-600)}.LeadsTable_filterField__Dnpaj select,.LeadsTable_filterField__Dnpaj input{padding:10px 12px;border:1px solid var(--leads-gray-300);border-radius:var(--leads-radius-md);font:inherit;background:#fff}.LeadsTable_filterField__Dnpaj select:focus,.LeadsTable_filterField__Dnpaj input:focus{outline:none;border-color:var(--leads-primary-500);box-shadow:0 0 0 3px rgba(21,161,113,.12)}.LeadsTable_filterField__Dnpaj .ant-input,.LeadsTable_filterField__Dnpaj .ant-input-affix-wrapper,.LeadsTable_filterField__Dnpaj .ant-picker,.LeadsTable_filterField__Dnpaj .ant-select-selector{border-radius:15px !important;border-color:#eee !important;min-height:40px;transition:all .15s ease;box-shadow:none;background-color:#fff !important}.LeadsTable_filterField__Dnpaj .ant-select-selector{padding-inline:12px !important;border-bottom:1px solid #eee !important}.LeadsTable_filterField__Dnpaj .ant-select-selection-placeholder,.LeadsTable_filterField__Dnpaj .ant-select-selection-item,.LeadsTable_filterField__Dnpaj .ant-input::placeholder{font-size:13px}.LeadsTable_filterField__Dnpaj .ant-input:hover,.LeadsTable_filterField__Dnpaj .ant-input-affix-wrapper:hover,.LeadsTable_filterField__Dnpaj .ant-picker:hover,.LeadsTable_filterField__Dnpaj .ant-select:not(.ant-select-disabled):hover .ant-select-selector{border-color:#eee !important}.LeadsTable_filterField__Dnpaj .ant-input:focus,.LeadsTable_filterField__Dnpaj .ant-input-affix-wrapper-focused,.LeadsTable_filterField__Dnpaj .ant-picker-focused,.LeadsTable_filterField__Dnpaj .ant-select-focused .ant-select-selector{border-color:#15a171 !important;box-shadow:none !important}.LeadsTable_filterField__Dnpaj .ant-select-multiple .ant-select-selection-overflow-item .ant-tag{border-radius:999px;font-size:12px;padding:0 8px;line-height:22px}.LeadsTable_toggleGroup__6BqGR{display:flex;flex-wrap:wrap;gap:8px}.LeadsTable_toggleBtn__CH-3x{padding:8px 14px;border-radius:var(--leads-radius-md);border:1px solid var(--leads-gray-300);background:#fff;font-size:13px;font-weight:500;color:var(--leads-gray-700);cursor:pointer;transition:all .15s ease}.LeadsTable_toggleBtn__CH-3x:hover{border-color:var(--leads-primary-400)}.LeadsTable_toggleBtn__CH-3x.LeadsTable_active__--e16{background:var(--leads-primary-500);border-color:var(--leads-primary-500);color:#fff}.LeadsTable_drawerFooter__jpBHN{display:flex;gap:12px;padding:16px 24px;border-top:1px solid var(--leads-gray-200);background:var(--leads-gray-50)}.LeadsTable_drawerFooter__jpBHN .ant-btn{border-radius:20px;min-height:40px;font-weight:600;box-shadow:0 3px 4px rgba(0,0,0,.12) !important}.LeadsTable_leadsTable__v3QSR .ant-table{font-size:13px}.LeadsTable_leadsTable__v3QSR .ant-table-thead>tr>th{background:linear-gradient(180deg, var(--leads-gray-50), var(--leads-gray-100));border-bottom:2px solid var(--leads-gray-300);padding:12px 14px;font-size:11px;font-weight:700;color:var(--leads-gray-800) !important;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.LeadsTable_leadsTable__v3QSR .ant-table-thead>tr>th:hover{background:linear-gradient(180deg, var(--leads-primary-50), var(--leads-gray-100)) !important;color:var(--leads-gray-900) !important}.LeadsTable_leadsTable__v3QSR .ant-table-tbody>tr>td{padding:10px 14px;border-bottom:1px solid var(--leads-gray-100);vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.LeadsTable_leadsTable__v3QSR .ant-table-tbody>tr:nth-child(even){background:var(--leads-gray-50)}.LeadsTable_leadsTable__v3QSR .ant-table-tbody>tr:hover>td{background:var(--leads-primary-50) !important}.LeadsTable_leadsTable__v3QSR .ant-table-tbody>tr{cursor:pointer;transition:background .1s ease}.LeadsTable_leadsTable__v3QSR .ant-table-cell-fix-left,.LeadsTable_leadsTable__v3QSR .ant-table-cell-fix-right{background:#fff !important;z-index:5}.LeadsTable_leadsTable__v3QSR .ant-table-thead>tr>th.ant-table-cell-fix-left,.LeadsTable_leadsTable__v3QSR .ant-table-thead>tr>th.ant-table-cell-fix-right{background:linear-gradient(180deg, var(--leads-gray-50), var(--leads-gray-100)) !important;z-index:6}.LeadsTable_leadsTable__v3QSR .ant-table-tbody>tr:nth-child(even) .ant-table-cell-fix-left,.LeadsTable_leadsTable__v3QSR .ant-table-tbody>tr:nth-child(even) .ant-table-cell-fix-right{background:var(--leads-gray-50) !important}.LeadsTable_leadsTable__v3QSR .ant-table-tbody>tr:nth-child(even) .ant-table-cell-fix-left,.LeadsTable_leadsTable__v3QSR .ant-table-tbody>tr:nth-child(even) .ant-table-cell-fix-right{background:var(--leads-gray-50)}.LeadsTable_leadsTable__v3QSR .ant-table-tbody>tr:hover .ant-table-cell-fix-left,.LeadsTable_leadsTable__v3QSR .ant-table-tbody>tr:hover .ant-table-cell-fix-right{background:var(--leads-primary-50) !important}.LeadsTable_leadsTable__v3QSR .ant-table-thead>tr>th.ant-table-cell-fix-left{background:linear-gradient(180deg, var(--leads-gray-50), var(--leads-gray-100))}.LeadsTable_leadsTable__v3QSR .ant-pagination{margin:16px}.LeadsTable_leadsTable__v3QSR .ant-pagination-item{border-radius:var(--leads-radius-md)}.LeadsTable_leadsTable__v3QSR .ant-pagination-item:hover{border-color:var(--leads-primary-500)}.LeadsTable_leadsTable__v3QSR .ant-pagination-item-active{background:var(--leads-primary-500);border-color:var(--leads-primary-500)}.LeadsTable_leadsTable__v3QSR .ant-pagination-item-active a{color:#fff}.LeadsTable_leadsTable__v3QSR .ant-pagination-prev .ant-pagination-item-link,.LeadsTable_leadsTable__v3QSR .ant-pagination-next .ant-pagination-item-link{border-radius:var(--leads-radius-md)}@media(max-width: 768px){.LeadsTable_toolbar__n1ZJR{flex-direction:column;align-items:stretch;gap:10px}.LeadsTable_searchBox__sKS93{width:100%}.LeadsTable_toolbarDivider__9H2Wo{display:none}.LeadsTable_pageHeader__zpKKB{flex-direction:column;align-items:flex-start}.LeadsTable_pageActions__1Gv3j{width:100%;justify-content:flex-end}}@keyframes LeadsTable_fadeIn__P7d11{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.LeadsTable_chip__UOxWf{animation:LeadsTable_fadeIn__P7d11 .15s ease}
/* LeadProfileNew.css */

.care-pilot-crm {
    --primary-teal: #0D9488;
    --primary-teal-dark: #0F766E;
    --primary-teal-light: #F0FDFA;
    --primary-teal-fade: rgba(13, 148, 136, 0.1);
    --bg-page: #F8FAFC;
    --card-bg: #FFFFFF;
    --card-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03);
    --card-shadow-hover: 0 10px 15px -3px rgba(0, 0, 0, 0.05), 0 4px 6px -2px rgba(0, 0, 0, 0.025);
    --text-primary: #1E293B;
    --text-secondary: #64748B;
    --text-muted: #94A3B8;
    --border-light: #E2E8F0;
    --accent-blue: #3B82F6;
    --success: #10B981;
    --danger: #EF4444;
    --chip-hot-bg: #FFFBEB;
    --chip-hot-text: #B45309;
    --chip-neutral-bg: #F1F5F9;
    --chip-neutral-text: #475569;
    
    font-family: 'Plus Jakarta Sans', sans-serif;
    background: var(--bg-page);
    color: var(--text-primary);
    line-height: 1.5;
    padding: 20px;
    box-sizing: border-box; /* Added for responsive padding */
}

/* Summary Strip */
.care-pilot-crm .summary-strip { background: white; border-radius: 12px; padding: 12px 16px; margin-bottom: 24px; display: flex; flex-wrap: wrap; gap: 12px; align-items: center; box-shadow: var(--card-shadow); border: 1px solid var(--border-light); }
.care-pilot-crm .chip { display: inline-flex; align-items: center; gap: 6px; padding: 6px 14px; border-radius: 20px; font-size: 12px; font-weight: 600; transition: transform 0.2s; white-space: nowrap; }
.care-pilot-crm .chip-neutral { background: var(--chip-neutral-bg); color: var(--chip-neutral-text); }
.care-pilot-crm .chip-hot { background: linear-gradient(135deg, #FFFBEB, #FEF3C7); color: #B45309; border: 1px solid #FDE68A; }
.care-pilot-crm .chip-yes { background: #DCFCE7; color: #166534; border: 1px solid #BBF7D0; }
.care-pilot-crm .chip-divider { width: 1px; height: 24px; background: var(--border-light); margin: 0 4px; }

/* Dashboard Grid */
.care-pilot-crm .dashboard-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-bottom: 24px; }
.care-pilot-crm .card { background: var(--card-bg); border-radius: 16px; border: none; box-shadow: var(--card-shadow); transition: all 0.3s ease; overflow: visible; display: flex; flex-direction: column; }
.care-pilot-crm .card:hover { box-shadow: var(--card-shadow-hover); transform: translateY(-2px); }
.care-pilot-crm .card.full-width { grid-column: 1 / -1; }
.care-pilot-crm .card-header { background: transparent; padding: 24px 28px; border-bottom: 2px solid var(--border-light); display: flex; flex-direction: row; align-items: center; justify-content: space-between; }
.care-pilot-crm .card-title { font-size: 17px; font-weight: 700; display: flex; align-items: center; gap: 12px; color: var(--text-primary); margin-bottom: 0; }
.care-pilot-crm .card-title-icon { width: 38px; height: 38px; background: var(--primary-teal-light); border-radius: 10px; display: flex; align-items: center; justify-content: center; color: var(--primary-teal); overflow: hidden; }

/* Phone icon sizing and header inversion */
/* Center the svg and scale it to fit inside the rounded square */
.card-title-icon img.phone-icon { width: 60%; height: 60%; object-fit: contain; display: block; margin: auto; }
.phone-icon { display: inline-block; vertical-align: middle; }
.green-header-modal .ant-modal-title .phone-icon { filter: brightness(0) invert(1); }
.care-pilot-crm .card-body { padding: 24px; flex-grow: 1; }
.care-pilot-crm .edit-btn { width: 36px; height: 36px; border-radius: 10px; border: 1px solid var(--border-light); background: white; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: all 0.2s; color: var(--text-secondary); }
.care-pilot-crm .edit-btn:hover { background: var(--primary-teal-light); border-color: var(--primary-teal-fade); color: var(--primary-teal); }

/* Data Grid */
.care-pilot-crm .data-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 24px; }
.care-pilot-crm .data-grid.single-col { grid-template-columns: 1fr; }
.care-pilot-crm .data-item { 
    display: flex; 
    flex-direction: column; 
    gap: 4px; 
    background: rgba(255,255,255,0.6); /* match .status-item */
    padding: 12px 16px; /* match .status-item */
    border-radius: 10px; /* rounded box */
    border: 1px solid rgba(0,0,0,0.05); /* subtle border */
}
.care-pilot-crm .data-label { font-size: 11px; font-weight: 600; color: var(--text-secondary); text-transform: uppercase; letter-spacing: 0.3px; }
.care-pilot-crm .data-value { font-size: 14px; font-weight: 500; color: var(--text-primary); word-break: break-word; overflow-wrap: break-word; }
.care-pilot-crm .status-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.care-pilot-crm .status-item { background: rgba(255,255,255,0.6); padding: 12px 16px; border-radius: 10px; border: 1px solid rgba(0,0,0,0.05); }
.care-pilot-crm .status-item.full-width { grid-column: 1 / -1; }
.care-pilot-crm .update-btn { margin-top: 20px; width: 100%; padding: 14px; background: var(--primary-teal); color: white; border: none; border-radius: 12px; font-size: 14px; font-weight: 600; cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 8px; }

/* Sections inside cards */
.care-pilot-crm .section { margin-bottom: 20px; background: #FAFAFA; border-radius: 12px; padding: 16px; border: 1px solid transparent; }
.care-pilot-crm .section-header { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.6px; color: var(--primary-teal); margin-bottom: 16px; display: flex; align-items: center; gap: 8px; border-bottom: 2px solid rgba(13, 148, 136, 0.15); padding-bottom: 12px; }


/* Modal Customization */
.care-pilot-modal .ant-modal-content {
    border-radius: 20px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    padding: 0;
    overflow: hidden;
}

.care-pilot-modal .ant-modal-header {
    padding: 24px;
    border-bottom: 1px solid var(--border-light);
    background: #15803d;
}

.care-pilot-modal .ant-modal-title {
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-size: 20px;
    font-weight: 700;
    padding-bottom: 15px;
    color: #ffffff;
}

.care-pilot-modal .ant-modal-body {
    padding: 24px;
    background: #F8FAFC; 
}

/* Ensure form controls inside the Update Lead Status (and other) modals have white backgrounds */
.care-pilot-modal .ant-modal-body input,
.care-pilot-modal .ant-modal-body textarea,
.care-pilot-modal .ant-modal-body .custom-input,
.care-pilot-modal .ant-modal-body .ant-input,
.care-pilot-modal .ant-modal-body .ant-select-selector,
.care-pilot-modal .ant-modal-body .ant-select-selection-item {
    background: #FFFFFF !important;
    color: inherit !important;
    border-radius: 16px !important;
}

.care-pilot-modal .ant-modal-body .ant-select-selector:focus,
.care-pilot-modal .ant-modal-body .ant-input:focus,
.care-pilot-modal .ant-modal-body .custom-input:focus {
    box-shadow: 0 0 0 4px rgba(13,148,136,0.05) !important;
    border-color: var(--primary-teal) !important;
}

.care-pilot-modal .ant-modal-footer {
    padding: 20px 24px;
    background: white;
    border-top: 1px solid var(--border-light);
    display: flex;
    justify-content: flex-end;
    gap: 12px;
}

/* Form Styles inside Modal */
.modal-section-title {
    font-size: 13px;
    font-weight: 700;
    color: var(--primary-teal);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 12px;
    border-bottom: 1px solid var(--border-light);
    padding-bottom: 8px;
}

.custom-input {
    border-radius: 16px;
    padding: 8px 12px;
    border: 1px solid var(--border-light);
    box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}
.custom-input:focus, .custom-input:hover {
    border-color: var(--primary-teal);
    box-shadow: 0 0 0 3px var(--primary-teal-light);
}

/* Modern Button Toolbar Styles */
.action-bar-container {
    display: inline-flex; /* shrink to content so parent can position it */
    justify-content: flex-start; /* keep items together */
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
   flex-wrap: wrap; /* allows wrap on smaller screens */
}

/* Base Button Shape */
.crm-btn {
    height: 42px;
    padding: 0 20px;
    border-radius: 12px !important;
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-weight: 600;
    font-size: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 2px 4px rgba(0,0,0,0.02);
    white-space: nowrap; /* Prevents text breaking */
}

/* 1. Primary Action (Create Patient) - Gradient Teal */
.crm-btn-primary {
    background: linear-gradient(135deg, #0D9488 0%, #0F766E 100%) !important;
    border: none !important;
    color: white !important;
    box-shadow: 0 4px 12px rgba(13, 148, 136, 0.3) !important;
}
.crm-btn-primary:hover {
    background: linear-gradient(135deg, #14B8A6 0%, #0D9488 100%) !important;
    transform: translateY(-2px);
    box-shadow: 0 8px 16px rgba(13, 148, 136, 0.4) !important;
}
.crm-btn-primary:disabled {
    background: #CBD5E1 !important;
    box-shadow: none !important;
    color: #94A3B8 !important;
}

/* 2. Secondary Actions (Edit/Share) - Clean White */
.crm-btn-secondary {
    background: #FFFFFF !important;
    border: 1px solid #E2E8F0 !important;
    color: #475569 !important;
}
.crm-btn-secondary:hover {
    border-color: #0D9488 !important;
    color: #0D9488 !important;
    background: #F0FDFA !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(0,0,0,0.05) !important;
}
.crm-btn-secondary:disabled {
    background: #CBD5E1 !important;
    box-shadow: none !important;
    color: #94A3B8 !important;
}

/* 3. Ghost Action (Duplicate) - Subtle */
.crm-btn-ghost {
    background: transparent !important;
    border: 1px dashed #CBD5E1 !important;
    color: #64748B !important;
    box-shadow: none !important;
}
.crm-btn-ghost:hover {
    border-color: #EF4444 !important;
    color: #EF4444 !important;
    background: #FEF2F2 !important;
}
.crm-btn-ghost:disabled {
    background: #CBD5E1 !important;
    box-shadow: none !important;
    color: #94A3B8 !important;
}


/* 1. Laptops / Small Desktops (max-width: 1200px) */
@media (max-width: 1200px) {
    .care-pilot-crm .dashboard-grid {
        gap: 16px; /* Slightly tighter gap */
    }
}

/* 2. Tablets (max-width: 992px) */
@media (max-width: 992px) {
    /* Stack cards vertically instead of 2 columns */
    .care-pilot-crm .dashboard-grid {
        grid-template-columns: 1fr;
    }

    /* Adjust buttons alignment */
    .action-bar-container {
        display: flex; /* on smaller screens use full-width flex column as before */
        justify-content: flex-start;
    }
}

/* 3. Mobile Devices (max-width: 768px) */
@media (max-width: 768px) {
    .care-pilot-crm {
        padding: 12px; /* Reduce padding on small screens */
    }

    /* Make Summary Strip Scrollable */
    .care-pilot-crm .summary-strip {
        flex-wrap: nowrap;
        overflow-x: auto;
        justify-content: flex-start;
        gap: 8px;
        padding-bottom: 12px; /* Space for scrollbar */
    }
    /* Hide divider lines on mobile to save space */
    .care-pilot-crm .chip-divider {
        display: none;
    }

    /* Stack Data Fields (Key: Value) */
    .care-pilot-crm .data-grid,
    .care-pilot-crm .status-grid {
        grid-template-columns: 1fr; /* Single column */
        gap: 12px;
    }

    /* Stack Action Buttons */
    .action-bar-container {
        flex-direction: column;
        width: 100%;
    }
    .crm-btn {
        width: 100%; /* Full width buttons */
    }

    /* Fix Modal Buttons on Mobile */
    .care-pilot-modal .ant-modal-footer {
        flex-direction: column-reverse;
    }
    .care-pilot-modal .ant-modal-footer button {
        width: 100%;
        margin-left: 0;
        margin-bottom: 10px;
    }
}

/* --- CUSTOM GREEN MODAL (Matches uploaded design) --- */

/* 1. The Modal Container */
.green-header-modal .ant-modal-content {
    border-radius: 12px;
    overflow: hidden; /* Ensures header corners stay rounded */
    padding: 0;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

/* 2. The Header (Green Background) */
.green-header-modal .ant-modal-header {
    background-color: #15803d; /* Professional Deep Green matching the image */
    padding: 20px 24px;
    border-bottom: 1px solid #14532d;
    margin-bottom: 0;
}

.green-header-modal .ant-modal-title {
    color: #ffffff !important;
    font-size: 18px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 10px;
}

/* 3. The Close Button (White X) */
.green-header-modal .ant-modal-close {
    color: rgba(255, 255, 255, 0.8);
    top: 8px; /* nudged a little more up to better align with design */
    right: 20px;
}
.green-header-modal .ant-modal-close:hover {
    color: #ffffff;
    background-color: rgba(255, 255, 255, 0.1);
    border-radius: 6px;
}

/* 4. The Body */
.green-header-modal .ant-modal-body {
    padding: 32px 32px 10px 32px; /* Generous padding like the image */
    background-color: #ffffff;
}

/* 5. Labels (Uppercase & Gray) */
.green-header-modal .design-label {
    display: block;
    font-size: 11px;
    font-weight: 700;
    color: #64748B; /* Slate gray */
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 8px;
    font-family: 'Inter', sans-serif;
}

/* 6. Inputs & Selects */
.green-header-modal .ant-select-selector,
.green-header-modal .ant-input,
.green-header-modal .custom-input {
    border-radius: 16px !important;
    border-color: #E2E8F0 !important;
    padding: 6px 11px !important;
    min-height: 40px; /* Taller inputs */
    display: flex;
    align-items: center;
}

.green-header-modal .ant-select-selection-item {
    line-height: 38px !important; /* Center text vertically */
}

/* 7. Footer */
.green-header-modal .ant-modal-footer {
    padding: 16px 24px;
    background: #ffffff;
    border-top: 1px solid #F1F5F9;
}

/* Custom Footer Buttons */
.btn-cancel {
    height: 40px;
    border-radius: 16px;
    font-weight: 500;
    border: 1px solid #15803d; /* Green border */
    color: #15803d; /* Green text */
}
.btn-save {
    height: 40px;
    border-radius: 16px;
    font-weight: 600;
    background-color: #15803d; /* Matches Header */
    border: none;
    padding: 0 24px;
}
.btn-save:hover {
    background-color: #166534 !important;
}


/* --- FIX FOR DROPDOWN OVERLAP --- */

/* Allow the selection box to grow automatically */
.care-pilot-modal .ant-select-selector {
    height: auto !important;
    min-height: 40px;
    padding-bottom: 4px !important;
}

/* Ensure tags wrap correctly */
.care-pilot-modal .ant-select-selection-overflow {
    flex-wrap: wrap;
    width: 100%;
}

/* Add breathing room below all input columns */
.care-pilot-modal .ant-col {
    margin-bottom: 8px; /* Safety margin */
}

/* Ensure dropdown menu floats above everything else */
.care-pilot-modal .ant-select-dropdown {
    z-index: 9999 !important;
}

/* --- FIX FOR MULTI-SELECT OVERLAP --- */

/* 1. Force the Select box to grow with content */
.care-pilot-modal .ant-select-multiple .ant-select-selector {
    height: auto !important;
    min-height: 40px; 
    padding-top: 4px !important;
    padding-bottom: 4px !important;
    white-space: normal !important; /* Allow wrapping */
}

/* 2. Ensure the selection area handles overflow properly */
.care-pilot-modal .ant-select-selection-overflow {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

/* 3. Add item spacing */
.care-pilot-modal .ant-select-selection-overflow-item {
    max-width: 100%;
}

/* 4. Ensure Dropdown Menu sits on top (Z-Index fix) */
.care-pilot-modal .ant-select-dropdown {
    z-index: 10000 !important;
}

/* --- FIX FOR CUT-OFF TEXT IN TAGS --- */

/* 1. Increase the height of the individual tags (pills) */
.care-pilot-modal .ant-select-selection-item {
    height: 32px !important;       /* Taller tag to fit text */
    line-height: 30px !important;  /* Centers text vertically */
    display: flex !important;
    align-items: center !important;
    margin-top: 4px !important;    /* Space between rows of tags */
    margin-bottom: 4px !important;
    padding-top: 0 !important;
    padding-bottom: 2px !important; /* Extra padding at bottom to prevent clip */
    border-radius: 6px !important;
}

/* 2. Fix the text span inside the tag */
.care-pilot-modal .ant-select-selection-item-content {
    line-height: 30px !important;
    display: inline-block;
    transform: translateY(1px); /* Pushes text down slightly */
}

/* 3. Ensure the main input box handles the larger tags */
.care-pilot-modal .ant-select-multiple .ant-select-selector {
    padding-top: 6px !important;
    padding-bottom: 6px !important;
    min-height: 46px !important; /* Taller base input */
    height: auto !important;
}

/* 4. Fix the "X" remove icon alignment */
.care-pilot-modal .ant-select-selection-item-remove {
    line-height: 30px !important;
    display: flex !important;
    align-items: center !important;
}

/* Prevent tags from overflowing the select container */
.care-pilot-modal .ant-select-multiple .ant-select-selector {
    overflow: hidden !important; /* clip anything outside */
    box-sizing: border-box !important;
}

/* Limit individual tag width and truncate long text with ellipsis */
.care-pilot-modal .ant-select-selection-item {
    max-width: 320px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.care-pilot-modal .ant-select-selection-item .ant-select-selection-item-content {
    display: inline-block !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

/* Keep caller country code + phone number on one line as a single visual unit */
.green-header-modal .caller-phone-unit {
    display: flex;
    align-items: stretch;
    width: 100%;
    flex-wrap: nowrap;
}

.green-header-modal .caller-phone-unit .caller-country-code {
    width: 28%;
    min-width: 140px;
    max-width: 190px;
    flex: 0 0 auto;
}

.green-header-modal .caller-phone-unit .caller-phone-number {
    flex: 1 1 auto;
    min-width: 0;
    margin-left: -1px; /* merge borders for single-unit look */
}

.green-header-modal .caller-phone-unit .caller-country-code .ant-select-selector {
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    height: 100% !important;
}

.green-header-modal .caller-phone-unit .caller-phone-number.ant-input-number {
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
    min-height: 40px !important;
    height: 40px !important;
    display: flex;
    align-items: center;
    padding: 0 11px !important;
}

.green-header-modal .caller-phone-unit .caller-country-code .ant-select-selector {
    min-height: 40px !important;
    height: 40px !important;
}

.green-header-modal .caller-phone-unit .caller-phone-number .ant-input-number-input-wrap {
    width: 100%;
}

.green-header-modal .caller-phone-unit .caller-phone-number .ant-input-number-input {
    height: 38px !important;
    line-height: 38px !important;
    padding: 0 !important;
}

