/* 
 * Dark Theme for CodexNotes
 * This stylesheet provides dark mode styling for the application
 */

/* Dark mode styles for body and main elements */
body.dark-theme {
    background-color: #121212 !important;
    color: #e0e0e0 !important;
}

body.dark-theme .bg-light {
    background-color: #1e1e1e !important;
}

body.dark-theme .text-muted {
    color: #aaaaaa !important;
}

body.dark-theme .card {
    background-color: #2d2d2d !important;
    border-color: #444444 !important;
}

body.dark-theme .card-header {
    background-color: #242424 !important;
    border-color: #444444 !important;
}

body.dark-theme .list-group-item {
    background-color: #2d2d2d !important;
    border-color: #444444 !important;
    color: #e0e0e0;
}

body.dark-theme .list-group-item:hover {
    background-color: #3d3d3d !important;
}

body.dark-theme .list-group-item.active {
    background-color: #0d6efd !important;
    color: white !important;
}

/* Input fields and forms */
body.dark-theme .form-control,
body.dark-theme .form-select,
body.dark-theme .input-group-text {
    background-color: #333333 !important;
    border-color: #444444 !important;
    color: #e0e0e0 !important;
}

body.dark-theme .form-control:focus {
    background-color: #3a3a3a !important;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25) !important;
}

/* Table styles */
body.dark-theme .table {
    color: #e0e0e0 !important;
}

body.dark-theme .table-striped > tbody > tr:nth-of-type(odd) {
    background-color: rgba(255, 255, 255, 0.05) !important;
}

body.dark-theme .table-hover > tbody > tr:hover {
    background-color: rgba(255, 255, 255, 0.075) !important;
}

/* Navbar styles */
body.dark-theme .navbar-light {
    background-color: #252525 !important;
}

body.dark-theme .navbar-light .navbar-brand,
body.dark-theme .navbar-light .nav-link {
    color: #e0e0e0 !important;
}

/* Modal styles */
body.dark-theme .modal-content {
    background-color: #2d2d2d !important;
    border-color: #444444 !important;
}

body.dark-theme .modal-header,
body.dark-theme .modal-footer {
    border-color: #444444 !important;
}

/* Dropdown menu */
body.dark-theme .dropdown-menu {
    background-color: #2d2d2d !important;
    border-color: #444444 !important;
}

body.dark-theme .dropdown-item {
    color: #e0e0e0 !important;
}

body.dark-theme .dropdown-item:hover,
body.dark-theme .dropdown-item:focus {
    background-color: #3d3d3d !important;
}

body.dark-theme .dropdown-divider {
    border-color: #444444 !important;
}

/* Button styling */
body.dark-theme .btn-outline-secondary {
    color: #adb5bd !important;
    border-color: #adb5bd !important;
}

body.dark-theme .btn-outline-secondary:hover {
    background-color: #3d3d3d !important;
    color: #e0e0e0 !important;
}

body.dark-theme .btn-close {
    filter: invert(1) grayscale(100%) brightness(200%);
}

/* Code editor/snippets related */
body.dark-theme .code-editor {
    background-color: #1e1e1e !important;
    color: #e0e0e0 !important;
    border-color: #444444 !important;
}

body.dark-theme pre.highlight {
    background-color: #1e1e1e !important;
}

/* Badge styling */
body.dark-theme .badge.bg-light {
    background-color: #444444 !important;
    color: #e0e0e0 !important;
}

/* Theme preview in profile page */
body.dark-theme .theme-preview.light {
    background-color: #f8f9fa;
    color: #212529;
    border: 2px solid #dee2e6;
}

body.dark-theme .theme-preview.dark {
    background-color: #212529;
    color: #f8f9fa;
    border: 2px solid #0d6efd;
}
