.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: #1262ab !important;
    --bs-btn-border-color: #1262ab !important;
    --bs-btn-hover-bg: #0b3963 !important;
    --bs-btn-hover-border-color: #0b3963;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #1262ab;
    --bs-btn-active-border-color: #1262ab;
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #a7caff;
    --bs-btn-disabled-border-color: #a7caff;
  }

  .btn-outline-primary {
    --bs-btn-color: #1262ab !important;
    --bs-btn-border-color: #1262ab !important;
    --bs-btn-hover-color: #fff !important;
    --bs-btn-hover-bg: #1262ab !important;
    --bs-btn-hover-border-color: #1262ab;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #1262ab;
    --bs-btn-active-border-color: #1262ab;
    --bs-btn-disabled-color: #1262ab;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #1262ab;
    --bs-gradient: none;
}




.py-2-5 {
  padding-top: 0.7rem !important;
  padding-bottom: 0.7rem !important;
}

input[type="date"]::-webkit-calendar-picker-indicator {
  opacity: 0 !important;
}

input[readonly] {
  border: 1px solid #ddd !important;
}

.custom-file-placeholder {
  border: 1px solid #ccc;
  padding: 0.5rem 0.75rem;
  border-radius: 0.375rem;
  background-color: #fff;
  cursor: pointer;
  color: #6c757d;
  font-size: 0.875rem;
  min-height: 38px;
  line-height: 1.5;
  display: flex;
  align-items: center;
}


input::placeholder,
textarea::placeholder,
select::placeholder {
  font-size: 12px;
  font-weight: 600;
  color: #6c757d;
  /* Make placeholder same weight as form controls */
}

/* Make select elements use same font size as input placeholders for consistency */
/* select.text-small {
  font-size: 14px !important;
  font-weight: 600 !important;
} */


:focus {
  box-shadow: none !important;
  outline: none !important;
}

/* 
  input[name="dealValue"] {
    padding: 0.875rem 60px !important;
  } */
.text-danger.d-block.fs-xs.mt-1.text-weight-normal-gordita {
  font-size: 12.5px;
}

.phoneFormInput .dropdown {
  position: relative !important;
  z-index: 10;
  height: auto !important;
  min-height: 44px;
  background: transparent;
  display: block;
  width: auto !important;
  min-width: 90px;
  top: auto !important;
  transform: none !important;
  border: none !important;
  flex-shrink: 0;
}

.phoneFormInput .dropdown button {
  background: #f8f9fa !important;
  border: 1px solid #ced4da !important;
  border-right: none !important;
  border-radius: 0.25rem 0 0 0.25rem !important;
  position: relative !important;
  width: auto !important;
  height: 100% !important;
  min-height: 48px !important;
  min-width: 90px !important;
  inset: auto !important;
  margin: 0 !important;
  padding: 0.5rem 0.75rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #495057 !important;
}

.phoneFormInput .dropdown button::after {
  display: none !important;
}

.phoneFormInput img {
  width: 24px !important;
  height: auto;
  object-fit: contain;
}

.dropdown-item img {
  width: 24px !important;
  height: auto;
  object-fit: contain;
}

.phoneFormInput input {
  padding: 0.5rem 1rem !important;
  padding-left: 1rem !important;
  min-height: 44px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  border-radius: 0 0.25rem 0.25rem 0 !important;
  margin-top: 0 !important;
  border-left: none !important;
  flex: 1;
}

/* Ensure phone input uses text-small styling consistently */
.phoneFormInput input {
  font-size: 12px !important;
  font-weight: 600 !important;
}

/* Newsletter checkbox styling */
.subscribe-checkbox .form-check-label {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #222222 !important;
  font-family: "Manrope", sans-serif !important;
}

/* Ensure proper connection between dropdown and input */
/* .phoneFormInput .dropdown button:focus {
  z-index: 3;
  box-shadow: 0 0 0 0.2rem rgba(17, 97, 171, 0.25) !important;
} */

/* .phoneFormInput input:focus {
  z-index: 2;
  border-color: #1262ab !important;
  border-left: none !important;
  box-shadow: 0 0 0 0.2rem rgba(17, 97, 171, 0.25) !important;
} */

/* Mobile responsive adjustments */
@media (max-width: 576px) {
  .phoneFormInput .dropdown {
    min-width: 80px !important;
  }

  .phoneFormInput .dropdown button {
    min-width: 80px !important;
    padding: 0.5rem !important;
    font-size: 12px !important;
    font-weight: 600 !important;
  }

  .phoneFormInput input {
    padding: 0.5rem 0.75rem !important;
  }

  .phoneFormInput img {
    width: 20px !important;
  }

  /* Ensure dropdown menu is properly positioned on mobile */
  .phoneFormInput .dropdown-menu {
    max-height: 300px;
    overflow-y: auto;
    min-width: 250px !important;
    left: 0 !important;
    margin-top: 0.25rem !important;
  }

  .phoneFormInput .dropdown-item {
    padding: 0.5rem 1rem !important;
    min-height: 40px !important;
    display: flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
  }
}

.custom-dialog-margin {
    margin-top: 50px !important;
}

/* .my-offcanvas-body {
    margin-top: 60px !important;
    background-color: #f8f9fa;
} */
.accordion-button {
    padding: 12px 0 !important;
    align-items: start !important;
}

.accordion-button::after {
    right: 0px;
    margin: 5px 0;
}

.accordion-button:focus {
    box-shadow: none !important;
    border-bottom: 1px solid;
    border-color: transparent;
}

.accordion-button:not(.collapsed) {
    background-color: transparent !important;
    border-color: #0C3963;
    color: #0C3963 !important;
    font-size: 15px;
}

.accordion-button:hover {
    z-index: 0 !important;
}

.accordion-button:focus {
    z-index: 0 !important;
    outline: 0;
    box-shadow: var(--bs-accordion-btn-focus-box-shadow);
}
.custom-carousel .slick-dots {
    position: static;
    width: fit-content;
    padding: 3px 4px 0px;
    margin: 0 auto;
    display: flex !important;
    background: transparent;
    border-radius: 50px;
    height: fit-content;
}

.dealDetailsCarousel .custom-carousel .slick-dots {
    position: absolute;
    top: 8px;
    right: 11px;
}

.slick-slide img {
    height: 100%;
}

.custom-carousel .slick-dots li {
    width: 10px;
    height: auto;
    margin: 0 5px;
    padding: 0;
}

.custom-carousel .slick-dots li button {
    width: auto;
    height: auto;
    padding: 0px;
}

.custom-carousel .slick-dots li button:before {
    position: static;
}


.custom-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    background: white;
    width: 30px;
    height: 30px;
    line-height: 28px;
    text-align: center;
    border-radius: 1px;
    box-shadow: 0 0 6px rgba(0, 0, 0, 0.15);
    font-size: 25px;
}

.custom-arrow-left {
    left: -25px;
}

.custom-arrow-right {
    right: -25px;
}


.rg .slide-item {
    padding: 10px !important;
}

.rg .slide-item img {
    border: 1px solid #ddd;
}

.rg .slick-dots li button:before {
    font-size: 12px;
}

.lightboxCarousel .slick-track {
    display: flex;
    align-items: center;
}

.thumb-nav-btn {
    background: #f8f9fa;
    border: 1px solid #ddd;
    padding: 4px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.2s ease;
}

.thumb-nav-btn:hover:not(:disabled) {
    background: #1463ad;
    border-color: #1463ad;
}

.thumb-nav-btn:hover:not(:disabled) svg path {
    fill: #fff;
}

.thumb-nav-btn:disabled {
    opacity: 0.4;
    cursor: not-allowed;
}
.MuiFormHelperText-root {
    font-family: 'Soleto', sans-serif !important;
    font-weight: 500 !important;
    font-size: 12.5px !important;
    color: #dc3545 !important;
    /* Bootstrap 'text-danger' color */
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-top: 0 !important;
}

.MuiPickersOutlinedInput-sectionsContainer {
    font-size: 14px;
    font-weight: 590 !important;
    font-family: "Manrope", sans-serif !important;

}

.MuiPickersInputBase-root.MuiPickersOutlinedInput-root.MuiPickersInputBase-fullWidth.MuiPickersInputBase-colorPrimary.MuiPickersInputBase-inputSizeSmall.MuiPickersInputBase-adornedEnd.w-100.text-small.css-1hgcujo-MuiPickersInputBase-root-MuiPickersOutlinedInput-root {
    height: 47px !important;
}


.MuiPickersInputBase-root.MuiPickersOutlinedInput-root.MuiPickersInputBase-fullWidth.MuiPickersInputBase-colorPrimary.MuiPickersInputBase-adornedEnd.w-100.text-small.css-1hgcujo-MuiPickersInputBase-root-MuiPickersOutlinedInput-root {
    height: 49px !important;
}


.fullWidth.MuiPickersInputBase-colorPrimary.MuiPickersInputBase-inputSizeSmall.MuiPickersInputBase-adornedEnd.w-100.text-small.css-1hgcujo-MuiPickersInputBase-root-MuiPickersOutlinedInput-root {
    border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.MuiPickersInputBase-root.MuiPickersOutlinedInput-root.MuiPickersInputBase-fullWidth.MuiPickersInputBase-colorPrimary.MuiPickersInputBase-adornedEnd.w-100.text-small.css-18qp6qv {
    height: 46px !important;
}

.MuiPickersSectionList-root.MuiPickersInputBase-sectionsContainer.css-gfka5e-MuiPickersSectionList-root-MuiPickersInputBase-sectionsContainer-MuiPickersOutlinedInput-sectionsContainer {
    font-size: 14px;
    font-weight: 590 !important;
    font-family: "Manrope", sans-serif !important;
}

.MuiPickersSectionList-root.MuiPickersInputBase-sectionsContainer.css-15395ss-MuiPickersSectionList-root-MuiPickersInputBase-sectionsContainer-MuiPickersOutlinedInput-sectionsContainer {
    /* font-weight: 590 !important; */
    font-family: "Manrope", sans-serif !important;

    /* line-height: 21px; */
}
.pagination .page-link {
  border: 0;
  outline: none;
  box-shadow: none;
  /* color: #0b3963; */
}

.table>thead {
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  vertical-align: bottom;
}

table tr th {
  background-color: #F3F4F6 !important;
  /* color: rgb(21, 16, 16) !important; */
  padding: 0.5rem 0;
}

table tr th:first-child {
  padding-left: 0.6rem;
}
table tr td {
  padding: 0.5rem 0;
}

table tr td:first-child {
  padding-left: 0.6rem;
}


/* .pagination-sm-custom .page-item:not(.disabled) .page-link:hover,
.pagination-sm-custom .page-item:not(.disabled) .page-link:focus,
.pagination-sm-custom .page-item:not(.disabled):hover .black {
  color: rgb(234, 221, 221) !important;
}

.pagination-sm-custom .page-item:not(.disabled) .page-link:hover,
.pagination-sm-custom .page-item:not(.disabled) .page-link:focus,
.pagination-sm-custom .page-item:not(.disabled):hover .black {
  background-color: #1161ab !important;
}

.custom-pagination-sm .page-link {
  font-size: 14px !important;
} */

a.page-link {
  font-size: 14px;
}

span.page-link {
  font-size: 14px;
}

/* th.text-small.text-black {
  text-align: center !important;
}

td.position-relative {
  text-align: center !important;
}

td.black {
  text-align: center !important;
} */

.text-main-color {
  color: #1161AB !important;
}

.text-primary {
  color: #1161AB !important;
}


/* td, th {
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 115px;
    white-space: nowrap;
} */


.pagination-sm .page-link {
  padding: 0.25rem 0.6rem;
  font-size: 0.875rem;
}

.pagination .page-item.active .page-link {
  background-color: #0d6efd;
  border-color: #0d6efd;
  color: #fff;
}

.pagination .page-item.disabled .page-link {
  opacity: 0.6;
  pointer-events: none;
}

.pagination-sm-custom .page-item .page-link {
  padding: 0.35rem 0.75rem;
  font-size: 0.875rem;
  border-radius: 0.25rem;
  color: #212529;
  border: 1px solid #dee2e6;
  background-color: #fff;
  transition: all 0.2s ease;
}

.pagination-sm-custom .page-item .page-link:hover {
  background-color: #f8f9fa;
  color: #0d6efd;
  border-color: #0d6efd;
}

.pagination-sm-custom .page-item.active .page-link {
  background-color: #0d6efd;
  color: #fff;
  border-color: #0d6efd;
}

.pagination-sm-custom .page-item.disabled .page-link {
  opacity: 0.6;
  pointer-events: none;
  background-color: #e9ecef;
}

.pagination-sm-custom .page-item {
  display: flex;
  align-items: center;
}

.pagination-sm-custom .page-item .d-flex {
  display: flex;
  align-items: center;
  gap: 4px;
  color: #212529;
  font-size: 0.875rem;
}

.pagination-sm-custom .page-item .d-flex svg {
  width: 16px;
  height: 16px;
}

/* tr:not(:last-child) {
  border-bottom: 1px solid #ddd;
} */
/* tr:last-child {
  border-bottom: none !important;
} */

/* td.black {
  font-size: 14px;
} */

.pagination .active .page-link {
  background: #0b3963;
  border-radius: 2px;
}

.pagination .disabled>.page-link,
.page-link.disabled {
  background-color: transparent !important;
}

/* .container-fluid {
  box-shadow: 1px -20px 20px 17px rgba(0, 0, 0, 0.1);
} */

.custom-table-wrapper {
  overflow: visible;
  position: relative;
  padding-bottom: 100px;
}


.tableDropdown.dropdown-menu.show {
  margin-right: 12px;
  margin-top: -46px;
  padding: 4px 6px;
  min-width: auto;
  border-radius: 4px;
  z-index: 1060 !important;
  background: #f5f5f5;
  border: 1px solid #e6e6e6;
  /* right: -40px !important; */
}

/* Mobile-specific improvements for table dropdown */
@media (max-width: 768px) {
  .tableDropdown.dropdown-menu.show {
    margin-right: 8px;
    margin-top: -48px;
    min-width: 120px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    border: 1px solid #ddd;
    background: #fff;
  }
}

.tableDropdown .dropdown-item {
  padding: 1px 6px;
  font-size: 14px;
  line-height: 22px;
}

/* Mobile touch targets for dropdown items */
@media (max-width: 768px) {
  /* .tableDropdown .dropdown-item {
    padding: 8px 12px;
    font-size: 14px;
    line-height: 20px;
    min-height: 44px;
    display: flex;
    align-items: center;
    border: none;
    background: none;
    width: 100%;
    text-align: left;
    touch-action: manipulation;
  } */

  .tableDropdown .dropdown-item:hover {
    background-color: #f8f9fa;
  }

  .tableDropdown .dropdown-item:active {
    background-color: #e9ecef;
  }
}




/* .regularTable .dropdown-menu.show::before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-left: 12px solid #ebebeb;
    border-bottom: 6px solid transparent;
    top: 50%;
    transform: translateY(-50%);
    right: -12px;
} */

.regularTable .dropdown-item {
  padding: 1px 8px !important;
  font-size: 13px;
}

/* .dropdown-menu {
  z-index: 9999 !important;
} */

/* Highlight entire row on hover with black text */
/* table.css */
.table-hover tbody tr:hover {
  background-color: #000000 !important;
  /* Black background */
  color: white !important;
  /* Optional: make text readable */
}

/* .custom-switch-size .form-check-input {
  font-size: 1.875rem !important;
} */
.disabled-item {
  color: #5b6064 !important;
  /* Bootstrap's default disabled text color */
  pointer-events: none;
  background-color: #676f77;
  /* Optional: light grey background */
  opacity: 0.65;
}


/* In your CSS */
.force-dropdown-visible {
  z-index: 9999 !important;
  position: absolute !important;
}


.active-tab {
  background-color: #e8f0fe !important;
  color: #0d6efd !important;
}

.toggle-switch-wrapper button {
  transition: all 0.2s ease-in-out;
}
.toggle-switch {
    display: flex;
    align-items: center;
    gap: 8px;
  }
  
  .toggle-switch-checkbox {
    display: none;
  }
  
  .toggle-switch-label {
    display: inline-block;
    width: 50px;
    height: 24px;
    position: relative;
    cursor: pointer;
  }
  
  .toggle-switch-inner {
    background-color: #ccc;
    border-radius: 24px;
    position: absolute;
    width: 100%;
    height: 100%;
    transition: background-color 0.3s;
  }

  .uploadModal .toggle-switch-inner {
    background-color: #0a53be;
  }
  
  .toggle-switch-switch {
    background: white;
    border-radius: 50%;
    position: absolute;
    height: 20px;
    width: 20px;
    left: 2px;
    top: 2px;
    transition: transform 0.3s;
  }
  
  .toggle-switch-checkbox:checked + .toggle-switch-label .toggle-switch-inner {
    background-color: #0a53be;
  }
  
  .toggle-switch-checkbox:checked + .toggle-switch-label .toggle-switch-switch {
    transform: translateX(26px);
  }
  
/* 
 * Responsive Design Fixes
 * Mobile-first responsive optimizations for better mobile experience
 */

/* Prevent iOS zoom on input focus by ensuring 16px minimum font size */
@media screen and (max-width: 767px) {
  /* input[type="text"],
  input[type="email"], 
  input[type="password"],
  input[type="tel"],
  input[type="url"],
  input[type="search"],
  input[type="number"],
  input[type="date"],
  input[type="datetime-local"],
  select,
  textarea {
    font-size: 16px !important;
    min-height: 44px; 
  } */

/* 
  .btn,
  button {
    min-height: 44px;
    min-width: 44px;
    padding: 8px 16px;
  } */

  /* Make small buttons larger on mobile for better touch experience */
  .btn-sm {
    min-height: 40px;
    padding: 6px 12px;
    font-size: 14px;
  }

  /* Improve spacing for mobile touch */
  .form-group,
  .mb-3 {
    margin-bottom: 1.5rem;
  }

  /* Better mobile table experience */
  /* .table-responsive {
    border: none;
    -webkit-overflow-scrolling: touch;
  } */

  /* Hide desktop-only elements on mobile */
  .d-none.d-lg-block {
    display: none !important;
  }

  /* Improve mobile modals */
  /* .modal-dialog {
    margin: 0.5rem;
    max-width: calc(100% - 1rem);
  } */

  /* .modal-content {
    border-radius: 12px;
  } */

  /* Better mobile navigation touch targets */
  .nav-link,
  .navbar-nav .nav-link {
    padding: 12px 16px;
    min-height: 44px;
    display: flex;
    align-items: center;
  }

  /* Improve card spacing on mobile */
  .card {
    margin-bottom: 1rem;
  }

  /* Better mobile typography */
  /* h1, .h1 { font-size: clamp(1.8rem, 5vw, 2.5rem); }
  h2, .h2 { font-size: clamp(1.5rem, 4vw, 2rem); }
  h3, .h3 { font-size: clamp(1.3rem, 3.5vw, 1.75rem); }
  h4, .h4 { font-size: clamp(1.1rem, 3vw, 1.5rem); }
  h5, .h5 { font-size: clamp(1rem, 2.5vw, 1.25rem); }
  h6, .h6 { font-size: clamp(0.9rem, 2vw, 1rem); } */

  /* Responsive padding for containers */
  .container,
  .container-fluid {
    padding-left: 15px;
    padding-right: 15px;
  }

  /* Better mobile tables - convert to cards */
  .mobile-card-table {
    display: block;
  }

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

  /* Mobile table improvements */
  /* .table-responsive {
    position: relative;
  } */
/* 
  .table-responsive::after {
    content: "→";
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 18px;
    color: #666;
    pointer-events: none;
    opacity: 0.7;
  } */

  /* Mobile scrolling hint */
  .table-responsive:not(:hover)::after {
    animation: pulse-right 2s infinite;
  }

  @keyframes pulse-right {
    0%, 100% { opacity: 0.7; transform: translateY(-50%) translateX(0); }
    50% { opacity: 1; transform: translateY(-50%) translateX(5px); }
  }
}

/* Tablet optimizations */
@media screen and (min-width: 768px) and (max-width: 991px) {
  /* Tablet-specific touch targets */
  /* .btn {
    min-height: 42px;
    padding: 8px 20px;
  } */

  /* Better tablet modals */
  /* .modal-dialog {
    max-width: 90%;
    margin: 1.75rem auto;
  } */
}

/* Desktop optimizations */
/* @media screen and (min-width: 992px) {
  .btn {
    min-height: 38px;
    min-width: auto;
  }
} */

/* High DPI display optimizations */
@media screen and (-webkit-min-device-pixel-ratio: 2), 
       screen and (min-resolution: 192dpi) {
  /* Ensure crisp borders on high DPI displays */
  /* .border,
  .card,
  .btn {
    border-width: 0.5px;
  } */
}

/* Landscape phone optimizations */
@media screen and (max-height: 500px) and (orientation: landscape) {
  /* Reduce modal padding in landscape */
  .modal-body {
    padding: 1rem;
  }

  /* Smaller headers in landscape */
  h1, .h1 { font-size: 1.5rem; }
  h2, .h2 { font-size: 1.3rem; }
  h3, .h3 { font-size: 1.1rem; }
}

/* Accessibility improvements */
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* Focus improvements for keyboard navigation */
.btn:focus,
.form-control:focus,
.form-select:focus {
  box-shadow: 0 0 0 0.2rem rgba(17, 97, 171, 0.25);
  border-color: #1161AB;
}

/* Better touch feedback */
@media (hover: none) {
  .btn:hover {
    transform: none;
  }
  
  .btn:active {
    transform: scale(0.98);
  }
}

/* Mobile Navigation & Touch Target Enhancements */
@media screen and (max-width: 768px) {
  /* Touch Target Standards - WCAG 2.1 AAA Compliance */
  /* button,
  .btn,
  [role="button"],
  a:not(.nav-link),
  input[type="submit"],
  input[type="button"],
  input[type="reset"],
  .clickable {
    min-height: 44px !important;
    min-width: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  } */

  /* Enhanced Form Controls */


  /* Enhanced Focus States for Accessibility */
  /* input:focus,
  textarea:focus,
  select:focus,
  button:focus,
  .btn:focus {
    outline: none !important;
    border-color: #1161AB !important;
    box-shadow: 0 0 0 3px rgba(17, 97, 171, 0.25) !important;
  } */

  /* Mobile-Optimized Checkboxes and Radio Buttons */
  /* input[type="checkbox"],
  input[type="radio"] {
    min-width: 20px !important;
    min-height: 20px !important;
    margin: 8px !important;
    transform: scale(1.2) !important;
  } */

  /* Enhanced Dropdown Touch Targets */
  .dropdown-toggle {
    min-height: 44px !important;
    padding: 12px 16px !important;
  }

  /* .dropdown-item {
    padding: 12px 20px !important;
    min-height: 44px !important;
    display: flex !important;
    align-items: center !important;
  } */

  /* Mobile-Specific Navigation Improvements */
  .nav-link {
    padding: 12px 20px !important;
    min-height: 44px !important;
    display: flex !important;
    align-items: center !important;
  }

  /* Mobile Content Spacing */
  .container,
  .container-fluid {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  /* Mobile Typography Scaling */
  /* h1, .h1 { font-size: clamp(1.75rem, 5vw, 2.5rem) !important; }
  h2, .h2 { font-size: clamp(1.5rem, 4vw, 2rem) !important; }
  h3, .h3 { font-size: clamp(1.25rem, 3.5vw, 1.75rem) !important; }
  h4, .h4 { font-size: clamp(1.1rem, 3vw, 1.5rem) !important; }
  h5, .h5 { font-size: clamp(1rem, 2.5vw, 1.25rem) !important; }
  h6, .h6 { font-size: clamp(0.9rem, 2vw, 1rem) !important; } */

  /* Mobile Card Enhancements */
  .card {
    border-radius: 12px !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08) !important;
    margin-bottom: 20px !important;
  }

  .card-body {
    padding: 20px !important;
  }

  /* Mobile Modal Improvements */
  /* .modal-dialog {
    margin: 20px !important;
    max-width: calc(100% - 40px) !important;
  } */

  /* .modal-content {
    border-radius: 16px !important;
    border: none !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2) !important;
  } */

  .modal-header {
    padding: 20px 24px !important;
    border-bottom: 1px solid #f0f0f0 !important;
  }

  .modal-body {
    padding: 24px !important;
  }

  .modal-footer {
    padding: 20px 24px !important;
    border-top: 1px solid #f0f0f0 !important;
  }

  /* Enhanced Table Responsiveness */
    .table-responsive {
        border-radius: 5px !important;
        /* box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08) !important; */
        margin-bottom: 20px !important;
        border: 1px solid #ccc;
        /* border-top: 0; */
    }

  /* .table-responsive::after {
    content: "→ Scroll to see more";
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 14px;
    color: #666;
    pointer-events: none;
    opacity: 0.8;
    background: linear-gradient(90deg, transparent, white 20%);
    padding-left: 20px;
  } */

  /* Mobile Form Spacing */
  .form-group,
  .mb-3,
  .my-3 {
    margin-bottom: 24px !important;
  }

  /* Enhanced Link Touch Targets */
  /* a:not(.btn):not(.nav-link) {
    padding: 8px 4px !important;
    margin: -8px -4px !important;
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
  } */
}

/* Tablet-Specific Optimizations */
@media screen and (min-width: 769px) and (max-width: 1024px) {
  /* .container {
    padding-left: 24px !important;
    padding-right: 24px !important;
  } */

  /* Tablet touch targets */
  /* button,
  .btn {
    min-height: 40px !important;
    padding: 10px 20px !important;
  } */

}

/* High DPI Display Enhancements */
@media screen and (-webkit-min-device-pixel-ratio: 2), 
       screen and (min-resolution: 192dpi) {
  .border,
  .card,
  .btn,
  .form-control {
    border-width: 0.5px !important;
  }
}


