body{
    margin: 0%;
    width: 100vw;
    height: 100vh;
    display: grid;
    /* flex-direction: column; */
    /* align-items: center; */
    justify-content: center;
}

label{
    width: 100px;
    height: 50px;
    position: relative;
    display: flex;
    background-color: aliceblue;
    border-radius: 50px;
    box-shadow: inset 0px  5px 15px rgba(0, 0, 0, 0.4), inset 0px -5px 15px rgba(255, 255, 255, 0.4);
    cursor: pointer;
    transition: 0.6s;
}

label:after{
    content: "";
    width: 40px;
    height: 40px;
    position: absolute;
    top: 5px;
    left: 5px;
    background-color: rgba(21, 18, 18, 0.4);
    border-radius: 50px;
    border-color: aliceblue;
    box-shadow: 0px  5px 15px rgba(21, 18, 18, 0.4);
    transition: 0.6s;
}

input{
    width: 0;
    height: 0;
    visibility: hidden;
}
input:checked + label {
    background: rgb(36, 31, 31);
    border: solid white;
}

input:checked + label:after {
    left: 95px;
    transform: translateX(-100%);
    background: linear-gradient(180deg, #777, #e6e3e3);
}

label:active:after{
    width: 60px;
}
.background {
    width: 1000vw;
    height: 1000vh;
    background: rgba(150, 147, 147, 0.4);
    z-index: -1;
    position: absolute;
    transition: 0.3s;
}
input:checked + label + .background{
    background: #696767;
}
label svg{
    position: absolute;
    width: 50px;
}