.loader-container {
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  background: rgba(0, 0, 0, 0.6) no-repeat center;
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(2px);
}

.loaDer {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 20px;
  color: #555;
}

/* Step Circles */
.loader-steps {
  display: flex;
  justify-content: center;
  margin-top: 20px;
}

.loader-step {
  width: 50px;
  height: 50px;
  background-color: #ddd;
  border-radius: 50%;
  margin: 0 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: background-color 0.3s, transform 0.3s ease;
  font-size: 24px;
  color: #fff;
  position: relative;
}

.loader-step.completed {
  background-color: #28a745; /* Green for completed */
  animation: bounceIn 1s ease; /* Marked Change: Bounce-in effect from animate.css */
}

.loader-step.pending {
  background-color: #3498db; /* Blue for pending */
  animation: pulse 1.5s infinite ease-in-out; /* Marked Change: Pulsing effect for pending */
}

.loader-step.yet {
  background-color: #ccc; /* Grey for yet to be completed */
}

/* Text Animation */
.loader-text {
  font-size: 18px;
  animation-duration: 1s;
  font-weight: bold;
  transition: opacity 0.5s ease, color 0.5s ease; /* Fade-in effect and color transition */
  text-align: center;
  letter-spacing: 0px; /* Add spacing between letters for a modern look */
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2); /* Subtle shadow for depth */
  animation-name: fadeInDown; /* Marked Change: fadeInDown from animate.css */
  color: #fff4f4;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* Style Improvement */
.loader-step i {
  font-size: 22px;
}