*{margin:0;padding:0;box-sizing:border-box}body{background:radial-gradient(ellipse at bottom,#1b2735 0%,#090a0f 100%);height:100vh;overflow:hidden;display:flex;justify-content:center;align-items:center;perspective:600px}div{transform-style:preserve-3d}@keyframes rotation-ac926e0a{0%{transform:rotateY(0)}to{transform:rotateY(360deg)}}@keyframes amplitude-ac926e0a{0%{transform:translateY(0)}to{transform:translateY(50px)}}@keyframes amplitudeShadow-ac926e0a{0%{opacity:0;transform:translateY(100px)}to{opacity:1;transform:translateY(0)}}.particles[data-v-ac926e0a]{transform:translateY(-100px)}.camera.x[data-v-ac926e0a]{transform:rotateX(-20deg)}.camerafollow.x[data-v-ac926e0a]{transform:rotateX(20deg)}.part[data-v-ac926e0a]{position:absolute;top:50%;left:calc(50% + 200px)}.graphic[data-v-ac926e0a]{position:absolute;width:12px;height:12px;background:linear-gradient(0deg,#555 0%,#fff 100%);border-radius:100%;transform:translate(-50%,-50%)}.graphic[data-v-ac926e0a]:before{content:"";position:absolute;width:100%;height:100%;top:50px;border-radius:100%;background:linear-gradient(0deg,#fff0 50%,#ffffff1a 100%)}.rotate[data-v-ac926e0a]{animation:rotation-ac926e0a 10s linear infinite reverse}.rotatefollow[data-v-ac926e0a]{animation:rotation-ac926e0a 10s linear infinite}.particle .graphic[data-v-ac926e0a]{animation-name:amplitude-ac926e0a;animation-duration:1s;animation-timing-function:cubic-bezier(.445,.05,.55,.95);animation-iteration-count:infinite;animation-direction:alternate}.particle .graphic[data-v-ac926e0a]:before{background:var(--before-bg);animation:amplitudeShadow-ac926e0a 1s var(--delay) cubic-bezier(.445,.05,.55,.95) infinite alternate}
