@import "../../utils/variables";
$color_1: $white;
$color_2: var(--fc-button-text-color, #fff);
$color_3: var(--fc-event-text-color, #fff);
$color_4: #808080;
$color_5: var(--fc-neutral-text-color, #808080);
$color_6: inherit;
$color_7: var(--fc-more-link-text-color, inherit);
$font-family_1: 'fcicons';
$font-family_2: inherit;
$background-color_1: transparent;
$background-color_2: $primary-color;
$background-color_3: var(--fc-button-bg-color, $primary-color);
$background-color_4: $primary-color;
$background-color_5: var(--fc-button-hover-bg-color, $primary-color);
$background-color_6: $primary-color;
$background-color_7: var(--fc-button-active-bg-color, $primary-color);
$background-color_8: $primary-color;
$background-color_9: var(--fc-event-bg-color, $primary-color);
$background-color_10: rgba(255, 220, 40, 0.15);
$background-color_11: var(--fc-today-bg-color, rgba(255, 220, 40, 0.15));
$background-color_12: rgba(208, 208, 208, 0.3);
$background-color_13: var(--fc-neutral-bg-color, rgba(208, 208, 208, 0.3));
$background-color_14: #f5f5f5;
$background-color_15: var(--fc-list-event-hover-bg-color, #f5f5f5);
$background-color_16: var(--bs-gray-200);
$border-color_1: $primary-color;
$border-color_2: var(--fc-button-border-color, $primary-color);
$border-color_3: $primary-color;
$border-color_4: var(--fc-button-hover-border-color, $primary-color);
$border-color_5: #534686;
$border-color_6: var(--fc-button-active-border-color, $primary-color);
$border-color_7: inherit;
$border-color_8: red;
$border-color_9: var(--fc-now-indicator-color, red);
$border-top-color_1: transparent;
$border-bottom-color_1: transparent;

/* classes attached to <body> */
/* TODO: make fc-event selector work when calender in shadow DOM */
/* TODO: not attached to body. attached to specific els. move */
/* for FF, which doesn't expand a 100% div within a table cell. use absolute positioning */
/* inner-wrappers are responsible for being absolute */
/* TODO: best place for this? */
@font-face {
	font-family: 'fcicons';
	src: url("data:application/x-font-ttf;charset=utf-8;base64,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") format('truetype');
	font-weight: normal;
	font-style: normal;
}
/*
Lots taken from Flatly (MIT): https://bootswatch.com/4/flatly/bootstrap.css

These styles only apply when the standard-theme is activated.
When it's NOT activated, the fc-button classes won't even be in the DOM.
*/
/* link resets */
/* ---------------------------------------------------------------------------------------------------- */
/* cursor */
/* event text content */
/* ---------------------------------------------------------------------------------------------------- */
/* dragging */
/* ---------------------------------------------------------------------------------------------------- */
/* resizing */
/* ---------------------------------------------------------------------------------------------------- */
/* (subclasses should hone positioning for touch and non-touch) */
/* MOUSE */
/* selecting (always TOUCH) */
/* OR, focused by tab-index */
/* (TODO: maybe not the best focus-styling for .fc-daygrid-dot-event) */
/* ---------------------------------------------------------------------------------------------------- */
/*
A HORIZONTAL event
*/
/* adjust border and border-radius (if there is any) for non-start/end */
/* resizers */
/* resizers for TOUCH */
/* help things clear margins of inner content */
/* --- the rectangle ("block") style of event --- */
/* --- the dot style of event --- */
/* --- spacing between time and title --- */
/*
A VERTICAL event
*/
/* make the dot closer to the event title */
.fc-not-allowed {
	cursor: not-allowed;
	.fc-event {
		cursor: not-allowed;
	}
}
.fc-unselectable {
	-webkit-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 {
	display: flex;
	flex-direction: column;
	font-size: 1em;
	box-sizing: border-box;
	* {
		box-sizing: border-box;
		&:before {
			box-sizing: border-box;
		}
		&:after {
			box-sizing: border-box;
		}
	}
	table {
		border-collapse: collapse;
		border-spacing: 0;
		font-size: 1em;
	}
	th {
		text-align: center;
		vertical-align: top;
		padding: 0;
	}
	td {
		vertical-align: top;
		padding: 0;
	}
	a[data-navlink] {
		cursor: pointer;
		&:hover {
			text-decoration: underline;
		}
	}
	.fc-button {
		border-radius: 0;
		overflow: visible;
		text-transform: none;
		margin: 0;
		font-family: $font-family_2;
		font-size: inherit;
		line-height: inherit;
		-webkit-appearance: button;
		display: inline-block;
		font-weight: 400;
		text-align: center;
		vertical-align: middle;
		-webkit-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		user-select: none;
		background-color: $background-color_1;
		border: 1px solid transparent;
		padding: 0.4em 0.65em;
		font-size: 1em;
		line-height: 1.5;
		border-radius: 0.25em;
		&:focus {
			outline: 1px dotted;
			outline: 5px auto -webkit-focus-ring-color;
			outline: 0;
			box-shadow: 0 0 0 0.2rem rgba(44, 62, 80, 0.25);
		}
		&:not(:disabled) {
			cursor: pointer;
		}
		&::-moz-focus-inner {
			padding: 0;
			border-style: none;
		}
		&:hover {
			text-decoration: none;
		}
		&:disabled {
			opacity: 0.65;
		}
		.fc-icon {
			vertical-align: middle;
			font-size: 1.5em;
		}
	}
	.fc-button-primary {
		color: $color_1;
		color: $color_2;
		background-color: $background-color_2;
		background-color: $background-color_3;
		border-color: $border-color_1;
		border-color: $border-color_2;
		&:hover {
			color: $color_1;
			color: $color_2;
			background-color: $background-color_4;
			background-color: $background-color_5;
			border-color: $border-color_3;
			border-color: $border-color_4;
		}
		&:disabled {
			color: $color_1;
			color: $color_2;
			background-color: $background-color_2;
			background-color: $background-color_3;
			border-color: $border-color_1;
			border-color: $border-color_2;
		}
		&:focus {
			box-shadow: 0 0 0 0.2rem rgba(76, 91, 106, 0.5);
		}
		&:not(:disabled) {
			&:active {
				color: $color_1;
				color: $color_2;
				background-color: $background-color_6;
				background-color: $background-color_7;
				border-color: $border-color_5;
				border-color: $border-color_6;
				&:focus {
					box-shadow: 0 0 0 0.2rem rgba(76, 91, 106, 0.5);
				}
			}
		}
		&:not(:disabled).fc-button-active {
			color: $color_1;
			color: $color_2;
			background-color: $background-color_6;
			background-color: $background-color_7;
			border-color: $border-color_5;
			border-color: $border-color_6;
			&:focus {
				box-shadow: 0 0 0 0.2rem rgba($primary-color, 0.5);
			}
		}
	}
	.fc-button-group {
		position: relative;
		display: inline-flex;
		vertical-align: middle;
		>.fc-button {
			position: relative;
			flex: 1 1 auto;
			&:hover {
				z-index: 1;
			}
			&:focus {
				z-index: 1;
			}
			&:active {
				z-index: 1;
			}
		}
		>.fc-button.fc-button-active {
			z-index: 1;
		}
	}
	.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-title {
		font-size: 1.75em;
		margin: 0;
	}
	.fc-scroller {
		-webkit-overflow-scrolling: touch;
		position: relative;
	}
	.fc-scroller-liquid {
		height: 100%;
	}
	.fc-scroller-liquid-absolute {
		position: absolute;
		top: 0;
		right: 0;
		left: 0;
		bottom: 0;
	}
	.fc-scroller-harness {
		position: relative;
		overflow: hidden;
		direction: ltr;
	}
	.fc-scroller-harness-liquid {
		height: 100%;
	}
	.fc-scrollgrid {
		width: 100%;
		table-layout: fixed;
		border-collapse: separate;
		border-right-width: 0;
		border-bottom-width: 0;
		table {
			width: 100%;
			table-layout: fixed;
			border-top-style: hidden;
			border-left-style: hidden;
			border-right-style: hidden;
		}
	}
	.fc-scrollgrid-liquid {
		height: 100%;
	}
	.fc-scrollgrid-section {
		height: 1px;
		>td {
			height: 1px;
		}
		table {
			height: 1px;
		}
		>* {
			border-top-width: 0;
			border-left-width: 0;
		}
	}
	.fc-scrollgrid-section-liquid {
		>td {
			height: 100%;
		}
	}
	.fc-scrollgrid-section-header {
		>* {
			border-bottom-width: 0;
		}
	}
	.fc-scrollgrid-section-footer {
		>* {
			border-bottom-width: 0;
		}
		table {
			border-bottom-style: hidden;
		}
	}
	.fc-scrollgrid-section-body {
		table {
			border-bottom-style: hidden;
		}
	}
	.fc-scrollgrid-section-sticky {
		>* {
			background: #fff;
			background: var(--fc-page-bg-color, #fff);
			position: sticky;
			z-index: 3;
		}
	}
	.fc-scrollgrid-section-header.fc-scrollgrid-section-sticky {
		>* {
			top: 0;
		}
	}
	.fc-scrollgrid-section-footer.fc-scrollgrid-section-sticky {
		>* {
			bottom: 0;
		}
	}
	.fc-scrollgrid-sticky-shim {
		height: 1px;
		margin-bottom: -1px;
	}
	.fc-view-harness {
		flex-grow: 1;
		position: relative;
	}
	.fc-view-harness-active {
		>.fc-view {
			position: absolute;
			top: 0;
			right: 0;
			bottom: 0;
			left: 0;
		}
	}
	.fc-col-header-cell-cushion {
		display: inline-block;
		padding: 2px 4px;
	}
	.fc-bg-event {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background: rgb(143, 223, 130);
		background: var(--fc-bg-event-color, rgb(143, 223, 130));
		opacity: 0.3;
		opacity: var(--fc-bg-event-opacity, 0.3);
		.fc-event-title {
			margin: .5em;
			font-size: .85em;
			font-size: var(--fc-small-font-size, .85em);
			font-style: italic;
		}
	}
	.fc-non-business {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background: rgba(215, 215, 215, 0.3);
		background: var(--fc-non-business-color, rgba(215, 215, 215, 0.3));
	}
	.fc-highlight {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background: rgba(188, 232, 241, 0.3);
		background: var(--fc-highlight-color, rgba(188, 232, 241, 0.3));
	}
	.fc-cell-shaded {
		background: rgba(208, 208, 208, 0.3);
		background: var(--fc-neutral-bg-color, rgba(208, 208, 208, 0.3));
	}
	.fc-day-disabled {
		background: rgba(208, 208, 208, 0.3);
		background: var(--fc-neutral-bg-color, rgba(208, 208, 208, 0.3));
	}
	.fc-popover {
		position: absolute;
		z-index: 9999;
		box-shadow: 0 2px 6px rgba(0,0,0,.15);
	}
	.fc-popover-header {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
		padding: 3px 4px;
	}
	.fc-popover-title {
		margin: 0 2px;
	}
	.fc-popover-close {
		cursor: pointer;
		opacity: 0.65;
		font-size: 1.1em;
	}
	.fc-daygrid-body {
		position: relative;
		z-index: 1;
	}
	.fc-daygrid-day.fc-day-today {
		background-color: $background-color_10;
		background-color: $background-color_11;
	}
	.fc-daygrid-day-frame {
		position: relative;
		min-height: 100%;
	}
	.fc-daygrid-day-top {
		display: flex;
		flex-direction: row-reverse;
	}
	.fc-day-other {
		.fc-daygrid-day-top {
			opacity: 0.3;
		}
	}
	.fc-daygrid-day-number {
		position: relative;
		z-index: 4;
		padding: 4px;
	}
	.fc-daygrid-day-events {
		margin-top: 1px;
	}
	.fc-daygrid-body-balanced {
		.fc-daygrid-day-events {
			position: absolute;
			left: 0;
			right: 0;
		}
	}
	.fc-daygrid-body-unbalanced {
		.fc-daygrid-day-events {
			position: relative;
			min-height: 2em;
		}
	}
	.fc-daygrid-body-natural {
		.fc-daygrid-day-events {
			margin-bottom: 1em;
		}
	}
	.fc-daygrid-event-harness {
		position: relative;
	}
	.fc-daygrid-event-harness-abs {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
	}
	.fc-daygrid-bg-harness {
		position: absolute;
		top: 0;
		bottom: 0;
	}
	.fc-daygrid-day-bg {
		.fc-non-business {
			z-index: 1;
		}
		.fc-bg-event {
			z-index: 2;
		}
		.fc-highlight {
			z-index: 3;
		}
	}
	.fc-daygrid-event {
		z-index: 6;
		margin-top: 1px;
	}
	.fc-daygrid-event.fc-event-mirror {
		z-index: 7;
	}
	.fc-daygrid-day-bottom {
		font-size: .85em;
		padding: 2px 3px 0;
		&:before {
			content: "";
			clear: both;
			display: table;
		}
	}
	.fc-daygrid-more-link {
		position: relative;
		z-index: 4;
		cursor: pointer;
	}
	.fc-daygrid-week-number {
		position: absolute;
		z-index: 5;
		top: 0;
		padding: 2px;
		min-width: 1.5em;
		text-align: center;
		background-color: $background-color_12;
		background-color: $background-color_13;
		color: $color_4;
		color: $color_5;
	}
	.fc-more-popover {
		.fc-popover-body {
			min-width: 220px;
			padding: 10px;
		}
	}
	.fc-timegrid {
		.fc-daygrid-body {
			z-index: 2;
		}
	}
	.fc-timegrid-divider {
		padding: 0 0 2px;
	}
	.fc-timegrid-body {
		position: relative;
		z-index: 1;
		min-height: 100%;
	}
	.fc-timegrid-axis-chunk {
		position: relative;
		>table {
			position: relative;
			z-index: 1;
		}
	}
	.fc-timegrid-slots {
		position: relative;
		z-index: 1;
	}
	.fc-timegrid-slot {
		height: 1.5em;
		border-bottom: 0;
		&:empty {
			&:before {
				content: '\00a0';
			}
		}
	}
	.fc-timegrid-slot-minor {
		border-top-style: dotted;
	}
	.fc-timegrid-slot-label-cushion {
		display: inline-block;
		white-space: nowrap;
		padding: 0 4px;
	}
	.fc-timegrid-slot-label {
		vertical-align: middle;
	}
	.fc-timegrid-axis-cushion {
		padding: 0 4px;
		max-width: 60px;
		flex-shrink: 0;
	}
	.fc-timegrid-axis-frame-liquid {
		height: 100%;
	}
	.fc-timegrid-axis-frame {
		overflow: hidden;
		display: flex;
		align-items: center;
		justify-content: flex-end;
	}
	.fc-timegrid-col.fc-day-today {
		background-color: $background-color_10;
		background-color: $background-color_11;
	}
	.fc-timegrid-col-frame {
		min-height: 100%;
		position: relative;
	}
	.fc-timegrid-col-bg {
		z-index: 2;
		.fc-non-business {
			z-index: 1;
		}
		.fc-bg-event {
			z-index: 2;
		}
		.fc-highlight {
			z-index: 3;
		}
	}
	.fc-timegrid-bg-harness {
		position: absolute;
		left: 0;
		right: 0;
	}
	.fc-timegrid-col-events {
		z-index: 3;
	}
	.fc-timegrid-now-indicator-container {
		bottom: 0;
		overflow: hidden;
	}
	.fc-timegrid-now-indicator-line {
		position: absolute;
		z-index: 4;
		left: 0;
		right: 0;
		border-style: solid;
		border-color: $border-color_8;
		border-color: $border-color_9;
		border-width: 1px 0 0;
	}
	.fc-timegrid-now-indicator-arrow {
		position: absolute;
		z-index: 4;
		margin-top: -5px;
		border-style: solid;
		border-color: $border-color_8;
		border-color: $border-color_9;
	}
	.fc-list-empty {
		background-color: $background-color_12;
		background-color: $background-color_13;
		height: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.fc-list-empty-cushion {
		margin: 5em 0;
	}
	.fc-list-table {
		width: 100%;
		border-style: hidden;
		tr {
			>* {
				border-left: 0;
				border-right: 0;
			}
		}
		thead {
			position: absolute;
			left: -10000px;
		}
		tbody {
			>tr {
				&:first-child {
					th {
						border-top: 0;
					}
				}
			}
		}
		th {
			padding: 0;
		}
		td {
			padding: 8px 14px;
		}
	}
	.fc-list-sticky {
		.fc-list-day {
			>* {
				position: sticky;
				top: 0;
				background: #fff;
				background: var(--fc-page-bg-color, #fff);
			}
		}
	}
	.fc-list-day-cushion {
		padding: 8px 14px;
		&:after {
			content: "";
			clear: both;
			display: table;
		}
	}
	.fc-list-event.fc-event-forced-url {
		cursor: pointer;
		&:hover {
			a {
				text-decoration: underline;
			}
		}
	}
	.fc-list-event {
		&:hover {
			td {
				background-color: $background-color_14;
				background-color: $background-color_15;
			}
		}
	}
	.fc-list-event-graphic {
		white-space: nowrap;
		width: 1px;
	}
	.fc-list-event-time {
		white-space: nowrap;
		width: 1px;
	}
	.fc-list-event-dot {
		display: inline-block;
		box-sizing: content-box;
		width: 0;
		height: 0;
		border: 5px solid $primary-color;
		border: calc(var(--fc-list-event-dot-width, 10px) / 2) solid var(--fc-event-border-color, $primary-color);
		border-radius: 5px;
		border-radius: calc(var(--fc-list-event-dot-width, 10px) / 2);
	}
	.fc-list-event-title {
		a {
			color: $color_6;
			text-decoration: none;
		}
	}
}
.fc-direction-ltr {
	direction: ltr;
	text-align: left;
	.fc-button-group {
		>.fc-button {
			&:not(:first-child) {
				margin-left: -1px;
				border-top-left-radius: 0;
				border-bottom-left-radius: 0;
			}
			&:not(:last-child) {
				border-top-right-radius: 0;
				border-bottom-right-radius: 0;
			}
		}
	}
  .fc-direction-ltr .fc-toolbar > * > :not(:first-child){
      margin-left: .75em;
  }
	.fc-daygrid-block-event {
		&:not(.fc-event-start) {
			border-top-left-radius: 0;
			border-bottom-left-radius: 0;
			border-left-width: 0;
		}
		&:not(.fc-event-end) {
			border-top-right-radius: 0;
			border-bottom-right-radius: 0;
			border-right-width: 0;
		}
	}
	.fc-h-event {
		&:not(.fc-event-selected) {
			.fc-event-resizer-start {
				cursor: w-resize;
				left: -4px;
				left: calc(-0.5 * var(--fc-event-resizer-thickness, 8px));
			}
			.fc-event-resizer-end {
				cursor: e-resize;
				right: -4px;
				right: calc(-0.5 * var(--fc-event-resizer-thickness, 8px));
			}
		}
	}
	.fc-h-event.fc-event-selected {
		.fc-event-resizer-start {
			left: -4px;
			left: calc(-0.5 * var(--fc-event-resizer-dot-total-width, 8px));
		}
		.fc-event-resizer-end {
			right: -4px;
			right: calc(-0.5 * var(--fc-event-resizer-dot-total-width, 8px));
		}
	}
	.fc-daygrid-event.fc-event-start {
		margin-left: 2px;
	}
	.fc-daygrid-event.fc-event-end {
		margin-right: 2px;
	}
	.fc-daygrid-week-number {
		left: 0;
		border-radius: 0 0 3px 0;
	}
	.fc-daygrid-event {
		.fc-event-time {
			margin-right: 3px;
		}
	}
	.fc-timegrid-slot-label-frame {
		text-align: right;
	}
	.fc-timegrid-col-events {
		margin: 0 2.5% 0 2px;
	}
	.fc-timegrid-more-link {
		right: 0;
	}
	.fc-timegrid-now-indicator-arrow {
		left: 0;
		border-width: 5px 0 5px 6px;
		border-top-color: $border-top-color_1;
		border-bottom-color: $border-bottom-color_1;
	}
	.fc-list-day-text {
		float: left;
	}
	.fc-list-day-side-text {
		float: right;
	}
	.fc-list-table {
		.fc-list-event-graphic {
			padding-right: 0;
		}
	}
}
.fc-direction-rtl {
	direction: rtl;
	text-align: right;
	.fc-button-group {
		>.fc-button {
			&:not(:first-child) {
				margin-right: -1px;
				border-top-right-radius: 0;
				border-bottom-right-radius: 0;
			}
			&:not(:last-child) {
				border-top-left-radius: 0;
				border-bottom-left-radius: 0;
			}
		}
	}
  .fc-direction-rtl .fc-toolbar > * > :not(:first-child){
    margin-right: .75em;
  }
	.fc-toolbar-ltr {
		flex-direction: row-reverse;
	}
	.fc-scroller-harness {
		>.fc-scroller {
			direction: rtl;
		}
	}
	.fc-daygrid-block-event {
		&:not(.fc-event-end) {
			border-top-left-radius: 0;
			border-bottom-left-radius: 0;
			border-left-width: 0;
		}
		&:not(.fc-event-start) {
			border-top-right-radius: 0;
			border-bottom-right-radius: 0;
			border-right-width: 0;
		}
	}
	.fc-h-event {
		&:not(.fc-event-selected) {
			.fc-event-resizer-end {
				cursor: w-resize;
				left: -4px;
				left: calc(-0.5 * var(--fc-event-resizer-thickness, 8px));
			}
			.fc-event-resizer-start {
				cursor: e-resize;
				right: -4px;
				right: calc(-0.5 * var(--fc-event-resizer-thickness, 8px));
			}
		}
	}
	.fc-h-event.fc-event-selected {
		.fc-event-resizer-end {
			left: -4px;
			left: calc(-0.5 * var(--fc-event-resizer-dot-total-width, 8px));
		}
		.fc-event-resizer-start {
			right: -4px;
			right: calc(-0.5 * var(--fc-event-resizer-dot-total-width, 8px));
		}
	}
	.fc-daygrid-event.fc-event-end {
		margin-left: 2px;
	}
	.fc-daygrid-event.fc-event-start {
		margin-right: 2px;
	}
	.fc-daygrid-week-number {
		right: 0;
		border-radius: 0 0 0 3px;
	}
	.fc-daygrid-event {
		.fc-event-time {
			margin-left: 3px;
		}
	}
	.fc-timegrid-slot-label-frame {
		text-align: left;
	}
	.fc-timegrid-col-events {
		margin: 0 2px 0 2.5%;
	}
	.fc-timegrid-more-link {
		left: 0;
	}
	.fc-timegrid-now-indicator-arrow {
		right: 0;
		border-width: 5px 6px 5px 0;
		border-top-color: $border-top-color_1;
		border-bottom-color: $border-bottom-color_1;
	}
	.fc-list-day-side-text {
		float: left;
	}
	.fc-list-day-text {
		float: right;
	}
	.fc-list-table {
		.fc-list-event-graphic {
			padding-left: 0;
		}
	}
}
.fc-theme-standard {
	td {
		border: 1px solid #ddd;
		border: 1px solid var(--fc-border-color, #ddd);
	}
	th {
		border: 1px solid #ddd;
		border: 1px solid var(--fc-border-color, #ddd);
	}
	.fc-scrollgrid {
		border: 1px solid #ddd;
		border: 1px solid var(--fc-border-color, #ddd);
	}
	.fc-popover {
		border: 1px solid #ddd;
		border: 1px solid var(--fc-border-color, #ddd);
		background: #fff;
		background: var(--fc-page-bg-color, #fff);
	}
	.fc-popover-header {
		background: rgba(208, 208, 208, 0.3);
		background: var(--fc-neutral-bg-color, rgba(208, 208, 208, 0.3));
	}
	.fc-list {
		border: 1px solid #ddd;
		border: 1px solid var(--fc-border-color, #ddd);
	}
	.fc-list-day-cushion {
		background-color: $background-color_12;
		background-color: $background-color_13;
	}
}
.fc-liquid-hack {
	td {
		position: relative;
	}
	th {
		position: relative;
	}
	.fc-daygrid-day-frame {
		position: static;
	}
	.fc-timegrid-axis-frame-liquid {
		height: auto;
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	}
}
.fc-icon {
	display: inline-block;
	width: 1em;
	height: 1em;
	text-align: center;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	font-family: $font-family_1 !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: "\e900";
	}
}
.fc-icon-chevron-right {
	&:before {
		content: "\e901";
	}
}
.fc-icon-chevrons-left {
	&:before {
		content: "\e902";
	}
}
.fc-icon-chevrons-right {
	&:before {
		content: "\e903";
	}
}
.fc-icon-minus-square {
	&:before {
		content: "\e904";
	}
}
.fc-icon-plus-square {
	&:before {
		content: "\e905";
	}
}
.fc-icon-x {
	&:before {
		content: "\e906";
	}
}
.fc-sticky {
	position: sticky;
}
a.fc-event {
	text-decoration: none;
	&:hover {
		text-decoration: none;
	}
}
.fc-event[href] {
	cursor: pointer;
}
.fc-event.fc-event-draggable {
	cursor: pointer;
}
.fc-event {
	.fc-event-main {
		position: relative;
		z-index: 2;
	}
	.fc-event-resizer {
		display: none;
		position: absolute;
		z-index: 4;
	}
	&:hover {
		.fc-event-resizer {
			display: block;
		}
	}
	&:focus {
		box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
		&:before {
			content: "";
			position: absolute;
			z-index: 3;
			top: 0;
			left: 0;
			right: 0;
			bottom: 0;
		}
		&:after {
			content: "";
			background: rgba(0, 0, 0, 0.25);
			background: var(--fc-event-selected-overlay-color, rgba(0, 0, 0, 0.25));
			position: absolute;
			z-index: 1;
			top: -1px;
			left: -1px;
			right: -1px;
			bottom: -1px;
		}
	}
}
.fc-event-dragging {
	&:not(.fc-event-selected) {
		opacity: 0.75;
	}
}
.fc-event-dragging.fc-event-selected {
	box-shadow: 0 2px 7px rgba(0, 0, 0, 0.3);
}
.fc-event-selected {
	.fc-event-resizer {
		display: block;
		border-radius: 4px;
		border-radius: calc(var(--fc-event-resizer-dot-total-width, 8px) / 2);
		border-width: 1px;
		border-width: var(--fc-event-resizer-dot-border-width, 1px);
		width: 8px;
		width: var(--fc-event-resizer-dot-total-width, 8px);
		height: 8px;
		height: var(--fc-event-resizer-dot-total-width, 8px);
		border-style: solid;
		border-color: $border-color_7;
		background: #fff;
		background: var(--fc-page-bg-color, #fff);
		&:before {
			content: '';
			position: absolute;
			top: -20px;
			left: -20px;
			right: -20px;
			bottom: -20px;
		}
	}
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
	&:before {
		content: "";
		position: absolute;
		z-index: 3;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
	}
	&:after {
		content: "";
		background: rgba(0, 0, 0, 0.25);
		background: var(--fc-event-selected-overlay-color, rgba(0, 0, 0, 0.25));
		position: absolute;
		z-index: 1;
		top: -1px;
		left: -1px;
		right: -1px;
		bottom: -1px;
	}
}
.fc-h-event {
	display: block;
	border: 1px solid $primary-color;
	border: 1px solid var(--fc-event-border-color, $primary-color);
	background-color: $background-color_8;
	background-color: $background-color_9;
	.fc-event-main {
		color: $color_1;
		color: $color_3;
	}
	.fc-event-main-frame {
		display: flex;
	}
	.fc-event-time {
		max-width: 100%;
		overflow: hidden;
	}
	.fc-event-title-container {
		flex-grow: 1;
		flex-shrink: 1;
		min-width: 0;
	}
	.fc-event-title {
		display: inline-block;
		vertical-align: top;
		left: 0;
		right: 0;
		max-width: 100%;
		overflow: hidden;
	}
	&:not(.fc-event-selected) {
		.fc-event-resizer {
			top: 0;
			bottom: 0;
			width: 8px;
			width: var(--fc-event-resizer-thickness, 8px);
		}
	}
}
.fc-h-event.fc-event-selected {
	&:before {
		top: -10px;
		bottom: -10px;
	}
	.fc-event-resizer {
		top: 50%;
		margin-top: -4px;
		margin-top: calc(-0.5 * var(--fc-event-resizer-dot-total-width, 8px));
	}
}
:root {
	--fc-daygrid-event-dot-width: 8px;
	--fc-list-event-dot-width: 10px;
	--fc-list-event-hover-bg-color: #f5f5f5;
}
.fc-daygrid-day-frame {
	&:before {
		content: "";
		clear: both;
		display: table;
	}
	&:after {
		content: "";
		clear: both;
		display: table;
	}
}
.fc-daygrid-day-events {
	&:before {
		content: "";
		clear: both;
		display: table;
	}
	&:after {
		content: "";
		clear: both;
		display: table;
	}
}
.fc-daygrid-event-harness {
	&:before {
		content: "";
		clear: both;
		display: table;
	}
	&:after {
		content: "";
		clear: both;
		display: table;
	}
}
.fc-daygrid-event {
	position: relative;
	white-space: nowrap;
	border-radius: 3px;
	font-size: .85em;
	font-size: var(--fc-small-font-size, .85em);
}
.fc-daygrid-block-event {
	.fc-event-time {
		font-weight: bold;
		padding: 1px;
	}
	.fc-event-title {
		padding: 1px;
	}
}
.fc-daygrid-dot-event {
	display: flex;
	align-items: center;
	padding: 2px 0;
	.fc-event-title {
		flex-grow: 1;
		flex-shrink: 1;
		min-width: 0;
		overflow: hidden;
		font-weight: bold;
	}
	&:hover {
		background: rgba(0, 0, 0, 0.1);
	}
}
.fc-daygrid-dot-event.fc-event-mirror {
	background: rgba(0, 0, 0, 0.1);
}
.fc-daygrid-dot-event.fc-event-selected {
	&:before {
		top: -10px;
		bottom: -10px;
	}
}
.fc-daygrid-event-dot {
	margin: 0 4px;
	box-sizing: content-box;
	width: 0;
	height: 0;
	border: 4px solid $primary-color;
	border: calc(var(--fc-daygrid-event-dot-width, 8px) / 2) solid var(--fc-event-border-color, $primary-color);
	border-radius: 4px;
	border-radius: calc(var(--fc-daygrid-event-dot-width, 8px) / 2);
}
.fc-v-event {
	display: block;
	border: 1px solid $primary-color;
	border: 1px solid var(--fc-event-border-color, $primary-color);
	background-color: $background-color_8;
	background-color: $background-color_9;
	.fc-event-main {
		color: $color_1;
		color: $color_3;
		height: 100%;
	}
	.fc-event-main-frame {
		height: 100%;
		display: flex;
		flex-direction: column;
	}
	.fc-event-time {
		flex-grow: 0;
		flex-shrink: 0;
		max-height: 100%;
		overflow: hidden;
	}
	.fc-event-title-container {
		flex-grow: 1;
		flex-shrink: 1;
		min-height: 0;
	}
	.fc-event-title {
		top: 0;
		bottom: 0;
		max-height: 100%;
		overflow: hidden;
	}
	&:not(.fc-event-start) {
		border-top-width: 0;
		border-top-left-radius: 0;
		border-top-right-radius: 0;
	}
	&:not(.fc-event-end) {
		border-bottom-width: 0;
		border-bottom-left-radius: 0;
		border-bottom-right-radius: 0;
	}
	.fc-event-resizer-start {
		cursor: n-resize;
	}
	.fc-event-resizer-end {
		cursor: s-resize;
	}
	&:not(.fc-event-selected) {
		.fc-event-resizer {
			height: 8px;
			height: var(--fc-event-resizer-thickness, 8px);
			left: 0;
			right: 0;
		}
		.fc-event-resizer-start {
			top: -4px;
			top: calc(var(--fc-event-resizer-thickness, 8px) / -2);
		}
		.fc-event-resizer-end {
			bottom: -4px;
			bottom: calc(var(--fc-event-resizer-thickness, 8px) / -2);
		}
	}
}
.fc-v-event.fc-event-selected {
	&:before {
		left: -10px;
		right: -10px;
	}
	.fc-event-resizer {
		left: 50%;
		margin-left: -4px;
		margin-left: calc(var(--fc-event-resizer-dot-total-width, 8px) / -2);
	}
	.fc-event-resizer-start {
		top: -4px;
		top: calc(var(--fc-event-resizer-dot-total-width, 8px) / -2);
	}
	.fc-event-resizer-end {
		bottom: -4px;
		bottom: calc(var(--fc-event-resizer-dot-total-width, 8px) / -2);
	}
}
.fc-media-screen.fc-liquid-hack {
	.fc-timegrid-col-frame {
		height: auto;
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	}
}
.fc-media-screen {
	.fc-timegrid-cols {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		>table {
			height: 100%;
		}
	}
	.fc-timegrid-col-bg {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
	}
	.fc-timegrid-col-events {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
	}
	.fc-timegrid-now-indicator-container {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
	}
}
.fc-timegrid-event-harness {
	position: absolute;
	>.fc-timegrid-event {
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
	}
}
.fc-timegrid-event-harness-inset {
	.fc-timegrid-event {
		box-shadow: 0px 0px 0px 1px #fff;
		box-shadow: 0px 0px 0px 1px var(--fc-page-bg-color, #fff);
	}
}
.fc-timegrid-event.fc-event-mirror {
	box-shadow: 0px 0px 0px 1px #fff;
	box-shadow: 0px 0px 0px 1px var(--fc-page-bg-color, #fff);
}
.fc-timegrid-more-link {
	box-shadow: 0px 0px 0px 1px #fff;
	box-shadow: 0px 0px 0px 1px var(--fc-page-bg-color, #fff);
	font-size: .85em;
	font-size: var(--fc-small-font-size, .85em);
	border-radius: 3px;
	position: absolute;
	z-index: 9999;
	color: $color_6;
	color: $color_7;
	background: #d0d0d0;
	background: var(--fc-more-link-bg-color, #d0d0d0);
	cursor: pointer;
	margin-bottom: 1px;
}
.fc-timegrid-event {
	font-size: .85em;
	font-size: var(--fc-small-font-size, .85em);
	border-radius: 3px;
	margin-bottom: 1px;
	.fc-event-main {
		padding: 1px 1px 0;
	}
	.fc-event-time {
		white-space: nowrap;
		font-size: .85em;
		font-size: var(--fc-small-font-size, .85em);
		margin-bottom: 1px;
	}
}
.fc-timegrid-event-short {
	.fc-event-main-frame {
		flex-direction: row;
		overflow: hidden;
	}
	.fc-event-time {
		&:after {
			content: '\00a0-\00a0';
		}
	}
	.fc-event-title {
		font-size: .85em;
		font-size: var(--fc-small-font-size, .85em);
	}
}
.fc-timegrid-more-link-inner {
	padding: 3px 2px;
	top: 0;
}
.fc-theme-bootstrap {
	a {
		&:not([href]) {
			color: $color_6;
		}
	}
}
.fc-theme-bootstrap5 {
	a {
		&:not([href]) {
			color: $color_6;
			text-decoration: inherit;
		}
	}
	.fc-list {
		border: 1px solid var(--bs-gray-400);
	}
	.fc-scrollgrid {
		border: 1px solid var(--bs-gray-400);
		border-right-width: 0;
		border-bottom-width: 0;
	}
	td {
		border: 1px solid var(--bs-gray-400);
	}
	th {
		border: 1px solid var(--bs-gray-400);
	}
}
.fc-theme-bootstrap5-shaded {
	background-color: $background-color_16;
}
