:root {
    --rz-primary: #3949ab;
    --rz-primary-light: #7986cb;
    --rz-primary-lighter: rgba(57, 73, 171, 0.12);
    --rz-primary-dark: #283593;
    --rz-primary-darker: #1a237e;
    --rz-on-primary: #ffffff;
    --rz-on-primary-light: #ffffff;
    --rz-on-primary-lighter: #1a237e;
    --rz-on-primary-dark: #ffffff;
    --rz-on-primary-darker: #ffffff;

    --rz-secondary: #5c6bc0;
    --rz-secondary-light: #9fa8da;
    --rz-secondary-lighter: rgba(92, 107, 192, 0.12);
    --rz-secondary-dark: #3949ab;
    --rz-secondary-darker: #283593;
    --rz-on-secondary: #ffffff;
    --rz-on-secondary-light: #ffffff;
    --rz-on-secondary-lighter: #283593;
    --rz-on-secondary-dark: #ffffff;
    --rz-on-secondary-darker: #ffffff;

    --rz-border-radius: 10px;
}

/* RadzenHeader passe en position:fixed dès que le circuit interactif s'hydrate, ce qui le fait
   flotter au-dessus du header/sidebar (au lieu de rester dans la grille de RadzenLayout) et
   empêche la sidebar de s'étirer jusqu'en bas. On le force à rester dans la grille. */
.rz-layout > .rz-header.fixed {
    position: static;
}

/* Dialog avec onglets : structure flex pour que le contenu s'étire verticalement.
   :has() est insensible au redimensionnement (aucune dépendance au style inline). */
.rz-dialog:has(.rz-tabview) {
    display: flex !important;
    flex-direction: column !important;
}
.rz-dialog:has(.rz-tabview) > .rz-dialog-content {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

/* Bascule "statut de rédaction" (fiche célébration) : mêmes couleurs que le badge de statut
   affiché dans la liste des célébrations (Celebrations.razor). */
.lx-selectbar-statut .rz-button:nth-child(1).rz-state-active {
    background-color: var(--rz-warning);
    color: var(--rz-on-warning);
}
.lx-selectbar-statut .rz-button:nth-child(2).rz-state-active {
    background-color: var(--rz-success);
    color: var(--rz-on-success);
}

/* Bascule "thème" (fiche modèle / assistant de création) : aperçu visuel du thème choisi. */
.lx-selectbar-theme .rz-button:nth-child(1).rz-state-active {
    background-color: var(--rz-base-900);
    color: var(--rz-white);
}
.lx-selectbar-theme .rz-button:nth-child(2).rz-state-active {
    background-color: var(--rz-white);
    color: var(--rz-black);
}

/* Panneau d'un RadzenPopup utilisé en "fausse combo" (ex: sélecteur de chant/prière dans
   PageTexteChampsEditeur.razor) : redonne l'apparence de l'ancienne fenêtre modale (fond, ombre,
   coins arrondis) sans l'overlay assombrissant tout l'écran d'un vrai dialogue. */
.lx-popup-panel {
    background: var(--rz-base-background-color);
    border-radius: var(--rz-border-radius);
    box-shadow: 0 4px 20px rgba(0, 0, 0, .25);
    padding: 1rem;
    z-index: 1000;
}

/* Structure interne des onglets dans les dialogs */
.rz-dialog .rz-tabview {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
}
.rz-dialog .rz-tabview-panels {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 0;
}
.rz-dialog .rz-tabview-panel {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 0;
    overflow-y: auto;
    padding-top: 0.5rem;
}

