/* Marqueurs événements FMA — partagé entre activité, outil et fiche parcours */
.ev-map-pin {
  width: 30px;
  border-radius: 5px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: .2rem .15rem .15rem;
  box-shadow: 0 2px 6px rgba(0,0,0,.3);
  color: #fff;
  position: relative;
  cursor: pointer;
  gap: 0;
}
.ev-map-day   { font-size: .75rem; font-weight: 700; line-height: 1.05; }
.ev-map-month { font-size: .45rem; text-transform: uppercase; letter-spacing: .03em; line-height: 1.2; }
.ev-map-tail  {
  position: absolute; bottom: -5px; left: 50%;
  transform: translateX(-50%);
  width: 0; height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
}
.ev-popup { margin: -.75rem; min-width: 200px; overflow: hidden; border-radius: 10px; }
.ev-popup-head { padding: .65rem .75rem .4rem; }
.ev-popup-title {
  font-size: .85rem; font-weight: 700; color: var(--color-text);
  text-decoration: none; display: block; line-height: 1.3; margin: 0 0 .3rem;
}
.ev-popup-title:hover { color: var(--color-brand); }
.ev-popup-meta {
  font-size: .72rem; color: var(--color-text-muted);
  display: flex; align-items: center; gap: .3rem; margin: .1rem 0;
}
.ev-popup-btn {
  display: flex; align-items: center; justify-content: center; gap: .35rem;
  width: 100%; padding: .45rem .75rem;
  border-radius: 0 0 10px 10px;
  font-size: .78rem; font-weight: 700;
  color: #fff !important;
  text-decoration: none; transition: filter .15s;
}
.ev-popup-btn:hover { filter: brightness(1.12); }
