/* =========================
   QSM – Container global
   ========================= */
    .qsm-quiz-container {
        background-color: #002148;
        border-radius: 5px;

        padding-top: 45px !important;
        padding-bottom: 25px !important;
        padding-left: 45px !important;
        padding-right: 45px !important;
    }

    /* Ajouter un margin-bottom sauf pour le dernier */
    .qsm-quiz-container:not(:last-child) {
        margin-bottom: 20px;
    }

    /* =========================
    Titres QSM (généraux)
    ========================= */

    .qsm-quiz-container h1,
    .qsm-quiz-container h2,
    .qsm-quiz-container h3,
    .qsm-quiz-container h4,
    .qsm-quiz-container h5,
    .qsm-quiz-container h6 {
        margin-bottom: 10px;
    }

    .qsm-quiz-container h1,
    .qsm-quiz-container h2,
    .qsm-quiz-container h3,
    .qsm-quiz-container h4,
    .qsm-quiz-container h5,
    .qsm-quiz-container h6,
    .qsm-quiz-container p {
        color: #FFFFFF;
    }

    /* =========================
    Progress bar
    ========================= */

    .qsm-progress-bar .progressbar-text {
        color: #fff !important;
    }

    .qsm-progress-bar svg path:last-child {
        stroke: var(--color-primary) !important;
    }

    /* =========================
    Formulaire QSM
    ========================= */

    .qsm-quiz-form {
        /* background-color: #000; */
    }

    /* =========================
    Intro du quiz (bloc début)
    ========================= */

    .qsm-quiz-container .mlw_qmn_message_before {
        margin: 0 !important;
        padding: 0 !important;
        text-align: center;
    }

    .qsm-auto-page-row.quiz_section.quiz_begin {
        padding: 0 !important;
    }

    /* Titre du quiz (ex-h1 → span) */
    .qsm-quiz-container .mlw_qmn_message_before .qsm-title {
        display: block;

        color: #FFF;
        font-family: var(--font-secondary) !important;
        font-weight: 800;
        font-size: 2rem;
        line-height: 1.2;

        margin-bottom: 20px !important;
    }

    /* Paragraphes d’introduction */
    .qsm-quiz-container .mlw_qmn_message_before p {
        color: #FFF;
        line-height: 24px;
        font-family: var(--font-primary);
        font-weight: 400;
        font-size: 1rem;

        margin: 0 0 10px;
    }

    /* Supprime le margin inutile */
    .qsm-quiz-container .mlw_qmn_message_before p:last-of-type {
        margin-bottom: 0;
    }

    /* =========================
    Boutons
    ========================= */

    .qmn_btn {
        background-color: var(--color-primary);
        color: #FFFFFF;
    }

    .qsm-quiz-container .qmn_btn.mlw_custom_start,
    .qsm-quiz-container .qmn_btn.mlw_custom_next,
    .qsm-quiz-container .qmn_btn.qsm-btn.qsm-submit-btn.qmn_btn,
    .qsm-quiz-container .qmn_btn.qsm_retake_button,
    .qsm-quiz-container .qmn_btn.mlw_previous {
        background-color: var(--color-primary) !important;
        border-radius: 5px;
        padding: 17px 20px;
        color: #fff;
        text-decoration: none;
    }

    .qsm-quiz-container .qmn_btn.mlw_custom_start:hover,
    .qsm-quiz-container .qmn_btn.mlw_custom_next:hover,
    .qsm-quiz-container .qmn_btn.qsm-btn.qsm-submit-btn.qmn_btn:hover,
    .qsm-quiz-container .qmn_btn.qsm_retake_button:hover,
    .qsm-quiz-container .qmn_btn.mlw_previous:hover {
        background-color: var(--color-primary-100) !important;
    }

    .qsm-quiz-container .qmn_btn.mlw_custom_start:focus,
    .qsm-quiz-container .qmn_btn.mlw_custom_next:focus,
    .qsm-quiz-container .qmn_btn.qsm-btn.qsm-submit-btn.qmn_btn:focus,
    .qsm-quiz-container .qmn_btn.qsm_retake_button:focus,
    .qsm-quiz-container .qmn_btn.mlw_previous:focus {
        outline: 2px solid #fff;
        outline-offset: 2px;
    }

    /* =========================
    Questions
    ========================= */

    .mlw_qmn_new_question {
        color: #FFFFFF !important;
        font-family: var(--font-secondary) !important;
        font-size: 1.5rem !important;
    }

    .mlw_qmn_question_number {
        color: #FFFFFF !important;
        font-family: var(--font-secondary) !important;
        font-size: 1.5rem !important;
    }

    /* =========================
    Réponses
    ========================= */
    .qsm_check_answer,
    .qmn_radio_answers {
        color: #FFFFFF !important;
        font-family: var(--font-primary) !important;
        font-weight: 400 !important;
        font-size: 1rem;
    }

    .qsm-quiz-container .qsm_check_answer  ,
    .qsm-quiz-container .qmn_radio_answers {
        color: #FFF !important;
        font-family: var(--font-primary) !important;
        font-weight: 400 !important;
        font-size: 1rem !important;
    }
    
    .qsm-input-label {
        color: #FFFFFF !important;
        font-family: var(--font-primary) !important;
        font-weight: 400 !important;
        font-size: 1rem !important;
    }

    /* Space Y 4 – Radios */
    .qsm-quiz-container fieldset .qmn_radio_answers > * + * {
        margin-top: 1rem;
    }

    /* Space Y 4 – Checkboxes */
    .qsm-quiz-container fieldset .qmn_check_answers > * + * {
        margin-top: 1rem;
    }

    .qsm-quiz-container .qmn_error .qsm_check_answer,
    .qsm-quiz-container .qmn_error .qmn_radio_answers {
        color: #000 !important;
        font-family: var(--font-primary) !important;
        font-weight: 400 !important;
        font-size: 1rem !important;
    }

    .qsm-quiz-container 
    .qsm-auto-page-row.quiz_section.quiz_end.qsm-d-none {
        padding: 0 !important;
    }

    .qsm-quiz-container .quiz_section.qsm-question-wrapper {
        padding: 0 !important;
    }

    .qsm-processing {
        color: #FFFFFF !important;
    }