.floor-stage .interactive-plan{position:relative;overflow:hidden;cursor:default}
.apartment-plan-canvas{display:block;width:100%;height:100%;overflow:hidden;touch-action:pan-y pinch-zoom}
.apartment-plan-region{fill:transparent;stroke:transparent;stroke-width:1.5;vector-effect:non-scaling-stroke;pointer-events:all;cursor:pointer;outline:none}
.apartment-plan-region.is-active{fill:#df3d8638;stroke:#69448a}
.apartment-plan-region:focus-visible{stroke:#2b1b38;stroke-width:2.5;stroke-dasharray:5 3}
.apartment-plan-panel{border:1px solid var(--line);border-top:0;background:#fcf8fd;padding:14px 16px;margin-bottom:16px;font:13px/1.6 var(--sans)}
.apartment-plan-summary{min-height:50px;display:flex;align-items:center;gap:8px 16px;flex-wrap:wrap;color:var(--purple)}
.apartment-plan-summary p{margin:0;font:inherit}
.apartment-plan-summary strong{font-weight:600}
.apartment-plan-summary .text-link{margin-left:auto;font:inherit;font-weight:600}
.apartment-plan-controls{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:6px}
.apartment-plan-controls button{min-height:44px;font:12px var(--sans);text-decoration:underline;text-underline-offset:4px;background:none}
.floor-units a.is-plan-active{background:#f1e5f5;border-color:#69448a;box-shadow:inset 3px 0 #69448a}
@media(max-width:600px){.apartment-plan-panel{padding:12px}.apartment-plan-summary{align-items:flex-start;flex-direction:column;gap:5px}.apartment-plan-summary .text-link{margin-left:0;min-height:44px;display:flex;align-items:center}.apartment-plan-controls{gap:8px 18px}}
