/* Shared public/admin map appearance. Scoped to avoid changing the admin theme. */
.ddw-property-map{font-family:Arial,Helvetica,sans-serif;color:#173e43;background:#edf1ed;isolation:isolate}
.ddw-property-map .ddw-map-marker{background:transparent;border:0}
.ddw-map-marker>span{display:grid;place-items:center;width:40px;height:40px;border:3px solid #fff;border-radius:50% 50% 50% 6px;background:#173e43;color:#fff;transform:rotate(-45deg);box-shadow:0 3px 12px #173e4340}
.ddw-map-marker svg{transform:rotate(45deg)}
.ddw-property-map .ddw-map-cluster{display:grid;place-items:center;border:5px solid #173e432b;border-radius:50%;background:#fff;background-clip:padding-box;color:#173e43;font-size:14px;font-weight:800;box-shadow:0 2px 10px #173e4320}
.ddw-map-cluster span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#173e43;color:#fff}
.ddw-property-map .leaflet-popup.dw-leaflet-popup .leaflet-popup-content-wrapper{padding:0;overflow:hidden;border-radius:12px;box-shadow:0 12px 35px #173e4330}
.ddw-property-map .leaflet-popup.dw-leaflet-popup .leaflet-popup-content{width:270px!important;max-width:calc(100vw - 70px);margin:0!important;padding:0;font:14px/1.45 Arial,Helvetica,sans-serif}
.dw-leaflet-popup .dw-map-property-card{background:#fff;color:#172b30;overflow:hidden}
.dw-leaflet-popup .dw-map-popup-media{height:145px;position:relative;background:#e7ede9}
.dw-leaflet-popup .dw-map-popup-media img{display:block!important;width:100%!important;height:100%!important;object-fit:cover;max-width:none}
.dw-leaflet-popup .dw-map-badge{position:absolute;top:10px;left:10px;color:#fff;background:#173e43;padding:4px 10px;border-radius:50px;font-size:11px;font-weight:700}
.dw-leaflet-popup .dw-map-popup-details{padding:16px}
.dw-leaflet-popup .dw-map-title{margin:0 0 7px;font:700 16px/1.3 Arial,Helvetica,sans-serif;color:#172b30;overflow-wrap:anywhere;letter-spacing:0}
.dw-leaflet-popup .dw-map-location,.dw-leaflet-popup .dw-map-company{font-size:12px;color:#58666b;margin:0 0 8px;overflow-wrap:anywhere}
.dw-leaflet-popup .dw-map-price{margin:12px 0}
.dw-leaflet-popup .dw-map-price span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#58666b}
.dw-leaflet-popup .dw-map-price strong{font-size:21px;color:#173e43;font-weight:700;display:block;line-height:1.4}
.dw-leaflet-popup .dw-map-info-row{font-size:13px;font-weight:600;margin-bottom:8px;color:#172b30}
.dw-leaflet-popup .dw-map-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;border-top:1px solid #e5e9e5;padding-top:12px}
.ddw-property-map .dw-map-actions a{color:#173e43;font-size:12px;font-weight:700;text-decoration:none;margin:0}
.ddw-property-map .dw-map-actions a:hover{text-decoration:underline}
.ddw-property-map .leaflet-popup-close-button{top:8px!important;right:8px!important;border-radius:50%;background:#fff!important;color:#173e43!important;width:24px!important;height:24px!important;line-height:24px!important;z-index:2}
.ddw-map-statuses{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:10px}
.ddw-map-statuses span{font-size:10px;line-height:1.5;padding:2px 6px;border-radius:4px;background:#eff1ed;color:#596466}
.ddw-map-statuses .is-positive{background:#e4f1e9;color:#205739}
.ddw-map-fit{display:block;width:36px;height:36px;background:white;border:1px solid #b8c6c8;border-radius:7px;font:24px/1 Arial;color:#173e43;cursor:pointer;box-shadow:0 2px 8px #173e4320}
.ddw-map-fit:focus-visible,.ddw-map-actions a:focus-visible{outline:3px solid #ef713f;outline-offset:3px}
.ddw-map-notice{max-width:240px;padding:9px 12px;background:#fffffff2;box-shadow:0 2px 10px #173e4320;border-radius:7px;font:12px/1.5 Arial;color:#173e43}
.ddw-map-notice[hidden]{display:none}
#admin-properties-map{width:100%;height:min(74vh,850px);min-height:440px;border:1px solid #dbe2de;border-radius:14px}
#admin-properties-map-view[hidden]{display:none!important}
@media(max-width:575px){#admin-properties-map{min-height:380px;height:65vh}.ddw-map-notice{max-width:190px}}

/* Admin status markers: inactive properties are deliberately red. */
.ddw-property-map .ddw-map-marker.is-inactive>span{background:#b64242;box-shadow:0 3px 12px rgba(182,66,66,.30)}
.ddw-property-map .ddw-map-marker.is-inactive>span:hover{background:#a23838}
.ddw-map-statuses .is-negative{background:#fbe8e8;color:#9d3636}
.ddw-map-statuses .is-warning{background:#fff1dc;color:#8b5a18}

/* Shared property location editor (admin/owner). */
.ddw-property-location-editor{width:100%;height:410px;min-height:320px;border:1px solid #d6e0dc;border-radius:12px;overflow:hidden;background:#eef3f0}
.ddw-property-location-editor .ddw-map-marker.is-editor>span{background:#17484d;box-shadow:0 4px 16px rgba(23,72,77,.25)}
.ddw-map-editor-hint{max-width:310px;padding:8px 11px;border:1px solid rgba(23,72,77,.12);border-radius:8px;background:rgba(255,255,255,.96);box-shadow:0 3px 12px rgba(23,72,77,.10);font:600 11px/1.4 Arial,Helvetica,sans-serif;color:#36575a}
.ddw-property-location-editor.has-tile-error::after{content:'No se ha podido cargar temporalmente el fondo del mapa.';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:500;max-width:300px;padding:12px 16px;border-radius:9px;background:#fff;color:#7b4545;box-shadow:0 8px 30px rgba(0,0,0,.12);text-align:center;font-size:12px}
@media(max-width:767px){.ddw-property-location-editor{height:340px}.ddw-map-editor-hint{max-width:220px;font-size:10px}}

/* The warehouse map is not an image lazy-loader. Prevent the generic image
   placeholder from appearing while Leaflet initializes. */
.dw-map-shell .lazy-container::after{display:none!important}
.dw-map-shell .lazy-container{background:#edf2ef!important}
