/* The switch - the box around the slider */
.theme-switch {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 34px;
    margin-left: 5px;
    margin-right: 5px;
}

    /* Hide default HTML checkbox */
    .theme-switch input {
        opacity: 0;
        width: 0;
        height: 0;
    }

/* The slider */
.theme-slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    -webkit-transition: 0.4s;
    transition: 0.4s;
}

    .theme-slider:before {
        position: absolute;
        content: "";
        height: 40px;
        width: 40px;
        left: 0px;
        bottom: 4px;
        top: 0;
        bottom: 0;
        margin: auto 0;
        -webkit-transition: 0.4s;
        transition: 0.4s;
        box-shadow: 0 0px 15px #2020203d;
        background: white url('/theme-slider/night.png');
        background-repeat: no-repeat;
        background-position: center;
    }

input:checked + .theme-slider {
    background-color: #2196f3;
}

input:focus + .theme-slider {
    box-shadow: 0 0 1px #2196f3;
}

input:checked + .theme-slider:before {
    -webkit-transform: translateX(24px);
    -ms-transform: translateX(24px);
    transform: translateX(24px);
    background: white url('/theme-slider/sunny.png');
    background-repeat: no-repeat;
    background-position: center;
}

/* Rounded sliders */
.theme-slider.round {
    border-radius: 34px;
}

    .theme-slider.round:before {
        border-radius: 50%;
    }