.chatbot-wrapper {
    display: flex;
    flex-direction: column;
    border-radius: 16px;
    background: #ffffff;
    overflow: hidden;
    border: 1px solid #e6e6e6;
}

.chatbot-header {
    border-bottom: 1px solid rgba(255,255,255,0.2);
}

.chatbot-header h6 {
    font-size: 16px;
    margin-bottom: 2px;
}

.chatbot-avatar img {
    width: 40px;
    height: 40px;
    object-fit: cover;
    border: 2px solid #fff;
    box-shadow: 0 0 8px rgba(0,0,0,0.1);
}

/* Chat Body */
.chatbot-body {
    flex: 1;
    overflow-y: auto;
    background: #f7f9fc;
    padding: 20px;
    scrollbar-width: thin;
}

.chatbot-body::-webkit-scrollbar {
    width: 6px;
}
.chatbot-body::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 10px;
}

/* Chat Messages */
.chat-message {
    display: flex;
    margin-bottom: 15px;
}

.chat-message.bot .message {
    background: #eaf4ff;
    color: #333;
    margin-right: auto;
    border-radius: 14px 14px 14px 0;
    padding: 10px 14px;
    max-width: 70%;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

.chat-message.user .message {
    background: #007bff;
    color: #fff;
    margin-left: auto;
    border-radius: 14px 14px 0 14px;
    padding: 10px 14px;
    max-width: 70%;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

/* Footer */
.chatbot-footer {
    border-top: 1px solid #ddd;
    background: #fff;
}

.chatbot-footer .btn {
    border-radius: 0 8px 8px 0;
    background: linear-gradient(90deg, #007bff, #00c6ff);
    border: none;
    transition: background 0.3s ease;
}

.chatbot-footer .btn:hover {
    background: linear-gradient(90deg, #0056b3, #00a2cc);
}

.typing-indicator .dot {
    display: inline-block;
    width: 8px;
    height: 8px;
    margin: 0 2px;
    background-color: #007bff;
    border-radius: 50%;
    animation: typing 1.4s infinite ease-in-out;
}

.typing-indicator .dot:nth-child(1) {
    animation-delay: 0s;
}

.typing-indicator .dot:nth-child(2) {
    animation-delay: 0.2s;
}

.typing-indicator .dot:nth-child(3) {
    animation-delay: 0.4s;
}

@keyframes typing {
    0%, 80%, 100% {
        transform: scale(0);
    }
    40% {
        transform: scale(1);
    }
}
