Spaces:
Sleeping
Sleeping
/* Map container styles */ | |
.map-container { | |
width: 100%; | |
height: 180px; | |
border-radius: 8px; | |
overflow: hidden; | |
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); | |
} | |
/* Custom IP marker styling */ | |
.custom-ip-marker { | |
background: transparent; | |
} | |
.ip-marker { | |
display: flex; | |
flex-direction: column; | |
align-items: center; | |
} | |
.ip-marker-content { | |
background-color: rgba(0, 0, 0, 0.7); | |
border: 2px solid #3b82f6; | |
border-radius: 6px; | |
padding: 6px 12px; | |
box-shadow: 0 0 15px rgba(59, 130, 246, 0.6); | |
text-align: center; | |
transition: all 0.3s ease; | |
max-width: 240px; | |
} | |
.ip-text { | |
display: block; | |
color: #ffffff; | |
font-size: 14px; | |
font-weight: 600; | |
margin-bottom: 2px; | |
} | |
.location-text { | |
display: block; | |
color: #e2e8f0; | |
font-size: 12px; | |
} | |
/* Popup styling */ | |
.custom-popup .leaflet-popup-content-wrapper { | |
background-color: rgba(15, 23, 42, 0.9); | |
color: #ffffff; | |
border-radius: 8px; | |
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3); | |
} | |
.custom-popup .leaflet-popup-tip { | |
background-color: rgba(15, 23, 42, 0.9); | |
} | |
.map-popup { | |
padding: 5px; | |
} | |
.popup-header { | |
color: #3b82f6; | |
font-weight: 600; | |
font-size: 14px; | |
margin-bottom: 5px; | |
border-bottom: 1px solid rgba(59, 130, 246, 0.4); | |
padding-bottom: 5px; | |
} | |
.popup-row { | |
margin: 5px 0; | |
font-size: 13px; | |
} | |
/* No location info styling */ | |
.no-location-info { | |
position: absolute; | |
top: 50%; | |
left: 50%; | |
transform: translate(-50%, -50%); | |
background-color: rgba(15, 23, 42, 0.8); | |
color: #ffffff; | |
padding: 10px 15px; | |
border-radius: 8px; | |
text-align: center; | |
z-index: 1000; | |
border: 1px solid #3b82f6; | |
box-shadow: 0 0 20px rgba(59, 130, 246, 0.4); | |
} | |
.no-location-content { | |
display: flex; | |
align-items: center; | |
gap: 10px; | |
} | |
.no-location-content i { | |
color: #3b82f6; | |
font-size: 18px; | |
} | |
/* Animation for the IP marker to make it more visible */ | |
@keyframes pulse { | |
0% { | |
transform: scale(1); | |
box-shadow: 0 0 0 0 rgba(59, 130, 246, 0.7); | |
} | |
70% { | |
transform: scale(1.05); | |
box-shadow: 0 0 0 10px rgba(59, 130, 246, 0); | |
} | |
100% { | |
transform: scale(1); | |
box-shadow: 0 0 0 0 rgba(59, 130, 246, 0); | |
} | |
} | |
.ip-marker-content { | |
animation: pulse 3s infinite; | |
} |