/* =====================================================
   VARIABLES
   ===================================================== */

:root {
  --resa-vert: #44512d;
  --resa-beige: #f2ebdd;
}


/* =====================================================
   FULLCALENDAR – VARIABLES OFFICIELLES
   ===================================================== */

#calendar {
  --fc-page-bg-color: var(--resa-vert);
  --fc-border-color: rgba(242, 235, 221, 0.55);
  --fc-neutral-bg-color: transparent;
  --fc-neutral-text-color: var(--resa-beige);
  --fc-today-bg-color: rgba(242, 235, 221, 0.08);

  --fc-button-text-color: var(--resa-beige);
  --fc-button-bg-color: var(--resa-vert);
  --fc-button-border-color: rgba(242, 235, 221, 0.35);
  --fc-button-hover-bg-color: var(--resa-beige);
  --fc-button-hover-border-color: var(--resa-beige);
  --fc-button-active-bg-color: rgba(242, 235, 221, 0.18);
  --fc-button-active-border-color: rgba(242, 235, 221, 0.45);

  --fc-event-bg-color: var(--resa-vert);
  --fc-event-border-color: rgba(242, 235, 221, 0.75);
  --fc-event-text-color: #ffffff;

  background: var(--resa-vert) !important;
}


/* =====================================================
   STRUCTURE GÉNÉRALE
   ===================================================== */

#calendar .fc,
#calendar .fc-view-harness,
#calendar .fc-scrollgrid,
#calendar .fc-scroller {
  background: var(--resa-vert) !important;
}

#calendar .fc-scrollgrid,
#calendar .fc-scrollgrid td,
#calendar .fc-scrollgrid th {
  border-color: var(--resa-vert) !important;
}


/* =====================================================
   BARRE D’OUTILS
   ===================================================== */

#calendar .fc-toolbar-title {
  color: var(--resa-beige) !important;
  font-weight: 800 !important;
}


/* =====================================================
   EN-TÊTES DES JOURS
   ===================================================== */

#calendar .fc-col-header-cell,
#calendar .fc-scrollgrid-section-header th {
  background: var(--resa-vert) !important;
}

#calendar .fc-col-header-cell-cushion {
  color: var(--resa-beige) !important;
  font-weight: 700 !important;
  text-transform: lowercase !important;
}


/* =====================================================
   CASES DU CALENDRIER
   ===================================================== */

#calendar .fc-daygrid-day-frame {
  background: var(--resa-beige) !important;
}

#calendar .fc-daygrid-day-number {
  color: var(--resa-vert) !important;
  font-weight: 700 !important;
}

#calendar .fc-day-other .fc-daygrid-day-frame {
  background: rgba(242, 235, 221, 0.55) !important;
}

#calendar .fc-day-other .fc-daygrid-day-number {
  opacity: 0.45 !important;
}


/* =====================================================
   SURVOL DES CASES
   ===================================================== */

#calendar td.fc-daygrid-day:hover .fc-daygrid-day-frame {
  background: var(--resa-beige) !important;
}

#calendar td.fc-daygrid-day:hover .fc-daygrid-day-number {
  color: var(--resa-vert) !important;
}


/* =====================================================
   ÉVÉNEMENTS – HAUTEUR FIXE SUR DEUX LIGNES
   ===================================================== */

#calendar .fc-daygrid-event {
  height: 52px !important;
  min-height: 52px !important;
  max-height: 52px !important;

  margin: 1px 2px !important;
  box-sizing: border-box !important;
  overflow: hidden !important;

  background: var(--resa-vert) !important;
  border: 1px solid var(--resa-vert) !important;
  color: #ffffff !important;
}

#calendar .fc-event-main {
  height: 100% !important;
  padding: 4px 6px !important;
  box-sizing: border-box !important;

  display: flex !important;
  align-items: center !important;

  color: #ffffff !important;
}

#calendar .fc-event-title-container {
  width: 100% !important;
  overflow: hidden !important;
}

#calendar .fc-event-title {
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;

  white-space: normal !important;
  overflow: hidden !important;

  line-height: 1.15 !important;
  max-height: 2.3em !important;

  color: #ffffff !important;
}

#calendar .fc-event-main {
    font-size: 12px !important;
}

/* =====================================================
   SURVOL DES ÉVÉNEMENTS
   ===================================================== */

#calendar .fc-daygrid-event:hover,
#calendar .fc-h-event:hover,
#calendar .fc-v-event:hover {
  background: var(--resa-beige) !important;
  border-color: var(--resa-beige) !important;
  color: var(--resa-vert) !important;
}

#calendar .fc-daygrid-event:hover .fc-event-main,
#calendar .fc-daygrid-event:hover .fc-event-title,
#calendar .fc-h-event:hover .fc-event-title,
#calendar .fc-v-event:hover .fc-event-title {
  color: var(--resa-vert) !important;
}


/* =====================================================
   LIGNES VIDES C1 / C2 / C3
   ===================================================== */

#calendar .resa-placeholder {
  visibility: hidden !important;
  display: block !important;

  height: 52px !important;
  min-height: 52px !important;
  max-height: 52px !important;

  margin: 1px 2px !important;
  box-sizing: border-box !important;

  pointer-events: none !important;
}


/* =====================================================
   TOOLTIP
   ===================================================== */

.resa-fc-tooltip {
  position: fixed;
  z-index: 999999;
  max-width: 320px;

  background: var(--resa-beige);
  color: var(--resa-vert);

  border: 1px solid rgba(68, 81, 45, 0.35);
  border-radius: 8px;

  padding: 8px 10px;

  font-size: 13px;
  line-height: 1.25;

  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);

  pointer-events: none;
}


/* =====================================================
   IMPRESSION
   ===================================================== */

@media print {

  @page {
    size: Letter landscape;
    margin: 10mm;
  }

  body,
  html {
    background: #ffffff !important;
    color: #000000 !important;
  }

  header,
  footer,
  nav,
  .fusion-header,
  .fusion-footer,
  .fusion-page-title-bar,
  .fusion-sliding-bar,
  .fusion-tb-header,
  .fusion-tb-footer,
  .no-print,
  .resa-fc-tooltip {
    display: none !important;
  }

  #calendar {
    margin: 0 !important;
    padding: 0 !important;
    background: #ffffff !important;
  }

  #calendar *,
  #calendar .fc,
  #calendar .fc-view-harness,
  #calendar .fc-scrollgrid,
  #calendar .fc-daygrid,
  #calendar .fc-daygrid-day,
  #calendar .fc-daygrid-day-frame {
    background: #ffffff !important;
    color: #000000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }

  #calendar .fc-scrollgrid,
  #calendar .fc-scrollgrid td,
  #calendar .fc-scrollgrid th {
    border: 1px solid #999999 !important;
  }

  #calendar .fc {
    font-size: 10px !important;
  }

  #calendar .fc-daygrid-event {
    height: 34px !important;
    min-height: 34px !important;
    max-height: 34px !important;

    margin: 1px 2px !important;
    overflow: hidden !important;

    background: #ffffff !important;
    border: 1px solid #666666 !important;
    color: #000000 !important;
  }

  #calendar .fc-event-main {
    height: 100% !important;
    padding: 2px 3px !important;

    display: flex !important;
    align-items: center !important;

    color: #000000 !important;
  }

  #calendar .fc-event-title-container {
    overflow: hidden !important;
  }

  #calendar .fc-event-title {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;

    white-space: normal !important;
    overflow: hidden !important;

    font-size: 9px !important;
    line-height: 1.05 !important;
    max-height: 2.1em !important;

    color: #000000 !important;
  }

  #calendar .resa-placeholder {
    visibility: hidden !important;
    display: block !important;

    height: 34px !important;
    min-height: 34px !important;
    max-height: 34px !important;

    margin: 1px 2px !important;
    border: 0 !important;
  }
}