/*
 * RSN : bande « Prochains événements » de l'accueil ([rsn_veille_accueil]).
 * Repris de la variante A de docs/maquette/accueil-v1.html (maquette validée) : calendrier du mois à gauche,
 * événements du RSN au centre, événements de l'écosystème à droite. Tous les sélecteurs sont préfixés par
 * .rsn-veille-accueil pour cohabiter avec le thème et Elementor ; aucune classe nue. Les éléments cliquables
 * (boutons, liens, anneau de focus) portent le préfixe doublé (spécificité 0,3,0) pour passer devant le kit Elementor
 * (.elementor-kit-N button:hover, 0,2,1). Polices et couleurs du site : aucune police n'est chargée ici.
 * L'en-tête de la bande (petite ligne, titre, intro, lien) reste dans Elementor.
 */
.rsn-veille-accueil{
  --navy:#003469; --blue:#0061AF; --ink:#101828; --muted:#667085; --rule:#DCE1E8;
  --yellow:#FFCC4E; --yellow-ink:#E3A800; --rsn-bg:#F6F8FA; --light:#F5F9FC; --eco:#3D6A99;
  --sans:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --serif:"DM Serif Display",Georgia,"Times New Roman",serif;
  color-scheme:light;
  display:grid;grid-template-columns:260px minmax(0,1fr) minmax(0,1.15fr);gap:28px;align-items:stretch;
  margin:0;color:var(--ink);font:400 15px/1.5 var(--sans);-webkit-font-smoothing:antialiased;
}
.rsn-veille-accueil *{box-sizing:border-box}
.rsn-veille-accueil [hidden]{display:none!important}
.rsn-veille-accueil.rsn-veille-accueil :focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.rsn-veille-accueil.rsn-veille-accueil a{color:inherit;text-decoration:none}
.rsn-veille-accueil.rsn-veille-accueil button{font:inherit;color:inherit;cursor:pointer;margin:0;text-transform:none;letter-spacing:normal;box-shadow:none}
.rsn-veille-accueil p{margin:0}
/* Sans JavaScript, les en-têtes de colonne ne montreraient rien : seul le lien du <noscript> reste. */
.rsn-veille-accueil:not(.rsna-pret) .rsna-sous{display:none}
.rsn-veille-accueil > noscript{grid-column:1/-1}

/* Mini-calendrier : remplit la hauteur de sa colonne (semaines étirées, légende en bas) */
.rsn-veille-accueil .rsna-cal{display:flex;flex-direction:column;min-width:0}
.rsn-veille-accueil .rsna-cal-tete{display:flex;align-items:center;justify-content:space-between;height:28px;margin:0 0 8px}
.rsn-veille-accueil .rsna-cal-tete strong{font-family:var(--serif);font-weight:400;font-size:18px;line-height:1.2;color:var(--navy)}
.rsn-veille-accueil.rsn-veille-accueil .rsna-cal-tete button{width:28px;height:28px;padding:0;border-radius:50%;border:1px solid var(--rule);background:#fff;color:var(--navy);display:inline-flex;align-items:center;justify-content:center;line-height:1;min-height:0}
.rsn-veille-accueil.rsn-veille-accueil .rsna-cal-tete button:hover:not(:disabled){background:var(--light);border-color:var(--navy);color:var(--navy)}
.rsn-veille-accueil.rsn-veille-accueil .rsna-cal-tete button:disabled{opacity:.35;cursor:default}
.rsn-veille-accueil .rsna-cal-tete button svg{width:13px;height:13px}
.rsn-veille-accueil .rsna-grille{flex:1;display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:auto;grid-auto-rows:minmax(30px,1fr);gap:2px;text-align:center;font-variant-numeric:tabular-nums}
.rsn-veille-accueil .rsna-jn{font-size:10.5px;font-weight:700;color:var(--muted);padding:2px 0 4px}
.rsn-veille-accueil.rsn-veille-accueil .rsna-jour{position:relative;display:flex;align-items:center;justify-content:center;height:auto;min-height:0;padding:0;border:0;border-radius:8px;background:transparent;font-size:13px;font-weight:400;line-height:1;color:var(--ink)}
.rsn-veille-accueil.rsn-veille-accueil .rsna-jour.rsna-hors{visibility:hidden}
.rsn-veille-accueil.rsn-veille-accueil .rsna-jour.rsna-passe{color:#A4ADBA}
.rsn-veille-accueil.rsn-veille-accueil .rsna-jour.rsna-passe.rsna-a{color:var(--muted)}
.rsn-veille-accueil.rsn-veille-accueil .rsna-jour.rsna-auj{font-weight:800;color:var(--navy);box-shadow:inset 0 0 0 1.5px var(--navy)}
.rsn-veille-accueil.rsn-veille-accueil .rsna-jour.rsna-a{cursor:pointer}
.rsn-veille-accueil.rsn-veille-accueil .rsna-jour.rsna-a:not([aria-pressed="true"]):hover{background:var(--light)}
.rsn-veille-accueil.rsn-veille-accueil .rsna-jour[aria-pressed="true"]{background:var(--navy);color:#fff}
.rsn-veille-accueil .rsna-pts{position:absolute;left:50%;bottom:3px;transform:translateX(-50%);display:flex;gap:2px}
.rsn-veille-accueil .rsna-pts i{width:5px;height:5px;border-radius:50%;background:var(--eco);font-style:normal}
.rsn-veille-accueil .rsna-pts i.rsna-pt-rsn{background:var(--yellow-ink)}
.rsn-veille-accueil .rsna-jour[aria-pressed="true"] .rsna-pts i{background:#fff}
.rsn-veille-accueil .rsna-jour[aria-pressed="true"] .rsna-pts i.rsna-pt-rsn{background:var(--yellow)}
.rsn-veille-accueil .rsna-legende{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:10px;font-size:11.5px;color:var(--muted)}
.rsn-veille-accueil .rsna-legende i{display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%;background:var(--eco);vertical-align:1px}
.rsn-veille-accueil .rsna-legende i.rsna-pt-rsn{background:var(--yellow-ink)}

/* En-têtes de colonne : même hauteur (28 px) pour que le haut des trois contenus s'aligne */
.rsn-veille-accueil .rsna-sous{display:flex;align-items:center;justify-content:space-between;gap:10px;height:28px;margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.rsn-veille-accueil.rsn-veille-accueil .rsna-sous button{border:0;background:transparent;padding:0;min-height:0;color:var(--blue);font-size:12px;font-weight:600;letter-spacing:0;text-transform:none}
.rsn-veille-accueil.rsn-veille-accueil .rsna-sous button:hover{background:transparent;color:var(--navy);text-decoration:underline}

/* Événements du RSN : même langage que les fiches RSN de l'agenda (fond gris très pâle, trait jaune à gauche) */
.rsn-veille-accueil .rsna-rsn{display:flex;flex-direction:column;min-width:0}
.rsn-veille-accueil [data-rsn]{display:flex;flex-direction:column;gap:10px;flex:1}
.rsn-veille-accueil.rsn-veille-accueil .rsna-carte{display:grid;grid-template-columns:1fr;grid-template-rows:150px auto;min-height:100%;overflow:hidden;border-left:4px solid var(--yellow);border-radius:14px;background:var(--rsn-bg);color:var(--ink)}
.rsn-veille-accueil.rsn-veille-accueil .rsna-carte.rsna-compacte{grid-template-columns:96px minmax(0,1fr);grid-template-rows:auto;min-height:0}
.rsn-veille-accueil [data-rsn] > .rsna-carte:only-child{flex:1}
.rsn-veille-accueil .rsna-im{position:relative;overflow:hidden;background:#E8EEF5}
.rsn-veille-accueil .rsna-im img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;display:block}
.rsn-veille-accueil .rsna-im.rsna-sans{background:var(--navy) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 26'%3E%3Cpath d='M12 2 21.5 7.5v11L12 24 2.5 18.5v-11Z' fill='none' stroke='%23FFCC4E' stroke-width='2'/%3E%3C/svg%3E") center/34px no-repeat}
.rsn-veille-accueil .rsna-tx{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0;padding:14px 16px 16px}
.rsn-veille-accueil .rsna-compacte .rsna-tx{gap:4px;padding:10px 12px 12px}
.rsn-veille-accueil .rsna-pill{display:inline-block;padding:4px 8px;border-radius:999px;background:var(--yellow);color:var(--navy);font-size:11px;font-weight:700;line-height:1;letter-spacing:.02em}
.rsn-veille-accueil .rsna-quand{font-size:13px;font-weight:700;color:var(--navy)}
.rsn-veille-accueil .rsna-carte h3,.rsn-veille-accueil .rsna-ligne h3{margin:0;font-family:var(--sans);font-weight:700;letter-spacing:normal;text-transform:none;text-wrap:balance}
.rsn-veille-accueil .rsna-carte h3{font-size:16px;line-height:1.3;color:var(--ink)}
.rsn-veille-accueil .rsna-compacte h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:14px}
.rsn-veille-accueil .rsna-meta{font-size:12.5px;color:var(--muted)}
.rsn-veille-accueil .rsna-carte:hover h3{color:var(--blue)}
.rsn-veille-accueil.rsn-veille-accueil .rsna-carte.rsna-vide{display:block;min-height:0;border-left-color:var(--rule);background:transparent}
.rsn-veille-accueil .rsna-vide .rsna-tx{padding:6px 12px}
.rsn-veille-accueil.rsn-veille-accueil a.rsna-plus{align-self:flex-start;padding-bottom:1px;border-bottom:1.5px solid var(--yellow-ink);font-size:13px;font-weight:600;color:var(--navy)}
.rsn-veille-accueil.rsn-veille-accueil a.rsna-plus:hover{color:var(--blue)}

/* Événements de l'écosystème : une ligne par événement, tuile de date à gauche */
.rsn-veille-accueil .rsna-eco{min-width:0}
.rsn-veille-accueil [data-liste]{display:flex;flex-direction:column}
.rsn-veille-accueil.rsn-veille-accueil .rsna-ligne{display:grid;grid-template-columns:46px minmax(0,1fr);gap:12px;align-items:start;padding:9px 0;border-top:1px solid var(--rule)}
.rsn-veille-accueil.rsn-veille-accueil .rsna-ligne:first-child{border-top:0;padding-top:2px}
.rsn-veille-accueil .rsna-tuile{width:46px;padding:5px 0 4px;border-radius:9px;background:var(--light);text-align:center;color:var(--navy)}
.rsn-veille-accueil .rsna-tuile b{display:block;font-family:var(--serif);font-weight:400;font-size:19px;line-height:1}
.rsn-veille-accueil .rsna-tuile span{display:block;margin-top:2px;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.rsn-veille-accueil .rsna-ligne h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:14px;font-weight:600;line-height:1.3;color:var(--ink)}
.rsn-veille-accueil .rsna-ligne .rsna-meta{display:block;margin-top:2px;font-size:12px}
.rsn-veille-accueil .rsna-ligne:hover h3{color:var(--blue)}
.rsn-veille-accueil .rsna-ligne .rsna-pill{margin-bottom:3px;padding:3px 7px;font-size:10px}
.rsn-veille-accueil .rsna-ligne.rsna-sel .rsna-tuile{background:var(--navy);color:#fff}
.rsn-veille-accueil .rsna-vide-jour{padding:6px 0;font-size:13px;color:var(--muted)}

@media (max-width:980px){
  .rsn-veille-accueil{grid-template-columns:1fr 1fr}
  .rsn-veille-accueil .rsna-cal{grid-column:1/-1}
}
@media (max-width:640px){
  .rsn-veille-accueil{grid-template-columns:1fr}
  .rsn-veille-accueil.rsn-veille-accueil .rsna-carte{grid-template-rows:130px auto}
  .rsn-veille-accueil.rsn-veille-accueil .rsna-carte.rsna-compacte{grid-template-rows:auto}
}
@media (prefers-reduced-motion:reduce){
  .rsn-veille-accueil *{transition:none!important;scroll-behavior:auto!important}
}
