.chatbot-trigger,.chatbot-panel{
    --bg:         #050510;
    --bg-subtle:  #0a0a1e;
    --bg-card:    rgba(12, 12, 36, 0.55);
    --border:     rgba(255,255,255,0.06);
    --border-hi:  rgba(255,255,255,0.12);
    --accent:     #00d4ff;
    --accent-dim: rgba(0,212,255,0.12);
    --accent-glow:rgba(0,212,255,0.35);
    --warn:       #ff4d6a;
    --warn-dim:   rgba(255,77,106,0.12);
    --text:       #e8ecf4;
    --text-2:     rgba(232,236,244,0.55);
    --text-3:     rgba(232,236,244,0.3);
    --font:       'Inter', system-ui, -apple-system, sans-serif;
    --mono:       'JetBrains Mono', monospace;
    --r:          10px;
    --r-lg:       16px;
    --r-pill:     100px;
    --ease:       cubic-bezier(.25,.46,.45,.94);
    --dur:        .35s;
font-family:var(--font);color:var(--text);line-height:1.65}
.chatbot-trigger{position:fixed;bottom:1.5rem;right:1.5rem;z-index:200;width:56px;height:56px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;background:var(--bg-subtle);border:1.5px solid rgba(0,212,255,.3);box-shadow:0 0 16px var(--accent-dim);transition:all var(--dur);opacity:0;transform:scale(0);pointer-events:none}
.chatbot-trigger--visible{opacity:1;transform:scale(1);pointer-events:auto}
.chatbot-trigger:hover{transform:scale(1.08);box-shadow:0 0 28px var(--accent-glow);border-color:var(--accent)}
.chatbot-trigger__avatar{width:36px;height:36px}
.chatbot-trigger__avatar svg{width:100%;height:100%}
.chatbot-trigger__pulse{position:absolute;inset:-4px;border-radius:50%;border:1px solid var(--accent);animation:pulse-ring 3s ease-in-out infinite}
@keyframes pulse-ring{0%,100%{transform:scale(1);opacity:.4}50%{transform:scale(1.18);opacity:0}}

.chatbot-panel{position:fixed;bottom:6.5rem;right:1.5rem;z-index:200;width:370px;max-height:500px;background:rgba(5,5,16,.94);border:1px solid var(--border);border-radius:var(--r-lg);backdrop-filter:blur(20px);display:flex;flex-direction:column;opacity:0;visibility:hidden;transform:translateY(16px) scale(.97);transition:all .3s var(--ease);overflow:hidden}
.chatbot-panel--open{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
.chatbot-panel__head{display:flex;align-items:center;gap:.65rem;padding:.8rem 1rem;border-bottom:1px solid var(--border);background:rgba(0,212,255,.02)}
.chatbot-panel__head-avatar{width:32px;height:32px;flex-shrink:0}
.chatbot-panel__head-avatar svg{width:100%;height:100%}
.chatbot-panel__head strong{font-size:.82rem;display:block}
.chatbot-panel__online{font-family:var(--mono);font-size:.65rem;color:var(--accent)}
.chatbot-panel__close{margin-left:auto;background:none;border:none;color:var(--text-3);font-size:1.3rem;cursor:pointer;padding:.2rem;transition:color var(--dur)}
.chatbot-panel__close:hover{color:var(--text)}
.chatbot-panel__msgs{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.8rem;min-height:250px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}
.chat-msg{max-width:85%;padding:.65rem .9rem;border-radius:var(--r);font-size:.82rem;line-height:1.55;animation:msg-in .3s ease-out}
@keyframes msg-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.chat-msg--bot{align-self:flex-start;background:var(--accent-dim);color:var(--text);border-bottom-left-radius:3px}
.chat-msg--user{align-self:flex-end;background:rgba(255,255,255,.06);color:var(--text);border-bottom-right-radius:3px}
.chat-msg--typing{align-self:flex-start;background:var(--accent-dim);padding:.65rem 1rem}
.typing-dots{display:flex;gap:4px}
.typing-dots span{width:5px;height:5px;border-radius:50%;background:var(--accent);animation:dot-bounce 1.4s infinite}
.typing-dots span:nth-child(2){animation-delay:.2s}
.typing-dots span:nth-child(3){animation-delay:.4s}
@keyframes dot-bounce{0%,60%,100%{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}
.chatbot-panel__input{display:flex;gap:.4rem;padding:.8rem 1rem;border-top:1px solid var(--border)}
.chatbot-panel__input input{flex:1;background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:var(--r-pill);padding:.55rem .9rem;color:var(--text);font-family:var(--font);font-size:.82rem;outline:none;transition:border-color var(--dur)}
.chatbot-panel__input input::placeholder{color:var(--text-3)}
.chatbot-panel__input input:focus{border-color:var(--accent)}
.chatbot-panel__input button{width:36px;height:36px;border-radius:50%;background:var(--accent);border:none;color:var(--bg);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--dur)}
.chatbot-panel__input button:hover{box-shadow:0 0 16px var(--accent-glow)}


.chatbot-trigger{opacity:1;transform:scale(1);pointer-events:auto}
.chatbot-panel{max-height:min(640px,calc(100dvh - 120px))}
.chatbot-panel__msgs{min-height:100px;overflow-wrap:anywhere}
.chatbot-panel__input input{min-width:0}
.chat-msg--error{background:rgba(239,68,68,.14);border:1px solid rgba(239,68,68,.4);color:#fca5a5}
@media(max-width:767px){.chatbot-panel{right:.5rem;left:.5rem;width:auto;bottom:5.5rem}.chatbot-trigger{bottom:1rem;right:1rem}}
@media(prefers-reduced-motion:reduce){.chatbot-trigger__pulse{animation:none}}
