.mp-wrap{position:relative;height:calc(100vh - 150px);min-height:640px;background:var(--ivory)}.mp-map{position:absolute;inset:0;z-index:1;font-family:var(--sans)}.mp-top{position:absolute;z-index:500;top:14px;left:14px;right:14px;display:flex;gap:12px;justify-content:space-between;align-items:flex-start;pointer-events:none}.mp-top>*{pointer-events:auto}.mp-chips{display:flex;gap:8px;background:#fffffff2;backdrop-filter:blur(8px);padding:7px;border-radius:40px;box-shadow:0 8px 30px #06164638;overflow-x:auto;scrollbar-width:none;max-width:100%}.mp-chips::-webkit-scrollbar,.mp-areas::-webkit-scrollbar{display:none}.mp-chip{display:flex;align-items:center;gap:8px;padding:5px 14px 5px 5px;border-radius:30px;border:1px solid var(--line);background:#fff;color:var(--muted);font:400 .82rem var(--sans);cursor:pointer;white-space:nowrap;transition:all .2s}.mp-chip[hidden]{display:none}.mp-chip__dot{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e5e7eb;color:#9ca3af;transition:all .2s}.mp-chip__dot svg{width:16px;height:16px}.mp-chip.is-on{color:var(--ink);border-color:var(--c)}.mp-chip.is-on .mp-chip__dot{background:var(--c);color:#fff}.mp-search{position:relative;flex:0 0 280px}.mp-search>svg{position:absolute;left:14px;top:13px;width:18px;height:18px;color:var(--ink-2)}.mp-search input{width:100%;height:44px;border-radius:30px;border:0;padding:0 16px 0 42px;font:400 .95rem var(--sans);box-shadow:0 8px 30px #06164638;background:#fffffff7;color:var(--ink)}.mp-search input:focus{outline:2px solid var(--gold)}.mp-results{position:absolute;top:50px;left:0;right:0;background:#fff;border-radius:14px;box-shadow:0 14px 36px #06164647;list-style:none;margin:0;padding:6px;max-height:60vh;overflow:auto}.mp-results button{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:none;border:0;padding:9px 10px;border-radius:10px;cursor:pointer;font:400 .88rem var(--sans);color:var(--ink)}.mp-results button:hover,.mp-results button:focus{background:var(--ivory);outline:none}.mp-results i{width:10px;height:10px;border-radius:50%;flex:none}.mp-results b{font-weight:500;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mp-results small{color:var(--muted);font-size:.75rem;white-space:nowrap}.mp-none{padding:10px;color:var(--muted);font-size:.85rem}.mp-needs{position:absolute;z-index:490;top:72px;left:14px;right:14px;pointer-events:none;max-width:640px}.mp-needs>*{pointer-events:auto}.mp-needs .needs{background:#fffffff2;padding:6px 10px;border-radius:30px;box-shadow:0 8px 30px #06164638;width:fit-content;max-width:100%}.mp-needs .needs-msg{background:#fffffff5;box-shadow:0 4px 14px #06164633;width:fit-content;max-width:100%}.mp-bottom{position:absolute;z-index:500;left:0;right:0;bottom:0;display:flex;flex-direction:column;gap:8px;padding-top:6px;background:linear-gradient(to top,rgba(6,22,70,.6),transparent);pointer-events:none}.mp-bottom>*{pointer-events:auto}.mp-count{align-self:flex-start;margin-left:14px;background:var(--ink-2);color:#fff;font-size:.78rem;letter-spacing:.04em;padding:6px 14px;border-radius:20px;box-shadow:0 4px 14px #0000004d}.mp-bottom [hidden]{display:none}.mp-regions{display:flex;gap:8px;overflow-x:auto;padding:0 14px 18px;scrollbar-width:none;scroll-snap-type:x proximity}.mp-regions::-webkit-scrollbar{display:none}.mp-reg{flex:0 0 112px;height:58px;border-radius:12px;border:2px solid transparent;background:var(--bg) center/cover;position:relative;overflow:hidden;cursor:pointer;scroll-snap-align:center;box-shadow:0 6px 18px #00000059;padding:0;transition:transform .2s,border-color .2s}.mp-reg:before{content:"";position:absolute;inset:0;background:linear-gradient(to top,#061646d9,#0616461a 75%)}.mp-reg span{position:absolute;left:8px;right:8px;bottom:5px;color:#fff;font:500 .8rem/1.1 var(--sans);text-align:left;text-shadow:0 1px 3px rgba(0,0,0,.5)}.mp-reg.is-on{border-color:var(--gold-2);transform:translateY(-2px)}.mp-rb-wrap{background:none;border:0;display:flex;flex-direction:column;align-items:center;gap:3px}.mp-rb{position:relative;display:block;width:68px;height:68px;border-radius:50%;background:var(--ink-2) center/cover;border:3px solid #fff;box-shadow:0 6px 18px #06164680}.mp-rb i{position:absolute;right:-8px;top:-6px;min-width:26px;padding:2px 6px;border-radius:14px;background:var(--gold);color:#fff;font:500 .72rem/1.3 var(--sans);font-style:normal;text-align:center}.mp-rb__n{font:500 .82rem/1.1 var(--sans);color:#fff;background:#061646d1;padding:2px 9px;border-radius:12px;white-space:nowrap}.mp-load{position:absolute;z-index:520;left:50%;top:45%;transform:translate(-50%,-50%);width:min(88%,360px);background:#fffffff7;border-radius:14px;box-shadow:0 14px 36px #06164652;padding:16px 18px;text-align:center;color:var(--ink)}.mp-load[hidden]{display:none}.mp-load__bar{display:block;height:8px;border-radius:6px;margin-bottom:12px;background:linear-gradient(90deg,#e5e7eb 25%,#f6f7f9,#e5e7eb 75%) 0 0/200% 100%;animation:mpshim 1.1s linear infinite}.mp-load.is-err .mp-load__bar{display:none}.mp-load__t{font-size:.92rem;line-height:1.4}.mp-load__retry{margin-top:12px;padding:9px 22px;border-radius:24px;background:var(--gold);color:#fff;border:0;font:500 .85rem var(--sans);cursor:pointer}.mp-nojs{position:absolute;z-index:600;left:14px;right:14px;top:80px;background:#fff;border-radius:14px;padding:16px 18px;box-shadow:0 14px 36px #06164652}.mp-nojs ul{display:flex;flex-wrap:wrap;gap:8px 18px;list-style:none;margin:8px 0 0;padding:0}.mp-prac{margin-top:8px;background:#fffffff5;border-radius:22px;box-shadow:0 8px 30px #06164638;width:fit-content;max-width:100%}.mp-prac summary{cursor:pointer;min-height:44px;display:flex;align-items:center;padding:0 16px;font:500 .85rem var(--sans);color:var(--ink)}.mp-prac__in{padding:2px 12px 12px;max-width:560px}.mp-prac__btns{display:flex;flex-wrap:wrap;gap:6px}.mp-prac-btn{display:flex;align-items:center;gap:6px;min-height:44px;padding:0 14px 0 10px;border-radius:30px;border:1px solid var(--line);background:#fff;color:var(--muted);font:400 .82rem var(--sans);cursor:pointer}.mp-prac-btn svg{width:18px;height:18px}.mp-prac-btn.is-on{color:#fff;background:var(--c);border-color:var(--c)}.mp-prac__msg{margin:8px 2px 0;font-size:.8rem;line-height:1.4;color:var(--ink)}.mp-prac__links{display:flex;gap:16px;margin:6px 2px 0;font-size:.8rem}.mp-prac__links a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink-2);text-decoration:underline}.mp-pin--pr{width:28px;height:28px}.mp-pin--pr svg{width:15px;height:15px}.mp-cl--pr{width:36px;height:36px;font-size:.8rem;background:#0f5f8c}.mp-card--pr .pr-h{font-size:1.15rem;margin:0 0 8px}.pr-dl{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;margin:0 0 8px;font-size:.8rem}.pr-dl dt{color:var(--muted)}.pr-dl dd{margin:0}.pr-note{font-size:.76rem!important;margin:0 0 10px!important}@keyframes mpshim{to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.mp-load__bar{animation:none}}.mp-count b{font-weight:500}.mp-areas{display:flex;gap:10px;overflow-x:auto;padding:4px 14px 6px;scrollbar-width:none;scroll-snap-type:x proximity}.mp-area{flex:0 0 118px;height:86px;border-radius:14px;border:2px solid transparent;background:var(--bg) center/cover;position:relative;overflow:hidden;cursor:pointer;scroll-snap-align:center;box-shadow:0 6px 18px #00000059;transition:transform .2s,border-color .2s;padding:0}.mp-area:before{content:"";position:absolute;inset:0;background:linear-gradient(to top,#061646d9,#0616460d 70%)}.mp-area span{position:absolute;left:8px;right:8px;bottom:6px;color:#fff;font:500 .78rem/1.15 var(--sans);text-align:left;text-shadow:0 1px 3px rgba(0,0,0,.5)}.mp-area:hover{transform:translateY(-3px)}.mp-area.is-on{border-color:var(--gold-2);transform:translateY(-3px)}.mp-area.is-on:after{content:"";position:absolute;top:8px;right:8px;width:10px;height:10px;border-radius:50%;background:var(--gold-2);box-shadow:0 0 0 3px #fffc}.mp-pin-wrap,.mp-cl-wrap{background:none;border:0}.mp-pin{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--c);color:#fff;border:2.5px solid #fff;box-shadow:0 3px 10px #06164673;transition:transform .15s}.mp-pin svg{width:17px;height:17px}.mp-pin-wrap:hover .mp-pin{transform:scale(1.18)}.mp-cl{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--ink-2);color:#fff;font:500 .9rem var(--sans);border:3px solid rgba(255,255,255,.9);box-shadow:0 0 0 6px #01216940,0 4px 12px #0006}.mp-popup .leaflet-popup-content-wrapper{padding:0;border-radius:16px;overflow:hidden;box-shadow:0 18px 44px #06164666}.mp-popup .leaflet-popup-content{margin:0;width:260px!important}.mp-popup .leaflet-popup-close-button{z-index:5;top:10px;right:60px;width:30px;height:30px;line-height:28px;border-radius:50%;background:#fffffff0;color:var(--ink);font-size:20px;padding:0;text-align:center}.mp-card__img{position:relative;height:170px;background:var(--ink-2) center/cover}.mp-card__type{position:absolute;left:12px;bottom:12px;background:var(--c);color:#fff;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;padding:3px 10px;border-radius:12px}.mp-card__body{padding:14px 16px 16px}.mp-card__body h2{font-size:1.4rem;margin:0 0 2px;line-height:1.1}.mp-card__body p{margin:0 0 12px;font-size:.82rem;color:var(--muted);line-height:1.4}.mp-card__links{display:flex;gap:8px}.mp-card__links a{flex:1;text-align:center;padding:8px 10px;border-radius:24px;border:1px solid var(--ink-2);font-size:.78rem;color:var(--ink-2);text-decoration:none;transition:all .2s}.mp-card__links a:first-child{background:var(--gold);border-color:var(--gold);color:#fff}.mp-card__links a:hover{opacity:.85}.leaflet-container .mp-card__links a{color:inherit}.leaflet-container .mp-card__links a:first-child{color:#fff}@media(max-width:760px){.mp-wrap{height:calc(100svh - 110px);min-height:max(70vh,560px)}.mp-top{flex-direction:column-reverse;gap:8px;top:10px;left:10px;right:10px}.mp-search{flex:none;width:100%}.mp-chips{border-radius:30px;width:100%}.mp-chip__label{font-size:.76rem}.mp-needs{top:118px;left:10px;right:10px}.needs__label{display:none}.mp-count{margin-left:10px}.mp-areas{padding:2px 10px 4px}.mp-regions{padding:0 10px 14px}.mp-reg{flex-basis:92px;height:46px}.mp-reg span{font-size:.72rem;bottom:4px}.mp-area{flex-basis:96px;height:64px}.mp-area span{font-size:.7rem}}
