*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
body {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    background: #000;
    overflow: hidden;
}
.container{
    position: absolute;
    top: 20%;
    height: 90%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.circle{
    position: absolute;
    background: transparent;
    width: calc(var(--i) * 2.5vmin);
    aspect-ratio: 1;
    border-radius: 50%;
    border: 3px solid rgb(0,255,13);
    transform-style: preserve-3d;
    transform: rotatex(70deg) translatez(50px);
    animation: animate 3s ease-in-out calc(var(--i) * 0.08s) infinite;
    box-shadow: 0 0 15px rgb(124,124,124),inset 0 0 15px rgb(124,124,124);
}
@keyframes animate {
    0%,
    100%{
        transform: rotateX(70deg) translateZ(50px) translateY(0);
        filter: hue-rotate(0);
    }
    50%{
        transform: rotateX(70deg) translatez(50px) translateY(-50vmin);
        filter: hue-rotate(360deg);
    }
}