.bg-cal-1{background:#ffcefe !important}.bg-cal-2{background:#c1efff !important}.bg-cal-3{background:#ffdba4 !important}.bg-cal-4{background:#d6b8a6 !important}.bg-cal-5{background:#b3e6c4 !important}.bg-cal-6{background:#d1aeff !important}.calendar-wrapper .month-header{display:flex;align-items:center;justify-content:space-between;background:#444;padding:8px}.calendar-wrapper .month-header .change-month:disabled{opacity:0;cursor:default;pointer-events:none}.calendar-wrapper .month-header .month-title{display:none;font-size:16px;font-weight:700;color:#fff}.calendar-wrapper .month-header .month-title.current{display:block}.calendar-wrapper table{table-layout:fixed}.calendar-wrapper table th{text-align:center}.calendar-wrapper table th:not(:first-of-type),.calendar-wrapper table td:not(:first-of-type){border-left:1px solid #888}.calendar-wrapper table td.extra,.calendar-grid .month-wrapper .day-cell.extra{background:#e8e8e8}.calendar-wrapper table td.selected,.calendar-wrapper .day-cell.selected{background:#2271b1 !important}.calendar-wrapper table td.selected .day-wrapper,.calendar-wrapper .day-cell.selected .day-wrapper{color:#fff}.calendar-wrapper tbody,.calendar-grid .month-wrapper{display:none}.calendar-wrapper tbody.current{display:table-row-group}.calendar-wrapper .booking-slot{text-align:start;padding:8px 7px;margin-bottom:8px;border-radius:5px;border:1px solid #ececec}.calendar-wrapper .booking-slot .time-slot{display:flex;align-items:center;gap:8px}.calendar-wrapper .booking-slot .time{width:38px}.calendar-wrapper .booking-slot .bookings{display:flex;align-items:center;gap:4px;width:100%}.calendar-wrapper .booking-slot[data-avail="0"]{opacity:.4}.calendar-wrapper .booking-slot[data-avail="0"] .bookings,.calendar-wrapper .booking-slot[data-avail="0"] .toggle-expand{opacity:0}.calendar-wrapper .bookings-expanded{padding-top:4px;display:none}.calendar-wrapper .toggle-expand{position:relative;background:0 0;margin-left:auto;margin-right:-2px;padding:9px}.calendar-wrapper .toggle-expand:after{content:"";position:absolute;left:50%;right:50%;width:4px;height:4px;transform:translate(-50%,-50%) rotate(-45deg);border-left:1px solid #000;border-bottom:1px solid #000}.calendar-wrapper .toggle-expand.disabled{opacity:0;pointer-events:none}.calendar-wrapper .booking-slot.expanded .toggle-expand{rotate:180deg}.calendar-wrapper .booking-slot.expanded .bookings-expanded{display:block}.calendar-wrapper .booking-expanded{padding:8px;border-radius:5px;margin-top:4px;line-height:12px;text-align:start;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:all .3s;cursor:pointer}.calendar-wrapper .booking-expanded.blocked{border:2px solid #da2d34}.calendar-wrapper .booking-wrapper{max-width:24px;width:100%;height:7px;border-radius:2px;transition:all .3s;cursor:pointer}.calendar-wrapper .booking-wrapper.blocked{background:#da2d34;cursor:default}.calendar-wrapper .booking-wrapper:hover,.calendar-wrapper .booking-expanded:hover{box-shadow:0px 0px 10px 2px rgba(0,0,0,.15)}.calendar-wrapper .booking-wrapper.available{background:#eee;pointer-events:none;cursor:default}.calendar-wrapper .booking-wrapper.available:hover,.calendar-wrapper .booking-wrapper.blocked:hover{box-shadow:none}#calendar-booking table td{height:100px;vertical-align:top}#calendar-booking table .day-wrapper,.calendar-grid .month-wrapper .day-cell .day-wrapper{text-align:right}#calendar-availabilities table th div,#calendar-availabilities .calendar-grid .day-name{font-size:0;height:18px}#calendar-availabilities table th div:first-letter ,#calendar-availabilities .calendar-grid .day-name:first-letter {font-size:12px}#calendar-availabilities table td,#calendar-availabilities .calendar-grid .day-cell{height:30px;min-height:30px;text-align:center;vertical-align:top}#calendar-availabilities table .day-wrapper,#calendar-availabilities .calendar-grid .day-wrapper{position:relative;text-align:center;cursor:pointer}#calendar-availabilities table .day-wrapper.not-available,#calendar-availabilities .calendar-grid .day-wrapper.not-available{color:#999;cursor:default;pointer-events:none}#calendar-availabilities table .day-wrapper:after,#calendar-availabilities .calendar-grid .day-wrapper:after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;bottom:-10px;left:50%;transform:translateX(-50%)}#calendar-availabilities table .day-wrapper.available:after,#calendar-availabilities .calendar-grid .day-wrapper.available:after{background:#00a32a}#calendar-availabilities table .day-wrapper.partially-available:after,#calendar-availabilities .calendar-grid .day-wrapper.partially-available:after{background:#dba617}#calendar-availabilities table .day-wrapper.not-available:after,#calendar-availabilities .calendar-grid .day-wrapper.not-available:after{background:#d63638}.booking-popup,.blocked-popup{display:none;position:fixed;top:50%;left:50%;transform:translate(calc(-50% + 80px), -50%);background:#fff;max-width:400px;width:100%;border-radius:10px;overflow:hidden;box-shadow:0px 0px 20px 10px rgba(0,0,0,.3)}.booking-popup .popup-header,.booking-popup .popup-content,.booking-popup .popup-footer,.blocked-popup .popup-header,.blocked-popup .popup-content,.blocked-popup .popup-footer{padding:15px}.booking-popup .popup-header,.blocked-popup .popup-header{font-size:16px;font-weight:700}.booking-popup .popup-footer,.blocked-popup .popup-footer{display:flex;justify-content:flex-end;gap:10px}.booking-popup ul{margin-top:0;list-style:disc;padding-left:30px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid #888}.calendar-grid .day-name{text-align:center;font-weight:700;padding:6px 12px;background:#e8e8e8;border-right:1px solid #888}.calendar-grid .day-name:nth-child(7n){border-right:none}.calendar-grid .month-wrapper.current{display:grid;grid-template-columns:repeat(7,1fr);grid-area:2/1/3/8}.calendar-grid .month-wrapper .day-cell{min-height:100px;vertical-align:top;padding:6px 12px;background:#fafafa;border-top:1px solid #888;border-right:1px solid #888;min-width:0}.calendar-grid .month-wrapper .day-cell:nth-of-type(7n){border-right:none}@media screen and (max-width:767px){#calendar-booking .calendar-grid,#calendar-booking .calendar-grid .month-wrapper.current{display:block}#calendar-booking .calendar-grid .day-name,#calendar-booking .calendar-grid .day-cell.extra{display:none}#calendar-booking .calendar-grid .month-wrapper .day-cell{border-right:none}#calendar-booking .calendar-grid .day-number{background:#888;padding:4px 10px;margin:-6px -12px 6px;text-align:center;font-weight:700;color:#fff}.booking-popup,.blocked-popup{max-width:calc(100vw - 40px);transform:translate(-50%,-50%)}}