/* Barrierefreiheit im Backend (WCAG 2.1 AA, geprüft mit axe-core 4.10).
 *
 * Das Theme blendet in der schmalen Seitenleiste die Menünamen mit
 * display:none aus - die Links hatten damit keinen Namen mehr. Sie bleiben
 * jetzt für Screenreader lesbar und sind nur optisch verborgen.
 *
 * Einige Theme-Farben erreichen 4,5:1 nicht: grauer Text auf hellem Grund
 * (4,3), weiße Schrift auf dem Grün (2,7), Gelb als Schriftfarbe (1,6). Im
 * hellen Modus werden sie so weit abgedunkelt, dass sie reichen. "Hell" heißt:
 * weder html.dark-mode noch data-bs-theme="dark" - der Farbmodus setzt seit
 * 19.09.2026 das Attribut, ohne die Klasse griffen die Regeln auch im Dunkeln.
 */

.adminuiux-sidebar-iconic .adminuiux-sidebar .adminuiux-sidebar-inner .nav .nav-item .nav-link .menu-name {
    display: inline !important;
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

html:not(.dark-mode):not([data-bs-theme="dark"]) .text-secondary {
    color: #525f75 !important;
}

html:not(.dark-mode):not([data-bs-theme="dark"]) .badge.opacity-75 {
    opacity: 1 !important;
}

html:not(.dark-mode):not([data-bs-theme="dark"]) .text-bg-success {
    background-color: #4a7500 !important;
    color: #fff !important;
}

html:not(.dark-mode):not([data-bs-theme="dark"]) .text-success {
    color: #3f6400 !important;
}

html:not(.dark-mode):not([data-bs-theme="dark"]) .text-warning,
html:not(.dark-mode):not([data-bs-theme="dark"]) .btn-outline-warning {
    color: #7a5500 !important;
}

html:not(.dark-mode):not([data-bs-theme="dark"]) .btn-outline-warning:hover,
html:not(.dark-mode):not([data-bs-theme="dark"]) .btn-outline-warning:focus-visible {
    color: #212529 !important;
}

html:not(.dark-mode):not([data-bs-theme="dark"]) .alert-success,
html:not(.dark-mode):not([data-bs-theme="dark"]) .alert-success > div {
    color: #3a5c00 !important;
}

/* Nicht belegte Kurse: früher war die ganze Karte auf 75 % Deckkraft gesetzt,
 * damit fiel auch der Text unter 4,5:1. Jetzt wird nur das Bild blass. */
.kurs-gedimmt .card > :first-child {
    opacity: .55;
}

/* Hinweise in Gelb: Theme-Orange #e37e00 auf Hellgelb erreicht nur 2,6:1 */
html:not(.dark-mode):not([data-bs-theme="dark"]) .alert-warning,
html:not(.dark-mode):not([data-bs-theme="dark"]) .alert-warning > div {
    color: #6b4200 !important;
}

/* Untertitel im Logo: Grau auf dem gelben Vorschau-Band 4,1:1 */
html:not(.dark-mode):not([data-bs-theme="dark"]) .company-tagline {
    color: #525f75;
}

/* Dunkler Modus: helle Badges behalten ihren hellen Grund, die graue Schrift
 * wird dort aber hell (2,9:1). Auf hellem Grund braucht es dunkle Schrift. */
[data-bs-theme="dark"] .text-bg-light.text-secondary,
html.dark-mode .text-bg-light.text-secondary {
    color: #41506a !important;
}

/* Umrandete Knoepfe (.btn-outline-theme): Schrift und Rahmen lagen bei 75 %
 * Deckkraft der Themefarbe. Auf Weiss ergab das 4,12:1 - unter den 4,5:1,
 * die Text braucht (WCAG 1.4.3). Im hellen Modus gilt deshalb die volle
 * Themefarbe (mit dem Standardblau 6,7:1), im dunklen eine aufgehellte
 * Fassung: Dort steht die Themefarbe auf fast schwarzem Grund und kam nur
 * auf 2,3:1. Gerechnet wird aus der Themefarbe des Mandanten, damit eigene
 * Farben mitziehen.
 */
html:not(.dark-mode):not([data-bs-theme="dark"]) .btn-outline-theme {
    --bs-btn-color: rgb(var(--adminuiux-theme-1-rgb));
    --bs-btn-border-color: rgba(var(--adminuiux-theme-1-rgb), .85);
    --bs-btn-disabled-color: rgba(var(--adminuiux-theme-1-rgb), .65);
}

html.dark-mode .btn-outline-theme,
html[data-bs-theme="dark"] .btn-outline-theme {
    --bs-btn-color: color-mix(in srgb, rgb(var(--adminuiux-theme-1-rgb)) 45%, #fff);
    --bs-btn-border-color: color-mix(in srgb, rgb(var(--adminuiux-theme-1-rgb)) 55%, #fff);
    --bs-btn-disabled-color: color-mix(in srgb, rgb(var(--adminuiux-theme-1-rgb)) 45%, #fff);
}

/* Menuetexte und die Zeile unter dem Namen lagen im hellen Modus bei 4,44:1 -
 * knapp unter den 4,5:1 fuer Text. Auffallen tut das erst auf ruhigem
 * Untergrund (Anzeigeoption "Ruhige Darstellung"), zu dunkel ist es aber
 * ueberall. Dieselbe Farbe wie bei .text-secondary oben. */
html:not(.dark-mode):not([data-bs-theme="dark"]) .adminuiux-sidebar .adminuiux-sidebar-inner .nav .nav-item .nav-link:not(.active),
html:not(.dark-mode):not([data-bs-theme="dark"]) .adminuiux-header .navbar .company-tagline,
html:not(.dark-mode):not([data-bs-theme="dark"]) .menu-abschnitt {
    color: #525f75;
}

/* Die aktive Brotkrume - also die Seite, auf der man gerade steht - stand in
 * Bootstraps Grau (#6c757d) und kam damit auf 3,84:1. Sie ist kein Beiwerk,
 * sondern sagt, wo man ist; im dunklen Modus ist dasselbe Grau zu dunkel.
 * Betrifft alle Seiten mit Pfadangabe (Wochenplan, Prüfung, Unterwegs …). */
html:not(.dark-mode):not([data-bs-theme="dark"]) .breadcrumb-item.active {
    color: #525f75;
}

html.dark-mode .breadcrumb-item.active,
html[data-bs-theme="dark"] .breadcrumb-item.active {
    color: #b9c2d0;
}
