.fc table { border-collapse: separate!important; }
.fc th, .fc td { border-width: 2px!important; border-radius: 7px!important; }
.fc .fc-content-skeleton tbody td { border-radius: 0!important; }
.fc .fc-content-skeleton thead td { border-radius: 7px 7px 0 0!important; }
table td.fc-head-container, table td.fc-widget-content { padding: 0; }
#calendar table * { border-color: #000!important; }
#calendar table th:not([scope="row"]) { background-color: #555; color: #000; border-bottom: 0!important; }
#calendar table th:not([scope="row"]), #calendar .fc-widget-header, #calendar .fc-widget-header table { border-color: #000!important; }
.fc-view-container table { margin-bottom: 0; }
.fc-time { display: none; }
#cboxContent { background: #fff; }
.fc-event-container, .fc-ltr .fc-dayGrid-view .fc-day-top .fc-day-number { padding: 0!important; font-size: 0.85rem; }
.fc-ltr .fc-dayGrid-view .fc-day-top { height: 1.25rem; }
.fc-ltr .fc-dayGrid-view .fc-day-top .fc-day-number { line-height: 1.25rem; height: 1.25rem; }
.fc-row .fc-content-skeleton td.fc-day-top { font-size: 0.85rem; padding: 0 0.25rem!important; }
.fc-content-skeleton, .fc-content-skeleton table { height: 100%; }
.fc-content-skeleton { position: relative; }
.fc-content-skeleton thead td { background: #333!important; }
.fc-content-skeleton thead td.fc-today { background: #555!important; }
.fc-day-grid-event {
	margin: 0!important;
	padding: 0.5rem!important;
	border: none!important;
	border-radius: 0!important;
	box-sizing: border-box!important;
	display: flex!important;
	/*
	align-content: center;
	align-items: center;
	justify-content: center;
	*/
	font-size: 13px!important;
	transition: all 0.25s;
}
.fc-day-grid-event:hover { opacity: 0.5!important; }
.fc-event { line-height: 1.2!important; height: 100%; }
/*.fc-content-skeleton tr:last-child .fc-event, .fc-content-skeleton tr td[rowspan] .fc-event { height: calc(100% - 2px); }*/
.fc-day-grid-event, .fc-day-grid-event * { pointer-events: all; }
.fc-day-grid-event.past_event { opacity: 0.3; }
.fc-day-grid-event.timeslot_morning, .fc-day-grid-event.timeslot_full-day { position: absolute!important; top: calc(1.25rem + 1px); }
.fc-day-grid-event.timeslot_full-day { height: calc((100% - 1.25rem))!important; }
.fc-day-grid-event.timeslot_morning { border-bottom: 2px solid #333!important; }
.fc-day-grid-event.timeslot_afternoon { position: absolute!important; top: auto; bottom: 0; border-top: 2px solid #333!important; }
td.fc-event-container { position: static!important; }
.fc-scroller { height: auto!important; overflow: visible!important; }

.fc-button-primary:focus { box-shadow: 0 0 0.15rem rgba(0, 0, 0, 1)!important; }



.fc-day-grid-event.status_pending { background: #f7b85c!important; cursor: default!important; }
.fc-day-grid-event.status_confirmed { background: #a82a20!important; cursor: default!important; }
.fc-day-grid-event.status_unavailable { background: #555!important; cursor: default!important; color: #aaa!important; }
.fc-day.fc-today, .fc-day.fc-future { background: #444!important; cursor: default!important; }
.fc-day.fc-past { background: #222!important; }


.fc-day-grid-event .fc-content { text-overflow: ellipsis; white-space: normal!important; }


.fc-day-top.fc-past { opacity: 0.3; }
.fc-day-top.fc-other-month.fc-future { opacity: 1!important; }

#calendar_key { display: flex; padding: 0; justify-content: space-between; max-width: 600px; margin: 1.5rem auto 0; }
#calendar_key li { display: block; position: static; text-align: center; }
#calendar_key li:before { content: ''!important; position: static!important; margin-right: 10px; width: 1.5rem; height: 1.5rem; display: inline-block; vertical-align: middle; margin: 0 0.5rem 0.25rem; box-shadow: inset 0 0 1px rgba(0,0,0,0.5); border-radius: 5px; }
#calendar_key li.unavailable:before { background: #555; }
#calendar_key li.available:before { background: #7BA14E; }
#calendar_key li.pending:before { background: #f7b85c; }
#calendar_key li.booked:before { background: #a82a20; }




.fc-button-primary:disabled { background: #1f4778!important; }
.fc-button-primary { background: #1f4778!important; border-color: #000!important; box-shadow: inset 0 0 1px rgba(0,0,0,0.5); }
/*.fc-title small { display: block; }*/
.fc-title { font-weight: bold; }
.fc-cars-available, .fc-track { font-size: 11px; }
.fc-thumb img {
	max-height: 3rem;
	max-width: 100%;
	height: auto;
	width: auto;
	display: block;
	margin: 0 auto;
}

#calendar .fc-content-skeleton tr + tr td.fc-event-container { border-top: 1px solid #222!important; }
.fc-content-skeleton tr:last-child .fc-event, .fc-content-skeleton tr td[rowspan] .fc-event { border-radius: 0 0 7px 7px!important; }



@media screen and (max-width: 767px) {
	.fc-dayGrid-view .fc-body .fc-row { height: 5rem!important; }
	.fc-content-skeleton, .fc-content-skeleton table { height: 5rem; }
	.fc-day-grid-event { width: calc( (100% / 5) - 1px )!important; }
	.fc-day.fc-future:before { content: ''!important; }
	/*.fc-day-grid-event .fc-title { opacity: 0; } */
}