
:root {
  --fc-sticky-header-footer-z: 3;
  --fc-popover-z: 4;
}

.fc-b6 {
  z-index: var(--fc-popover-z) !important;
}

.fc-Cu {
  isolation: isolate;
}

/*
This will prevent all ancestors from customizing their box size unless they use .contentBox
*/
.fc-Bn,
.fc-Bn *,
.fc-Bn *:before,
.fc-Bn *:after {
  box-sizing: border-box !important;
}

/* classes attached to <body> */
.fc-5y,
.fc-5y * {
  cursor: not-allowed !important;
}

.fc-mU {
  -ms-overflow-style: none !important; /* IE and Edge */
  scrollbar-width: none !important; /* Firefox */
}

/* Hide scrollbar for Chrome, Safari and Opera */
.fc-mU::-webkit-scrollbar {
  display: none !important;
}

.fc-dq {
  flex-shrink: 0 !important;
}

.fc-EL .fc-xq {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
}

/* HACK for Safari. Can't do break-inside:avoid with flexbox items, likely b/c it's not standard:
   https://stackoverflow.com/a/60256345 */
.fc-K5 .fc-xq > * {
  float: left !important;
}

[dir=rtl] .fc-K5 .fc-xq > *,
.fc-K5[dir=rtl] .fc-xq > * {
  float: right !important;
}

.fc-K5 .fc-xq::after {
  content: "" !important;
  display: block !important;
  clear: both !important;
}

.fc-Y2 {
  cursor: pointer !important;
}

.fc-cs {
  cursor: n-resize !important;
}

.fc-rC {
  cursor: s-resize !important;
}

.fc-ns {
  cursor: w-resize !important;
}

[dir=rtl] .fc-ns {
  cursor: e-resize !important;
}

.fc-EB {
  cursor: e-resize !important;
}

[dir=rtl] .fc-EB {
  cursor: w-resize !important;
}

.fc-Aa {
  cursor: col-resize !important;
}

.fc-jM,
.fc-5w,
.fc-i5 {
  position: absolute !important;
  box-sizing: content-box !important;
  width: 100% !important;
  height: 100% !important;
}

.fc-jM {
  padding: 10px !important;
  margin: -10px !important;
}

.fc-5w {
  padding-left: 10px !important;
  padding-right: 10px !important;
  margin-left: -10px !important;
  margin-right: -10px !important;
}

.fc-i5 {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  margin-top: -10px !important;
  margin-bottom: -10px !important;
}

/* QUESTION: why not use -left -right instead of negative margins/padding for ALL? */
.fc-zF {
  position: absolute;
  top: 0;
  bottom: 0;
  left: -5px;
  right: -5px;
}

.fc-rz {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

/* Border Utils */
/* ------------------------------------------------------------------------------------------------- */

/* TODO: break-out to x and y. don't have "only" all */
/* TODO: instead of "border" utils, call them "borderless" to subtract? */

.fc-X8 {
  border: 0 !important;
}

.fc-vj {
  border-left: 0 !important;
  border-right: 0 !important;
  border-bottom: 0 !important;
}

.fc-UZ {
  border-top: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
}

.fc-mQ,
.fc-X1 {
  border-top: 0 !important;
  border-bottom: 0 !important;
}

.fc-mQ {
  border-inline-end: 0 !important;
}

.fc-X1 {
  border-inline-start: 0 !important;
}

.fc-Cg {
  border-left: 0 !important;
  border-right: 0 !important;
}

.fc-VQ {
  border-top: 0 !important;
  border-bottom: 0 !important;
}

.fc-a6 {
  border-top: 0 !important;
}

.fc-TW {
  border-bottom: 0 !important;
}

/* for matching cell start-border, assumed to be 1px, which can't be guaranteed */
.fc-zS {
  border-inline-start: 1px solid transparent !important;
}

/* Flexbox Utils */
/* ------------------------------------------------------------------------------------------------- */

.fc-y2 {
  display: flex !important;
  flex-direction: row !important;
}

.fc-pu {
  display: flex !important;
  flex-direction: column !important;
}

.fc-4V {
  flex-grow: 1 !important;
}

.fc-no {
  flex-grow: 1 !important;
  flex-basis: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
}

/*
TODO: use liquidX/Y elsewhere because frees up min other dimension; less collisions
*/
.fc-Wa {
  flex-grow: 1 !important;
  flex-basis: 0 !important;
  min-width: 0 !important;
}

/* Print-Safe Utils (media:screen ONLY) */
/* ------------------------------------------------------------------------------------------------- */

.fc-EL .fc-mg,
.fc-EL .fc-SN {
  display: flex !important;
  flex-direction: column !important;
}

/* Table Utils */
/* ------------------------------------------------------------------------------------------------- */

.fc-ec {
  margin: 0 !important;
  padding: 0 !important;
}

.fc-wp {
  padding: 0 !important;
}

.fc-Kw {
  margin: 0 !important;
}

.fc-0O {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.fc-R5 {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.fc-0I {
  flex-shrink: 0 !important;
  white-space: nowrap !important;
}

/* Misc Utils */
/* ------------------------------------------------------------------------------------------------- */

.fc-iX {
  overflow: hidden !important;
}

/*
TODO: eventually use this on daygrid/timegrid events' inner, time, and title, FOR PRINT
Needed to prevent wrapping to multiple lines, increasing height, throwing off print-positioning,
which can't rely on dynamic height detection after print-flag activated.
*/
.fc-cr {
  white-space: nowrap !important;
  overflow: hidden !important;
}

.fc-tU {
  box-shadow: none !important;
  border-radius: 0 !important
}

.fc-ig {
  position: relative !important;
}

.fc-VV {
  position: absolute !important;
}

.fc-99 {
  inset-inline-start: 0 !important;
}

.fc-f4 {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
}

.fc-M6,
.fc-QA {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
}

.fc-IC,
.fc-xI {
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
}

.fc-M6 {
  top: 0 !important;
}

.fc-xI {
  left: 0 !important;
  right: 0 !important;
  width: 0 !important;
}

@media not print {
  .fc-qW {
    position: sticky !important;
  }

  .fc-hq {
    position: sticky !important;
    top: 0 !important;
  }

  /* Sticks to either left or right (the flex "start") depending on ltr/rtl */
  .fc-oe {
    position: sticky !important;
    left: 0 !important;
    right: 0 !important;
  }

  .fc-wB {
    position: sticky !important;
    top: 0 !important;
    z-index: var(--fc-sticky-header-footer-z) !important;
  }
}

/* Only needed when padding/border must be separate from width/height */
.fc-TV {
  box-sizing: content-box !important;
}

.fc-BP {
  position: absolute !important;
  left: -10000px !important;
}

.fc-IX {
  align-items: center !important;
}

.fc-Cj {
  align-items: flex-start !important;
}

.fc-7k {
  align-items: flex-end !important;
}

.fc-B7 {
  text-decoration: inherit;
}

/* Footer Scrollbar */
/* ------------------------------------------------------------------------------------------------- */

.fc-aa {
  position: sticky !important;
  bottom: 0 !important;
  z-index: var(--fc-sticky-header-footer-z) !important;
}

.fc-rR > * {
  margin-top: -1px !important;
}

.fc-rR > * > * {
  height: 1px !important;
}

/* Print-Safe Utils */
/* ------------------------------------------------------------------------------------------------- */

.fc-K5 .fc-ms {
  -moz-column-break-inside: avoid !important;
       break-inside: avoid !important;
}

.fc-K5 .fc-mg {
  display: table !important;
  table-layout: fixed !important;
  width: 100% !important;
  border-spacing: 0 !important;
  border-collapse: collapse !important;
}

.fc-K5 .fc-SN {
  display: table-header-group !important;
  -moz-column-break-inside: avoid !important;
       break-inside: avoid !important;
  background: #fff !important;
  z-index: 9999 !important;
  position: relative !important;
}

.fc-LB {
  /* min-height when multiple rows coexist, provides sane aspect-ratio for cells */
  min-height: 6em !important;
}

/* Z-index */
/* ------------------------------------------------------------------------------------------------- */

.fc-Bs {
  z-index: 0;
}

.fc-jo {
  z-index: 1;
}

.fc-i1:focus-visible {
  z-index: 2;
}

/* INTERNAL MARKER -- used to mark an element for internal significance */
/* ------------------------------------------------------------------------------------------------- */

.fc-v3 {}

.fc-gI {}
.fc-IL {}
.fc-Es {}
.fc-P6 {}
.fc-Wp {}
.fc-WB {}
.fc-pe {}
.fc-0l {}

.fc-eR {}

.fc-na {}

.fc-3e {}

.fc-q5 {}

.fc-I5 {}

.fc-vD {}
