/* Styles pour les modals d'affichage des articles */

/* Assurer que le contenu des modals ne déborde pas */
.modal-body .article-content {
    max-width: 100% !important;
    overflow-x: hidden !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
}

/* Surcharge pour les conteneurs Bootstrap à l'intérieur du modal */
.modal-body .article-content .container,
.modal-body .article-content .container-fluid {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.modal-body .article-content .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* Contrôler les images dans les articles */
.modal-body .article-content img {
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
    margin: 10px auto !important;
}

/* Contrôler les tableaux dans les articles */
.modal-body .article-content table {
    max-width: 100% !important;
    table-layout: fixed !important;
    word-wrap: break-word !important;
}

.modal-body .article-content table td,
.modal-body .article-content table th {
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    max-width: 200px !important;
}

/* Contrôler les éléments de largeur fixe */
.modal-body .article-content div,
.modal-body .article-content p,
.modal-body .article-content span {
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Contrôler les éléments flottants */
.modal-body .article-content .float-left,
.modal-body .article-content .float-right {
    max-width: 48% !important;
}

/* Assurer que les iframes s'adaptent */
.modal-body .article-content iframe {
    max-width: 100% !important;
    height: auto !important;
}

/* Contrôler les éléments avec des styles inline de largeur */
.modal-body .article-content [style*="width"] {
    max-width: 100% !important;
}

/* Améliorer la lisibilité */
.modal-body .article-content {
    font-size: 14px !important;
    line-height: 1.6 !important;
}

.modal-body .article-content h1,
.modal-body .article-content h2,
.modal-body .article-content h3,
.modal-body .article-content h4,
.modal-body .article-content h5,
.modal-body .article-content h6 {
    margin-top: 20px !important;
    margin-bottom: 10px !important;
    word-wrap: break-word !important;
}

.modal-body .article-content p {
    margin-bottom: 15px !important;
}

/* Contrôler les listes */
.modal-body .article-content ul,
.modal-body .article-content ol {
    padding-left: 20px !important;
    margin-bottom: 15px !important;
}

/* Styles de prévisualisation article (modal AJAX) */
#genericModal .modal-header {
    display: none !important;
}
#genericModal .modal-body {
    padding-top: 30px;
}
#preview-article-container {
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
#preview-article-container h1 {
    font-size: 24px;
    margin-top: 0;
    margin-bottom: 15px;
    line-height: 1.2;
    font-weight: 500;
}
#preview-article-container .descriptionArticle,
#preview-article-container .resume {
    font-size: 14px;
    line-height: 1.5;
    color: #333;
}
#preview-article-container .descriptionArticle *,
#preview-article-container .resume * {
    font-size: inherit !important;
    line-height: inherit !important;
}
#preview-article-container img {
    max-width: 100%;
    height: auto;
}
.preview-article-header {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}
.preview-article-chapeau {
    margin-bottom: 15px;
}
.preview-article-figure {
    display: flex;
    align-items: center;
    justify-content: center;
}
.preview-article-figure img {
    width: 100%;
    max-height: 400px;
    object-fit: cover;
}
.preview-article-body {
    margin-top: 30px;
}

/* Assurer que le modal reste responsive */
@media (max-width: 768px) {
    .modal-dialog {
        margin: 10px !important;
        max-width: 98% !important;
    }
    
    .modal-body {
        padding: 15px !important;
    }
    
    .modal-body .article-content {
        font-size: 13px !important;
    }
}