.animate-fade-in-up {
  animation: fadeInUp 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(16px) scale(0.96);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.animate-chat-pulse {
  animation: chatPulse 2.5s ease-in-out infinite;
}

@keyframes chatPulse {
  0%, 100% {
    box-shadow: 0 0 0 0 hsla(20 15% 11% / 0.4);
  }
  50% {
    box-shadow: 0 0 0 10px hsla(20 15% 11% / 0);
  }
}

/* Mobile full-screen chatbot */
@media (max-width: 640px) {
  .chatbot-window {
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    border-radius: 0 !important;
    border: none !important;
  }
}

.chat-scrollbar::-webkit-scrollbar {
  width: 5px;
}

.chat-scrollbar::-webkit-scrollbar-track {
  background: transparent;
}

.chat-scrollbar::-webkit-scrollbar-thumb {
  background: hsl(30 25% 85%);
  border-radius: 10px;
}

.chat-scrollbar::-webkit-scrollbar-thumb:hover {
  background: hsl(30 30% 62%);
}
