/* Dark-Mode - Bootstrap-Komponenten (Cards, Tabs, Tabellen, Formulare, Buttons). Ausgegliedert aus dark_mode.css; Ladereihenfolge in base_menu.html beibehalten. */

body.dark-mode .card {
    background-color: var(--theme-secondary, #1f1f1f);
    color: var(--theme-text, #ffffff);
    border-color: var(--theme-border, #555555);
    box-shadow: none;
}

body.dark-mode .card-header {
    background-color: var(--theme-secondary, #1f1f1f);
    color: var(--theme-text, #ffffff);
    border-bottom: 1px solid var(--theme-border, #555555);
}

body.dark-mode .card-body {
    background-color: var(--theme-secondary, #1f1f1f);
    color: var(--theme-text, #ffffff);
}

body.dark-mode .nav-tabs {
    border-bottom: 1px solid var(--theme-border, #555555);
}

body.dark-mode .nav-tabs .nav-link {
    color: var(--theme-text, #ffffff);
    border: 1px solid transparent;
    background-color: transparent;
}

body.dark-mode .nav-tabs .nav-link:hover,
body.dark-mode .nav-tabs .nav-link:focus {
    color: var(--theme-text, #ffffff);
    background-color: var(--theme-secondary, #1f1f1f);
    border-color: var(--theme-border, #555555);
}

body.dark-mode .nav-tabs .nav-link.active,
body.dark-mode .nav-tabs .nav-link.show {
    color: var(--theme-text, #ffffff);
    background-color: var(--theme-secondary, #1f1f1f);
    border-color: var(--theme-border, #555555);
    border-bottom-color: var(--theme-secondary, #1f1f1f);
}

body.dark-mode .tab-pane {
    background-color: var(--theme-secondary, #1f1f1f);
    color: var(--theme-text, #ffffff);
}

body.dark-mode .list-group {
    background-color: var(--theme-secondary, #1f1f1f);
    border-color: var(--theme-border, #555555);
}

body.dark-mode .list-group-item {
    background-color: var(--theme-secondary, #1f1f1f);
    color: var(--theme-text, #ffffff);
    border-color: var(--theme-border, #555555);
}

body.dark-mode .list-group-item:hover,
body.dark-mode .list-group-item:focus {
    background-color: #2a2a2a;
    color: var(--theme-text, #ffffff);
}

body.dark-mode .badge {
    background-color: var(--theme-border, #555555);
    color: var(--theme-text, #ffffff);
}

body.dark-mode .progress {
    background-color: #1a1a1a;
    border: 1px solid var(--theme-border, #555555);
}

body.dark-mode .progress .progress-bar {
    color: var(--theme-text, #ffffff);
}

body.dark-mode [class*="btn-outline-"] {
    color: var(--theme-text, #ffffff);
    border-color: var(--theme-border, #555555);
    background-color: transparent;
}

body.dark-mode .table {
    background-color: var(--theme-secondary, #1f1f1f);
    color: var(--theme-text, #ffffff);
    border-color: var(--theme-border, #555555);
}

body.dark-mode .table thead th {
    background-color: var(--theme-secondary, #1f1f1f);
    color: var(--theme-text, #ffffff);
    border-color: var(--theme-border, #555555);
}

body.dark-mode .table tbody td {
    background-color: var(--theme-secondary, #1f1f1f);
    color: var(--theme-text, #ffffff);
    border-color: var(--theme-border, #555555);
}

body.dark-mode .table-hover tbody tr:hover {
    background-color: var(--theme-border, #555555);
    color: var(--theme-text, #ffffff);
}

body.dark-mode [class*="btn-outline-"]:hover,
body.dark-mode [class*="btn-outline-"].active,
body.dark-mode [class*="btn-outline-"].show,
body.dark-mode [class*="btn-outline-"]:focus {
    color: var(--theme-background, #121212);
    background-color: var(--theme-text, #ffffff);
    border-color: var(--theme-text, #ffffff);
    box-shadow: none;
}

body.dark-mode .form-control,
body.dark-mode .form-select,
body.dark-mode textarea,
body.dark-mode input[type="date"],
body.dark-mode input[type="text"] {
    background-color: var(--theme-secondary, #333333) !important;
    color: var(--theme-text, #ffffff) !important;
    border: 1px solid var(--theme-border, #555555) !important;
    -webkit-appearance: none;
    appearance: none;
}

body.dark-mode .form-control:focus,
body.dark-mode .form-select:focus,
body.dark-mode textarea:focus,
body.dark-mode input[type="date"]:focus,
body.dark-mode input[type="text"]:focus {
    background-color: var(--theme-secondary, #444444) !important;
    border-color: var(--accent, #777777) !important;
    color: var(--theme-text, #ffffff) !important;
    box-shadow: 0 0 0 0.2rem var(--accent-soft, rgba(76, 141, 255, 0.28));
}

body.dark-mode .container,
body.dark-mode .container-fluid {
    background-color: #121212 !important;
    color: #ffffff;
}

body.dark-mode .table,
body.dark-mode .table-striped {
    background-color: #121212;
}

body.dark-mode .table-striped tbody tr:nth-of-type(odd) {
    background-color: #1f1f1f;
}

body.dark-mode .table-striped tbody tr:nth-of-type(even) {
    background-color: #2a2a2a;
}
