.world-map-wrapper {
  position: relative;
  width: 100%;
  max-width: 100%;
}

.world-map-wrapper svg {
  width: 100%;
  height: auto;
  display: block;
}

#sfr-world path{
  transition: fill 0.4s ease;
  cursor: pointer;
}

#sfr-world path {
  -webkit-tap-highlight-color: transparent;
}
#sfr-world * {
  -webkit-tap-highlight-color: transparent;
}

#sfr-world path:focus {
  outline: none;
}


.world-map-wrapper { position: relative; }

.map-pin {
    transition: transform 0.2s ease-out;
    pointer-events: none;
  }

  .map-pin-core { }
  .map-pin-pulse { }

  .map-pin-pulse {
    fill: none;
    animation: pinPulse 1.5s infinite;
    transform-origin: center;
  }

  @keyframes pinPulse {
    0% {
      stroke-width: 0;
      r: 0;
      opacity: 0.7;
    }
    50% {
      stroke-width: 5;
      r: 12;
      opacity: 0.4;
    }
    100% {
      stroke-width: 0;
      r: 0;
      opacity: 0;
    }
  }
  
  /* ---------- Mobile Horizontal Scroll ---------- */

@media (max-width: 768px) {
  .world-map-wrapper {
    overflow-x: auto;
    overflow-y: hidden;

    /* مرکز را نقطه شروع کن */
    scroll-snap-type: x mandatory;
    scroll-padding-left: 50%;
    scroll-padding-right: 50%;

    scrollbar-gutter: stable both-edges;
    -webkit-overflow-scrolling: touch;
  }

  .world-map-wrapper svg {
    width: 250%;
    height: auto;

    /* نقطه اسنپ وسط کل SVG */
    scroll-snap-align: center;
  }

  /* اسکرول‌بار واضح */
  .world-map-wrapper::-webkit-scrollbar {
    height: 10px;
  }

  .world-map-wrapper::-webkit-scrollbar-thumb {
    background: rgba(0,0,0,0.35);
    border-radius: 99px;
  }

  .world-map-wrapper::-webkit-scrollbar-track {
    background: rgba(0,0,0,0.1);
  }
}


