.loading_wrap {
    width: 100%;
    height: 100%;
    overflow: hidden;
    background: #fff;
    display: block;
    position: absolute;
  }

  /* ===== Global Responsive Resets ===== */
  html {
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    overflow-x: hidden;
  }

  body {
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }

  /* Ensure touch targets meet minimum 44x44 on mobile */
  @media (max-width: 991px) {
    /* Prevent horizontal overflow */
    html, body {
      overflow-x: hidden !important;
      max-width: 100vw;
    }

    /* Responsive tables */
    .table-responsive {
      -webkit-overflow-scrolling: touch;
    }

    /* Ensure dropdowns don't overflow viewport */
    .dropdown-menu {
      max-width: calc(100vw - 20px) !important;
    }

    /* Ensure modals are usable on mobile */
    .modal-dialog {
      margin: 10px !important;
      max-width: calc(100vw - 20px) !important;
    }

    .modal-body {
      max-height: 70vh;
      overflow-y: auto;
    }

    /* Ensure buttons & links have adequate touch targets */
    .btn {
      min-height: 40px;
    }
  }

  /* Small phone adjustments */
  @media (max-width: 480px) {
    /* Fluid font scaling */
    .main-content-wrap {
      padding-left: 10px !important;
      padding-right: 10px !important;
    }

    .breadcrumb {
      font-size: 12px;
    }

    /* Stack form groups */
    .row > [class*='col-md-'],
    .row > [class*='col-lg-'] {
      padding-left: 8px;
      padding-right: 8px;
    }
  }

  /* Safe area insets for notched devices */
  @supports (padding-bottom: env(safe-area-inset-bottom)) {
    .main-content-wrap {
      padding-bottom: env(safe-area-inset-bottom);
    }
  }

  .loader_logo {
    height: 80px;
    width: 80px;
    position: absolute;
    left: calc(50% - 50px);
    top: 38%;
  }

  .loader_logo img {
    height: 100%;
    width: 100%;
  }

  .loading {
    border: 3px solid rgba(79, 130, 168, 0.45);
    position: absolute;
    left: calc(50% - 40px);
    top: 50%;
    width: 55px;
    height: 55px;
    border-radius: 50%;
    border-top-color: #4F82A8;
    animation: loader 1s ease-in-out infinite;
    -webkit-animation: loader 1s ease-in-out infinite;
  }

  @keyframes loader {
    to {
      -webkit-transform: rotate(360deg);
    }
  }

  @-webkit-keyframes loader {
    to {
      -webkit-transform: rotate(360deg);
    }
  }