/* Assistant Honoré intégré dans la page (bloc « ce qui vous agace » et bande de fin) */
.hc-chat{display:flex;flex-direction:column;background:#fffdf7;border-radius:18px;overflow:hidden;color:var(--encre);font-family:var(--texte);text-align:left}
.hc-chat-fil{height:min(380px,55vh);overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth}
.hc-msg{max-width:88%;padding:11px 14px;border-radius:16px;font-size:15px;line-height:1.5;white-space:pre-wrap}
.hc-msg-assistant{align-self:flex-start;background:#fff;border:1px solid var(--ligne);border-bottom-left-radius:4px}
.hc-msg-user{align-self:flex-end;background:var(--encre);color:#fff;border-bottom-right-radius:4px}
.hc-attente{color:var(--gris-clair);animation:hc-clign 1s ease-in-out infinite}
@keyframes hc-clign{50%{opacity:.4}}
.hc-chat-saisie{display:flex;align-items:flex-end;gap:8px;margin:0 12px;padding:8px;border:1px solid var(--ligne);border-radius:16px;background:#fff}
.hc-chat-saisie:focus-within{border-color:var(--encre)}
.hc-chat-saisie textarea{flex:1;border:0;outline:none;resize:none;font:inherit;font-size:15px;padding:6px 4px;max-height:120px;background:transparent;color:var(--encre)}
.hc-chat-saisie textarea::placeholder{color:#8b8b95}
.hc-chat-saisie button{width:40px;height:40px;border:0;border-radius:50%;background:var(--jaune);color:var(--encre);font-size:18px;font-weight:600;cursor:pointer;flex:none}
.hc-chat-mention{margin:0;padding:8px 16px 12px;font-size:11px;color:var(--gris-clair)}

/* Puces (profils, exemples, relances) */
.hc-puces{display:flex;flex-wrap:wrap;gap:6px}
.hc-puces p{flex-basis:100%;margin:4px 0 0;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--gris-clair)}
.hc-puces button{border:1px solid var(--ligne);background:#fff;border-radius:999px;padding:7px 12px;font:600 13px var(--texte);color:var(--encre);cursor:pointer;text-align:left}
.hc-puces button:hover{border-color:var(--encre)}

/* Cartes du site affichées dans la discussion */
.hc-cartes{display:grid;gap:8px}
.hc-carte{display:block;border:1px solid var(--ligne);border-radius:14px;background:#fff;padding:12px 14px}
.hc-carte-sur{display:block;margin:0 0 4px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--jaune-fonce)}
.hc-carte-titre{display:block;margin:0;font:700 16px/1.25 var(--titre);letter-spacing:-.015em;color:var(--encre)}
.hc-carte-desc{margin:6px 0 0;font-size:13.5px;color:var(--gris)}
.hc-avant,.hc-apres{margin:8px 0 0;font-size:13.5px;line-height:1.45;color:var(--encre-2)}
.hc-avant b,.hc-apres b{display:block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--gris-clair)}
.hc-apres{padding-left:10px;border-left:3px solid var(--jaune)}
.hc-apres b{color:var(--jaune-fonce)}
.hc-carte-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}
.hc-carte-actions a,.hc-carte-actions button{border:0;background:none;padding:0;font:600 13.5px var(--texte);color:var(--encre);border-bottom:1px solid currentColor;cursor:pointer}
.hc-carte-rdv{background:var(--encre);border-color:var(--encre)}
.hc-carte-rdv .hc-carte-titre,.hc-carte-rdv .hc-carte-actions a{color:#fff}
.hc-carte-rdv .hc-carte-actions a:first-child{color:var(--jaune)}
.hc-carte-article{display:flex;gap:12px;align-items:center;padding:8px}
.hc-carte-article img{width:56px;height:70px;object-fit:cover;border-radius:8px;flex:none}
.hc-carte-article:hover .hc-carte-titre{color:var(--jaune-fonce)}

/* Bloc du site désigné par l'assistant */
.hc-repere{animation:hc-repere 2.2s ease}
@keyframes hc-repere{0%,60%{box-shadow:inset 0 0 0 4px var(--jaune)}100%{box-shadow:inset 0 0 0 0 transparent}}

/* Carte du bloc « ce qui vous agace » devenue discussion */
.final-chat{gap:16px;align-content:start;min-height:0}
.final-chat-titre{margin:0;font:800 clamp(30px,3vw,42px)/1.05 var(--titre);letter-spacing:-.04em;color:#fff}
.final-chat-titre span{display:block;margin-top:10px;font:400 16px/1.45 var(--texte);letter-spacing:0;color:#c9c7c0}

/* Bande de fin : discussion à gauche, IA externes et humains à droite */
.humain-grille{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(28px,4vw,56px);padding-top:32px;border-top:1px solid #2f3036;align-items:start}
.humain-grille .humain-actions{grid-template-columns:1fr;padding-top:0;border-top:0;gap:28px}
@media (max-width:900px){.humain-grille{grid-template-columns:1fr}}
@media (max-width:560px){.hc-chat-fil{height:min(420px,62vh);padding:12px}.hc-msg{max-width:94%}}

/* Carte « Bonjour ! » : discussion repliée derrière la boule jaune, dépliée au premier clic */
.hc-chat.hc-replie{background:transparent;border-radius:16px}
.hc-replie .hc-chat-fil,.hc-replie .hc-chat-mention{display:none}
.hc-replie .hc-chat-saisie{margin:0;padding:10px 10px 10px 16px;background:#111114;border-color:#45454d}
.hc-replie .hc-chat-saisie:focus-within,.hc-replie .hc-chat-saisie:hover{border-color:var(--jaune)}
.hc-replie .hc-chat-saisie textarea{color:#fff}
.hc-replie .hc-chat-saisie textarea::placeholder{color:#d4d4da}
.final-chat .bulle{transition:width .45s cubic-bezier(.2,.7,.2,1),margin .45s}
.final-chat.ouvert .bulle{width:58px;margin:0;justify-self:start}
.final-chat.ouvert .bulle span{display:none}
.final-chat.ouvert .final-carte-texte{display:none}
.final-chat{position:relative}
/* Champ de saisie : pas de barre de défilement (le champ s'agrandit tout seul) */
.hc-chat-saisie textarea{overflow-y:hidden;scrollbar-width:none;line-height:1.45}
.hc-chat-saisie textarea::-webkit-scrollbar{display:none}
.hc-replie .hc-chat-saisie{align-items:center}
.hc-replie .hc-chat-saisie textarea{min-height:2.9em}
/* Avatar de l'assistant : la tête d'Honoré, petite, à côté de ses bulles. */
.hc-ligne{display:flex;align-items:flex-end;gap:8px;max-width:88%}
.hc-ligne .hc-msg{max-width:100%}
.hc-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;flex:none;background:#fff;border:1px solid var(--ligne)}
.hc-replie .hc-avatar{background:#1f2024;border-color:#45454d}
@media (max-width:560px){.hc-ligne{max-width:94%}}
/* Chat replié : la tête d'Honoré dans la barre de saisie, visible avant même d'écrire. */
.hc-avatar-saisie{display:none;width:38px;height:38px;align-self:center}
.hc-replie .hc-avatar-saisie{display:block}
.hc-replie .hc-chat-saisie{padding-left:10px}
/* Le bonjour, c'est Honoré en personne : la mascotte en grand à côté de sa première bulle. */
.hc-ligne-intro{align-items:center;gap:12px}
.hc-ligne-intro .hc-avatar{width:72px;height:72px}
@media (max-width:560px){.hc-ligne-intro .hc-avatar{width:56px;height:56px}}
/* La carte « Bonjour ! » : plus de carré ni de fond, juste le mot et un halo jaune discret
   qui bat comme un cœur (deux temps, puis repos). Halo et onde restent dans la carte. */
.final-chat .bulle{position:relative;isolation:isolate;background:none!important;border-radius:50%;box-shadow:none;animation:bulle-coeur 1.5s cubic-bezier(.3,0,.2,1) infinite}
.final-chat .bulle::before{content:"";position:absolute;inset:-3%;border-radius:50%;z-index:-1;background:radial-gradient(circle,rgba(242,194,48,.32) 0%,rgba(242,194,48,.14) 40%,rgba(242,194,48,0) 68%);animation:halo-coeur 1.5s cubic-bezier(.3,0,.2,1) infinite}
.final-chat .bulle::after{content:"";position:absolute;inset:12%;border-radius:50%;z-index:-1;border:1px solid rgba(242,194,48,.5);animation:onde-coeur 1.5s cubic-bezier(.2,.6,.3,1) infinite}
@keyframes bulle-coeur{0%,100%{transform:scale(1)}13%{transform:scale(1.03)}26%{transform:scale(1)}40%{transform:scale(1.02)}54%{transform:scale(1)}}
@keyframes halo-coeur{0%,100%{opacity:.6;transform:scale(1)}13%{opacity:1;transform:scale(1.05)}26%{opacity:.65;transform:scale(1.01)}40%{opacity:.9;transform:scale(1.03)}54%{opacity:.6;transform:scale(1)}}
@keyframes onde-coeur{0%,12%{opacity:0;transform:scale(1)}14%{opacity:.5;transform:scale(1)}60%{opacity:0;transform:scale(1.18)}100%{opacity:0;transform:scale(1.18)}}
.final-chat.ouvert .bulle,.final-chat.ouvert .bulle::before,.final-chat.ouvert .bulle::after{animation:none}
.final-chat.ouvert .bulle::after{display:none}
@media (prefers-reduced-motion:reduce){.final-chat .bulle,.final-chat .bulle::before,.final-chat .bulle::after{animation:none}}
