/*
  Oasis & Spa style (luxe, calme, lisible)
  Astuce: on met des sélecteurs plus “particuliers” + !important pour passer devant les styles par défaut.
*/

/* ==== COULEURS À AJUSTER ==== */
:root{
  --oasis-forest: #1f3a34;   /* vert forêt */
  --oasis-gold:   #c9a25f;   /* doré doux */
  --oasis-ink:    #1b1b1b;   /* texte */
  --oasis-bg:     #ffffff;   /* fond */
  --oasis-soft:   #f5f3ee;   /* beige très pâle */
  --oasis-line:   rgba(31,58,52,.18);
}

/* TITRES événements */
#events h3{
  color: var(--oasis-forest) !important;
  font-weight: 700 !important;
  letter-spacing: .2px !important;
  margin-bottom: 6px !important;
}

/* Durée */
#events p.duration, #events div.duration{
  color: rgba(27,27,27,.75) !important;
  font-size: 14px !important;
  margin-top: 2px !important;
}

/* Description */
#events p.description, #events div.description{
  color: rgba(27,27,27,.82) !important;
  line-height: 1.45 !important;
  font-size: 14px !important;
}

/* Événement sélectionné */
#events .selectedEvent{
  background: var(--oasis-soft) !important;
  border: 1px solid var(--oasis-line) !important;
  border-radius: 14px !important;
  box-shadow: 0 10px 22px rgba(0,0,0,.06) !important;
  padding: 12px 14px !important;
}

/* Bouton “Réserver” */
#events input.reserve_time_btn{
  background: var(--oasis-forest) !important;
  color: #fff !important;
  border: 1px solid var(--oasis-forest) !important;
  border-radius: 999px !important;
  padding: 12px 18px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: transform .06s ease, opacity .2s ease !important;
}
#events input.reserve_time_btn:hover{
  opacity: .92 !important;
  transform: translateY(-1px) !important;
}

/* Bouton “Choisir un autre” */
#events input.select_another_btn{
  background: transparent !important;
  color: var(--oasis-forest) !important;
  border: 1px solid var(--oasis-line) !important;
  border-radius: 999px !important;
  padding: 10px 16px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
}

/* Titres des sections date / horaire */
#eventForm #start_date-block-container h3,
#eventForm #timeline-container h3{
  color: var(--oasis-forest) !important;
  font-weight: 700 !important;
  margin: 10px 0 8px !important;
}

/* Bouton “Continuer/Enregistrer” */
#eventForm #save_button{
  background: var(--oasis-gold) !important;
  color: #1b1b1b !important;
  border: 1px solid rgba(0,0,0,.06) !important;
  border-radius: 999px !important;
  padding: 12px 18px !important;
  font-weight: 800 !important;
  cursor: pointer !important;
}

/* Widgets (calendrier / blocs UI) */
div.ui-widget-content{
  background: var(--oasis-bg) !important;
  border: 1px solid var(--oasis-line) !important;
  border-radius: 14px !important;
  box-shadow: 0 10px 22px rgba(0,0,0,.05) !important;
}
div.ui-widget-header{
  background: var(--oasis-soft) !important;
  border: none !important;
  color: var(--oasis-forest) !important;
  font-weight: 700 !important;
  border-radius: 14px 14px 0 0 !important;
}

/* Timeline (table d’horaires) */
#timeline-container table.timeline{
  border-collapse: separate !important;
  border-spacing: 6px !important;
}

/* Cases horaire - style commun */
#timeline-container .timeline td{
  border-radius: 10px !important;
  padding: 10px 8px !important;
  font-weight: 600 !important;
  font-size: 13px !important;
}

/* Hors heures travaillées */
.timeline td.not_worked_time{
  background: rgba(0,0,0,.05) !important;
  color: rgba(27,27,27,.45) !important;
}

/* Libre */
.timeline td.free_time{
  background: rgba(31,58,52,.08) !important;
  color: var(--oasis-forest) !important;
  border: 1px solid rgba(31,58,52,.12) !important;
}

/* Sélectionné */
.timeline td.selected_time{
  background: var(--oasis-forest) !important;
  color: #fff !important;
  border: 1px solid var(--oasis-forest) !important;
}

/* Réservé */
.timeline td.reserved_time{
  background: rgba(201,162,95,.25) !important;
  color: rgba(27,27,27,.75) !important;
  border: 1px solid rgba(201,162,95,.35) !important;
}

/* Loading */
div#loading{
  background: rgba(255,255,255,.92) !important;
  border-radius: 14px !important;
}

/* Labels / champs date (correction: il manquait des # dans ton sélecteur) */
#start_date-block-container .zend_form dt,
#start_date-block-container .zend_form dt b,
#start_date-block-container .zend_form dd label{
  color: rgba(27,27,27,.80) !important;
  font-weight: 600 !important;
}
