/* --- ID 171: hivepress - calendar --- */
/* ===========================
   Calendrier – style jours moderne
   =========================== */

/* Base des cellules jour : carte douce, sans gros cadre */
.hp-page__content .hp-calendar .fc-daygrid-day-frame {
  border-radius: 18px;
  border: 1px solid transparent;
  background: transparent;
  box-shadow: none !important;
  transition:
    background 0.16s ease,
    box-shadow 0.16s ease,
    transform 0.16s ease,
    border-color 0.16s ease;
  overflow: hidden;
}

/* Survol d’un jour : petite carte blanche qui flotte légèrement */
.hp-page__content .hp-calendar .fc-daygrid-day:hover .fc-daygrid-day-frame {
  background: #ffffff;
  border-color: rgba(226, 232, 240, 0.9);
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.08);
  transform: translateY(-1px);
}

/* Jours hors mois : discrets (et hover plus soft) */
.hp-page__content .hp-calendar .fc-daygrid-day.fc-day-other .fc-daygrid-day-frame {
  opacity: 0.45;
}
.hp-page__content .hp-calendar .fc-daygrid-day.fc-day-other:hover .fc-daygrid-day-frame {
  background: #f3f4f6;
  box-shadow: none;
  transform: none;
}

/* Numéro de jour standard */
.hp-page__content .hp-calendar .fc-daygrid-day-number {
  color: #1f2933;
}

/* ===========================
   Aujourd’hui : carte + pastille
   =========================== */

.hp-page__content .hp-calendar .fc-daygrid-day.fc-day-today .fc-daygrid-day-frame {
  background: #eef2ff;
  border-color: rgba(76, 111, 255, 0.45);
  box-shadow: 0 18px 40px rgba(76, 111, 255, 0.18);
}

.hp-page__content .hp-calendar .fc-daygrid-day.fc-day-today .fc-daygrid-day-number {
  position: relative;
  font-weight: 600;
  color: #111827;
}

.hp-page__content .hp-calendar .fc-daygrid-day.fc-day-today .fc-daygrid-day-number::after {
  content: "Aujourd’hui";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-left: 0.5rem;
  padding: 2px 8px;
  border-radius: 999px;
  background: #4c6fff;
  color: #ffffff;
  font-size: 0.65rem;
  letter-spacing: 0.03em;
}

/* ===========================
   Boutons lock / unlock
   =========================== */

/* Petit espace seulement entre verrouiller / déverrouiller */
.hp-page__content .hp-calendar .fc-button-group .fc-block-button {
  margin-right: 12px;
}

/* Chaque bouton garde son radius plein (évite l’effet "pilule collée") */
.hp-page__content .hp-calendar .fc-button-group .fc-button {
  border-radius: 999px !important;
}

/* ===========================
   Suppression du cadre table
   =========================== */

.hp-page__content .hp-calendar .fc-scrollgrid,
.hp-page__content .hp-calendar .fc-theme-standard td,
.hp-page__content .hp-calendar .fc-theme-standard th {
  border: none !important;
}

/* On évite aussi les bords résiduels de table */
.hp-page__content .hp-calendar .fc-scrollgrid,
.hp-page__content .hp-calendar .fc-scrollgrid table {
  border-collapse: separate !important;
}










/* =======================================
   1) Aujourd’hui : enlever le jaune + glow bleu
   ======================================= */

/* FullCalendar pose le jaune sur la cellule entière -> on le neutralise */
.hp-page__content .hp-calendar .fc-daygrid-day.fc-day-today {
  background: transparent !important;
}

/* Style de la carte "Aujourd’hui" */
.hp-page__content .hp-calendar .fc-daygrid-day.fc-day-today .fc-daygrid-day-frame {
  background: #f4f6ff; /* léger bleu très clair */
  border-color: rgba(76, 111, 255, 0.55);
  box-shadow:
    0 0 0 1px rgba(76, 111, 255, 0.30),
    0 0 26px 6px rgba(76, 111, 255, 0.55); /* glow bleu néon */
}

/* =======================================
   2) Réservations (#248) toujours au-dessus
   ======================================= */

/* On crée un contexte de stacking propre */
.hp-page__content .hp-calendar .fc-daygrid-day-frame {
  position: relative;
}

/* Les events passent au-dessus du fond de la cellule */
.hp-page__content .hp-calendar .fc-daygrid-day-events,
.hp-page__content .hp-calendar .fc-daygrid-event-harness,
.hp-page__content .hp-calendar .fc-daygrid-event {
  position: relative;
  z-index: 3;
}

/* Le background de jour reste derrière tout */
.hp-page__content .hp-calendar .fc-daygrid-day-bg {
  z-index: 1;
}











/* =======================================
   Fix longueur des barres de réservation
   (#248 doit s'étendre sur toute la plage)
   ======================================= */

/* On annule mon "position: relative" global */
.hp-page__content .hp-calendar .fc-daygrid-event-harness {
  position: static !important;
}

/* Et on redonne le comportement normal au harness absolu,
   en s'assurant qu'il passe bien AU-DESSUS du fond du jour */
.hp-page__content .hp-calendar .fc-daygrid-event-harness-abs {
  position: absolute !important;
  z-index: 3 !important;
}

/* L’event lui-même reste devant le background */
.hp-page__content .hp-calendar .fc-daygrid-event {
  z-index: 3 !important;
}







/* =======================================
   Empilement correct : barres de réservations
   au-dessus du style de jour
   ======================================= */

/* Le fond du jour reste derrière */
.hp-page__content .hp-calendar .fc-daygrid-day-bg {
  position: relative;
  z-index: 1;
}

/* Le contenu/événements passe au-dessus du fond arrondi */
.hp-page__content .hp-calendar .fc-daygrid-day-events {
  position: relative;
  z-index: 3;
}

/* Les harness d'événements peuvent dépasser la carte du jour */
.hp-page__content .hp-calendar .fc-daygrid-day-frame {
  overflow: visible !important;
}

/* Et on s’assure que la barre elle-même reste tout devant */
.hp-page__content .hp-calendar .fc-daygrid-event-harness-abs,
.hp-page__content .hp-calendar .fc-daygrid-event {
  z-index: 4 !important;
}







/* ============================================================
   Empêche le clignement sur les barres de réservations
   (on neutralise juste le hover de la "carte" ce jour-là)
   ============================================================ */

/* Jours AVEC réservation : on annule notre hover carte,
   mais on laisse totalement les clics / drag fonctionner */
.hp-page__content .hp-calendar
.fc-daygrid-day:has(.fc-daygrid-day-events .fc-daygrid-event):hover
.fc-daygrid-day-frame {
  background: none !important;
  box-shadow: none !important;
  transform: none !important;
  border-color: transparent !important;
}













/* ===========================
   Sélection de dates (drag)
   =========================== */

/* Bandeau de sélection : plein dans la case, bleu soft */
.hp-page__content .hp-calendar .fc-daygrid-day-bg .fc-highlight {
  top: 4px !important;
  bottom: 4px !important;
  left: 4px !important;
  right: 4px !important;
  border-radius: 16px;
  background: rgba(76, 111, 255, 0.18) !important;
  box-shadow: 0 0 0 1px rgba(76, 111, 255, 0.35);
}

/* On garde le fond du jour derrière tout */
.hp-page__content .hp-calendar .fc-daygrid-day-bg {
  position: relative;
  z-index: 1;
  overflow: visible;
}

/* ===========================
   Jours bloqués (block dates)
   =========================== */

/* FullCalendar dessine les jours bloqués en .fc-bg-event.fc-blocked
   → on les transforme en carte rose pâle dans la case */
.hp-page__content .hp-calendar .fc-daygrid-day-bg .fc-bg-event.fc-blocked {
  top: 4px !important;
  bottom: 4px !important;
  left: 4px !important;
  right: 4px !important;
  border-radius: 16px;
  background: rgba(248, 113, 113, 0.14) !important; /* rose très léger */
  box-shadow: 0 0 0 1px rgba(248, 113, 113, 0.35);
}

/* Optionnel : texte du jour un tout petit peu assombri sur jour bloqué */
.hp-page__content .hp-calendar
.fc-daygrid-day:has(.fc-bg-event.fc-blocked) .fc-daygrid-day-number {
  color: #374151;
}











/* ============================================================
   Jours bloqués — apparence identique aux barres de réservation
   mais en rouge DA (#FF5A63)
   ============================================================ */

.hp-page__content .hp-calendar .fc-daygrid-day-bg .fc-bg-event.fc-blocked {
  top: 6px !important;
  bottom: 6px !important;
  left: 6px !important;
  right: 6px !important;

  /* Même forme que la barre de réservation */
  border-radius: 18px !important;
  background: #FF5A63 !important;

  /* Glow soft façon DA HomerentAI */
  box-shadow:
    0 10px 25px rgba(255, 90, 99, 0.28),
    0 0 0 1px rgba(255, 90, 99, 0.55) !important;
  
  opacity: 1 !important; /* Toujours bien visible */
  z-index: 3 !important;
}

/* Numéro de jour lisible sur fond rouge */
.hp-page__content .hp-calendar
.fc-daygrid-day:has(.fc-bg-event.fc-blocked) .fc-daygrid-day-number {
  color: white !important;
  font-weight: 600;
  mix-blend-mode: normal;
}









/* Annule le texte blanc sur le premier jour d'une plage bloquée */
.hp-page__content .hp-calendar
.fc-daygrid-day:has(.fc-bg-event.fc-blocked) .fc-daygrid-day-number {
  color: #1f2933 !important;  /* même couleur que les autres jours */
  font-weight: 400 !important;
  mix-blend-mode: normal !important;
}




/* ===== Boutons Lock / Unlock — hover colorisé ===== */

/* Hover LOCK = rouge soft */
.hp-page__content .hp-calendar .fc-block-button.fc-button-primary:hover,
.hp-page__content .hp-calendar .fc-block-button.fc-button-primary:focus {
  background: #ff5a63 !important;
  border-color: #ff5a63 !important;
  color: #ffffff !important;
  box-shadow: 0 10px 24px rgba(255, 90, 99, 0.35) !important;
}

/* Hover UNLOCK = vert soft */
.hp-page__content .hp-calendar .fc-unblock-button.fc-button-primary:hover,
.hp-page__content .hp-calendar .fc-unblock-button.fc-button-primary:focus {
  background: #22c55e !important;
  border-color: #22c55e !important;
  color: #ffffff !important;
  box-shadow: 0 10px 24px rgba(34, 197, 94, 0.35) !important;
}

