/* AgencyFix — live Jessica chat styles (v0.10.20).
 * Adds the composer, the "Talk to Jessica" voice button, the user bubble, and the inline-chat
 * container on top of the existing .jdock/.jpanel/.jb design (afx-motion.css). Shared design tokens. */

/* User bubble (assistant .jb-bot already defined in afx-motion.css). */
.afx .jb-user{background:linear-gradient(135deg,var(--ac,#6366f1),var(--ac-d,#4f46e5));color:#fff;align-self:flex-end;border:0;}
.afx .jb a{color:inherit;text-decoration:underline;}

/* Dock panel body becomes a scrolling message list. */
.afx .jdock .jpanel-body{max-height:min(50vh,340px);overflow-y:auto;}

/* "Talk to Jessica" voice button — the explicit VOICE choice, above the text composer. */
.afx .jvoice-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:calc(100% - 1.2rem);
  margin:.6rem .6rem 0;padding:.6rem 1rem;border:0;border-radius:999px;cursor:pointer;font-weight:700;font-size:.9rem;
  color:#fff;background:linear-gradient(135deg,var(--ac,#6366f1),var(--ac-d,#4f46e5));}
.afx .jvoice-btn svg{width:18px;height:18px;}
.afx .jvoice-btn.is-live{background:#e5484d;animation:afxJmic 1.1s ease-in-out infinite;}
@keyframes afxJmic{0%,100%{opacity:1;}50%{opacity:.55;}}

/* Text composer (shared by dock + inline). */
.afx .jcompose{display:flex;align-items:center;gap:.4rem;padding:.6rem;background:#fff;border-top:1px solid var(--line,#e7eaf1);}
.afx .jchat-inline .jcompose{border-radius:0 0 14px 14px;}
.afx .jcompose-in{flex:1;min-width:0;border:1px solid var(--line,#e7eaf1);border-radius:999px;padding:.55rem .85rem;
  font-size:.9rem;color:var(--ink,#0a0c10);background:#f7f8fc;outline:none;font-family:inherit;}
.afx .jcompose-in:focus{border-color:var(--ac,#6366f1);background:#fff;}
.afx .jcompose-send{flex:none;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;
  border-radius:50%;border:0;cursor:pointer;background:linear-gradient(135deg,var(--ac,#6366f1),var(--ac-d,#4f46e5));color:#fff;}
.afx .jcompose-send svg{width:18px;height:18px;}
.afx .jcompose-send:disabled{opacity:.5;cursor:default;}

/* Inline "Meet Jessica" chat card. */
.afx .jchat-inline{padding:0;overflow:hidden;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line,#e7eaf1);}
.afx .jchat-inline-hd{display:flex;align-items:center;gap:.6rem;padding:.8rem 1rem;background:linear-gradient(135deg,#0e1326,#0a0e1a);color:#fff;}
.afx .jchat-inline-msgs{display:flex;flex-direction:column;gap:.55rem;padding:1rem;background:#f7f8fc;
  min-height:180px;max-height:min(46vh,320px);overflow-y:auto;}

@media(prefers-reduced-motion:reduce){.afx .jvoice-btn.is-live{animation:none;}}
