/* test-rg-agenda-fiche.css — annonces d'événement (posts de la catégorie Agenda), refonte de novembre 2026.
 * Complète css/test-rg-publication.css (langage commun : rubrique, titre, onglets, étiquettes, cartes,
 * mode sombre) ; ce fichier n'ajoute que ce qui est propre à l'agenda. Préfixe .rg-ag. 1rem = 10px.
 */

/* Colonnes : affiche | texte | infos pratiques (un peu plus large que la fiche publication) */
.rg-ag .rg-pub-top { grid-template-columns: minmax(200px, 260px) minmax(0, 1fr) minmax(270px, 330px); }

/* Affiche : jamais recadrée */
.rg-ag .rg-ag-affiche .rg-pub-cover__img { border-radius: 4px; }

/* Organisateur sous l'affiche */
.rg-ag-orga { margin-top: 2.2rem; padding-top: 1.6rem; border-top: 1px solid #e6eef0; }
.rg-ag-orga .rg-pub-side__label { margin-bottom: .8rem; }
.rg-ag-orga__ligne { display: flex; align-items: center; gap: .9rem; }
.rg-ag-orga__ligne img { width: 48px; height: auto; flex: 0 0 auto; object-fit: contain; }
.rg-ag-orga__ligne span { font-family: 'Raleway', sans-serif; font-size: 1.35rem; line-height: 1.35; color: #333; }

/* Date et type au-dessus du titre */
.rg-ag-kicker { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem 1rem; margin: 0 0 1.2rem; font-family: 'Raleway', sans-serif; }
.rg-ag-kicker__date { font-size: 1.45rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: #165F70; }
.rg-ag-kicker__type { display: inline-block; padding: .38em .8em; border-radius: 4px; background: #165F70; color: #fff; font-size: 1.1rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; line-height: 1; }
.rg-ag-kicker__passe { display: inline-block; padding: .38em .8em; border-radius: 4px; background: #f1ece4; color: #7a6a55; font-size: 1.1rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; line-height: 1; }

/* Panneaux de langue (onglets propres au gabarit) */
.rg-ag .rg-ag-panneau { display: none; }
.rg-ag .rg-ag-panneau.active { display: block; }

/* Programme horaire en frise (même esprit que la frise de l'agenda de l'accueil) */
.rg-ag .rg-pub-desc .tabcontent ul.rg-ag-programme { position: relative; list-style: none; margin: 1.8rem 0 2.4rem; padding: 0; padding-inline-start: 2.6rem; }
.rg-ag .rg-pub-desc .tabcontent ul.rg-ag-programme::before { content: ""; position: absolute; inset-inline-start: .6rem; top: 1rem; bottom: 1rem; width: 2px; background: #cfdee2; }
.rg-ag .rg-pub-desc .tabcontent ul.rg-ag-programme li { position: relative; margin: 0 0 1.4rem; padding: 0; list-style: none; }
.rg-ag .rg-pub-desc .tabcontent ul.rg-ag-programme li:last-child { margin-bottom: 0; }
.rg-ag .rg-pub-desc .tabcontent ul.rg-ag-programme li::before { content: ""; position: absolute; inset-inline-start: -2.5rem; top: .7rem; width: 12px; height: 12px; border-radius: 50%; background: #165F70; box-shadow: 0 0 0 3px #fff; }
.rg-ag .rg-pub-desc .tabcontent ul.rg-ag-programme li::marker { content: none; }
.rg-ag .rg-ag-heure { display: block; margin-bottom: .15rem; font-family: 'Raleway', sans-serif; font-size: 1.4rem; font-weight: 700; letter-spacing: .03em; color: #165F70; }

/* Carte « Infos pratiques » */
.rg-ag-infos { margin: 0 0 2.8rem; padding: 2rem 2rem 1.2rem; background: #f6f9fa; border: 1px solid #e6eef0; border-radius: 10px; }
.rg-ag-infos[hidden] { display: none; }
.rg-ag-infos__titre { display: inline-block; position: relative; margin: 0 0 1.4rem; padding: 0 0 .9rem; font-family: 'Raleway', sans-serif; font-size: 1.8rem; font-weight: 700; line-height: 1.2; color: #165F70; }
.rg-ag-infos__titre::after { content: ""; position: absolute; inset-inline-start: 0; bottom: 0; width: 2.4rem; height: 3px; border-radius: 2px; background: #165F70; }
.rg-ag-infos__liste { margin: 0; padding: 0; }
.rg-ag-info { padding: 1.15rem 0; border-top: 1px solid #e3ecee; }
.rg-ag-info:first-child { border-top: 0; padding-top: .2rem; }
.rg-ag-info dt { display: flex; align-items: center; gap: .8rem; margin: 0 0 .45rem; }
.rg-ag-info__icone { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 50%; background: #fff; color: #165F70; box-shadow: inset 0 0 0 1px #d6e2e5; }
.rg-ag-info__icone svg { width: 16px; height: 16px; }
.rg-ag-info__etiquette { font-family: 'Raleway', sans-serif; font-size: 1.15rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; color: #5f7880; }
.rg-ag-info dd { margin: 0; padding-inline-start: 3.8rem; font-family: 'Raleway', sans-serif; font-size: 1.45rem; line-height: 1.5; color: #222; overflow-wrap: anywhere; }
.rg-ag-info dd a { color: #165F70; font-weight: 600; text-decoration: none; }

/* Liens sans soulignement (convention du site) ; soulignés seulement si le visiteur active
   le mode daltonisme (data-cvd) ou le contraste renforcé (data-contrast), comme pluriel-a11y
   le fait déjà pour les liens des paragraphes et des puces. */
.rg-ag .rg-pub-desc .tabcontent a,
.rg-ag .rg-pub-eyebrow__all:hover, .rg-ag .rg-pub-eyebrow__all:focus-visible { text-decoration: none; }
.rg-ag .rg-pub-desc .tabcontent a:hover, .rg-ag .rg-pub-desc .tabcontent a:focus-visible,
.rg-ag-info dd a:hover, .rg-ag-info dd a:focus-visible { color: #0d3f4b; }
html[data-cvd] .rg-ag-info dd a, html[data-contrast] .rg-ag-info dd a { text-decoration: underline !important; text-underline-offset: 2px; }

/* Tablette : l'affiche reste à gauche, infos et mots-clés passent sous les deux colonnes */
@media (max-width: 1100px) {
    .rg-ag .rg-pub-top { grid-template-columns: minmax(180px, 230px) minmax(0, 1fr); }
}
/* Mobile : date et titre, infos pratiques, affiche, texte, puis disciplines et mots-clés.
   Colonnes centrale et latérale en display:contents pour intercaler leurs éléments. */
@media (max-width: 760px) {
    .rg-ag .rg-pub-top { grid-template-columns: minmax(0, 1fr); gap: 0; }
    .rg-ag .rg-pub-main, .rg-ag .rg-pub-side { display: contents; }
    .rg-ag .rg-ag-kicker { order: 1; }
    .rg-ag .rg-pub-title { order: 2; }
    .rg-ag .rg-ag-infos { order: 3; margin: 2.2rem 0 0; padding: 1.6rem 1.6rem 1rem; }
    .rg-ag .rg-pub-media { order: 4; display: block; margin-top: 2.4rem; }
    .rg-ag .rg-pub-desc { order: 5; }
    .rg-ag .rg-pub-side__block { order: 6; margin: 2.4rem 0 0; }
    .rg-ag .rg-ag-affiche { max-width: 280px; margin: 0 auto; }
    .rg-ag-kicker__date { font-size: 1.3rem; }
}

/* ---------- Mode sombre (html[data-theme="dark"], pluriel-a11y) ---------- */
html[data-theme="dark"] main.rg-ag .rg-pub-side .rg-ag-infos { background: #18242e !important; border-color: #26343f !important; }
html[data-theme="dark"] main.rg-ag .rg-ag-infos .rg-ag-info { border-top-color: #26343f; }
html[data-theme="dark"] main.rg-ag .rg-ag-infos .rg-ag-info__icone { background: #0f1620 !important; box-shadow: inset 0 0 0 1px #26343f; }
html[data-theme="dark"] main.rg-ag .rg-ag-kicker .rg-ag-kicker__type { background: #165F70; }
html[data-theme="dark"] main.rg-ag .rg-ag-media .rg-ag-orga,
html[data-theme="dark"] main.rg-ag .rg-pub-media .rg-ag-orga { border-top-color: #26343f; }
html[data-theme="dark"] main.rg-ag .rg-pub-desc .tabcontent ul.rg-ag-programme::before { background: #26343f; }
html[data-theme="dark"] main.rg-ag .rg-pub-desc .tabcontent ul.rg-ag-programme li::before { background: #8fd3e0; box-shadow: 0 0 0 3px #0f1620; }
html[data-theme="dark"] main.rg-ag .rg-ag-kicker .rg-ag-kicker__passe { background: #26343f; }
/* pluriel-a11y force le texte de main en #c7d0d8 !important (spécificité 0,5,6) : classes doublées pour garder l'accent */
html[data-theme="dark"] main.rg-ag.rg-pub .rg-ag-infos.rg-ag-infos .rg-ag-info__icone.rg-ag-info__icone,
html[data-theme="dark"] main.rg-ag.rg-pub .rg-ag-infos.rg-ag-infos .rg-ag-infos__titre.rg-ag-infos__titre,
html[data-theme="dark"] main.rg-ag.rg-pub .rg-ag-kicker.rg-ag-kicker .rg-ag-kicker__date.rg-ag-kicker__date,
html[data-theme="dark"] main.rg-ag.rg-pub .rg-ag-programme.rg-ag-programme .rg-ag-heure.rg-ag-heure { color: #8fd3e0 !important; }
html[data-theme="dark"] main.rg-ag.rg-pub .rg-ag-infos.rg-ag-infos .rg-ag-info__etiquette.rg-ag-info__etiquette { color: #93a7b1 !important; }
html[data-theme="dark"] main.rg-ag .rg-ag-infos .rg-ag-infos__titre::after { background: #8fd3e0; }
