.chatbot-overlay{position:fixed;bottom:2rem;right:2rem;width:380px;height:550px;background:var(--bg-main);border:1px solid var(--dash-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl),0 0 40px rgba(99,102,241,.1);display:flex;flex-direction:column;z-index:1000;overflow:hidden;color:var(--text-main)}.chatbot-header{padding:1rem 1.25rem;background:linear-gradient(135deg,#4f46e5,#7c3aed 50%,#6d28d9);border-bottom:none;justify-content:space-between}.chatbot-header,.chatbot-title{display:flex;align-items:center}.chatbot-title{gap:.5rem}.chatbot-title h3{font-size:1.1rem;font-weight:600;margin:0;color:white}.chatbot-avatar-pfp{display:none}.chatbot-close{font-size:1.5rem;color:rgba(255,255,255,.7);transition:color .2s ease;padding:0 4px}.chatbot-close:hover{color:white}.chatbot-messages{flex:1 1;overflow-y:auto;padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.chatbot-messages::-webkit-scrollbar{width:6px}.chatbot-messages::-webkit-scrollbar-track{background:transparent}.chatbot-messages::-webkit-scrollbar-thumb{background:var(--dash-border);border-radius:10px}.chat-bubble-container{display:flex;align-items:flex-end;gap:.5rem;max-width:85%}.chat-bubble-container.user{align-self:flex-end}.chat-bubble-container.bot{align-self:flex-start}.bot-avatar{display:none}.bot-avatar-img{width:100%;height:100%;display:block;object-fit:cover;border-radius:50%;image-rendering:-webkit-optimize-contrast;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}.chat-bubble{padding:.75rem 1rem;border-radius:14px;font-size:.95rem;line-height:1.4;word-break:break-word}.chat-bubble.bot{background:var(--bg-tertiary);color:var(--text-main);border-bottom-left-radius:4px}.chat-bubble.user{background:var(--primary);color:white;border-bottom-right-radius:4px}.typing-indicator{display:flex;align-items:center;gap:4px;padding:.85rem 1rem}.typing-indicator span{width:6px;height:6px;background-color:var(--text-muted);border-radius:50%;animation:bounce 1.4s ease-in-out infinite both}.typing-indicator span:first-child{animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@keyframes pulse{0%{transform:scale(.95);box-shadow:0 0 0 0 rgba(16,185,129,.7)}70%{transform:scale(1);box-shadow:0 0 0 6px rgba(16,185,129,0)}to{transform:scale(.95);box-shadow:0 0 0 0 rgba(16,185,129,0)}}.chatbot-input-area{display:flex;padding:1rem;border-top:1px solid var(--dash-border);gap:.5rem;background:var(--bg-secondary)}.chatbot-input-area input{flex:1 1;padding:.75rem 1rem;border:1px solid var(--dash-border);border-radius:20px;outline:none;font-family:inherit;font-size:.95rem;background:var(--bg-main);color:var(--text-main);transition:border-color .2s ease}.chatbot-input-area input:focus{border-color:var(--primary)}.chatbot-input-area button{width:40px;height:40px;border-radius:50%;background:var(--primary);color:white;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .2s ease,background .2s ease}.chatbot-input-area button:disabled{background:var(--dash-border);cursor:not-allowed;transform:none}.chatbot-input-area button:hover:not(:disabled){transform:scale(1.05)}.chatbot-input-area button svg{width:18px;height:18px;margin-left:2px}.chatbot-footer{padding:.5rem;text-align:center;font-size:.7rem;color:var(--text-muted);background:var(--bg-secondary);display:flex;justify-content:center;align-items:center;gap:4px}@media (max-width:768px){.chatbot-overlay{bottom:0;right:0;width:100%;height:100%;max-height:100dvh;border-radius:0;border:none}.chatbot-trigger{bottom:1rem!important;right:1rem!important;transform:scale(.85)}}