/* ... (tous vos styles existants) ... */

/* Main content padding pour compenser la navbar fixe */
.main-content-wrapper { 
    padding-top: 70px; /* Hauteur de la navbar (56px) + une petite marge (14px) */
    min-height: calc(100vh - 56px - 56px); /* Pleine hauteur moins navbar et footer */
    padding-bottom: 70px; /* Espace pour le footer s'il n'est pas fixed-bottom */
}

.main-content-wrapper-public { /* Pour les pages comme login, sans sidebar */
    padding-top: 70px;
     min-height: calc(100vh - 56px - 56px);
    padding-bottom: 70px;
}

.flash-messages-container {
    position: relative; /* S'assure qu'il est dans le flux normal après le padding-top du main */
    z-index: 1050; /* Au-dessus de la plupart des éléments */
}


/* Ajustement du footer pour les pages authentifiées pour qu'il ne soit pas fixed-bottom 
   et qu'il suive le contenu si celui-ci est court, mais reste en bas si le contenu est long */
.authenticated-footer {
    /* Retirer fixed-bottom si présent */
    /* Le padding-bottom sur .main-content-wrapper devrait lui donner de l'espace */
    background-color: #f8f9fa !important; /* Assurer la même couleur que le fond général */
    width: calc(100% - 250px); /* Largeur moins le sidebar */
    margin-left: 250px; /* Pour s'aligner avec le contenu principal */
    position: relative; /* Ou static, pour qu'il suive le flux */
}

@media (max-width: 767.98px) {
    .authenticated-footer {
        width: 100%;
        margin-left: 0;
    }
     .main-content-wrapper {
        min-height: calc(100vh - 56px - 56px - 56px); /* Navbar + Sidebar Mobile (qui est aussi une barre) + Footer */
    }
}


/* ... (le reste de vos styles) ... */
