/* The card and its contour border stay fixed; Leaflet moves only inside this inset. */
.map-panel{background:#e6eadb}
.map-panel::before{content:"";position:absolute;inset:0;background:repeating-radial-gradient(ellipse at 76% 24%,transparent 0 17px,#90a17628 18px 19px,transparent 20px 36px);pointer-events:none;z-index:0}
.map-panel .map-canvas{position:absolute;inset:10px;width:auto;height:auto;border:1px solid #cfd9c0;border-radius:12px;overflow:hidden;background:#e5ead9;z-index:1;isolation:isolate;touch-action:none}
.map-panel .map-canvas::before{display:none}
.map-panel .map-top{top:16px;left:16px;right:16px;align-items:center}
.map-panel .map-label{min-height:30px;padding:5px 8px;border:1px solid #ced8c1b3;border-radius:8px;background:#edf2e3eb;color:#536b49;font-size:10px;box-shadow:0 1px 3px #3b53300a}
.map-panel .map-label i{width:4px;height:4px;background:#819466}
/* Keep a comfortable touch target around the smaller painted controls. */
.map-panel .map-layer{position:relative;isolation:isolate;min-height:44px;padding:0 9px;border:0;background:transparent;color:#536b49;font-size:10px;box-shadow:none}
.map-panel .map-layer::before{content:"";position:absolute;inset:6px 0;z-index:-1;border:1px solid #ccd7bbcc;border-radius:8px;background:#edf2e3ed;box-shadow:0 1px 3px #3b53300a}
.map-panel .map-layer svg{width:14px;height:14px;margin-right:4px}
.map-panel .map-actions{right:16px;bottom:19px;gap:2px}
.map-panel .map-actions button{display:grid;place-items:center;position:relative;isolation:isolate;width:44px;height:44px;padding:0;border:0;border-radius:12px;background:transparent;box-shadow:none;color:#5a704e}
.map-panel .map-actions button::before{content:"";position:absolute;inset:4px;z-index:-1;border:1px solid #ccd7bbcc;border-radius:9px;background:#edf2e3ed;box-shadow:0 1px 3px #3b53300a}
.map-panel .map-actions button svg{width:18px;height:18px}
.map-panel .map-actions button.active{color:#48613d;border-color:transparent}
.map-panel .map-actions button.active::before{background:#dde8ce;border-color:#a1b48b}
.map-panel .map-layer:hover::before,.map-panel .map-actions button:hover::before{background:#e2ebd5}
.map-panel .compass-n{right:32px;top:67px;color:#7c8e68}
.map-panel .compass-n::after{border-bottom-color:#8b9c77}
.map-panel .map-bottom-note{left:20px;bottom:16px;max-width:calc(100% - 91px);font-size:8px;white-space:nowrap}
.map-panel .leaflet-scene-pane,.map-panel .leaflet-scene-backdrop-pane{pointer-events:none}
.map-panel .leaflet-real-map-pane{pointer-events:none}
.map-panel .map-bottom-note{padding:5px 7px;border-radius:5px;background:#f7f7efee;color:#69795c;min-height:28px;z-index:420;pointer-events:auto}
.map-panel .map-bottom-note:empty{display:none}
.current-location-marker{display:flex;align-items:center;justify-content:center;background:none;border:0}
.current-location-dot{display:block;width:13px;height:13px;background:#b27b55;border:2px solid #faf6e9;border-radius:48% 52% 50% 49%;box-shadow:none}
.current-location-dot.is-last-position{background:#a2a48c}
@media(max-width:360px){.map-panel .map-top{gap:4px}.map-panel .map-label{font-size:9px;padding:5px 7px}.map-panel .map-layer{font-size:9px;padding:0 8px}.map-panel .map-bottom-note{left:18px}}
