/**
 * geo-map.css — mapas da lista de presença online (ver core/geo-map.js).
 * O contêiner precisa de altura; em telas pequenas fica um pouco mais baixo.
 */
.geo-map { height: 280px; width: 100%; border-radius: .75rem; border: 1px solid var(--bs-border-color, #dee2e6); z-index: 0; }
.geo-map.geo-map-sm { height: 200px; }
.geo-map.geo-map-lg { height: 420px; }
@media (max-width: 575.98px) { .geo-map { height: 230px; } .geo-map.geo-map-lg { height: 340px; } }
/* Sem imagens de ruas: fundo neutro quadriculado para dar noção de escala. */
.geo-map.geo-map-plain { background-color: #f1f3f5; background-image: linear-gradient(#e2e6ea 1px, transparent 1px), linear-gradient(90deg, #e2e6ea 1px, transparent 1px); background-size: 32px 32px; }
.geo-pin { background: none; border: 0; }
.geo-pin-dot { display: flex; align-items: center; justify-content: center; width: 26px; height: 26px; border-radius: 50% 50% 50% 0; transform: rotate(-45deg); background: var(--pin, #0b5ed7); border: 2px solid #fff; box-shadow: 0 1px 4px rgba(0,0,0,.35); color: #fff; font: 700 11px/1 system-ui, sans-serif; }
.geo-pin-dot > b { transform: rotate(45deg); font-weight: 700; }
.geo-map .leaflet-control-attribution { font-size: 10px; }
