/* AI Chat Widget */
#aia-chat { position:fixed; bottom:24px; right:24px; z-index:99999; font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif; }

#aia-toggle { width:58px; height:58px; border-radius:50%; background:var(--aia-color,#2563eb); color:#fff; border:none; cursor:pointer; font-size:24px; box-shadow:0 4px 18px rgba(37,99,235,.4); transition:transform .2s,box-shadow .2s; position:relative; display:flex; align-items:center; justify-content:center; }
#aia-toggle:hover { transform:scale(1.07); box-shadow:0 6px 24px rgba(37,99,235,.5); }
.aia-badge-dot { position:absolute; top:-3px; right:-3px; width:14px; height:14px; background:#ef4444; border-radius:50%; border:2px solid #fff; }

#aia-window { position:absolute; bottom:70px; right:0; width:350px; max-height:520px; background:#fff; border-radius:14px; box-shadow:0 10px 40px rgba(0,0,0,.16); display:flex; flex-direction:column; overflow:hidden; animation:aiaSU .22s ease; }
@keyframes aiaSU { from{opacity:0;transform:translateY(12px)} to{opacity:1;transform:translateY(0)} }

#aia-header { background:var(--aia-color,#2563eb); color:#fff; padding:13px 15px; display:flex; align-items:center; gap:11px; }
.aia-avatar { width:38px; height:38px; background:rgba(255,255,255,.2); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:18px; flex-shrink:0; }
#aia-bot-name { font-weight:700; font-size:14px; }
#aia-close { background:none; border:none; color:#fff; font-size:16px; cursor:pointer; opacity:.8; padding:4px; }
#aia-close:hover { opacity:1; }

#aia-messages { flex:1; overflow-y:auto; padding:14px; display:flex; flex-direction:column; gap:9px; background:#f8fafc; }
.aia-bubble { max-width:83%; padding:9px 13px; border-radius:14px; font-size:13.5px; line-height:1.5; word-break:break-word; animation:aiaFI .18s ease; }
@keyframes aiaFI { from{opacity:0;transform:translateY(5px)} to{opacity:1;transform:translateY(0)} }
.aia-bubble.bot  { background:#fff; color:#1f2937; border-bottom-left-radius:3px; box-shadow:0 1px 3px rgba(0,0,0,.07); align-self:flex-start; }
.aia-bubble.user { background:var(--aia-color,#2563eb); color:#fff; border-bottom-right-radius:3px; align-self:flex-end; }
.aia-lead-notice { background:#ecfdf5; border:1px solid #6ee7b7; color:#065f46; border-radius:9px; padding:9px 13px; font-size:12.5px; text-align:center; align-self:center; }

.aia-dots { display:inline-flex; gap:4px; align-items:center; padding:3px 0; }
.aia-dots span { width:6px; height:6px; background:#9ca3af; border-radius:50%; animation:aiaBounce 1.1s infinite; }
.aia-dots span:nth-child(2){animation-delay:.18s} .aia-dots span:nth-child(3){animation-delay:.36s}
@keyframes aiaBounce { 0%,80%,100%{transform:translateY(0)} 40%{transform:translateY(-5px)} }

#aia-input-row { display:flex; gap:7px; padding:10px 12px; border-top:1px solid #e5e7eb; background:#fff; }
#aia-input { flex:1; border:1px solid #d1d5db; border-radius:22px; padding:7px 14px; font-size:13.5px; outline:none; transition:border-color .2s; }
#aia-input:focus { border-color:var(--aia-color,#2563eb); }
#aia-send { width:38px; height:38px; background:var(--aia-color,#2563eb); color:#fff; border:none; border-radius:50%; cursor:pointer; display:flex; align-items:center; justify-content:center; flex-shrink:0; transition:opacity .2s; }
#aia-send:hover { opacity:.85; }
#aia-send:disabled { opacity:.4; cursor:not-allowed; }
#aia-input:disabled { opacity:.6; }

#aia-footer { text-align:center; font-size:11px; color:#b0b7c3; padding:5px; background:#fff; border-top:1px solid #f3f4f6; }

@media(max-width:400px){
    #aia-window { width:calc(100vw - 20px); right:-10px; }
    #aia-chat { bottom:14px; right:14px; }
}
