.fc {
	--fc-event-bg-color: var(--theme--primary);
	--fc-event-border-color: var(--theme--primary);
	--fc-today-bg-color: var(--theme--primary-background);
	--fc-button-bg-color: transparent;
	--fc-button-active-bg-color: transparent;
	--fc-button-hover-bg-color: transparent;
	--fc-button-border-color: transparent;
	--fc-button-active-border-color: transparent;
	--fc-button-hover-border-color: transparent;
	--fc-button-text-color: var(--theme--foreground-subdued);
	--fc-border-color: var(--theme--form--field--input--border-color);
	--fc-highlight-color: var(--theme--primary-background);
	--fc-neutral-bg-color: var(--theme--background-normal);
	--fc-list-event-hover-bg-color: var(--theme--form--field--input--background-subdued);

	.fc-more-popover {
		max-width: var(--form-column-width);
		max-height: 330px;

		.fc-popover-body {
			max-height: 270px;
			overflow: auto;
		}
	}

	.fc-list-empty {
		background-color: var(--theme--background-subdued) !important;
	}

	.fc-daygrid-more-link {
		color: var(--theme--primary);
		font-weight: 600;
	}

	.fc-daygrid-day-bottom {
		line-height: 1.5;
	}

	.fc-daygrid-dot-event {
		padding: 0px 4px;
		line-height: 1.5;

		.fc-event-title {
			text-overflow: ellipsis;
		}
	}

	.fc-daygrid-dot-event:hover,
	.fc-daygrid-dot-event.fc-event-mirror {
		background: var(--theme--primary-subdued);
	}

	.fc-daygrid-event-dot {
		display: none;
	}

	.fc-button {
		font-weight: inherit !important;
		font-size: inherit !important;
		text-transform: capitalize !important;

		&-primary {
			&.fc-prevYear-button,
			&.fc-prev-button,
			&.fc-next-button,
			&.fc-nextYear-button {
				padding-right: 4px;
				padding-left: 4px;
			}

			&:focus {
				box-shadow: none !important;
			}

			&:not(:disabled) {
				&:hover {
					--fc-button-text-color: var(--theme--foreground);
				}

				&:active:focus,
				&.fc-button-active:focus {
					box-shadow: none !important;
				}
			}
		}

		&-active {
			--fc-button-text-color: var(--theme--primary);

			&:hover {
				--fc-button-text-color: var(--theme--primary) !important;
			}
		}
	}

	.fc-toolbar {
		&.fc-header-toolbar {
			position: sticky;
			top: var(--layout-offset-top);
			z-index: 4;
			width: 100%;
			height: 52px;
			margin-bottom: 36px;
			padding: 0 8px;
			font-weight: inherit !important;
			font-size: inherit !important;
			background-color: var(--theme--background);
			border-top: 2px solid var(--theme--border-color-subdued);
			border-bottom: 2px solid var(--theme--border-color-subdued);
			box-shadow: 0 0 0 2px var(--theme--background);
		}
	}

	.fc-toolbar-title {
		font-size: inherit !important;

		@include type-label;
	}

	.fc-event.selected {
		color: var(--theme--primary);
	}
}
