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

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

.clock {
    width:350px;
    height:350px;
    display:flex;
    justify-content:center;
    align-items:center;
    background:url(clock.png);
    background-size: contain;
    border: 4px solid #f1f1f1;
    border-radius:50%;
    box-shadow:0 -15px 15px rgba(255, 255,255,0.05), 
                inset 0 -15px 15px rgba(255, 255,255,0.05),
                0 15px 15px rgba(0,0,0,0.1),
                inset 0 15px 15px rgba(0,0,0,0.1);
}

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

.clock .hour,
.clock .min,
.clock .sec {
    position: absolute;
}

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

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

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

.hr, .mn, .sc {
    display:flex;
    justify-content: center;
    border-radius: 50%;
    position:absolute;
}

.hr::before {
    content:'';
    position:absolute;
    height:80px;
    width:8px;
    background-color: black;
    z-index:10;
    border-radius:6px 6px 0 0;
}

.mn::before{
    content:'';
    position:absolute;
    height:calc(190px / 2);
    width:5px;
    background-color: black;
    z-index:11;
    border-radius:6px 6px 0 0;
}

.sc::before{
    content:'';
    position:absolute;
    height:150px;
    width:2px;
    z-index:12;
    background-color: red;
    border-radius:6px 6px 0 0;
}
