/* BustoBus V22u29-stg9 — hierarchical stop LOD, focus/GPS priority and restrained transitions. */
.leaflet-fermate-pane .fermata-container {
  pointer-events: none !important;
}
.leaflet-fermate-pane .fermata-container .fermata-inner {
  will-change: opacity, transform;
  transition:
    opacity .16s ease,
    transform .20s cubic-bezier(.22,1,.36,1),
    box-shadow .18s ease,
    border-color .18s ease,
    background-color .18s ease;
}
.leaflet-fermate-pane .fermata-container.bb-stop-soft-hidden .fermata-inner {
  opacity: 0 !important;
  transform: scale(.80);
}
.leaflet-fermate-pane .fermata-container.bb-stop-gps .fermata-inner {
  box-shadow: 0 0 0 2px rgba(255,255,255,.86), 0 2px 7px rgba(15,23,42,.16);
}
.leaflet-fermate-hit-pane .bustobus-fermata-hit-target {
  background: transparent !important;
  border: 0 !important;
  cursor: pointer;
}
.bustobus-fermata-focus-marker {
  background: transparent !important;
  border: 0 !important;
  pointer-events: none !important;
}
.bustobus-fermata-focus-ring {
  width: 20px;
  height: 20px;
  border-radius: 9999px;
  background: rgba(255,255,255,.98);
  border: 3px solid #2563eb;
  box-shadow: 0 2px 9px rgba(15,23,42,.28), 0 0 0 3px rgba(255,255,255,.82);
}
/* Stops belonging to an opened trip must remain fully legible above route geometry. */
.fermata-container.bb-trip-map-future,
.fermata-container.bb-trip-map-next,
.fermata-container.bb-trip-map-past,
.fermata-container.fermata-in-attesa,
.fermata-container.fermata-futura-pop,
.fermata-container.fermata-selezionata {
  opacity: 1 !important;
}
/* During map interaction, do not start extra decorative transitions. Leaflet keeps marker zoom animation. */
#map.bb-stops-map-moving .leaflet-fermate-pane .fermata-container .fermata-inner {
  transition-duration: .10s;
}
@media (prefers-reduced-motion: reduce) {
  .leaflet-fermate-pane .fermata-container .fermata-inner { transition: none !important; }
}
