/* Assistant IRIAN — bulle et fenêtre de conversation, aux couleurs du site */
.ia-bulle{position:fixed; right:20px; bottom:20px; z-index:9998; padding:12px 20px; border:0; border-radius:999px; background:#233156; color:#fff; font:500 15px/1 Poppins,system-ui,sans-serif; box-shadow:0 8px 24px rgba(10,16,32,.28); cursor:pointer; display:inline-flex; gap:8px; align-items:center}
.ia-bulle::before{content:''; width:9px; height:9px; border-radius:50%; background:#d09835; box-shadow:0 0 0 4px rgba(208,152,53,.25)}
.ia-bulle:hover{background:#2c3d6b}
.ia-panneau{position:fixed; right:20px; bottom:20px; z-index:9999; width:min(420px,calc(100vw - 24px)); height:min(640px,calc(100vh - 40px)); display:flex; flex-direction:column; background:#fff; border-radius:12px; box-shadow:0 18px 50px rgba(10,16,32,.32); overflow:hidden; font:400 15px/1.55 Hind,system-ui,sans-serif; color:#2b3348}
.ia-panneau[hidden]{display:none}
.ia-tete{display:flex; justify-content:space-between; align-items:center; padding:14px 16px; background:#233156; color:#fff}
.ia-tete strong{display:block; font:500 16px/1.2 Poppins,system-ui,sans-serif}
.ia-tete small{display:block; color:#c9d0de; font-size:12px; margin-top:2px}
.ia-fermer{background:none; border:0; color:#fff; font-size:26px; line-height:1; cursor:pointer; padding:0 4px}
.ia-fil{flex:1; overflow-y:auto; padding:16px; display:flex; flex-direction:column; gap:10px; background:#f6f7fa}
.ia-msg{max-width:88%; padding:10px 14px; border-radius:12px; word-wrap:break-word}
.ia-msg p{margin:0 0 6px} .ia-msg p:last-child{margin:0}
.ia-msg ul{margin:4px 0 6px; padding-left:18px} .ia-msg li{margin:0 0 3px}
.ia-msg a{color:#233156; text-decoration:underline; word-break:break-all}
.ia-assistant{align-self:flex-start; background:#fff; border:1px solid #dde2ea; border-bottom-left-radius:4px}
.ia-user{align-self:flex-end; background:#233156; color:#fff; border-bottom-right-radius:4px; white-space:pre-wrap}
.ia-attente{color:#8a93a6; letter-spacing:.2em}
.ia-consentement{padding:14px 16px; border-top:1px solid #dde2ea; font-size:13px; line-height:1.5}
.ia-consentement[hidden],.ia-saisie[hidden]{display:none}
.ia-consentement p{margin:0 0 10px}
.ia-accepter,.ia-saisie button,.ia-envoi button{border:0; border-radius:999px; background:#d09835; color:#fff; font:500 14px/1 Poppins,system-ui,sans-serif; padding:11px 18px; cursor:pointer}
.ia-saisie{display:flex; gap:8px; padding:10px 12px; border-top:1px solid #dde2ea; align-items:flex-end}
.ia-saisie textarea{flex:1; resize:none; border:1px solid #dde2ea; border-radius:8px; padding:9px 11px; font:inherit; max-height:120px}
.ia-saisie textarea:focus{outline:2px solid #d09835; outline-offset:0}
.ia-pied{padding:8px 16px 10px; font-size:12px; color:#6b7385; border-top:1px solid #eef0f4; text-align:center}
.ia-pied a{color:#233156}
.ia-fiche{background:#fff; border:1px solid #d09835; border-radius:10px; padding:14px; font-size:14px}
.ia-fiche-titre{font:500 11px/1.3 Poppins,system-ui,sans-serif; letter-spacing:.14em; text-transform:uppercase; color:#8a5f16; margin:0 0 4px}
.ia-aide{margin:0 0 8px; color:#6b7385; font-size:13px}
.ia-fiche h4{font:500 15px/1.3 Poppins,system-ui,sans-serif; color:#233156; margin:0 0 8px}
.ia-fiche dl{margin:0 0 12px; display:grid; grid-template-columns:auto 1fr; gap:4px 10px}
.ia-fiche dt{color:#6b7385; font-size:12px} .ia-fiche dd{margin:0; color:#233156}
.ia-envoi{display:grid; grid-template-columns:1fr 1fr; gap:8px}
.ia-envoi label{display:flex; flex-direction:column; gap:3px; font-size:12px; color:#6b7385}
.ia-envoi input,.ia-envoi textarea{border:1px solid #dde2ea; border-radius:6px; padding:7px 9px; font:inherit; color:#2b3348}
.ia-envoi .ia-large{grid-column:1 / -1}
.ia-envoi .ia-case{flex-direction:row; align-items:flex-start; gap:6px}
.ia-piege{position:absolute; left:-9999px}
.ia-merci{margin:0; color:#233156}
@media (max-width:560px){ .ia-panneau{right:8px; bottom:8px; height:calc(100vh - 16px)} .ia-bulle{right:12px; bottom:12px} .ia-envoi{grid-template-columns:1fr} }
@media print{ .ia-bulle,.ia-panneau{display:none !important} }

/* Mise en forme protégée des champs de la fiche (le thème ne doit pas la perturber) */
.ia-panneau .ia-envoi label{display:flex !important; flex-direction:column !important; gap:3px !important; margin:0 !important; font-size:12px !important; line-height:1.3 !important}
.ia-panneau .ia-envoi input:not([type=checkbox]),.ia-panneau .ia-envoi textarea{display:block !important; width:100% !important; box-sizing:border-box !important; margin:0 !important; min-height:34px; background:#fff !important}
.ia-panneau .ia-envoi .ia-case{flex-direction:row !important; align-items:flex-start !important}
.ia-panneau .ia-envoi .ia-case input{width:auto !important; min-height:0; margin:2px 0 0 !important}
.ia-terminer{margin:0 12px 8px; padding:8px 14px; border:1px solid #d09835; border-radius:999px; background:#fff; color:#8a5f16; font:500 13px/1 Poppins,system-ui,sans-serif; cursor:pointer; align-self:flex-start}
.ia-terminer:hover{background:#d09835; color:#fff}

.ia-fiche .ia-sous{font:500 11px/1.3 Poppins,system-ui,sans-serif; letter-spacing:.1em; text-transform:uppercase; color:#8a5f16; margin:10px 0 4px}
.ia-fiche .ia-liste{margin:0 0 10px; padding-left:18px; font-size:13px; color:#2b3348}
.ia-fiche .ia-liste li{margin:0 0 3px}
.ia-fiche .ia-liste a{color:#233156}

.ia-sous{font:500 11px/1.3 Poppins,system-ui,sans-serif; letter-spacing:.1em; text-transform:uppercase; color:#8a5f16; margin:10px 0 4px}
.ia-liste{margin:0 0 12px; padding-left:18px; font-size:13px} .ia-liste li{margin:0 0 3px}

/* Revue interne (administrateur seulement) */
.ia-analyse{align-self:stretch; background:#eef0f4; border:1px dashed #b7bfcc; border-radius:8px; padding:8px 12px; font-size:12.5px; line-height:1.45; color:#4a5268}
.ia-analyse summary{cursor:pointer; font:500 12px/1.3 Poppins,system-ui,sans-serif; color:#6b7385}
.ia-analyse p{margin:6px 0 0} .ia-analyse ol{margin:4px 0 0; padding-left:18px}

/* Fenêtre plus grande, texte plus lisible, mode agrandi */
.ia-panneau{width:min(560px,calc(100vw - 24px)) !important; height:min(820px,calc(100vh - 40px)) !important; font-size:16px; transition:width .2s ease, height .2s ease}
.ia-panneau.ia-grand{width:min(900px,calc(100vw - 40px)) !important; height:calc(100vh - 40px) !important}
.ia-fil{position:relative; padding:18px 20px; gap:12px}
.ia-msg{max-width:92%; padding:12px 16px; line-height:1.6}
.ia-actions{display:flex; align-items:center; gap:6px}
.ia-agrandir{background:none; border:0; color:#fff; font-size:18px; line-height:1; cursor:pointer; padding:2px 6px; opacity:.85}
.ia-agrandir:hover{opacity:1}
.ia-saisie textarea{font-size:16px}
@media (max-width:560px){ .ia-panneau,.ia-panneau.ia-grand{width:calc(100vw - 16px) !important; height:calc(100vh - 16px) !important} .ia-agrandir{display:none} }
