/* Agenda (events/list.html) et cartes d'événement (events/_event.html),
   également incluses sur l'accueil. */
.agenda-title { text-align:center; margin:0 0 16px; }
.agenda-tabs {
  display:flex; gap:8px; margin:0 0 18px;
  background:#1b2c14; border-radius:12px; padding:4px;
}
.agenda-tabs a {
  flex:1; text-align:center; padding:9px 0; border-radius:9px;
  font:700 13px var(--font-body); text-decoration:none; color:var(--ink);
}
.agenda-tabs a.is-active { background:var(--gold); color:var(--brand-green); }
.events.is-past-list { opacity:.62; }
.agenda-section { margin-top:8px; }
.agenda-section h2 {
  font-size:.8rem; text-transform:uppercase; letter-spacing:.12em;
  color:var(--soft); margin:0 0 12px;
}
ul.events { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px; }
.event {
  display:flex; gap:16px; background:var(--card); border:1px solid var(--border);
  border-radius:12px; padding:14px 16px;
}
.event-when { flex:0 0 68px; text-align:center; }
.event-day { display:block; font-weight:700; text-transform:capitalize; line-height:1.25; }
.event-time { display:block; font-size:.85rem; color:var(--soft); font-variant-numeric:tabular-nums; }
.event-main { min-width:0; }
.event-title { margin:0; font-weight:600; }
.event-types { margin:6px 0 0; display:flex; flex-wrap:wrap; gap:6px; }
.chip {
  font-size:.72rem; font-weight:600; padding:2px 9px; border-radius:999px;
  color:var(--chip); border:1px solid var(--chip);
  background:color-mix(in srgb, var(--chip) 14%, transparent);
}
.event-desc { margin:8px 0 0; font-size:.88rem; }
.event-cal { flex:0 0 auto; margin-left:auto; position:relative; }
.event-cal > summary {
  list-style:none; cursor:pointer; user-select:none;
  width:34px; height:34px; border-radius:9px; border:1px solid var(--border);
  display:flex; align-items:center; justify-content:center; font-size:1rem;
}
.event-cal > summary::-webkit-details-marker { display:none; }
.event-cal[open] > summary { border-color:var(--gold); }
.event-cal-menu {
  position:absolute; right:0; top:calc(100% + 6px); z-index:5;
  display:flex; flex-direction:column; min-width:190px;
  background:var(--card); border:1px solid var(--border); border-radius:10px;
  padding:4px; box-shadow:0 8px 24px rgba(0,0,0,.3);
}
.event-cal-menu a {
  padding:9px 12px; border-radius:7px; font-size:.85rem;
  color:var(--ink); text-decoration:none; white-space:nowrap;
}
.event-cal-menu a:hover { background:var(--bg); }
.agenda-more { display:inline-block; margin-top:12px; font-size:.9rem; }
.agenda-empty { color:var(--soft); }
.event.is-past { opacity:.62; }
