/**
 * Dark mode theme styles
 */

/* Dark mode variables */
:root {
    --light-bg: #f8f9fa;
    --light-text: #212529;
    --light-card-bg: #ffffff;
    --light-border: #dee2e6;
    --light-hover: #e9ecef;
    
    --dark-bg: #212529;
    --dark-text: #f8f9fa;
    --dark-card-bg: #343a40;
    --dark-border: #495057;
    --dark-hover: #495057;
}

/* Default light theme */
body {
    background-color: var(--light-bg);
    color: var(--light-text);
    transition: background-color 0.3s ease, color 0.3s ease;
}

.card, .navbar, .dropdown-menu, .modal-content, .list-group-item {
    background-color: var(--light-card-bg);
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

/* Dark theme styles */
html.dark-mode body {
    background-color: var(--dark-bg);
    color: var(--dark-text);
}

html.dark-mode .card,
html.dark-mode .navbar,
html.dark-mode .dropdown-menu,
html.dark-mode .modal-content,
html.dark-mode .list-group-item {
    background-color: var(--dark-card-bg);
    color: var(--dark-text);
    border-color: var(--dark-border);
}

html.dark-mode .card-header,
html.dark-mode .card-footer {
    background-color: rgba(0, 0, 0, 0.2);
    border-color: var(--dark-border);
}

html.dark-mode .table {
    color: var(--dark-text);
}

html.dark-mode .table-light,
html.dark-mode .table-light > th,
html.dark-mode .table-light > td {
    background-color: var(--dark-card-bg);
}

html.dark-mode .border-light {
    border-color: var(--dark-border) !important;
}

html.dark-mode .bg-light {
    background-color: var(--dark-bg) !important;
}

html.dark-mode .bg-white {
    background-color: var(--dark-card-bg) !important;
}

html.dark-mode .text-dark {
    color: var(--dark-text) !important;
}

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

html.dark-mode .navbar-light .navbar-brand,
html.dark-mode .navbar-light .navbar-nav .nav-link {
    color: var(--dark-text);
}

html.dark-mode .navbar-light .navbar-toggler-icon {
    filter: invert(1);
}

html.dark-mode .form-control,
html.dark-mode .input-group-text {
    background-color: var(--dark-card-bg);
    border-color: var(--dark-border);
    color: var(--dark-text);
}

html.dark-mode .form-control:focus {
    background-color: var(--dark-card-bg);
    color: var(--dark-text);
}

html.dark-mode .btn-outline-secondary {
    color: var(--dark-text);
    border-color: var(--dark-border);
}

html.dark-mode .btn-outline-secondary:hover {
    background-color: var(--dark-hover);
    color: var(--dark-text);
}

/* Dropdown menu items in dark mode */
html.dark-mode .dropdown-item {
    color: var(--dark-text);
}

html.dark-mode .dropdown-item:hover,
html.dark-mode .dropdown-item:focus {
    background-color: var(--dark-hover);
    color: var(--dark-text);
}

html.dark-mode .dropdown-divider {
    border-color: var(--dark-border);
}

/* Theme toggle button styles */
#theme-toggle {
    width: 40px;
    height: 38px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

#theme-toggle i {
    font-size: 1.2rem;
}

.dark-icon {
    color: #6c757d;
}

.light-icon {
    color: #ffc107;
}
