.switchW3S {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 34px;
}

.switchW3S input {
    opacity: 0;
    width: 0;
    height: 0;
}

.sliderW3S {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    -webkit-transition: .4s;
    transition: .4s;
}

.sliderW3S:before {
    position: absolute;
    content: "";
    height: 26px;
    width: 26px;
    left: 4px;
    bottom: 4px;
    background-color: white;
    -webkit-transition: .4s;
    transition: .4s;
}

input:checked + .sliderW3S {
    background-color: #2196F3;
}

input:focus + .sliderW3S {
    box-shadow: 0 0 1px #2196F3;
}

input:checked + .sliderW3S:before {
    -webkit-transform: translateX(26px);
    -ms-transform: translateX(26px);
    transform: translateX(26px);
}

/* Rounded sliders */
.sliderW3S.round {
    border-radius: 34px;
}

.sliderW3S.round:before {
    border-radius: 50%;
}

/* INIZIO CSS CALENDARIO APPUNTAMENTI WEB AGENDA */
 .box-giorno {
     width: 42px !important;
     height: 42px;
     background: white;
     cursor: pointer;
 }
.box-giorno a {
    color:inherit;
}
.box-giorno.disponibile {
    background: #a8ffbc;
}
.box-giorno.non-disponibile {
    background: #ececec;
}
.box-giorno.occupato {
    background: #ffcbcb;
}
.box-giorno .data {
    font-size: .6em;
    font-weight: bold;
}
.box-giorno.disponibile:hover, .box-giorno.occupato:hover {
    transition: background-color .3s;
    background: #153d77!important;
    color: white!important;
}
.box-giorno.non-disponibile, .box-giorno.non-disponibile a {
    cursor: not-allowed;
}
/* FINE CSS CALENDARIO APPUNTAMENTI WEB AGENDA */
