/* Styles généraux */
/*.main-container {
    width: 1000%;
    max-width: 1200px;
    margin: auto;
    padding: 40px 20px;
    background-color: #FFFFFF;
    border-radius: 0px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}*/

html, body {
    max-width: 100%;
    overflow-x: hidden;
}


.main-container {
    width: 100%;  
    max-width: 2000px;  
    margin: auto; 
    padding: 20px; 
    display: flex;
    flex-direction: column;
    align-items: center; 
    background-color: #fff; 
    border-radius: 0px; 
    padding: 30px;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1); 
}

body {
    background: linear-gradient(to bottom, #0EB062, #0EB062);
    color: #333; /* Texte en gris foncé pour un meilleur contraste */
    font-family: Arial, sans-serif;
   
   
     
}




section {
    width: 90%;  /* Occupe presque toute la largeur */
    max-width: 1200px;  /* Évite que ça devienne immense */
    margin-bottom: 30px; /* Espacement entre les sections */
}



/* Import de la police depuis Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@400;700&display=swap');

.message-dynamique {
    border-radius: 10px;
    width: 80%;
    max-width: 800px;
    background: white;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
    margin: 30px auto;
    padding: 20px;
    text-align: center;
}

/* Titre */
.message-dynamique .marquee {
    color: #0EB062;
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 15px;
}

/* Texte */
.message-dynamique .texte {
    font-family: 'Oswald', sans-serif;
    color: #000;
    font-size: 1rem;
    font-weight: normal;
    text-align: center;
}

.message-dynamique .texteLigne {
    font-family: 'Oswald', sans-serif;
    color: #000;
    font-size: 1rem;
    font-weight: normal;
    text-align: justify;
}



/* 📱 Adaptation aux petits écrans */
@media screen and (max-width: 768px) {
    .message-dynamique .marquee {
        font-size: 1.2rem; /* Titre un peu plus petit */
    }
    .message-dynamique .texte {
        font-size: 0.95rem; /* Texte légèrement réduit */
    }
    .message-dynamique {
        padding: 15px;
        width: 90%;
    }
}

@media screen and (max-width: 480px) {
    .message-dynamique .marquee {
        font-size: 1rem; /* Titre encore plus petit */
    }
    .message-dynamique .texte {
        font-size: 0.9rem; /* Texte encore plus petit */
    }
    .message-dynamique {
        padding: 10px;
        width: 95%;
    }
}


    
    /* Image statique sous le texte */
    .encart-image {
        width: 80%;
        max-width: 400px;
        display: block;
        margin: 15px auto;
        border-radius: 10px;
    }
    






/* Témoignage */
.temoignage {
    margin-top: 40px;
    font-style: italic;
    text-align: center;
    font-size: 18px;
    color: #555;
}


 
        /* CSS amélioré et simple */

        

        h2 {
            text-align: center;
            color: #4a4a4a;
        }

        #searchGuest {
            width: 100%;
            padding: 10px;
            font-size: 1rem;
            margin-bottom: 10px;
            border: 1px solid #ccc;
            border-radius: 4px;
        }

        #guestList {
            list-style: none;
            padding: 0;
            margin: 0 0 20px 0;
            max-height: 160px;
            overflow-y: auto;
            border: 1px solid #ddd;
            border-radius: 4px;
        }

        #guestList li {
            padding: 10px;
            cursor: pointer;
            border-bottom: 1px solid #eee;
            transition: background-color 0.2s;
        }

        #guestList li:hover:not(.confirmed) {
            background-color: #f0f0f0;
        }

        #guestList li.confirmed {
            color: #999;
            cursor: default;
            background-color: #f9f9f9;
            font-style: italic;
        }

        #guestList li.confirmed::after {
            content: " : a répondu";
            font-size: 0.9em;
            color: #666;
        }

        form label {
            display: block;
            margin: 12px 0 6px;
            font-weight: 600;
        }

        select, textarea {
            width: 100%;
            padding: 8px;
            font-size: 1rem;
            border: 1px solid #ccc;
            border-radius: 4px;
            resize: vertical;
        }

        .checkbox-label {
            display: flex;
            align-items: center;
            margin-top: 10px;
            font-weight: 600;
            cursor: pointer;
            user-select: none;
        }

        .checkbox-label input[type="checkbox"] {
            margin-right: 10px;
            transform: scale(1.2);
            cursor: pointer;
        }

        button[type=submit] {
            margin-top: 20px;
            padding: 12px;
            width: 100%;
            background-color: #ffd226;
            border: none;
            color: black;
            font-weight: bold;
            font-size: 1.1rem;
            border-radius: 5px;
            cursor: pointer;
            transition: background-color 0.3s;
        }

        button[type=submit]:hover {
            background-color: #e7cf6f;
        }

        #confirmationMessage p {
            background-color: #e0ffe0;
            padding: 12px;
            border-radius: 5px;
            margin-top: 20px;
            font-size: 1rem;
            color: #2f6627;
            line-height: 1.4;
        }
        
        
        #confirmationMessage p.reponse-oui {
            background-color: #e0ffe0; /* vert clair */
            color: #2f6627;
            border-radius: 5px;
            margin-top: 20px;
            font-size: 1rem;
            color: #2f6627;
            line-height: 1.4;
        }

        #confirmationMessage p.reponse-non {
            background-color: #fff8cc; /* jaune pâle */
            color: #8a6d00;
            border-radius: 5px;
            margin-top: 20px;
            font-size: 1rem;
            color: #2f6627;
            line-height: 1.4;
        }
        
        #dressError {
            color: red;
            font-size: 0.9rem;
            margin-top: 5px;
            display: none;
        }

        
    /* Lightbox (fenêtre d'image) */
.lightbox {
  display: none;
  position: fixed;
  z-index: 1000;
  padding-top: 60px;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0,0,0,0.9);
}

/* Image agrandie */
.lightbox-content {
  display: block;
  margin: auto;
  max-width: 90%;
  max-height: 90%;
  border-radius: 10px;
  box-shadow: 0 0 15px rgba(255,255,255,0.5);
}

/* Bouton fermer (X) */
.close {
  position: absolute;
  top: 20px;
  right: 35px;
  color: white;
  font-size: 40px;
  font-weight: bold;
  cursor: pointer;
}

/* ... votre CSS actuel ... */

/* --- Amélioration du Placeholder pour Mobile (à ajouter dans presence.css) --- */

/* Règle pour les petits écrans (smartphones) */
@media screen and (max-width: 480px) {
    /* ... vos autres règles pour 480px ... */

    /* Cible le champ de recherche */
    #searchGuest {
        /* Assurez-vous que la taille de l'input lui-même est gérée */
        font-size: 1rem; /* Taille normale du texte tapé */
    }

    /* Styles pour le texte du placeholder (avec préfixes) */
    #searchGuest::placeholder,
    #searchGuest::-webkit-input-placeholder, /* Chrome, Safari */
    #searchGuest::-moz-placeholder,        /* Firefox 19+ */
    #searchGuest:-ms-input-placeholder,    /* IE 10+ */
    #searchGuest:-moz-placeholder {        /* Firefox 18- */
        /* Réduire la taille du texte d'aide au maximum */
        font-size: 0.75rem; /* Très petite taille pour tout faire rentrer */
        /* Important : cela assure que la règle est bien appliquée */
        opacity: 1; 
    }
}
    