/* Conteneur principal des séminaires */
.gs-seminaires-container {
    display: flex;
    flex-direction: column;
    gap: 20px; /* espace entre les séminaires */
}

/* Carte d’un séminaire */
.gs-seminaire-card {
    border-left: 8px solid #0073e6; /* liseré bleu */
    border-radius: 10px;            /* bords arrondis */
    box-shadow: 0 4px 8px rgba(0,0,0,0.1); /* ombrage */
    padding: 20px;
    background-color: #fff;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    cursor: pointer;
}

/* Effet au survol */
.gs-seminaire-card:hover {
    transform: translateX(10px); /* décalage vers la droite */
    box-shadow: 0 8px 16px rgba(0,0,0,0.2); /* ombrage plus prononcé */
}

/* Carte ouverte (active) */
.gs-seminaire-card.active {
    transform: translateX(20px); /* reste décalée même sans hover */
}

/* Titre du séminaire */
.gs-seminaire-card h2 {
	font-weight: bold;
    margin-top: 0;
    margin-bottom: 10px;
    font-size: 1.3rem;
}

/* Infos séminaire (date, places, statut) */
.gs-seminaire-info {
    font-size: 0.95rem;
    color: #555;
    margin-bottom: 10px;
}

/* Statut ouvert / fermé */
.statut-ouvert {
    color: green;
    font-weight: bold;
}

.statut-ferme {
    color: red;
    font-weight: bold;
}

/* Boutons et options de réservation (cachés par défaut) */
.gs-reservation-options {
    display: none;
    margin-top: 15px;
    border-top: 1px solid #eee;
    padding-top: 10px;
}

/* Affichage des options lorsqu'on clique */
.gs-seminaire-card.active .gs-reservation-options {
    display: block;
}

/* Styles des boutons et champs */
.gs-reservation-options label {
    display: block;
    margin-bottom: 8px;
}

.gs-reservation-options input[type="checkbox"],
.gs-reservation-options input[type="radio"] {
    margin-right: 8px;
}

.gs-reservation-options button {
    margin-top: 10px;
    padding: 8px 15px;
    background: #2196F3;
    color: #fff;
    border: none;
    cursor: pointer;
    border-radius: 4px;
}

.gs-reservation-options button:hover {
    background: #1976D2;
}

/* Formulaire à l'intérieur */
.gs-seminaire-card form {
    margin-top: 15px;
}

/* Hebergement et repas cachés initialement */
#hebergement-options, #repas-options {
    display: none;
}
.repas-date {
    margin-top: 15px;  /* espace au-dessus */
    margin-bottom: 0;  /* pas d'espace sous le jour */
    font-weight: bold;
}
.repas-jour label {
    font-size: 16px;       /* texte plus lisible */
    padding: 5px 0;        /* espace autour de chaque case */
    display: flex;         /* pour que la case et le texte soient alignés */
    align-items: center;
	font-weight: normal;
}
.repas-jour input[type="checkbox"] {
    transform: scale(1.3); /* cases plus grandes */
    margin-right: 8px;
}
.repas-jour-titre {
    font-weight: bold;
	color: #1976D2 !important;
    margin: 0 0 10px 0; /* seulement un petit espace en dessous */

}
.repas-container {
    display: flex;
    gap: 20px;
}

.repas-columns {
    display: flex;
    gap: 20px;
    justify-content: flex-start;
    margin-bottom: 10px;
}
.repas-col {
    flex: 1;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 10px;
    background: #fafafa;
	margin-bottom: 15px:
}
.total-global-repas {
    text-align: right;
    font-weight: bold;
    font-size: 1.1em;
    margin-top: 20px;
    color: #0073e6;
}


.repas-col label {
    display: block; /* pour que chaque checkbox soit sur une ligne */
}
.sous-total-hebergement {
    font-weight: bold;
    color: #0073e6;
    margin-top: 20px; /* un petit espace au-dessus */
    text-align: right; /* optionnel, pour aligner à droite */
}
.gs-message {
    margin-top: 10px;
    padding: 10px 12px;
    border-radius: 6px;
    font-weight: bold;
    text-align: center;
    animation: fadeIn 0.3s ease;
}
.gs-message.success {
    background-color: #e6f7e6;
    color: #006b2f;
    border: 1px solid #8dd88d;
}
.gs-message.error {
    background-color: #fde8e8;
    color: #a50000;
    border: 1px solid #f2a2a2;
}
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(-5px); }
    to { opacity: 1; transform: translateY(0); }
}
/* Bouton validé */
.gs-seminaire-card button.inscrit-success {
    background-color: #28a745; /* vert */
    color: #fff;
    border: 1px solid #28a745;
    cursor: default;
}

/* Optional: ajout d'une légère animation pour le changement de couleur */
.gs-seminaire-card button.inscrit-success {
    transition: background-color 0.3s, color 0.3s;
}


