#map-toggle{display:inline-flex;align-items:center;gap:8px;border:1px solid #d8e1dd;border-radius:30px;padding:11px 17px;background:#fff;color:#264b47;font:inherit;font-weight:600;white-space:nowrap;transition:background .18s,transform .18s}#map-toggle[hidden],#map-panel[hidden],#map-panel [hidden]{display:none!important}#map-toggle:hover{background:#edf4f1}#map-toggle:active{transform:scale(.98)}#results-layout.with-map{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,46%);gap:28px;align-items:start}.with-map #grid{grid-template-columns:repeat(2,minmax(0,1fr))}#map-panel{position:sticky;top:24px;border:1px solid #e1e7e3;border-radius:24px;overflow:hidden;background:#f4f7f4;height:min(740px,calc(100dvh - 48px));min-height:420px;animation:map-enter .22s ease-out}#map-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:16px 20px;background:#fff}#map-toolbar strong{font-size:15px}#map-toolbar small{display:block;margin-top:4px;color:#65716c;font-size:12px}#map-close,.map-preview-close{border:0;border-radius:50%;width:34px;height:34px;background:#f0f4f1;font-size:23px;flex-shrink:0}#map-canvas{position:absolute;inset:81px 0 0}#map-panel .map-zone-tools{position:absolute;top:96px;left:14px;right:14px;display:flex;justify-content:center;gap:8px;pointer-events:none;z-index:2}.map-zone-tools button{pointer-events:auto;background:white;border:1px solid #dce5df;padding:11px 15px;border-radius:30px;box-shadow:0 3px 12px #21463d16;font:inherit;font-size:12px;font-weight:600}#map-status{position:absolute;top:150px;left:24px;right:24px;background:#fff;padding:18px;border-radius:14px;color:#485c55;font-size:14px;line-height:1.6;z-index:2}#map-preview{position:absolute;bottom:42px;left:16px;right:16px;max-height:42%;overflow:auto;background:#fff;border-radius:18px;padding:18px;box-shadow:0 8px 30px #173d3b22;z-index:3;animation:map-enter .18s ease-out}#map-preview h3{font-size:17px;margin:0 32px 6px 0}#map-preview>p{font-size:12px;color:#61736b;line-height:1.5;margin:0 0 14px}.map-preview-close{position:absolute;right:10px;top:10px}.map-home{border:0;border-top:1px solid #e7eeea;background:#fff;display:flex;width:100%;gap:12px;padding:12px 0;text-align:left;align-items:center}.map-home img{width:76px;height:64px;object-fit:cover;border-radius:10px}.map-home strong,.map-home small{display:block}.map-home strong{font-size:14px;line-height:1.4}.map-home small{margin-top:5px;color:#48625b;font-size:12px}.map-price-pin{position:absolute;transform:translate(-50%,-50%);background:#fff;color:#233c35;border:1px solid #d9e5df;padding:9px 13px;border-radius:24px;box-shadow:0 3px 10px #183f3326;font:600 13px 'DM Sans',sans-serif;white-space:nowrap;transition:background .16s,color .16s,box-shadow .16s}.map-price-pin:hover,.map-price-pin.highlight,.map-price-pin.selected{background:#285f59;color:#fff;z-index:5;box-shadow:0 5px 15px #173e3838}#map-panel button:focus-visible,#map-toggle:focus-visible{outline:3px solid #3e7771;outline-offset:3px}.map-outside{display:none!important}@keyframes map-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1000px){.with-map #grid{grid-template-columns:1fr}}@media(max-width:760px){#results-layout.with-map{display:block}body.map-mobile-open{overflow:hidden}#map-panel{position:fixed;inset:0;top:0;z-index:45;height:100dvh;max-height:none;min-height:0;border-radius:0;border:0}#map-toolbar{padding-top:calc(16px + env(safe-area-inset-top));padding-bottom:16px}#map-canvas{top:calc(81px + env(safe-area-inset-top))}#map-panel .map-zone-tools{top:calc(96px + env(safe-area-inset-top))}#map-preview{bottom:calc(42px + env(safe-area-inset-bottom))}#map-toggle{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:20;background:#244c45;color:#fff;box-shadow:0 4px 18px #213d3830}#map-toggle:hover{background:#33675e}#map-toggle:active{transform:translateX(-50%) scale(.98)}body.map-mobile-open #map-toggle{display:none}#map-status{top:155px}}@media(prefers-reduced-motion:reduce){#map-panel,#map-preview{animation:none}.map-price-pin,#map-toggle{transition:none}}
