
            /* --- Styles généraux du sondage --- */
            .module-sondage {
                max-width: 600px;
                margin: 20px auto;
                padding: 20px;
                border: 1px solid #ccc;
                border-radius: 8px;
                background-color: #f9f9f9;
            }
            .module-sondage h2 {
                text-align: center;
                color: #333;
                border-bottom: 2px solid #eee;
                padding-bottom: 10px;
                margin-bottom: 20px;
            }
            .module-sondage fieldset {
                border: 1px solid #ddd;
                border-radius: 4px;
                padding: 15px;
                margin-bottom: 30px; 
            }
            .module-sondage legend {
                font-weight: bold;
                color: #0056b3; 
                padding: 0 10px;
                margin-bottom: 15px;
            }
            .module-sondage button[type="button"],
            .module-sondage button[type="submit"] {
                padding: 10px 20px;
                background-color: #007bff;
                color: white;
                border: none;
                border-radius: 4px;
                font-size: 1.1em;
                cursor: pointer;
                transition: background-color 0.3s;
                margin-right: 10px;
            }
            .module-sondage button[type="button"] {
                background-color: #6c757d;
            }
            .module-sondage button:hover {
                background-color: #0056b3;
            }

            /* --- Styles pour les TRANSITIONS (Fondu Enchaîné) --- */
            .module-sondage .etape {
                display: none; 
                opacity: 0; 
                transition: opacity 0.5s ease-in-out; 
            }
            .module-sondage .etape.active {
                display: block; 
                opacity: 1; 
            }
            .module-sondage .etape.hidden-transition {
                opacity: 0;
            }
            
            /* Styles spécifiques à l'option unique */
            .choix-unique {
                display: block;
                padding: 10px;
                margin-bottom: 10px;
                border: 1px solid #ddd;
                border-radius: 4px;
                cursor: pointer;
                transition: background-color 0.3s, border-color 0.3s;
            }
            .choix-unique:hover {
                background-color: #e9f5ff;
                border-color: #007bff;
            }
            .choix-unique input[type="radio"] {
                margin-right: 10px;
                /* Cacher le bouton radio par défaut pour un design plus épuré */
                opacity: 0;
                width: 0;
                height: 0;
            }
            /* Style pour l'option sélectionnée */
            .choix-unique input[type="radio"]:checked + span {
                font-weight: bold;
                color: #007bff;
            }
            .choix-unique input[type="radio"]:checked {
                /* Pour un meilleur feedback, on pourrait changer le style du label entier */
                background-color: #cce0ff;
                border-color: #007bff;
            }
            
            /* Styles des résultats */
            .resultat-disc {
                padding: 20px;
                background-color: #e6f7ff;
                border-left: 5px solid #007bff;
            }
            .profil-principal {
                font-size: 1.5em;
                font-weight: bold;
                color: #007bff;
                margin-top: 10px;
            }
            .profil-description h4 {
                color: #444;
                margin-top: 10px;
                border-bottom: 1px dotted #ccc;
                padding-bottom: 5px;
            }
            .profil-description {
                margin-top: 15px;
                padding: 10px;
                border-top: 1px dashed #ccc;
            }
