.fc {
	direction: ltr;
	text-align: left;
}

.fc-rtl {
	text-align: right;
}

body .fc {
	font-size: 1em;
}

.fc-highlight {
	background: #bce8f1;
	opacity: .3;
}

.fc-bgevent {
	background: #8fdf82;
	opacity: .3;
}

.fc-nonbusiness {
	background: #d7d7d7;
}

.fc-popover {
	position: absolute;
	box-shadow: 0 2px 6px rgba(0, 0, 0, .15);
}

.fc-popover .fc-header {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	padding: 2px 4px;
}

.fc-rtl .fc-popover .fc-header {
	flex-direction: row-reverse;
}

.fc-popover .fc-header .fc-title {
	margin: 0 2px;
}

.fc-popover .fc-header .fc-close {
	cursor: pointer;
	opacity: .65;
	font-size: 1.1em;
}

.fc-divider {
	border-style: solid;
	border-width: 1px;
}

hr.fc-divider {
	height: 0;
	margin: 0;
	padding: 0 0 2px;
	border-width: 1px 0;
}

.fc-bg, .fc-bgevent-skeleton, .fc-highlight-skeleton, .fc-mirror-skeleton {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}

.fc-bg {
	bottom: 0;
}

.fc-bg table {
	height: 100%;
}

.fc table {
	width: 100%;
	box-sizing: border-box;
	table-layout: fixed;
	border-collapse: collapse;
	border-spacing: 0;
	font-size: 1em;
}

.fc th {
	text-align: center;
}

.fc th, .fc td {
	border-style: solid;
	border-width: 1px;
	padding: 0;
	vertical-align: top;
}

.fc td.fc-today {
	border-style: double;
}

a[data-goto] {
	cursor: pointer;
}

a[data-goto]:hover {
	text-decoration: underline;
}

.fc .fc-row {
	border-style: solid;
	border-width: 0;
}

.fc-row table {
	border-left: 0 hidden transparent;
	border-right: 0 hidden transparent;
	border-bottom: 0 hidden transparent;
}

.fc-row:first-child table {
	border-top: 0 hidden transparent;
}

.fc-row {
	position: relative;
}

.fc-row .fc-bg {
	z-index: 1;
}

.fc-row .fc-bgevent-skeleton, .fc-row .fc-highlight-skeleton {
	bottom: 0;
}

.fc-row .fc-bgevent-skeleton table, .fc-row .fc-highlight-skeleton table {
	height: 100%;
}

.fc-row .fc-highlight-skeleton td, .fc-row .fc-bgevent-skeleton td {
	border-color: transparent;
}

.fc-row .fc-bgevent-skeleton {
	z-index: 2;
}

.fc-row .fc-highlight-skeleton {
	z-index: 3;
}

.fc-row .fc-content-skeleton {
	position: relative;
	z-index: 4;
	padding-bottom: 2px;
}

.fc-row .fc-mirror-skeleton {
	z-index: 5;
}

.fc .fc-row .fc-content-skeleton table, .fc .fc-row .fc-content-skeleton td, .fc .fc-row .fc-mirror-skeleton td {
	background: none;
	border-color: transparent;
}

.fc-row .fc-content-skeleton td, .fc-row .fc-mirror-skeleton td {
	border-bottom: 0;
}

.fc-row .fc-content-skeleton tbody td, .fc-row .fc-mirror-skeleton tbody td {
	border-top: 0;
}

.fc-scroller {
	-webkit-overflow-scrolling: touch;
}

.fc-scroller > .fc-day-grid, .fc-scroller > .fc-time-grid {
	position: relative;
	width: 100%;
}

.fc-event {
	position: relative;
	display: block;
	font-size: .85em;
	line-height: 1.4;
	border-radius: 3px;
	border: 1px solid #3788d8;
}

.fc-event, .fc-event-dot {
	background-color: #3788d8;
}

.fc-event, .fc-event:hover {
	color: #fff;
	text-decoration: none;
}

.fc-event[href], .fc-event.fc-draggable {
	cursor: pointer;
}

.fc-not-allowed, .fc-not-allowed .fc-event {
	cursor: not-allowed;
}

.fc-event .fc-content {
	position: relative;
	z-index: 2;
}

.fc-event .fc-resizer {
	position: absolute;
	z-index: 4;
}

.fc-event .fc-resizer {
	display: none;
}

.fc-event.fc-allow-mouse-resize .fc-resizer, .fc-event.fc-selected .fc-resizer {
	display: block;
}

.fc-event.fc-selected .fc-resizer:before {
	content: "";
	position: absolute;
	z-index: 9999;
	top: 50%;
	left: 50%;
	width: 40px;
	height: 40px;
	margin-left: -20px;
	margin-top: -20px;
}

.fc-event.fc-selected {
	z-index: 9999 !important;
	box-shadow: 0 2px 5px rgba(0, 0, 0, .2);
}

.fc-event.fc-selected:after {
	content: "";
	position: absolute;
	z-index: 1;
	top: -1px;
	right: -1px;
	bottom: -1px;
	left: -1px;
	background: #000;
	opacity: .25;
}

.fc-event.fc-dragging.fc-selected {
	box-shadow: 0 2px 7px rgba(0, 0, 0, .3);
}

.fc-event.fc-dragging:not(.fc-selected) {
	opacity: .75;
}

.fc-h-event.fc-selected:before {
	content: "";
	position: absolute;
	z-index: 3;
	top: -10px;
	bottom: -10px;
	left: 0;
	right: 0;
}

.fc-ltr .fc-h-event.fc-not-start, .fc-rtl .fc-h-event.fc-not-end {
	margin-left: 0;
	border-left-width: 0;
	padding-left: 1px;
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}

.fc-ltr .fc-h-event.fc-not-end, .fc-rtl .fc-h-event.fc-not-start {
	margin-right: 0;
	border-right-width: 0;
	padding-right: 1px;
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
}

.fc-ltr .fc-h-event .fc-start-resizer, .fc-rtl .fc-h-event .fc-end-resizer {
	cursor: w-resize;
	left: -1px;
}

.fc-ltr .fc-h-event .fc-end-resizer, .fc-rtl .fc-h-event .fc-start-resizer {
	cursor: e-resize;
	right: -1px;
}

.fc-h-event.fc-allow-mouse-resize .fc-resizer {
	width: 7px;
	top: -1px;
	bottom: -1px;
}

.fc-h-event.fc-selected .fc-resizer {
	border-radius: 4px;
	border-width: 1px;
	width: 6px;
	height: 6px;
	border-style: solid;
	border-color: inherit;
	background: #fff;
	top: 50%;
	margin-top: -4px;
}

.fc-ltr .fc-h-event.fc-selected .fc-start-resizer, .fc-rtl .fc-h-event.fc-selected .fc-end-resizer {
	margin-left: -4px;
}

.fc-ltr .fc-h-event.fc-selected .fc-end-resizer, .fc-rtl .fc-h-event.fc-selected .fc-start-resizer {
	margin-right: -4px;
}

.fc-day-grid-event {
	margin: 1px 2px 0;
	padding: 0 1px;
}

tr:first-child > td > .fc-day-grid-event {
	margin-top: 2px;
}

.fc-mirror-skeleton tr:first-child > td > .fc-day-grid-event {
	margin-top: 0;
}

.fc-day-grid-event .fc-content {
	white-space: nowrap;
	overflow: hidden;
}

.fc-day-grid-event .fc-time {
	font-weight: bold;
}

.fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer, .fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer {
	margin-left: -2px;
}

.fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer, .fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer {
	margin-right: -2px;
}

a.fc-more {
	margin: 1px 3px;
	font-size: .85em;
	cursor: pointer;
	text-decoration: none;
}

a.fc-more:hover {
	text-decoration: underline;
}

.fc-limited {
	display: none;
}

.fc-day-grid .fc-row {
	z-index: 1;
}

.fc-more-popover {
	z-index: 2;
	width: 220px;
}

.fc-more-popover .fc-event-container {
	padding: 10px;
}

.fc-now-indicator {
	position: absolute;
	border: 0 solid red;
}

.fc-unselectable {
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.fc-unthemed th, .fc-unthemed td, .fc-unthemed thead, .fc-unthemed tbody, .fc-unthemed .fc-divider, .fc-unthemed .fc-row, .fc-unthemed .fc-content, .fc-unthemed .fc-popover, .fc-unthemed .fc-list-view, .fc-unthemed .fc-list-heading td {
	border-color: #ddd;
}

.fc-unthemed .fc-popover {
	background-color: #fff;
}

.fc-unthemed .fc-divider, .fc-unthemed .fc-popover .fc-header, .fc-unthemed .fc-list-heading td {
	background: #eee;
}

.fc-unthemed td.fc-today {
	background: #fcf8e3;
}

.fc-unthemed .fc-disabled-day {
	background: #d7d7d7;
	opacity: .3;
}

.fc-icon {
	font-family: "fcicons" !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.fc-icon-chevron-left:before {
	content: "";
}

.fc-icon-chevron-right:before {
	content: "";
}

.fc-icon-chevrons-left:before {
	content: "";
}

.fc-icon-chevrons-right:before {
	content: "";
}

.fc-icon-minus-square:before {
	content: "";
}

.fc-icon-plus-square:before {
	content: "";
}

.fc-icon-x:before {
	content: "";
}

.fc-icon {
	display: inline-block;
	width: 1em;
	height: 1em;
	text-align: center;
}

.fc-button {
	border-radius: 0;
	overflow: visible;
	text-transform: none;
	margin: 0;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}

.fc-button:focus {
	outline: 1px dotted;
	outline: 5px auto -webkit-focus-ring-color;
}

.fc-button {
	-webkit-appearance: button;
}

.fc-button:not(:disabled) {
	cursor: pointer;
}

.fc-button::-moz-focus-inner {
	padding: 0;
	border-style: none;
}

.fc-button {
	display: inline-block;
	font-weight: 400;
	color: #212529;
	text-align: center;
	vertical-align: middle;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	background-color: transparent;
	border: 1px solid transparent;
	padding: .4em .65em;
	font-size: 1em;
	line-height: 1.5;
	border-radius: .25em;
}

.fc-button:hover {
	color: #212529;
	text-decoration: none;
}

.fc-button:focus {
	outline: 0;
	-webkit-box-shadow: 0 0 0 .2rem rgba(44, 62, 80, .25);
	box-shadow: 0 0 0 .2rem rgba(44, 62, 80, .25);
}

.fc-button:disabled {
	opacity: .65;
}

.fc-button-primary {
	color: #fff;
	background-color: #2c3e50;
	border-color: #2c3e50;
}

.fc-button-primary:hover {
	color: #fff;
	background-color: #1e2b37;
	border-color: #1a252f;
}

.fc-button-primary:focus {
	-webkit-box-shadow: 0 0 0 .2rem rgba(76, 91, 106, .5);
	box-shadow: 0 0 0 .2rem rgba(76, 91, 106, .5);
}

.fc-button-primary:disabled {
	color: #fff;
	background-color: #2c3e50;
	border-color: #2c3e50;
}

.fc-button-primary:not(:disabled):active, .fc-button-primary:not(:disabled).fc-button-active {
	color: #fff;
	background-color: #1a252f;
	border-color: #151e27;
}

.fc-button-primary:not(:disabled):active:focus, .fc-button-primary:not(:disabled).fc-button-active:focus {
	-webkit-box-shadow: 0 0 0 .2rem rgba(76, 91, 106, .5);
	box-shadow: 0 0 0 .2rem rgba(76, 91, 106, .5);
}

.fc-button .fc-icon {
	vertical-align: middle;
	font-size: 1.5em;
}

.fc-button-group {
	position: relative;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	vertical-align: middle;
}

.fc-button-group > .fc-button {
	position: relative;
	-webkit-box-flex: 1;
	-ms-flex: 1 1 auto;
	flex: 1 1 auto;
}

.fc-button-group > .fc-button:hover {
	z-index: 1;
}

.fc-button-group > .fc-button:focus, .fc-button-group > .fc-button:active, .fc-button-group > .fc-button.fc-button-active {
	z-index: 1;
}

.fc-button-group > .fc-button:not(:first-child) {
	margin-left: -1px;
}

.fc-button-group > .fc-button:not(:last-child) {
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
}

.fc-button-group > .fc-button:not(:first-child) {
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}

.fc-unthemed .fc-popover {
	border-width: 1px;
	border-style: solid;
}

.fc-unthemed .fc-list-item:hover td {
	background-color: #f5f5f5;
}

.fc-toolbar {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.fc-toolbar.fc-header-toolbar {
	margin-bottom: 1.5em;
}

.fc-toolbar.fc-footer-toolbar {
	margin-top: 1.5em;
}

.fc-toolbar > * > :not(:first-child) {
	margin-left: .75em;
}

.fc-toolbar h2 {
	font-size: 1.75em;
	margin: 0;
}

.fc-view-container {
	position: relative;
}

.fc-view-container *, .fc-view-container *:before, .fc-view-container *:after {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
}

.fc-view, .fc-view > table {
	position: relative;
	z-index: 1;
}

@media print {
	.fc {
		max-width: 100% !important;
	}
	
	.fc-event {
		background: #fff !important;
		color: #000 !important;
		page-break-inside: avoid;
	}
	
	.fc-event .fc-resizer {
		display: none;
	}
	
	.fc th, .fc td, .fc hr, .fc thead, .fc tbody, .fc-row {
		border-color: #ccc !important;
		background: #fff !important;
	}
	
	.fc-bg, .fc-bgevent-skeleton, .fc-highlight-skeleton, .fc-mirror-skeleton, .fc-bgevent-container, .fc-business-container, .fc-highlight-container, .fc-mirror-container {
		display: none;
	}
	
	.fc tbody .fc-row {
		height: auto !important;
		min-height: 0 !important;
	}
	
	.fc tbody .fc-row .fc-content-skeleton {
		position: static;
		padding-bottom: 0 !important;
	}
	
	.fc tbody .fc-row .fc-content-skeleton tbody tr:last-child td {
		padding-bottom: 1em;
	}
	
	.fc tbody .fc-row .fc-content-skeleton table {
		height: 1em;
	}
	
	.fc-more-cell, .fc-more {
		display: none !important;
	}
	
	.fc tr.fc-limited {
		display: table-row !important;
	}
	
	.fc td.fc-limited {
		display: table-cell !important;
	}
	
	.fc-popover {
		display: none;
	}
	
	.fc-time-grid {
		min-height: 0 !important;
	}
	
	.fc-timeGrid-view .fc-axis {
		display: none;
	}
	
	.fc-slats, .fc-time-grid hr {
		display: none !important;
	}
	
	.fc-time-grid .fc-content-skeleton {
		position: static;
	}
	
	.fc-time-grid .fc-content-skeleton table {
		height: 4em;
	}
	
	.fc-time-grid .fc-event-container {
		margin: 0 !important;
	}
	
	.fc-time-grid .fc-event {
		position: static !important;
		margin: 3px 2px !important;
	}
	
	.fc-time-grid .fc-event.fc-not-end {
		border-bottom-width: 1px !important;
	}
	
	.fc-time-grid .fc-event.fc-not-end:after {
		content: "...";
	}
	
	.fc-time-grid .fc-event.fc-not-start {
		border-top-width: 1px !important;
	}
	
	.fc-time-grid .fc-event.fc-not-start:before {
		content: "...";
	}
	
	.fc-time-grid .fc-event .fc-time {
		white-space: normal !important;
	}
	
	.fc-time-grid .fc-event .fc-time span {
		display: none;
	}
	
	.fc-time-grid .fc-event .fc-time:after {
		content: attr(data-full);
	}
	
	.fc-scroller, .fc-day-grid-container, .fc-time-grid-container {
		overflow: visible !important;
		height: auto !important;
	}
	
	.fc-row {
		border: 0 !important;
		margin: 0 !important;
	}
	
	.fc-button-group, .fc button {
		display: none;
	}
}

.fc-dayGridWeek-view .fc-content-skeleton, .fc-dayGridDay-view .fc-content-skeleton {
	padding-bottom: 1em;
}

.fc-dayGrid-view .fc-body .fc-row {
	min-height: 4em;
}

.fc-row.fc-rigid {
	overflow: hidden;
}

.fc-row.fc-rigid .fc-content-skeleton {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}

.fc-day-top.fc-other-month {
	opacity: .3;
}

.fc-dayGrid-view .fc-week-number, .fc-dayGrid-view .fc-day-number {
	padding: 2px;
}

.fc-dayGrid-view th.fc-week-number, .fc-dayGrid-view th.fc-day-number {
	padding: 0 2px;
}

.fc-ltr .fc-dayGrid-view .fc-day-top .fc-day-number {
	float: right;
}

.fc-rtl .fc-dayGrid-view .fc-day-top .fc-day-number {
	float: left;
}

.fc-ltr .fc-dayGrid-view .fc-day-top .fc-week-number {
	float: left;
	border-radius: 0 0 3px 0;
}

.fc-rtl .fc-dayGrid-view .fc-day-top .fc-week-number {
	float: right;
	border-radius: 0 0 0 3px;
}

.fc-dayGrid-view .fc-day-top .fc-week-number {
	min-width: 1.5em;
	text-align: center;
	background-color: #f2f2f2;
	color: #808080;
}

.fc-dayGrid-view td.fc-week-number {
	text-align: center;
}

.fc-dayGrid-view td.fc-week-number > * {
	display: inline-block;
	min-width: 1.25em;
}

.flatpickr-calendar {
	background: transparent;
	background: #fff;
	opacity: 0;
	display: none;
	text-align: center;
	visibility: hidden;
	padding: 0;
	-webkit-animation: none;
	animation: none;
	direction: ltr;
	border: 0;
	font-size: 14px;
	line-height: 24px;
	border-radius: 5px;
	position: absolute;
	width: 307.875px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-ms-touch-action: manipulation;
	touch-action: manipulation;
	-webkit-box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0, 0, 0, .08);
	box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0, 0, 0, .08);
}

.flatpickr-calendar.open, .flatpickr-calendar.inline {
	opacity: 1;
	max-height: 640px;
	visibility: visible;
}

.flatpickr-calendar.open {
	display: inline-block;
	z-index: 99999;
}

.flatpickr-calendar.animate.open {
	-webkit-animation: fpFadeInDown 300ms cubic-bezier(.23, 1, .32, 1);
	animation: fpFadeInDown 300ms cubic-bezier(.23, 1, .32, 1);
}

.flatpickr-calendar.inline {
	display: block;
	position: relative;
	top: 2px;
}

.flatpickr-calendar.static {
	position: absolute;
	top: calc(100% + 2px);
}

.flatpickr-calendar.static.open {
	z-index: 999;
	display: block;
}

.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7) {
	-webkit-box-shadow: none !important;
	box-shadow: none !important;
}

.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1) {
	-webkit-box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
	box-shadow: -2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
}

.flatpickr-calendar .hasWeeks .dayContainer, .flatpickr-calendar .hasTime .dayContainer {
	border-bottom: 0;
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}

.flatpickr-calendar .hasWeeks .dayContainer {
	border-left: 0;
}

.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time {
	height: 40px;
	border-top: 1px solid #e6e6e6;
}

.flatpickr-calendar.noCalendar.hasTime .flatpickr-time {
	height: auto;
}

.flatpickr-calendar:before, .flatpickr-calendar:after {
	position: absolute;
	display: block;
	pointer-events: none;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	left: 22px;
}

.flatpickr-calendar.rightMost:before, .flatpickr-calendar.rightMost:after {
	left: auto;
	right: 22px;
}

.flatpickr-calendar:before {
	border-width: 5px;
	margin: 0 -5px;
}

.flatpickr-calendar:after {
	border-width: 4px;
	margin: 0 -4px;
}

.flatpickr-calendar.arrowTop:before, .flatpickr-calendar.arrowTop:after {
	bottom: 100%;
}

.flatpickr-calendar.arrowTop:before {
	border-bottom-color: #e6e6e6;
}

.flatpickr-calendar.arrowTop:after {
	border-bottom-color: #fff;
}

.flatpickr-calendar.arrowBottom:before, .flatpickr-calendar.arrowBottom:after {
	top: 100%;
}

.flatpickr-calendar.arrowBottom:before {
	border-top-color: #e6e6e6;
}

.flatpickr-calendar.arrowBottom:after {
	border-top-color: #fff;
}

.flatpickr-calendar:focus {
	outline: 0;
}

.flatpickr-wrapper {
	position: relative;
	display: inline-block;
}

.flatpickr-months {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.flatpickr-months .flatpickr-month {
	background: transparent;
	color: rgba(0, 0, 0, .9);
	fill: rgba(0, 0, 0, .9);
	height: 34px;
	line-height: 1;
	text-align: center;
	position: relative;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	overflow: hidden;
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	-ms-flex: 1;
	flex: 1;
}

.flatpickr-months .flatpickr-prev-month, .flatpickr-months .flatpickr-next-month {
	text-decoration: none;
	cursor: pointer;
	position: absolute;
	top: 0;
	height: 34px;
	padding: 10px;
	z-index: 3;
	color: rgba(0, 0, 0, .9);
	fill: rgba(0, 0, 0, .9);
}

.flatpickr-months .flatpickr-prev-month.flatpickr-disabled, .flatpickr-months .flatpickr-next-month.flatpickr-disabled {
	display: none;
}

.flatpickr-months .flatpickr-prev-month i, .flatpickr-months .flatpickr-next-month i {
	position: relative;
}

.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month, .flatpickr-months .flatpickr-next-month.flatpickr-prev-month {
	left: 0;
}

.flatpickr-months .flatpickr-prev-month.flatpickr-next-month, .flatpickr-months .flatpickr-next-month.flatpickr-next-month {
	right: 0;
}

.flatpickr-months .flatpickr-prev-month:hover, .flatpickr-months .flatpickr-next-month:hover {
	color: #959ea9;
}

.numInputWrapper {
	position: relative;
	height: auto;
}

.numInputWrapper input, .numInputWrapper span {
	display: inline-block;
}

.numInputWrapper input {
	width: 100%;
}

.numInputWrapper input::-ms-clear {
	display: none;
}

.numInputWrapper input::-webkit-outer-spin-button, .numInputWrapper input::-webkit-inner-spin-button {
	margin: 0;
	-webkit-appearance: none;
}

.numInputWrapper span {
	position: absolute;
	right: 0;
	width: 14px;
	padding: 0 4px 0 2px;
	height: 50%;
	line-height: 50%;
	opacity: 0;
	cursor: pointer;
	border: 1px solid rgba(57, 57, 57, .15);
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.numInputWrapper span:hover {
	background: rgba(0, 0, 0, .1);
}

.numInputWrapper span:active {
	background: rgba(0, 0, 0, .2);
}

.numInputWrapper span:after {
	display: block;
	content: "";
	position: absolute;
}

.numInputWrapper span.arrowUp {
	top: 0;
	border-bottom: 0;
}

.numInputWrapper span.arrowUp:after {
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	border-bottom: 4px solid rgba(57, 57, 57, .6);
	top: 26%;
}

.numInputWrapper span.arrowDown {
	top: 50%;
}

.numInputWrapper span.arrowDown:after {
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	border-top: 4px solid rgba(57, 57, 57, .6);
	top: 40%;
}

.numInputWrapper:hover {
	background: rgba(0, 0, 0, .05);
}

.numInputWrapper:hover span {
	opacity: 1;
}

.flatpickr-current-month {
	font-size: 135%;
	line-height: inherit;
	line-height: 1;
	font-weight: 300;
	color: inherit;
	position: absolute;
	width: 75%;
	left: 12.5%;
	padding: 7.48px 0 0 0;
	height: 34px;
	display: inline-block;
	text-align: center;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.flatpickr-current-month span.cur-month {
	font-family: inherit;
	font-weight: 700;
	color: inherit;
	display: inline-block;
	margin-left: .5ch;
	padding: 0;
}

.flatpickr-current-month span.cur-month:hover {
	background: rgba(0, 0, 0, .05);
}

.flatpickr-current-month .numInputWrapper {
	width: 6ch;
	width: 7ch \0;
	display: inline-block;
}

.flatpickr-current-month .numInputWrapper span.arrowUp:after {
	border-bottom-color: rgba(0, 0, 0, .9);
}

.flatpickr-current-month .numInputWrapper span.arrowDown:after {
	border-top-color: rgba(0, 0, 0, .9);
}

.flatpickr-current-month input.cur-year {
	background: transparent;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	color: inherit;
	cursor: text;
	padding: 0 0 0 .5ch;
	margin: 0;
	display: inline-block;
	font-size: inherit;
	font-family: inherit;
	font-weight: 300;
	line-height: inherit;
	height: auto;
	border: 0;
	border-radius: 0;
	vertical-align: initial;
	-webkit-appearance: textfield;
	-moz-appearance: textfield;
	appearance: textfield;
}

.flatpickr-current-month input.cur-year:focus {
	outline: 0;
}

.flatpickr-current-month input.cur-year[disabled], .flatpickr-current-month input.cur-year[disabled]:hover {
	font-size: 100%;
	color: rgba(0, 0, 0, .5);
	background: transparent;
	pointer-events: none;
}

.flatpickr-current-month .flatpickr-monthDropdown-months {
	appearance: menulist;
	background: transparent;
	border: none;
	border-radius: 0;
	box-sizing: border-box;
	color: inherit;
	cursor: pointer;
	font-size: inherit;
	font-family: inherit;
	font-weight: 300;
	height: auto;
	line-height: inherit;
	margin: -1px 0 0 0;
	outline: none;
	padding: 0 0 0 .5ch;
	position: relative;
	vertical-align: initial;
	-webkit-box-sizing: border-box;
	-webkit-appearance: menulist;
	-moz-appearance: menulist;
	width: auto;
}

.flatpickr-current-month .flatpickr-monthDropdown-months:focus, .flatpickr-current-month .flatpickr-monthDropdown-months:active {
	outline: none;
}

.flatpickr-current-month .flatpickr-monthDropdown-months:hover {
	background: rgba(0, 0, 0, .05);
}

.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month {
	background-color: transparent;
	outline: none;
	padding: 0;
}

.flatpickr-weekdays {
	background: transparent;
	text-align: center;
	overflow: hidden;
	width: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	height: 28px;
}

.flatpickr-weekdays .flatpickr-weekdaycontainer {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	-ms-flex: 1;
	flex: 1;
}

span.flatpickr-weekday {
	cursor: default;
	font-size: 90%;
	background: transparent;
	color: rgba(0, 0, 0, .54);
	line-height: 1;
	margin: 0;
	text-align: center;
	display: block;
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	-ms-flex: 1;
	flex: 1;
	font-weight: bolder;
}

.dayContainer, .flatpickr-weeks {
	padding: 1px 0 0 0;
}

.flatpickr-days {
	position: relative;
	overflow: hidden;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
	width: 307.875px;
}

.flatpickr-days:focus {
	outline: 0;
}

.dayContainer {
	padding: 0;
	outline: 0;
	text-align: left;
	width: 307.875px;
	min-width: 307.875px;
	max-width: 307.875px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	display: inline-block;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-around;
	justify-content: space-around;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	opacity: 1;
}

.dayContainer + .dayContainer {
	-webkit-box-shadow: -1px 0 0 #e6e6e6;
	box-shadow: -1px 0 0 #e6e6e6;
}

.flatpickr-day {
	background: none;
	border: 1px solid transparent;
	border-radius: 150px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	color: #393939;
	cursor: pointer;
	font-weight: 400;
	width: 14.2857143%;
	-webkit-flex-basis: 14.2857143%;
	-ms-flex-preferred-size: 14.2857143%;
	flex-basis: 14.2857143%;
	max-width: 39px;
	height: 39px;
	line-height: 39px;
	margin: 0;
	display: inline-block;
	position: relative;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	text-align: center;
}

.flatpickr-day.inRange, .flatpickr-day.prevMonthDay.inRange, .flatpickr-day.nextMonthDay.inRange, .flatpickr-day.today.inRange, .flatpickr-day.prevMonthDay.today.inRange, .flatpickr-day.nextMonthDay.today.inRange, .flatpickr-day:hover, .flatpickr-day.prevMonthDay:hover, .flatpickr-day.nextMonthDay:hover, .flatpickr-day:focus, .flatpickr-day.prevMonthDay:focus, .flatpickr-day.nextMonthDay:focus {
	cursor: pointer;
	outline: 0;
	background: #e6e6e6;
	border-color: #e6e6e6;
}

.flatpickr-day.today {
	border-color: #959ea9;
}

.flatpickr-day.today:hover, .flatpickr-day.today:focus {
	border-color: #959ea9;
	background: #959ea9;
	color: #fff;
}

.flatpickr-day.selected, .flatpickr-day.startRange, .flatpickr-day.endRange, .flatpickr-day.selected.inRange, .flatpickr-day.startRange.inRange, .flatpickr-day.endRange.inRange, .flatpickr-day.selected:focus, .flatpickr-day.startRange:focus, .flatpickr-day.endRange:focus, .flatpickr-day.selected:hover, .flatpickr-day.startRange:hover, .flatpickr-day.endRange:hover, .flatpickr-day.selected.prevMonthDay, .flatpickr-day.startRange.prevMonthDay, .flatpickr-day.endRange.prevMonthDay, .flatpickr-day.selected.nextMonthDay, .flatpickr-day.startRange.nextMonthDay, .flatpickr-day.endRange.nextMonthDay {
	background: #569ff7;
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
	border-color: #569ff7;
}

.flatpickr-day.selected.startRange, .flatpickr-day.startRange.startRange, .flatpickr-day.endRange.startRange {
	border-radius: 50px 0 0 50px;
}

.flatpickr-day.selected.endRange, .flatpickr-day.startRange.endRange, .flatpickr-day.endRange.endRange {
	border-radius: 0 50px 50px 0;
}

.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)), .flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)), .flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) {
	-webkit-box-shadow: -10px 0 0 #569ff7;
	box-shadow: -10px 0 0 #569ff7;
}

.flatpickr-day.selected.startRange.endRange, .flatpickr-day.startRange.startRange.endRange, .flatpickr-day.endRange.startRange.endRange {
	border-radius: 50px;
}

.flatpickr-day.inRange {
	border-radius: 0;
	-webkit-box-shadow: -5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
	box-shadow: -5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
}

.flatpickr-day.flatpickr-disabled, .flatpickr-day.flatpickr-disabled:hover, .flatpickr-day.prevMonthDay, .flatpickr-day.nextMonthDay, .flatpickr-day.notAllowed, .flatpickr-day.notAllowed.prevMonthDay, .flatpickr-day.notAllowed.nextMonthDay {
	color: rgba(57, 57, 57, .3);
	background: transparent;
	border-color: transparent;
	cursor: default;
}

.flatpickr-day.flatpickr-disabled, .flatpickr-day.flatpickr-disabled:hover {
	cursor: not-allowed;
	color: rgba(57, 57, 57, .1);
}

.flatpickr-day.week.selected {
	border-radius: 0;
	-webkit-box-shadow: -5px 0 0 #569ff7, 5px 0 0 #569ff7;
	box-shadow: -5px 0 0 #569ff7, 5px 0 0 #569ff7;
}

.flatpickr-day.hidden {
	visibility: hidden;
}

.rangeMode .flatpickr-day {
	margin-top: 1px;
}

.flatpickr-weekwrapper {
	float: left;
}

.flatpickr-weekwrapper .flatpickr-weeks {
	padding: 0 12px;
	-webkit-box-shadow: 1px 0 0 #e6e6e6;
	box-shadow: 1px 0 0 #e6e6e6;
}

.flatpickr-weekwrapper .flatpickr-weekday {
	float: none;
	width: 100%;
	line-height: 28px;
}

.flatpickr-weekwrapper span.flatpickr-day, .flatpickr-weekwrapper span.flatpickr-day:hover {
	display: block;
	width: 100%;
	max-width: none;
	color: rgba(57, 57, 57, .3);
	background: transparent;
	cursor: default;
	border: none;
}

.flatpickr-innerContainer {
	display: block;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	overflow: hidden;
}

.flatpickr-rContainer {
	display: inline-block;
	padding: 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.flatpickr-time {
	text-align: center;
	outline: 0;
	display: block;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	height: 0;
	line-height: 40px;
	max-height: 40px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	overflow: hidden;
}

.flatpickr-time:after {
	content: "";
	display: table;
	clear: both;
}

.flatpickr-time .numInputWrapper {
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	-ms-flex: 1;
	flex: 1;
	width: 40%;
	height: 40px;
	float: left;
}

.flatpickr-time .numInputWrapper span.arrowUp:after {
	border-bottom-color: #393939;
}

.flatpickr-time .numInputWrapper span.arrowDown:after {
	border-top-color: #393939;
}

.flatpickr-time.hasSeconds .numInputWrapper {
	width: 26%;
}

.flatpickr-time.time24hr .numInputWrapper {
	width: 49%;
}

.flatpickr-time input {
	background: transparent;
	-webkit-box-shadow: none;
	box-shadow: none;
	border: 0;
	border-radius: 0;
	text-align: center;
	margin: 0;
	padding: 0;
	height: inherit;
	line-height: inherit;
	color: #393939;
	font-size: 14px;
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-appearance: textfield;
	-moz-appearance: textfield;
	appearance: textfield;
}

.flatpickr-time input.flatpickr-hour {
	font-weight: bold;
}

.flatpickr-time input.flatpickr-minute, .flatpickr-time input.flatpickr-second {
	font-weight: 400;
}

.flatpickr-time input:focus {
	outline: 0;
	border: 0;
}

.flatpickr-time .flatpickr-time-separator, .flatpickr-time .flatpickr-am-pm {
	height: inherit;
	float: left;
	line-height: inherit;
	color: #393939;
	font-weight: bold;
	width: 2%;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-align-self: center;
	-ms-flex-item-align: center;
	align-self: center;
}

.flatpickr-time .flatpickr-am-pm {
	outline: 0;
	width: 18%;
	cursor: pointer;
	text-align: center;
	font-weight: 400;
}

.flatpickr-time input:hover, .flatpickr-time .flatpickr-am-pm:hover, .flatpickr-time input:focus, .flatpickr-time .flatpickr-am-pm:focus {
	background: #eee;
}

.flatpickr-input[readonly] {
	cursor: pointer;
}

.childcarecrm-form__control {
	display: block;
	width: 100%;
}

.childcarecrm-form__control.childcarecrm-form__control--checkbox {
	display: inline;
	margin-left: 4px;
	width: auto;
}

.childcarecrm-form__control.childcarecrm-form__control--choice-multiple input {
	margin-left: 4px;
}

.childcarecrm-form__control.childcarecrm-form__control--choice-multiple input:first-of-type {
	margin-left: 0;
}

.childcarecrm-form__control.childcarecrm-form__control--choice-multiple label:not(:last-of-type) {
	margin-right: 4px;
}

.childcarecrm-form__field {
	box-sizing: border-box;
	display: inline-block;
	padding-bottom: 8px;
	padding-top: 8px;
	width: 50%;
}

.form-group a2p-container {
	width: 100%;
}

.childcarecrm-form__field-special {
	box-sizing: border-box;
	display: inline-block;
	padding-top: 8px;
}

.childcarecrm-form__field:nth-child(even) {
	padding-left: 8px;
}

.childcarecrm-form__field:nth-child(odd) {
	padding-right: 8px;
}

.childcarecrm-form__field.childcarecrm-form__field-textarea {
	padding-left: 0;
	padding-right: 8px;
	box-sizing: border-box;
	width: 100%;
}

.childcarecrm-form__field-textarea textarea {
	width: 50%;
}

.childcarecrm-form {
	padding: 16px;
}

.childcarecrm-form__field.childcarecrm-form__field--full-width {
	width: 100%;
}

.childcarecrm-form__field.childcarecrm-form__field--hidden {
	display: none;
}

.childcarecrm-form__contact-row {
	display: flex;
	flex-wrap: wrap;
	margin-left: -8px;
	margin-right: -8px;
}

.childcarecrm-form__contact-row .childcarecrm-form__field--contact-pair {
	width: 50%;
	padding-left: 8px;
	padding-right: 8px;
}

.childcarecrm-form__contact-row .childcarecrm-form__field--contact-pair label {
	width: auto;
}

.childcarecrm-form__footer > * {
	display: block;
}

.childcarecrm-form__footer input[type="submit"] {
	margin: 16px 0;
}

.childcarecrm-form__group {
	margin: 32px 0;
}

.childcarecrm-form__success-message * {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.childcarecrm-form__tour-child-toggle {
	display: block;
	width: 100%;
}

.childcarecrm-form__tour-child-toggle button {
	display: block;
	margin: 8px auto;
}

.childcarecrm-form__staff-section {
	border-top: 1px solid grey;
	margin-top: 20px;
	padding-top: 20px;
}

.childcarecrm-form__staff-section div {
	margin-top: 20px;
}

.childcarecrm-form__select-days-needs-style {
	border: 1px solid black;
	margin-left: 5px;
	border-radius: 3px;
	padding: 2px;
}

.childcarecrm-form__control.childcarecrm-form__invalid, .childcarecrm-form__control.childcarecrm-form__invalid_parts input, .childcarecrm-form__control.childcarecrm-form__invalid_parts select, .childcarecrm-form.childcarecrm-form__submitted .childcarecrm-form__control select:invalid, .childcarecrm-form.childcarecrm-form__submitted .childcarecrm-form__control:invalid {
	box-shadow: 0 0 0 1px red;
}

.childcarecrm-form__errors {
	padding: 5px;
	border: 1px solid red;
}

.fc-event {
	color: black;
	background-color: lightgray;
}

.fc-event.available-tour-time {
	background-color: white;
	cursor: pointer;
}

.fc-event .fc-time {
	font-weight: normal;
}

.fc-event .fc-time:hover, .fc-event.selected-tour-time .fc-time {
	font-weight: bold;
}

.fc-event:hover {
	color: #ccc;
}

.fc-event.selected-tour-time {
	background-color: green;
	color: white;
	font-weight: bold;
}

.childcarecrm-form__data-separator {
	display: none;
}

@media (max-width: 576px), (pointer: coarse) {
	.childcarecrm-form__data-separator {
		display: inline;
	}
	
	#childcarecrm-form__confirmation-data dt, #childcarecrm-form__confirmation-data dd {
		display: inline-block;
		margin-left: 5px !important;
	}
	
	.childcarecrm-form__field {
		display: block;
		width: 100%;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	
	.childcarecrm-form__contact-row .childcarecrm-form__field--contact-pair {
		width: 100%;
		padding-left: 0;
		padding-right: 0;
	}
}

.a2p-checkbox-container {
	display: flex;
	align-items: center;
	font-size: smaller;
	margin-top: 10px;
	align-self: center;
	justify-content: center;
}

.a2p-checkbox-container input[type="checkbox"] {
	margin-right: 10px;
	align-self: flex-start;
}

.a2p-checkbox-label {
	font-size: smaller;
	font-weight: 400;
}

.a2p-checkbox-wrapper {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	align-items: flex-start;
	max-width: 100%;
}

.a2p-checkbox-card {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	flex: 1 1 calc(50% - 8px);
}

.a2p-checkbox-card input[type="checkbox"] {
	margin-top: 2px;
	flex-shrink: 0;
}

.a2p-checkbox-label {
	flex: 1;
	line-height: 1.4;
}

.a2p-checkbox-label strong {
	display: inline;
	font-weight: 600;
}

.a2p-terms {
	font-size: smaller;
	text-align: left;
	margin-top: 5px;
	margin-left: 76px;
}