/* Mise en page commune aux thèmes jchable. */

.site-columns {
	gap: var(--wp--preset--spacing--50);
	align-items: flex-start;
}

.site-main {
	flex: 999 1 640px;
	min-width: 0;
}

/* La classe vient de l'attribut className du morceau de gabarit ; le second sélecteur sert de filet de sécurité. */
.site-sidebar,
.site-columns > aside {
	flex: 1 1 280px;
	min-width: 0;
}

.site-footer .wp-block-site-title::before {
	content: "© ";
}

/* Cartes d'articles : le premier article de la page 1 est « à la une ». */
.post-card .wp-block-post-title {
	font-size: var(--wp--preset--font-size--large);
}

body:not(.paged) .post-feed .wp-block-post-template > li:first-child {
	grid-column: 1 / -1;
}

body:not(.paged) .post-feed .wp-block-post-template > li:first-child .wp-block-post-title {
	font-size: var(--wp--preset--font-size--x-large);
}

/* Article et page. */
.post-meta {
	gap: var(--wp--preset--spacing--30);
	color: var(--wp--preset--color--muted);
	font-size: var(--wp--preset--font-size--small);
}

.post-comments {
	margin-top: var(--wp--preset--spacing--60);
}

.post-nav {
	margin-top: var(--wp--preset--spacing--50);
}

/* Archives et recherche : pas d'article « à la une ». */
body:not(.paged) .post-feed.is-archive-feed .wp-block-post-template > li:first-child {
	grid-column: auto;
}

body:not(.paged) .post-feed.is-archive-feed .wp-block-post-template > li:first-child .wp-block-post-title {
	font-size: var(--wp--preset--font-size--large);
}

/* Blocs maison : police à chasse fixe. */
.wp-block-jchable-post-filename,
.wp-block-jchable-archive-path,
.wp-block-jchable-request-path {
	font-family: var(--wp--preset--font-family--mono);
	font-size: var(--wp--preset--font-size--small);
	overflow-wrap: anywhere;
}

/* Débordements : mots interminables, URL, code, médias. */
.wp-block-post-title,
.wp-block-post-content,
.wp-block-post-excerpt,
.wp-block-query-title {
	overflow-wrap: anywhere;
}

.wp-block-post-content pre,
.wp-block-code {
	max-width: 100%;
	overflow-x: auto;
}

.wp-block-post-content img,
.wp-block-post-featured-image img {
	max-width: 100%;
	height: auto;
}

.site-header .wp-block-navigation__container {
	flex-wrap: wrap;
}

.wp-block-search__inside-wrapper {
	min-width: 0;
}

/* Autres textes qui peuvent contenir un mot interminable (commentaires, catégories, menu, titre du site…). */
.wp-block-comment-content,
.wp-block-comment-author-name,
.wp-block-post-terms,
.wp-block-archives,
.wp-block-categories,
.wp-block-site-title,
.wp-block-site-tagline,
.wp-block-navigation-item__label,
.post-nav {
	overflow-wrap: anywhere;
}

.wp-block-post-content :is(iframe, embed, object, video) {
	max-width: 100%;
}

/* Les entrées de menu sont des éléments flex : sans ces règles, elles ne rétrécissent pas. */
.site-header .wp-block-navigation,
.site-header .wp-block-navigation__container,
.site-header .wp-block-navigation-item,
.site-header .wp-block-navigation-item__content {
	min-width: 0;
	max-width: 100%;
}

/* Anciens articles en HTML brut : tableaux, légendes et médias ne dépassent jamais l'écran. */
.wp-block-post-content :is(table, .wp-caption, figure) {
	max-width: 100%;
}

.wp-block-post-content > table {
	display: block;
	overflow-x: auto;
}

.wp-block-post-content .wp-caption img {
	max-width: 100%;
	height: auto;
}
