/* Infobulle « Objectifs de la semaine » et pulse du bouton rond, 3 s au défilement vers le bas
 * (javascripts/course-path/ui/views/week-scroll-hint.js). Rose du bouton (.lch-week-fab). */
.lch-week-hint {
  position: fixed;
  z-index: 99991;
  box-sizing: border-box;
  max-width: calc(100vw - 24px);
  padding: 10px 16px;
  border-radius: 12px;
  background: #f368af;
  color: #fff;
  font: 700 15px/1.25 "Nunito", "Noto Sans", sans-serif;
  white-space: nowrap;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.22);
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s;
}
.lch-week-hint.is-on {
  opacity: 1;
  visibility: visible;
}
/* Flèche : un carré rose tourné, posé sur le bord tourné vers le bouton. */
.lch-week-hint::after {
  content: "";
  position: absolute;
  width: 12px;
  height: 12px;
  background: inherit;
  transform: rotate(45deg);
}
.lch-week-hint[data-side="left"] {
  transform: translate(-100%, -50%);
}
.lch-week-hint[data-side="left"]::after {
  top: calc(50% - 6px);
  right: -5px;
}
.lch-week-hint[data-side="right"] {
  transform: translateY(-50%);
}
.lch-week-hint[data-side="right"]::after {
  top: calc(50% - 6px);
  left: -5px;
}
.lch-week-hint[data-side="top"] {
  transform: translateY(-100%);
}
.lch-week-hint[data-side="top"][data-edge="right"] {
  transform: translate(-100%, -100%);
}
.lch-week-hint[data-side="top"]::after {
  bottom: -5px;
}
.lch-week-hint[data-side="top"][data-edge="right"]::after {
  right: calc(var(--hint-arrow) - 6px);
}
.lch-week-hint[data-side="top"][data-edge="left"]::after {
  left: calc(var(--hint-arrow) - 6px);
}

/* `scale` et non `transform` : le survol du bouton se sert déjà de transform. */
.lch-week-pulse {
  animation: lch-week-pulse 1s ease-out 3;
}
@keyframes lch-week-pulse {
  0% {
    scale: 1;
    box-shadow: 0 0 0 0 rgb(243 104 175 / 65%);
  }
  50% {
    scale: 1.12;
  }
  100% {
    scale: 1;
    box-shadow: 0 0 0 18px rgb(243 104 175 / 0%);
  }
}
@media (prefers-reduced-motion: reduce) {
  .lch-week-pulse {
    animation: none;
  }
  .lch-week-hint {
    transition: none;
  }
}
