/* SECMap styles (static/js/secmap.js) */
.secmap { height: 460px; width: 100%; border-radius: 12px; border: 1px solid #dee2e6; background: #eef2f7; z-index: 1; }
.secmap-sm { height: 360px; }
.secmap-fallback { padding: 40px; text-align: center; color: #6b7280; }
.secmap-dot { display: block; border-radius: 50%; box-shadow: 0 1px 4px rgba(15, 23, 42, .35); box-sizing: border-box; }
.secmap-dot.is-selected { box-shadow: 0 0 0 4px rgba(37, 99, 235, .35), 0 1px 4px rgba(15, 23, 42, .4); }
.secmap-dot-wrap { background: transparent; border: 0; }
.secmap-center span { display: block; width: 22px; height: 22px; border-radius: 50%; background: #1d4ed8;
  border: 4px solid #fff; box-shadow: 0 0 0 2px #1d4ed8, 0 2px 6px rgba(0, 0, 0, .3); box-sizing: border-box; }
.secmap-pop { font-size: 13px; line-height: 1.35; min-width: 200px; }
.secmap-pop-title { font-weight: 700; color: #0f172a; margin-bottom: 3px; }
.secmap-pop-meta { color: #475569; }
.secmap-pop-badges { margin: 6px 0 2px; }
.secmap-badge { display: inline-block; color: #fff; border-radius: 4px; padding: 1px 6px; font-size: 11px; font-weight: 600; margin: 1px 2px 1px 0; }
.secmap-pop-extra { margin-top: 6px; color: #334155; font-style: italic; }
.secmap-pop-note { margin-top: 4px; color: #94a3b8; font-size: 11px; }
.secmap-pop-link { display: inline-block; margin-top: 8px; font-weight: 600; }
.secmap-legend { display: flex; flex-wrap: wrap; gap: 6px 14px; font-size: 12.5px; color: #475569; margin: 8px 2px 0; }
.secmap-legend .sw { display: inline-block; width: 11px; height: 11px; border-radius: 50%; margin-right: 5px; vertical-align: -1px; }
.secmap-legend .sw.hollow { background: #fff !important; border: 3px solid #2563eb; box-sizing: border-box; }
.marker-cluster-small, .marker-cluster-medium, .marker-cluster-large { background-color: rgba(37, 99, 235, .18) !important; }
.marker-cluster-small div, .marker-cluster-medium div, .marker-cluster-large div { background-color: rgba(37, 99, 235, .75) !important; color: #fff !important; font-weight: 700; }
.leaflet-container { font-family: inherit; }
/* Location input with "use my location" button */
.near-group .btn-locate { white-space: nowrap; }
.row-flash { animation: rowflash 1.6s ease; }
@keyframes rowflash { 0% { background: #fde68a; } 100% { background: transparent; } }
