/* Styles for the GPS "locate me" Leaflet control (.leaflet-control-locate), added by
   addLocateControl() in map-init.js when window.mapConfig.showLocate !== false.
   Self-contained -- no dependency on anything else in map-form-section.css. Load this
   file on any template whose map wants the locate button sized correctly (30x30 button,
   18x18 icon) instead of at the icon's native 256x256px. */
.leaflet-control-locate button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    background: white;
    border: none;
    cursor: pointer;
    padding: 0;
    border-radius: 2px;
    transition: background 0.15s;
}
.leaflet-control-locate button:hover {
    background: #f4f4f4;
}
.leaflet-control-locate button img {
    width: 18px;
    height: 18px;
    opacity: 0.55;
    transition: opacity 0.15s;
}
.leaflet-control-locate button:hover img {
    opacity: 0.9;
}
.leaflet-control-locate.located button {
    background: rgba(51, 136, 255, 0.08);
}
.leaflet-control-locate.located button img {
    opacity: 1;
}
@keyframes locate-pulse {
    0%, 100% { opacity: 0.3; }
    50%       { opacity: 1; }
}
.leaflet-control-locate.locating button img {
    animation: locate-pulse 1s ease-in-out infinite;
}
