/* 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; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } .fc { /* 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; -moz-user-select: none; -ms-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; -moz-user-select: none; -ms-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