/* module-key = 'doitbetter.calendar:split_4062', location = 'doitbetter/calendar/new/css/4062.css' */
/* Make clicks pass-through */
#nprogress {
  pointer-events: none;
}
#nprogress .bar {
  background: #29d;
  position: fixed;
  z-index: 1031;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
}
/* Fancy blur effect */
#nprogress .peg {
  display: block;
  position: absolute;
  right: 0px;
  width: 100px;
  height: 100%;
  box-shadow: 0 0 10px #29d, 0 0 5px #29d;
  opacity: 1;
  -webkit-transform: rotate(3deg) translate(0px, -4px);
  -ms-transform: rotate(3deg) translate(0px, -4px);
  transform: rotate(3deg) translate(0px, -4px);
}
/* Remove these to get rid of the spinner */
#nprogress .spinner {
  display: block;
  position: fixed;
  z-index: 1031;
  top: 15px;
  right: 15px;
}
#nprogress .spinner-icon {
  width: 18px;
  height: 18px;
  box-sizing: border-box;
  border: solid 2px transparent;
  border-top-color: #29d;
  border-left-color: #29d;
  border-radius: 50%;
  -webkit-animation: nprogress-spinner 400ms linear infinite;
  animation: nprogress-spinner 400ms linear infinite;
}
.nprogress-custom-parent {
  overflow: hidden;
  position: relative;
}
.nprogress-custom-parent #nprogress .spinner,
.nprogress-custom-parent #nprogress .bar {
  position: absolute;
}
@-webkit-keyframes nprogress-spinner {
  0% {
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
  }
}
@keyframes nprogress-spinner {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

.ghx-label {
  background-color: #ebecf0;
  border: 1px solid #cccccc;
  border-radius: 4px;
  display: inline-block;
  font-size: 14px;
  font-weight: normal;
  line-height: 1;
  padding: 1px 5px;
  margin: 0 5px 0 0;
  text-align: left;
  text-decoration: none;
}
.ghx-label:hover {
  text-decoration: none;
}
.label-lozenge {
  border: 1px solid #cccccc;
  border-radius: 4px;
  display: inline-block;
  font-size: 14px;
  font-weight: normal;
  line-height: 1;
  padding: 1px 5px;
  margin: 0 5px 0 0;
  text-align: left;
  text-decoration: none;
  border: none;
  color: #5e6c84;
  background-color: #ebecf0;
  padding: 2px 6px;
}
.label-lozenge:hover {
  text-decoration: none;
}
.label-lozenge:hover {
  color: #5e6c84;
}

.fc .jira-issue-status-lozenge {
  vertical-align: top;
  margin-top: 2px;
}

.event-info {
  font-size: 14px;
  width: 300px;
  padding: 8px 16px;
}
.event-info-fields {
  max-height: 300px;
  overflow: auto;
}
.field-array-item .separated::after {
  content: ', ';
  margin-right: 2px;
}
.field-array-item:last-child .separated::after {
  content: '';
}

.calendarEventComponent {
  --ds-background-neutral: var(--ds-background-accent-gray-subtlest);
  color: var(--doitb-event-color);
}
.calendarEventComponent button {
  padding: 2px;
  height: 16px;
  width: 16px;
  font-size: inherit;
  -webkit-box-sizing: content-box;
  /* stylelint-disable-line property-no-vendor-prefix */
}
.calendarEventComponent .custom-event-title {
  vertical-align: top;
  padding-top: 1px;
  line-height: 20px;
  word-wrap: break-word;
}
.calendarEventComponent .custom-event-avatars {
  margin-right: 2px;
  display: inline-block;
  vertical-align: top;
}
.calendarEventComponent .text-container {
  word-wrap: break-word;
  vertical-align: top;
  line-height: 20px;
}
.calendarEventComponent .avatars-container {
  vertical-align: top;
  display: inline-block;
  margin-right: 2px;
  height: 22px;
}
.calendarEventComponent .time-container {
  vertical-align: top;
  padding-top: 1px;
  line-height: 20px;
  margin-right: 2px;
}
@media print {
  .calendarEventComponent {
    color: black;
  }
}
.fc-timeline .fc-content {
  overflow: visible;
}
.fc-timeline .calendarEventComponent {
  position: sticky;
  left: 0;
  top: 0;
  right: 0;
  overflow: hidden;
  max-width: fit-content;
}
.eventInfoHeader {
  padding: 5px 0;
}
.eventDescription {
  max-height: 200px;
  overflow-y: auto;
}

.ak-icon {
  position: relative;
  display: block;
}
.ak-icon::before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  display: block;
  width: 24px;
  height: 24px;
  background: transparent center center no-repeat;
  background-size: 24px;
}
.ak-calendar .fc-view-container {
  border-radius: 3px;
}
.fc.ak-calendar td,
.fc.ak-calendar th {
  border: 1px solid transparent;
}
.fc.ak-calendar td.fc-day-top {
  text-align: center;
}
.calendarEventComponent {
  height: 100%;
  padding: 2px;
}
.version-event {
  border: 0;
  border-radius: 2px;
}
.version-event .calendarEventComponent {
  padding: 0;
}
.ak-calendar .fc-agendaList-view,
.ak-calendar .fc-listDay-view {
  border-color: transparent;
}
.ak-calendar .fc-agendaList-view .fc-list-table td,
.ak-calendar .fc-listDay-view .fc-list-table td {
  padding: 4px;
}
.ak-calendar .fc-agendaList-view .calendarEventComponent,
.ak-calendar .fc-listDay-view .calendarEventComponent {
  padding: 0;
}
.ak-calendar .fc-agendaList-view .fc-list-heading .fc-list-heading-main,
.ak-calendar .fc-listDay-view .fc-list-heading .fc-list-heading-main {
  font-size: 18px;
  font-weight: 500;
}
.ak-calendar .fc-agendaList-view .fc-list-heading .ak-widget-header,
.ak-calendar .fc-listDay-view .fc-list-heading .ak-widget-header {
  background: transparent;
}
.ak-calendar .fc-agendaList-view .fc-list-empty,
.ak-calendar .fc-listDay-view .fc-list-empty {
  background: transparent;
  font-size: 18px;
  font-weight: 500;
}
.ak-calendar .fc-agendaList-view .fc-list-item,
.ak-calendar .fc-listDay-view .fc-list-item {
  color: var(--ds-text, #333333);
  border-radius: var(--ds-border-radius, 4px);
}
.ak-calendar .fc-agendaList-view .fc-list-item td,
.ak-calendar .fc-listDay-view .fc-list-item td {
  background-color: unset;
}
.ak-calendar .fc-agendaList-view .fc-list-item:hover,
.ak-calendar .fc-listDay-view .fc-list-item:hover {
  background-color: var(--ds-surface-hovered, #F1F2F4);
}
.ak-calendar .fc-agendaList-view .fc-list-item:hover td,
.ak-calendar .fc-listDay-view .fc-list-item:hover td {
  background-color: unset;
}
.fc.ak-calendar .fc-basicWeek-view td,
.fc.ak-calendar .fc-month-view td,
.fc.ak-calendar .fc-quarter-view td,
.fc.ak-calendar .fc-basicWeek-view th,
.fc.ak-calendar .fc-month-view th,
.fc.ak-calendar .fc-quarter-view th {
  border: 1px solid var(--ds-background-accent-gray-subtler, #dfe1e6);
}
.fc .fc-basicWeek-view .fc-row .fc-content-skeleton table,
.fc .fc-basicWeek-view .fc-row .fc-content-skeleton td,
.fc .fc-basicWeek-view .fc-row .fc-helper-skeleton td,
.fc .fc-month-view .fc-row .fc-content-skeleton table,
.fc .fc-month-view .fc-row .fc-content-skeleton td,
.fc .fc-month-view .fc-row .fc-helper-skeleton td,
.fc .fc-quarter-view .fc-row .fc-content-skeleton table,
.fc .fc-quarter-view .fc-row .fc-content-skeleton td,
.fc .fc-quarter-view .fc-row .fc-helper-skeleton td {
  border-color: transparent;
}
.fc .fc-basicWeek-view .fc-row .fc-content-skeleton table.fc-day-top,
.fc .fc-basicWeek-view .fc-row .fc-content-skeleton td.fc-day-top,
.fc .fc-basicWeek-view .fc-row .fc-helper-skeleton td.fc-day-top,
.fc .fc-month-view .fc-row .fc-content-skeleton table.fc-day-top,
.fc .fc-month-view .fc-row .fc-content-skeleton td.fc-day-top,
.fc .fc-month-view .fc-row .fc-helper-skeleton td.fc-day-top,
.fc .fc-quarter-view .fc-row .fc-content-skeleton table.fc-day-top,
.fc .fc-quarter-view .fc-row .fc-content-skeleton td.fc-day-top,
.fc .fc-quarter-view .fc-row .fc-helper-skeleton td.fc-day-top {
  border-bottom-color: transparent;
}
.fc-event {
  line-height: 1;
  border-radius: var(--ds-border-radius, 4px);
  margin: 2px 4px 0;
}
.fc.ak-calendar tbody.fc-body > tr > td.ak-widget-content {
  border-color: transparent;
}
.fc.ak-calendar td.ak-widget-header {
  border: 1px solid transparent;
  color: var(--ds-text-subtlest, #5e6c84);
}
.fc-content .type-icon svg,
.ak-widget-content .type-icon svg,
.vis-item .type-icon svg {
  height: 20px;
  width: 20px;
}
.fc-content .jira-issue-status-lozenge,
.ak-widget-content .jira-issue-status-lozenge,
.vis-item .jira-issue-status-lozenge {
  margin-right: 2px;
  max-width: 90px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.fc.ak-calendar .fc-timeline-event {
  margin-top: 8px;
  margin-bottom: 8px;
  border-radius: 2px;
  border: none;
}
.fc.ak-calendar .fc-timeline-event > .fc-content {
  white-space: break-spaces;
}
.fc.ak-calendar .fc-event.fc-not-end {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.fc.ak-calendar .fc-week-number {
  background-color: var(--ds-background-accent-gray-subtler, #f2f2f2);
  color: var(--ds-text-subtle, gray);
}
.fc.ak-calendar .fc-week-number.ak-widget-content,
.fc.ak-calendar td.fc-axis.ak-widget-content {
  border-left: 1px solid transparent;
  border-right: 2px solid var(--ds-background-accent-gray-subtler, #dfe1e6);
  color: var(--ds-text-subtlest, #5e6c84);
}
.fc.ak-calendar .ak-button {
  display: inline-block;
}
.fc.ak-calendar thead,
.fc.ak-calendar tbody {
  border-bottom: 0;
}
.fc.ak-calendar .fc-agendaWeek-view .ak-widget-content,
.fc.ak-calendar .fc-agendaDay-view .ak-widget-content {
  border: 1px solid rgba(150, 150, 150, 0.13);
}
.fc.ak-calendar .fc-agendaWeek-view .fc-event,
.fc.ak-calendar .fc-agendaDay-view .fc-event {
  min-width: 1px;
}
.fc.ak-calendar .fc-agendaWeek-view .fc-body > tr > td,
.fc.ak-calendar .fc-agendaDay-view .fc-body > tr > td {
  overflow: scroll;
}
.fc.ak-calendar .fc-agendaWeek-view .fc-day-grid,
.fc.ak-calendar .fc-agendaDay-view .fc-day-grid {
  max-height: max(30vh, 200px);
  overflow-y: scroll;
}
.fc.ak-calendar .fc-timeline .fc-dragging {
  background-color: green;
}
.fc.ak-calendar .fc-timeline .fc-today {
  color: var(--ds-background-accent-blue-bolder, #0052CC);
}
.fc.ak-calendar .fc-week-number.ak-widget-header {
  border-right: 0;
}
.fc-day,
.fc-bgevent {
  border-radius: 3px;
}
.ak-widget-header.fc-divider {
  background-color: var(--ds-background-accent-gray-subtler, #dfe1e6);
  border-color: var(--ds-background-accent-gray-subtler, #dfe1e6);
}
.fc-basicWeek-view .fc-day-header.ak-widget-header,
.fc-month-view .fc-day-header.ak-widget-header,
.fc-quarter-view .fc-day-header.ak-widget-header {
  border-right-width: 0 !important;
  border-left-width: 0 !important;
}
.fc-basicWeek-view .fc-body .fc-row,
.fc-month-view .fc-body .fc-row,
.fc-quarter-view .fc-body .fc-row {
  border-right: 1px solid var(--ds-background-accent-gray-subtler, #dfe1e6);
  border-left: 1px solid var(--ds-background-accent-gray-subtler, #dfe1e6);
}
.fc-basicWeek-view .fc-body .fc-row:first-child,
.fc-month-view .fc-body .fc-row:first-child,
.fc-quarter-view .fc-body .fc-row:first-child {
  box-sizing: border-box;
  border-top: 1px solid var(--ds-background-accent-gray-subtler, #dfe1e6);
  border-top-left-radius: var(--ds-border-radius-200, 8px);
  border-top-right-radius: var(--ds-border-radius-200, 8px);
}
.fc-basicWeek-view .fc-body .fc-row:last-child,
.fc-month-view .fc-body .fc-row:last-child,
.fc-quarter-view .fc-body .fc-row:last-child {
  box-sizing: border-box;
  border-bottom: 1px solid var(--ds-background-accent-gray-subtler, #dfe1e6);
  border-bottom-left-radius: var(--ds-border-radius-200, 8px);
  border-bottom-right-radius: var(--ds-border-radius-200, 8px);
}
.fc-basicWeek-view .fc-body .fc-row:last-child .fc-content-skeleton,
.fc-month-view .fc-body .fc-row:last-child .fc-content-skeleton,
.fc-quarter-view .fc-body .fc-row:last-child .fc-content-skeleton {
  padding-bottom: 6px;
}
.fc-scroller > div {
  margin: -1px 0;
}
.fc-scroller::before {
  position: sticky;
  content: "";
  display: block;
  z-index: 2;
  pointer-events: none;
  opacity: 0;
  filter: drop-shadow(0px 0 8px var(--ds-border-bold, #758195)) drop-shadow(0px 0 4px var(--ds-border-bold, #758195));
  top: 0;
  border-bottom: 1px solid var(--ds-background-accent-gray-subtler, #dfe1e6);
  animation: calendar-scroll-shadow-top linear;
  animation-timeline: scroll(nearest y);
}
.fc-scroller::after {
  position: sticky;
  content: "";
  display: block;
  z-index: 2;
  pointer-events: none;
  opacity: 0;
  filter: drop-shadow(0px 0 8px var(--ds-border-bold, #758195)) drop-shadow(0px 0 4px var(--ds-border-bold, #758195));
  bottom: 0;
  border-top: 1px solid var(--ds-background-accent-gray-subtler, #dfe1e6);
  animation: calendar-scroll-shadow-bottom linear;
  animation-timeline: scroll(nearest y);
}
@keyframes calendar-scroll-shadow-top {
  0% {
    opacity: 0;
  }
  1%,
  100% {
    opacity: 1;
  }
}
@keyframes calendar-scroll-shadow-bottom {
  0%,
  99% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.fc-agendaDay-view td.ak-widget-content.fc-today {
  background: transparent;
}
.fc-nonbusiness {
  background-color: var(--ds-background-accent-gray-subtler, rgba(9 30 66 / 8%));
}
.fc-view td.ak-widget-content.fc-today {
  background: transparent;
}
.fc .fc-basic-view .fc-day-top .fc-day-number {
  color: var(--ds-text-subtlest, #5e6c84);
  padding: 2px;
  margin: 2px 4px;
}
.fc .fc-basic-view .fc-today .fc-day-number {
  background: var(--ds-background-accent-blue-bolder, #0052CC);
  border-radius: 100%;
  color: white;
  width: 20px;
  height: 20px;
}
.fc .fc-agenda-view .fc-day-header.fc-today {
  color: var(--ds-background-accent-blue-bolder, #0052CC);
}
.fc .fc-now-indicator {
  border-color: var(--ds-background-accent-blue-bolder, #0052CC);
}
.start-of-month-event {
  background: inherit;
  border: none;
  opacity: 1;
}
.start-of-month-event .month-title {
  padding: 2px 4px;
  display: inline-block;
  font-weight: bold;
  background-color: var(--ds-background-accent-gray-subtler, #f2f2f2);
  color: var(--ds-text-subtle, gray);
  border-bottom-right-radius: 3px;
}
.start-of-month-event .month-title-offset {
  margin-left: 25px;
  border-left: none;
}
.doitb-calendar-legacy-layout .fc-body > tr > td {
  overflow-y: visible;
}
.doitb-calendar-legacy-layout .calendar-view-page-panel {
  overflow: visible;
}
.doitb-calendar-legacy-layout .fc.ak-calendar .fc-agendaWeek-view .fc-day-grid,
.doitb-calendar-legacy-layout .fc.ak-calendar .fc-agendaDay-view .fc-day-grid {
  max-height: unset !important;
  overflow-y: visible;
}
@media print {
  /*!
 * FullCalendar v3.10.5
 * Docs & License: https://fullcalendar.io/
 * (c) 2019 Adam Shaw
 */
  /*!
 * FullCalendar v3.10.5 Print Stylesheet
 * Docs & License: https://fullcalendar.io/
 * (c) 2019 Adam Shaw
 */
  /*
 * Include this stylesheet on your page to get a more printer-friendly calendar.
 * When including this stylesheet, use the media='print' attribute of the <link> tag.
 * Make sure to include this stylesheet IN ADDITION to the regular fullcalendar.css.
 */
  .fc {
    max-width: 100% !important;
  }
  /* Global Event Restyling
--------------------------------------------------------------------------------------------------*/
  .fc-event {
    background: #fff !important;
    color: #000 !important;
    page-break-inside: avoid;
  }
  .fc-event .fc-resizer {
    display: none;
  }
  /* Table & Day-Row Restyling
--------------------------------------------------------------------------------------------------*/
  .fc th,
  .fc td,
  .fc hr,
  .fc thead,
  .fc tbody,
  .fc-row {
    border-color: #ccc !important;
    background: #fff !important;
  }
  /* kill the overlaid, absolutely-positioned components */
  /* common... */
  .fc-bg,
  .fc-bgevent-skeleton,
  .fc-highlight-skeleton,
  .fc-helper-skeleton,
  .fc-bgevent-container,
  .fc-business-container,
  .fc-highlight-container,
  .fc-helper-container {
    display: none;
  }
  /* don't force a min-height on rows (for DayGrid) */
  .fc tbody .fc-row {
    height: auto !important;
    /* undo height that JS set in distributeHeight */
    min-height: 0 !important;
    /* undo the min-height from each view's specific stylesheet */
  }
  .fc tbody .fc-row .fc-content-skeleton {
    position: static;
    /* undo .fc-rigid */
    padding-bottom: 0 !important;
    /* use a more border-friendly method for this... */
  }
  .fc tbody .fc-row .fc-content-skeleton tbody tr:last-child td {
    /* only works in newer browsers */
    padding-bottom: 1em;
    /* ...gives space within the skeleton. also ensures min height in a way */
  }
  .fc tbody .fc-row .fc-content-skeleton table {
    /* provides a min-height for the row, but only effective for IE, which exaggerates this value,
     making it look more like 3em. for other browers, it will already be this tall */
    height: 1em;
  }
  /* Undo month-view event limiting. Display all events and hide the "more" links
--------------------------------------------------------------------------------------------------*/
  .fc-more-cell,
  .fc-more {
    display: none !important;
  }
  .fc tr.fc-limited {
    display: table-row !important;
  }
  .fc td.fc-limited {
    display: table-cell !important;
  }
  .fc-popover {
    display: none;
    /* never display the "more.." popover in print mode */
  }
  /* TimeGrid Restyling
--------------------------------------------------------------------------------------------------*/
  /* undo the min-height 100% trick used to fill the container's height */
  .fc-time-grid {
    min-height: 0 !important;
  }
  /* don't display the side axis at all ("all-day" and time cells) */
  .fc-agenda-view .fc-axis {
    display: none;
  }
  /* don't display the horizontal lines */
  .fc-slats,
  .fc-time-grid hr {
    /* this hr is used when height is underused and needs to be filled */
    display: none !important;
    /* important overrides inline declaration */
  }
  /* let the container that holds the events be naturally positioned and create real height */
  .fc-time-grid .fc-content-skeleton {
    position: static;
  }
  /* in case there are no events, we still want some height */
  .fc-time-grid .fc-content-skeleton table {
    height: 4em;
  }
  /* kill the horizontal spacing made by the event container. event margins will be done below */
  .fc-time-grid .fc-event-container {
    margin: 0 !important;
  }
  /* TimeGrid *Event* Restyling
--------------------------------------------------------------------------------------------------*/
  /* naturally position events, vertically stacking them */
  .fc-time-grid .fc-event {
    position: static !important;
    margin: 3px 2px !important;
  }
  /* for events that continue to a future day, give the bottom border back */
  .fc-time-grid .fc-event.fc-not-end {
    border-bottom-width: 1px !important;
  }
  /* indicate the event continues via "..." text */
  .fc-time-grid .fc-event.fc-not-end:after {
    content: "...";
  }
  /* for events that are continuations from previous days, give the top border back */
  .fc-time-grid .fc-event.fc-not-start {
    border-top-width: 1px !important;
  }
  /* indicate the event is a continuation via "..." text */
  .fc-time-grid .fc-event.fc-not-start:before {
    content: "...";
  }
  /* time */
  /* undo a previous declaration and let the time text span to a second line */
  .fc-time-grid .fc-event .fc-time {
    white-space: normal !important;
  }
  /* hide the the time that is normally displayed... */
  .fc-time-grid .fc-event .fc-time span {
    display: none;
  }
  /* ...replace it with a more verbose version (includes AM/PM) stored in an html attribute */
  .fc-time-grid .fc-event .fc-time:after {
    content: attr(data-full);
  }
  /* Vertical Scroller & Containers
--------------------------------------------------------------------------------------------------*/
  /* kill the scrollbars and allow natural height */
  .fc-scroller,
  .fc-day-grid-container,
  .fc-time-grid-container {
    /* */
    overflow: visible !important;
    height: auto !important;
  }
  /* kill the horizontal border/padding used to compensate for scrollbars */
  .fc-row {
    border: 0 !important;
    margin: 0 !important;
  }
  /* Button Controls
--------------------------------------------------------------------------------------------------*/
  .fc-button-group,
  .fc button {
    display: none;
    /* don't display any button-related controls */
  }
  .fc-body > tr > td {
    overflow-y: visible;
  }
  .calendar-view-page-panel {
    overflow: visible;
  }
  .fc.ak-calendar .fc-agendaWeek-view .fc-day-grid,
  .fc.ak-calendar .fc-agendaDay-view .fc-day-grid {
    max-height: unset !important;
    overflow-y: visible;
  }
  #content {
    overflow: visible !important;
  }
}

