#chatbot-widget * { box-sizing: border-box; }
#chatbot-window { transition: box-shadow 0.2s, width 0.2s, border-radius 0.2s; }
#chatbot-window:focus-within { box-shadow: 0 8px 32px rgba(124,58,237,0.18); }
#chatbot-toggle:active { transform: scale(0.96); }
#chatbot-messages::-webkit-scrollbar { width: 6px; background: #f3f0ff; }
#chatbot-messages::-webkit-scrollbar-thumb { background: #d1c4e9; border-radius: 8px; }
#chatbot-input:focus { background: #f3f0ff; }
#chatbot-form button:active { background: #5b21b6; }

/* Chatbot avatar in header */
#chatbot-window img[alt='Bot'] { box-shadow: 0 2px 8px rgba(124,58,237,0.10); }

/* Responsive adjustments */
@media (max-width: 500px) {
  #chatbot-window {
    width: 98vw !important;
    left: 1vw !important;
    right: 1vw !important;
    max-width: 98vw !important;
    border-radius: 16px !important;
    bottom: 70px !important;
    border: 2px solid #a78bfa;
    box-shadow: 0 0 0 3px #888691;
  }
  #chatbot-widget { right: 2vw !important; bottom: 2vw !important; }
}

/* Message bubble animation */
#chatbot-messages div span {
  animation: chatbot-bubble-in 0.18s cubic-bezier(.4,1.3,.6,1) both;
}
@keyframes chatbot-bubble-in {
  0% { transform: scale(0.8) translateY(10px); opacity: 0; }
  100% { transform: scale(1) translateY(0); opacity: 1; }
}

/* Chatbot toggle button hover */
#chatbot-toggle:hover {
  box-shadow: 0 4px 24px rgba(124,58,237,0.22);
  background: #ede9fe;
}

/* Chatbot toggle button animation */
@keyframes chatbot-pulse {
  0% { box-shadow: 0 0 0 0 rgba(124,58,237,0.18), 0 2px 12px rgba(124,58,237,0.18); }
  70% { box-shadow: 0 0 0 12px rgba(124,58,237,0.08), 0 2px 12px rgba(124,58,237,0.18); }
  100% { box-shadow: 0 0 0 0 rgba(124,58,237,0.18), 0 2px 12px rgba(124,58,237,0.18); }
}
#chatbot-toggle {
  animation: chatbot-pulse 1.8s infinite;
}

#chatbot-window[style*='display: flex'],
#chatbot-window[style*='display: block'] {
  border: 2.5px solid #7c3aed !important;
  box-shadow: 0 8px 40px 0 rgba(124,58,237,0.22), 0 1.5px 0 #7c3aed;
} 