/*! * Datepicker for Bootstrap v1.9.0 (https://github.com/uxsolutions/bootstrap-datepicker) * * Licensed under the Apache License v2.0 (http://www.apache.org/licenses/LICENSE-2.0) */ .datepicker { padding: 4px; border-radius: 4px; direction: ltr; } .datepicker-inline { width: 220px; } .datepicker-rtl { direction: rtl; } .datepicker-rtl.dropdown-menu { left: auto; } .datepicker-rtl table tr td span { float: right; } .datepicker-dropdown { top: 0; left: 0; } .datepicker-dropdown:before { content: ""; display: inline-block; border-left: 7px solid transparent; border-right: 7px solid transparent; border-bottom: 7px solid #999; border-top: 0; border-bottom-color: rgba(0, 0, 0, 0.2); position: absolute; } .datepicker-dropdown:after { content: ""; display: inline-block; border-left: 6px solid transparent; border-right: 6px solid transparent; border-bottom: 6px solid #fff; border-top: 0; position: absolute; } .datepicker-dropdown.datepicker-orient-left:before { left: 6px; } .datepicker-dropdown.datepicker-orient-left:after { left: 7px; } .datepicker-dropdown.datepicker-orient-right:before { right: 6px; } .datepicker-dropdown.datepicker-orient-right:after { right: 7px; } .datepicker-dropdown.datepicker-orient-bottom:before { top: -7px; } .datepicker-dropdown.datepicker-orient-bottom:after { top: -6px; } .datepicker-dropdown.datepicker-orient-top:before { bottom: -7px; border-bottom: 0; border-top: 7px solid #999; } .datepicker-dropdown.datepicker-orient-top:after { bottom: -6px; border-bottom: 0; border-top: 6px solid #fff; } .datepicker table { margin: 0; -webkit-touch-callout: none; -webkit-user-select: none; user-select: none; } .datepicker td, .datepicker th { text-align: center; width: 20px; height: 20px; border-radius: 4px; border: none; } .table-striped .datepicker table tr td, .table-striped .datepicker table tr th { background-color: transparent; } .datepicker table tr td.day:hover, .datepicker table tr td.day.focused { background: #eee; cursor: pointer; } .datepicker table tr td.old, .datepicker table tr td.new { color: #999; } .datepicker table tr td.disabled, .datepicker table tr td.disabled:hover { background: none; color: #999; cursor: default; } .datepicker table tr td.highlighted { background: #d9edf7; border-radius: 0; } .datepicker table tr td.today, .datepicker table tr td.today:hover, .datepicker table tr td.today.disabled, .datepicker table tr td.today.disabled:hover { background-color: #fde19a; background-image: linear-gradient(to bottom, #fdd49a, #fdf59a); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#fdd49a", endColorstr="#fdf59a", GradientType=0); border-color: #fdf59a #fdf59a #fbed50; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); color: #000; } .datepicker table tr td.today:hover, .datepicker table tr td.today:hover:hover, .datepicker table tr td.today.disabled:hover, .datepicker table tr td.today.disabled:hover:hover, .datepicker table tr td.today:active, .datepicker table tr td.today:hover:active, .datepicker table tr td.today.disabled:active, .datepicker table tr td.today.disabled:hover:active, .datepicker table tr td.today.active, .datepicker table tr td.today:hover.active, .datepicker table tr td.today.disabled.active, .datepicker table tr td.today.disabled:hover.active, .datepicker table tr td.today.disabled, .datepicker table tr td.today:hover.disabled, .datepicker table tr td.today.disabled.disabled, .datepicker table tr td.today.disabled:hover.disabled, .datepicker table tr td.today[disabled], .datepicker table tr td.today:hover[disabled], .datepicker table tr td.today.disabled[disabled], .datepicker table tr td.today.disabled:hover[disabled] { background-color: #fdf59a; } .datepicker table tr td.today:active, .datepicker table tr td.today:hover:active, .datepicker table tr td.today.disabled:active, .datepicker table tr td.today.disabled:hover:active, .datepicker table tr td.today.active, .datepicker table tr td.today:hover.active, .datepicker table tr td.today.disabled.active, .datepicker table tr td.today.disabled:hover.active { background-color: #fbf069 \9 ; } .datepicker table tr td.today:hover:hover { color: #000; } .datepicker table tr td.today.active:hover { color: #fff; } .datepicker table tr td.range, .datepicker table tr td.range:hover, .datepicker table tr td.range.disabled, .datepicker table tr td.range.disabled:hover { background: #eee; border-radius: 0; } .datepicker table tr td.range.today, .datepicker table tr td.range.today:hover, .datepicker table tr td.range.today.disabled, .datepicker table tr td.range.today.disabled:hover { background-color: #f3d17a; background-image: linear-gradient(to bottom, #f3c17a, #f3e97a); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#f3c17a", endColorstr="#f3e97a", GradientType=0); border-color: #f3e97a #f3e97a #edde34; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); border-radius: 0; } .datepicker table tr td.range.today:hover, .datepicker table tr td.range.today:hover:hover, .datepicker table tr td.range.today.disabled:hover, .datepicker table tr td.range.today.disabled:hover:hover, .datepicker table tr td.range.today:active, .datepicker table tr td.range.today:hover:active, .datepicker table tr td.range.today.disabled:active, .datepicker table tr td.range.today.disabled:hover:active, .datepicker table tr td.range.today.active, .datepicker table tr td.range.today:hover.active, .datepicker table tr td.range.today.disabled.active, .datepicker table tr td.range.today.disabled:hover.active, .datepicker table tr td.range.today.disabled, .datepicker table tr td.range.today:hover.disabled, .datepicker table tr td.range.today.disabled.disabled, .datepicker table tr td.range.today.disabled:hover.disabled, .datepicker table tr td.range.today[disabled], .datepicker table tr td.range.today:hover[disabled], .datepicker table tr td.range.today.disabled[disabled], .datepicker table tr td.range.today.disabled:hover[disabled] { background-color: #f3e97a; } .datepicker table tr td.range.today:active, .datepicker table tr td.range.today:hover:active, .datepicker table tr td.range.today.disabled:active, .datepicker table tr td.range.today.disabled:hover:active, .datepicker table tr td.range.today.active, .datepicker table tr td.range.today:hover.active, .datepicker table tr td.range.today.disabled.active, .datepicker table tr td.range.today.disabled:hover.active { background-color: #efe24b \9 ; } .datepicker table tr td.selected, .datepicker table tr td.selected:hover, .datepicker table tr td.selected.disabled, .datepicker table tr td.selected.disabled:hover { background-color: #9e9e9e; background-image: linear-gradient(to bottom, #b3b3b3, #808080); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#b3b3b3", endColorstr="#808080", GradientType=0); border-color: #808080 #808080 #595959; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); color: #fff; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); } .datepicker table tr td.selected:hover, .datepicker table tr td.selected:hover:hover, .datepicker table tr td.selected.disabled:hover, .datepicker table tr td.selected.disabled:hover:hover, .datepicker table tr td.selected:active, .datepicker table tr td.selected:hover:active, .datepicker table tr td.selected.disabled:active, .datepicker table tr td.selected.disabled:hover:active, .datepicker table tr td.selected.active, .datepicker table tr td.selected:hover.active, .datepicker table tr td.selected.disabled.active, .datepicker table tr td.selected.disabled:hover.active, .datepicker table tr td.selected.disabled, .datepicker table tr td.selected:hover.disabled, .datepicker table tr td.selected.disabled.disabled, .datepicker table tr td.selected.disabled:hover.disabled, .datepicker table tr td.selected[disabled], .datepicker table tr td.selected:hover[disabled], .datepicker table tr td.selected.disabled[disabled], .datepicker table tr td.selected.disabled:hover[disabled] { background-color: #808080; } .datepicker table tr td.selected:active, .datepicker table tr td.selected:hover:active, .datepicker table tr td.selected.disabled:active, .datepicker table tr td.selected.disabled:hover:active, .datepicker table tr td.selected.active, .datepicker table tr td.selected:hover.active, .datepicker table tr td.selected.disabled.active, .datepicker table tr td.selected.disabled:hover.active { background-color: #666666 \9 ; } .datepicker table tr td.active, .datepicker table tr td.active:hover, .datepicker table tr td.active.disabled, .datepicker table tr td.active.disabled:hover { background-color: #006dcc; background-image: linear-gradient(to bottom, #08c, #0044cc); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#08c", endColorstr="#0044cc", GradientType=0); border-color: #0044cc #0044cc #002a80; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); color: #fff; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); } .datepicker table tr td.active:hover, .datepicker table tr td.active:hover:hover, .datepicker table tr td.active.disabled:hover, .datepicker table tr td.active.disabled:hover:hover, .datepicker table tr td.active:active, .datepicker table tr td.active:hover:active, .datepicker table tr td.active.disabled:active, .datepicker table tr td.active.disabled:hover:active, .datepicker table tr td.active.active, .datepicker table tr td.active:hover.active, .datepicker table tr td.active.disabled.active, .datepicker table tr td.active.disabled:hover.active, .datepicker table tr td.active.disabled, .datepicker table tr td.active:hover.disabled, .datepicker table tr td.active.disabled.disabled, .datepicker table tr td.active.disabled:hover.disabled, .datepicker table tr td.active[disabled], .datepicker table tr td.active:hover[disabled], .datepicker table tr td.active.disabled[disabled], .datepicker table tr td.active.disabled:hover[disabled] { background-color: #0044cc; } .datepicker table tr td.active:active, .datepicker table tr td.active:hover:active, .datepicker table tr td.active.disabled:active, .datepicker table tr td.active.disabled:hover:active, .datepicker table tr td.active.active, .datepicker table tr td.active:hover.active, .datepicker table tr td.active.disabled.active, .datepicker table tr td.active.disabled:hover.active { background-color: #003399 \9 ; } .datepicker table tr td span { display: block; width: 23%; height: 54px; line-height: 54px; float: left; margin: 1%; cursor: pointer; border-radius: 4px; } .datepicker table tr td span:hover, .datepicker table tr td span.focused { background: #eee; } .datepicker table tr td span.disabled, .datepicker table tr td span.disabled:hover { background: none; color: #999; cursor: default; } .datepicker table tr td span.active, .datepicker table tr td span.active:hover, .datepicker table tr td span.active.disabled, .datepicker table tr td span.active.disabled:hover { background-color: #006dcc; background-image: linear-gradient(to bottom, #08c, #0044cc); background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#08c", endColorstr="#0044cc", GradientType=0); border-color: #0044cc #0044cc #002a80; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); color: #fff; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); } .datepicker table tr td span.active:hover, .datepicker table tr td span.active:hover:hover, .datepicker table tr td span.active.disabled:hover, .datepicker table tr td span.active.disabled:hover:hover, .datepicker table tr td span.active:active, .datepicker table tr td span.active:hover:active, .datepicker table tr td span.active.disabled:active, .datepicker table tr td span.active.disabled:hover:active, .datepicker table tr td span.active.active, .datepicker table tr td span.active:hover.active, .datepicker table tr td span.active.disabled.active, .datepicker table tr td span.active.disabled:hover.active, .datepicker table tr td span.active.disabled, .datepicker table tr td span.active:hover.disabled, .datepicker table tr td span.active.disabled.disabled, .datepicker table tr td span.active.disabled:hover.disabled, .datepicker table tr td span.active[disabled], .datepicker table tr td span.active:hover[disabled], .datepicker table tr td span.active.disabled[disabled], .datepicker table tr td span.active.disabled:hover[disabled] { background-color: #0044cc; } .datepicker table tr td span.active:active, .datepicker table tr td span.active:hover:active, .datepicker table tr td span.active.disabled:active, .datepicker table tr td span.active.disabled:hover:active, .datepicker table tr td span.active.active, .datepicker table tr td span.active:hover.active, .datepicker table tr td span.active.disabled.active, .datepicker table tr td span.active.disabled:hover.active { background-color: #003399 \9 ; } .datepicker table tr td span.old, .datepicker table tr td span.new { color: #999; } .datepicker .datepicker-switch { width: 145px; } .datepicker .datepicker-switch, .datepicker .prev, .datepicker .next, .datepicker tfoot tr th { cursor: pointer; } .datepicker .datepicker-switch:hover, .datepicker .prev:hover, .datepicker .next:hover, .datepicker tfoot tr th:hover { background: #eee; } .datepicker .prev.disabled, .datepicker .next.disabled { visibility: hidden; } .datepicker .cw { font-size: 10px; width: 12px; padding: 0 2px 0 5px; vertical-align: middle; } .input-append.date .add-on, .input-prepend.date .add-on { cursor: pointer; } .input-append.date .add-on i, .input-prepend.date .add-on i { margin-top: 3px; } .input-daterange input { text-align: center; } .input-daterange input:first-child { border-radius: 3px 0 0 3px; } .input-daterange input:last-child { border-radius: 0 3px 3px 0; } .input-daterange .add-on { display: inline-block; width: auto; min-width: 16px; height: 18px; padding: 4px 5px; font-weight: normal; line-height: 18px; text-align: center; text-shadow: 0 1px 0 #fff; vertical-align: middle; background-color: #eee; border: 1px solid #ccc; margin-left: -5px; margin-right: -5px; } /*# sourceMappingURL=bootstrap-datepicker.css.map */ .ps__rail-y { right: 0 !important; left: auto !important; } #jqstooltip { width: auto !important; height: auto !important; padding: 5px 10px !important; border-radius: 2px !important; } /* classes attached to */ /* TODO: make fc-event selector work when calender in shadow DOM */ .fc-not-allowed, .fc-not-allowed .fc-event { /* override events' custom cursors */ cursor: not-allowed; } /* TODO: not attached to body. attached to specific els. move */ .fc-unselectable { -webkit-user-select: none; user-select: none; -webkit-touch-callout: none; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } .fc { /* layout of immediate children */ display: flex; flex-direction: column; font-size: 1em; } .fc, .fc *, .fc *:before, .fc *:after { box-sizing: border-box; } .fc table { border-collapse: collapse; border-spacing: 0; font-size: 1em; /* normalize cross-browser */ } .fc th { text-align: center; } .fc th, .fc td { vertical-align: top; padding: 0; } .fc a[data-navlink] { cursor: pointer; } .fc a[data-navlink]:hover { text-decoration: underline; } .fc-direction-ltr { direction: ltr; text-align: left; } .fc-direction-rtl { direction: rtl; text-align: right; } .fc-theme-standard td, .fc-theme-standard th { border: 1px solid #ddd; border: 1px solid var(--fc-border-color, #ddd); } /* 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? */ .fc-liquid-hack td, .fc-liquid-hack th { position: relative; } @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; } .fc-icon { /* added for fc */ display: inline-block; width: 1em; height: 1em; text-align: center; -webkit-user-select: none; user-select: none; /* use !important to prevent issues with browser extensions that change fonts */ font-family: "fcicons" !important; speak: none; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; line-height: 1; /* Better Font Rendering =========== */ -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"; } /* 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. */ .fc { /* reset */ } .fc .fc-button { border-radius: 0; overflow: visible; text-transform: none; margin: 0; font-family: inherit; font-size: inherit; line-height: inherit; } .fc .fc-button:focus { outline: 1px dotted; outline: 5px auto -webkit-focus-ring-color; } .fc .fc-button { -webkit-appearance: button; } .fc .fc-button:not(:disabled) { cursor: pointer; } .fc .fc-button::-moz-focus-inner { padding: 0; border-style: none; } .fc { /* theme */ } .fc .fc-button { display: inline-block; font-weight: 400; text-align: center; vertical-align: middle; -webkit-user-select: none; user-select: none; background-color: transparent; border: 1px solid transparent; padding: 0.4em 0.65em; font-size: 1em; line-height: 1.5; border-radius: 0.25em; } .fc .fc-button:hover { text-decoration: none; } .fc .fc-button:focus { outline: 0; box-shadow: 0 0 0 0.2rem rgba(44, 62, 80, 0.25); } .fc .fc-button:disabled { opacity: 0.65; } .fc { /* "primary" coloring */ } .fc .fc-button-primary { color: #fff; color: var(--fc-button-text-color, #fff); background-color: #2C3E50; background-color: var(--fc-button-bg-color, #2C3E50); border-color: #2C3E50; border-color: var(--fc-button-border-color, #2C3E50); } .fc .fc-button-primary:hover { color: #fff; color: var(--fc-button-text-color, #fff); background-color: #1e2b37; background-color: var(--fc-button-hover-bg-color, #1e2b37); border-color: #1a252f; border-color: var(--fc-button-hover-border-color, #1a252f); } .fc .fc-button-primary:disabled { /* not DRY */ color: #fff; color: var(--fc-button-text-color, #fff); background-color: #2C3E50; background-color: var(--fc-button-bg-color, #2C3E50); border-color: #2C3E50; border-color: var(--fc-button-border-color, #2C3E50); /* overrides :hover */ } .fc .fc-button-primary:focus { box-shadow: 0 0 0 0.2rem rgba(76, 91, 106, 0.5); } .fc .fc-button-primary:not(:disabled):active, .fc .fc-button-primary:not(:disabled).fc-button-active { color: #fff; color: var(--fc-button-text-color, #fff); background-color: #1a252f; background-color: var(--fc-button-active-bg-color, #1a252f); border-color: #151e27; border-color: var(--fc-button-active-border-color, #151e27); } .fc .fc-button-primary:not(:disabled):active:focus, .fc .fc-button-primary:not(:disabled).fc-button-active:focus { box-shadow: 0 0 0 0.2rem rgba(76, 91, 106, 0.5); } .fc { /* icons within buttons */ } .fc .fc-button .fc-icon { vertical-align: middle; font-size: 1.5em; /* bump up the size (but don't make it bigger than line-height of button, which is 1.5em also) */ } .fc .fc-button-group { position: relative; display: inline-flex; vertical-align: middle; } .fc .fc-button-group > .fc-button { position: relative; flex: 1 1 auto; } .fc .fc-button-group > .fc-button:hover { z-index: 1; } .fc .fc-button-group > .fc-button:focus, .fc .fc-button-group > .fc-button:active, .fc .fc-button-group > .fc-button.fc-button-active { z-index: 1; } .fc-direction-ltr .fc-button-group > .fc-button:not(:first-child) { margin-left: -1px; border-top-left-radius: 0; border-bottom-left-radius: 0; } .fc-direction-ltr .fc-button-group > .fc-button:not(:last-child) { border-top-right-radius: 0; border-bottom-right-radius: 0; } .fc-direction-rtl .fc-button-group > .fc-button:not(:first-child) { margin-right: -1px; border-top-right-radius: 0; border-bottom-right-radius: 0; } .fc-direction-rtl .fc-button-group > .fc-button:not(:last-child) { border-top-left-radius: 0; border-bottom-left-radius: 0; } .fc .fc-toolbar { display: flex; justify-content: space-between; align-items: center; } .fc .fc-toolbar.fc-header-toolbar { margin-bottom: 1.5em; } .fc .fc-toolbar.fc-footer-toolbar { margin-top: 1.5em; } .fc .fc-toolbar-title { font-size: 1.75em; margin: 0; } .fc-direction-ltr .fc-toolbar > * > :not(:first-child) { margin-left: 0.75em; /* space between */ } .fc-direction-rtl .fc-toolbar > * > :not(:first-child) { margin-right: 0.75em; /* space between */ } .fc-direction-rtl .fc-toolbar-ltr { /* when the toolbar-chunk positioning system is explicitly left-to-right */ flex-direction: row-reverse; } .fc .fc-scroller { -webkit-overflow-scrolling: touch; position: relative; /* for abs-positioned elements within */ } .fc .fc-scroller-liquid { height: 100%; } .fc .fc-scroller-liquid-absolute { position: absolute; top: 0; right: 0; left: 0; bottom: 0; } .fc .fc-scroller-harness { position: relative; overflow: hidden; direction: ltr; /* hack for chrome computing the scroller's right/left wrong for rtl. undone below... */ /* TODO: demonstrate in codepen */ } .fc .fc-scroller-harness-liquid { height: 100%; } .fc-direction-rtl .fc-scroller-harness > .fc-scroller { /* undo above hack */ direction: rtl; } .fc-theme-standard .fc-scrollgrid { border: 1px solid #ddd; border: 1px solid var(--fc-border-color, #ddd); /* bootstrap does this. match */ } .fc .fc-scrollgrid, .fc .fc-scrollgrid table { /* all tables (self included) */ width: 100%; /* because tables don't normally do this */ table-layout: fixed; } .fc .fc-scrollgrid table { /* inner tables */ border-top-style: hidden; border-left-style: hidden; border-right-style: hidden; } .fc .fc-scrollgrid { border-collapse: separate; border-right-width: 0; border-bottom-width: 0; } .fc .fc-scrollgrid-liquid { height: 100%; } .fc .fc-scrollgrid-section { /* a */ height: 1px; } .fc .fc-scrollgrid-section > td { height: 1px; /* needs a height so inner div within grow. better than 0, for firefox */ } .fc .fc-scrollgrid-section table { height: 1px; /* for most browsers, if a height isn't set on the table, can't do liquid-height within cells */ /* serves as a min-height. harmless */ } .fc .fc-scrollgrid-section-liquid > td { height: 100%; /* better than `auto`, for firefox */ } .fc .fc-scrollgrid-section > * { border-top-width: 0; border-left-width: 0; } .fc .fc-scrollgrid-section-header > *, .fc .fc-scrollgrid-section-footer > * { border-bottom-width: 0; } .fc .fc-scrollgrid-section-body table, .fc .fc-scrollgrid-section-footer table { border-bottom-style: hidden; /* head keeps its bottom border tho */ } .fc { /* stickiness */ } .fc .fc-scrollgrid-section-sticky > * { background: #fff; background: var(--fc-page-bg-color, #fff); position: sticky; z-index: 3; /* TODO: var */ /* TODO: box-shadow when sticking */ } .fc .fc-scrollgrid-section-header.fc-scrollgrid-section-sticky > * { top: 0; /* because border-sharing causes a gap at the top */ /* TODO: give safari -1. has bug */ } .fc .fc-scrollgrid-section-footer.fc-scrollgrid-section-sticky > * { bottom: 0; /* known bug: bottom-stickiness doesn't work in safari */ } .fc .fc-scrollgrid-sticky-shim { /* for horizontal scrollbar */ height: 1px; /* needs height to create scrollbars */ margin-bottom: -1px; } .fc-sticky { /* no .fc wrap because used as child of body */ position: sticky; } .fc .fc-view-harness { flex-grow: 1; /* because this harness is WITHIN the .fc's flexbox */ position: relative; } .fc { /* when the harness controls the height, make the view liquid */ } .fc .fc-view-harness-active > .fc-view { position: absolute; top: 0; right: 0; bottom: 0; left: 0; } .fc .fc-col-header-cell-cushion { display: inline-block; /* x-browser for when sticky (when multi-tier header) */ padding: 2px 4px; } .fc .fc-bg-event, .fc .fc-non-business, .fc .fc-highlight { /* will always have a harness with position:relative/absolute, so absolutely expand */ position: absolute; top: 0; left: 0; right: 0; bottom: 0; } .fc .fc-non-business { background: rgba(215, 215, 215, 0.3); background: var(--fc-non-business-color, rgba(215, 215, 215, 0.3)); } .fc .fc-bg-event { 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 .fc-bg-event .fc-event-title { margin: 0.5em; font-size: 0.85em; font-size: var(--fc-small-font-size, 0.85em); font-style: italic; } .fc .fc-highlight { background: rgba(188, 232, 241, 0.3); background: var(--fc-highlight-color, rgba(188, 232, 241, 0.3)); } .fc .fc-cell-shaded, .fc .fc-day-disabled { background: rgba(208, 208, 208, 0.3); background: var(--fc-neutral-bg-color, rgba(208, 208, 208, 0.3)); } /* link resets */ /* ---------------------------------------------------------------------------------------------------- */ a.fc-event, a.fc-event:hover { text-decoration: none; } /* cursor */ .fc-event[href], .fc-event.fc-event-draggable { cursor: pointer; } /* event text content */ /* ---------------------------------------------------------------------------------------------------- */ .fc-event .fc-event-main { position: relative; z-index: 2; } /* dragging */ /* ---------------------------------------------------------------------------------------------------- */ .fc-event-dragging:not(.fc-event-selected) { /* MOUSE */ opacity: 0.75; } .fc-event-dragging.fc-event-selected { /* TOUCH */ box-shadow: 0 2px 7px rgba(0, 0, 0, 0.3); } /* resizing */ /* ---------------------------------------------------------------------------------------------------- */ /* (subclasses should hone positioning for touch and non-touch) */ .fc-event .fc-event-resizer { display: none; position: absolute; z-index: 4; } .fc-event:hover, .fc-event-selected { /* TOUCH */ } .fc-event:hover .fc-event-resizer, .fc-event-selected .fc-event-resizer { display: block; } .fc-event-selected .fc-event-resizer { 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: inherit; background: #fff; background: var(--fc-page-bg-color, #fff); } .fc-event-selected .fc-event-resizer:before { content: ""; position: absolute; top: -20px; left: -20px; right: -20px; bottom: -20px; } /* selecting (always TOUCH) */ /* OR, focused by tab-index */ /* (TODO: maybe not the best focus-styling for .fc-daygrid-dot-event) */ /* ---------------------------------------------------------------------------------------------------- */ .fc-event-selected, .fc-event:focus { box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); } .fc-event-selected:before, .fc-event:focus:before { content: ""; position: absolute; z-index: 3; top: 0; left: 0; right: 0; bottom: 0; } .fc-event-selected, .fc-event:focus { /* dimmer effect */ } .fc-event-selected:after, .fc-event:focus: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; /* assume there's a border on all sides. overcome it. */ /* sometimes there's NOT a border, in which case the dimmer will go over */ /* an adjacent border, which looks fine. */ top: -1px; left: -1px; right: -1px; bottom: -1px; } /* A HORIZONTAL event */ .fc-h-event { /* allowed to be top-level */ display: block; border: 1px solid #3788d8; border: 1px solid var(--fc-event-border-color, #3788d8); background-color: #3788d8; background-color: var(--fc-event-bg-color, #3788d8); } .fc-h-event .fc-event-main { color: #fff; color: var(--fc-event-text-color, #fff); } .fc-h-event .fc-event-main-frame { display: flex; /* for make fc-event-title-container expand */ } .fc-h-event .fc-event-time { max-width: 100%; /* clip overflow on this element */ overflow: hidden; } .fc-h-event .fc-event-title-container { /* serves as a container for the sticky cushion */ flex-grow: 1; flex-shrink: 1; min-width: 0; /* important for allowing to shrink all the way */ } .fc-h-event .fc-event-title { display: inline-block; /* need this to be sticky cross-browser */ vertical-align: top; /* for not messing up line-height */ left: 0; /* for sticky */ right: 0; /* for sticky */ max-width: 100%; /* clip overflow on this element */ overflow: hidden; } .fc-h-event.fc-event-selected:before { /* expand hit area */ top: -10px; bottom: -10px; } /* adjust border and border-radius (if there is any) for non-start/end */ .fc-direction-ltr .fc-daygrid-block-event:not(.fc-event-start), .fc-direction-rtl .fc-daygrid-block-event:not(.fc-event-end) { border-top-left-radius: 0; border-bottom-left-radius: 0; border-left-width: 0; } .fc-direction-ltr .fc-daygrid-block-event:not(.fc-event-end), .fc-direction-rtl .fc-daygrid-block-event:not(.fc-event-start) { border-top-right-radius: 0; border-bottom-right-radius: 0; border-right-width: 0; } /* resizers */ .fc-h-event:not(.fc-event-selected) .fc-event-resizer { top: 0; bottom: 0; width: 8px; width: var(--fc-event-resizer-thickness, 8px); } .fc-direction-ltr .fc-h-event:not(.fc-event-selected) .fc-event-resizer-start, .fc-direction-rtl .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-direction-ltr .fc-h-event:not(.fc-event-selected) .fc-event-resizer-end, .fc-direction-rtl .fc-h-event:not(.fc-event-selected) .fc-event-resizer-start { cursor: e-resize; right: -4px; right: calc(-0.5 * var(--fc-event-resizer-thickness, 8px)); } /* resizers for TOUCH */ .fc-h-event.fc-event-selected .fc-event-resizer { top: 50%; margin-top: -4px; margin-top: calc(-0.5 * var(--fc-event-resizer-dot-total-width, 8px)); } .fc-direction-ltr .fc-h-event.fc-event-selected .fc-event-resizer-start, .fc-direction-rtl .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-direction-ltr .fc-h-event.fc-event-selected .fc-event-resizer-end, .fc-direction-rtl .fc-h-event.fc-event-selected .fc-event-resizer-start { right: -4px; right: calc(-0.5 * var(--fc-event-resizer-dot-total-width, 8px)); } .fc .fc-popover { position: absolute; z-index: 9999; box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15); } .fc .fc-popover-header { display: flex; flex-direction: row; justify-content: space-between; align-items: center; padding: 3px 4px; } .fc .fc-popover-title { margin: 0 2px; } .fc .fc-popover-close { cursor: pointer; opacity: 0.65; font-size: 1.1em; } .fc-theme-standard .fc-popover { border: 1px solid #ddd; border: 1px solid var(--fc-border-color, #ddd); background: #fff; background: var(--fc-page-bg-color, #fff); } .fc-theme-standard .fc-popover-header { background: rgba(208, 208, 208, 0.3); background: var(--fc-neutral-bg-color, rgba(208, 208, 208, 0.3)); } :root { --fc-daygrid-event-dot-width: 8px; } /* help things clear margins of inner content */ .fc-daygrid-day-frame, .fc-daygrid-day-events, .fc-daygrid-event-harness { /* for event top/bottom margins */ } .fc-daygrid-day-frame:before, .fc-daygrid-day-events:before, .fc-daygrid-event-harness:before { content: ""; clear: both; display: table; } .fc-daygrid-day-frame:after, .fc-daygrid-day-events:after, .fc-daygrid-event-harness:after { content: ""; clear: both; display: table; } .fc .fc-daygrid-body { /* a
that wraps the table */ position: relative; z-index: 1; /* container inner z-index's because s can't do it */ } .fc .fc-daygrid-day.fc-day-today { background-color: rgba(255, 220, 40, 0.15); background-color: var(--fc-today-bg-color, rgba(255, 220, 40, 0.15)); } .fc .fc-daygrid-day-frame { position: relative; min-height: 100%; /* seems to work better than `height` because sets height after rows/cells naturally do it */ } .fc { /* cell top */ } .fc .fc-daygrid-day-top { display: flex; flex-direction: row-reverse; } .fc .fc-day-other .fc-daygrid-day-top { opacity: 0.3; } .fc { /* day number (within cell top) */ } .fc .fc-daygrid-day-number { position: relative; z-index: 4; padding: 4px; } .fc { /* event container */ } .fc .fc-daygrid-day-events { margin-top: 1px; /* needs to be margin, not padding, so that available cell height can be computed */ } .fc { /* positioning for balanced vs natural */ } .fc .fc-daygrid-body-balanced .fc-daygrid-day-events { position: absolute; left: 0; right: 0; } .fc .fc-daygrid-body-unbalanced .fc-daygrid-day-events { position: relative; /* for containing abs positioned event harnesses */ min-height: 2em; /* in addition to being a min-height during natural height, equalizes the heights a little bit */ } .fc .fc-daygrid-body-natural { /* can coexist with -unbalanced */ } .fc .fc-daygrid-body-natural .fc-daygrid-day-events { margin-bottom: 1em; } .fc { /* event harness */ } .fc .fc-daygrid-event-harness { position: relative; } .fc .fc-daygrid-event-harness-abs { position: absolute; top: 0; /* fallback coords for when cannot yet be computed */ left: 0; /* */ right: 0; /* */ } .fc .fc-daygrid-bg-harness { position: absolute; top: 0; bottom: 0; } .fc { /* bg content */ } .fc .fc-daygrid-day-bg .fc-non-business { z-index: 1; } .fc .fc-daygrid-day-bg .fc-bg-event { z-index: 2; } .fc .fc-daygrid-day-bg .fc-highlight { z-index: 3; } .fc { /* events */ } .fc .fc-daygrid-event { z-index: 6; margin-top: 1px; } .fc .fc-daygrid-event.fc-event-mirror { z-index: 7; } .fc { /* cell bottom (within day-events) */ } .fc .fc-daygrid-day-bottom { font-size: 0.85em; padding: 2px 3px 0; } .fc .fc-daygrid-day-bottom:before { content: ""; clear: both; display: table; } .fc .fc-daygrid-more-link { position: relative; z-index: 4; cursor: pointer; } .fc { /* week number (within frame) */ } .fc .fc-daygrid-week-number { position: absolute; z-index: 5; top: 0; padding: 2px; min-width: 1.5em; text-align: center; background-color: rgba(208, 208, 208, 0.3); background-color: var(--fc-neutral-bg-color, rgba(208, 208, 208, 0.3)); color: #808080; color: var(--fc-neutral-text-color, #808080); } .fc { /* popover */ } .fc .fc-more-popover .fc-popover-body { min-width: 220px; padding: 10px; } .fc-direction-ltr .fc-daygrid-event.fc-event-start, .fc-direction-rtl .fc-daygrid-event.fc-event-end { margin-left: 2px; } .fc-direction-ltr .fc-daygrid-event.fc-event-end, .fc-direction-rtl .fc-daygrid-event.fc-event-start { margin-right: 2px; } .fc-direction-ltr .fc-daygrid-week-number { left: 0; border-radius: 0 0 3px 0; } .fc-direction-rtl .fc-daygrid-week-number { right: 0; border-radius: 0 0 0 3px; } .fc-liquid-hack .fc-daygrid-day-frame { position: static; /* will cause inner absolute stuff to expand to */ } .fc-daygrid-event { /* make root-level, because will be dragged-and-dropped outside of a component root */ position: relative; /* for z-indexes assigned later */ white-space: nowrap; border-radius: 3px; /* dot event needs this to when selected */ font-size: 0.85em; font-size: var(--fc-small-font-size, 0.85em); } /* --- the rectangle ("block") style of event --- */ .fc-daygrid-block-event .fc-event-time { font-weight: bold; } .fc-daygrid-block-event .fc-event-time, .fc-daygrid-block-event .fc-event-title { padding: 1px; } /* --- the dot style of event --- */ .fc-daygrid-dot-event { display: flex; align-items: center; padding: 2px 0; } .fc-daygrid-dot-event .fc-event-title { flex-grow: 1; flex-shrink: 1; min-width: 0; /* important for allowing to shrink all the way */ overflow: hidden; font-weight: bold; } .fc-daygrid-dot-event:hover, .fc-daygrid-dot-event.fc-event-mirror { background: rgba(0, 0, 0, 0.1); } .fc-daygrid-dot-event.fc-event-selected:before { /* expand hit area */ top: -10px; bottom: -10px; } .fc-daygrid-event-dot { /* the actual dot */ margin: 0 4px; box-sizing: content-box; width: 0; height: 0; border: 4px solid #3788d8; border: calc(var(--fc-daygrid-event-dot-width, 8px) / 2) solid var(--fc-event-border-color, #3788d8); border-radius: 4px; border-radius: calc(var(--fc-daygrid-event-dot-width, 8px) / 2); } /* --- spacing between time and title --- */ .fc-direction-ltr .fc-daygrid-event .fc-event-time { margin-right: 3px; } .fc-direction-rtl .fc-daygrid-event .fc-event-time { margin-left: 3px; } /* A VERTICAL event */ .fc-v-event { /* allowed to be top-level */ display: block; border: 1px solid #3788d8; border: 1px solid var(--fc-event-border-color, #3788d8); background-color: #3788d8; background-color: var(--fc-event-bg-color, #3788d8); } .fc-v-event .fc-event-main { color: #fff; color: var(--fc-event-text-color, #fff); height: 100%; } .fc-v-event .fc-event-main-frame { height: 100%; display: flex; flex-direction: column; } .fc-v-event .fc-event-time { flex-grow: 0; flex-shrink: 0; max-height: 100%; overflow: hidden; } .fc-v-event .fc-event-title-container { /* a container for the sticky cushion */ flex-grow: 1; flex-shrink: 1; min-height: 0; /* important for allowing to shrink all the way */ } .fc-v-event .fc-event-title { /* will have fc-sticky on it */ top: 0; bottom: 0; max-height: 100%; /* clip overflow */ overflow: hidden; } .fc-v-event:not(.fc-event-start) { border-top-width: 0; border-top-left-radius: 0; border-top-right-radius: 0; } .fc-v-event:not(.fc-event-end) { border-bottom-width: 0; border-bottom-left-radius: 0; border-bottom-right-radius: 0; } .fc-v-event.fc-event-selected:before { /* expand hit area */ left: -10px; right: -10px; } .fc-v-event { /* resizer (mouse AND touch) */ } .fc-v-event .fc-event-resizer-start { cursor: n-resize; } .fc-v-event .fc-event-resizer-end { cursor: s-resize; } .fc-v-event { /* resizer for MOUSE */ } .fc-v-event:not(.fc-event-selected) .fc-event-resizer { height: 8px; height: var(--fc-event-resizer-thickness, 8px); left: 0; right: 0; } .fc-v-event:not(.fc-event-selected) .fc-event-resizer-start { top: -4px; top: calc(var(--fc-event-resizer-thickness, 8px) / -2); } .fc-v-event:not(.fc-event-selected) .fc-event-resizer-end { bottom: -4px; bottom: calc(var(--fc-event-resizer-thickness, 8px) / -2); } .fc-v-event { /* resizer for TOUCH (when event is "selected") */ } .fc-v-event.fc-event-selected .fc-event-resizer { left: 50%; margin-left: -4px; margin-left: calc(var(--fc-event-resizer-dot-total-width, 8px) / -2); } .fc-v-event.fc-event-selected .fc-event-resizer-start { top: -4px; top: calc(var(--fc-event-resizer-dot-total-width, 8px) / -2); } .fc-v-event.fc-event-selected .fc-event-resizer-end { bottom: -4px; bottom: calc(var(--fc-event-resizer-dot-total-width, 8px) / -2); } .fc .fc-timegrid .fc-daygrid-body { /* the all-day daygrid within the timegrid view */ z-index: 2; /* put above the timegrid-body so that more-popover is above everything. TODO: better solution */ } .fc .fc-timegrid-divider { padding: 0 0 2px; /* browsers get confused when you set height. use padding instead */ } .fc .fc-timegrid-body { position: relative; z-index: 1; /* scope the z-indexes of slots and cols */ min-height: 100%; /* fill height always, even when slat table doesn't grow */ } .fc .fc-timegrid-axis-chunk { /* for advanced ScrollGrid */ position: relative; } .fc .fc-timegrid-axis-chunk > table { position: relative; z-index: 1; /* above the now-indicator-container */ } .fc .fc-timegrid-slots { position: relative; z-index: 1; } .fc .fc-timegrid-slot { /* a */ height: 1.5em; border-bottom: 0; } .fc .fc-timegrid-slot:empty:before { content: " "; /* make sure there's at least an empty space to create height for height syncing */ } .fc .fc-timegrid-slot-minor { border-top-style: dotted; } .fc .fc-timegrid-slot-label-cushion { display: inline-block; white-space: nowrap; } .fc .fc-timegrid-slot-label { vertical-align: middle; /* vertical align the slots */ } .fc { /* slots AND axis cells (top-left corner of view including the "all-day" text) */ } .fc .fc-timegrid-axis-cushion, .fc .fc-timegrid-slot-label-cushion { padding: 0 4px; } .fc { /* axis cells (top-left corner of view including the "all-day" text) */ /* vertical align is more complicated, uses flexbox */ } .fc .fc-timegrid-axis-frame-liquid { height: 100%; /* will need liquid-hack in FF */ } .fc .fc-timegrid-axis-frame { overflow: hidden; display: flex; align-items: center; /* vertical align */ justify-content: flex-end; /* horizontal align. matches text-align below */ } .fc .fc-timegrid-axis-cushion { max-width: 60px; /* limits the width of the "all-day" text */ flex-shrink: 0; /* allows text to expand how it normally would, regardless of constrained width */ } .fc-direction-ltr .fc-timegrid-slot-label-frame { text-align: right; } .fc-direction-rtl .fc-timegrid-slot-label-frame { text-align: left; } .fc-liquid-hack .fc-timegrid-axis-frame-liquid { height: auto; position: absolute; top: 0; right: 0; bottom: 0; left: 0; } .fc .fc-timegrid-col.fc-day-today { background-color: rgba(255, 220, 40, 0.15); background-color: var(--fc-today-bg-color, rgba(255, 220, 40, 0.15)); } .fc .fc-timegrid-col-frame { min-height: 100%; /* liquid-hack is below */ position: relative; } .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; /* no z-index. children will decide and go above slots */ top: 0; left: 0; right: 0; bottom: 0; } .fc-media-screen .fc-timegrid-cols > table { height: 100%; } .fc-media-screen .fc-timegrid-col-bg, .fc-media-screen .fc-timegrid-col-events, .fc-media-screen .fc-timegrid-now-indicator-container { position: absolute; top: 0; left: 0; right: 0; } .fc { /* bg */ } .fc .fc-timegrid-col-bg { z-index: 2; /* TODO: kill */ } .fc .fc-timegrid-col-bg .fc-non-business { z-index: 1; } .fc .fc-timegrid-col-bg .fc-bg-event { z-index: 2; } .fc .fc-timegrid-col-bg .fc-highlight { z-index: 3; } .fc .fc-timegrid-bg-harness { position: absolute; /* top/bottom will be set by JS */ left: 0; right: 0; } .fc { /* fg events */ /* (the mirror segs are put into a separate container with same classname, */ /* and they must be after the normal seg container to appear at a higher z-index) */ } .fc .fc-timegrid-col-events { z-index: 3; /* child event segs have z-indexes that are scoped within this div */ } .fc { /* now indicator */ } .fc .fc-timegrid-now-indicator-container { bottom: 0; overflow: hidden; /* don't let overflow of lines/arrows cause unnecessary scrolling */ /* z-index is set on the individual elements */ } .fc-direction-ltr .fc-timegrid-col-events { margin: 0 2.5% 0 2px; } .fc-direction-rtl .fc-timegrid-col-events { margin: 0 2px 0 2.5%; } .fc-timegrid-event-harness { position: absolute; } .fc-timegrid-event-harness > .fc-timegrid-event { position: absolute; /* absolute WITHIN the harness */ top: 0; /* for when not yet positioned */ bottom: 0; /* " */ left: 0; right: 0; } .fc-timegrid-event-harness-inset .fc-timegrid-event, .fc-timegrid-event.fc-event-mirror, .fc-timegrid-more-link { box-shadow: 0px 0px 0px 1px #fff; box-shadow: 0px 0px 0px 1px var(--fc-page-bg-color, #fff); } .fc-timegrid-event, .fc-timegrid-more-link { /* events need to be root */ font-size: 0.85em; font-size: var(--fc-small-font-size, 0.85em); border-radius: 3px; } .fc-timegrid-event { /* events need to be root */ margin-bottom: 1px; } .fc-timegrid-event .fc-event-main { padding: 1px 1px 0; } .fc-timegrid-event .fc-event-time { white-space: nowrap; font-size: 0.85em; font-size: var(--fc-small-font-size, 0.85em); margin-bottom: 1px; } .fc-timegrid-event-short .fc-event-main-frame { flex-direction: row; overflow: hidden; } .fc-timegrid-event-short .fc-event-time:after { content: " - "; /* dash surrounded by non-breaking spaces */ } .fc-timegrid-event-short .fc-event-title { font-size: 0.85em; font-size: var(--fc-small-font-size, 0.85em); } .fc-timegrid-more-link { /* does NOT inherit from fc-timegrid-event */ position: absolute; z-index: 9999; /* hack */ color: inherit; color: var(--fc-more-link-text-color, inherit); background: #d0d0d0; background: var(--fc-more-link-bg-color, #d0d0d0); cursor: pointer; margin-bottom: 1px; /* match space below fc-timegrid-event */ } .fc-timegrid-more-link-inner { /* has fc-sticky */ padding: 3px 2px; top: 0; } .fc-direction-ltr .fc-timegrid-more-link { right: 0; } .fc-direction-rtl .fc-timegrid-more-link { left: 0; } .fc { /* line */ } .fc .fc-timegrid-now-indicator-line { position: absolute; z-index: 4; left: 0; right: 0; border-style: solid; border-color: red; border-color: var(--fc-now-indicator-color, red); border-width: 1px 0 0; } .fc { /* arrow */ } .fc .fc-timegrid-now-indicator-arrow { position: absolute; z-index: 4; margin-top: -5px; /* vertically center on top coordinate */ border-style: solid; border-color: red; border-color: var(--fc-now-indicator-color, red); } .fc-direction-ltr .fc-timegrid-now-indicator-arrow { left: 0; /* triangle pointing right. TODO: mixin */ border-width: 5px 0 5px 6px; border-top-color: transparent; border-bottom-color: transparent; } .fc-direction-rtl .fc-timegrid-now-indicator-arrow { right: 0; /* triangle pointing left. TODO: mixin */ border-width: 5px 6px 5px 0; border-top-color: transparent; border-bottom-color: transparent; } :root { --fc-list-event-dot-width: 10px; --fc-list-event-hover-bg-color: #f5f5f5; } .fc-theme-standard .fc-list { border: 1px solid #ddd; border: 1px solid var(--fc-border-color, #ddd); } .fc { /* message when no events */ } .fc .fc-list-empty { background-color: rgba(208, 208, 208, 0.3); background-color: var(--fc-neutral-bg-color, rgba(208, 208, 208, 0.3)); height: 100%; display: flex; justify-content: center; align-items: center; /* vertically aligns fc-list-empty-inner */ } .fc .fc-list-empty-cushion { margin: 5em 0; } .fc { /* table within the scroller */ /* ---------------------------------------------------------------------------------------------------- */ } .fc .fc-list-table { width: 100%; border-style: hidden; /* kill outer border on theme */ } .fc .fc-list-table tr > * { border-left: 0; border-right: 0; } .fc .fc-list-sticky .fc-list-day > * { /* the cells */ position: sticky; top: 0; background: #fff; background: var(--fc-page-bg-color, #fff); /* for when headers are styled to be transparent and sticky */ } .fc { /* only exists for aria reasons, hide for non-screen-readers */ } .fc .fc-list-table thead { position: absolute; left: -10000px; } .fc { /* the table's border-style:hidden gets confused by hidden thead. force-hide top border of first cell */ } .fc .fc-list-table tbody > tr:first-child th { border-top: 0; } .fc .fc-list-table th { padding: 0; /* uses an inner-wrapper instead... */ } .fc .fc-list-table td, .fc .fc-list-day-cushion { padding: 8px 14px; } .fc { /* date heading rows */ /* ---------------------------------------------------------------------------------------------------- */ } .fc .fc-list-day-cushion:after { content: ""; clear: both; display: table; /* clear floating */ } .fc-theme-standard .fc-list-day-cushion { background-color: rgba(208, 208, 208, 0.3); background-color: var(--fc-neutral-bg-color, rgba(208, 208, 208, 0.3)); } .fc-direction-ltr .fc-list-day-text, .fc-direction-rtl .fc-list-day-side-text { float: left; } .fc-direction-ltr .fc-list-day-side-text, .fc-direction-rtl .fc-list-day-text { float: right; } /* make the dot closer to the event title */ .fc-direction-ltr .fc-list-table .fc-list-event-graphic { padding-right: 0; } .fc-direction-rtl .fc-list-table .fc-list-event-graphic { padding-left: 0; } .fc .fc-list-event.fc-event-forced-url { cursor: pointer; /* whole row will seem clickable */ } .fc .fc-list-event:hover td { background-color: #f5f5f5; background-color: var(--fc-list-event-hover-bg-color, #f5f5f5); } .fc { /* shrink certain cols */ } .fc .fc-list-event-graphic, .fc .fc-list-event-time { white-space: nowrap; width: 1px; } .fc .fc-list-event-dot { display: inline-block; box-sizing: content-box; width: 0; height: 0; border: 5px solid #3788d8; border: calc(var(--fc-list-event-dot-width, 10px) / 2) solid var(--fc-event-border-color, #3788d8); border-radius: 5px; border-radius: calc(var(--fc-list-event-dot-width, 10px) / 2); } .fc { /* reset styling */ } .fc .fc-list-event-title a { color: inherit; text-decoration: none; } .fc { /* underline link when hovering over any part of row */ } .fc .fc-list-event.fc-event-forced-url:hover a { text-decoration: underline; } .fc-theme-bootstrap a:not([href]) { color: inherit; /* natural color for navlinks */ } .fc-theme-bootstrap5 a:not([href]) { color: inherit; text-decoration: inherit; } .fc-theme-bootstrap5 .fc-list, .fc-theme-bootstrap5 .fc-scrollgrid, .fc-theme-bootstrap5 td, .fc-theme-bootstrap5 th { border: 1px solid var(--bs-gray-400); } .fc-theme-bootstrap5 { /* HACK: reapply core styles after highe-precedence border statement above */ } .fc-theme-bootstrap5 .fc-scrollgrid { border-right-width: 0; border-bottom-width: 0; } .fc-theme-bootstrap5-shaded { background-color: var(--bs-gray-200); } table.dataTable.no-footer { border-bottom: 1px solid rgba(0, 0, 0, 0.0625); margin-bottom: 20px; } .sorting_asc:focus { outline: none; } .dataTables_wrapper { overflow: hidden; padding-bottom: 5px; } .dataTables_wrapper .dataTables_length { color: #313435; float: left; } @media screen and (max-width: 767px) { .dataTables_wrapper .dataTables_length { text-align: left; } } .dataTables_wrapper .dataTables_length select { border: 1px solid rgba(0, 0, 0, 0.0625); border-radius: 2px; box-shadow: none; height: 35px; font-size: 14px; padding: 5px; margin-left: 5px; margin-right: 5px; color: #72777a; transition: all 0.2s ease-in; } .dataTables_wrapper .dataTables_filter { color: #313435; float: right; } @media screen and (max-width: 767px) { .dataTables_wrapper .dataTables_filter { text-align: left; } } .dataTables_wrapper .dataTables_filter input { border: 1px solid rgba(0, 0, 0, 0.0625); border-radius: 2px; box-shadow: none; height: 35px; font-size: 14px; margin-left: 15px; padding: 5px; color: #72777a; transition: all 0.2s ease-in; } .dataTables_wrapper .dataTables_info { color: #72777a; float: left; } .dataTables_wrapper .dataTables_processing { color: #313435; } .dataTables_wrapper .dataTables_paginate { color: #72777a; float: right; } .dataTables_wrapper .dataTables_paginate .paginate_button { color: #72777a !important; padding: 6px 12px; border-radius: 2px; margin-right: 10px; transition: all 0.2s ease-in-out; text-decoration: none; } .dataTables_wrapper .dataTables_paginate .paginate_button.next, .dataTables_wrapper .dataTables_paginate .paginate_button.previous, .dataTables_wrapper .dataTables_paginate .paginate_button.first, .dataTables_wrapper .dataTables_paginate .paginate_button.last { border-radius: 2px; text-decoration: none; } .dataTables_wrapper .dataTables_paginate .paginate_button.next:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.next:focus, .dataTables_wrapper .dataTables_paginate .paginate_button.previous:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.previous:focus, .dataTables_wrapper .dataTables_paginate .paginate_button.first:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.first:focus, .dataTables_wrapper .dataTables_paginate .paginate_button.last:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.last:focus { color: #fff !important; } .dataTables_wrapper .dataTables_paginate .paginate_button.next.disabled, .dataTables_wrapper .dataTables_paginate .paginate_button.previous.disabled, .dataTables_wrapper .dataTables_paginate .paginate_button.first.disabled, .dataTables_wrapper .dataTables_paginate .paginate_button.last.disabled { opacity: 0.4; pointer-events: none; } .dataTables_wrapper .dataTables_paginate .paginate_button:hover { color: #fff !important; background: #7774e7; } .dataTables_wrapper .dataTables_paginate .paginate_button.current { color: #fff !important; background: #7774e7; } .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover { color: #fff !important; background: #7774e7; } .dataTables_wrapper .status { width: 5px; height: 5px; } table.dataTable.no-footer { border-bottom: 1px solid rgba(0, 0, 0, 0.0625); margin-bottom: 20px; } .sorting_asc:focus { outline: none; } .dataTables_wrapper { overflow: hidden; padding-bottom: 5px; } .dataTables_wrapper .dataTables_length { color: #313435; float: left; } @media screen and (max-width: 767px) { .dataTables_wrapper .dataTables_length { text-align: left; } } .dataTables_wrapper .dataTables_length select { border: 1px solid rgba(0, 0, 0, 0.0625); border-radius: 2px; box-shadow: none; height: 35px; font-size: 14px; padding: 5px; margin-left: 5px; margin-right: 5px; color: #72777a; transition: all 0.2s ease-in; } .dataTables_wrapper .dataTables_filter { color: #313435; float: right; } @media screen and (max-width: 767px) { .dataTables_wrapper .dataTables_filter { text-align: left; } } .dataTables_wrapper .dataTables_filter input { border: 1px solid rgba(0, 0, 0, 0.0625); border-radius: 2px; box-shadow: none; height: 35px; font-size: 14px; margin-left: 15px; padding: 5px; color: #72777a; transition: all 0.2s ease-in; } .dataTables_wrapper .dataTables_info { color: #72777a; float: left; } .dataTables_wrapper .dataTables_processing { color: #313435; } .dataTables_wrapper .dataTables_paginate { color: #72777a; float: right; } .dataTables_wrapper .dataTables_paginate .paginate_button { color: #72777a !important; padding: 6px 12px; border-radius: 2px; margin-right: 10px; transition: all 0.2s ease-in-out; text-decoration: none; } .dataTables_wrapper .dataTables_paginate .paginate_button.next, .dataTables_wrapper .dataTables_paginate .paginate_button.previous, .dataTables_wrapper .dataTables_paginate .paginate_button.first, .dataTables_wrapper .dataTables_paginate .paginate_button.last { border-radius: 2px; text-decoration: none; } .dataTables_wrapper .dataTables_paginate .paginate_button.next:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.next:focus, .dataTables_wrapper .dataTables_paginate .paginate_button.previous:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.previous:focus, .dataTables_wrapper .dataTables_paginate .paginate_button.first:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.first:focus, .dataTables_wrapper .dataTables_paginate .paginate_button.last:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.last:focus { color: #fff !important; } .dataTables_wrapper .dataTables_paginate .paginate_button.next.disabled, .dataTables_wrapper .dataTables_paginate .paginate_button.previous.disabled, .dataTables_wrapper .dataTables_paginate .paginate_button.first.disabled, .dataTables_wrapper .dataTables_paginate .paginate_button.last.disabled { opacity: 0.4; pointer-events: none; } .dataTables_wrapper .dataTables_paginate .paginate_button:hover { color: #fff !important; background: #7774e7; } .dataTables_wrapper .dataTables_paginate .paginate_button.current { color: #fff !important; background: #7774e7; } .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover { color: #fff !important; background: #7774e7; } .dataTables_wrapper .status { width: 5px; height: 5px; } .fc { background-color: #fff; border: 1px solid rgba(0, 0, 0, 0.0625); } .fc th { text-align: center; padding: 15px; background-color: transparent; color: #72777a; font-size: 12px; text-transform: uppercase; border-right-width: 0; border-left-width: 0; } .fc button { background-color: #fff; background-image: none; height: 37px; padding: 0 15px; color: #595d60; } .fc button.fc-state-default { border-color: rgba(0, 0, 0, 0.0625); box-shadow: none; } .fc button.fc-state-active { box-shadow: none; background-color: rgba(0, 0, 0, 0.0625); } .fc-toolbar { padding: 20px 20px 0; } .fc-view, .fc-view > table { background-color: #fff; } .fc-basic-view td.fc-day-number, .fc-basic-view td.fc-week-number span { padding: 7px 15px; } .fc-unthemed .fc-content, .fc-unthemed .fc-divider, .fc-unthemed .fc-popover, .fc-unthemed .fc-row, .fc-unthemed tbody, .fc-unthemed td, .fc-unthemed th, .fc-unthemed thead { border-color: rgba(0, 0, 0, 0.0625); } .fc-unthemed .fc-today { background-color: transparent; } .fc-basic-view .fc-day-number.fc-today { background-color: #0f9aee; color: #fff; display: inline-block; float: right; border-radius: 50%; padding: 6px 8px; line-height: 1; margin: 4px 4px 0 0; } .fc-event-container .fc-event { border-radius: 0; border: 0; background-color: #e5f4fd; color: #0f9aee !important; font-size: 12px; line-height: 2.5; padding: 0 15px; } .fc-event-container .fc-day-grid-event { margin: 1px 5px 5px; } .datepicker { border-radius: 0; padding: 25px; box-shadow: none; border: 1px solid rgba(0, 0, 0, 0.0625); } .datepicker table tr th, .datepicker table tr td { border-radius: 0; width: 40px; height: 35px; } .datepicker table tr td { transition: all 0.2s ease-in-out; } .datepicker table tr td span { border-radius: 0; } .datepicker table tr td span.active:active, .datepicker table tr td span.active:hover:active, .datepicker table tr td span.active.disabled:active, .datepicker table tr td span.active.disabled:hover:active, .datepicker table tr td span.active.active, .datepicker table tr td span.active:hover.active, .datepicker table tr td span.active.disabled.active, .datepicker table tr td span.active.disabled:hover.active, .datepicker table tr td span.active.active:hover, .datepicker table tr td span.active:hover.active:hover, .datepicker table tr td.active:active, .datepicker table tr td.active.highlighted:active, .datepicker table tr td.active.active, .datepicker table tr td.active.highlighted.active, .datepicker table tr td.active:active:hover, .datepicker table tr td.active.highlighted:active:hover, .datepicker table tr td.active.active:hover, .datepicker table tr td.active.highlighted.active:hover, .datepicker table tr td.active:active:focus, .datepicker table tr td.active.highlighted:active:focus, .datepicker table tr td.active.active:focus, .datepicker table tr td.active.highlighted.active:focus, .datepicker table tr td.active:active.focus, .datepicker table tr td.active.highlighted:active.focus, .datepicker table tr td.active.active.focus, .datepicker table tr td.active.highlighted.active.focus { color: #fff; background-color: #7774e7; border-color: transparent; } .datepicker table tr td span:hover, .datepicker table tr td span.focused { background: #7774e7; color: #fff; } .datepicker table tr td.day:hover, .datepicker table tr td.focused { background: #7774e7; color: #fff; cursor: pointer; } .datepicker .datepicker-switch:hover, .datepicker .prev:hover, .datepicker .next:hover, .datepicker tfoot tr th:hover { background: #7774e7; color: #fff; cursor: pointer; } .datepicker-inline { width: 330px; } .daterangepicker { border-radius: 0; padding: 30px; box-shadow: none; border: 1px solid rgba(0, 0, 0, 0.0625); } .daterangepicker .input-mini { border-radius: 0; margin-bottom: 20px; height: 40px; padding: 0 6px 0 35px; } .daterangepicker .input-mini.active { border-radius: 0; border-color: #6dc2f6; } .daterangepicker .daterangepicker_input i { position: absolute; left: 10px; top: 13px; } .daterangepicker td, .daterangepicker th { border-radius: 0; width: 40px; height: 35px; } .daterangepicker td.available:hover, .daterangepicker th.available:hover { background: #7774e7; color: #fff; } .daterangepicker td.in-range { background-color: transparent; color: #7774e7; } .daterangepicker td.active { background-color: #7774e7; border-color: transparent; color: #fff; } .daterangepicker td.active:hover { background-color: #7774e7; border-color: transparent; color: #fff; } .daterangepicker td.start-date { border-radius: 0; } .daterangepicker td.start-date.end-date { border-radius: 0; } .daterangepicker td.end-date { border-radius: 0; } .daterangepicker select.hourselect, .daterangepicker select.minuteselect, .daterangepicker select.secondselect, .daterangepicker select.ampmselect { border: 1px solid rgba(0, 0, 0, 0.0625); min-height: 30px; } .daterangepicker .calendar-time i { top: 8px; left: 35px; } @media screen and (min-width: 768px) { .daterangepicker .calendar { margin-right: 20px !important; } }