/**
 * [base] Documents officiels : prochain conseil, derniers actes, registre, fiche.
 */

/* --- Étiquettes communes --- */
.m-acte__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 0.35rem 0.6rem; margin: 0 0 0.4rem; font-size: var(--t-xs); color: var(--c-texte-doux); }
.m-acte__type {
	display: inline-block; padding: 0.15rem 0.6rem; border-radius: var(--rayon-pilule);
	background: var(--c-primaire-clair); color: var(--c-primaire);
	font-family: var(--f-titres); font-size: var(--t-xs); font-weight: 700; letter-spacing: 0.02em;
}
.m-acte__type--arrete { background: var(--c-secondaire-clair); color: var(--c-secondaire); }
.m-acte__type--seance { background: var(--c-tertiaire-clair); color: var(--c-tertiaire); }
.m-acte__num { font-weight: 600; color: var(--c-texte); }
.m-acte__theme::before { content: "· "; }
.m-acte__taille { font-weight: 400; opacity: 0.8; font-size: 0.85em; }

/* --- Prochain conseil --- */
.m-conseil { padding: clamp(1.25rem, 1rem + 1.5vw, 2rem); border-radius: var(--rayon); background: var(--c-fond); border: 1px solid var(--c-bordure); box-shadow: var(--ombre); }
.m-conseil p { margin: 0 0 0.6rem; }
.m-conseil__surtitre { font-size: var(--t-xs); font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; color: var(--c-secondaire); }
.m-conseil__date { font-family: var(--f-titres); font-size: var(--t-l); font-weight: 800; line-height: 1.25; color: var(--c-titres); }
.m-conseil__jour::first-letter { text-transform: uppercase; }
.m-conseil__heure { white-space: nowrap; }
.m-conseil__lieu { font-weight: 600; }
.m-conseil__public, .m-conseil__vide { color: var(--c-texte-doux); font-size: var(--t-s); }
.m-conseil__odj { margin: 0.75rem 0 1rem; border-top: 1px solid var(--c-bordure); padding-top: 0.75rem; }
.m-conseil__odj summary { cursor: pointer; font-weight: 700; color: var(--c-primaire); }
.m-conseil__odj summary:focus-visible { outline: var(--focus); outline-offset: var(--focus-offset); }
.m-conseil__odj[open] summary { margin-bottom: 0.5rem; }

/* --- Derniers actes : un en avant + liste --- */
.m-acte-une { padding: clamp(1.25rem, 1rem + 1.5vw, 2rem); border-radius: var(--rayon); background: var(--c-fond); border: 1px solid var(--c-bordure); box-shadow: var(--ombre); }
.m-acte-une__titre { margin: 0.25rem 0 0.5rem; font-size: var(--t-l); line-height: 1.3; }
.m-acte-une__titre a { color: var(--c-titres); text-decoration: none; }
.m-acte-une__titre a:hover { color: var(--c-primaire); text-decoration: underline; }
.m-acte-une__resume { margin: 0 0 0.75rem; color: var(--c-texte); }
.m-actes__liste { list-style: none; margin: 1rem 0 0; padding: 0; }
.m-actes__liste li {
	display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.25rem 0.6rem;
	margin: 0; padding: 0.75rem 0.25rem; border-bottom: 1px solid var(--c-bordure);
}
.m-actes__liste a { font-weight: 600; color: var(--c-texte); text-decoration: none; }
.m-actes__liste a:hover { color: var(--c-primaire); text-decoration: underline; }
.m-acte__date { min-width: 6.5rem; font-size: var(--t-s); color: var(--c-texte-doux); }
.m-actes__vide { color: var(--c-texte-doux); }

/* --- Registre --- */
.m-registre__filtres {
	display: grid; gap: 0.75rem 1rem; align-items: end;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 11rem), 1fr));
	margin-bottom: 1.25rem; padding: 1.25rem; border-radius: var(--rayon); background: var(--c-fond-alt);
}
.m-registre__champ { display: grid; gap: 0.3rem; }
.m-registre__champ--q { grid-column: span 2; }
@media (max-width: 600px) { .m-registre__champ--q { grid-column: auto; } }
.m-registre__champ label { font-size: var(--t-xs); font-weight: 700; color: var(--c-texte); }
.m-registre__champ :is(select, input) { width: 100%; min-height: 2.75rem; border: 1px solid var(--c-bordure); border-radius: var(--rayon-s); background: var(--c-fond); padding: 0.4rem 0.75rem; font: inherit; }
.m-registre__actions { display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; }
.m-registre__actions .m-lien-action { cursor: pointer; }
.m-registre__reinit { font-size: var(--t-s); }
.m-registre__total { margin: 0 0 0.5rem; font-size: var(--t-s); color: var(--c-texte-doux); }
.m-registre__liste { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--c-bordure); }
.m-registre__ligne {
	display: grid; grid-template-columns: 4.5rem minmax(0, 1fr) auto; gap: 1rem; align-items: center;
	margin: 0; padding: 1rem 0.5rem; border-bottom: 1px solid var(--c-bordure);
	transition: background-color var(--transition);
}
.m-registre__ligne:hover { background: var(--c-fond-alt); }
.m-registre__date { display: grid; justify-items: center; padding: 0.4rem 0; border-radius: var(--rayon-s); background: var(--c-primaire-clair); color: var(--c-primaire); line-height: 1.1; }
.m-registre__j { font-family: var(--f-titres); font-size: 1.5rem; font-weight: 800; }
.m-registre__m { font-size: 0.6875rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; }
.m-registre__titre { margin: 0; font-size: var(--t-m); line-height: 1.35; }
.m-registre__titre a { color: var(--c-texte); text-decoration: none; }
.m-registre__titre a:hover { color: var(--c-primaire); text-decoration: underline; }
.m-registre__pdf { display: grid; gap: 0.35rem; justify-items: end; }
.m-registre__lien-pdf {
	display: inline-flex; align-items: center; gap: 0.4rem; white-space: nowrap;
	padding: 0.4rem 0.85rem; border: 1px solid var(--c-primaire); border-radius: var(--rayon-pilule);
	color: var(--c-primaire); font-size: var(--t-s); font-weight: 700; text-decoration: none;
	transition: background-color var(--transition), color var(--transition);
}
.m-registre__lien-pdf::before { content: "PDF"; font-size: 0.625rem; font-weight: 800; padding: 0.05rem 0.3rem; border-radius: 3px; background: var(--c-secondaire); color: #fff; }
.m-registre__lien-pdf:hover { background: var(--c-primaire); color: #fff; }
.m-registre__lien-pdf .m-acte__taille { display: none; }
@media (max-width: 640px) {
	.m-registre__ligne { grid-template-columns: 3.75rem minmax(0, 1fr); }
	.m-registre__pdf { grid-column: 2; justify-items: start; }
}
.m-registre__pages { margin-top: 1.5rem; display: flex; gap: 0.4rem; flex-wrap: wrap; }
.m-registre__pages .page-numbers { display: inline-grid; place-items: center; min-width: 2.5rem; min-height: 2.5rem; padding: 0 0.6rem; border-radius: var(--rayon-s); border: 1px solid var(--c-bordure); text-decoration: none; }
.m-registre__pages .current { background: var(--c-primaire); border-color: var(--c-primaire); color: #fff; }
.m-registre__vide { padding: 2rem 0; color: var(--c-texte-doux); }

/* --- Fiche d'un document --- */
.m-acte { display: grid; gap: 2rem; padding-block: 1rem 2rem; }
@media (min-width: 900px) { .m-acte { grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); align-items: start; } }
.m-acte__infos { position: sticky; top: calc(var(--m-sticky-top, 0px) + 1.5rem); padding: clamp(1.25rem, 1rem + 1.5vw, 2rem); border-radius: var(--rayon); background: var(--c-primaire-clair); }
.m-acte__dl { margin: 0 0 1rem; display: grid; gap: 0.75rem; }
.m-acte__dl div { display: grid; gap: 0.1rem; }
.m-acte__dl dt { font-size: var(--t-xs); font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; color: var(--c-texte-doux); }
.m-acte__dl dd { margin: 0; font-weight: 600; }
.m-acte__dl dd::first-letter { text-transform: uppercase; }
.m-acte__infos p { margin: 0 0 0.5rem; }
.m-acte__retour { padding-bottom: 2rem; }
