.lds-ring-slot {
    display: inline-block;
    position: absolute;
    width: 5px;
    height: 5px;
    top: 44%;
    left: 44%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.lds-ring-slot div {
    box-sizing: border-box;
    display: block;
    position: absolute;
    width: 10px;
    height: 10px;
    border: 1px solid #179d82;
    border-radius: 50%;
    animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
    border-color: #179d82 transparent transparent transparent;
}
.lds-ring-slot div:nth-child(1) {
    animation-delay: -0.45s;
}
.lds-ring-slot div:nth-child(2) {
    animation-delay: -0.3s;
}
.lds-ring-slot div:nth-child(3) {
    animation-delay: -0.15s;
}
@keyframes lds-ring-slot {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

.table-responsive {
    font-family: "Montserrat", sans-serif;
    font-weight: 300;
}

.table-responsive td {
    text-align: center;
    /*padding: 10px 0 !important;*/
    font-weight: 300;
}

.table-responsive .month {
    text-align: center;
    background-color: #179d82;
    padding: 10px 0;
    border-right: 2px solid white;
}

.month h5 {
    color: #ffffff;
    font-weight: bold;
    text-transform: uppercase;
    margin: 0px;
}

.table-responsive td.itemSlot {
    background-color: #d6d6d6;
    border: 4px solid #fff;
    width: 45px;
}

.agenda-table td[data-state=state0] {
    cursor: default;
}

td.holiday {
    color: #c20800;
}

.agenda-table td[data-state=state0] {
    background-color: #fff !important;
}

/*Professionisti*/
.agenda-table td[data-state=state2] {
    background-color: #ff9800;
}

/*Professionisti*/
.agenda-table td[data-state=state1] {
    background-color: #d6d6d6;
}

.agenda-table td[data-state=state4] {
    background-color: red;
    cursor: default !important;
}

.cal_prenotazione {
    position: relative;
}

.cal_prenotazione li span {
    width: 30px;
    height: 30px;
    padding: 1px 10px;
    margin-right: 10px;
}

.cal_prenotazione li span.occupato {
    background-color: red;
}

.cal_prenotazione li span.disponibile {
    background-color: #d6d6d6;
}

.cal_prenotazione li span.prenotato, .slot-prenotato {
    background-color: #00BCD4 !important;
}

/*.cal_prenotazione .legenda {*/
    /*position: absolute;*/
    /*top: 120px;*/
    /*left: 15px;*/
/*}*/

@media(max-width: 1169px){
    .cal_prenotazione .legenda{
        position: relative;
        display: block;
        top: 0;
        left: 0;
        padding: 20px 0;
        /*text-align: center;*/
    }
    .cal_prenotazione .legenda li{
        /*display: inline-block;*/
    }
}