@keyframes move {
    100% {
        transform: translate3d(0, 0, 1px) rotate(360deg);
    }
}

.background {
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 100%;
    background: #03183a;
    overflow: hidden;
    z-index: 0; 
}


.background span {
    width: 15vmin;
    height: 15vmin;
    border-radius: 50%;
    position: absolute;
    animation-name: move; 
    animation-duration: 20s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

.background span:nth-child(0) {
    color: #6ca0f4;
    top: 37%;
    left: 2%;
    animation-duration: 19s;
    animation-delay: -64s;
    transform-origin: 21vw -8vh;
    box-shadow: -30vmin 0 4.735021092170977vmin currentColor;
}
.background span:nth-child(1) {
    color: #6ca0f4;
    top: 60%;
    left: 43%;
    animation-duration: 104s;
    animation-delay: -86s;
    transform-origin: 21vw 22vh;
    box-shadow: 30vmin 0 4.098005867591611vmin currentColor;
}
.background span:nth-child(2) {
    color: #00bfff;
    top: 31%;
    left: 61%;
    animation-duration: 94s;
    animation-delay: -22s;
    transform-origin: 6vw -9vh;
    box-shadow: 30vmin 0 4.104922132199907vmin currentColor;
}
.background span:nth-child(3) {
    color: #6ca0f4;
    top: 71%;
    left: 75%;
    animation-duration: 54s;
    animation-delay: -91s;
    transform-origin: 9vw 22vh;
    box-shadow: 30vmin 0 3.782607532873395vmin currentColor;
}
.background span:nth-child(4) {
    color: #00bfff;
    top: 31%;
    left: 43%;
    animation-duration: 48s;
    animation-delay: -39s;
    transform-origin: 6vw -6vh;
    box-shadow: 30vmin 0 4.638628259997477vmin currentColor;
}
.background span:nth-child(5) {
    color: #00bfff;
    top: 4%;
    left: 17%;
    animation-duration: 122s;
    animation-delay: -43s;
    transform-origin: 5vw 12vh;
    box-shadow: 30vmin 0 4.541798566666814vmin currentColor;
}
.background span:nth-child(6) {
    color: #3118ec;
    top: 89%;
    left: 40%;
    animation-duration: 32s;
    animation-delay: -50s;
    transform-origin: 15vw -15vh;
    box-shadow: -30vmin 0 4.440083869621551vmin currentColor;
}
.background span:nth-child(7) {
    color: #6ca0f4;
    top: 6%;
    left: 90%;
    animation-duration: 115s;
    animation-delay: -20s;
    transform-origin: -2vw -16vh;
    box-shadow: 30vmin 0 3.9096420338925553vmin currentColor;
}
.background span:nth-child(8) {
    color: #3118ec;
    top: 73%;
    left: 47%;
    animation-duration: 64s;
    animation-delay: -88s;
    transform-origin: 15vw 25vh;
    box-shadow: -30vmin 0 4.080571630003418vmin currentColor;
}
.background span:nth-child(9) {
    color: #00bfff;
    top: 20%;
    left: 2%;
    animation-duration: 67s;
    animation-delay: -5s;
    transform-origin: -19vw -5vh;
    box-shadow: 30vmin 0 4.022271398130572vmin currentColor;
}
.background span:nth-child(10) {
    color: #6ca0f4;
    top: 50%;
    left: 3%;
    animation-duration: 69s;
    animation-delay: -79s;
    transform-origin: -10vw 1vh;
    box-shadow: 30vmin 0 4.018864192726557vmin currentColor;
}
.background span:nth-child(11) {
    color: #6ca0f4;
    top: 68%;
    left: 63%;
    animation-duration: 97s;
    animation-delay: -44s;
    transform-origin: -15vw 2vh;
    box-shadow: -30vmin 0 4.282526008678353vmin currentColor;
}
.background span:nth-child(12) {
    color: #6ca0f4;
    top: 87%;
    left: 24%;
    animation-duration: 47s;
    animation-delay: -99s;
    transform-origin: 17vw 14vh;
    box-shadow: -30vmin 0 4.362405026277541vmin currentColor;
}
.background span:nth-child(13) {
    color: #3118ec;
    top: 42%;
    left: 10%;
    animation-duration: 97s;
    animation-delay: -15s;
    transform-origin: -11vw -4vh;
    box-shadow: 30vmin 0 3.7778945127196355vmin currentColor;
}
.background span:nth-child(14) {
    color: #3118ec;
    top: 11%;
    left: 1%;
    animation-duration: 53s;
    animation-delay: -100s;
    transform-origin: -6vw 9vh;
    box-shadow: 30vmin 0 4.363895822470819vmin currentColor;
}
.background span:nth-child(15) {
    color: #6ca0f4;
    top: 36%;
    left: 14%;
    animation-duration: 99s;
    animation-delay: -29s;
    transform-origin: 22vw -20vh;
    box-shadow: 30vmin 0 4.5191564752719415vmin currentColor;
}
.background span:nth-child(16) {
    color: #00bfff;
    top: 96%;
    left: 35%;
    animation-duration: 7s;
    animation-delay: -34s;
    transform-origin: 23vw -2vh;
    box-shadow: -30vmin 0 3.9367506724701533vmin currentColor;
}
