/*
 * Formulaire Forminator 110444 uniquement.
 * Presentation commune des categories principales et sous-categories.
 */

#forminator-module-110444 #select-2 {
    margin-top: 15px;
}

/* Suppression des hauteurs fixes et des barres de defilement internes. */
#forminator-module-110444 #select-1,
#forminator-module-110444 #select-2,
#forminator-module-110444 #select-1 .forminator-field,
#forminator-module-110444 #select-2 .forminator-field,
#forminator-module-110444 #select-1 .forminator-multiselect,
#forminator-module-110444 #select-2 .forminator-multiselect,
#forminator-module-110444 #select-1 .forminator-multiselect-wrapper,
#forminator-module-110444 #select-2 .forminator-multiselect-wrapper,
#forminator-module-110444 #select-1 .forminator-multiselect-list,
#forminator-module-110444 #select-2 .forminator-multiselect-list {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
}

/* Categories principales : 2 px entre chaque carte. */
#forminator-module-110444 #select-1 .forminator-field {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 2px !important;
}

/* Le niveau 2 contient des groupes empiles. */
#forminator-module-110444 #select-2 .forminator-field {
    display: flex !important;
    flex-direction: column;
    gap: 18px;
}

/* Presentation commune des cartes. */
#forminator-module-110444 #select-1 label.forminator-option,
#forminator-module-110444 #select-2 label.forminator-option {
    display: flex !important;
    align-items: flex-start;
    gap: 10px;
    box-sizing: border-box;
    width: 100%;
    min-height: 48px;
    margin: 0 !important;
    padding: 12px 14px !important;
    border: 1px solid #d7dce2 !important;
    border-radius: 6px;
    background: #ffffff !important;
    color: #555555 !important;
    font-size: 14px;
    line-height: 1.35;
    cursor: pointer;
    transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}

#forminator-module-110444 #select-1 label.forminator-option:hover,
#forminator-module-110444 #select-2 label.forminator-option:hover {
    border-color: #1687b2 !important;
    background: #f4fbfe !important;
}

#forminator-module-110444 #select-1 label.forminator-option input[type="checkbox"],
#forminator-module-110444 #select-2 label.forminator-option input[type="checkbox"] {
    display: inline-block !important;
    appearance: auto !important;
    -webkit-appearance: checkbox !important;
    position: static !important;
    visibility: visible !important;
    opacity: 1 !important;
    flex: 0 0 auto;
    width: 18px !important;
    height: 18px !important;
    margin: 1px 0 0 0 !important;
    cursor: pointer;
}

#forminator-module-110444 #select-1 label.forminator-option.forminator-is_checked,
#forminator-module-110444 #select-2 label.forminator-option.forminator-is_checked,
#forminator-module-110444 #select-1 label.forminator-option:has(input[type="checkbox"]:checked),
#forminator-module-110444 #select-2 label.forminator-option:has(input[type="checkbox"]:checked) {
    border-color: #1687b2 !important;
    background: #eaf7fc !important;
    color: #1f5368 !important;
    box-shadow: 0 0 0 1px #1687b2;
}

#forminator-module-110444 #select-1 label.forminator-option.forminator-is_checked *,
#forminator-module-110444 #select-1 label.forminator-option:has(input[type="checkbox"]:checked) *,
#forminator-module-110444 #select-2 label.forminator-option.forminator-is_checked *,
#forminator-module-110444 #select-2 label.forminator-option:has(input[type="checkbox"]:checked) * {
    color: inherit !important;
}

#forminator-module-110444 #select-1 .forminator-multiselect,
#forminator-module-110444 #select-2 .forminator-multiselect,
#forminator-module-110444 #select-1 .forminator-multiselect-wrapper,
#forminator-module-110444 #select-2 .forminator-multiselect-wrapper,
#forminator-module-110444 #select-1 .forminator-multiselect-list,
#forminator-module-110444 #select-2 .forminator-multiselect-list {
    border: 0 !important;
    background: transparent !important;
}

#forminator-module-110444 #select-1 > .forminator-label,
#forminator-module-110444 #select-2 > .forminator-label {
    display: block;
    margin-bottom: 10px;
    font-weight: 600;
}

/* Groupes de sous-categories. */
#forminator-module-110444 #select-2 .cadhi-groupe-sous-categories {
    display: block;
    width: 100%;
    margin: 0;
}

#forminator-module-110444 #select-2 .cadhi-titre-categorie {
    box-sizing: border-box;
    width: 100%;
    margin: 0 0 8px 0;
    padding: 10px 14px;
    border-left: 4px solid #1687b2;
    border-radius: 4px;
    background: #eef8fc;
    color: #1f5368;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.3;
}

#forminator-module-110444 #select-2 .cadhi-liste-sous-categories {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    width: 100%;
}

@media screen and (max-width: 800px) {
    #forminator-module-110444 #select-1 .forminator-field,
    #forminator-module-110444 #select-2 .cadhi-liste-sous-categories {
        grid-template-columns: 1fr;
    }
}


/* Conteneur Forminator d'origine conserve uniquement comme modele. */
#forminator-module-110444 #select-2 .cadhi-modele-options-masque {
    display: none !important;
}

/* Hote stable des groupes visibles de sous-categories. */
#forminator-module-110444 #select-2 .cadhi-groupes-sous-categories {
    display: flex !important;
    flex-direction: column;
    gap: 18px;
    width: 100%;
}

/* Validation v2.2.7 : une sous-categorie minimum par categorie choisie. */
#forminator-module-110444 #select-2 .cadhi-groupe-sous-categories.cadhi-groupe-invalide {
    padding: 8px;
    border: 1px solid #e04562;
    border-radius: 6px;
    background: #fff7f8;
}

#forminator-module-110444 #select-2 .cadhi-groupe-sous-categories.cadhi-groupe-invalide .cadhi-titre-categorie {
    border-left-color: #e04562;
    background: #fdecef;
    color: #8a1f33;
}
