[data-bs-theme="light"] {
  --bs-primary: #0090da;
  --bs-text-primary: #0061a0;
  --bs-success: #a4ce4e;
  --bs-success-active: #9dc748;
  --mdc-checkbox-selected-focus-icon-color: #a4ce4e;
  --mdc-checkbox-selected-hover-icon-color: #a4ce4e;
  --mdc-checkbox-selected-icon-color: #a4ce4e;
  --mdc-checkbox-selected-pressed-icon-color: #a4ce4e;
  --mat-option-selected-state-label-text-color: #a4ce4e;
}

html {
  --mdc-filled-text-field-caret-color: #0061a0 !important;
  --mdc-filled-text-field-focus-active-indicator-color: #0061a0 !important;
  --mdc-filled-text-field-focus-label-text-color: #0061a0 !important;
  --mdc-outlined-text-field-caret-color: #0061a0 !important;
  --mdc-outlined-text-field-focus-outline-color: #0061a0 !important;
  --mdc-outlined-text-field-focus-label-text-color: #0061a0 !important;
  --mat-option-label-text-font: "arial" !important;
  --mat-optgroup-label-text-font: "arial" !important;
}

.mat-mdc-tab-group,
.mat-mdc-tab-nav-bar {
  --mdc-tab-indicator-active-indicator-color: #0061a0 !important;
  --mat-tab-header-active-label-text-color: #0061a0 !important;
  --mat-tab-header-active-ripple-color: #0061a0 !important;
  --mat-tab-header-inactive-ripple-color: #0061a0 !important;
  --mat-tab-header-active-focus-label-text-color: #0061a0 !important;
  --mat-tab-header-active-hover-label-text-color: #0061a0 !important;
  --mat-tab-header-active-focus-indicator-color: #0061a0 !important;
  --mat-tab-header-active-hover-indicator-color: #0061a0 !important;
}

.mat-mdc-radio-button.mat-primary {
  --mdc-radio-selected-focus-icon-color: #0061a0 !important;
  --mdc-radio-selected-hover-icon-color: #0061a0 !important;
  --mdc-radio-selected-icon-color: #0061a0 !important;
  --mdc-radio-selected-pressed-icon-color: #0061a0 !important;
  --mat-radio-checked-ripple-color: #0061a0 !important;
}

.btn-blue-metlife {
  background-color: #0090da !important;
}

.btn-green-metlife {
  background-color: #a4ce4e !important;
  color: #fff !important;
}

.btn-skyblue-metlife {
  background-color: #0090da !important;
  color: #000 !important;
  font-weight: normal !important;
}

.btn-gray-metlife {
  background-color: gray !important;
  color: #fff !important;
  font-weight: normal !important;
}

.text-blue-metlife {
  color: #0061a0 !important;
}

.mat-mdc-row {
  font-size: 16px !important;
}

.mat-mdc-header-cell {
  font-size: 16px !important;
}

.col-form-label {
  font-size: 1.1rem !important;
}

.form-check.form-check-solid .form-check-input:not(:checked) {
  background-color: var(--bs-gray-400);
}

.form-check-input:checked {
  background-color: #0090da !important;
}

.btn-blue-dark {
  background-color: #0061a0 !important;
}

.btn-teal {
  background-color: #00aca0 !important;
}

.btn-teal:hover,
.btn-teal::before {
  background-color: #049f95 !important;
}

.mat-tree {
  font-family: "arial" !important;
}

.mat-mdc-icon-button.mat-mdc-button-base {
  --mdc-icon-button-state-layer-size: 30px !important;
  padding: 0px !important;
}

.mat-tree-node {
  min-height: 30px !important;
}

.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-minimal::after,
.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-minimal::after {
  color: #a4ce4e !important;
}

.mat-calendar-controls .mat-mdc-icon-button.mat-mdc-button-base {
  --mdc-icon-button-state-layer-size: 40px !important;
}

/* ===== RESPONSIVE MAT-TABLE STYLES ===== */

/* General responsive table container */
.mat-table-responsive {
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch;
}

/* Responsive breakpoint utilities for table cells */
@media (max-width: 575.98px) {
  /* Extra small devices (phones) */
  .d-xs-none { display: none !important; }
  .d-xs-table-cell { display: table-cell !important; }
}

@media (max-width: 767.98px) {
  /* Small devices (landscape phones) */
  .d-sm-none-mobile { display: none !important; }
  
  /* Make mat-table horizontally scrollable on small screens */
  .mat-table {
    min-width: 100% !important;
    width: auto !important;
  }
  
  /* Reduce padding in table cells on small screens */
  .mat-cell, .mat-header-cell, .mat-footer-cell {
    padding: 8px 4px !important;
    font-size: 12px !important;
  }
  
  /* Reduce header text size */
  .mat-header-cell {
    font-size: 11px !important;
    font-weight: 600 !important;
  }
  
  /* Action buttons responsive sizing */
  .mat-cell .btn {
    padding: 4px 8px !important;
    font-size: 11px !important;
    margin: 1px !important;
  }
  
  .mat-cell .btn-icon {
    width: 28px !important;
    height: 28px !important;
    padding: 4px !important;
  }
}

@media (max-width: 991.98px) {
  /* Medium devices (tablets) */
  .d-md-none-tablet { display: none !important; }
}

/* Priority column system - hide less important columns on smaller screens */
@media (max-width: 575.98px) {
  /* Hide priority 3 columns on extra small screens */
  .mat-table .priority-3 { display: none !important; }
}

@media (max-width: 767.98px) {
  /* Hide priority 2 and 3 columns on small screens */
  .mat-table .priority-2,
  .mat-table .priority-3 { display: none !important; }
}

@media (max-width: 991.98px) {
  /* Hide priority 3 columns on medium screens */
  .mat-table .priority-3 { display: none !important; }
}

/* Ensure table container doesn't overflow */
.mat-table-container {
  max-width: 100%;
  overflow-x: auto;
}

/* Make table wrapper responsive */
.table-responsive-wrapper {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border: 1px solid #dee2e6;
  border-radius: 0.375rem;
}

/* Improve mobile table appearance */
@media (max-width: 767.98px) {
  .mat-table {
    border-collapse: separate;
    border-spacing: 0;
  }
  
  .mat-header-row {
    background-color: #f8f9fa;
  }
  
  .mat-row:nth-child(even) {
    background-color: #f8f9fa;
  }
  
  /* Improve text wrapping */
  .mat-cell {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 150px;
  }
  
  /* Allow text wrapping for action columns */
  .mat-cell.actions-column {
    white-space: normal;
    max-width: none;
  }
}