/* First-party map rendering styles. Map interactions don't need externally hosted libraries. */
.ns-native-map{overflow:hidden;position:relative;touch-action:none;user-select:none;cursor:grab;background:#e7ece7;background-image:linear-gradient(90deg,#d5ddd644 1px,transparent 1px),linear-gradient(#d5ddd644 1px,transparent 1px);background-size:64px 64px}
.ns-native-map:active{cursor:grabbing}
.ns-tiles,.ns-pins{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.ns-tile{position:absolute;top:0;left:0;width:256px;height:256px;max-width:none;object-fit:cover;user-select:none;pointer-events:none;will-change:transform}
.ns-tile-failed{opacity:0}
.ns-marker{position:absolute;top:0;left:0;background:none;border:0;padding:0;margin:0;white-space:nowrap;cursor:pointer;pointer-events:auto;will-change:transform}
.ns-marker:focus-visible{outline:3px solid #86b5a7;outline-offset:5px;border-radius:10px}
.ns-zoom{position:absolute;bottom:73px;right:16px;display:flex;flex-direction:column;z-index:290;box-shadow:0 4px 14px #213d352a;overflow:hidden;border-radius:10px;background:white;border:1px solid #d8e2dd}
.ns-zoom button{width:38px;height:38px;display:grid;place-items:center;background:white;border:0;cursor:pointer;color:#26443e;font-size:23px;font-weight:500}
.ns-zoom button+button{border-top:1px solid #e3ebe6}.ns-zoom button:hover{background:#f2f8f4}
.ns-map-label{position:absolute;bottom:0;right:0;z-index:280;padding:3px 8px;background:#fffffff0;color:#56635b;font-size:10px}.ns-map-label a{color:#315d54}
.ns-map-warning{position:absolute;bottom:48px;left:18px;max-width:min(410px,calc(100% - 42px));z-index:290;padding:11px 13px;background:#fff;border:1px solid #ebd1ba;border-radius:10px;box-shadow:0 5px 15px #132d291c;color:#574636;font-size:12px;line-height:1.55}
.ns-map-warning[hidden]{display:none}.ns-map-warning button{border:0;background:none;text-decoration:underline;color:#276758;cursor:pointer;font-weight:800;padding:0 0 0 5px}
