.pxre-local-map{position:relative;overflow:hidden;min-height:320px;background:#dfe7ef;isolation:isolate;touch-action:none;user-select:none}.pxre-local-map-stage,.pxre-local-map-tiles,.pxre-local-map-grid,.pxre-local-map-markers{position:absolute;inset:0}.pxre-local-map-stage{cursor:grab;overflow:hidden}.pxre-local-map-stage:active{cursor:grabbing}.pxre-local-map-grid{z-index:1;pointer-events:none;background-image:linear-gradient(rgba(100,116,139,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(100,116,139,.12) 1px,transparent 1px);background-size:32px 32px}.pxre-local-map-tiles{z-index:2}.pxre-local-map-tile{position:absolute;width:256px;height:256px;max-width:none!important;user-select:none;-webkit-user-drag:none}.pxre-local-map-markers{z-index:4;pointer-events:none}.pxre-local-map-marker{position:absolute;transform:translate(-50%,-100%);width:30px;height:38px;padding:0;border:0;background:transparent;pointer-events:auto;cursor:pointer;filter:drop-shadow(0 3px 4px rgba(15,23,42,.32))}.pxre-local-map-marker>span{position:absolute;left:5px;top:4px;width:20px;height:20px;border-radius:50% 50% 50% 0;background:#10b981;border:3px solid #fff;transform:rotate(-45deg)}.pxre-local-map-marker.is-active>span{background:#ef4444;transform:rotate(-45deg) scale(1.16)}.pxre-local-map-tooltip{position:absolute;z-index:8;transform:translate(-50%,calc(-100% - 42px));max-width:240px;padding:8px 10px;border-radius:6px;background:#0f172a;color:#fff;font-size:13px;line-height:1.35;box-shadow:0 8px 24px rgba(15,23,42,.28);pointer-events:auto}.pxre-local-map-tooltip a{color:#fff;text-decoration:none;font-weight:700}.pxre-local-map-controls{position:absolute;z-index:10;right:12px;bottom:12px;display:grid;gap:6px}.pxre-local-map-controls button{width:38px;height:38px;padding:0;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#0f172a;font-size:22px;line-height:1;cursor:pointer;box-shadow:0 4px 14px rgba(15,23,42,.18)}.pxre-local-map-status{position:absolute;z-index:9;left:12px;right:64px;bottom:12px;padding:8px 10px;border-radius:6px;background:rgba(255,255,255,.94);color:#92400e;font-size:12px;line-height:1.35;box-shadow:0 4px 14px rgba(15,23,42,.12)}.pxre-local-map-attribution{position:absolute;z-index:9;right:8px;top:8px;padding:3px 6px;border-radius:4px;background:rgba(255,255,255,.85);color:#475569;font-size:10px;pointer-events:none}.pxre-admin-map-picker.pxre-local-map{height:360px}.pxre-list-map-map.pxre-local-map{min-height:520px}.pxre-detail-map.pxre-local-map{height:420px;padding:0!important}.pxre-map-empty{min-height:320px;display:flex;align-items:center;justify-content:center;color:#64748b;padding:24px;text-align:center}

/* v0.4.36 Compact property preview opened from map markers. */
.pxre-local-map-tooltip{
  width:min(300px,calc(100% - 24px));
  max-width:300px;
  padding:0;
  overflow:hidden;
  border:1px solid var(--pxth-admin-border,var(--pxre-border,#dbe2ea));
  border-radius:var(--pxth-radius-card,var(--pxre-radius-card,12px));
  background:var(--pxth-admin-surface,#fff);
  color:var(--pxth-title-color,var(--global-title-color,#0f172a));
  box-shadow:0 14px 36px rgba(15,23,42,.22);
  transform:translate(-50%,calc(-100% - 44px));
}
.pxre-local-map-tooltip.is-below{transform:translate(-50%,44px)}
.pxre-map-popup-card{
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  min-height:116px;
  color:inherit;
  text-decoration:none;
  background:inherit;
}
.pxre-map-popup-card:focus-visible{
  outline:2px solid var(--global-button-color,var(--pxth-button-bg,#2563eb));
  outline-offset:-2px;
}
.pxre-map-popup-media{
  display:block;
  min-height:116px;
  background:var(--pxth-body-background,#eef2f7);
  overflow:hidden;
}
.pxre-map-popup-media img{width:100%;height:100%;min-height:116px;display:block;object-fit:cover}
.pxre-map-popup-content{display:flex;flex-direction:column;gap:4px;min-width:0;padding:12px}
.pxre-map-popup-meta{display:flex;align-items:center;gap:6px;min-width:0;font-size:11px;color:var(--pxth-admin-muted,#64748b)}
.pxre-map-popup-purpose{
  flex:0 0 auto;
  padding:3px 7px;
  border-radius:var(--pxth-radius-button,999px);
  background:var(--global-button-color,var(--pxth-button-bg,#0f172a));
  color:var(--global-button-text-color,var(--pxth-button-text,#fff));
  -webkit-text-fill-color:var(--global-button-text-color,var(--pxth-button-text,#fff));
  font-weight:800;
}
.pxre-map-popup-type{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pxre-map-popup-title{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:14px;font-weight:800;line-height:1.35;color:var(--pxth-title-color,var(--global-title-color,#0f172a))}
.pxre-map-popup-location{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:var(--pxth-admin-muted,#64748b)}
.pxre-map-popup-footer{display:flex;align-items:end;justify-content:space-between;gap:8px;margin-top:auto}
.pxre-map-popup-price{font-size:14px;font-weight:900;color:var(--pxth-title-color,var(--global-title-color,#0f172a))}
.pxre-map-popup-link{font-size:11px;font-weight:800;color:var(--global-button-color,var(--pxth-button-bg,#2563eb))}
@media(max-width:600px){
  .pxre-local-map-tooltip{width:min(270px,calc(100% - 16px))}
  .pxre-map-popup-card{grid-template-columns:78px minmax(0,1fr)}
  .pxre-map-popup-content{padding:10px}
}

/* v0.4.36 — square 1:1 property card popup on map markers. */
.pxre-local-map-tooltip{
  width:min(260px,calc(100% - 20px));
  max-width:260px;
  aspect-ratio:1 / 1;
}
.pxre-map-popup-card{
  width:100%;
  height:100%;
  aspect-ratio:1 / 1;
  display:grid;
  grid-template-columns:1fr;
  grid-template-rows:minmax(0,58%) minmax(0,42%);
  min-height:0;
}
.pxre-map-popup-media,
.pxre-map-popup-media img{
  width:100%;
  height:100%;
  min-height:0;
}
.pxre-map-popup-content{
  min-height:0;
  padding:10px 12px 12px;
  gap:3px;
}
.pxre-map-popup-purpose{
  color:var(--pxth-button-text,#fff);
  -webkit-text-fill-color:var(--pxth-button-text,#fff);
}
.pxre-map-popup-title{font-size:13px;line-height:1.25}
.pxre-map-popup-location{font-size:10px}
.pxre-map-popup-price{font-size:13px}
.pxre-map-popup-link{font-size:10px}
@media(max-width:600px){
  .pxre-local-map-tooltip{width:min(240px,calc(100% - 16px));max-width:240px}
  .pxre-map-popup-card{grid-template-columns:1fr;grid-template-rows:minmax(0,58%) minmax(0,42%)}
  .pxre-map-popup-content{padding:9px 10px 10px}
}

/* v0.4.36 — preserve the full second title line inside the square popup. */
.pxre-map-popup-card{
  grid-template-rows:minmax(0,54%) minmax(0,46%);
}
.pxre-map-popup-meta,
.pxre-map-popup-location,
.pxre-map-popup-footer{
  flex:0 0 auto;
}
.pxre-map-popup-title{
  flex:0 0 auto;
  align-self:stretch;
  min-height:2.7em;
  max-height:2.7em;
  padding-bottom:2px;
  box-sizing:content-box;
  line-height:1.35;
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:break-word;
}
@media(max-width:600px){
  .pxre-map-popup-card{grid-template-rows:minmax(0,54%) minmax(0,46%)}
  .pxre-map-popup-title{font-size:13px;line-height:1.35;min-height:2.7em;max-height:2.7em}
}
