.progress-bar-wrapper {
  max-width: 600px;
  height: auto;
  margin: 0 auto;
  z-index: -1;
  position: relative;
}

.progress-container {
  width: 100%;
  position: absolute;
  top: -350px;
  left: -335px;
  padding: 0;
  transform: rotate(-90deg);
}

.progress-bar-img {
  max-width: 500px;
}

.progress-bar-img img {
  max-width: 100%;
  height: auto;
}

.progress-bar {
  width: 72%;
  height: 40px;
  position: absolute;
  top: 29%;
  right: 0;
  bottom: 0;
  left: 12px;
  border: none;
  border-radius: 30px;
  overflow: hidden;
  background: #333;
  z-index: -1;
}

.progress-bar .fill {
  height: 100%;
  width: 0%; /* start empty */
  transition: width 0.4s ease-in-out;
  background: linear-gradient(90deg, purple, gold);
  animation: pulseGlow 1.5s infinite alternate;
  border-radius: 0;
}

/* Pulsating glow effect */
@keyframes pulseGlow {
  0% {
    box-shadow:
      0 0 10px purple,
      0 0 20px purple;
  }
  50% {
    box-shadow:
      0 0 20px yellow,
      0 0 40px yellow;
  }
  100% {
    box-shadow:
      0 0 25px gold,
      0 0 50px gold;
  }
}

/* Thunder icon styling */
.progress-bar .icon {
  position: absolute;
  right: 28px; /* place outside the bar */
  top: 45%;
  transform: translateY(-50%);
  font-size: 20px;
  color: gold;
  text-shadow:
    0 0 10px yellow,
    0 0 20px gold;
}

@media screen and (max-width: 768px) {
  .progress-bar-wrapper {
    max-width: 470px;
  }
  .progress-container {
    top: -280px;
  }
  .progress-bar {
    width: 87%;
    top: 26%;
  }
}

@media screen and (max-width: 576px) {
  .progress-container {
    position: static;
    transform: none;
    max-width: calc(100% - 32px);
    margin: 4px auto 0;
    width: 100%;
  }
  .progress-bar {
    width: 78%;
    height: 40px;
    top: 23%;
    left: 34px;
  }
}

@media screen and (max-width: 400px) {
  .header img {
    max-width: 180px;
  }
  .progress-bar {
    width: 78%;
    top: 26%;
    left: 40px;
    height: 28px;
  }
}
