.chatbot-fab {
    position: fixed; bottom: 20px; right: 20px;
    width: 60px; height: 60px; background: #0055a5;
    color: white; border-radius: 50%; display: flex;
    align-items: center; justify-content: center;
    cursor: pointer; box-shadow: 0 4px 12px rgba(0,0,0,0.2);
    z-index: 99999; font-size: 24px; transition: 0.3s;
}
.chatbot-fab:hover { transform: scale(1.1); }

.chatbot-container {
    position: fixed; bottom: 90px; right: 20px;
    width: 340px; height: 450px; border-radius: 16px;
    background: white; box-shadow: 0 8px 30px rgba(0,0,0,0.15);
    z-index: 99999; display: flex; flex-direction: column;
    font-family: -apple-system, sans-serif; overflow: hidden;
}

.chatbot-header {
    background: #0073aa; color: white; padding: 14px;
    text-align: center; font-weight: bold; position: relative;
}
.dark-mode-toggle {
    position: absolute; right: 10px; top: 10px;
    background: none; border: none; color: white; cursor: pointer;
}

.chatbot-body {
    flex: 1; overflow-y: auto; padding: 10px; display: flex;
    flex-direction: column;
}

.user-msg { text-align: right; margin: 4px 0; }
.user-msg span {
    background: #0073aa; color: white; padding: 8px 12px;
    border-radius: 12px 0 12px 12px; max-width: 80%;
    display: inline-block;
}

.bot-msg { text-align: left; margin: 4px 0; }
.bot-msg span {
    background: #f1f1f1; color: black; padding: 8px 12px;
    border-radius: 0 12px 12px 12px; max-width: 80%;
    display: inline-block;
}

.quick-replies {
    display: flex; flex-wrap: wrap; gap: 6px; padding: 8px 10px;
}
.qbtn {
    background: #eef; border: 1px solid #99f; padding: 6px 10px;
    border-radius: 18px; font-size: 13px; cursor: pointer;
}
.qbtn:hover { background: #ddf; }

.chatbot-input {
    display: flex; padding: 10px; border-top: 1px solid #eee;
}
.chatbot-input input {
    flex: 1; padding: 10px; border: 1px solid #ccc;
    border-radius: 8px 0 0 8px; outline: none;
}
.chatbot-input button {
    background: #0073aa; color: white; border: none;
    padding: 0 12px; border-radius: 0 8px 8px 0;
    cursor: pointer;
}
.mic-btn {
    background: #f0f0f0; border-left: 1px solid #ccc;
    border-radius: 0; padding: 0 10px;
}

body.chatbot-dark-mode {
    --bg: #1a1a1a; --fg: #fff; --input: #2a2a2a;
}
body.chatbot-dark-mode .chatbot-container { background: var(--bg); }
body.chatbot-dark-mode .chatbot-header, 
body.chatbot-dark-mode .chatbot-input { color: var(--fg); }
body.chatbot-dark-mode .chatbot-input input { background: var(--input); color: white; }
body.chatbot-dark-mode .bot-msg span { background: #333; color: white; }