/* archive-edition.css : le corps d'un numéro archivé, servi par le socle M2.
 * ---------------------------------------------------------------------------
 * ⚠️ SOURCE : `front_theme_WP/style.css`, section SINGLE ARTICLE (lignes
 * 518-580) et ses deux paliers responsive. Relevé le 09/09/2026, valeurs
 * recopiées telles quelles, même méthode que `site-marque.css` : la page d'un
 * numéro sur Meelton2 doit rendre comme sur le thème, pas « mieux ».
 *
 * Habille `apps/publications/templates/archive.html`, dont le markup vient de
 * `front_theme_WP/single-newsletter_article.php` (article.article-single,
 * header, .article-single__content). Le CORPS lui-même est le fragment produit
 * par `backend/services/web_export_html.py` (target='socle'), identique à celui
 * que recevait WordPress : ses styles en ligne restent en ligne.
 *
 * LES VARIABLES DE MARQUE NE SONT PAS ICI (`--font-heading`, `--color-primary`),
 * chaque layout de marque les déclare ; chaque règle porte son repli.
 */

.article-single {
    padding: 40px 0 60px;
}

.article-single__header {
    text-align: center;
    margin-bottom: 40px;
}

.article-single__title {
    font-family: var(--font-heading, inherit);
    font-size: 2.2rem;
    font-weight: 700;
    margin: 0 0 10px;
    line-height: 1.2;
}

.article-single__subtitle {
    font-size: 1.3rem;
    color: #555;
    margin: 0 0 15px;
}

.article-single__meta {
    font-size: 0.9rem;
    color: #999;
}

.article-single__content {
    font-size: 1.1rem;
    line-height: 1.75;
}

.article-single__content p {
    margin: 0 0 1.5em;
}

.article-single__content h2 {
    font-family: var(--font-heading, inherit);
    font-size: 1.5rem;
    margin: 2em 0 0.8em;
}

.article-single__content h3 {
    font-family: var(--font-heading, inherit);
    font-size: 1.25rem;
    margin: 1.8em 0 0.6em;
}

.article-single__content img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
    margin: 1.5em 0;
}

/* L'IMAGE DE UNE, hors du corps, et elle n'était bornée par RIEN jusqu'au
 * 17/09/2026 : la règle ci-dessus ne vise que les images DANS `__content`. Une
 * photo de 2000 px de large sortait donc à sa taille naturelle, débordant la
 * colonne de lecture. Constaté à l'écran sur la première actu illustrée de LBP.
 * `figure` porte une marge par défaut du navigateur (40 px à gauche et à
 * droite) : elle est remise à zéro, sinon l'image est décalée par rapport au
 * texte qu'elle illustre. */
.article-single__image {
    margin: 0 0 2em;
}

.article-single__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 8px;
}

.article-single__content blockquote {
    border-left: 4px solid var(--color-primary, #333);
    margin: 1.5em 0;
    padding: 0.5em 0 0.5em 1.5em;
    font-style: italic;
    color: #555;
}

/* Le maillage de sortie d'un numéro et le lien « voir tous les numéros » de la
 * home. Discrets par construction : ce sont des liens de service, pas des
 * appels à l'action. Ils existent surtout pour que chaque page ait un lien
 * entrant, ce qui manquait à 43 numéros sur 49 (17/09/2026). */
.article-single__suite {
    margin: 48px 0 0;
    padding-top: 20px;
    border-top: 1px solid #eee;
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    font-size: 0.95rem;
}

.article-single__suite a,
.archives__tous a {
    color: var(--color-primary, #333);
    text-decoration: none;
}

.article-single__suite a:hover,
.archives__tous a:hover {
    text-decoration: underline;
}

.archives--lien {
    padding-top: 0;
}

.archives__tous {
    margin: 0 0 40px;
    font-size: 0.95rem;
}

/* Le toggle pays (`meelton-pays-btn`, `meelton-pays-view`) est stylé EN LIGNE
 * par le backend, comme sur WordPress. Rien à ajouter ici : seul le JS vit
 * dans le chrome (`js/pays-toggle.js`). */

@media (max-width: 768px) {
    .article-single__title {
        font-size: 1.7rem;
    }
}

@media print {
    .article-single {
        padding: 0;
    }
    .article-single__content {
        font-size: 12pt;
    }
}
