/* ------------------------------------------------------------------------------
 *
 *  # FullCalendar
 *
 *  Styles for fullcalendar.min.js - JavaScript event calendar
 *
 * ---------------------------------------------------------------------------- */

// Check if component is enabled
@if $enable-fullcalendar {


	// Layout
	// ------------------------------

	// Container
	.fc {
		direction: ltr;
		text-align: left;
	}

	// Events container
	.fc-events-container {
		background-color: $gray-100;
		border: $border-width solid $border-color;
		padding: map-get($spacers, 2);
		@include border-radius($border-radius);

		.fc-event {
			// margin: 0;
			padding: $fullcalendar-event-padding-y $fullcalendar-event-padding-x;

			+ .fc-event {
				margin-top: ($spacer / 2);
			}
		}
	}


	// Colors
	// ------------------------------

	// Default theme
	.fc-unthemed {
		th,
		td,
		thead,
		tbody,
		.fc-divider,
		.fc-row,
		.fc-content,
		.fc-popover,
		.fc-list-view,
		.fc-list-heading td {
			border-color: $table-border-color;
		}

		// Change bottom border color
		thead,
		thead td,
		thead th {
			border-bottom-color: $table-head-border-color;
		}

		// Popover
		.fc-popover {
			background-color: $popover-bg;
			@include border-radius($border-radius);
		}

		// Highlight today's date
		td.fc-today {
			background-color: $fullcalendar-today-bg;
		}
	}

	// When user is selecting cells
	.fc-highlight { 
		background-color: $fullcalendar-highlight-bg;
	}

	// Default look for background events
	.fc-bgevent {
		background-color: $fullcalendar-bgevent-bg;
		opacity: 0.3;
	}

	// Default look for non-business-hours areas
	// Will inherit .fc-bgevent's styles
	.fc-nonbusiness {
		background-color: $fullcalendar-nonbusiness-bg;
	}


	// Icons
	// ------------------------------

	// Icon base
	.fc-icon {
		display: block;
		user-select: none;
		@include transition(all ease-in-out $component-transition-timer);

		// Icon base
		&:after {
			display: inline-block;
			font-family: $icon-font-family;
			line-height: 1;
			font-size: $icon-font-size;
			vertical-align: middle;
			position: relative;
			top: ($font-size-base - $icon-font-size) / 2;
			@include ll-font-smoothing();
		}
	}

	// Arrow icons
	.fc-icon-left-single-arrow:after {
	    @if $direction == 'LTR' {
	        content: '\e9c0';
	    }
	    @else {
	        content: '\e9c3';
	    }
	    .fc-rtl & {
	    	content: '\e9c0';
	    }
	}
	.fc-icon-right-single-arrow:after {
	    @if $direction == 'LTR' {
	        content: '\e9c3';
	    }
	    @else {
	        content: '\e9c0';
	    }
	    .fc-rtl & {
	    	content: '\e9c3';
	    }
	}
	.fc-icon-left-double-arrow:after {
	    @if $direction == 'LTR' {
	        content: '\000AB';
	    }
	    @else {
	        content: '\000BB';
	    }
	    .fc-rtl & {
	    	content: '\000AB';
	    }
	}
	.fc-icon-right-double-arrow:after {
	    @if $direction == 'LTR' {
	        content: '\000BB';
	    }
	    @else {
	        content: '\000AB';
	    }
	    .fc-rtl & {
	    	content: '\000BB';
	    }
	}

	// Close popover icon
	.fc-icon-x:after {
		content: '\ed6a';
		font-size: $font-size-base;
		display: block;
		margin-top: ($line-height-computed - $font-size-base) / 2;
		top: 0;
	}


	// Buttons
	// ------------------------------

	// Base, identical to .btn-light
	.fc-button {
		margin: 0;
		padding: $btn-padding-y $btn-padding-x;
		white-space: nowrap;
		cursor: pointer;
		@include transition(all ease-in-out $component-transition-timer);

		// Focus state
		&:focus {
			outline: 0;
		}

		// Firefox has an annoying inner border
		&::-moz-focus-inner {
			margin: 0;
			padding: 0;
		}
	}


	//
	// Button states
	//

	// Default
	.fc-state-default {
	    color: $btn-light-color;
	    background-color: $btn-light-bg;
	    border: $btn-border-width solid $btn-light-border-color;

	    // Left rounded corders
		&.fc-corner-left {
			@include border-left-radius($btn-border-radius);
		}

		// Right rounded corners
		&.fc-corner-right {
			@include border-right-radius($btn-border-radius);
		}
	}

	// Hover
	.fc-state-down,
	.fc-state-hover {
	    color: $btn-light-hover-color;
	    background-color: $btn-light-hover-bg;
	    border-color: $btn-light-hover-border-color;
	}

	// Active
	.fc-state-active {
		background-image: none;
	    color: $btn-light-active-color;
	    background-color: $btn-light-active-bg;
	    border-color: $btn-light-active-border-color;
	}

	// Disabled
	.fc-state-disabled {
		cursor: $cursor-disabled;
		opacity: $btn-disabled-opacity;
	}


	//
	// Button groups
	//

	.fc-button-group {
		display: inline-block;

		.fc & {
			> * {
				float: left;
				margin: 0;
				margin-left: -($btn-border-width);
			}

			> :first-child {
				margin-left: 0;
			}
		}
	}


	// Popover
	// ------------------------------

	.fc-popover {
		position: absolute;
		border: $popover-border-width solid $popover-border-color;
		z-index: $zindex-popover;
		@include box-shadow($popover-box-shadow);

		// Header
		.fc-header {
			padding: $popover-header-padding-y $popover-header-padding-x;

			// Title
			.fc-title {
				float: left;
			}

			// Close button
			.fc-close {
				cursor: pointer;
				float: right;
				margin-left: $element-spacer-x;
			}
		}

		// Unthemed
		.fc-unthemed & {
			.fc-header .fc-close {
				opacity: 0.6;
				@include transition(opacity ease-in-out $component-transition-timer);

				// Hover state
				@include hover {
					opacity: 1;
				}
			}
		}
	}


	// Misc reusable components
	// ------------------------------

	// Divider
	.fc-divider {
		border-style: solid;
		border-width: $table-border-width;
	}
	hr.fc-divider {
		height: 0;
		margin: 0;
		padding: 0;
		border-width: $table-border-width 0;
	}


	// Clear helper
	.fc-clear {
		clear: both;
	}

	// Element positioning
	.fc-bg,
	.fc-bgevent-skeleton,
	.fc-highlight-skeleton,
	.fc-helper-skeleton {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
	}

	// General background
	.fc-bg {
		bottom: 0;

		table {
			height: 100%;
		}
	}


	// Tables
	// ------------------------------

	.fc {
		table {
			width: 100%;
			table-layout: fixed;
			border-collapse: collapse;
			border-spacing: 0;
			box-sizing: border-box;
		}

		th,
		td {
			border-style: solid;
			border-width: $table-border-width;
			padding: 0;
			vertical-align: top;
		}

		th {
			padding: $table-cell-padding;
			padding-left: 0;
			padding-right: 0;
			font-weight: $font-weight-semibold;
			text-align: center;
		}

		td.fc-today {
			border-style: double;
		}
	}


	// Internal Nav Links
	// ------------------------------

	a[data-goto] {
		cursor: pointer;
		color: $body-color;
	}


	// Fake table rows
	// ------------------------------

	.fc-row {
		border-style: solid;
		border-width: 0;
		position: relative;

		table {
			border-left: 0;
			border-right: 0;
			border-bottom: 0; 
		}

		&:first-child table {
			border-top: 0;
		}
	}


	// Day row (used within the header and the DayGrid)
	// ------------------------------

	.fc-row {

		// Main background
		.fc-bg {
			z-index: 1;
		}

		// Highlighting cells & background event skeleton
		.fc-bgevent-skeleton,
		.fc-highlight-skeleton {
			bottom: 0;

			table {
				height: 100%;
			}

			td {
				border-color: transparent;
				border: 0;
			}
		}
		.fc-bgevent-skeleton {
			z-index: 2;
		}
		.fc-highlight-skeleton {
			z-index: 3;
		}

		// Row content
		.fc-content-skeleton,
		.fc-helper-skeleton {
			td {
				background: none;
				border-bottom: 0;
			}

			// Cells with events inside (so NOT the day number cell)
			tbody td {
				border-top: 0;
			}
		}
		.fc-content-skeleton {
			position: relative;
			z-index: 4;
		}
		.fc-helper-skeleton {
			z-index: 5;
		}
	}


	// Scrolling container
	// ------------------------------

	.fc-scroller {
		-webkit-overflow-scrolling: touch;

		// Timing grids
		> .fc-day-grid,
		> .fc-time-grid {
			position: relative;
			width: 100%;
		}
	}


	// Global event styles
	// ------------------------------

	.fc-event {
		position: relative;
		display: block;
		border: $fullcalendar-event-border-width solid $fullcalendar-event-border-color;
		color: $fullcalendar-event-color!important;
		@include border-radius($border-radius);

		// Give events with links and draggable events a hand mouse pointer
		&[href],
		&.fc-draggable {
			cursor: pointer;
		}

		// Event background
		.fc-bg {
			z-index: 1;
		}

		// Event content
		.fc-content {
			position: relative;
			z-index: 2;
		}


		//
		// Resizer
		//

		// Base
		.fc-resizer {
			position: absolute;
			z-index: 4;
			display: none;
		}

		// Show resizer
		&.fc-allow-mouse-resize .fc-resizer,
		&.fc-selected .fc-resizer {
			display: block;
		}

		// Hit area
		&.fc-selected .fc-resizer:before {
			content: "";
			position: absolute;
			z-index: $zindex-tooltip;
			top: 50%;
			left: 50%;
			transform: translate(-50%, -50%);
			@include size(($fullcalendar-event-padding-y * 2) + $line-height-computed);
		}


		//
		// Event selection (only for touch devices)
		//

		.fc-event {
			&.fc-selected {
				z-index: $zindex-tooltip !important;
			}
		}
	}

	// Backgrounds
	.fc-event,
	.fc-event-dot {
		background-color: $fullcalendar-event-bg;
	}

	// Override an event's custom cursor
	.fc-not-allowed {
		&,
		.fc-event {
			cursor: $cursor-disabled;
		}
	}


	// Horizontal events
	// ------------------------------

	.fc-h-event {


		//
		// Resizer
		//

		// End
		.fc-end-resizer {
			cursor: e-resize;
			right: -($fullcalendar-event-border-width);
		}

		// In selected event
		&.fc-selected {
			.fc-end-resizer {
				margin-right: calc(-#{$fullcalendar-event-resizer-size-h / 2} - #{$fullcalendar-event-border-width});
			}
		}

		// Resizer (mouse devices)
		&.fc-allow-mouse-resize .fc-resizer {
			width: $fullcalendar-event-padding-x;
			top: -($fullcalendar-event-border-width);
			bottom: -($fullcalendar-event-border-width);
		}

		// Resizer (touch devices)
		&.fc-selected .fc-resizer {
			border-width: $fullcalendar-event-border-width;
			border-style: solid;
			border-color: inherit;
			background-color: $fullcalendar-event-color;
			top: 50%;
			transform: translateY(-50%);
			@include border-radius($border-radius-circle);
			@include size($fullcalendar-event-resizer-size-h);
		}
	}


	// DayGrid events
	// ------------------------------

	.fc-day-grid-event {
		margin: $fullcalendar-event-spacer;
		margin-top: 0;
		padding: $fullcalendar-event-padding-y $fullcalendar-event-padding-x;

		// Darken selected event
		&.fc-selected:after {
			content: "";
			position: absolute;
			z-index: 1;
			top: -($fullcalendar-event-border-width);
			right: -($fullcalendar-event-border-width);
			bottom: -($fullcalendar-event-border-width);
			left: -($fullcalendar-event-border-width);
			background-color: rgba($black, 0.15);
			@include border-radius($border-radius);
		}

		// Force events to be one-line tall
		> .fc-content {
			@include text-truncate();
		}

		// Make the time semibold
		.fc-time {
			font-weight: $font-weight-semibold;
		}

		// Resizer
		&.fc-allow-mouse-resize {
			.fc-end-resizer {
				margin-right: -($fullcalendar-event-border-width);
			}
		}

		// Desktop view
		@include media-breakpoint-up(md) {

			// Time
			.fc-time {
				float: right;
				padding-left: $element-spacer-x;
				display: inline-block;
				z-index: 2;
				position: relative;
				background-color: inherit;
			}

			// Title
			.fc-title {
				z-index: 1;
				position: relative;
			}
		}
	}


	// Event limiting
	// ------------------------------

	// "More" link
	a.fc-more {
		margin: 0 $fullcalendar-event-spacer;
		background-color: $gray-200;
		display: block;
		padding: $fullcalendar-event-padding-y $fullcalendar-event-padding-x;
		text-align: center;
		font-size: $font-size-sm;
		line-height: $line-height-sm;
		cursor: pointer;
		@include border-radius($border-radius);
		@include transition(all ease-in-out $component-transition-timer);

		@include hover {
			background-color: $gray-300;
		}
	}

	// Rows and cells that are hidden because of a "more" link
	.fc-limited {
		display: none;
	}

	// Popover that appears when "more" link is clicked
	.fc-day-grid .fc-row {
		z-index: 1;
	}
	.fc-more-popover {
		z-index: 2;
		width: 15rem;

		.fc-event-container {
			padding: $popover-body-padding-y $popover-body-padding-x;
			padding-top: 0;
		}
	}


	// Utilities
	// ------------------------------

	// Now indicator
	.fc-now-indicator {
		position: absolute;
	}

	// Not selectable
	.fc-unselectable {
		-webkit-touch-callout: none;
		-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
		user-select: none;
	}


	// Toolbar
	// ------------------------------

	.fc-toolbar {
		text-align: center;

		// Header toolbar
		&.fc-header-toolbar {
			margin-bottom: $spacer;
		}

		// Footer toolbar
		&.fc-footer-toolbar {
			margin-top: $spacer;
		}

		// Title text
		h2 {
			margin: ((($btn-padding-y * 2) + $line-height-computed + rem-calc($btn-border-width * 2) - ($h5-font-size * $headings-line-height)) / 2) 0;
			font-size: $h5-font-size;
		}

		// Left
		.fc-left {
			float: left;
			width: 33%;
		}

		// Right
		.fc-right {
			float: right;
			width: 33%;

			.fc-button-group {
				float: right;
			}
		}

		// Left/right buttons
		.fc-left,
		.fc-right {
			> .fc-button {
				margin-left: $element-spacer-x;
			}
		}

		// Center
		.fc-center {
			display: inline-block;
			vertical-align: middle;
		}

		// The things within each left/right/center section
		> * {
			> * {
				float: left;
			}

			// The first thing within each left/center/right section
			> :first-child {
				margin-left: 0;
			}
		}

		// Button layering (for border precedence)
		button {
			position: relative;

			&:focus {
				z-index: 5;
			}
		}

		// States
		.fc-state-hover,
		.ui-state-hover {
			z-index: 2;
		}
		.fc-state-down {
			z-index: 3;
		}
		.fc-state-active,
		.ui-state-active {
			z-index: 4;
		}
	}


	// View structure
	// ------------------------------

	.fc-view-container {
		border: $card-border-width solid $card-border-color;
		@include border-radius($card-border-radius);

		// Remove borders from table cells
		.fc-view > table {

			// Right border
			th,
			td {
				border-right-width: 0;
			}

			// Left border from first cell
			tr:first-child {
				th:first-child,
				td:first-child {
					border-left-width: 0;
				}
			}

			.fc-head {
				tr:first-child {
					> th,
					> td {
						border-top: 0;
					}
				}
			}

			.fc-head-container {
				border-top: 0;
				border-bottom: 0;

				.fc-widget-header {
					border-top: 0;
				}
			}

			.fc-body {
				> tr:first-child {
					> th,
					> td {
						border-top: 0;
					}
				}
				> tr:last-child {
					> th,
					> td {
						border-bottom: 0;
					}
				}

				.fc-row:first-child {
					tr:first-child {
						td,
						th {
							border-top: 0;
						}
					}
				}
			}
		}

		// Change box sizing
		* {
			&,
			&:before,
			&:after {
				box-sizing: content-box;
			}
		}
	}

	// Scope positioning and z-index's
	.fc-view {
		&,
		> table {
			position: relative;
			z-index: 1;
		}
	} 


	// Basic view
	// ------------------------------

	// Day row structure
	.fc-basicWeek-view,
	.fc-basicDay-view {
		.fc-content-skeleton {
			padding-top: $fullcalendar-event-spacer;
			padding-bottom: $fullcalendar-event-spacer;
		}
	}

	// Rows
	.fc-basic-view tbody .fc-row {
		min-height: 6em;
	}

	// A "rigid" row will take up a constant amount of height
	// because content-skeleton is absolute
	.fc-row.fc-rigid {
		overflow: hidden;

		.fc-content-skeleton {
			position: absolute;
			top: 0;
			left: 0;
			right: 0;
		}
	}

	// Week and day number styling
	.fc-basic-view {

		// Week and day
		.fc-day-number {
			padding: $fullcalendar-event-spacer;
		}

		.fc-week-number {
			color: $fullcalendar-weekday-color;
		}

		td.fc-week-number,
		th.fc-week-number {
			padding: $table-cell-padding;
			background-color: $fullcalendar-weekday-bg;
		}

		// Week number only
		td.fc-week-number {
			font-size: $font-size-sm;
			padding-top: $fullcalendar-event-spacer;
			padding-bottom: $fullcalendar-event-spacer;
		}

		span.fc-week-number {
			display: inline-block;
			font-size: $font-size-sm;
			padding: $fullcalendar-event-spacer;
		}

		// Day number only
		.fc-day-number {
			text-align: right;
		}

		// Top date
		.fc-day-top {

			// Day number
			.fc-day-number {
				float: right;
			}
		}
	}

	// Other month
	.fc-other-month {
		&.fc-day-top,
		&.fc-day-number {
			opacity: 0.3;
		}
	}


	// AgendaView all-day area
	// ------------------------------

	.fc-agenda-view {
		.fc-day-grid {
			position: relative;
			z-index: 2;

			.fc-row {
				min-height: 3em;

				.fc-content-skeleton {
					padding-top: $fullcalendar-event-spacer;
					padding-bottom: 0;
				}
			}
		}
	}


	// TimeGrid axis
	// ------------------------------

	.fc-axis {
		text-align: right;

		.fc & {
			vertical-align: middle;
			padding: 0 $fullcalendar-event-padding-x;
			height: (($fullcalendar-event-padding-x * 2) + $line-height-computed);
			white-space: nowrap;
		}
	}


	// TimeGrid structure
	// ------------------------------

	// Base
	.fc-time-grid-container,
	.fc-time-grid {
		position: relative;
		z-index: 1;
	}

	// Grid
	.fc-time-grid {
		min-height: 100%;

		table {
			border: 0 hidden transparent;
		}

		> .fc-bg {
			z-index: 1;
		}

		.fc-slats,
		> hr {
			position: relative;
			z-index: 2;
		}

		.fc-content-col {
			position: relative;
		}

		// Containers
		.fc-content-skeleton {
			position: absolute;
			top: 0;
			left: 0;
			right: 0;
			z-index: 3;
		}
		.fc-business-container {
			position: relative;
			z-index: 1;
		}
		.fc-bgevent-container {
			position: relative;
			z-index: 2;
		}
		.fc-highlight-container {
			position: relative;
			z-index: 3;
		}
		.fc-event-container {
			position: relative;
			z-index: 4;
		}
		.fc-now-indicator-line {
			z-index: 5;
		}
		.fc-helper-container {
			position: relative;
			z-index: 6;
		}


		//
		// TimeGrid slats
		//

		.fc-slats {
			td {
				border-bottom: 0;
			}

			.fc-minor td {
				border-top-style: dotted;
			}
		}


		//
		// TimeGrid highlighting slots
		//

		// Container
		.fc-highlight-container {
			position: relative;
		}

		// Highlight
		.fc-highlight {
			position: absolute;
			left: 0;
			right: 0;
		}


		//
		// TimeGrid event containment
		//

		// Containers
		.fc-event-container,
		.fc-bgevent-container {
			position: relative;
		}

		// Blue event container
		.fc-event {
			box-shadow: 0 0 0 $fullcalendar-event-border-width $white;
		}

		// Events
		.fc-event,
		.fc-bgevent {
			position: absolute;
			z-index: 1;
			padding: $fullcalendar-event-padding-x;
		}

		// Background event
		.fc-bgevent {
			left: 0;
			right: 0;
		}
	}


	// Generic Vertical Event
	// ------------------------------

	.fc-v-event {

		// Events that are continuing from another day
		&.fc-not-start {
			@include border-top-radius(0);
		}

		// Replace space made by the top border with padding
		&.fc-not-end {
			@include border-bottom-radius(0);
		}
	}


	// TimeGrid event styling
	// ------------------------------

	.fc-time-grid-event {
		overflow: hidden;

		// Need to allow touch resizers to extend outside event's bounding box
		&.fc-selected {
			overflow: visible;

			// Hide semi-white background, to appear darker
			.fc-bg {
				display: none;
			}
		}

		// Contains the time and title, but no bg and resizer
		.fc-content {
			position: relative;
			overflow: hidden;
		}

		// Time font weight
		.fc-time {
			font-weight: $font-weight-semibold;
		}

		// Short mode, where time and title are on the same line
		&.fc-short {

			// Content
			.fc-content {
				white-space: nowrap;
			}

			// Time and title
			.fc-time,
			.fc-title {
				display: inline-block;
				vertical-align: top;
			}
			.fc-time {
				&:before {
					content: attr(data-start);
				}
				&:after {
					content: "\000A0-\000A0";
				}

				span {
					display: none;
				}
			}
			.fc-title {
				font-size: $font-size-sm;
				padding: 0;
			}
		}


		//
		// Resizer
		//

		.fc-resizer {

		}

		// Cursor device
		&.fc-allow-mouse-resize {
			.fc-resizer {
				z-index: 3;
				left: 0;
				right: 0;
				bottom: 0;
				overflow: hidden;
				line-height: 1;
				text-align: center;
				cursor: s-resize;
				background-color: rgba($black, 0.1);

				// Small icon
				&:after {
					content: "=";
					display: inline-block;
					vertical-align: middle;
				}
			}
		}

		// Touch devide
		&.fc-selected .fc-resizer {
			border-width: $fullcalendar-event-border-width;
			border-style: solid;
			border-color: inherit;
			background-color: $fullcalendar-event-color;
			left: 50%;
			bottom: 0;
			margin-bottom: calc(-#{$fullcalendar-event-resizer-size-h / 2} - #{$fullcalendar-event-border-width});
			transform: translateX(-50%);
			@include size($fullcalendar-event-resizer-size-v);
			@include border-radius($border-radius-circle);
		}
	}


	// Now indicator
	// ------------------------------

	.fc-time-grid {

		// Line
		.fc-now-indicator-line {
			border-top-width: $table-border-width;
			left: 0;
			right: 0;
		}

		// Arrow
		.fc-now-indicator-arrow {
			left: 0;
			margin-top: -$tooltip-arrow-width;
			border-width: $tooltip-arrow-width 0 $tooltip-arrow-width $tooltip-arrow-width;
			border-top-color: transparent;
			border-bottom-color: transparent;
		}
	}


	// List view
	// ------------------------------

	// Event dot
	.fc-event-dot {
		display: inline-block;
		@include size($badge-mark-size);
		@include border-radius($border-radius-circle);
	}

	// List view base
	.fc-list-view {
		border-width: 0;
		border-style: solid;
		direction: ltr;
	}


	//
	// Table resets
	//

	.fc-list-table {
		.fc & {
			table-layout: auto;
		}

		td {
			border-width: $table-border-width 0 0;
			padding: $table-cell-padding;
		}

		tr:first-child td {
			border-top-width: 0;
		}
	}


	//
	// Day headings with the list
	//

	.fc-list-heading {
		border-bottom-width: $table-border-width;

		td {
			font-weight: $font-weight-semibold;
		}
	}
	.fc-list-heading-main {
		float: left;
	}
	.fc-list-heading-alt {
		float: right;
	}


	//
	// Event list items
	//

	// Item
	.fc-list-item {
		td {
			@include transition(all ease-in-out $component-transition-timer);
		}

		&.fc-has-url {
			cursor: pointer;
		}

		// Change bg on hover
		@include hover {
			td {
				background-color: $table-hover-bg;
			}
		}
	}

	// Markers
	.fc-list-item-marker,
	.fc-list-item-time {
		white-space: nowrap;
		width: 1px;
	}

	// Make the dot closer to the event title
	.fc-list-item-marker {
		padding-right: 0;
	}

	// Title
	.fc-list-item-title a {
		text-decoration: none;
		color: inherit;
	}


	//
	// Message when no events
	//

	.fc-list-empty-wrap2 {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
	}
	.fc-list-empty-wrap1 {
		display: table;
		@include size(100%);
	}
	.fc-list-empty {
		display: table-cell;
		vertical-align: middle;
		text-align: center;
	}
	.fc-unthemed .fc-list-empty { /* theme will provide own background */
		background-color: $fullcalendar-nonbusiness-bg;
	}


	// Responsive stuff
	// ------------------------------

	@include media-breakpoint-down(sm) {
		.fc-toolbar {
			.fc-left,
			.fc-left > .fc-button,
			.fc-right,
			.fc-right > .fc-button,
			.fc-left .fc-button-group,
			.fc-right .fc-button-group {
				float: none;
				width: auto;
				vertical-align: top;
			}

			.fc-left,
			.fc-right {
				display: block;
				margin-bottom: ($spacer / 2);
			}
		}
	}
}
