/* ==========================================================================
   UpMyChain — l'IA dans le site (28/09/2026). Composants : assistant de demande,
   dictée de devis, comparaison de devis, rédaction de présentation.
   Couleurs locales (le site mélange deux chartes) : clair et sombre suivent seuls.
   ⛔ Tout ce qui vient du modèle est écrit en textContent par umc-ia.js (jamais en HTML).
   ========================================================================== */
.umc-ia{--ia-a:#ff6300;--ia-a2:#ff9a3d;--ia-v:#7c5cff;--ia-ink:#101114;--ia-ink2:#3d414a;--ia-ink3:#6b7280;
  --ia-line:#e7e8ec;--ia-surf:#fff;--ia-soft:#fff6ee;--ia-ok:#15803d;--ia-warn:#b45309;
  position:relative;border-radius:18px;padding:18px 18px 16px;margin:0 0 18px;color:var(--ia-ink);
  background:linear-gradient(var(--ia-surf),var(--ia-surf)) padding-box,
             linear-gradient(120deg,var(--ia-a),var(--ia-v),var(--ia-a2)) border-box;
  border:1.5px solid transparent;box-shadow:0 1px 2px rgba(16,17,20,.04),0 10px 30px rgba(124,92,255,.08);
  font-family:inherit;text-align:left}
html[data-theme="dark"] .umc-ia{--ia-ink:#e9eaee;--ia-ink2:#b3b7c0;--ia-ink3:#868c98;--ia-line:#2a2e36;--ia-surf:#16181d;--ia-soft:#221a14;
  box-shadow:0 10px 30px rgba(0,0,0,.35)}
.umc-ia[hidden]{display:none!important}
.umc-ia *{box-sizing:border-box}
.umc-ia p,.umc-ia label,.umc-ia ul,.umc-ia h3{float:none;width:auto;margin:0}
.umc-ia-tete{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 12px}
.umc-ia-badge{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 10px;border-radius:100px;font-size:11.5px;
  font-weight:800;letter-spacing:.04em;color:#fff;background:linear-gradient(120deg,var(--ia-a),var(--ia-v));
  background-size:200% 100%;animation:umc-ia-flux 6s linear infinite}
@keyframes umc-ia-flux{to{background-position:200% 0}}
.umc-ia-tete b{font-size:16px;font-weight:750;letter-spacing:-.01em}
.umc-ia-tete small{flex-basis:100%;font-size:13px;color:var(--ia-ink3)}
.umc-ia-champ{position:relative}
.umc-ia textarea,.umc-ia input[type=text]{display:block;width:100%;min-height:92px;padding:13px 50px 13px 14px;border:1.5px solid var(--ia-line);
  border-radius:14px;background:var(--ia-surf);color:var(--ia-ink);font:inherit;font-size:15.5px;line-height:1.5;resize:vertical;
  transition:border-color .2s,box-shadow .2s}
.umc-ia input[type=text]{min-height:48px;padding-right:14px}
.umc-ia textarea:focus,.umc-ia input[type=text]:focus{outline:none;border-color:var(--ia-v);box-shadow:0 0 0 3px rgba(124,92,255,.16)}
.umc-ia-micro{position:absolute;right:10px;top:10px;width:36px;height:36px;border-radius:50%;border:1px solid var(--ia-line);
  background:var(--ia-surf);cursor:pointer;font-size:17px;line-height:1;display:flex;align-items:center;justify-content:center;transition:.2s}
.umc-ia-micro:hover{border-color:var(--ia-v)}
.umc-ia-micro.ecoute{background:var(--ia-v);border-color:var(--ia-v);color:#fff;animation:umc-ia-pouls 1.2s ease-out infinite}
@keyframes umc-ia-pouls{0%{box-shadow:0 0 0 0 rgba(124,92,255,.5)}100%{box-shadow:0 0 0 12px rgba(124,92,255,0)}}
.umc-ia-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:12px 0 0}
.umc-ia-go{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 20px;border:0;border-radius:12px;
  cursor:pointer;font:inherit;font-size:15px;font-weight:700;color:#fff;background:linear-gradient(120deg,var(--ia-a),#ff4d6d 55%,var(--ia-v));
  box-shadow:0 6px 18px rgba(255,99,0,.25);transition:transform .2s,box-shadow .2s}
.umc-ia-go:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(124,92,255,.3)}
.umc-ia-go:disabled{cursor:wait;opacity:.9}
.umc-ia-go.pense::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);
  animation:umc-ia-reflet 1.1s linear infinite}
@keyframes umc-ia-reflet{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
.umc-ia-note{font-size:12.5px;color:var(--ia-ink3)}
.umc-ia-sortie{margin:14px 0 0}
.umc-ia-sortie:empty{display:none}
.umc-ia-res{animation:umc-ia-entree .45s cubic-bezier(.22,1,.36,1) both}
@keyframes umc-ia-entree{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.umc-ia-puces{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 10px}
.umc-ia-puce{display:inline-flex;flex-direction:column;gap:1px;padding:8px 12px;border-radius:12px;background:var(--ia-soft);border:1px solid var(--ia-line)}
.umc-ia-puce small{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--ia-ink3);font-weight:700}
.umc-ia-puce span{font-size:14px;font-weight:650}
.umc-ia-texte{padding:10px 12px;border-left:3px solid var(--ia-v);background:var(--ia-soft);border-radius:0 10px 10px 0;font-size:14.5px;line-height:1.55;color:var(--ia-ink2)}
.umc-ia-questions{margin:10px 0 0;padding:0;list-style:none}
.umc-ia-questions li{display:flex;gap:8px;font-size:14px;color:var(--ia-ink2);margin:4px 0}
.umc-ia-questions li::before{content:"?";flex:0 0 20px;height:20px;border-radius:50%;background:var(--ia-v);color:#fff;font-size:12px;font-weight:800;
  display:flex;align-items:center;justify-content:center}
.umc-ia-alertes{margin:10px 0 0;padding:0;list-style:none}
.umc-ia-alertes li{font-size:13.5px;color:var(--ia-warn);margin:4px 0}
.umc-ia-alertes li::before{content:"⚠ "}
.umc-ia-msg{font-size:14px;color:var(--ia-ink2)}
.umc-ia-suite{margin:12px 0 0}
.umc-ia-mention{margin:10px 0 0;font-size:11.5px;color:var(--ia-ink3)}
/* Un champ que l'IA vient de remplir : un halo qui s'éteint. */
.umc-ia-rempli{animation:umc-ia-halo 2.4s ease-out 1}
@keyframes umc-ia-halo{0%{box-shadow:0 0 0 3px rgba(124,92,255,.45);border-color:#7c5cff}100%{box-shadow:0 0 0 0 rgba(124,92,255,0)}}
/* Version compacte (page d'accueil) : une ligne, un bouton. */
.umc-ia.compact{padding:14px 14px 12px;margin:0 0 22px;max-width:600px}
.umc-ia.compact textarea{min-height:58px;font-size:15px}
@media (max-width:560px){.umc-ia{padding:15px 14px 13px}.umc-ia-go{width:100%;justify-content:center}}
@media (prefers-reduced-motion:reduce){.umc-ia-badge,.umc-ia-go.pense::after,.umc-ia-micro.ecoute,.umc-ia-rempli,.umc-ia-res{animation:none!important}}
