/* Assistant EQUI-SCAN — styles communs (page Contact : bloc complet ; FAQ de la home : bloc compact).
   Repris de contact_v7.html le 2026-10-01. Chargé via static_v('css/assistant.css') (cache /static = 1 an). */
.chat-box{ display:flex; flex-direction:column; border-radius:1.35rem; background:#fff; border:1px solid rgba(127,85,57,.10); overflow:hidden; }
.chat-head{ display:flex; align-items:center; gap:.85rem; padding:1rem 1.15rem; border-bottom:1px solid rgba(127,85,57,.10); }
.chat-head .av{ width:2.9rem; height:2.9rem; border-radius:999px; display:grid; place-items:center; flex-shrink:0;
  background:#FBF6EC; border:1px solid rgba(166,124,82,.35); }
.chat-head .av img{ width:2rem; height:2rem; border-radius:.35rem; }
.chat-head b{ display:block; color:#1B4332; font-size:.98rem; }
.chat-head small{ display:inline-flex; align-items:center; gap:.4rem; color:rgba(27,67,50,.7); font-size:.78rem; }
.chat-head small::before{ content:""; width:.5rem; height:.5rem; border-radius:999px; background:#22c55e; box-shadow:0 0 0 3px rgba(34,197,94,.18); }
.chat-msgs{ height:330px; overflow-y:auto; padding:1rem 1.15rem; display:flex; flex-direction:column; gap:.7rem; background:linear-gradient(180deg,#fff,#FFFDF8); }
@media (min-width:1024px){ .chat-msgs{ height:360px; } }
.cmsg{ max-width:88%; padding:.7rem .95rem; border-radius:1.05rem; font-size:.92rem; line-height:1.55; white-space:pre-wrap; }
.cmsg.bot{ align-self:flex-start; background:#F6F1E7; color:#1F3A2E; border-bottom-left-radius:.35rem; }
.cmsg.me{ align-self:flex-end; background:#1B4332; color:#fff; border-bottom-right-radius:.35rem; }
.cmsg.md{ white-space:normal; }
.cmsg.md p{ margin:0; } .cmsg.md p + p, .cmsg.md p + ul, .cmsg.md p + ol, .cmsg.md ul + p, .cmsg.md ol + p{ margin-top:.55rem; }
.cmsg.md ul, .cmsg.md ol{ margin:.35rem 0 0; padding-left:1.15rem; }
.cmsg.md ul{ list-style:disc; } .cmsg.md ol{ list-style:decimal; }
.cmsg.md li{ margin:.2rem 0; } .cmsg.md li::marker{ color:#A67C52; }
.cmsg.md strong{ color:#1B4332; font-weight:700; }
.cmsg.md a{ color:#7F5539; font-weight:600; text-decoration:underline; text-decoration-color:rgba(245,158,11,.6); text-underline-offset:2px; }
.cmsg.md a:hover{ color:#1B4332; }
.cmsg.typing{ background:transparent; color:rgba(27,67,50,.55); padding:.2rem .4rem; font-style:italic; }
.chat-chips{ display:flex; flex-wrap:wrap; gap:.45rem; padding:.85rem 1.15rem .2rem; border-top:1px solid rgba(127,85,57,.08); }
.chat-chips button{ border:1px solid rgba(127,85,57,.22); background:#fff; color:#1B4332; font-size:.8rem; font-weight:600;
  padding:.45rem .8rem; border-radius:999px; cursor:pointer; transition:all .2s var(--ease); line-height:1.2; }
.chat-chips button:hover{ background:#1B4332; border-color:#1B4332; color:#fff; }
.chat-chips button.human{ border-color:rgba(166,124,82,.5); color:#7F5539; }
.chat-chips button.human:hover{ background:#7F5539; border-color:#7F5539; color:#fff; }
.chat-form{ display:flex; gap:.6rem; padding:.8rem 1.15rem 1rem; }
.chat-form input{ flex:1; min-width:0; border:1px solid rgba(127,85,57,.22); border-radius:999px; padding:.75rem 1.1rem; font-size:.92rem; outline:none; background:#FFFDF8; }
.chat-form input:focus{ border-color:var(--gold-3); box-shadow:0 0 0 3px rgba(251,191,36,.22); background:#fff; }
.chat-form button{ width:2.9rem; height:2.9rem; flex-shrink:0; border-radius:999px; border:0; cursor:pointer; color:#fff;
  background:linear-gradient(180deg,#2D5A45,#1B4332); box-shadow:0 8px 18px -8px rgba(15,46,33,.6); }
.chat-form button:disabled{ opacity:.55; cursor:wait; }
.chat-note{ padding:0 1.15rem 1rem; font-size:.75rem; color:rgba(92,61,40,.62); }
/* Variante compacte (FAQ de la home) : la zone des messages n'apparaît qu'à la première question. */
.chat-box--compact{ box-shadow:0 2px 6px rgba(92,61,40,.07), 0 26px 50px -28px rgba(15,46,33,.42); }
.chat-box--compact .chat-msgs{ display:none; height:auto; max-height:340px; }
.chat-box--compact.has-msgs .chat-msgs{ display:flex; }
.chat-box--compact .chat-chips{ border-top:0; padding-top:.9rem; }
