/* =========================================================
   WYSIWYG - BARRE D'OUTILS SIMPLIFIÉE (FRONT)
   ---------------------------------------------------------
   Objectif :
   - Unifier le design de la barre TinyMCE sur le front
   - Conserver uniquement les outils suivants :
     B, I, listes à puces, listes numérotées, citation,
     alignement gauche, centré, droite, lien
   - Fond blanc, icônes vertes, sur une seule ligne
   - N'affecte que les formulaires dans .fea-ui-overlay-wrapper
   ========================================================= */

/* Conteneur TinyMCE : bordure et fond harmonisés avec le formulaire */
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-tinymce,
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-tinymce {
    border: 1px solid #e8e8e8;
    border-radius: 4px;
    box-shadow: none;
}

/* Bande de la barre d'outils : fond blanc, séparation fine */
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar-grp,
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar-grp {
    background: #ffffff;
    border-bottom: 1px solid #e8e8e8;
    padding: 4px 10px;
    box-sizing: border-box;
    width: 100%;
}

/* Ligne(s) de toolbars : masquées par défaut, on ne ré-affiche que
   celles qui contiennent au moins un des boutons conservés */
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar-grp .mce-toolbar,
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar-grp .mce-toolbar {
    display: none;
}

/* Afficher les toolbars qui contiennent un bouton conservé */
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar-grp .mce-toolbar:has(.mce-btn:has(.mce-i-bold)),
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar-grp .mce-toolbar:has(.mce-btn:has(.mce-i-italic)),
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar-grp .mce-toolbar:has(.mce-btn:has(.mce-i-bullist)),
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar-grp .mce-toolbar:has(.mce-btn:has(.mce-i-numlist)),
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar-grp .mce-toolbar:has(.mce-btn:has(.mce-i-blockquote)),
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar-grp .mce-toolbar:has(.mce-btn:has(.mce-i-alignleft)),
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar-grp .mce-toolbar:has(.mce-btn:has(.mce-i-aligncenter)),
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar-grp .mce-toolbar:has(.mce-btn:has(.mce-i-alignright)),
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar-grp .mce-toolbar:has(.mce-btn:has(.mce-i-link)),
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar-grp .mce-toolbar:has(.mce-btn:has(.mce-i-bold)),
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar-grp .mce-toolbar:has(.mce-btn:has(.mce-i-italic)),
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar-grp .mce-toolbar:has(.mce-btn:has(.mce-i-bullist)),
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar-grp .mce-toolbar:has(.mce-btn:has(.mce-i-numlist)),
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar-grp .mce-toolbar:has(.mce-btn:has(.mce-i-blockquote)),
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar-grp .mce-toolbar:has(.mce-btn:has(.mce-i-alignleft)),
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar-grp .mce-toolbar:has(.mce-btn:has(.mce-i-aligncenter)),
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar-grp .mce-toolbar:has(.mce-btn:has(.mce-i-alignright)),
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar-grp .mce-toolbar:has(.mce-btn:has(.mce-i-link)) {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
    gap: 4px;
    width: 100%;
}

/* Tous les boutons (y compris menu "Paragraphe", couleur, etc.) :
   masqués par défaut */
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar .mce-btn,
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar .mce-btn,
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar .mce-menubtn,
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar .mce-menubtn {
    display: none !important;
}

/* Boutons à CONSERVER : B, I, listes, citation, alignements, lien.
   On les ré-affiche explicitement pour être indépendants des IDs
   dynamiques (mceu_289-button, mceu_290-button, etc.). */
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar .mce-btn:has(.mce-i-bold),
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar .mce-btn:has(.mce-i-bold),
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar .mce-btn:has(.mce-i-italic),
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar .mce-btn:has(.mce-i-italic),
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar .mce-btn:has(.mce-i-bullist),
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar .mce-btn:has(.mce-i-bullist),
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar .mce-btn:has(.mce-i-numlist),
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar .mce-btn:has(.mce-i-numlist),
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar .mce-btn:has(.mce-i-blockquote),
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar .mce-btn:has(.mce-i-blockquote),
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar .mce-btn:has(.mce-i-alignleft),
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar .mce-btn:has(.mce-i-alignleft),
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar .mce-btn:has(.mce-i-aligncenter),
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar .mce-btn:has(.mce-i-aligncenter),
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar .mce-btn:has(.mce-i-alignright),
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar .mce-btn:has(.mce-i-alignright),
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar .mce-btn:has(.mce-i-link),
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar .mce-btn:has(.mce-i-link) {
    display: inline-block !important;
}

/* Sélecteurs de secours pour les deux boutons de listes (Description) :
   certaines versions utilisent des variantes de classes sur .mce-ico */
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar .mce-btn:has(.mce-ico[class*="bullist"]),
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar .mce-btn:has(.mce-ico[class*="bullist"]),
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar .mce-btn:has(.mce-ico[class*="numlist"]),
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar .mce-btn:has(.mce-ico[class*="numlist"]) {
    display: inline-block !important;
}

/* Style des icônes : vert #205e03, taille légèrement augmentée */
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar .mce-ico,
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar .mce-ico {
    color: #205e03 !important;
    font-size: 24px !important;
}

/* Boutons : clic confort, forme arrondie discrète */
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar .mce-btn button,
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar .mce-btn button {
    padding: 8px 10px;
    border-radius: 5px;
}

.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-toolbar .mce-btn button:hover,
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-toolbar .mce-btn button:hover {
    background: rgba(32, 94, 3, 0.06);
}

/* Sécurité supplémentaire : forcer l'affichage des deux boutons
   de listes identifiés par mceu_289-button et mceu_290-button,
   même si leurs classes internes diffèrent sur certains éditeurs. */
.fea-ui-overlay-wrapper #mceu_289,
.fea-ui-overlay-wrapper #mceu_290,
.fea-ui-overlay-wrapper #mceu_289-button,
.fea-ui-overlay-wrapper #mceu_290-button {
    display: inline-block !important;
}
/* =========================================================
   FRONTEND ADMIN UI OVERLAY - SURCOUCHE GRAPHIQUE
   =========================================================
   Ce fichier CSS applique notre design personnalisé sur
   les formulaires générés par Frontend Admin.
   
   PRINCIPE :
   - Cible les formulaires Frontend Admin via .fea-ui-overlay-wrapper
   - Masque/cache les styles Frontend Admin par défaut si nécessaire
   - Applique notre charte graphique (vert #205e03, rouge #9a0000)
   ========================================================= */

/* =========================================================
   MESSAGES DE SUCCÈS / ERREUR FRONTEND ADMIN
   S'assurer que les messages peuvent s'afficher et se fermer
   Version: 1.0.46
   ========================================================= */
.fea-ui-overlay-wrapper .fea-form-message,
.fea-ui-overlay-wrapper .acf-notice,
.fea-ui-overlay-wrapper .notice,
.fea-ui-overlay-wrapper .fea-success-message,
.fea-ui-overlay-wrapper .fea-error-message,
.fea-ui-overlay-wrapper .fea-message {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    z-index: 9999 !important;
    pointer-events: auto !important;
}

/* Boutons de fermeture des messages */
.fea-ui-overlay-wrapper .fea-form-message .notice-dismiss,
.fea-ui-overlay-wrapper .acf-notice .notice-dismiss,
.fea-ui-overlay-wrapper .notice .notice-dismiss,
.fea-ui-overlay-wrapper .fea-message .close,
.fea-ui-overlay-wrapper .fea-message button {
    pointer-events: auto !important;
    cursor: pointer !important;
    z-index: 10000 !important;
}

/* =========================================================
   MASQUER LES STYLES FRONTEND ADMIN PAR DÉFAUT
   (si nécessaire selon la version de Frontend Admin)
   ========================================================= */
.fea-ui-overlay-wrapper .fea-form,
.fea-ui-overlay-wrapper .frontend-admin-form {
    /* Réinitialiser les styles Frontend Admin si nécessaire */
}

/* =========================================================
   CHARTE GRAPHIQUE - VERT CLAIR ET MODERNE
   Couleur principale : #205e03 (vert clair et doux)
   Couleur secondaire : #9a0000 (rouge)
   Fonds : blancs
   ========================================================= */

/* RÈGLE GLOBALE : Tous les textes en #000 (noir) SAUF éléments verts */
.fea-ui-overlay-wrapper .acf-form,
.fea-ui-overlay-wrapper .acf-form * {
    color: #000000;
    font-weight: 500;
}

/* Exception : libellés de champs en gras (700) et vert */
.fea-ui-overlay-wrapper .acf-field .acf-label label,
.fea-ui-overlay-wrapper .acf-field .acf-label,
.fea-ui-overlay-wrapper .acf-field label {
    font-weight: 700 !important;
    color: #205e03 !important;
}

/* Exceptions : éléments qui doivent rester verts (#205e03) */
.fea-ui-overlay-wrapper .acf-field .acf-label label,
.fea-ui-overlay-wrapper .acf-field[data-type="image"] .acf-label label,
.fea-ui-overlay-wrapper .acf-field[data-type="file"] .acf-label label,
.fea-ui-overlay-wrapper .acf-field[data-type="gallery"] .acf-label label,
.fea-ui-overlay-wrapper .acf-field[data-type="text"] .acf-label label,
.fea-ui-overlay-wrapper .acf-field[data-type="textarea"] .acf-label label,
.fea-ui-overlay-wrapper .acf-field[data-type="number"] .acf-label label,
.fea-ui-overlay-wrapper .acf-field[data-type="date_picker"] .acf-label label,
.fea-ui-overlay-wrapper .acf-field[data-name="featured_image"] .acf-label label,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.active-tab .acf-accordion-title,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.-open .acf-accordion-title,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion .acf-accordion-title:hover,
.fea-ui-overlay-wrapper .sidebar-header {
    color: #205e03 !important;
}

/* Exceptions : éléments blancs sur fonds colorés */
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.active-tab .acf-accordion-title,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.-open .acf-accordion-title,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion:last-child .acf-accordion-title,
.fea-ui-overlay-wrapper .cal-summary-table .cal-row-edit,
.fea-ui-overlay-wrapper .cal-summary-table .cal-row-delete,
.fea-ui-overlay-wrapper .custom-upload-button,
.fea-ui-overlay-wrapper .acf-field[data-name="galerie_photos"] .acf-button {
    color: #ffffff !important;
}

/* Exceptions : titres de colonnes du tableau en noir (#000) */
.fea-ui-overlay-wrapper .cal-summary-table thead th,
.fea-ui-overlay-wrapper .cal-summary-table thead th * {
    color: #000000 !important;
}

/* =========================================================
   LAYOUT 2 COLONNES (DESKTOP) / ACCORDÉON (MOBILE)
   ========================================================= */
.fea-ui-overlay-wrapper .form-container-wrapper {
    display: flex;
    gap: 30px;
    align-items: flex-start;
    position: relative;
}

/* Pas de position sur form-sidebar : le contenu accordéon (absolute) prend form-container-wrapper comme bloc de référence = pleine largeur */
.fea-ui-overlay-wrapper .form-sidebar {
    flex: 0 0 280px;
    background: #ffffff;
    padding: 20px;
    border-radius: 12px;
    border: 1px solid #e8e8e8;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

/* Sticky sur un inner pour garder le sommaire visible au scroll */
.fea-ui-overlay-wrapper .form-sidebar .sidebar-sticky-inner {
    position: sticky;
    top: 20px;
}

.fea-ui-overlay-wrapper .form-main-panel {
    flex: 1;
    background: #ffffff;
    padding: 25px;
    border-radius: 12px;
    border: 1px solid #e8e8e8;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.fea-ui-overlay-wrapper .sidebar-header {
    font-weight: 600;
    color: #205e03;
    border-bottom: 2px solid rgba(61, 158, 80, 0.15);
    margin-bottom: 15px;
    padding-bottom: 10px;
    font-size: 14px;
    letter-spacing: 0.5px;
}

/* =========================================================
   ACCORDÉONS SIDEBAR
   ========================================================= */
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion {
    margin-bottom: 6px;
    border-radius: 6px;
    overflow: hidden;
    transition: all 0.2s ease;
}

/* Accordéon WYSIWYG actif : overflow visible pour ne pas tronquer TinyMCE */
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.has-wysiwyg.active-tab,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.has-wysiwyg.-open {
    overflow: visible !important;
}

.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion .acf-accordion-title {
    padding: 12px 15px;
    background: #ffffff;
    color: #000000 !important;
    cursor: pointer;
    border: 2px solid #e0e0e0;
    border-radius: 6px;
    transition: all 0.2s ease;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
}

.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion .acf-accordion-title,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion .acf-accordion-title *,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion .acf-accordion-title span {
    color: #000000 !important;
}

/* HOVER : fond blanc + bordure verte */
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion .acf-accordion-title:hover {
    background: #ffffff;
    border-color: #205e03;
    color: #205e03 !important;
}

.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion .acf-accordion-title:hover,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion .acf-accordion-title:hover *,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion .acf-accordion-title:hover span {
    color: #205e03 !important;
}

/* ACTIF : fond vert, texte blanc */
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.active-tab .acf-accordion-title,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.-open .acf-accordion-title,
.fea-ui-overlay-wrapper .acf-field-accordion.active-tab .acf-accordion-title,
.fea-ui-overlay-wrapper .acf-field-accordion.-open .acf-accordion-title {
    background: #205e03 !important;
    color: #ffffff !important;
    border-color: #205e03 !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    box-shadow: 0 2px 4px rgba(61, 158, 80, 0.2);
}

.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.active-tab .acf-accordion-title,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.active-tab .acf-accordion-title *,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.active-tab .acf-accordion-title span,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.-open .acf-accordion-title,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.-open .acf-accordion-title *,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.-open .acf-accordion-title span,
.fea-ui-overlay-wrapper .acf-field-accordion.active-tab .acf-accordion-title,
.fea-ui-overlay-wrapper .acf-field-accordion.active-tab .acf-accordion-title *,
.fea-ui-overlay-wrapper .acf-field-accordion.active-tab .acf-accordion-title span,
.fea-ui-overlay-wrapper .acf-field-accordion.-open .acf-accordion-title,
.fea-ui-overlay-wrapper .acf-field-accordion.-open .acf-accordion-title *,
.fea-ui-overlay-wrapper .acf-field-accordion.-open .acf-accordion-title span {
    color: #ffffff !important;
}

.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.active-tab .acf-accordion-title:hover,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.-open .acf-accordion-title:hover {
    background: #358942 !important;
    color: #ffffff !important;
}

/* DERNIER ACCORDÉON "ENREGISTRER" (fond rouge permanent) */
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.ui-overlay-save-tab .acf-accordion-title,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion:last-child .acf-accordion-title {
    background: #9a0000 !important;
    color: #ffffff !important;
    border-color: #9a0000 !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
}

.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.ui-overlay-save-tab .acf-accordion-title,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.ui-overlay-save-tab .acf-accordion-title *,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.ui-overlay-save-tab .acf-accordion-title span,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.ui-overlay-save-tab .acf-accordion-title label,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion:last-child .acf-accordion-title,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion:last-child .acf-accordion-title *,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion:last-child .acf-accordion-title span,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion:last-child .acf-accordion-title label {
    color: #ffffff !important;
}

.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.ui-overlay-save-tab .acf-accordion-title:hover,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion:last-child .acf-accordion-title:hover {
    background: #9a0000 !important;
    border-color: #9a0000 !important;
    color: #ffffff !important;
}

/* =========================================================
   BOUTON ENREGISTRER (visible uniquement quand l'accordéon "Enregistrez votre annonce" est ouvert)
   ========================================================= */
.fea-ui-overlay-wrapper .acf-form-submit,
.fea-ui-overlay-wrapper .fea-submit-button {
    display: none !important;
    margin-top: 30px;
}
.fea-ui-overlay-wrapper.save-accordion-opened .acf-form-submit,
.fea-ui-overlay-wrapper.save-accordion-opened .fea-submit-button {
    display: block !important;
}
.fea-ui-overlay-wrapper.save-accordion-opened .fea-submit-button {
    display: inline-block !important;
}

/* Bouton Enregistrer lorsqu'il est à l'intérieur de l'accordéon "Enregistrez votre annonce" */
.fea-ui-overlay-wrapper .acf-accordion-content .acf-form-submit,
.fea-ui-overlay-wrapper .acf-accordion-content .fea-submit-button {
    margin-top: 28px;
}

/* Nettoyer le conteneur du bouton dans l'accordéon (éviter un fond / trait blanc qui recouvre le bouton en responsive) */
.fea-ui-overlay-wrapper .acf-accordion-content .acf-form-submit {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
}
.fea-ui-overlay-wrapper .acf-accordion-content .acf-form-submit input[type="submit"],
.fea-ui-overlay-wrapper .acf-accordion-content .acf-form-submit button[type="submit"],
.fea-ui-overlay-wrapper .acf-accordion-content .fea-submit-button {
    width: 100%;
}

/* Forcer l'aspect du bouton Enregistrer dans l'accordéon, y compris en responsive */
.fea-ui-overlay-wrapper .acf-accordion-content .fea-submit-button {
    display: block !important;
    background: #205e03 !important;
    color: #ffffff !important;
    border: none !important;
    margin: 0 auto !important;
}
/* Message récapitulatif « Certains champs obligatoires... » uniquement (direct sous le bouton) : 70px d'espace */
.fea-ui-overlay-wrapper .acf-accordion-content > .acf-notice {
    position: relative;
    margin-top: 70px; /* espace sous le bouton Enregistrer */
    background: #9a0000 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 16px 44px 16px 20px !important;
    font-size: 1.05rem !important;
    line-height: 1.45 !important;
    font-weight: 500 !important;
    text-align: center !important;
}
.fea-ui-overlay-wrapper .acf-accordion-content > .acf-notice .acf-notice-dismiss,
.fea-ui-overlay-wrapper .acf-accordion-content > .acf-notice .acf-icon {
    color: #ffffff !important;
}
.fea-ui-overlay-wrapper .acf-accordion-content > .acf-notice .acf-notice-dismiss {
    position: absolute !important;
    top: 50%;
    right: 12px;
    transform: translateY(-50%);
}

/* Messages "Ce champ est obligatoire" sous chaque champ : rouge + texte blanc + marge 20px */
.fea-ui-overlay-wrapper .acf-field .acf-notice {
    margin-top: 20px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    min-height: 0 !important;
    background: #9a0000 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 999px !important;
}

.fea-ui-overlay-wrapper .acf-form-submit input[type="submit"],
.fea-ui-overlay-wrapper .acf-form-submit button[type="submit"],
.fea-ui-overlay-wrapper .fea-submit-button {
    background: #205e03 !important;
    color: #ffffff !important;
    border: none !important;
    padding: 15px 30px !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    text-shadow: none !important;
    box-shadow: 0 2px 6px rgba(61, 158, 80, 0.2) !important;
    width: 100%;
}

.fea-ui-overlay-wrapper .acf-form-submit input[type="submit"]:hover,
.fea-ui-overlay-wrapper .acf-form-submit button[type="submit"]:hover,
.fea-ui-overlay-wrapper .fea-submit-button:hover {
    background: #358942 !important;
    box-shadow: 0 4px 12px rgba(61, 158, 80, 0.3) !important;
    transform: translateY(-1px);
}

/* =========================================================
   BOUTONS ACF
   ========================================================= */
.fea-ui-overlay-wrapper .acf-button,
.fea-ui-overlay-wrapper .acf-button-primary,
.fea-ui-overlay-wrapper .acf-button.button-primary {
    background: #205e03 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 10px 20px !important;
    font-weight: 500 !important;
    transition: all 0.2s ease !important;
}

.fea-ui-overlay-wrapper .acf-button:hover,
.fea-ui-overlay-wrapper .acf-button-primary:hover,
.fea-ui-overlay-wrapper .acf-button.button-primary:hover {
    background: #358942 !important;
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(61, 158, 80, 0.2) !important;
}

/* =========================================================
   ESPACEMENT ENTRE LES CHAMPS
   ========================================================= */
.fea-ui-overlay-wrapper .form-main-panel .acf-field {
    margin-bottom: 35px !important;
    margin-top: 0 !important;
}

.fea-ui-overlay-wrapper .form-main-panel .acf-field:last-child {
    margin-bottom: 0 !important;
}

.fea-ui-overlay-wrapper .form-main-panel .acf-field + .acf-field {
    margin-top: 0 !important;
}

/* =========================================================
   CHAMPS À 50% DE LARGEUR (CÔTE À CÔTE EN DESKTOP)
   ========================================================= */
.fea-ui-overlay-wrapper .acf-fields-row {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    width: 100%;
    margin-bottom: 0;
}

.fea-ui-overlay-wrapper .acf-fields-row .acf-field {
    flex: 0 0 calc(50% - 10px);
    min-width: 0;
    margin-bottom: 35px !important;
}

.fea-ui-overlay-wrapper .acf-fields-row .acf-field:last-child {
    margin-bottom: 35px !important;
}

/* Responsive : empiler les champs à 50% sur mobile (breakpoint d'origine) */
@media screen and (max-width: 768px) {
    .fea-ui-overlay-wrapper .acf-fields-row {
        flex-direction: column;
    }
    
    .fea-ui-overlay-wrapper .acf-fields-row .acf-field {
        flex: 1 1 100%;
    }
}

/* =========================================================
   CHAMPS INPUT - BORDURE VERTE
   ========================================================= */
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="text"],
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="number"],
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="email"],
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="url"],
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="tel"],
.fea-ui-overlay-wrapper .acf-form .acf-input textarea,
.fea-ui-overlay-wrapper .acf-form .acf-input select,
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="text"],
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="number"],
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="email"],
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="url"],
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="tel"],
.fea-ui-overlay-wrapper .acf-field .acf-input textarea,
.fea-ui-overlay-wrapper .acf-field .acf-input select {
    border: 1px solid #205e03 !important;
    border-radius: 6px;
    padding: 10px;
    transition: all 0.3s ease;
    background: #ffffff;
    height: 44px;
    box-sizing: border-box;
    line-height: 1.5;
}

.fea-ui-overlay-wrapper .acf-form .acf-input input[type="text"]:focus,
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="number"]:focus,
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="email"]:focus,
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="url"]:focus,
.fea-ui-overlay-wrapper .acf-form .acf-input textarea:focus,
.fea-ui-overlay-wrapper .acf-form .acf-input select:focus {
    border-color: #205e03 !important;
    outline: none;
    box-shadow: 0 0 0 3px rgba(61, 158, 80, 0.1);
}

/* =========================================================
   TEXTES INDICATIFS (PLACEHOLDERS) - NOIR
   ========================================================= */
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="text"]::placeholder,
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="number"]::placeholder,
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="email"]::placeholder,
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="url"]::placeholder,
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="tel"]::placeholder,
.fea-ui-overlay-wrapper .acf-form .acf-input textarea::placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="text"]::placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="number"]::placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="email"]::placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="url"]::placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="tel"]::placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input textarea::placeholder {
    color: #000000 !important;
    opacity: 1 !important;
}

/* Support pour les navigateurs plus anciens */
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="text"]::-webkit-input-placeholder,
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="number"]::-webkit-input-placeholder,
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="email"]::-webkit-input-placeholder,
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="url"]::-webkit-input-placeholder,
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="tel"]::-webkit-input-placeholder,
.fea-ui-overlay-wrapper .acf-form .acf-input textarea::-webkit-input-placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="text"]::-webkit-input-placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="number"]::-webkit-input-placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="email"]::-webkit-input-placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="url"]::-webkit-input-placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="tel"]::-webkit-input-placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input textarea::-webkit-input-placeholder {
    color: #000000 !important;
    opacity: 1 !important;
}

.fea-ui-overlay-wrapper .acf-form .acf-input input[type="text"]::-moz-placeholder,
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="number"]::-moz-placeholder,
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="email"]::-moz-placeholder,
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="url"]::-moz-placeholder,
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="tel"]::-moz-placeholder,
.fea-ui-overlay-wrapper .acf-form .acf-input textarea::-moz-placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="text"]::-moz-placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="number"]::-moz-placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="email"]::-moz-placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="url"]::-moz-placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="tel"]::-moz-placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input textarea::-moz-placeholder {
    color: #000000 !important;
    opacity: 1 !important;
}

.fea-ui-overlay-wrapper .acf-form .acf-input input[type="text"]:-ms-input-placeholder,
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="number"]:-ms-input-placeholder,
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="email"]:-ms-input-placeholder,
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="url"]:-ms-input-placeholder,
.fea-ui-overlay-wrapper .acf-form .acf-input input[type="tel"]:-ms-input-placeholder,
.fea-ui-overlay-wrapper .acf-form .acf-input textarea:-ms-input-placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="text"]:-ms-input-placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="number"]:-ms-input-placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="email"]:-ms-input-placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="url"]:-ms-input-placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input input[type="tel"]:-ms-input-placeholder,
.fea-ui-overlay-wrapper .acf-field .acf-input textarea:-ms-input-placeholder {
    color: #000000 !important;
    opacity: 1 !important;
}

/* =========================================================
   LABELS DES CHAMPS
   ========================================================= */
.fea-ui-overlay-wrapper .acf-field .acf-label label,
.fea-ui-overlay-wrapper .acf-field .acf-label,
.fea-ui-overlay-wrapper .acf-field label {
    font-weight: 700 !important;
    color: #205e03 !important;
    font-size: 15px;
    margin-bottom: 12px;
    display: block;
    font-family: inherit;
    line-height: 1.4;
}

/* =========================================================
   MESSAGES D'INSTRUCTION DES CHAMPS
   (style typographique uniquement)
   ========================================================= */
.fea-ui-overlay-wrapper .acf-field .acf-instructions,
.fea-ui-overlay-wrapper .acf-field .description,
.fea-ui-overlay-wrapper .acf-field p.description {
    color: #000000 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.6 !important;
    margin-top: 4px !important;
    margin-bottom: 10px !important;
    font-style: normal !important;
}

/* =========================================================
   CHAMPS ACF DE TYPE "MESSAGE"
   Préserver les sauts de ligne comme définis en back-end
   ========================================================= */
.fea-ui-overlay-wrapper .acf-field[data-type="message"] .acf-input,
.fea-ui-overlay-wrapper .acf-field[data-type="message"] .acf-input *,
.fea-ui-overlay-wrapper .acf-field[data-type="message"] .acf-message,
.fea-ui-overlay-wrapper .acf-field[data-type="message"] p,
.fea-ui-overlay-wrapper .acf-field[data-type="message"] div {
    white-space: pre-line !important;
    color: #000000 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.6 !important;
}

.fea-ui-overlay-wrapper .acf-input-prepend,
.fea-ui-overlay-wrapper .acf-input-append {
    white-space: pre-line !important;
    line-height: 1.7 !important;
}

/* WYSIWYG : NE PAS toucher au layout natif (juste marges plus bas) */

/* Champ Vrai/Faux : forcer le message en noir */
/* Approche agressive : forcer TOUT le contenu du label en noir, puis restaurer le vert uniquement pour le premier texte */
.fea-ui-overlay-wrapper .acf-field[data-type="true_false"] .acf-label,
.fea-ui-overlay-wrapper .acf-field[data-type="true_false"] .acf-label *,
.fea-ui-overlay-wrapper .acf-field[data-type="true_false"] .acf-message,
.fea-ui-overlay-wrapper .acf-field[data-type="true_false"] .description,
.fea-ui-overlay-wrapper .acf-field[data-type="true_false"] p.description {
    color: #000000 !important;
    font-weight: 500 !important;
}

/* Forcer spécifiquement le label complet en noir d'abord */
.fea-ui-overlay-wrapper .acf-field[data-type="true_false"] .acf-label label {
    color: #000000 !important;
    font-weight: 500 !important;
}

/* Puis restaurer le vert UNIQUEMENT pour le premier texte du label (le libellé principal) */
/* Utiliser ::first-line ou une approche avec JavaScript pour séparer */
.fea-ui-overlay-wrapper .acf-field[data-type="true_false"] .acf-label label::first-line {
    color: #205e03 !important;
    font-weight: 700 !important;
}

/* Alternative : cibler les spans et éléments enfants */
.fea-ui-overlay-wrapper .acf-field[data-type="true_false"] .acf-label label span,
.fea-ui-overlay-wrapper .acf-field[data-type="true_false"] .acf-label label em,
.fea-ui-overlay-wrapper .acf-field[data-type="true_false"] .acf-label label strong,
.fea-ui-overlay-wrapper .acf-field[data-type="true_false"] .acf-label label .acf-message-text {
    color: #000000 !important;
    font-weight: 500 !important;
}

/* Styles pour les spans créés par JavaScript */
.fea-ui-overlay-wrapper .acf-field[data-type="true_false"] .acf-true-false-main-label {
    color: #205e03 !important;
    font-weight: 700 !important;
}

.fea-ui-overlay-wrapper .acf-field[data-type="true_false"] .acf-true-false-message {
    color: #000000 !important;
    font-weight: 500 !important;
}

/* =========================================================
   CHAMP VRAI/FAUX SPÉCIFIQUE : tf-multi-annonces
   Forcer la ligne avec la case à cocher en noir
   ========================================================= */
/* Garder le titre (dans .acf-label) avec le style global (vert) */
.fea-ui-overlay-wrapper .acf-field.tf-multi-annonces > .acf-label > label {
    color: #205e03 !important;
    font-weight: 700 !important;
}

/* Forcer la ligne de la case à cocher en noir */
.fea-ui-overlay-wrapper .acf-field.tf-multi-annonces .acf-input label,
.fea-ui-overlay-wrapper .acf-field.tf-multi-annonces .acf-input label *,
.fea-ui-overlay-wrapper .acf-field.tf-multi-annonces .acf-input .acf-switch,
.fea-ui-overlay-wrapper .acf-field.tf-multi-annonces .acf-input .acf-switch * {
    color: #000000 !important;
    font-weight: 500 !important;
}

/* Cibler explicitement le <span class="message"> fourni par ACF */
.fea-ui-overlay-wrapper .acf-field.tf-multi-annonces .acf-input .message,
.fea-ui-overlay-wrapper .acf-field.tf-multi-annonces .acf-input span.message {
    color: #000000 !important;
    font-weight: 500 !important;
}

/* =========================================================
   TEXTAREA - HAUTEUR MINIMALE GLOBALE
   (inclut le paragraphe d'introduction)
   ========================================================= */
.fea-ui-overlay-wrapper .acf-field[data-type="textarea"] textarea,
.fea-ui-overlay-wrapper .acf-form textarea {
    min-height: 180px !important;
    line-height: 1.5 !important;
}

/* (plus de manipulation de structure ici : gérée côté JS au cas par cas) */

/* =========================================================
   ESPACEMENT ENTRE ONGLETS ET WYSIWYG
   ========================================================= */
/* Ajouter un espace clair entre onglets et éditeurs WYSIWYG */
.fea-ui-overlay-wrapper .acf-field.acf-field-tab + .acf-field.acf-field-wysiwyg,
.fea-ui-overlay-wrapper .acf-field[data-type="tab"] + .acf-field[data-type="wysiwyg"] {
    margin-top: 35px !important;
}

/* Tous les éditeurs WYSIWYG ont un espacement vertical confortable */
/* IMPORTANT : S'assurer que les éditeurs WYSIWYG restent cliquables */
.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg,
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] {
    pointer-events: auto !important;
    position: relative !important;
    z-index: 1 !important;
}

.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg *,
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] * {
    pointer-events: auto !important;
}

.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-container,
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-container *,
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-edit-area,
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-edit-area iframe {
    pointer-events: auto !important;
    touch-action: manipulation !important;
    -webkit-touch-callout: none !important;
    -webkit-user-select: text !important;
    user-select: text !important;
}

/* DÉSACTIVÉ : En mode responsive, masquer le bouton texte et forcer le mode visuel */
/* On laisse Frontend Admin gérer les WYSIWYG naturellement, sans interférer avec les boutons */
/*
@media screen and (max-width: 1024px) {
    /* Masquer le bouton de basculement texte en responsive */
    .fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .wp-switch-editor.switch-html,
    .fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .wp-switch-editor.switch-html {
        display: none !important;
    }
    
    /* S'assurer que le bouton visuel est toujours actif */
    .fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .wp-switch-editor.switch-tmce,
    .fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .wp-switch-editor.switch-tmce {
        display: inline-block !important;
    }
*/
    
/* DÉSACTIVÉ : En mode responsive, s'assurer que les WYSIWYG dans la sidebar sont cliquables */
/* On laisse Frontend Admin gérer les WYSIWYG naturellement, sans forcer des styles avec !important */
/*
    /* Champ WYSIWYG lui-même */
    .fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"],
    .fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg {
        pointer-events: auto !important;
        position: relative !important;
        z-index: 10 !important;
        overflow: visible !important;
    }
    
    /* Container TinyMCE */
    .fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-container,
    .fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-container {
        pointer-events: auto !important;
        position: relative !important;
        z-index: 999 !important;
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        overflow: visible !important;
    }
    
    /* Zone d'édition TinyMCE */
    .fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-edit-area,
    .fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-edit-area {
        pointer-events: auto !important;
        position: relative !important;
        z-index: 1000 !important;
        display: block !important;
        visibility: visible !important;
        overflow: visible !important;
    }
    
    /* Iframe TinyMCE - CRITIQUE pour l'interactivité */
    .fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] .mce-edit-area iframe,
    .fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg .mce-edit-area iframe {
        pointer-events: auto !important;
        touch-action: manipulation !important;
        -webkit-touch-callout: none !important;
        -webkit-user-select: text !important;
        user-select: text !important;
        position: relative !important;
        z-index: 1001 !important;
        display: block !important;
        visibility: visible !important;
        width: 100% !important;
        min-height: 200px !important;
        overflow: visible !important;
    }
    
    /* S'assurer qu'aucun élément parent ne bloque les interactions */
    .fea-ui-overlay-wrapper .form-sidebar .acf-field[data-type="wysiwyg"],
    .fea-ui-overlay-wrapper .form-sidebar .acf-field.acf-field-wysiwyg {
        pointer-events: auto !important;
        position: relative !important;
        z-index: 10 !important;
        overflow: visible !important;
    }
    
    .fea-ui-overlay-wrapper .form-sidebar .acf-field[data-type="wysiwyg"] *,
    .fea-ui-overlay-wrapper .form-sidebar .acf-field.acf-field-wysiwyg * {
        pointer-events: auto !important;
    }
    
    /* S'assurer que les éléments TinyMCE ne sont pas masqués */
    .fea-ui-overlay-wrapper .form-sidebar .acf-field[data-type="wysiwyg"] .mce-container,
    .fea-ui-overlay-wrapper .form-sidebar .acf-field[data-type="wysiwyg"] .mce-edit-area,
    .fea-ui-overlay-wrapper .form-sidebar .acf-field[data-type="wysiwyg"] .mce-edit-area iframe,
    .fea-ui-overlay-wrapper .form-sidebar .acf-field.acf-field-wysiwyg .mce-container,
    .fea-ui-overlay-wrapper .form-sidebar .acf-field.acf-field-wysiwyg .mce-edit-area,
    .fea-ui-overlay-wrapper .form-sidebar .acf-field.acf-field-wysiwyg .mce-edit-area iframe {
        pointer-events: auto !important;
        touch-action: manipulation !important;
        -webkit-touch-callout: none !important;
        -webkit-user-select: text !important;
        user-select: text !important;
        position: relative !important;
        z-index: 1001 !important;
        display: block !important;
        visibility: visible !important;
        overflow: visible !important;
    }
*/
}

.fea-ui-overlay-wrapper .acf-field.acf-field-wysiwyg,
.fea-ui-overlay-wrapper .acf-field[data-type="wysiwyg"] {
    margin-top: 30px !important;
    margin-bottom: 40px !important;
}

/* Champs WYSIWYG marqués comme doublons (formulaire de modification) : totalement masqués */
.fea-ui-overlay-wrapper .acf-field.ui-overlay-wysiwyg-duplicate {
    display: none !important;
}

/* Accordéon WYSIWYG ouvert : zone d'édition pleine largeur */
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.has-wysiwyg.active-tab .acf-field[data-type="wysiwyg"],
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.has-wysiwyg.-open .acf-field[data-type="wysiwyg"] {
    width: 100% !important;
    max-width: 100% !important;
}

.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.has-wysiwyg.active-tab .acf-field[data-type="wysiwyg"] .mce-toolbar,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.has-wysiwyg.-open .acf-field[data-type="wysiwyg"] .mce-toolbar,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.has-wysiwyg.active-tab .acf-field[data-type="wysiwyg"] .mce-edit-area,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.has-wysiwyg.-open .acf-field[data-type="wysiwyg"] .mce-edit-area,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.has-wysiwyg.active-tab .acf-field[data-type="wysiwyg"] .mce-container,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.has-wysiwyg.-open .acf-field[data-type="wysiwyg"] .mce-container {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.has-wysiwyg.active-tab .acf-field[data-type="wysiwyg"] .mce-edit-area iframe,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.has-wysiwyg.-open .acf-field[data-type="wysiwyg"] .mce-edit-area iframe {
    width: 100% !important;
}

/* Contenu sous l'accordéon (frère) : iframes WYSIWYG cliquables */
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.active-tab + .acf-accordion-content .acf-field[data-type="wysiwyg"] .mce-edit-area iframe,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.-open + .acf-accordion-content .acf-field[data-type="wysiwyg"] .mce-edit-area iframe,
.fea-ui-overlay-wrapper .form-main-panel .panel-body .acf-accordion-content .acf-field[data-type="wysiwyg"] .mce-edit-area iframe {
    pointer-events: auto !important;
    z-index: 10;
}

/* Onglets ACF dans le contenu accordéon : pleine largeur */
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.active-tab .acf-accordion-content .acf-tab-wrap,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.-open .acf-accordion-content .acf-tab-wrap,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.active-tab .acf-accordion-content .acf-tab-group,
.fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.-open .acf-accordion-content .acf-tab-group {
    width: 100% !important;
}

/* =========================================================
   CALENDRIER (styles du wizard)
   ========================================================= */

/* Masquer l'interface ACF par défaut du répéteur calendrier
   Garder uniquement le bouton "Ajouter un élément" visible.
   Cible : répéteur contenant l'input hidden field_69187c259540c (clé du champ calendrier).
   :has() permet de masquer sans dépendre du JS, desktop + responsive. */
.fea-ui-overlay-wrapper .acf-repeater:has(input.acf-repeater-hidden-input[name*="field_69187c259540c"]) > table,
.fea-ui-overlay-wrapper .acf-repeater:has(input.acf-repeater-hidden-input[name*="field_69187c259540c"]) table.acf-table,
.fea-ui-overlay-wrapper .ui-overlay-cal-repeater > table,
.fea-ui-overlay-wrapper .ui-overlay-cal-repeater table:not(.cal-summary-table),
.fea-ui-overlay-wrapper .ui-overlay-cal-repeater .acf-table {
    display: none !important;
}

.fea-ui-overlay-wrapper .acf-field[data-name="calendrier"],
.fea-ui-overlay-wrapper .acf-field[data-name="calendrier"] .acf-input {
    width: 100%;
    max-width: 100%;
}

.fea-ui-overlay-wrapper .acf-field[data-name="calendrier"] .acf-actions {
    text-align: left;
    padding: 20px 0;
}

.fea-ui-overlay-wrapper .acf-field[data-name="calendrier"] .acf-actions .acf-button {
    background: #205e03 !important;
    color: white !important;
    padding: 15px 25px !important;
    border-radius: 8px !important;
    text-shadow: none !important;
    box-shadow: 0 2px 4px rgba(61, 158, 80, 0.2) !important;
    transition: all 0.2s ease !important;
}

.fea-ui-overlay-wrapper .acf-field[data-name="calendrier"] .acf-actions .acf-button:hover {
    background: #358942 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(61, 158, 80, 0.3) !important;
}

/* Masquer l'icône du datepicker par défaut */
.ui-datepicker-trigger,
.ui-datepicker-trigger img {
    display: none !important;
}

/* =========================================================
   WIZARD OVERLAY - MODAL
   ========================================================= */
#wizard-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    z-index: 999999;
    align-items: center;
    justify-content: center;
}

#wizard-card {
    width: 90% !important;
    max-width: 600px !important;
    background: #ffffff !important;
    padding: 25px !important;
    border-radius: 15px !important;
    position: relative !important;
}

#wiz-close {
    position: absolute !important;
    top: 10px !important;
    right: 10px !important;
    border: none !important;
    background: none !important;
    font-size: 20px !important;
    cursor: pointer !important;
    color: #666 !important;
    padding: 0 !important;
    width: 30px !important;
    height: 30px !important;
    line-height: 30px !important;
    text-align: center !important;
}

#wiz-close:hover {
    color: #205e03 !important;
}

#wizard-card h3 {
    text-align: center !important;
    color: #205e03 !important;
    margin-bottom: 20px !important;
    margin-top: 0 !important;
    font-size: 18px !important;
    font-weight: 600 !important;
}

/* =========================================================
   CALENDRIER - STYLES COMPLETS
   ========================================================= */
#wizard-calendar {
    width: 100% !important;
    margin-bottom: 20px !important;
}

#wizard-calendar .ui-datepicker {
    width: 100% !important;
    max-width: 100% !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 8px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
    background: #ffffff !important;
}

#wizard-calendar .ui-datepicker table {
    width: 100% !important;
    background: #ffffff !important;
}

#wizard-calendar .ui-datepicker td {
    width: 14.28% !important;
    background: #ffffff !important;
}

#wizard-calendar .ui-datepicker td a {
    width: 100% !important;
    padding: 8px 0 !important;
    text-align: center !important;
    border-radius: 4px !important;
    transition: all 0.2s ease !important;
    background: #ffffff !important;
    color: #333 !important;
}

#wizard-calendar .ui-datepicker-header {
    background: #ffffff !important;
    border-bottom: 1px solid #e0e0e0 !important;
    border-radius: 8px 8px 0 0 !important;
}

#wizard-calendar .ui-datepicker-title {
    color: #205e03 !important;
    font-weight: 600 !important;
}

#wizard-calendar .ui-datepicker-prev,
#wizard-calendar .ui-datepicker-next {
    color: #205e03 !important;
    background: #ffffff !important;
}

#wizard-calendar .ui-datepicker-prev:hover,
#wizard-calendar .ui-datepicker-next:hover {
    background: rgba(61, 158, 80, 0.1) !important;
}

/* =========================================================
   SÉLECTION VISUELLE DES DATES - STYLES RENFORCÉS
   ========================================================= */

/* Plage sélectionnée : fond vert clair pour toutes les dates entre début et fin */
#wizard-calendar .ui-datepicker td a.cal-day-selected-range,
#wizard-card .ui-datepicker td a.cal-day-selected-range,
#ui-datepicker-div .ui-datepicker td a.cal-day-selected-range,
#ui-datepicker-div td a.cal-day-selected-range,
.ui-datepicker td a.cal-day-selected-range,
.ui-datepicker-calendar td a.cal-day-selected-range,
#wizard-calendar td a.cal-day-selected-range,
#wizard-card td a.cal-day-selected-range {
    background: rgba(61, 158, 80, 0.25) !important;
    background-color: rgba(61, 158, 80, 0.25) !important;
    color: #205e03 !important;
    font-weight: 600 !important;
    border: 2px solid rgba(61, 158, 80, 0.4) !important;
    border-color: rgba(61, 158, 80, 0.4) !important;
    border-radius: 4px !important;
    display: block !important;
}

/* Date de début : cercle vert foncé avec animation */
#wizard-calendar .ui-datepicker td a.cal-day-selected-start,
#wizard-card .ui-datepicker td a.cal-day-selected-start,
#ui-datepicker-div .ui-datepicker td a.cal-day-selected-start,
#ui-datepicker-div td a.cal-day-selected-start,
.ui-datepicker td a.cal-day-selected-start,
.ui-datepicker-calendar td a.cal-day-selected-start,
#wizard-calendar td a.cal-day-selected-start,
#wizard-card td a.cal-day-selected-start,
.ui-state-default.cal-day-selected-start,
a.ui-state-default.cal-day-selected-start {
    background: #205e03 !important;
    background-color: #205e03 !important;
    color: #ffffff !important;
    font-weight: bold !important;
    font-size: 14px !important;
    border-radius: 50% !important;
    box-shadow: 0 3px 8px rgba(32, 94, 3, 0.5) !important;
    border: 3px solid #ffffff !important;
    border-color: #ffffff !important;
    width: 32px !important;
    height: 32px !important;
    line-height: 26px !important;
    margin: 0 auto !important;
    display: block !important;
    padding: 0 !important;
    text-align: center !important;
    animation: pulse-date 1.2s ease-in-out infinite !important;
}

/* Date de fin : cercle vert moyen avec bordure blanche */
#wizard-calendar .ui-datepicker td a.cal-day-selected-end,
#wizard-card .ui-datepicker td a.cal-day-selected-end,
#ui-datepicker-div .ui-datepicker td a.cal-day-selected-end,
#ui-datepicker-div td a.cal-day-selected-end,
.ui-datepicker td a.cal-day-selected-end,
.ui-datepicker-calendar td a.cal-day-selected-end,
#wizard-calendar td a.cal-day-selected-end,
#wizard-card td a.cal-day-selected-end,
.ui-state-default.cal-day-selected-end,
a.ui-state-default.cal-day-selected-end {
    background: #358942 !important;
    background-color: #358942 !important;
    color: #ffffff !important;
    font-weight: bold !important;
    font-size: 14px !important;
    border-radius: 50% !important;
    box-shadow: 0 3px 8px rgba(53, 137, 66, 0.5) !important;
    border: 3px solid #ffffff !important;
    border-color: #ffffff !important;
    width: 32px !important;
    height: 32px !important;
    line-height: 26px !important;
    margin: 0 auto !important;
    display: block !important;
    padding: 0 !important;
    text-align: center !important;
}

/* Périodes existantes */
.ui-datepicker td a.cal-day-dispo {
    background: rgba(200, 246, 213, 0.25) !important;
    color: #22543d !important;
}

.ui-datepicker td a.cal-day-loue {
    background: rgba(254, 215, 215, 0.3) !important;
    color: #7b1f1f !important;
}

.ui-datepicker td a.cal-day-conflict {
    box-shadow: 0 0 0 2px #9a0000 inset !important;
    border: 1px solid #9a0000 !important;
}

.ui-datepicker td a.ui-state-default {
    color: #333 !important;
    border: 1px solid transparent !important;
    background: #ffffff !important;
}

.ui-datepicker td a.ui-state-default:hover {
    background: rgba(61, 158, 80, 0.08) !important;
    border-color: rgba(61, 158, 80, 0.15) !important;
}

.ui-datepicker td.ui-datepicker-other-month a {
    color: #ccc !important;
    background: #ffffff !important;
}

@keyframes pulse-date {
    0%, 100% { 
        transform: scale(1.1);
        box-shadow: 0 3px 8px rgba(32, 94, 3, 0.5);
    }
    50% { 
        transform: scale(1.15);
        box-shadow: 0 4px 12px rgba(32, 94, 3, 0.7);
    }
}

/* =========================================================
   WIZARD CALENDRIER - CHAMPS TARIF
   ========================================================= */

/* Conteneur des champs tarif : largeur EXACTEMENT identique au calendrier */
#wiz-tarif-container {
    display: flex !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 10px !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

#wiz-tarif,
#wiz-tarif-nuit {
    flex: 1 1 calc(50% - 5px) !important; /* 50% moins la moitié du gap */
    min-width: 0 !important; /* Permettre le rétrécissement */
    padding: 10px !important;
    border: 1px solid #ddd !important;
    border-radius: 5px !important;
    box-sizing: border-box !important;
    width: auto !important;
    max-width: none !important;
}

#wiz-tarif:focus,
#wiz-tarif-nuit:focus {
    outline: none !important;
    border-color: #205e03 !important;
    box-shadow: 0 0 0 3px rgba(32, 94, 3, 0.1) !important;
}

/* Label checkbox "Période louée ?" */
#wizard-card label {
    display: block !important;
    margin-bottom: 15px !important;
    font-size: 14px !important;
    color: #333 !important;
    cursor: pointer !important;
}

#wiz-loue {
    margin-right: 6px !important;
    width: 18px !important;
    height: 18px !important;
    cursor: pointer !important;
    accent-color: #205e03 !important;
}

/* Bouton "AJOUTER LA PÉRIODE" */
#wiz-submit {
    width: 100% !important;
    background: #205e03 !important;
    color: white !important;
    border: none !important;
    padding: 15px !important;
    border-radius: 8px !important;
    font-weight: bold !important;
    cursor: pointer !important;
    font-size: 16px !important;
    transition: all 0.2s ease !important;
}

#wiz-submit:hover {
    background: #358942 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(61, 158, 80, 0.3) !important;
}

#wiz-submit:active {
    transform: translateY(0);
}

/* =========================================================
   TABLEAU RÉCAPITULATIF DES PÉRIODES (pleine largeur)
   ========================================================= */
.fea-ui-overlay-wrapper .cal-summary-wrapper {
    margin-top: 20px;
    padding: 15px;
    border-radius: 10px;
    border: 1px solid #e8e8e8;
    background: #ffffff;
    grid-column: 1 / -1;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.fea-ui-overlay-wrapper .cal-summary-wrapper h4 {
    margin: 0 0 10px;
    font-size: 15px;
    font-weight: 600;
    color: #205e03;
}

.fea-ui-overlay-wrapper .cal-summary-alert {
    margin-bottom: 10px;
    font-size: 13px;
    color: #9a0000;
    display: none;
    padding: 8px 12px;
    background: #fff5f5;
    border-radius: 5px;
    border-left: 3px solid #9a0000;
}

.fea-ui-overlay-wrapper .cal-summary-alert.has-conflict {
    display: block;
}

/* Conteneur du tableau : pleine largeur du bloc récapitulatif */
.fea-ui-overlay-wrapper .cal-summary-table-wrap {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto;
    box-sizing: border-box !important;
}

.fea-ui-overlay-wrapper .cal-summary-table {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed;
    border-collapse: collapse;
    font-size: 13px;
    background: #ffffff;
    border-radius: 6px;
    overflow: hidden;
    display: table !important;
    box-sizing: border-box !important;
}

/* Parent du récapitulatif : laisser prendre toute la largeur */
.fea-ui-overlay-wrapper .acf-field:has(.cal-summary-wrapper),
.fea-ui-overlay-wrapper .acf-accordion-content:has(.cal-summary-wrapper) {
    width: 100% !important;
    max-width: 100% !important;
}

.fea-ui-overlay-wrapper .cal-summary-table thead th {
    text-align: left;
    padding: 10px 8px;
    background: #f9f9f9;
    border-bottom: 2px solid #e8e8e8;
    font-weight: 600;
    color: #555 !important;
    font-size: 12px !important;
}

.fea-ui-overlay-wrapper .cal-summary-table tbody td {
    padding: 8px;
    border-bottom: 1px solid #f0f0f0;
    vertical-align: middle;
    background: #ffffff;
}

/* Périodes libres : fond vert clair */
.fea-ui-overlay-wrapper .cal-summary-table tr.status-dispo td {
    background: #f0fff4 !important;
    color: #22543d !important;
}

/* Périodes louées : fond rouge clair */
.fea-ui-overlay-wrapper .cal-summary-table tr.status-loue td {
    background: #fff5f5 !important;
    color: #742a2a !important;
}

/* Conflits : bordure rouge */
.fea-ui-overlay-wrapper .cal-summary-table tr.has-conflict td {
    box-shadow: inset 0 0 0 1px #9a0000 !important;
}

.fea-ui-overlay-wrapper .cal-summary-table .cal-row-edit {
    background: #205e03;
    color: #ffffff;
    display: inline-block;
    padding: 6px 12px;
    margin-right: 4px;
    font-size: 12px;
    border-radius: 4px;
    border: none;
    cursor: pointer;
    transition: all 0.2s ease;
    font-weight: 500;
}

.fea-ui-overlay-wrapper .cal-summary-table .cal-row-delete {
    background: #9a0000;
    color: #ffffff;
    display: inline-block;
    padding: 6px 12px;
    margin-right: 4px;
    font-size: 12px;
    border-radius: 4px;
    border: none;
    cursor: pointer;
    transition: all 0.2s ease;
    font-weight: 500;
}

.fea-ui-overlay-wrapper .cal-summary-table .cal-row-edit:hover,
.fea-ui-overlay-wrapper .cal-summary-table .cal-row-delete:hover {
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
}

.fea-ui-overlay-wrapper .cal-summary-table .cal-row-edit:hover {
    background: #358942;
}

.fea-ui-overlay-wrapper .cal-summary-table .cal-row-delete:hover {
    background: #7a0000;
}

/* =========================================================
   TABLEAU RÉCAPITULATIF - RESPONSIVE (pleine largeur)
   ========================================================= */
@media (max-width: 1024px) {
    /* cal-summary-table-wrap : pleine largeur du conteneur */
    .fea-ui-overlay-wrapper .cal-summary-table-wrap {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    /* cal-summary-table : pleine largeur */
    .fea-ui-overlay-wrapper .cal-summary-table {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    .fea-ui-overlay-wrapper .cal-summary-table thead {
        display: none;
    }

    .fea-ui-overlay-wrapper .cal-summary-table tbody,
    .fea-ui-overlay-wrapper .cal-summary-table tr {
        display: block;
        width: 100%;
    }

    .fea-ui-overlay-wrapper .cal-summary-table tr {
        margin-bottom: 12px;
        border: 1px solid #e8e8e8;
        border-radius: 8px;
        overflow: hidden;
    }

    /* Cellules : grille 2 colonnes pour que la colonne valeurs prenne l'espace restant (évite troncature) */
    .fea-ui-overlay-wrapper .cal-summary-table tbody td {
        display: grid !important;
        grid-template-columns: minmax(0, auto) 1fr;
        gap: 10px;
        align-items: center;
        padding: 8px 12px;
        border-bottom: 1px solid #f0f0f0;
        width: 100%;
        box-sizing: border-box;
    }

    .fea-ui-overlay-wrapper .cal-summary-table tbody td:before {
        content: attr(data-label);
        font-weight: 600;
        color: #444;
    }

    /* Contenu valeur (2e colonne) : peut utiliser toute la largeur restante */
    .fea-ui-overlay-wrapper .cal-summary-table tbody td > * {
        min-width: 0;
    }

    .fea-ui-overlay-wrapper .cal-summary-table tbody td:last-child {
        border-bottom: none;
    }

    .fea-ui-overlay-wrapper .cal-summary-table .cal-actions-cell {
        display: grid !important;
        grid-template-columns: minmax(0, auto) 1fr;
        gap: 10px;
        align-items: center;
    }

    .fea-ui-overlay-wrapper .cal-summary-table .cal-actions-cell .cal-row-edit,
    .fea-ui-overlay-wrapper .cal-summary-table .cal-actions-cell .cal-row-delete {
        grid-column: 2;
    }
}

.fea-ui-overlay-wrapper .cal-statut-cell {
    white-space: nowrap;
}

.fea-ui-overlay-wrapper .cal-statut-cell label {
    margin: 0;
    font-weight: normal;
}

.fea-ui-overlay-wrapper .cal-statut-cell input[type="checkbox"] {
    cursor: pointer;
}

.fea-ui-overlay-wrapper .cal-actions-cell {
    white-space: nowrap;
    min-width: 200px;
}

.fea-ui-overlay-wrapper .cal-summary-table thead th:last-child {
    min-width: 200px;
}

/* =========================================================
   BOUTONS DE TÉLÉCHARGEMENT
   ========================================================= */
.fea-ui-overlay-wrapper .custom-upload-button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 15px 25px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-align: center !important;
    border: 1px solid #205e03 !important;
    border-radius: 6px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    width: 350px !important;
    min-width: 350px !important;
    margin: 10px 0 !important;
    background: #205e03 !important;
    color: #ffffff !important;
    height: 44px !important;
    box-sizing: border-box !important;
}

.fea-ui-overlay-wrapper .custom-upload-button:hover {
    background: #358942;
    border-color: #358942;
    box-shadow: 0 2px 4px rgba(32, 94, 3, 0.2);
}

/* =========================================================
   BOUTONS IMAGE PRINCIPALE ET GALERIE PHOTOS
   Padding spécifique pour les champs avec classe btn-image-principale
   ========================================================= */
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-button,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-button-primary,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-button.button-primary,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale button.acf-button,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale a.acf-button,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale button.button-primary,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale a.button-primary,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .custom-upload-button {
    padding: 15px 25px !important;
    width: 350px !important;
    min-width: 350px !important;
    text-align: center !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}

/* Cibler aussi les boutons dans .acf-input et .acf-actions
   MAIS UNIQUEMENT ceux qui ne sont PAS dans un uploader avec valeur (has-value) */
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-input:not(.has-value) .acf-button,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-input:not(.has-value) .acf-button-primary,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-actions:not(.has-value) .acf-button,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-actions:not(.has-value) .acf-button-primary,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-input:not(.has-value) button:not(.acf-icon):not(.acf-icon-remove):not(.acf-icon-edit),
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-actions:not(.has-value) button:not(.acf-icon):not(.acf-icon-remove):not(.acf-icon-edit),
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-input .custom-upload-button,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale:not(:has(.acf-image-uploader.has-value)) .acf-input .acf-button,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale:not(:has(.acf-file-uploader.has-value)) .acf-input .acf-button {
    padding: 15px 25px !important;
    width: 350px !important;
    min-width: 350px !important;
    text-align: center !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}

/* Exception : EXCLURE les boutons post-téléchargement (dans .acf-image-uploader et .acf-file-uploader)
   Ces règles sont PLUS SPÉCIFIQUES et réinitialisent les styles pour les boutons de gestion */
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-image-uploader .acf-actions .acf-button,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-image-uploader .acf-actions .acf-button-primary,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-image-uploader .acf-actions button,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-image-uploader .acf-actions a,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-file-uploader .acf-actions .acf-button,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-file-uploader .acf-actions .acf-button-primary,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-file-uploader .acf-actions button,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-file-uploader .acf-actions a,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-image-uploader .acf-icon,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-image-uploader .acf-icon-remove,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-image-uploader .acf-icon-edit,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-file-uploader .acf-icon,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-file-uploader .acf-icon-remove,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-file-uploader .acf-icon-edit,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-image-uploader.has-value .acf-actions .acf-button,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-image-uploader.has-value .acf-actions button,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-file-uploader.has-value .acf-actions .acf-button,
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-file-uploader.has-value .acf-actions button {
    padding: 0 !important;
    width: auto !important;
    min-width: 0 !important;
    display: inline-block !important;
    align-items: initial !important;
    justify-content: initial !important;
    box-sizing: content-box !important;
    flex: none !important;
}

/* =========================================================
   BOUTON VIDÉO (même rendu que « Ajouter une image » / « 12 photos »)
   Cible le lien natif ACF « Ajouter une vidéo » pour en faire un bouton vert
   ========================================================= */
/* Bouton personnalisé créé par JS (si transformACFUploadFields est activé) */
.fea-ui-overlay-wrapper .acf-field.btn-video .custom-upload-button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 15px 25px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-align: center !important;
    border: 1px solid #205e03 !important;
    border-radius: 6px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    background: #205e03 !important;
    color: #ffffff !important;
    height: 44px !important;
    box-sizing: border-box !important;
    text-decoration: none !important;
    width: 350px !important;
    min-width: 350px !important;
    margin: 10px 0 !important;
}

.fea-ui-overlay-wrapper .acf-field.btn-video .custom-upload-button:hover {
    background: #358942 !important;
    border-color: #358942 !important;
    box-shadow: 0 2px 4px rgba(32, 94, 3, 0.2) !important;
}

/* Lien natif ACF « Ajouter une vidéo » : mêmes règles que les autres boutons (sans toucher au JS) */
.fea-ui-overlay-wrapper .acf-field.btn-video .acf-input a:not(.acf-icon),
.fea-ui-overlay-wrapper .acf-field.btn-video .acf-file-uploader .acf-actions a:not(.acf-icon):not(.acf-icon-remove):not(.acf-icon-edit),
.fea-ui-overlay-wrapper .acf-field.btn-video .acf-actions a:not(.acf-icon):not(.acf-icon-remove):not(.acf-icon-edit) {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 15px 25px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-align: center !important;
    border: 1px solid #205e03 !important;
    border-radius: 6px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    background: #205e03 !important;
    color: #ffffff !important;
    height: 44px !important;
    box-sizing: border-box !important;
    text-decoration: none !important;
    width: 350px !important;
    min-width: 350px !important;
    margin: 10px 0 !important;
}

.fea-ui-overlay-wrapper .acf-field.btn-video .acf-input a:not(.acf-icon):hover,
.fea-ui-overlay-wrapper .acf-field.btn-video .acf-file-uploader .acf-actions a:not(.acf-icon):not(.acf-icon-remove):not(.acf-icon-edit):hover,
.fea-ui-overlay-wrapper .acf-field.btn-video .acf-actions a:not(.acf-icon):not(.acf-icon-remove):not(.acf-icon-edit):hover {
    background: #358942 !important;
    border-color: #358942 !important;
    box-shadow: 0 2px 4px rgba(32, 94, 3, 0.2) !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

/* Exception : ne PAS forcer la largeur/padding sur les liens <a> bruts dans .acf-input de btn-image-principale
   (permet au lien texte de garder sa taille naturelle, sans devenir un gros bouton vert) */
.fea-ui-overlay-wrapper .acf-field.btn-image-principale .acf-input a {
    padding: 0 !important;
    width: auto !important;
    min-width: 0 !important;
    display: inline !important;
    align-items: initial !important;
    justify-content: initial !important;
    box-sizing: content-box !important;
}

/* Exception : EXCLURE les boutons post-téléchargement pour les champs de galerie
   (les boutons de suppression/modification dans les galeries ne doivent pas avoir les styles d'upload) */
.fea-ui-overlay-wrapper .acf-field[data-type="gallery"] .acf-gallery .acf-gallery-attachment .acf-icon,
.fea-ui-overlay-wrapper .acf-field[data-type="gallery"] .acf-gallery .acf-gallery-attachment .acf-icon-remove,
.fea-ui-overlay-wrapper .acf-field[data-type="gallery"] .acf-gallery .acf-gallery-attachment .acf-actions .acf-button,
.fea-ui-overlay-wrapper .acf-field[data-type="gallery"] .acf-gallery .acf-gallery-attachment .acf-actions button,
.fea-ui-overlay-wrapper .acf-field[data-name="galerie_photos"] .acf-gallery .acf-gallery-attachment .acf-icon,
.fea-ui-overlay-wrapper .acf-field[data-name="galerie_photos"] .acf-gallery .acf-gallery-attachment .acf-icon-remove,
.fea-ui-overlay-wrapper .acf-field[data-name="galerie_photos"] .acf-gallery .acf-gallery-attachment .acf-actions .acf-button,
.fea-ui-overlay-wrapper .acf-field[data-name="galerie_photos"] .acf-gallery .acf-gallery-attachment .acf-actions button {
    padding: 0 !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    display: inline-block !important;
    align-items: initial !important;
    justify-content: initial !important;
    box-sizing: content-box !important;
    margin: 0 !important;
}

/* =========================================================
   CONTENUS WYSIWYG EN DESKTOP
   Positionner visuellement dans le main-panel
   ========================================================= */
/* S'assurer que le container et le main-panel ont une position relative */
.fea-ui-overlay-wrapper .form-container-wrapper {
    position: relative;
}

.fea-ui-overlay-wrapper .form-main-panel {
    position: relative;
}

/* Champs ou wrappers ACF masqués (ex. onglet inactif) : ne pas utiliser display:none si contient un WYSIWYG */
.fea-ui-overlay-wrapper .acf-field.acf-hidden[data-type="wysiwyg"],
.fea-ui-overlay-wrapper .acf-field.acf-hidden:has(.acf-field[data-type="wysiwyg"]) {
    position: absolute !important;
    left: -9999px !important;
    top: 0 !important;
    width: 400px !important;
    height: 300px !important;
    overflow: hidden !important;
    visibility: hidden !important;
    pointer-events: none !important;
    opacity: 0 !important;
    display: block !important;
}

/* Masquage WYSIWYG-friendly : évite display:none qui casse TinyMCE */
.fea-ui-overlay-wrapper .acf-accordion-content.wysiwyg-tab-hidden {
    position: absolute !important;
    left: -9999px !important;
    top: 0 !important;
    width: 500px !important;
    height: 400px !important;
    overflow: hidden !important;
    visibility: hidden !important;
    pointer-events: none !important;
    opacity: 0 !important;
    /* Garder block pour que TinyMCE reste fonctionnel (display:none le casse) */
    display: block !important;
}

/* Desktop : tous les contenus sont dans panel-body (layout flex naturel, comme les autres onglets) */
@media screen and (min-width: 1025px) {
    /* Panel-body et son contenu : flexible, prend toute la largeur disponible */
    .fea-ui-overlay-wrapper .form-main-panel .panel-body {
        display: block;
        flex: 1;
        width: 100%;
        min-width: 0;
    }

    /* Contenu accordéon dans panel-body : layout flexible, pleine largeur (pas de display !important pour ne pas bloquer le show/hide JS) */
    .fea-ui-overlay-wrapper .form-main-panel .panel-body .acf-accordion-content {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    /* Champs et WYSIWYG dans le panel : pleine largeur */
    .fea-ui-overlay-wrapper .form-main-panel .panel-body .acf-accordion-content .acf-field,
    .fea-ui-overlay-wrapper .form-main-panel .panel-body .acf-accordion-content .acf-field[data-type="wysiwyg"] .mce-container,
    .fea-ui-overlay-wrapper .form-main-panel .panel-body .acf-accordion-content .acf-field[data-type="wysiwyg"] .mce-toolbar,
    .fea-ui-overlay-wrapper .form-main-panel .panel-body .acf-accordion-content .acf-field[data-type="wysiwyg"] .mce-edit-area {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Onglets ACF dans le panel : pleine largeur */
    .fea-ui-overlay-wrapper .form-main-panel .panel-body .acf-accordion-content .acf-tab-wrap,
    .fea-ui-overlay-wrapper .form-main-panel .panel-body .acf-accordion-content .acf-tab-group {
        width: 100% !important;
    }

    /* En desktop tout le contenu est dans panel-body, sidebar n'a que les titres */
    .fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion .acf-accordion-content {
        display: none !important;
    }
}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media screen and (max-width: 1024px) {
    .fea-ui-overlay-wrapper .form-container-wrapper {
        flex-direction: column;
        gap: 0;
    }
    
    .fea-ui-overlay-wrapper .form-sidebar {
        flex: 1 1 100%;
        width: 100%;
        position: relative;
        top: auto;
        padding: 15px;
        margin-bottom: 20px;
    }
    
    .fea-ui-overlay-wrapper .form-main-panel {
        flex: 1 1 100%;
        width: 100%;
        padding: 15px;
    }

    /* Panel visible en responsive (contenu toujours dedans, pas de déplacement = pas de perte de données) */
    .fea-ui-overlay-wrapper .form-main-panel .panel-body {
        display: block !important;
        width: 100%;
        max-width: 100%;
    }

    /* En responsive, contenu accordéon : pleine largeur (panel-body ou sous l'accordéon) */
    .fea-ui-overlay-wrapper .form-main-panel .panel-body .acf-accordion-content,
    .fea-ui-overlay-wrapper .form-sidebar .acf-accordion-content {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* En responsive, contenu WYSIWYG OUVERT (sidebar ou panel-body) : layout normal */
    .fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.has-wysiwyg.active-tab .acf-accordion-content,
    .fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.has-wysiwyg.-open .acf-accordion-content,
    .fea-ui-overlay-wrapper .form-main-panel .panel-body .acf-accordion-content:not(.wysiwyg-tab-hidden) {
        position: relative !important;
        left: auto !important;
        top: auto !important;
        width: auto !important;
        max-width: none !important;
    }

    /* Contenu fermé avec wysiwyg-tab-hidden : position absolute pour ne pas prendre d'espace (wysiwyg-tab-hidden le définit déjà) */
    .fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.has-wysiwyg:not(.active-tab):not(.-open) .acf-accordion-content.wysiwyg-tab-hidden {
        position: absolute !important;
        left: -9999px !important;
        top: 0 !important;
        width: 1px !important;
        height: 1px !important;
        overflow: hidden !important;
        visibility: hidden !important;
        pointer-events: none !important;
        opacity: 0 !important;
    }

    /* Masquer le contenu des accordéons fermés (enfant ou frère suivant) */
    .fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion:not(.active-tab):not(.-open) .acf-accordion-content:not(.wysiwyg-tab-hidden),
    .fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion:not(.active-tab):not(.-open) + .acf-accordion-content:not(.wysiwyg-tab-hidden) {
        display: none;
    }

    /* Contenu sous l'accordéon : enfant ou frère suivant (responsive) */
    .fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.active-tab .acf-accordion-content,
    .fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.-open .acf-accordion-content,
    .fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.active-tab + .acf-accordion-content,
    .fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.-open + .acf-accordion-content {
        display: block !important;
    }

    /* Contenu WYSIWYG masqué : rester en display:block (off-screen) pour ne pas casser TinyMCE */
    .fea-ui-overlay-wrapper .form-sidebar .acf-accordion-content.wysiwyg-tab-hidden {
        display: block !important;
    }

    /* Récapitulatif calendrier toujours visible dans l'accordéon ouvert */
    .fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.active-tab .cal-summary-wrapper,
    .fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.-open .cal-summary-wrapper {
        display: block !important;
        visibility: visible !important;
    }

    /* Récapitulatif des périodes : pleine largeur en responsive — règle dédiée .cal-summary-wrapper */
    .fea-ui-overlay-wrapper .form-sidebar .cal-summary-wrapper,
    .fea-ui-overlay-wrapper .form-sidebar .acf-accordion-content .cal-summary-wrapper,
    .fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion + .acf-accordion-content .cal-summary-wrapper,
    .fea-ui-overlay-wrapper .form-sidebar .acf-fields .cal-summary-wrapper,
    .fea-ui-overlay-wrapper .form-main-panel .cal-summary-wrapper,
    .fea-ui-overlay-wrapper .cal-summary-wrapper {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 100% !important;
        flex: 1 1 100% !important;
        box-sizing: border-box !important;
    }
    .fea-ui-overlay-wrapper .cal-summary-table-wrap {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 100% !important;
        box-sizing: border-box !important;
    }
    /* Parents du récapitulatif en responsive pour qu’il puisse prendre 100% */
    .fea-ui-overlay-wrapper .form-sidebar .acf-accordion-content,
    .fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion + .acf-accordion-content,
    .fea-ui-overlay-wrapper .form-sidebar .acf-fields:has(.cal-summary-wrapper) {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
    .fea-ui-overlay-wrapper .acf-field-accordion .acf-accordion-content,
    .fea-ui-overlay-wrapper .acf-field-accordion .acf-fields,
    .fea-ui-overlay-wrapper .acf-field[data-name="calendrier"] {
        width: 100% !important;
        max-width: none !important;
    }

    /* Espacement entre un accordéon ouvert et le suivant (UX responsive) */
    .fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.active-tab,
    .fea-ui-overlay-wrapper .form-sidebar .acf-field-accordion.-open {
        margin-bottom: 28px;
    }

    /* Onglet « Informations générales » : Nombre de personnes / Nombre d'étoiles l'un sous l'autre (tablette + smartphone) */
    .fea-ui-overlay-wrapper .acf-fields-row:has(.acf-field[data-name="nombre_de_personne"]),
    .fea-ui-overlay-wrapper .acf-fields:has(.acf-field[data-name="nombre_de_personne"]):has(.acf-field[data-name="classement"]) {
        flex-direction: column !important;
        display: flex !important;
    }
    .fea-ui-overlay-wrapper .acf-fields-row:has(.acf-field[data-name="nombre_de_personne"]) .acf-field {
        flex: 1 1 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    /* Ciblage direct des deux champs (au cas où :has() ou la structure diffère) — forcer empilement */
    .fea-ui-overlay-wrapper .acf-field[data-name="nombre_de_personne"],
    .fea-ui-overlay-wrapper .acf-field[data-name="classement"] {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        flex: 1 1 100% !important;
        min-width: 0 !important;
        float: none !important;
        clear: both !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }
    .fea-ui-overlay-wrapper .acf-field[data-name="nombre_de_personne"] {
        margin-top: 12px !important;
        margin-bottom: 20px !important;
    }

    /* « Les plus » uniquement : pleine largeur et aligné à gauche (sans toucher au reste du formulaire) */
    .fea-ui-overlay-wrapper .form-main-panel .acf-field.field-les-plus,
    .fea-ui-overlay-wrapper .form-main-panel .acf-field[data-name="les_plus"],
    .fea-ui-overlay-wrapper .acf-accordion-content .acf-field.field-les-plus,
    .fea-ui-overlay-wrapper .acf-accordion-content .acf-field[data-name="les_plus"] {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        box-sizing: border-box !important;
        grid-column: 1 / -1 !important; /* si le parent est en grid, occuper toute la ligne */
        margin-top: 10px !important; /* distance raisonnable sous les champs nombre en vue responsive */
    }
    /* Contenu du champ « Les plus » (label + liste de cases) aligné à gauche */
    .fea-ui-overlay-wrapper .form-main-panel .acf-field.field-les-plus .acf-label,
    .fea-ui-overlay-wrapper .form-main-panel .acf-field.field-les-plus .acf-input,
    .fea-ui-overlay-wrapper .form-main-panel .acf-field[data-name="les_plus"] .acf-label,
    .fea-ui-overlay-wrapper .form-main-panel .acf-field[data-name="les_plus"] .acf-input,
    .fea-ui-overlay-wrapper .acf-accordion-content .acf-field.field-les-plus .acf-label,
    .fea-ui-overlay-wrapper .acf-accordion-content .acf-field.field-les-plus .acf-input,
    .fea-ui-overlay-wrapper .acf-accordion-content .acf-field[data-name="les_plus"] .acf-label,
    .fea-ui-overlay-wrapper .acf-accordion-content .acf-field[data-name="les_plus"] .acf-input {
        margin-left: 0 !important;
        padding-left: 0 !important;
    }
    .fea-ui-overlay-wrapper .form-main-panel .acf-field.field-les-plus .acf-input ul,
    .fea-ui-overlay-wrapper .form-main-panel .acf-field[data-name="les_plus"] .acf-input ul,
    .fea-ui-overlay-wrapper .acf-accordion-content .acf-field.field-les-plus .acf-input ul,
    .fea-ui-overlay-wrapper .acf-accordion-content .acf-field[data-name="les_plus"] .acf-input ul {
        margin-left: 0 !important;
        padding-left: 0 !important;
    }
    
    /* Calendar wizard : adapter pour mobile */
    #wizard-card {
        width: 95% !important;
        max-width: 95% !important;
        padding: 15px !important;
    }
    
    #wizard-calendar {
        font-size: 12px;
    }
    
    #wizard-calendar .ui-datepicker td a {
        padding: 6px 0 !important;
        font-size: 12px !important;
    }
}

/* Smartphone : forcer Nombre de personnes / Nombre d'étoiles l'un sous l'autre (ciblage direct) */
@media screen and (max-width: 767px) {
    .fea-ui-overlay-wrapper .acf-fields-row:has(.acf-field[data-name="nombre_de_personne"]),
    .fea-ui-overlay-wrapper .acf-fields:has(.acf-field[data-name="nombre_de_personne"]) {
        flex-direction: column !important;
        display: flex !important;
    }
    .fea-ui-overlay-wrapper .acf-fields-row:has(.acf-field[data-name="nombre_de_personne"]) .acf-field,
    .fea-ui-overlay-wrapper .acf-fields-row .acf-field[data-name="nombre_de_personne"],
    .fea-ui-overlay-wrapper .acf-fields-row .acf-field[data-name="classement"] {
        flex: 1 1 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    .fea-ui-overlay-wrapper .acf-field[data-name="nombre_de_personne"],
    .fea-ui-overlay-wrapper .acf-field[data-name="classement"] {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        clear: both !important;
    }
    .fea-ui-overlay-wrapper .acf-field[data-name="nombre_de_personne"] {
        margin-top: 12px !important;
        margin-bottom: 20px !important;
    }
}

/* =========================================================
   COMPATIBILITÉ AVEC FRONTEND ADMIN
   Masquer les styles Frontend Admin par défaut si nécessaire
   ========================================================= */
.fea-ui-overlay-wrapper .fea-form-wrapper,
.fea-ui-overlay-wrapper .fea-form-title,
.fea-ui-overlay-wrapper .fea-form-description {
    /* Styles spécifiques Frontend Admin peuvent être masqués ici */
}

/* Note: Les sélecteurs ci-dessus ciblent uniquement les formulaires
   encapsulés dans .fea-ui-overlay-wrapper, garantissant que notre
   surcouche n'interfère pas avec d'autres éléments du site */
