/* ==========================================================
   JEvents – kombinierte Anpassungen für Alternative und Ext
   Zusammengeführt aus view1.css und view2.css
   ========================================================== */

/* ======================= Alternative ======================= */

/*
 * JEvents: mehrtägige Termine als durchgehende Balken
 */

body.com_jevents.view-month.layout-calendar
#jevents .cal_div_weekrow > div {
  overflow: visible;
}

/*
 * Einheit eines Termins.
 */
body.com_jevents.view-month.layout-calendar
#jevents .jev-track-item {
  box-sizing: border-box !important;
  position: relative;
  z-index: 2;
}

/*
 * Äußeren Abstand zwischen den Tageszellen entfernen.
 */
body.com_jevents.view-month.layout-calendar
#jevents .jev-span-piece {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/*
 * Eigentliche Balkenfläche:
 * nur noch eine farbige Unterkante, keine Oberkante.
 */
body.com_jevents.view-month.layout-calendar
#jevents .jev-span-piece > div {
  box-sizing: border-box;
  min-height: 19px;

  margin-left: -3px;
  margin-right: -3px;

  background-color:
    var(--jev-event-background, #eef0f2);

  border-top: 0 !important;
  border-bottom:
    2px solid var(--jev-event-color, #777);

  border-radius: 0;

  position: relative;
  z-index: 3;
}

/*
 * Links und Tooltip-Bereich über die volle Balkenhöhe.
 */
body.com_jevents.view-month.layout-calendar
#jevents .jev-span-piece .editlinktip,
body.com_jevents.view-month.layout-calendar
#jevents .jev-span-piece .cal_titlelink {
  display: block;
  min-height: 17px;
  line-height: 17px;
  white-space: nowrap;
}

/*
 * Echter Beginn des Termins:
 * den von JEvents erzeugten linken Kategoriefarbstreifen
 * beibehalten.
 */
body.com_jevents.view-month.layout-calendar
#jevents .jev-span-first:not(.jev-span-from-previous) {
  padding-left: 2px !important;
}

body.com_jevents.view-month.layout-calendar
#jevents .jev-span-first:not(.jev-span-from-previous)
> div {
  margin-left: 0;
  border-radius: 3px 0 0 3px;
}

/*
 * Fortsetzung aus der vorherigen Kalenderwoche:
 * ohne neuen linken Farbstreifen direkt am Zellenrand beginnen.
 */
body.com_jevents.view-month.layout-calendar
#jevents .jev-span-from-previous > div {
  margin-left: -3px;
  border-left-width: 0 !important;
  padding-left: 3px !important;
  border-radius: 0;
}

/*
 * Mittlere und letzte Tagesstücke erhalten keinen neuen
 * linken Kategoriefarbstreifen.
 */
body.com_jevents.view-month.layout-calendar
#jevents .jev-span-piece:not(.jev-span-first) > div {
  border-left-width: 0 !important;
  padding-left: 3px !important;
}

/*
 * Eventname nur am ersten sichtbaren Tag der Kalenderzeile.
 * visibility hält die Balkenhöhe identisch.
 */
body.com_jevents.view-month.layout-calendar
#jevents .jev-span-piece:not(.jev-span-first)
.cal_titlelink {
  visibility: hidden;
}

/*
 * Tatsächliches Terminende:
 * sichtbarer rechter Abschluss.
 */
body.com_jevents.view-month.layout-calendar
#jevents .jev-span-last:not(.jev-span-to-next) {
  padding-right: 2px !important;
}

body.com_jevents.view-month.layout-calendar
#jevents .jev-span-last:not(.jev-span-to-next)
> div {
  margin-right: 0;

  border-right:
    2px solid var(--jev-event-color, #777);

  border-radius: 0 3px 3px 0;
}

/*
 * Fortsetzung in die folgende Kalenderwoche:
 * Balken bis zum rechten Zellenrand laufen lassen.
 */
body.com_jevents.view-month.layout-calendar
#jevents .jev-span-to-next > div {
  margin-right: -3px;
  border-right: 0 !important;
  border-radius: 0;
}

/*
 * Ein Sonntag, an dem ein mehrtägiger Termin beginnt,
 * ist innerhalb der aktuellen Woche Anfang und Ende zugleich.
 * Bei einer Fortsetzung bleibt die rechte Seite offen.
 */
body.com_jevents.view-month.layout-calendar
#jevents .jev-span-only.jev-span-to-next > div {
  border-right: 0 !important;
  border-radius: 3px 0 0 3px;
}

/* =========================== Ext =========================== */

/*
 * JEvents Ext:
 * mehrtägige Termine horizontal verbinden
 */

#jevents_body table.maintable
td.jev-ext-day-cell {
  overflow: visible;
}

/*
 * Eventtabellen über die Zellgrenze legen.
 */
#jevents_body table.maintable
table.jev-ext-multiday {
  position: relative;
  z-index: 2;
  table-layout: fixed;
}

/*
 * Die Ext-Ansicht lässt innerhalb einer Tageszelle einen
 * kleinen horizontalen Innenabstand. Die Eventtabellen werden
 * über diesen Bereich und über die Zelltrennlinie hinausgezogen,
 * damit ein mehrtägiger Termin optisch durchgehend erscheint.
 */
#jevents_body table.maintable {
  --jev-ext-join: 6px;
}

/* Anfang: nur nach rechts verlängern. */
#jevents_body table.maintable
table.jev-ext-multiday.jev-ext-start:not(
  .jev-ext-end
) {
  width: calc(100% + var(--jev-ext-join)) !important;
  margin-left: 0 !important;
}

/* Mitte: links und rechts überlappen. */
#jevents_body table.maintable
table.jev-ext-multiday.jev-ext-middle {
  width: calc(100% + 12px) !important;
  margin-left: calc(-1 * var(--jev-ext-join)) !important;
}

/* Ende: nur nach links verlängern. */
#jevents_body table.maintable
table.jev-ext-multiday.jev-ext-end:not(
  .jev-ext-start
) {
  width: calc(100% + var(--jev-ext-join)) !important;
  margin-left: calc(-1 * var(--jev-ext-join)) !important;
}

/* Tabelleninterne Abstände dürfen keine neue Lücke erzeugen. */
#jevents_body table.maintable
table.jev-ext-multiday {
  border-spacing: 0 !important;
  border-collapse: collapse !important;
}

#jevents_body table.maintable
table.jev-ext-multiday > tbody > tr > td {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/*
 * Wiederholte Eventbezeichnungen unsichtbar machen.
 * visibility statt display hält die Balkenhöhe unverändert.
 */
#jevents_body table.maintable
table.jev-ext-label-repeat
a.cal_titlelink {
  visibility: hidden !important;
}

/*
 * Unsichtbare Platzhalter für freigewordene obere Spuren.
 */
#jevents_body table.maintable
table.jev-ext-lane-spacer {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;

  border: 0 !important;
  border-spacing: 0 !important;
  border-collapse: collapse !important;

  visibility: hidden !important;
  pointer-events: none !important;
}

#jevents_body table.maintable
table.jev-ext-lane-spacer td {
  padding: 0 !important;
  border: 0 !important;
}

/* ==========================================================
   Ext-Layout: Farben und Schriftgrößen
   ========================================================== */

/*
 * Linien zwischen den Kalenderzellen.
 * Die Event- und Legendenfarben bleiben unverändert.
 */
body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable {
  border-color: #cfcfcf !important;
}

body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable > tbody > tr {
  border-color: #cfcfcf !important;
}

body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable > tbody > tr > td.weekdayclr,
body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable > tbody > tr > td.sundayclr,
body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable > tbody > tr > td.sundayemptyclr,
body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable > tbody > tr > td.weekdayemptyclr,
body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable > tbody > tr > td.todayclr,
body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable > tbody > tr > td.weekdaytopclr,
body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable > tbody > tr > td.tablev1,
body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable > tbody > tr > td.previousmonth,
body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable > tbody > tr > td.currentmonth,
body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable > tbody > tr > td.nextmonth {
  border-color: #cfcfcf !important;
}

/* Normale Wochentage. */
body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable > tbody > tr > td.weekdayclr {
  background-color: #f9f9f9 !important;
}

/* Sonntage. */
body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable > tbody > tr > td.sundayclr,
body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable > tbody > tr > td.sundayemptyclr {
  background-color: #edefef !important;
}

/* Tage des vorherigen und folgenden Monats. */
body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable > tbody > tr > td.weekdayemptyclr {
  background-color: #dbdddd !important;
  color: #a0a0a0 !important;
}

/*
 * Eventbezeichnungen im Kalender um 2 px vergrößern.
 * Die Bezeichnungen in Legende/Fußzeile sind nicht betroffen.
 */
body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable .eventstyle a.cal_titlelink {
  font-size: calc(1em + 2px) !important;
}

/* Überschriften Montag bis Sonntag um 2 px vergrößern. */
body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable > tbody > tr > td.weekdaytopclr {
  font-size: calc(1em + 2px) !important;
}

/* Monate und mittleres Datum im Kalenderkopf um 1 px vergrößern. */
body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable > tbody > tr > td.previousmonth,
body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable > tbody > tr > td.currentmonth,
body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable > tbody > tr > td.nextmonth {
  font-size: calc(1em + 1px) !important;
}

body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable > tbody > tr > td.previousmonth a,
body.com_jevents.view-month.layout-calendar
#jevents_body table.maintable > tbody > tr > td.nextmonth a {
  font-size: inherit !important;
}

