/* Mapa de lugares (casas com features.placeMap). Desenho em floor-map.js. */
.floor-map{width:100%;max-width:440px;margin:8px auto 0}
.floor-svg{display:block;width:100%;height:auto;border-radius:22px;box-shadow:0 18px 42px rgba(0,0,0,.45)}
.floor-svg text{fill:#fff;font:800 17px Manrope,Arial,sans-serif;text-anchor:middle;pointer-events:none;paint-order:stroke;stroke:rgba(0,0,0,.45);stroke-width:3px}
.fm-place{transition:opacity .15s,filter .15s}
.fm-place.is-enabled{cursor:pointer}
.fm-place.is-enabled:hover,.fm-place.is-enabled:focus-visible{filter:brightness(1.25) drop-shadow(0 0 8px rgba(255,255,255,.35))}
.fm-place:focus{outline:none}
.fm-place:focus-visible .fm-shape{stroke:#fff;stroke-width:4}
.fm-place.is-unavailable{opacity:.25}
.fm-place.is-selected{filter:drop-shadow(0 0 14px #fff)}
.fm-place.is-selected .fm-shape{stroke:#fff;stroke-width:5}
.floor-legend{display:grid;gap:6px;margin:12px 0 0;padding:0;list-style:none}
.floor-legend li{display:grid;grid-template-columns:12px 1fr auto;column-gap:8px;align-items:center;font-size:12px}
.floor-legend li i{width:12px;height:12px;border-radius:4px;background:var(--place-color)}
.floor-legend li span{grid-column:2;color:rgba(255,255,255,.6);font-size:11px}
.floor-legend li em{grid-row:1;grid-column:3;font-style:normal;color:rgba(255,255,255,.7)}
