/* =============================================
   PAGE LOADER OVERLAY  (from loaderMain.html)
   ============================================= */

.page-loader-overlay {
  position: fixed;
  inset: 0;
  background: #f8fafc;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 99999;
  transition: opacity 0.4s ease;
}

.page-loader-overlay.page-loader-hidden {
  opacity: 0;
  pointer-events: none;
}

/* The spinner itself — identical to loaderMain.html */
.page-loader {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #ffffff;
  box-shadow:
    0 4px 12px rgba(34, 46, 94, 0.08),
    0 12px 32px rgba(34, 46, 94, 0.06),
    inset 0 1px 2px rgba(255, 255, 255, 0.8);
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* First arc — Orange, clockwise */
.page-loader::before {
  content: "";
  position: absolute;
  inset: -3px;
  border-radius: 50%;
  border: 4px solid transparent;
  border-top-color: rgba(231, 106, 5, 1);
  border-right-color: rgba(231, 106, 5, 0.6);
  animation: page-loader-spin 1.5s cubic-bezier(0.4, 0.2, 0.2, 1) infinite;
  filter: drop-shadow(0 0 6px rgba(231, 106, 5, 0.3));
}

/* Second arc — Navy Blue, counter-clockwise */
.page-loader::after {
  content: "";
  position: absolute;
  inset: -3px;
  border-radius: 50%;
  border: 4px solid transparent;
  border-bottom-color: rgba(34, 46, 94, 1);
  border-left-color: rgba(34, 46, 94, 0.6);
  animation: page-loader-spin-reverse 1.5s cubic-bezier(0.4, 0.2, 0.2, 1)
    infinite;
  filter: drop-shadow(0 0 6px rgba(34, 46, 94, 0.3));
}

@keyframes page-loader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes page-loader-spin-reverse {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(-360deg);
  }
}
