.session-control{position:absolute;z-index:1000;left:8px;bottom:48px;display:flex;gap:4px}.session-control button{font:11px monospace;padding:8px;min-height:44px;background:#131719eb}.session-control i{display:inline-block;width:10px;height:10px;background:#ed4444;border-radius:50%;margin-right:7px}.session-control i.connected{background:#4de568}.session-panel{position:absolute;z-index:1100;left:8px;bottom:98px;width:320px;max-width:calc(100vw - 16px);max-height:calc(100dvh - 170px);overflow:auto;background:#17191bf5;border:1px solid #777;padding:14px}.session-panel[hidden],.session-control [hidden]{display:none}.session-panel h2{font-size:14px;letter-spacing:1px}.session-panel input,.session-panel textarea{display:block;width:100%;background:#292e32;border:1px solid #888;color:#fff;padding:10px;margin:8px 0;font:14px system-ui}.session-panel label{display:block;margin-top:12px}.session-panel button{margin:4px 4px 4px 0}.session-panel output{display:block;overflow-wrap:anywhere;user-select:all;color:#30d8dc;margin:10px 0;font:14px monospace}.placing-pin{cursor:crosshair!important}

.position-widget .session-control{position:static;display:block;margin-top:3px;border-top:1px solid #ffffff40}.session-control #sessionbutton{display:flex;align-items:center;gap:0;width:100%;padding:5px 0;min-height:30px;border:0;background:transparent;color:inherit;font:inherit;text-align:left}.session-control #sessionlabel{display:inline}.session-control i{width:8px;height:8px;flex-shrink:0}.session-panel{left:auto;right:8px;bottom:145px}

/* Shared field-menu styling for point-of-interest details. */
.leaflet-popup-content-wrapper{background:#17191bf5;color:#edf3e9;border:1px solid #777;border-radius:0;box-shadow:0 4px 12px #0008;padding:0}
.leaflet-popup-content{margin:0;width:260px!important;max-width:calc(100vw - 70px);font:14px/1.5 system-ui;overflow-wrap:anywhere}
.leaflet-popup-content strong{display:block;padding:13px 40px 12px 14px;border-bottom:1px solid #555;font-size:13px;font-weight:500;letter-spacing:.5px}
.leaflet-popup-content p{margin:0;padding:12px 14px;color:#c5ccc8;font-size:13px;line-height:1.6}
.leaflet-popup-content p+p{padding-top:0;color:#30d8dc;font:11px/1.5 monospace}
.leaflet-popup-content button{margin:0 14px 14px;padding:10px 12px;min-height:44px;background:#262d34;color:#fff;border:1px solid #78838c;border-radius:0;font:13px system-ui}
.leaflet-popup-content button:hover{background:#3e454c}
.leaflet-popup-content button:disabled{opacity:.5;cursor:default}
.leaflet-popup-tip{background:#17191b;border-right:1px solid #777;border-bottom:1px solid #777;box-shadow:none}
.leaflet-container a.leaflet-popup-close-button{top:0;right:0;width:40px;height:42px;display:grid;place-items:center;color:#ddd;background:transparent;font:24px/1 system-ui}
.leaflet-container a.leaflet-popup-close-button:hover{color:#ffff00;background:#ffffff12}
.leaflet-container a.leaflet-popup-close-button:focus-visible{outline:2px solid #ffff00;outline-offset:-3px}
