/*!
 * FullCalendar Scheduler v1.9.4
 * Docs & License: https://fullcalendar.io/scheduler/
 * (c) 2018 Adam Shaw
 */
/* TODO: break this file up */
/* Scroller
--------------------------------------------------------------------------------------------------*/
.fc-scroller-clip {
    overflow: hidden;
    /* for clipping scrollbars */
    position: relative;
    /* so things like scrollfollowers can attach to this */ }

/* supresses rendering of native scrollbars */
/* on .fc-scroller */
.fc-no-scrollbars {
    background: rgba(255, 255, 255, 0);
    /* hack for dynamic DOM nodes (in Chrome OSX at least) */ }

.fc-no-scrollbars::-webkit-scrollbar {
    width: 0;
    height: 0; }

.fc-scroller-canvas {
    position: relative;
    /* origin for bg */
    box-sizing: border-box;
    /* so that padding (for gutter) will be part of height */
    min-height: 100%; }

.fc-scroller-canvas > .fc-bg {
    z-index: 1;
    /* make default? */ }

.fc-scroller-canvas > .fc-content {
    z-index: 2;
    /* make default? */
    position: relative;
    /* origin for inner content */
    border-style: solid;
    border-width: 0; }

/* for themed, hard to get the border-color, so just forget it (REVISIT) */
.ui-widget .fc-scroller-canvas > .fc-content {
    border-color: transparent; }

.fc-scroller-canvas.fc-gutter-left > .fc-content {
    border-left-width: 1px;
    margin-left: -1px; }

.fc-scroller-canvas.fc-gutter-right > .fc-content {
    border-right-width: 1px;
    margin-right: -1px; }

.fc-scroller-canvas.fc-gutter-top > .fc-content {
    border-top-width: 1px;
    margin-top: -1px; }

/* content is responsible for bottom border */
/* View Structure
--------------------------------------------------------------------------------------------------*/
.fc-rtl .fc-timeline {
    direction: rtl; }

.fc-timeline .fc-divider {
    width: 3px;
    border-style: double;
    /* overcome neighboring borders */ }

.fc-timeline .fc-head > tr > .fc-divider {
    border-bottom: 0; }

.fc-timeline .fc-body > tr > .fc-divider {
    border-top: 0; }

.fc-timeline .fc-body .fc-divider.ui-widget-header {
    background-image: none; }

.fc-scrolled .fc-head .fc-scroller {
    z-index: 2;
    /* so drop shadow will go above body panes */ }

.fc-timeline.fc-scrolled .fc-head .fc-scroller {
    box-shadow: 0 3px 4px rgba(0, 0, 0, 0.075); }

.fc-timeline .fc-body .fc-scroller {
    z-index: 1; }

/*
on most tables that expand to the edges, kill the outer border,
because the container elements take care of it.
example tables:
.fc-scroller-canvas .fc-content table
.fc-scroller-canvas .fc-bg .fc-slats table
*/
.fc-timeline .fc-scroller-canvas > div > table,
.fc-timeline .fc-scroller-canvas > div > div > table {
    border-style: hidden; }

/*
for resource rows (in both the spreadsheet and timeline areas),
undo previous rule in order to always show last border.
*/
.fc-timeline .fc-scroller-canvas > .fc-content > .fc-rows > table {
    border-bottom-style: none; }

/* Table Cell Common
--------------------------------------------------------------------------------------------------*/
.fc-timeline th,
.fc-timeline td {
    white-space: nowrap; }

.fc-timeline .fc-cell-content {
    overflow: hidden; }

.fc-timeline .fc-cell-text {
    padding-left: 4px;
    padding-right: 4px; }

.fc-timeline .fc-col-resizer {
    cursor: col-resize; }

/*
Cells at the start of a week
TODO: figure out better styling

.fc-ltr .fc-timeline .fc-em-cell div {
	border-left: 3px solid #eee;
	height: 100%;
}
.fc-rtl .fc-timeline .fc-em-cell {
	border-right-width: 3px;
}
*/
/* head */
.fc-timeline th {
    vertical-align: middle; }

.fc-timeline .fc-head .fc-cell-content {
    padding-top: 3px;
    padding-bottom: 3px; }

/* body */
.fc-timeline .fc-body .ui-widget-content {
    background-image: none; }

/* Resource Area
--------------------------------------------------------------------------------------------------*/
.fc-resource-area {
    width: 30%; }

.fc-resource-area col {
    width: 40%;
    min-width: 70px;
    /* will be read by JS */ }

.fc-resource-area col.fc-main-col {
    width: 60%;
    /* make the first column in a nested setup bigger */ }

.fc-flat .fc-expander-space {
    /* fc-flat is opposite of fc-nested */
    display: none; }

.fc-ltr .fc-resource-area tr > * {
    text-align: left; }

.fc-rtl .fc-resource-area tr > * {
    text-align: right; }

.fc-resource-area .fc-cell-content {
    padding-left: 4px;
    padding-right: 4px; }

/* head */
.fc-resource-area .fc-super th {
    text-align: center; }

.fc-resource-area th > div {
    position: relative; }

.fc-resource-area th .fc-cell-content {
    position: relative;
    z-index: 1; }

.fc-resource-area th .fc-col-resizer {
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    width: 5px; }

.fc-ltr .fc-resource-area th .fc-col-resizer {
    right: -3px; }

.fc-rtl .fc-resource-area th .fc-col-resizer {
    left: -3px; }

/* body */
tr.fc-collapsed > td,
tr.fc-transitioning > td {
    /* during the transition */
    overflow: hidden;
    /* prevents absolutely-positioned events from bleeding out */ }

tr.fc-transitioning > td > div {
    transition: margin-top 0.2s; }

tr.fc-collapsed > td > div {
    margin-top: -10px; }

.fc-body .fc-resource-area .fc-cell-content {
    /* might BE the cell */
    position: relative;
    /* optimization for ScrollFollower */
    padding-top: 8px;
    padding-bottom: 8px; }

.fc-no-overlap .fc-body .fc-resource-area .fc-cell-content {
    /* might BE the cell */
    padding-top: 5px;
    padding-bottom: 5px; }

.fc-resource-area .fc-icon {
    /* the expander and spacers before the expander */
    width: 1em;
    /* ensure constant width, esp for empty icons */
    font-size: .9em;
    vertical-align: middle;
    margin-top: -1%; }

.fc-resource-area .fc-expander {
    cursor: pointer;
    color: #666;
    /* for the icon within */ }

/* Time Area
--------------------------------------------------------------------------------------------------*/
.fc-time-area col {
    min-width: 2.2em;
    /* detected by JS */ }

/* head */
.fc-ltr .fc-time-area .fc-chrono th {
    text-align: left; }

.fc-rtl .fc-time-area .fc-chrono th {
    text-align: right; }

/* body slats (vertical lines) */
.fc-time-area .fc-slats {
    /* fc-bg is responsible for a lot of this now! */
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0; }

.fc-time-area .fc-slats table {
    height: 100%; }

.fc-time-area .fc-slats .fc-minor {
    border-style: dotted; }

.fc-time-area .fc-slats td {
    border-width: 0 1px;
    /* need to do this. sometimes -1 margin wouldn't hide the dotted */ }

.fc-ltr .fc-time-area .fc-slats td {
    border-right-width: 0; }

.fc-rtl .fc-time-area .fc-slats td {
    border-left-width: 0; }

/* body content containers
   can be within rows or directly within the pane's content
*/
.fc-time-area .fc-bgevent-container,
.fc-time-area .fc-highlight-container {
    position: absolute;
    z-index: 2;
    /* only for directly within pane. not for row. overridden later */
    top: 0;
    bottom: 0;
    width: 0; }

.fc-ltr .fc-time-area .fc-helper-container,
.fc-ltr .fc-time-area .fc-bgevent-container,
.fc-ltr .fc-time-area .fc-highlight-container {
    left: 0; }

.fc-rtl .fc-time-area .fc-helper-container,
.fc-rtl .fc-time-area .fc-bgevent-container,
.fc-rtl .fc-time-area .fc-highlight-container {
    right: 0; }

.fc-time-area .fc-bgevent,
.fc-time-area .fc-highlight {
    position: absolute;
    top: 0;
    bottom: 0; }

/* body resource rows */
.fc-time-area .fc-rows {
    position: relative;
    z-index: 3; }

.fc-time-area .fc-rows .ui-widget-content {
    background: none; }

.fc-time-area .fc-rows td > div {
    position: relative; }

.fc-time-area .fc-rows .fc-bgevent-container,
.fc-time-area .fc-rows .fc-highlight-container {
    z-index: 1; }

.fc-time-area .fc-event-container {
    position: relative;
    z-index: 2;
    /* above bgevent and highlight */
    width: 0;
    /* for event positioning. will end up on correct side based on dir */ }

.fc-time-area .fc-helper-container {
    /* also an fc-event-container */
    position: absolute;
    z-index: 3;
    top: 0; }

.fc-time-area .fc-event-container {
    padding-bottom: 8px;
    top: -1px; }

.fc-time-area tr:first-child .fc-event-container {
    top: 0; }

.fc-no-overlap .fc-time-area .fc-event-container {
    padding-bottom: 0;
    top: 0; }

/* Now Indicator
--------------------------------------------------------------------------------------------------*/
.fc-timeline .fc-now-indicator {
    /* both the arrow and the line */
    z-index: 3;
    /* one above scroller's fc-content */
    top: 0; }

.fc-time-area .fc-now-indicator-arrow {
    margin: 0 -6px;
    /* 5, then one more to counteract scroller's negative margins */
    /* triangle pointing down... */
    border-width: 6px 5px 0 5px;
    border-left-color: transparent;
    border-right-color: transparent; }

.fc-time-area .fc-now-indicator-line {
    margin: 0 -1px;
    /* counteract scroller's negative margins */
    bottom: 0;
    border-left-width: 1px; }

/* Time Grid Events
--------------------------------------------------------------------------------------------------*/
.fc-timeline-event {
    position: absolute;
    border-radius: 0;
    padding: 2px 0;
    margin-bottom: 1px; }

.fc-no-overlap .fc-timeline-event {
    padding: 5px 0;
    margin-bottom: 0; }

/* don't overlap grid lines at the event's end */
.fc-ltr .fc-timeline-event {
    margin-right: 1px; }

.fc-rtl .fc-timeline-event {
    margin-left: 1px; }

.fc-timeline-event .fc-content {
    padding: 0 1px;
    white-space: nowrap;
    overflow: hidden; }

.fc-timeline-event .fc-time {
    font-weight: bold;
    padding: 0 1px; }

.fc-rtl .fc-timeline-event .fc-time {
    display: inline-block;
    /* will force it on the other side */ }

.fc-timeline-event .fc-title {
    position: relative;
    /* optimization for ScrollFollower */
    padding: 0 1px; }

.fc-timeline-event.fc-selected .fc-bg {
    display: none;
    /* hide semi-white background, to appear darker */ }

/* follower logic */
.fc-ltr .fc-timeline-event .fc-title {
    padding-left: 10px;
    margin-left: -8px; }

.fc-rtl .fc-timeline-event .fc-title {
    padding-right: 10px;
    margin-right: -8px; }

.fc-ltr .fc-timeline-event.fc-not-start .fc-title {
    margin-left: -2px; }

.fc-rtl .fc-timeline-event.fc-not-start .fc-title {
    margin-right: -2px; }

.fc-timeline-event.fc-not-start .fc-title,
.fc-body .fc-time-area .fc-following {
    position: relative; }

.fc-timeline-event.fc-not-start .fc-title:before,
.fc-body .fc-time-area .fc-following:before {
    /* generic arrow */
    content: "";
    position: absolute;
    top: 50%;
    margin-top: -5px;
    border: 5px solid #000;
    border-top-color: transparent;
    border-bottom-color: transparent;
    opacity: .5; }

.fc-ltr .fc-timeline-event.fc-not-start .fc-title:before,
.fc-ltr .fc-body .fc-time-area .fc-following:before {
    /* LTR. left pointing arrow */
    border-left: 0;
    left: 2px; }

.fc-rtl .fc-timeline-event.fc-not-start .fc-title:before,
.fc-rtl .fc-body .fc-time-area .fc-following:before {
    /* RTL. right pointing arrow */
    border-right: 0;
    right: 2px; }

/* License Message
--------------------------------------------------------------------------------------------------*/
.fc-license-message {
    position: absolute;
    z-index: 99999;
    bottom: 1px;
    left: 1px;
    background: #eee;
    border-color: #ddd;
    border-style: solid;
    border-width: 1px 1px 0 0;
    padding: 2px 4px;
    font-size: 12px;
    border-top-right-radius: 3px; }
