/* concours40.css
 *
 * DESTINATION : serveur du SITE VITRINE www.bureland.fr (VPS IONOS / Plesk)
 *   Local ......... D:\laragon\www\bureland-fr\assets\css\concours40.css
 *   Production .... /var/www/vhosts/bureland.fr/httpdocs/assets/css/concours40.css
 *
 * NE JAMAIS DÉPOSER SUR bibelenets NI DANS espace-eleveurs.
 *
 * Feuille de style de concours40ansBureland.php. Toutes les classes sont
 * préfixées « c40- » pour ne heurter aucune classe du thème du site vitrine —
 * la collision « elv-cfg-tab » de l'an dernier a servi de leçon.
 */

:root {
    --c40-accent: #C8102E;
    --c40-accent-fonce: #8E0B21;
    --c40-accent-clair: #FDECEF;
    --c40-texte: #333333;
    --c40-texte-doux: #6B6B6B;
    --c40-bord: #E2E2E2;
    --c40-erreur: #C0392B;
    --c40-succes: #1D7A4C;
}

/* --- Boutons d'entête ---------------------------------------------------- */

.c40-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    justify-content: center;
    margin-top: 25px;
}

.c40-actions .default-btn {
    cursor: pointer;
}

/* --- Bandeau des chances ------------------------------------------------- */

.c40-chances {
    background: var(--c40-accent-clair);
    border-left: 4px solid var(--c40-accent);
    border-radius: 0;
    padding: 15px 20px;
    margin-bottom: 30px;
    line-height: 1.7;
    color: var(--c40-texte);
}

/* --- Avis (jeu pas encore ouvert, ou terminé) ---------------------------- */

.c40-avis {
    background: #F7F7F7;
    border: 1px solid var(--c40-bord);
    border-radius: 6px;
    padding: 30px;
    text-align: center;
    font-size: 17px;
    color: var(--c40-texte);
}

/* --- Formulaire ---------------------------------------------------------- */

.c40-label {
    display: block;
    margin-bottom: 6px;
    font-size: 14px;
    font-weight: 600;
    color: var(--c40-texte);
}

.c40-consentement {
    margin: 10px 0 25px;
    text-align: left;
}

.c40-consentement .form-check-input {
    margin-top: 4px;
}

.c40-consentement .form-check-label {
    margin-left: 6px;
}

.c40-mentions {
    margin-top: 18px;
    font-size: 13px;
    line-height: 1.6;
    color: var(--c40-texte-doux);
}

/* Le pot de miel doit être invisible pour l'œil mais rester dans le flux :
   un display:none est repéré par les robots un peu sérieux. */
.c40-pot-de-miel {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

/* --- Erreurs et messages ------------------------------------------------- */

.c40-erreur {
    display: none;
    margin-top: 5px;
    font-size: 13px;
    color: var(--c40-erreur);
}

.c40-erreur.c40-visible {
    display: block;
}

.form-control.c40-champ-invalide {
    border-color: var(--c40-erreur);
}

.form-control.c40-champ-valide {
    border-color: var(--c40-succes);
}

.c40-message {
    display: none;
    margin-top: 20px;
    padding: 14px 18px;
    border-radius: 6px;
    font-size: 15px;
    text-align: center;
}

.c40-message.c40-visible {
    display: block;
}

.c40-message.c40-message-erreur {
    background: #FDECEF;
    color: var(--c40-erreur);
}

.c40-message.c40-message-info {
    background: #F1F5F9;
    color: var(--c40-texte);
}

/* --- Remerciement -------------------------------------------------------- */

.c40-merci {
    background: var(--c40-accent-clair);
    border: 1px solid var(--c40-accent);
    border-radius: 6px;
    padding: 35px 30px;
    text-align: center;
    line-height: 1.8;
}

.c40-merci h4 {
    margin-bottom: 15px;
    color: var(--c40-accent-fonce);
}

.c40-merci-signature {
    margin-top: 20px;
    font-style: italic;
    color: var(--c40-texte-doux);
}

/* --- Règlement dans la modale -------------------------------------------- */

.c40-reglement {
    font-size: 14px;
    line-height: 1.65;
    color: var(--c40-texte);
}

.c40-reglement h6 {
    margin-top: 22px;
    margin-bottom: 8px;
    font-weight: 700;
    color: var(--c40-accent-fonce);
}

.c40-reglement p {
    margin-bottom: 10px;
    text-align: justify;
}

.c40-reglement ul {
    margin: 0 0 12px 20px;
    list-style: disc;
}

.c40-reglement li {
    margin-bottom: 6px;
}

.c40-reg-titre {
    margin-top: 0 !important;
    font-size: 17px;
}

.c40-reg-chapeau {
    font-weight: 600;
    text-align: left !important;
}

.c40-reg-adresse {
    margin-left: 20px;
    font-style: italic;
    text-align: left !important;
}

.c40-reg-fin {
    margin-top: 25px;
    text-align: center !important;
    letter-spacing: 4px;
    color: var(--c40-texte-doux);
}

/* --- Téléphones ---------------------------------------------------------- */

@media (max-width: 767px) {
    .c40-actions {
        flex-direction: column;
    }

    .c40-actions .default-btn {
        width: 100%;
        text-align: center;
    }

    .c40-reglement {
        font-size: 13px;
    }
}