/* AMX DIGITAL — Assistant IA — styles (scopés sous #booster-ai-root) */
@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,500;12..96,600;12..96,700&family=Inter:wght@400;450;500;600&display=swap');

#booster-ai-root{
  --ink:#0E1116; --brand:#0EA571; --amber:#FFB020;
  --brand-d:#0B8A60; --brand-soft:#E6F6EF; --muted:#6B7280; --line:rgba(14,17,22,.08);
  font-family:'Inter',system-ui,-apple-system,sans-serif;
  -webkit-font-smoothing:antialiased;
}
#booster-ai-root *{ box-sizing:border-box; margin:0; padding:0; }
#booster-ai-root button{ font-family:inherit; cursor:pointer; border:none; background:none; line-height:1; }
#booster-ai-root .bw-ic{ display:inline-grid; place-items:center; width:18px; height:18px; }

/* orbe (présence de l'agent) */
#booster-ai-root .bw-orb{ position:relative; width:38px; height:38px; border-radius:50%; flex:none;
  background:radial-gradient(circle at 32% 30%, #6CE7B6, var(--brand) 52%, #0A6E4C 100%); }
#booster-ai-root .bw-orb.sm{ width:34px; height:34px; }
#booster-ai-root .bw-orb::after{ content:''; position:absolute; inset:-7px; border-radius:50%;
  background:conic-gradient(from 0deg, rgba(255,176,32,0), rgba(255,176,32,.55), rgba(14,165,113,0) 60%);
  filter:blur(7px); opacity:.75; animation:bw-spin 6s linear infinite; }
#booster-ai-root .bw-orb::before{ content:''; position:absolute; inset:0; border-radius:50%;
  box-shadow:0 0 14px 1px rgba(14,165,113,.55); animation:bw-breathe 3.4s ease-in-out infinite; }
#booster-ai-root .bw-orb.thinking::after{ animation-duration:1.8s; opacity:1; }
#booster-ai-root .bw-orb.thinking::before{ animation-duration:1s; }
@keyframes bw-spin{ to{ transform:rotate(360deg); } }
@keyframes bw-breathe{ 0%,100%{ transform:scale(.9); opacity:.55; } 50%{ transform:scale(1.18); opacity:1; } }

/* lanceur */
#booster-ai-root .bw-launcher{ position:fixed; right:22px; bottom:22px; width:62px; height:62px; border-radius:50%;
  background:var(--ink); display:grid; place-items:center; z-index:2147483000;
  box-shadow:0 12px 30px rgba(14,17,22,.32); transition:transform .2s ease; }
#booster-ai-root .bw-launcher:hover{ transform:translateY(-2px) scale(1.04); }
#booster-ai-root .bw-launcher-dot{ position:absolute; top:9px; right:9px; width:11px; height:11px; border-radius:50%;
  background:var(--amber); border:2px solid var(--ink); }

/* panneau */
#booster-ai-root .bw-panel{ position:fixed; right:22px; bottom:22px; z-index:2147483000;
  width:404px; height:min(648px, calc(100vh - 44px)); display:flex; flex-direction:column; overflow:hidden;
  background:#fff; border-radius:22px; color:var(--ink);
  box-shadow:0 24px 60px rgba(14,17,22,.28), 0 2px 8px rgba(14,17,22,.08);
  animation:bw-pop .26s cubic-bezier(.2,.9,.3,1.1); }
@keyframes bw-pop{ from{ opacity:0; transform:translateY(14px) scale(.97); } to{ opacity:1; transform:none; } }
#booster-ai-root .bw-panel.full{ inset:0; right:0; bottom:0; width:100%; height:100%; border-radius:0; }
@media(max-width:560px){
  #booster-ai-root .bw-panel{ inset:0; width:100%; height:100%; border-radius:0; right:0; bottom:0; }
}

/* entête */
#booster-ai-root .bw-head{ display:flex; align-items:center; justify-content:space-between; gap:10px;
  padding:14px 14px 14px 16px; background:var(--ink); color:#fff; }
#booster-ai-root .bw-head-id{ display:flex; align-items:center; gap:11px; min-width:0; }
#booster-ai-root .bw-head-name{ font-family:'Bricolage Grotesque'; font-weight:600; font-size:16px; }
#booster-ai-root .bw-head-status{ display:flex; align-items:center; gap:6px; font-size:12px; color:#aeb6c6; margin-top:3px; }
#booster-ai-root .bw-live{ width:7px; height:7px; border-radius:50%; background:#3BE08F; animation:bw-live 2.4s infinite; }
@keyframes bw-live{ 0%{ box-shadow:0 0 0 0 rgba(59,224,143,.55);} 70%{ box-shadow:0 0 0 7px rgba(59,224,143,0);} 100%{ box-shadow:0 0 0 0 rgba(59,224,143,0);} }
#booster-ai-root .bw-head-actions{ display:flex; align-items:center; gap:2px; }
#booster-ai-root .bw-head-actions button{ width:34px; height:34px; border-radius:9px; color:#c3cad7; display:grid; place-items:center; transition:.15s; }
#booster-ai-root .bw-head-actions button:hover{ background:rgba(255,255,255,.1); color:#fff; }

/* messages */
#booster-ai-root .bw-msgs{ flex:1; overflow-y:auto; background:radial-gradient(600px 300px at 100% 0%, #f3fbf7, #fff 70%); }
#booster-ai-root .bw-msgs-inner{ padding:18px 16px 8px; display:flex; flex-direction:column; gap:14px; }
#booster-ai-root .bw-row{ display:flex; gap:9px; max-width:100%; }
#booster-ai-root .bw-row.user{ justify-content:flex-end; }
#booster-ai-root .bw-row.bot{ align-items:flex-start; }
#booster-ai-root .bw-avatar{ flex:none; width:26px; height:26px; border-radius:50%; margin-top:2px; color:#fff;
  background:linear-gradient(140deg, var(--brand), #0a6e4c); display:grid; place-items:center; }
#booster-ai-root .bw-avatar .bw-ic{ width:14px; height:14px; }
#booster-ai-root .bw-bubble{ max-width:80%; padding:11px 14px; border-radius:16px; font-size:14.5px; line-height:1.5; }
#booster-ai-root .bw-bubble.bot{ background:#F2F4F7; color:#1b2230; border-top-left-radius:5px; }
#booster-ai-root .bw-bubble.bot.err{ background:#fdecec; color:#8a2b2b; }
#booster-ai-root .bw-bubble.user{ background:var(--brand); color:#fff; border-top-right-radius:5px; white-space:pre-wrap;
  box-shadow:0 4px 14px rgba(14,165,113,.28); }
#booster-ai-root .bw-p + .bw-p, #booster-ai-root .bw-p + .bw-ul, #booster-ai-root .bw-ul + .bw-p{ margin-top:8px; }
#booster-ai-root .bw-ul{ padding-left:18px; display:flex; flex-direction:column; gap:3px; }

/* indicateur de saisie */
#booster-ai-root .bw-typing{ display:flex; gap:4px; align-items:center; }
#booster-ai-root .bw-typing i{ width:7px; height:7px; border-radius:50%; background:#9aa3b2; animation:bw-bounce 1.2s infinite; }
#booster-ai-root .bw-typing i:nth-child(2){ animation-delay:.15s; }
#booster-ai-root .bw-typing i:nth-child(3){ animation-delay:.3s; }
@keyframes bw-bounce{ 0%,60%,100%{ transform:translateY(0); opacity:.5; } 30%{ transform:translateY(-4px); opacity:1; } }

/* suggestions */
#booster-ai-root .bw-chips{ display:flex; flex-wrap:wrap; gap:8px; padding:2px 0 6px 35px; }
#booster-ai-root .bw-chip{ font-size:13px; font-weight:500; color:var(--brand-d); background:var(--brand-soft);
  border:1px solid rgba(14,165,113,.18); padding:8px 13px; border-radius:999px; transition:.15s; }
#booster-ai-root .bw-chip:hover{ background:var(--brand); color:#fff; }

/* saisie */
#booster-ai-root .bw-input{ display:flex; align-items:flex-end; gap:8px; padding:12px 14px 6px; border-top:1px solid var(--line); }
#booster-ai-root .bw-input textarea{ flex:1; resize:none; border:1px solid var(--line); border-radius:14px; padding:11px 13px;
  font-size:14.5px; font-family:inherit; line-height:1.4; max-height:120px; outline:none; background:#fafbfc; color:var(--ink);
  transition:border-color .15s, box-shadow .15s; }
#booster-ai-root .bw-input textarea:focus{ border-color:var(--brand); box-shadow:0 0 0 3px rgba(14,165,113,.14); background:#fff; }
#booster-ai-root .bw-send{ flex:none; width:40px; height:40px; border-radius:12px; background:var(--ink); color:#fff; display:grid; place-items:center; transition:.15s; }
#booster-ai-root .bw-send:hover{ background:var(--brand); }
#booster-ai-root .bw-foot{ text-align:center; font-size:11px; color:#9aa1ad; padding:4px 0 10px; }

@media(prefers-reduced-motion:reduce){ #booster-ai-root *{ animation:none !important; } }

/* ---- v4 : messages de l'équipe (prise en main humaine) ---- */
#booster-ai-root .bw-avatar.agent{ background:linear-gradient(140deg, #232B3A, var(--ink)); }
#booster-ai-root .bw-bwrap{ max-width:80%; display:flex; flex-direction:column; }
#booster-ai-root .bw-bwrap .bw-bubble{ max-width:100%; }
#booster-ai-root .bw-byline{ font-size:10.5px; font-weight:600; letter-spacing:.05em; text-transform:uppercase; color:#8a919d; margin:0 0 3px 2px; }
