/* Override global popover z-index variable used by EGKits.css so it wins by
   specificity. Value now flows from the authoritative token in tokens.css. */
:root { --egk-popover-z: var(--egk-z-popover, 12020) !important; }

/* Ensure MudBlazor popovers and menus are always above overlays/dialogs in the Public site too */
.mud-popover,
.mud-menu,
.mud-menu-list,
.mud-select-menu {
    z-index: var(--egk-z-popover, 12020) !important;
    pointer-events: auto !important;
}

/* Language selector popover: opaque background and proper stacking.
   Fallback #fff needed when MudThemeProvider is absent (auth pages).
   color #212121 needed to override inherited light text from glass-morphism auth pages. */
.language-selector-popover,
.mud-popover.language-selector-popover {
    z-index: var(--egk-z-language-popover, 15010) !important;
    position: fixed !important;
    background-color: var(--mud-palette-surface, #fff) !important;
    color: var(--mud-palette-text-primary, #212121) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.language-selector-popover .mud-paper,
.language-selector-popover .mud-list,
.language-selector-popover .mud-menu {
    background-color: var(--mud-palette-surface, #fff) !important;
    color: var(--mud-palette-text-primary, #212121) !important;
}

.language-selector-popover .mud-typography,
.language-selector-popover .mud-list-item {
    color: var(--mud-palette-text-primary, #212121) !important;
}

.language-selector-popover .mud-text-secondary {
    color: var(--mud-palette-text-secondary, rgba(0,0,0,0.6)) !important;
}

body .language-selector-popover,
body .mud-popover.language-selector-popover,
body .language-selector-popover .mud-paper,
body .language-selector-popover .mud-list,
body .language-selector-popover .mud-list-root,
body .language-selector-popover .mud-list-padding,
body .language-selector-popover .mud-menu,
body .language-selector-popover .professional-language-menu,
body .language-selector-popover .language-options-container,
body .language-selector-popover .language-options-list {
    background-color: #fff !important;
    color: #212121 !important;
}

body .language-selector-popover .mud-list-item,
body .language-selector-popover .mud-list-item-clickable,
body .language-selector-popover .mud-list-item-button,
body .language-selector-popover .mud-list-item-gutters,
body .language-selector-popover .professional-language-item {
    background-color: #fff !important;
    color: #212121 !important;
}

body .language-selector-popover .mud-list-item:hover,
body .language-selector-popover .mud-list-item:focus,
body .language-selector-popover .mud-list-item:focus-visible,
body .language-selector-popover .mud-list-item-clickable:hover,
body .language-selector-popover .mud-list-item-clickable:focus,
body .language-selector-popover .mud-list-item-button:hover,
body .language-selector-popover .mud-list-item-button:focus,
body .language-selector-popover .mud-list-item:hover .professional-language-item,
body .language-selector-popover .mud-list-item-clickable:hover .professional-language-item,
body .language-selector-popover .mud-list-item-button:hover .professional-language-item {
    background-color: #f5f7fa !important;
    color: #212121 !important;
}

body .language-selector-popover .mud-list-item:hover *,
body .language-selector-popover .mud-list-item:focus *,
body .language-selector-popover .mud-list-item-clickable:hover *,
body .language-selector-popover .mud-list-item-clickable:focus *,
body .language-selector-popover .mud-list-item-button:hover *,
body .language-selector-popover .mud-list-item-button:focus * {
    color: #212121 !important;
}

body .language-selector-popover .language-menu-header,
body .language-selector-popover .language-menu-header *,
body .language-selector-popover .language-stats .mud-chip,
body .language-selector-popover .language-stats .mud-chip * {
    color: #fff !important;
}

body .language-selector-popover .mud-text-secondary,
body .language-selector-popover .language-secondary-info,
body .language-selector-popover .language-menu-footer .mud-typography {
    color: rgba(0,0,0,0.64) !important;
}

/* === TOAST / SNACKBAR: always the top-most layer ===
   Popovers here are elevated to 12020 and the language popover to 15010, which
   would otherwise sit above MudBlazor's default snackbar (~1500) and hide
   toasts behind dialogs/popovers. Force the snackbar provider and items above
   everything. The providers live at the App.razor root, so this is portal-safe. */
:root {
    --mud-zindex-snackbar: var(--egk-z-snackbar, 30000) !important;
}

.mud-snackbar-provider,
.mud-snackbar-provider .mud-snackbar,
.mud-snackbar {
    z-index: var(--egk-z-snackbar, 30000) !important;
}

@media (max-width: 600px) {
    .mud-snackbar-provider,
    .mud-snackbar {
        z-index: var(--egk-z-snackbar, 30000) !important;
    }
}

/* Snackbar: ensure opaque background on auth pages */
body.auth-page .mud-snackbar {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    background-color: var(--mud-palette-dark, #323232) !important;
    color: #fff !important;
}

body.auth-page .mud-snackbar .mud-snackbar-content-message {
    color: #fff !important;
}
