/* Dark Mode Styles */
:root.dark-mode, html.dark-mode {
    --message-user-bg: #0a67ca;
    --message-user-text: #ffffff;
    --message-assistant-bg: #2d2d2d;
    --message-assistant-text: #e0e0e0;
    --chat-bg: #1a1a1a;
    --typing-color: #a0a0a0;
    --border-radius: 18px;
    --border-color: #333333;
    --shadow-color: rgba(0, 0, 0, 0.5);
}

.dark-mode body,
.dark-mode .container,
.dark-mode .container-fluid,
.dark-mode .bg-light,
.dark-mode .bg-white {
    background-color: #121212 !important;
    color: #e0e0e0 !important;
}

.dark-mode .card,
.dark-mode .modal-content,
.dark-mode .dropdown-menu,
.dark-mode .chat-footer,
.dark-mode .list-group-item {
    background-color: #222222;
    color: #e0e0e0;
    border-color: #333333;
}

.dark-mode .chat-container {
    background-color: #1a1a1a !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.5);
}

.dark-mode .chat-container.spirit-theme,
.dark-mode .chat-container.spirit-theme .chat-messages,
.dark-mode .chat-container.spirit-theme .chat-header,
.dark-mode .chat-container.spirit-theme .chat-footer,
.dark-mode .typing-indicator,
.dark-mode .message-input-container {
    background-color: #1a1a1a !important;
    color: #e0e0e0 !important;
}

.dark-mode .chat-messages {
    background-color: #1a1a1a;
    background-image: 
        radial-gradient(circle at 25px 25px, rgba(255, 255, 255, 0.01) 2%, transparent 0%), 
        radial-gradient(circle at 75px 75px, rgba(255, 255, 255, 0.01) 2%, transparent 0%);
}

.dark-mode .message.assistant {
    background-color: #2d2d2d;
    color: #e0e0e0;
}

.dark-mode .message-avatar {
    background-color: #333333;
    color: #e0e0e0;
}

.dark-mode .message-input {
    background-color: #2d2d2d;
    color: #e0e0e0;
    border-color: #444444;
}

.dark-mode .message-input:focus {
    border-color: #0a67ca;
    box-shadow: 0 0 0 0.25rem rgba(10, 103, 202, 0.25);
}

.dark-mode .audio-button-sm {
    background-color: #333333;
    color: #e0e0e0;
}

.dark-mode .audio-progress {
    background-color: #444444;
}

.dark-mode .welcome-container {
    color: #a0a0a0;
}

.dark-mode .welcome-icon {
    color: #0a67ca;
}

.dark-mode .theme-toggle:hover {
    background-color: #333333;
}

.dark-mode .dropdown-item:hover {
    background-color: #333333;
}

.dark-mode code {
    color: #88ccff;
}

.dark-mode .table {
    color: #e0e0e0;
}

.dark-mode .form-control,
.dark-mode .form-select,
.dark-mode .input-group-text {
    background-color: #2d2d2d;
    color: #e0e0e0;
    border-color: #444444;
}

.dark-mode .text-muted {
    color: #a0a0a0 !important;
}

.dark-mode .border {
    border-color: #333333 !important;
}

.dark-mode .btn-outline-primary {
    color: #5aa9ff;
    border-color: #5aa9ff;
}

.dark-mode .btn-outline-primary:hover {
    background-color: #0a67ca;
    color: #ffffff;
    border-color: #0a67ca;
}

.dark-mode hr {
    border-color: #333333;
}
