/* Lecteurs audio des messages de Fernand Legrand + cartes d'albums (legrand/index.htm) */
.legrand-lecteur { margin: .25rem 0 .9rem; }
.legrand-audio { width: 100%; max-width: 32rem; height: 40px; }
li.en-lecture > b a { color: var(--primary-dark, #002266); background: var(--accent-soft, #fff6cc); }

.albums-groupe { margin: 1.5rem 0 .5rem; }
.albums-grille {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr));
	gap: 1rem;
	margin: 0 0 1.5rem;
	padding: 0;
	list-style: none;
}
.album-carte {
	background: var(--card, #fff);
	border: 1px solid var(--border, #d9dcea);
	border-radius: var(--radius, 12px);
	box-shadow: var(--ombre, none);
	padding: 1rem;
	display: flex;
	flex-direction: column;
	gap: .5rem;
}
.album-carte h4 { margin: 0; font-size: 1.2rem; }
.album-carte small { color: var(--muted-foreground, #4a5470); letter-spacing: .04em; }
.album-carte .album-actions { display: flex; flex-direction: column; gap: .35rem; margin-top: auto; }
.album-carte .album-actions a {
	display: block;
	padding: .4rem .7rem;
	border: 1px solid var(--border, #d9dcea);
	border-radius: 8px;
	text-decoration: none;
}
.album-carte .album-actions a:hover,
.album-carte .album-actions a:focus-visible { background: var(--primary-soft, #e6ecf8); }
/* #page_corps a:link (charte) a une spécificité plus forte : on la dépasse pour garder le texte blanc */
#page_corps .album-carte .album-actions a.ecouter:link,
#page_corps .album-carte .album-actions a.ecouter:visited { background: var(--primary, #003399); color: var(--primary-foreground, #fff); border-color: var(--primary, #003399); }
#page_corps .album-carte .album-actions a.ecouter:hover,
#page_corps .album-carte .album-actions a.ecouter:focus-visible { background: var(--primary-dark, #002266); color: var(--primary-foreground, #fff); }

/* Icônes (masques SVG, couleur du thème) : télécharger le mp3, texte de la prédication */
.ico {
	display: inline-block;
	width: 1.15em; height: 1.15em;
	vertical-align: -.2em;
	margin-left: .25em;
	background-color: var(--primary, #003399);
	-webkit-mask: var(--ico) center / contain no-repeat;
	mask: var(--ico) center / contain no-repeat;
	text-decoration: none;
}
a.ico:hover, a.ico:focus-visible { background-color: var(--accent-dark, #a67c00); }
.ico-legende { margin: 0 .1em; cursor: default; }
.ico-mp3   { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M11 3h2v9.2l3.3-3.3 1.4 1.4L12 16.1l-5.7-5.8 1.4-1.4L11 12.2zM4 18h16v3H4z'/%3E%3C/svg%3E"); }
.ico-texte { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 2h8l5 5v15H6zm7 1.5V8h4.5zM8.5 12h8v1.5h-8zm0 3h8v1.5h-8zm0 3h5v1.5h-5z'/%3E%3C/svg%3E"); }

/* Lecteur en haut des pages de prédication */
.legrand-lecteur-page { margin: .5rem 0 1.25rem; padding: .6rem .9rem; background: var(--primary-soft, #e6ecf8); border-radius: var(--radius, 12px); }
.legrand-lecteur-legende { display: block; font-weight: 600; color: var(--primary-dark, #002266); margin-bottom: .2rem; }
.legrand-lecteur-titre { font-size: .95rem; margin-top: .3rem; }
.legrand-lecteur-page .legrand-lecteur { margin: 0 0 .3rem; }
