/**
 * Theme-Overrides für Bootstrap/Basis-Komponenten
 *
 * Verwendet ausschließlich CSS Custom Properties aus :root.
 * Die Werte werden dynamisch via /css/theme-variables.css gesetzt.
 */

/* Buttons */
.btn-primary {
    background-color: var(--theme-primary) !important;
    border-color: var(--theme-primary) !important;
}

.btn-primary:hover {
    background-color: color-mix(in srgb, var(--theme-primary) 85%, black) !important;
    border-color: color-mix(in srgb, var(--theme-primary) 85%, black) !important;
}

.btn-secondary {
    background-color: var(--theme-secondary) !important;
    border-color: var(--theme-secondary) !important;
}

.btn-accent {
    background-color: var(--theme-accent) !important;
    border-color: var(--theme-accent) !important;
}

/* Backgrounds */
.bg-primary {
    background-color: var(--theme-primary) !important;
}

.bg-secondary {
    background-color: var(--theme-secondary) !important;
}

/* Text */
.text-primary {
    color: var(--theme-primary) !important;
}

a {
    color: var(--theme-primary);
}

a:hover {
    color: color-mix(in srgb, var(--theme-primary) 85%, black);
}

/* Body */
body {
    background-color: var(--theme-background);
    color: var(--theme-text);
    font-family: var(--theme-font-family);
}

/* Navbar */
.navbar {
    background-color: var(--theme-primary) !important;
}

/* Cards */
.card {
    background-color: var(--theme-background);
    color: var(--theme-text);
}

/* Badges */
.badge.bg-primary {
    background-color: var(--theme-primary) !important;
}

.badge.bg-accent {
    background-color: var(--theme-accent) !important;
}

/* Form Elements */
.form-check-input:checked {
    background-color: var(--theme-primary);
    border-color: var(--theme-primary);
}

/* Pagination */
.page-item.active .page-link {
    background-color: var(--theme-primary);
    border-color: var(--theme-primary);
}

/* Nav */
.nav-link.active {
    color: var(--theme-primary) !important;
}
