/* Same Palma controls/cards. Map chrome does not introduce a new type scale. */
.property-catalog-tools{display:flex;align-items:center;gap:8px;min-width:0}
.property-map-workspace{display:grid;grid-template-columns:minmax(0,1fr);height:clamp(480px,calc(100dvh - 210px),900px);min-width:0;overflow:hidden;border:1px solid var(--palma-line);border-radius:var(--palma-radius-card);background:var(--palma-surface-soft);position:relative}
.property-map-workspace.has-selection{grid-template-columns:360px minmax(0,1fr)}
.property-map-wrap{position:relative;min-height:0;min-width:0;overflow:hidden;background:var(--palma-mint)}
.property-map-workspace>.property-map-wrap{grid-column:2;grid-row:1}
.property-map-workspace:not(.has-selection)>.property-map-wrap{grid-column:1}
.property-map-canvas{height:100%;width:100%;min-height:0;color:var(--palma-ink)}
.property-map-message{height:100%;min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;padding:24px;box-sizing:border-box;font:400 14px/1.5 var(--palma-font-body)}
.property-map-message p{max-width:340px;margin:0}
.property-map-zoom{position:absolute;top:16px;right:16px;z-index:2;display:grid;gap:6px}
.property-map-zoom .editor-button{width:44px;height:44px;min-height:44px;background:var(--palma-white,#fff);font-size:20px!important;padding:0}
.property-map-canvas .property-map-pin{--pin-fill:var(--palma-green);--pin-tip:6px;--pin-tip-half:5px;position:absolute;left:0;top:0;display:block;box-sizing:border-box;border:1px solid var(--palma-surface);border-radius:10px;background:var(--pin-fill);color:var(--palma-surface);padding:2px 6px;margin:0;white-space:nowrap;font:500 11px/14px var(--palma-font-body);filter:drop-shadow(0 2px 3px color-mix(in srgb,var(--palma-ink) 18%,transparent));transform:translate(-50%,calc(-100% - var(--pin-tip)));cursor:pointer;max-width:250px}
/* The outer triangle ends at the geographic anchor, not at the label's bottom. */
.property-map-pin::before,.property-map-pin::after{content:"";position:absolute;left:50%;top:100%;width:0;height:0;transform:translateX(-50%);border-style:solid;border-color:transparent;pointer-events:none}
.property-map-pin::before{border-width:calc(var(--pin-tip) + 1px) calc(var(--pin-tip-half) + 1px) 0;border-top-color:var(--palma-surface)}
.property-map-pin::after{top:calc(100% - 1px);border-width:var(--pin-tip) var(--pin-tip-half) 0;border-top-color:var(--pin-fill)}
.property-map-pin.is-selected{--pin-fill:var(--palma-yellow);color:var(--palma-ink);z-index:2}
.property-map-pin--dot:not(:focus-visible){--pin-tip:4px;--pin-tip-half:3px;width:12px;height:12px;padding:0;border-radius:50%;font-size:0}
.property-map-pin:focus-visible{outline:3px solid var(--palma-ink);outline-offset:3px}
.property-map-selection{grid-column:1;grid-row:1;overflow:auto;overscroll-behavior:contain;background:var(--palma-white,#fff);padding:12px;min-height:0;border-right:1px solid var(--palma-line)}
.property-map-selection[hidden]{display:none!important}
.property-map-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:10px}
.property-map-panel-head h2{font:500 15px/1.4 var(--palma-font-heading)!important;margin:0!important;min-width:0;overflow-wrap:anywhere}
.property-map-panel-head button{width:44px;flex:none;font-size:20px!important;padding:0}
.property-map-cards{display:grid;gap:12px;min-width:0}
.property-map-selection .property-result{width:100%;min-width:0;box-sizing:border-box}
.property-map-group-label{font-size:13px;margin:0 0 12px}
.property-map-expand{display:none!important}
.property-map-no-points{position:absolute;left:12px;right:70px;top:12px;z-index:1;border-radius:12px;background:#fff;padding:12px;font:400 12.6px/1.4 var(--palma-font-body);margin:0;pointer-events:none}
.property-detail-map,.property-point-map{height:300px;border:1px solid var(--palma-line);border-radius:14px;margin:10px 0}
.property-point-results{display:grid;gap:6px}
.property-map-dialog{width:min(1200px,calc(100vw - 32px))!important;max-width:none!important;height:min(820px,calc(100dvh - 32px));padding:16px!important;box-sizing:border-box}
.property-map-dialog[open]{display:flex;flex-direction:column}
.property-map-dialog>.property-map-wrap{flex:1;border-radius:12px}
.property-map-dialog .property-map-panel-head{flex:none}
@media(max-width:767px){
 .property-map-page .palma-page-head{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%)}
 .property-catalog-tools{width:100%;justify-content:space-between}
 .property-catalog-tools>.editor-button{min-width:108px}
 .property-map-workspace{height:calc(100dvh - 235px);min-height:330px;border-radius:14px}
 .property-map-workspace.has-selection{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(140px,1fr) minmax(0,2.4fr)}
 .property-map-workspace>.property-map-wrap{grid-column:1;grid-row:1}
 .property-map-selection{grid-column:1;grid-row:2;border:0;border-top:1px solid var(--palma-line);padding:10px;box-shadow:0 -3px 14px #153c300d}
 .property-map-selection .property-card-copy{padding:10px 12px 2px}
 .property-map-selection .property-card-footer{padding:4px 12px 10px}
 .property-map-selection.is-single{position:relative}
 .property-map-selection.is-single>.property-map-panel-head{position:absolute;right:18px;top:18px;z-index:3;padding:0}
 .property-map-selection.is-single>.property-map-panel-head h2{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .property-map-selection.is-single>.property-map-panel-head button{background:#fff}
 .property-map-selection .palma-person{display:none}
 .property-map-expand{display:inline-flex!important;margin:0 0 10px}
 .property-map-workspace.is-expanded{display:block}
 .property-map-workspace.is-expanded>.property-map-wrap{display:none}
 .property-map-workspace.is-expanded>.property-map-selection{height:100%;box-sizing:border-box}
 .property-map-zoom{top:10px;right:10px}
 .property-map-page .property-catalog-tools{width:auto}
 .property-map-page .property-sort{display:none}
 .property-map-dialog{width:100vw!important;height:100dvh;max-height:100dvh!important;margin:0;padding:12px!important;border-radius:0!important;border:0!important}
 .property-detail-map,.property-point-map{height:260px}
}

/* Shared address selection takes the complete viewport on every device. */
html.property-address-map-open{overflow:hidden}
.property-address-map-dialog{position:fixed;inset:0;box-sizing:border-box;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:var(--palma-surface,#fff);color:var(--palma-ink);font-family:var(--palma-font-body);overflow:hidden}
.property-address-map-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.property-address-map-dialog>header{padding:max(8px,env(safe-area-inset-top)) 16px 8px;border-bottom:1px solid var(--palma-line)}
.property-address-map-dialog h2{margin:0;font-size:14px;line-height:1.3;font-weight:600;outline:none}
.property-address-map-dialog [data-point-address]{margin:4px 0 0;font-size:13px;line-height:1.3;overflow-wrap:anywhere}
.property-address-map-dialog>.property-address-map-actions{display:flex;flex-direction:column;align-items:center;padding:8px 16px max(8px,env(safe-area-inset-bottom));background:var(--palma-surface,#fff)}
.property-address-map-dialog [data-point-choose]{display:block;width:100%;max-width:660px;min-height:44px;margin:auto}
.property-address-map-dialog [data-point-error]{max-width:660px;margin:0 auto 8px;font-size:13px;color:var(--palma-danger,#a93340)}
.property-address-map-dialog [data-point-error]:empty{display:none}
