 /* Force le style de l'iframe */
 .digiser-iframe {
     width: 100%;
     border: none;
     /* Hauteur d'attente, proche de celle du chat à l'ouverture (accueil et questions suggérées) : 700 px laissaient
        un grand cadre vide qui repoussait la suite de la page, puis se refermait. Ajustée ensuite par l'app */
     height: 460px;
     overflow: hidden;

     border-width: 0;
     border-style: none;
     box-shadow: none;
 }

 /* Chat en cours de chargement : fond léger, retiré dès que l'app a donné sa hauteur (digi-seer-ai.js). Les points
    roses « Chargement… » de l'app (fond transparent) s'affichent par-dessus dès qu'elle commence à se charger */
 .digiser-iframe.dsi-loading {
     border-radius: 12px;
     background: #fafafb;
 }

 /* Près du bouton ⛶ : remplace l'espacement entre blocs du thème (24 px au-dessus de chaque bloc) par un petit écart,
    visible sous le bouton pendant le chargement (fond d'attente) ; toujours le même, pour que rien ne bouge ensuite
    — « iframe. » pour passer devant « :root :where(.is-layout-constrained) > * » */
 iframe.digiser-iframe {
     display: block;
     margin-top: 8px;
 }

 .dsi-line {
     display: flex;
     align-items: center;
     gap: 20px;
     margin-bottom: 20px;
     flex-wrap: wrap;
 }

 .dsi-line label {
     font-weight: 600;
 }

 .dsi-line input[type="text"],
 .dsi-line input[type="number"] {
     width: 200px;
 }

 .wrapDigiSearch h1 {
     color: black;
 }


 .dsi-btn-wrapper {
     display: flex;
     justify-content: flex-end;
     /* bouton à droite */
     margin-right: 10px;
     /* marge droite */
     margin-bottom: 0px;
 }

 /* Pas d'espace au-dessus du bouton ⛶ : annule l'espacement entre blocs des thèmes WordPress
    (« :root :where(.is-layout-constrained) > * { margin-block-start } ») — « div. » pour passer devant */
 div.dsi-btn-wrapper {
     margin-top: 0;
     padding-top: 0;
 }

 /* (1.16.4) Plein écran ouvert par l'icône ⛶ du chat, à côté du champ : bouton au-dessus du chat caché dès le
    chargement (il apparaissait le temps que l'app se charge). Gardé dans la page : il délimite les blocs (dsiScanBlocks) */
 div.dsi-btn-wrapper {
     display: none !important;
 }



 /* Base commune */
 .dsi-btn {
     background: #fff;
     border: 1px solid #ccc;
     border-radius: 50%;
     text-align: center;
     cursor: pointer;
     padding: 0;
     z-index: 2147483647 !important;
 }

 .dsi-btn:hover {
     background: #f0f0f0;
 }

 /* Apparence imposée (⛶ et ✕) : certains thèmes stylent tous les boutons (contour ou fond bleu, ombre, couleur au
    survol, au focus, au clic) et remplaçaient la nôtre. Fond blanc, bord gris clair, icône noire, dans tous les états ;
    au clavier seulement, un contour gris foncé (accessibilité) au lieu de celui du thème. */
 button.dsi-btn,
 button.dsi-btn:hover,
 button.dsi-btn:focus,
 button.dsi-btn:active {
     -webkit-appearance: none !important;
     appearance: none !important;
     background: #fff !important;
     color: #111 !important;
     border: 1px solid #ccc !important;
     border-radius: 50% !important;
     box-shadow: none !important;
     outline: none !important;
     text-shadow: none !important;
     text-decoration: none !important;
     text-transform: none !important;
     letter-spacing: 0 !important;
     font-family: inherit !important;
     font-weight: 400 !important;
     padding: 0 !important;
     min-width: 0 !important;
     min-height: 0 !important;
     transform: none !important;
 }

 button.dsi-btn:hover {
     background: #f0f0f0 !important;
 }

 button.dsi-btn:focus-visible {
     outline: 2px solid #555 !important;
     outline-offset: 2px !important;
 }

 /* Bouton fullscreen ⛶ */
 .dsi-icon-btn {
     width: 34px !important;
     height: 34px !important;
     font-size: 18px !important;
     line-height: 32px !important;
     float: right;
     margin-right: 10px;
     /* marge droite */
     margin-bottom: 0px;
     /* Dans la page : z-index ordinaire (le maximum de .dsi-btn ne sert qu'au ✕ de la fenêtre plein écran).
        Sinon, en faisant défiler, il passait au-dessus de la barre d'administration WordPress (z-index 99999). */
     position: relative;
     z-index: 1 !important;
 }

 /* Bouton fermeture ✕ */
 .dsi-close-btn {
     position: absolute;
     top: 5px;
     right: 8px;
     /* (1.16.4) ✕ centré au-dessus de l'ascenseur du chat (avant : 20 px, décalé à gauche) */
     width: 34px !important;
     height: 34px !important;
     font-size: 10px !important;
     line-height: 20px !important;
 }

 /* (1.16.4) Fermeture sans cercle autour (fond gris clair au survol, contour au clavier seulement) */
 button.dsi-btn.dsi-close-btn,
 button.dsi-btn.dsi-close-btn:hover,
 button.dsi-btn.dsi-close-btn:focus,
 button.dsi-btn.dsi-close-btn:active {
     border-color: transparent !important;
     /* ✕ plus grand (avant : 10 px), couleur principale du chat (page Styles de l'app, --dsi-accent posée par
        digi-seer-ai.js), rose DigiSeer par défaut */
     color: var(--dsi-accent, #ed65a7) !important;
     font-size: 18px !important;
     line-height: 34px !important;
 }

 button.dsi-btn.dsi-close-btn:hover {
     background: #fdeef5 !important; /* navigateurs sans color-mix */
     background: color-mix(in srgb, var(--dsi-accent, #ed65a7) 12%, #fff) !important; /* teinte très claire au survol */
 }

 /* Fenêtre ouverte à la souris : pas de contour de focus autour de la fermeture (gardé au clavier) */
 .dsi-close-btn.dsi-no-ring:focus {
     outline: none !important;
     box-shadow: none !important;
 }




 /* Popup plein écran */
 .dsi-modal {
     display: none;
     position: fixed;
     top: 0;
     left: 0;
     width: 100vw;
     height: 100vh;
     background: rgba(0, 0, 0, 0.7);
     z-index: 2147483647 !important;
 }

 /* Shortcode posé comme bloc de page : le thème WordPress donne à chaque bloc une marge en haut
    (24 px, qui décale la fenêtre « fixed ») et une largeur limitée centrée (margin auto !important).
    On les annule : la fenêtre doit couvrir tout l'écran. */
 div.dsi-modal {
     margin: 0 !important;
     max-width: none !important;
 }

 .dsi-modal-content {
     position: absolute;
     top: 50%;
     /* centrage vertical */
     left: 50%;
     /* centrage horizontal */
     transform: translate(-50%, -50%);
     /* recentre parfaitement */
     /* (1.16.4) Pas plus large que le chat (fond gris visible autour) ; hauteur ajustée à celle du chat quand le site
        l'a fixée (message digiseerModalHeight, digi-seer-ai.js) */
     width: min(90vw, 740px); /* chat : 700 px de large + marges de l'app */
     height: 90vh;
     /* dernier ajustement de quelques pixels (chat du plein écran chargé) en douceur */
     transition: height .2s ease;
     background: #ffffff;
     border-radius: 8px;
     overflow: hidden;
 }


 /* .dsi-modal,
    .dsi-modal * {
        z-index: 2147483647 !important;
    } */


 body.dsi-modal-open .et_pb_section_0_tb_header {
     display: none !important;
 }

 /* Masquer le footer Divi pendant la modal */
 body.dsi-modal-open footer,
 body.dsi-modal-open .et_pb_footer,
 body.dsi-modal-open .et_pb_section_0_tb_footer,
 body.dsi-modal-open .et_pb_section_1_tb_footer,
 body.dsi-modal-open .et_pb_section_2_tb_footer {
     display: none !important;
 }


 /* Bande de 44 px EN HAUT pour le bouton ✕ (34 px + 5 px de chaque côté) : il ne recouvre plus le haut de l'app (langue, menu) */
 .dsi-modal-iframe {
     width: 100%;
     height: calc(100% - 44px);
     margin-top: 44px;
     border: none;
     display: block;
 }
/* (1.16.4) Page DigiSeer de l'admin WordPress : l'app occupe toute la zone de contenu, sans le cadre gris de
   l'admin autour (marge à gauche de #wpcontent, écart au-dessus de l'iframe, espace réservé au pied de page) */
body.toplevel_page_digi-seer-ai #wpcontent {
    padding-left: 0;
}
body.toplevel_page_digi-seer-ai #wpbody-content {
    padding-bottom: 0;
}
body.toplevel_page_digi-seer-ai iframe.digiser-iframe {
    margin-top: 0;
}
body.toplevel_page_digi-seer-ai #wpfooter {
    display: none;
}

/* (1.16.4) Menu fixe : l'iframe de la page DigiSeer a la hauteur de l'écran (sous la barre d'administration) et c'est
   l'app qui défile dessous, son menu restant en haut. !important : passe devant la hauteur du contenu que
   digi-seer-ai.js pose sur l'iframe (iframeHeight) */
body.toplevel_page_digi-seer-ai iframe.digiser-iframe {
    height: calc(100vh - var(--wp-admin--admin-bar--height, 32px)) !important;
}
