/* Widget de discussion de l'assistante « Helen » (Marché Facile).
   Fichier identique dans le sandbox (public/) et dans le paquet de
   production (php/js/ + php/css/) : il ne connaît ni clé API ni prix ;
   tout chiffre affiché vient de la réponse serveur. */
#mf-assistante-bouton {
  position: fixed; right: 1rem; bottom: 1rem; z-index: 9999;
  background: #14652f; color: #fff; border: 0; border-radius: 999px;
  padding: .8rem 1.1rem; font-size: 1rem; font-weight: 700; cursor: pointer;
  box-shadow: 0 4px 14px rgba(0,0,0,.25);
}
#mf-assistante-fenetre {
  position: fixed; right: 1rem; bottom: 1rem; z-index: 10000;
  width: min(380px, calc(100vw - 2rem)); height: min(560px, calc(100vh - 2rem));
  background: #fff; border-radius: 14px; box-shadow: 0 10px 34px rgba(0,0,0,.3);
  display: flex; flex-direction: column; overflow: hidden;
  font-family: system-ui, "Segoe UI", Arial, sans-serif;
}
#mf-assistante-fenetre[hidden] { display: none; }
#mf-assistante-fenetre .mf-entete {
  background: #14652f; color: #fff; padding: .7rem .9rem;
  display: flex; justify-content: space-between; align-items: flex-start;
}
#mf-assistante-fenetre .mf-entete small { opacity: .85; }
#mf-assistante-fermer { background: transparent; border: 0; color: #fff; font-size: 1.1rem; cursor: pointer; }
#mf-assistante-messages { flex: 1; overflow-y: auto; padding: .8rem; background: #fffaf2; }
.mf-msg { max-width: 88%; padding: .55rem .7rem; border-radius: 12px; margin-bottom: .55rem; white-space: pre-wrap; line-height: 1.4; font-size: .93rem; }
.mf-msg.assistante { background: #eef6ee; border: 1px solid #d8ead8; margin-right: auto; }
.mf-msg.client { background: #14652f; color: #fff; margin-left: auto; }
.mf-msg.systeme { background: #fdf0e0; border: 1px dashed #e87722; margin-right: auto; font-size: .85rem; }
#mf-assistante-choix { display: flex; flex-wrap: wrap; gap: .4rem; padding: 0 .8rem .6rem; background: #fffaf2; }
#mf-assistante-choix button {
  border: 1px solid #14652f; color: #14652f; background: #fff; border-radius: 999px;
  /* Cibles tactiles (règle « trois choix », 2026-11-02) : hauteur
     confortable au doigt sur mobile, sans déborder de la fenêtre. */
  padding: .5rem .85rem; min-height: 2.5rem; cursor: pointer; font-size: .9rem;
}
#mf-assistante-choix button:hover { background: #14652f; color: #fff; }
#mf-assistante-form { display: flex; border-top: 1px solid #eee; }
#mf-assistante-saisie { flex: 1; border: 0; padding: .75rem; font-size: .95rem; outline: none; }
#mf-assistante-form button { background: #e87722; color: #fff; border: 0; padding: 0 1rem; font-weight: 700; cursor: pointer; }
.mf-attente { opacity: .6; font-style: italic; }
.mf-liste-actions { display: flex; flex-wrap: wrap; gap: .4rem; margin-bottom: .55rem; max-width: 88%; }
.mf-liste-actions a, .mf-liste-actions button {
  border: 1px solid #14652f; color: #14652f; background: #fff; border-radius: 999px;
  padding: .35rem .7rem; font-size: .88rem; text-decoration: none; cursor: pointer;
  font-family: inherit; line-height: 1.4;
}
.mf-liste-actions a:hover, .mf-liste-actions button:hover { background: #14652f; color: #fff; }
/* Disclaimer de début de conversation (2026-11-02) : note fixe en
   tête du fil, pleine largeur, volontairement distincte des bulles ;
   elle défile avec le fil et ne masque ni la saisie ni le panier. */
.mf-disclaimer {
  background: #fdf6e0; border: 1px solid #e8d9a8; color: #6b5b1e;
  border-radius: 10px; padding: .55rem .7rem; margin-bottom: .55rem;
  font-size: .82rem; line-height: 1.45;
}
