/* Correction globale du problème de scroll */

/* Assurer que html et body prennent toute la hauteur */
html, body {
    height: 100% !important;
    min-height: 100vh !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Container principal avec scroll correct */
body {
    padding-top: 70px !important; /* Espace pour header fixe */
    padding-bottom: 120px !important; /* Espace pour footer fixe */
    box-sizing: border-box !important;
}

/* Assurer que le contenu principal peut scroller */
main {
    min-height: 400px !important;
    padding-bottom: 50px !important;
    box-sizing: border-box !important;
}

/* INTERDIRE le min-height dans les headers */
.page-header {
    min-height: 0 !important;
    height: auto !important;
    padding: 15px 0 !important;
}

.page-header .container {
    min-height: 0 !important;
    height: auto !important;
}

/* Header fixe sans bloquer le scroll */
header, .app-header, #mainHeader {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 9999 !important;
    width: 100vw !important;
    margin: 0 !important;
}

/* Page header (titre de page) - hauteur compacte */
.page-header {
    min-height: auto !important;
    height: auto !important;
    padding: 15px 0 10px 0 !important;
    margin-bottom: 0 !important;
}

/* Footer fixe sans bloquer le scroll */
footer, .bottom-menu, nav.fixed.bottom-0 {
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 1000 !important;
    width: 100vw !important;
    margin: 0 !important;
}

/* Correction spécifique pour les pages avec contenu long */
.subscription-container,
.success-container,
.message-container,
.admin-container {
    margin-bottom: 50px !important;
    padding-bottom: 30px !important;
}

/* Assurer que les modals et popups sont scrollables */
.modal-body,
.popup-content,
.dropdown-menu-plus {
    max-height: calc(100vh - 200px) !important;
    overflow-y: auto !important;
}

/* Correction pour les boutons flottants */
.floating-button,
.btn-floating {
    position: fixed !important;
    bottom: 140px !important; /* Au-dessus du footer */
    z-index: 1500 !important;
}

/* Assurer que tout le contenu est visible */
.content-wrapper {
    padding-bottom: 150px !important;
}

/* Correction pour mobile */
@media (max-width: 768px) {
    body {
        padding-top: 60px !important;
        padding-bottom: 100px !important;
    }
    
    main, .container {
        min-height: calc(100vh - 160px) !important;
        padding-bottom: 40px !important;
    }
    
    .floating-button {
        bottom: 120px !important;
    }
}

/* Correction pour les pages spécifiques */
.page-content,
.video-content,
.series-content {
    padding-bottom: 80px !important;
    margin-bottom: 40px !important;
}

/* Assurer la visibilité du dernier élément */
.last-element,
.footer-spacer {
    height: 50px !important;
    width: 100% !important;
    clear: both !important;
}
