@import url("./../lib.css");

.orbit-container {
  position: relative;
  pointer-events: none;
}

/* Concentric circles */
.circle {
  position: absolute;
  border: 1px solid var(--color-weak);
  border-radius: 50%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.circle-1 {
  width: 300px;
  height: 300px;
}
.circle-2 {
  width: 500px;
  height: 500px;
}
.circle-3 {
  width: 720px;
  height: 720px;
}

/* Dots */
.dot {
  position: absolute;
  border-radius: 50%;
  top: 50%;
  left: 50%;
}

/* Dot sizes, colors, and positions */
.dot-1 {
  width: 24px;
  height: 24px;
  background: var(--color-blue);
  transform: translate(-50%, -50%) translateY(-150px); /* Half of circle-1 width */
  animation: orbit 50s linear infinite;
}

.dot-2 {
  width: 18px;
  height: 18px;
  background: #e498ff;
  transform: translate(-50%, -50%) translateY(-250px); /* Half of circle-2 width */
  animation: orbit-2 80s linear infinite reverse;
}

.dot-3 {
  width: 32px;
  height: 32px;
  background: var(--color-gradient); /* 50% opacity */
  transform: translate(-50%, -50%) translateY(-360px); /* Half of circle-3 width */
  animation: orbit-3 100s linear infinite;
}

/* Orbit animations */
@keyframes orbit {
  0% {
    transform: translate(-50%, -50%) rotate(0deg) translateY(-150px)
      rotate(0deg);
  }
  100% {
    transform: translate(-50%, -50%) rotate(360deg) translateY(-150px)
      rotate(-360deg);
  }
}

@keyframes orbit-2 {
  0% {
    transform: translate(-50%, -50%) rotate(120deg) translateY(-250px)
      rotate(-120deg);
  }
  100% {
    transform: translate(-50%, -50%) rotate(480deg) translateY(-250px)
      rotate(-480deg);
  }
}

@keyframes orbit-3 {
  0% {
    transform: translate(-50%, -50%) rotate(240deg) translateY(-360px)
      rotate(-240deg);
  }
  100% {
    transform: translate(-50%, -50%) rotate(600deg) translateY(-360px)
      rotate(-600deg);
  }
}
