/* Respaldo local de las reglas estructurales de Leaflet y ajustes del layout. */
.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden;-webkit-tap-highlight-color:transparent}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-animated{transform-origin:0 0}.leaflet-zoom-hide{visibility:hidden}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container.leaflet-touch-zoom{touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{touch-action:none}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-control{position:relative;z-index:800;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}
.activities-layout{grid-template-columns:minmax(0,1fr) minmax(320px,420px);align-items:start}.cards{align-content:start}.empty{align-self:start}.map{width:100%;min-width:0}
@media(max-width:900px){.activities-layout{grid-template-columns:minmax(0,1fr)}.map{width:100%;height:min(65vh,480px);min-height:340px}}
@media(max-width:560px){.map{height:58vh;min-height:320px;border-radius:16px}}
.place-map-icon{background:transparent;border:0}.place-map-icon span{display:grid;place-items:center;width:42px;height:42px;border:3px solid #fff;border-radius:50% 50% 50% 8px;transform:rotate(-45deg);box-shadow:0 5px 16px rgba(0,0,0,.45);font-size:20px}.place-map-icon span.academy{background:#e81935}.place-map-icon span.venue{background:#7652e8}.place-map-icon span::first-letter{transform:rotate(45deg)}.leaflet-popup-content{min-width:190px}.place-popup-logo{display:block!important;width:58px!important;height:58px!important;object-fit:contain;background:#fff;border-radius:10px;margin:0 0 8px;padding:4px}.place-popup-links{margin-top:9px;line-height:1.8}.place-popup-links a{font-weight:700}
.location-picker{max-width:900px;margin:0 auto 22px;padding:22px;background:var(--card);border:1px solid var(--line);border-radius:22px}.location-picker .section-title{margin:0 0 16px}.location-picker-controls{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:10px;align-items:end}.admin-location-map{height:460px;width:100%;margin-top:12px;border-radius:16px;overflow:hidden;background:#ddd}.admin-location-map .leaflet-marker-icon{cursor:grab}.admin-location-map .leaflet-marker-dragging{cursor:grabbing}@media(max-width:760px){.location-picker{padding:14px}.location-picker-controls{grid-template-columns:1fr}.admin-location-map{height:55vh;min-height:350px}}
.public-filters{grid-template-columns:1.4fr repeat(3,1fr);}.public-filters button{grid-column:auto}.place-description{color:var(--muted2);font-size:.88rem;line-height:1.55;margin:8px 0}.place-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.place-popup-description{margin:7px 0;line-height:1.4}.maps-direction-link{display:inline-block;background:#f5c518;color:#17120a!important;padding:5px 8px;border-radius:6px}.place-cards{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:900px){.public-filters{grid-template-columns:1fr 1fr}.public-filters>:first-child{grid-column:span 2}.place-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.public-filters{grid-template-columns:1fr}.public-filters>:first-child{grid-column:auto}.place-cards{grid-template-columns:1fr}}
