@import url(‘https://fonts.googleapis.com/css2?family=Poppins:wght@400;600;700&display=swap’);
#quiz-container {
font-family: ‘Poppins’, sans-serif;
background-color: #ffffff;
border-radius: 15px;
box-shadow: 0 8px 25px rgba(0,0,0,0.1);
width: 100%;
max-width: 650px;
padding: 35px 40px;
margin: 20px auto;
box-sizing: border-box;
}
#quiz-container h1 {
text-align: center;
color: #2c3e50;
margin-bottom: 25px;
font-weight: 700;
font-size: 2em;
}
#quiz-container #question-container { margin-bottom: 30px; }
#quiz-container #question-text {
font-size: 1.4em;
font-weight: 600;
margin-bottom: 20px;
color: #34495e;
}
#quiz-container .btn-grid { display: grid; grid-template-columns: 1fr; gap: 12px; }
#quiz-container .btn {
background-color: #f4f4f9 !important;
color: #333 !important;
border: 1px solid #ddd;
border-radius: 8px;
padding: 15px 20px;
font-size: 1.1em;
cursor: pointer;
transition: all 0.3s ease;
text-align: left;
}
#quiz-container .btn:hover:not(:disabled) {
background-color: #e9e9f3 !important;
transform: translateY(-2px);
}
#quiz-container .btn:disabled { cursor: not-allowed; transform: none; }
#quiz-container #controls {
display: flex;
justify-content: space-between;
align-items: center;
margin-top: 30px;
border-top: 1px solid #eee;
padding-top: 20px;
min-height: 50px;
}
#quiz-container #next-btn { display: none !important; }
#quiz-container #submit-btn {
background-color: #e0f2f7 !important;
color: #2980b9 !important;
border: 2px solid #a8dadc;
padding: 10px 25px;
border-radius: 8px;
cursor: pointer;
font-size: 1.1em;
font-weight: 600;
transition: all 0.3s ease;
margin-left: auto;
}
#quiz-container #submit-btn:hover {
background-color: #c0e0eb !important;
color: #1f678f !important;
border-color: #8bbdc9 !important;
}
#quiz-container #submit-btn.hide { display: none; }
#quiz-container #result { text-align: center; margin-top: 30px; }
#quiz-container #result-title { font-size: 1.2em; color: #7f8c8d; font-weight: 500; }
#quiz-container #result-message { font-size: 1.1em; color: #34495e; margin-top: 10px; }
#quiz-container #progress { font-size: 1.1em; font-weight: 500; color: #7f8c8d; }
const questionTextElement = document.getElementById(‘question-text’);
const answerButtonsElement = document.getElementById(‘answer-buttons’);
const submitButton = document.getElementById(‘submit-btn’);
const resultElement = document.getElementById(‘result’);
const progressElement = document.getElementById(‘progress’);let currentQuestionIndex;
let profileScores;const questions = [
{ question: « Comment réagissez-vous quand quelqu’un ne fait pas les choses à votre façon ? », answers: [
{ text: « Je m’énerve vite, je veux que ce soit bien fait », profile: « perfectionniste » },
{ text: « Je laisse faire, mais je juge intérieurement », profile: « orgueilleux » },
{ text: « Je prends les choses en main directement », profile: « autoritaire » },
{ text: « Je me dis que ce n’est pas grave », profile: « indécis » }
]},
{ question: « Quand vous êtes en retard : », answers: [
{ text: « Je panique totalement », profile: « stressé » },
{ text: « Je me justifie longuement », profile: « orgueilleux » },
{ text: « Je m’en fiche, tout le monde peut attendre », profile: « égoïste » },
{ text: « Je culpabilise pendant des heures », profile: « culpabilisateur » }
]},
{ question: « Lorsqu’on vous critique : », answers: [
{ text: « Je me ferme et boude », profile: « susceptible » },
{ text: « Je me défends bec et ongles », profile: « orgueilleux » },
{ text: « Je prends tout personnellement », profile: « hypersensible » },
{ text: « Je fais comme si ça ne me touchait pas, mais ça bouillonne », profile: « rancunier » }
]},
{ question: « Face à un désaccord : », answers: [
{ text: « Je veux absolument avoir raison », profile: « orgueilleux » },
{ text: « Je préfère céder pour éviter le conflit », profile: « fuyant » },
{ text: « Je m’énerve très vite », profile: « colérique » },
{ text: « Je rumine ensuite dans mon coin », profile: « rancunier » }
]},
{ question: « Dans votre groupe d’amis, vous êtes plutôt : », answers: [
{ text: « Celui/celle qui décide pour tout le monde », profile: « autoritaire » },
{ text: « Celui/celle qui veut plaire à tout prix », profile: « insécure » },
{ text: « Celui/celle qui observe sans rien dire », profile: « réservé » },
{ text: « Celui/celle qui râle souvent », profile: « négatif » }
]},
{ question: « Quand quelqu’un ne vous répond pas rapidement : », answers: [
{ text: « Je m’imagine le pire », profile: « anxieux » },
{ text: « Je m’énerve, c’est un manque de respect », profile: « impulsif » },
{ text: « Je réponds aussi plus tard exprès », profile: « rancunier » },
{ text: « Je me dis qu’il est occupé », profile: « fuyant » }
]},
{ question: « Comment réagissez-vous face à l’échec ? », answers: [
{ text: « Je me dévalorise complètement », profile: « insécure » },
{ text: « Je rejette la faute sur les autres », profile: « orgueilleux » },
{ text: « Je recommence encore plus fort », profile: « perfectionniste » },
{ text: « Je laisse tomber », profile: « démotivé » }
]},
{ question: « Quand une personne réussit mieux que vous : », answers: [
{ text: « Je suis un peu jaloux(se) », profile: « envieux » },
{ text: « Je fais comme si je m’en fichais », profile: « orgueilleux » },
{ text: « Je me compare sans cesse », profile: « insécure » },
{ text: « Je suis content(e) pour elle sincèrement », profile: « équilibré » }
]},
{ question: « Votre plus grand défaut selon vos proches : », answers: [
{ text: « Je veux toujours tout contrôler », profile: « perfectionniste » },
{ text: « Je parle trop ou trop fort », profile: « impulsif » },
{ text: « Je dramatise tout », profile: « hypersensible » },
{ text: « Je ne dis jamais vraiment ce que je pense », profile: « fuyant » }
]},
{ question: « Quand vous êtes stressé : », answers: [
{ text: « Je deviens irritable », profile: « colérique » },
{ text: « Je me replie sur moi-même », profile: « réservé » },
{ text: « Je perds tous mes moyens », profile: « anxieux » },
{ text: « Je garde une façade calme », profile: « orgueilleux » }
]},
{ question: « Face à un imprévu : », answers: [
{ text: « Je perds le contrôle », profile: « stressé » },
{ text: « Je râle, c’est insupportable », profile: « négatif » },
{ text: « Je m’adapte tant bien que mal », profile: « équilibré » },
{ text: « Je panique intérieurement », profile: « anxieux » }
]},
{ question: « Quand quelqu’un ne partage pas votre opinion : », answers: [
{ text: « Je tente de le convaincre à tout prix », profile: « autoritaire » },
{ text: « Je me sens blessé(e) », profile: « hypersensible » },
{ text: « Je coupe court à la discussion », profile: « fuyant » },
{ text: « Je deviens sarcastique », profile: « rancunier » }
]}
];
function startQuiz() {
currentQuestionIndex = 0;
profileScores = { perfectionniste:0, orgueilleux:0, autoritaire:0, indécis:0, stressé:0, culpabilisateur:0,
susceptible:0, rancunier:0, fuyant:0, colérique:0, insécure:0, négatif:0, anxieux:0, hypersensible:0,
réservé:0, démotivé:0, envieux:0, équilibré:0, impulsif:0, égoïste:0 };
resultElement.innerHTML = »;
submitButton.classList.add(‘hide’);
submitButton.innerText = « Recommencer »;
submitButton.onclick = startQuiz;
showQuestion(questions[currentQuestionIndex]);
}function showQuestion(question) {
progressElement.innerText = `Question ${currentQuestionIndex + 1} / ${questions.length}`;
questionTextElement.innerText = question.question;
answerButtonsElement.innerHTML = »;
question.answers.forEach(answer => {
const button = document.createElement(‘button’);
button.innerText = answer.text;
button.classList.add(‘btn’);
button.dataset.profile = answer.profile;
button.addEventListener(‘click’, selectAnswer);
answerButtonsElement.appendChild(button);
});
}function selectAnswer(e) {
const selectedProfile = e.target.dataset.profile;
profileScores[selectedProfile]++;
Array.from(answerButtonsElement.children).forEach(btn => btn.disabled = true);
setTimeout(() => {
if (questions.length > currentQuestionIndex + 1) {
currentQuestionIndex++;
showQuestion(questions[currentQuestionIndex]);
} else {
showResult();
}
}, 700);
}function showResult() {
const dominant = Object.keys(profileScores).reduce((a,b) => profileScores[a]> profileScores[b]? a : b);
let message = « »;
switch(dominant){
case « perfectionniste »: message = « 🎯 Votre défaut caché : le perfectionnisme
Vous visez toujours l’excellence, mais parfois au détriment de votre paix intérieure. »; break; case « orgueilleux »: message = « 👑 Votre défaut caché : l’orgueil
Vous détestez avoir tort, mais reconnaître vos failles vous rendra plus fort. »; break; case « autoritaire »: message = « 💼 Votre défaut caché : l’autorité excessive
Vous aimez diriger, mais parfois vous oubliez d’écouter. »; break; case « rancunier »: message = « 🔥 Votre défaut caché : la rancune
Vous n’oubliez rien. Apprendre à lâcher prise pourrait vous libérer. »; break; case « anxieux »: message = « 💭 Votre défaut caché : l’anxiété
Votre esprit tourne à 100 à l’heure. Détachez-vous de ce que vous ne contrôlez pas. »; break; case « fuyant »: message = « 🌫️ Votre défaut caché : l’évitement
Vous préférez fuir les conflits, mais parfois il faut affronter les choses. »; break; case « colérique »: message = « 💢 Votre défaut caché : la colère
Vous réagissez vite, souvent trop. Canaliser cette énergie peut devenir une force. »; break; case « hypersensible »: message = « 🌊 Votre défaut caché : l’hypersensibilité
Vous ressentez tout intensément. Transformez cette émotion en empathie constructive. »; break; case « insécure »: message = « 💔 Votre défaut caché : l’insécurité
Vous doutez souvent de vous. Ayez confiance : vous valez bien plus que vous ne le pensez. »; break; case « envieux »: message = « 🪞 Votre défaut caché : la comparaison
Regardez vos réussites plutôt que celles des autres. »; break; case « négatif »: message = « ☁️ Votre défaut caché : le pessimisme
Vous voyez d’abord le verre à moitié vide. Essayez la gratitude. »; break; case « impulsif »: message = « ⚡ Votre défaut caché : l’impulsivité
Vous agissez avant de réfléchir, ce qui vous joue parfois des tours. »; break; default: message = « 🌿 Vous êtes équilibré(e)
Vos qualités et vos défauts se compensent : continuez à vous écouter sans excès. »; } resultElement.innerHTML = `
Test de personnalité : Découvrez votre plus gros défaut caché
Question
Vous visez toujours l’excellence, mais parfois au détriment de votre paix intérieure. »; break; case « orgueilleux »: message = « 👑 Votre défaut caché : l’orgueil
Vous détestez avoir tort, mais reconnaître vos failles vous rendra plus fort. »; break; case « autoritaire »: message = « 💼 Votre défaut caché : l’autorité excessive
Vous aimez diriger, mais parfois vous oubliez d’écouter. »; break; case « rancunier »: message = « 🔥 Votre défaut caché : la rancune
Vous n’oubliez rien. Apprendre à lâcher prise pourrait vous libérer. »; break; case « anxieux »: message = « 💭 Votre défaut caché : l’anxiété
Votre esprit tourne à 100 à l’heure. Détachez-vous de ce que vous ne contrôlez pas. »; break; case « fuyant »: message = « 🌫️ Votre défaut caché : l’évitement
Vous préférez fuir les conflits, mais parfois il faut affronter les choses. »; break; case « colérique »: message = « 💢 Votre défaut caché : la colère
Vous réagissez vite, souvent trop. Canaliser cette énergie peut devenir une force. »; break; case « hypersensible »: message = « 🌊 Votre défaut caché : l’hypersensibilité
Vous ressentez tout intensément. Transformez cette émotion en empathie constructive. »; break; case « insécure »: message = « 💔 Votre défaut caché : l’insécurité
Vous doutez souvent de vous. Ayez confiance : vous valez bien plus que vous ne le pensez. »; break; case « envieux »: message = « 🪞 Votre défaut caché : la comparaison
Regardez vos réussites plutôt que celles des autres. »; break; case « négatif »: message = « ☁️ Votre défaut caché : le pessimisme
Vous voyez d’abord le verre à moitié vide. Essayez la gratitude. »; break; case « impulsif »: message = « ⚡ Votre défaut caché : l’impulsivité
Vous agissez avant de réfléchir, ce qui vous joue parfois des tours. »; break; default: message = « 🌿 Vous êtes équilibré(e)
Vos qualités et vos défauts se compensent : continuez à vous écouter sans excès. »; } resultElement.innerHTML = `
Votre plus gros défaut caché :
${message}
`; submitButton.classList.remove(‘hide’); }startQuiz();