/* ========================================================
   DESIGN SUR MESURE - EL DORADO (HAUT DE GAMME)
   ======================================================== */

/* 1. Titres des soins & sections */
#events h3, 
#eventForm #start_date-block-container h3, 
#eventForm #timeline-container h3 {
    font-family: 'Playfair Display', Georgia, serif !important;
    font-size: 1.3rem !important;
    font-weight: 600 !important;
    color: #2C2A29 !important; /* Anthracite très doux */
    letter-spacing: 0.5px !important;
    margin-bottom: 8px !important;
}

/* 2. Durée du soin */
#events p.duration, 
#events div.duration {
    font-size: 0.85rem !important;
    color: #8C827A !important; /* Taupe élégant */
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    font-weight: 500 !important;
}

/* 3. Description des prestations */
#events p.description, 
#events div.description {
    font-size: 0.95rem !important;
    line-height: 1.6 !important;
    color: #55504C !important;
}

/* 4. Carte de prestation sélectionnée */
#events .selectedEvent {
    border: 1px solid #D4AF37 !important; /* Accentuation dorée fine */
    background-color: #FAFAFA !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05) !important;
    border-radius: 8px !important;
    padding: 15px !important;
}

/* 5. Boutons de réservation principaux (Valider / Réserver) */
#events input.reserve_time_btn, 
#eventForm #save_button {
    background-color: #2C2A29 !important; /* Bouton noir/charbon chic */
    color: #FFFFFF !important;
    border: none !important;
    border-radius: 4px !important;
    padding: 12px 24px !important;
    font-size: 0.9rem !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
}

/* Effet au survol du bouton principal */
#events input.reserve_time_btn:hover, 
#eventForm #save_button:hover {
    background-color: #C5A059 !important; /* Passage au doré au survol */
    color: #FFFFFF !important;
}

/* 6. Boutons secondaires (Retour / Autre créneau) */
#events input.select_another_btn {
    background-color: transparent !important;
    color: #8C827A !important;
    border: 1px solid #D1CCC7 !important;
    border-radius: 4px !important;
    padding: 10px 18px !important;
    font-size: 0.85rem !important;
    transition: all 0.3s ease !important;
}

#events input.select_another_btn:hover {
    border-color: #2C2A29 !important;
    color: #2C2A29 !important;
}

/* 7. Design du Calendrier / Horaires */
div.ui-widget-content {
    border: 1px solid #EFECE9 !important;
    border-radius: 8px !important;
    background: #FFFFFF !important;
}

div.ui-widget-header {
    background: #FAFAFA !important;
    border-bottom: 1px solid #EFECE9 !important;
    color: #2C2A29 !important;
    font-weight: 600 !important;
}

/* 8. Créneaux horaires de la grille */
.timeline td.free_time {
    background-color: #F8F7F5 !important; /* Créneau libre très doux */
    border: 1px solid #FFFFFF !important;
    border-radius: 4px !important;
    transition: background 0.2s ease !important;
}

.timeline td.free_time:hover {
    background-color: #EFECE6 !important; /* Survol créneau */
}

.timeline td.selected_time {
    background-color: #C5A059 !important; /* Créneau sélectionné (Doré) */
    color: #FFFFFF !important;
    font-weight: bold !important;
}

.timeline td.not_worked_time, 
.timeline td.reserved_time {
    background-color: #F0EDED !important; /* Créneaux indisponibles */
    opacity: 0.4 !important;
}

/* 9. Animation de chargement */
div#loading {
    font-style: italic !important;
    color: #C5A059 !important;
}

/* 10. Libellés des formulaires */
#start_date-block-container .zend_form dt b, 
#start_date-block-container .zend_form dd label {
    font-weight: 500 !important;
    color: #2C2A29 !important;
    font-size: 0.9rem !important;
}