/* Distinctive start location marker styles */ .start-location-custom-marker { z-index: 2000 !important; } .start-location-marker-wrapper { position: relative; width: 48px; height: 48px; } .start-location-marker-pin { position: absolute; width: 48px; height: 48px; background: #ff4444; border-radius: 50% 50% 50% 0; transform: rotate(-45deg); box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3); display: flex; align-items: center; justify-content: center; border: 3px solid white; animation: bounce-marker 2s ease-in-out infinite; } .start-location-marker-inner { transform: rotate(45deg); width: 24px; height: 24px; } .start-location-marker-pulse { position: absolute; width: 48px; height: 48px; border-radius: 50%; background: rgba(255, 68, 68, 0.3); animation: pulse-ring 2s ease-out infinite; /* Position the pulse at the tip of the marker */ top: 24px; left: 0; transform-origin: center center; } @keyframes bounce-marker { 0%, 100% { transform: rotate(-45deg) translateY(0); } 50% { transform: rotate(-45deg) translateY(-5px); } } @keyframes pulse-ring { 0% { transform: scale(0.5); opacity: 1; } 100% { transform: scale(2); opacity: 0; } } /* Enhanced popup for start location */ .start-location-popup-enhanced .leaflet-popup-content-wrapper { padding: 0; overflow: hidden; border: none; box-shadow: 0 5px 20px rgba(0,0,0,0.3); } .start-location-popup-enhanced .leaflet-popup-content { margin: 0; }