/* Thème calendrier public: gris = fermé/0, blanc + anneau vert = dispo, vert plein = sélectionné */

/* Réglages de base */
.flatpickr-calendar .flatpickr-day { border-radius: 50%; transition: all .15s ease-in-out; }

/* Neutralise tout remplissage vert hérité (.has-slot / .is-monday-slot) côté public */
.flatpickr-calendar .flatpickr-day.has-slot:not(.selected):not(.disabled),
.flatpickr-calendar .flatpickr-day.is-monday-slot:not(.selected):not(.disabled) {
  background: #ffffff !important;
  color: #111827 !important;
  box-shadow: none !important;          /* évite double anneau si un box-shadow arrive d’ailleurs */
}

/* Jours fermés ou 0 créneau */
.flatpickr-calendar .flatpickr-day.no-slot:not(.selected):not(.disabled) {
  background: #e5e7eb !important;       /* gris clair */
  color: #6b7280 !important;             /* texte gris */
  border-color: #e5e7eb !important;
  box-shadow: none !important;
  font-weight: 500 !important;
}

/* Jours disponibles (compte > 0) → FOND BLANC + CONTOUR VERT */
.flatpickr-calendar .flatpickr-day.has-slot:not(.selected):not(.disabled) {
  background: #ffffff !important;
  color: #111827 !important;
  border: 2px solid #22c55e !important; /* anneau vert (contour) */
  box-sizing: border-box !important;
  box-shadow: none !important;          /* pas d’anneau intérieur en plus */
  font-weight: 500 !important;
}

/* Jour sélectionné = VERT PLEIN */
.flatpickr-calendar .flatpickr-day.selected,
.flatpickr-calendar .flatpickr-day.startRange,
.flatpickr-calendar .flatpickr-day.endRange {
  background: #10b981 !important;       /* vert plein */
  border-color: #10b981 !important;
  color: #ffffff !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}

/* Badge au-dessus des anneaux */
.flatpickr-calendar .slot-badge { z-index: 15 !important; }

/* Jours des mois adjacents plus discrets */
.flatpickr-calendar .flatpickr-day.prevMonthDay,
.flatpickr-calendar .flatpickr-day.nextMonthDay {
  opacity: .35;
  filter: grayscale(.3);
}

/* Hover sur jours disponibles */
.flatpickr-calendar .flatpickr-day.has-slot:not(.selected):hover {
  background: #f8fff9 !important;
  border-color: #16a34a !important;
  box-shadow: none !important;
}

/* Badge lisible sur jour sélectionné (fond vert) */
.flatpickr-calendar .flatpickr-day.selected .slot-badge {
  background: rgba(255,255,255,.95) !important;
  color: #111827 !important;
}

/* Correctif mobile: style.css force #fff !important sur TOUTES les cases.
   On rétablit gris/blanc selon no-slot/has-slot. */
@media (max-width: 480px){
  .flatpickr-calendar .flatpickr-day.no-slot:not(.selected):not(.disabled){
    background: #e5e7eb !important;
    color: #6b7280 !important;
    border-color: #e5e7eb !important;
    box-shadow: none !important;
  }
  .flatpickr-calendar .flatpickr-day.has-slot:not(.selected):not(.disabled){
    background: #ffffff !important;
    color: #111827 !important;
    border: 2px solid #22c55e !important;
    box-shadow: none !important;
  }
}