/* Deals map view (11/2/2026). Reuses site vars/classes; Leaflet + markercluster from unpkg. */
#mapview{display:none;position:relative;width:100vw;margin-left:calc(50% - 50vw);margin-bottom:10px}
body.mapmode #mapview{display:block}
body.mapmode #list,body.mapmode #empty{display:none!important}
.mapgrid{display:grid;grid-template-columns:1fr;gap:0}
@media (min-width:900px){.mapgrid{grid-template-columns:minmax(0,1fr) 340px}}
#dealmap{height:calc(100dvh - 190px);min-height:380px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#e8e6e0}
.mapbar{display:flex;gap:6px;flex-wrap:wrap;align-items:center;padding:8px 14px;max-width:none}
.mapside{background:var(--paper);border-left:1px solid var(--line);max-height:calc(100dvh - 190px);min-height:380px;overflow:auto;-webkit-overflow-scrolling:touch}
@media (max-width:899px){.mapside{border-left:0;max-height:none;min-height:0}}
.mapside .rowlabel{padding:10px 12px 4px}
.vis-item{display:flex;justify-content:space-between;gap:8px;padding:9px 12px;border-top:1px solid var(--line);cursor:pointer;font-size:13px}
.vis-item:active,.vis-item:hover{background:#f0eeea}
.vis-item b{font-weight:800}.vis-item .p{font-weight:850;color:var(--brand);white-space:nowrap}
.ppin{display:inline-block;transform:translate(-50%,-100%);background:#fff;color:var(--brand);border:2px solid var(--brand);border-radius:8px;padding:2px 6px;font:800 12px/1.2 Inter,system-ui,-apple-system,sans-serif;white-space:nowrap;box-shadow:0 2px 6px #1b272c33;position:relative}
.ppin:after{content:"";position:absolute;left:50%;bottom:-7px;margin-left:-5px;border:5px solid transparent;border-top-color:inherit;border-bottom:0}
.ppin.st-live{background:var(--brand);color:#fff;border-color:var(--brand)}
.ppin.st-rank{background:#d4a017;color:#1f1a0a;border-color:#a77d0b}
.ppin.st-pending{background:#fff0df;color:#6d5224;border-color:#c99a52}
.ppin.st-out{background:#e6e6e6;color:#4a4a4a;border-color:#9a9a9a}
.ppin.approx{background:#fff!important;border-style:dashed}
.ppin.st-live.approx{color:var(--brand)}.ppin.st-rank.approx{color:#7a5b12}
.ppin.sel{outline:3px solid #0ea5e9;outline-offset:1px;z-index:9999}
.leaflet-div-icon.pwrap{background:none;border:0}
.marker-cluster-small,.marker-cluster-medium,.marker-cluster-large{background:#29454e40}
.marker-cluster-small div,.marker-cluster-medium div,.marker-cluster-large div{background:var(--brand);color:#fff;font:800 12px Inter,system-ui,sans-serif}
.mapcard{position:absolute;z-index:1000;left:8px;right:8px;bottom:8px;max-height:58%;overflow:auto;-webkit-overflow-scrolling:touch;margin:0;display:none}
@media (min-width:900px){.mapcard{right:auto;width:360px;left:12px;bottom:12px;max-height:70%}}
.mapcard.show{display:block}
.mapcard .x{position:absolute;top:6px;right:8px;border:0;background:transparent;font-size:22px;line-height:1;color:var(--muted);cursor:pointer;padding:6px}
.mapcard .facts{font-size:13px;color:#35444a;line-height:1.5;margin-top:6px}
.legend-dot{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:4px;vertical-align:-1px}
@media (min-width:900px){#dealmap,.mapside{height:calc(100dvh - 270px);max-height:none}}
