* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #111;
}

.container {
    position: relative;
}

.container .circle {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    animation: 2s ease-in infinite alternate;
}

.container .circle:nth-child(1) {
    width: 180px;
    height: 180px;
    top: -60px;
    left: -60px;
    background: linear-gradient(
        #e524c3, #8626b2
    );
    animation-name: move-up;
}

@keyframes move-up {
    to {
        transform: translateY(-10px);
    }
}

.container .circle:nth-child(2) {
    width: 120px;
    height: 120px;
    bottom: -20px;
    right: -20px;
    background: linear-gradient(
        #d64612, #e48307
    );
    animation-name: move-down;
}

@keyframes move-down {
    to {
        transform: translateY(10px);
    }
}

.clock {
    width: 350px;
    height: 350px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid rgba(255, 255, 255, .1);
    border-radius: 50%;
    backdrop-filter: blur(15px);
    background: rgba(255, 255, 255, .05);
    box-shadow: 0 0 30px rgba(0, 0, 0, .2);
}

.clock .clock-bg img {
    width: 100%;
    height: 100%;
}

.clock::before {
    content: '';
    position: absolute;
    width: 15px;
    height: 15px;
    background: #fff;
    border-radius: 50%;
    z-index: 15;
}

.clock .hour,
.clock .minute,
.clock .second {
    position: absolute;
}

.clock .hour,
.clock .hour .hr {
    width: 160px;
    height: 160px;
}

.clock .minute,
.clock .minute .min {
    width: 190px;
    height: 190px;
}

.clock .second,
.clock .second .sec {
    width: 230px;
    height: 230px;
}

.clock .hour .hr,
.clock .minute .min,
.clock .second .sec {
    display: flex;
    justify-content: center;
    position: absolute;
    border-radius: 50%;
}

.clock .hour .hr::before {
    content: '';
    position: absolute;
    width: 8px;
    height: 80px;
    background: #ff3d68;
    z-index: 10;
    border-radius: 10px;
}

.clock .minute .min::before {
    content: '';
    position: absolute;
    width: 4px;
    height: 90px;
    background: #39a2db;
    z-index: 11;
    border-radius: 8px;
}

.clock .second .sec::before {
    content: '';
    position: absolute;
    width: 3px;
    height: 140px;
    background: #fff;
    z-index: 12;
    border-radius: 2px;
}
