table{border:1px solid #000;border-collapse:collapse;width:100%}td,th{border:1px solid #000;padding:8px}td,th{text-align:center}th.sun{background-color:#f6d5d5;color:#fb5757}th.sat{background-color:#d4d4ff;color:#5757fb}td{overflow:hidden;text-overflow:ellipsis;vertical-align:top;white-space:nowrap}td .day{text-align:right}td .day.holiday,td .day.sun{color:#fb5757}td .day.sat{color:#5757fb}td .day.next_month,td .day.prev_month{color:#999}td.today{background-color:#ff9}h2{font-size:1.8rem;text-align:center}.calendar{margin:0 auto}.unavailable{background-color:#efefef}.available{cursor:pointer}.td_container{display:flex;flex-direction:column;height:100%}.td_container .appointment_number{color:#0ede0e;font-size:.8rem;font-weight:700;margin-top:auto;text-align:left}ol{list-style-type:decimal;padding-left:2rem}ol.time_slot{list-style-type:none}ol.time_slot li{align-items:center;counter-increment:list-item;display:flex;justify-content:space-between;margin-bottom:.5rem;position:relative}ol.time_slot li:before{color:#000;content:counter(list-item) ". ";left:-2rem;position:absolute}.reservable{margin-left:1rem;transition:background-color .3s,color .3s}.reservable:hover{background-color:#0056b3;color:#fff}.hreo-text{margin:20px 0;text-align:center}.btn-calendar{font-size:1.2rem;margin:0 5px}#modalAddAppointment .modal-body{margin:auto;max-width:600px}#modalAddAppointment .form-check-label{margin-left:.5rem}@media (max-width:767px){.col-form-label{text-align:left}}@media (min-width:992px){.calendar{max-width:1140px}}@media (min-width:1200px){.calendar{max-width:1140px}}@media (min-width:1400px){.calendar{max-width:1320px}}
