/* Même gap que dans le script js*/
:root {
    --grid-gap: 12px;
}
/* Conteneur en lignes */
.content {
	padding: 0 var(--grid-gap);
	padding-bottom: 2rem;
}
.content > h2 {
	padding: 0 var(--grid-gap);
	margin-top: var(--space-m);
	margin-bottom: 0;
	text-transform: capitalize;
}
.content > .description {
	padding: 0 var(--grid-gap);
}
.content > .post-meta {
	margin-top: var(--space-l);
	margin-bottom: 0;
	padding: 0 var(--grid-gap);
	text-align: center;
}
.post-years,
.content > .post-cat,
.content > .post-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
	justify-content: center;
}
.post-years a,
.content > .post-cat a,
.content > .post-tags a {
    background: var(--color-text);
    padding: 0.2rem 0.6rem;
    border-radius: var(--radius);
    color: var(--color-bg);
    white-space: nowrap;
	text-decoration: none;
}
.post-meta a[aria-current="page"],
.content > .post-cat a.active,
.content > .post-tags a.active {
    background: var(--color-link);
    color: #fff;
}
.posts-masonry {
    display: block;
    position: relative;
    width: 100%;
    box-sizing: border-box;
	container-type: inline-size;
}
/* ----- Desktop : 4 colonnes ----- */
.posts-masonry .grid-sizer,
.posts-masonry article.post {
    width: calc(25% - var(--grid-gap));
	box-sizing: border-box;
}
.posts-masonry article.post {
	display: block;
    box-sizing: border-box;
	margin-top: calc(var(--grid-gap) * 2);
	padding-left: var(--grid-gap);
}
.posts-masonry .post-wrapper {
	position: relative;
	display: block;
    box-sizing: border-box;
	width: 100%;
    border-radius: var(--card-radius);
    overflow: hidden;
    background: var(--color-bg);
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
/* Image : prend toute la largeur de la card */
.posts-masonry .post-thumb img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}
/* Cartes sans image */
.posts-masonry .post-thumb.no-thumb {
    width: 100%;
    height: 200px;
    background: var(--color-bg);
}
/* Overlay */
.post-overlay {
    position: absolute;
    left: 0;
    bottom: -100%;
    width: 100%;
    border-top: 1px solid var(--color-border);
    transition: bottom 0.3s ease;
	background-color: color-mix(in srgb, var(--color-bg) 90%, transparent);
	padding-bottom: var(--space-m);
}
.post-meta {
	font-size: 0.8rem;
}
/* Titre */
.post-title {
    margin: 0;
    font-size: 1rem;
	padding: var(--space-xs) var(--space-m);
	margin-top: var(--space-s);
}
/* Catégories */
.post-cat {
	padding: 0 var(--space-m);
	margin-bottom: var(--space-s);
}
/* Texte */
.post-excerpt {
	margin-top: var(--space-s);
	padding: 0 var(--space-m);
	margin-bottom: var(--space-s);
	display: none;
}
/* Barre */
.post-bar {
    display: flex;
    justify-content: space-between; /* date à gauche, commentaires à droite */
    align-items: center;
    padding: var(--space-s) var(--space-m);
	background-color: color-mix(in srgb, var(--color-border) 90%, transparent);
}
.post-date a {
	text-decoration: none;
	color: var(--color-text);
}
/* Tags */
.post-tags {
	padding: 0 var(--space-m);
}
/* Alignement interne */
.post-date,
.post-comments {
    display: flex;
    align-items: center;
    gap: var(--space-s);
}

/* Style des icônes Dashicons */
.post-bar .dashicons {
    font-size: 1.5rem;
    width: 1.5rem;
    height: 1.5rem;
    line-height: 1.5rem;
}
/* Hover : l’overlay remonte */
article.post:hover .post-overlay {
	bottom: 0;
}
/* tactile */
@media (pointer: coarse) {
    article.post .post-overlay {
        position: relative;
    }
	.posts-masonry .post-wrapper {
		overflow: hidden;
	}
	.post-excerpt {
		display: block;
	}
}
/* Responsive */

/* ----- Small : 3 colonnes ----- */
@container (max-width: 992px) {
    .posts-masonry .grid-sizer,
    .posts-masonry article.post {
        width: calc(33.3% - var(--grid-gap));
    }
}
/* ----- Tablette : 2 colonnes ----- */
@container (max-width: 768px) {
    .posts-masonry .grid-sizer,
    .posts-masonry article.post {
        width: calc(50% - var(--grid-gap));
    }
}
/* ----- Mobile : 1 colonne ----- */
@container (max-width: 576px) {
    .posts-masonry .grid-sizer,
    .posts-masonry article.post {
        width: 100%;
    }
	/* Hack pour combler les marges de content */
	.posts-masonry article.post {
		width: calc(100% + (var(--grid-gap) * 2));
        max-width: calc(100% + (var(--grid-gap) * 2));
		padding-left: 0;
		margin-left: calc(-1 * var(--grid-gap));
    }
	.posts-masonry article.post:first-of-type {
		margin-top: 0;
	}
	.posts-masonry .post-wrapper {
		border-radius: 0;
	}
	.post-overlay {
		position: relative;
	}
	.post-excerpt {
		display: block;
	}
}
/* Infinite scroll */
.js-enabled .navigation {
    display:none;
}
#load-more {
    display: block;
    width: fit-content;
    margin: 2rem auto;
    padding: 0.5rem 1rem;
    background: var(--color-bg);
    color: var(--color-link);
    border-radius: var(--card-radius);
    text-decoration: none;
    box-shadow: 0 2px 6px rgba(0,0,0,0.08);
    border: none;
    cursor: pointer;
    font-size: 1rem;
    transition: color .2s ease, box-shadow .2s ease;
}
#load-more:hover {
    color: var(--color-link-hover);
    box-shadow: 0 4px 10px rgba(0,0,0,0.12);
}
#load-trigger {
    height: 1px;
}