
:root {
    --fc-small-font-size: .85em;
    --fc-page-bg-color:  rgba(30,30,30,1);
    --fc-neutral-bg-color: rgba(20,20,20,1);
    --fc-neutral-text-color: grey;
    --fc-border-color: rgba(255,255,255,.04);
    --fc-button-text-color: #fff;
    --fc-button-bg-color: #2c3e50;
    --fc-button-border-color: #2c3e50;
    --fc-button-hover-bg-color: #1e2b37;
    --fc-button-hover-border-color: #1a252f;
    --fc-button-active-bg-color: #1a252f;
    --fc-button-active-border-color: #151e27;
    --fc-event-bg-color: #3788d8;
    --fc-event-border-color: #3788d8;
    --fc-event-text-color: #fff;
    --fc-event-selected-overlay-color: rgba(0, 0, 0, .25);
    --fc-more-link-bg-color: #d0d0d0;
    --fc-more-link-text-color: inherit;
    --fc-event-resizer-thickness: 8px;
    --fc-event-resizer-dot-total-width: 8px;
    --fc-event-resizer-dot-border-width: 1px;
    --fc-non-business-color: hsla(0, 0%, 84%, .3);
    --fc-bg-event-color: #8fdf82;
    --fc-bg-event-opacity: 0.3;
    --fc-highlight-color: rgba(188, 232, 241, .3);
    --fc-today-bg-color: transparent; /* rgba(255, 255, 255, .05) */
    --fc-now-indicator-color: red;

    --fc-list-event-dot-width: 10px;
    --fc-list-event-hover-bg-color: rgba(255,255,255,.05);
}


body.view-event #content div.com-dpcalendar-event {
    max-width: 775px;
    margin-left: auto;
    margin-right: auto;
}



/* */
.com-dpcalendar-calendar .fc-event .dp-event__time {
    margin: 0 !important;
}

/* */
.fc .fc-daygrid-day-number {
    border: 1px solid transparent;
    margin-bottom: 4px;
    margin-right: 2px;
}

.fc .fc-day-today a.fc-daygrid-day-number {
    border-color: var(--mf-orange);
    padding: 4px 8px;
    border-radius: 4px;
    margin-right: 4px;
}


/* */
.com-dpcalendar-event__header {
    grid-column: 1 / -1 !important;
    grid-row: 1 / 2 !important;

    background: var(--mf-bg-darker) !important;
    padding: 30px 30px 0px 30px !important;
    border-radius: 12px 12px 0 0;
}

.com-dpcalendar-event__image {
    grid-column: 1 / -1 !important;
    grid-row: 5 / 6 !important;
    
    border-radius: 0px 0px 12px 12px;
    overflow: hidden;
}

.com-dpcalendar-event__information {
    grid-column: 1 / -1 !important;
    grid-row: 3 / 4 !important;

    background: var(--mf-bg-darker) !important;
    padding: 0px 30px 25px 30px !important;
    border-radius: 0 0 12px 12px;
}

.com-dpcalendar-event__information .dp-description__description span.dp-time__start::before {
    content: '';
    display: block;
}

.com-dpcalendar-event__information .dp-description__description span.dp-time__end::after {
    content: 'Uhr';
    display: inline-block;
    padding-left: 3px;
}


.com-dpcalendar-event__actions {
    padding: 0 !important;
    border: 0px !important;
}

.com-dpcalendar-event__description {
    margin-top: 50px !important;
    margin-bottom: 20px !important;
    padding: 0 30px !important;
}

.com-dpcalendar-event__custom-text {
    padding: 0 30px !important;
}


/* */
.com-dpcalendar-event .dp-heading {
    margin-bottom: 40px !important;
    max-width: 565px;
}

/* Monat */
.fc .fc-scrollgrid-section-sticky > * {
    background: var(--mf-bg-darker);
}

div.fc-scrollgrid-sync-inner {
    padding: 6px 1px;
}

th div.fc-scrollgrid-sync-inner {
    padding: 16px 1px;
}

.com-dpcalendar-calendar .fc-header-toolbar h2 {
    font-weight: 700 !important;
}

.fc-timegrid-event div.fc-event-main,
div.fc-event-main {
    padding: 10px 8px;
}

/* Monat Tooltip */
.dp-event-tooltip__description h4 {
    font-size: 1.1em;
    color: var(--mf-gray) !important;
    margin: 12px auto 4px auto !important;
}

/* */
.kurstermine #content h4 {
    margin-top: 45px;
    margin-bottom: 20px;
}

.kurstermine #content h4::before {
  content: '';
  display: inline-block;
  width: 8px;
  height: 4px;
  background-color: var(--mf-orange);
  border-radius: 1px;
  overflow: hidden;
  margin-right: 7px;
  margin-bottom: 4px;
}

.kurstermine #content ul {
  margin: 0;
  padding: 0;
  width: 100%;
  max-width: 750px;
  font-size: 95%;
}

.kurstermine #content ul li {
  list-style-type: none;
  padding: 5px 20px 5px 2px;
  margin: 0;
  border-bottom: 1px solid rgba(255,255,255,0.1);
}


/* Modul */
.mod-dpcalendar-upcoming-default__events {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    grid-auto-rows: 1fr;
    gap: 15px;
    align-items: stretch;
}

.mod-dpcalendar-upcoming-default__event+div {
    margin-top: 0 !important;
}

.mod-dpcalendar-upcoming-default__event {
    background: var(--mf-bg-darker);
    padding: 25px 20px 40px 90px;
    border-radius: 12px;
    position: relative;
}

.mod-dpcalendar-upcoming-default__date {
    font-style: normal !important;
}

.mod-dpcalendar-upcoming-default__rrule {
    display: none !important;
}

.mod-dpcalendar-upcoming-default .dp-flatcalendar {
    float: unset !important;
    position: absolute !important;
    top: 28px !important;
    left: 25px !important;
}

.mod-dpcalendar-upcoming-default .dp-link {
    font-weight: 700 !important;
    font-size: 1.3em !important;
    margin: 0px auto 5px auto !important;
}

.mod-dpcalendar-upcoming-default a.dp-link:hover {
    color: var(--mf-orange) !important;
}

.mod-dpcalendar-upcoming-default__date span.dp-icon {
    display: none !important;
}

.mod-dpcalendar-upcoming-default__date span.dp-time__start::before {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background: transparent;
    color: transparent;
}

.mod-dpcalendar-upcoming-default__date span.dp-time__end::after {
    content: 'Uhr';
    display: inline-block;
    padding-left: 3px;
}



div.fc-event-main span.dp-event__time {
    display: block;
    margin: 0 0 2px 0;
}

/* Bad Hersfeld */
a.dp-event-calendar-24 {
    background-color: var(--mf-bg-darker) !important;
    border-color: var(--mf-bg-darker) !important;
    border-left: 4px solid var(--mf-blue) !important;
}

a.fc-event:hover span.dp-event__title {
    color: var(--mf-orange);
}



/* Listenansicht */
.fc .fc-list-day-cushion {
    padding: 14px 16px;
    text-align: left;
    position: relative;
}

.fc .fc-list-table td {
    padding: 10px 16px;
}


.fc-direction-ltr .fc-list-day-text,
.fc-direction-ltr .fc-list-day-side-text {
    float: unset !important;
    font-weight: 600 !important;
    opacity: .4;
}

.fc-direction-ltr .fc-list-day-text {
}

.fc-direction-ltr .fc-list-day-side-text {
    position: absolute;
    left: 175px;
}