#animation-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: white;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

#animation-overlay #animLogo {
  width: 200px;
  opacity: 0;
  transition: opacity 1s;
  position: absolute;
  top: 38%;
  left: 50%;
  transform: translate(-50%, -50%);
}

#animation-overlay .orbite-container {
  position: absolute;
  top: 30%;
  left: 50%;
  width: 200px;
  height: 200px;
  transform: translate(-50%, -50%);
  animation: rotation 4s linear infinite;
}

#animation-overlay .balle {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  box-shadow: 0 4px 8px rgba(0,0,0,0.2);
  transition: transform 1s ease-in-out, opacity 0.8s ease-in-out;
}

#animation-overlay .balle.vert { background-color: #9ac83e; transform: translate(-50%, -50%) rotate(240deg) translateX(80px); }
#animation-overlay .balle.bleu { background-color: #3da5d9; transform: translate(-50%, -50%) rotate(0deg) translateX(80px); }
#animation-overlay .balle.jaune { background-color: #f4b942; transform: translate(-50%, -50%) rotate(120deg) translateX(80px); }

@keyframes rotation {
  0% { transform: translate(-50%, -50%) rotate(0deg); }
  100% { transform: translate(-50%, -50%) rotate(360deg); }
}

.stop-rotation { animation-play-state: paused !important; }
.centrer { transform: translate(-50%, -50%) !important; }
