/* The caption geometry is identical with coordinates on/off. Existing map controls keep their size. */
.map-home-page #map-view .map-canvas{bottom:44px}
.map-home-page #map-view .map-caption,.map-fullscreen-dialog .map-coordinate-caption{height:44px;padding:0 8px;gap:12px}
.map-coordinate-tools{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) 44px 44px;align-items:center;column-gap:2px;flex:0 1 370px;min-width:260px;height:44px;color:var(--navy,#142032)}
.map-coordinate-button{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:44px;height:44px;min-width:44px;padding:0;border:0;border-radius:5px;background:transparent;color:inherit;cursor:pointer;touch-action:manipulation}
.map-coordinate-button svg{display:block;width:20px;height:20px;pointer-events:none}
.map-coordinate-button:hover{background:#f4f6f8}
.map-coordinate-button:focus-visible{outline:2px solid var(--navy,#142032);outline-offset:-3px;background:#f4f6f8}
.map-coordinate-button[aria-pressed="true"]{background:transparent}
.map-coordinate-button:disabled{cursor:default;opacity:.45}
.map-coordinate-prompt{grid-column:2/5;grid-row:1;font-size:11px;line-height:1.25;cursor:pointer}
.map-coordinate-value{grid-column:2;grid-row:1;min-width:0;line-height:1.15;font-variant-numeric:tabular-nums}
.map-coordinate-pair{display:flex;flex-wrap:wrap;column-gap:0;font:600 11.5px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace}
.map-coordinate-pair>span{white-space:pre}
.map-coordinate-tools>.map-coordinate-button:nth-of-type(2){grid-column:3;grid-row:1}
.map-coordinate-tools>.map-coordinate-button:nth-of-type(3){grid-column:4;grid-row:1}
.map-coordinate-tools>[hidden]{display:none!important}
.map-coordinate-status{position:absolute;bottom:calc(100% + 8px);left:4px;z-index:1100;max-width:min(270px,80vw);font-size:12px;line-height:1.4;background:#142032;color:white;border-radius:5px;padding:6px 10px;pointer-events:none}
.map-coordinate-status:empty{display:none}
.map-center-crosshair{position:absolute;z-index:650;top:50%;left:50%;width:28px;height:28px;transform:translate(-50%,-50%);pointer-events:none;user-select:none}
.map-center-crosshair[hidden]{display:none!important}
.map-center-crosshair svg{display:block;width:28px;height:28px;pointer-events:none}
.map-coordinate-copy-fallback{position:fixed;top:0;left:-9999px;font-size:16px}
@media(max-width:700px){
 .map-coordinate-tools{flex:1 1 auto;width:100%;min-width:0;grid-template-columns:44px minmax(0,1fr) 44px 44px}
}

.map-fullscreen-dialog.has-coordinate-caption>.map-canvas.leaflet-container{height:calc(100% - 44px - var(--map-source-footer-height,32px))!important}


.map-home-page #map-view .map-gate,.map-home-page #map-view .map-failure{bottom:44px}


/* Size this control to the measured canvas space, never to the page viewport. */
.map-home-page:not(.citizen-page) #map .map-category-control.is-direct{max-height:none;flex:none}
.map-home-page:not(.citizen-page) #map .map-category-control .map-category-palette{max-height:var(--map-category-room,180px);grid-auto-rows:40px;align-content:start;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;touch-action:pan-y;scroll-padding-block:2px;scrollbar-width:thin;scrollbar-color:var(--slate,#8894a5) transparent}
.map-home-page:not(.citizen-page) #map .map-category-control.is-scrollable,.map-home-page:not(.citizen-page) #map .map-category-control.is-scrollable .map-category-palette{width:48px}
.map-home-page:not(.citizen-page) #map .map-category-palette::-webkit-scrollbar{display:block;width:6px}
.map-home-page:not(.citizen-page) #map .map-category-palette::-webkit-scrollbar-thumb{background:var(--slate,#8894a5);border-radius:3px}
/* Compact, complete source note directly below the map, outside its canvas. */
.map-home-page #map-view>.map-bkg-footer,.map-fullscreen-dialog>.map-bkg-footer{margin:5px 0 0;padding:0;color:var(--muted,#58677d);font-family:inherit;line-height:1.5;font-size:11px;font-weight:400;overflow-wrap:anywhere}
.map-home-page .map-bkg-footer a{color:inherit;font-size:inherit;font-weight:inherit;text-decoration:underline}
.map-bkg-footer a:focus-visible{outline:2px solid var(--navy,#142032);outline-offset:1px}
.map-fullscreen-dialog.has-coordinate-caption>.map-coordinate-caption{bottom:var(--map-source-footer-height,32px)}
.map-fullscreen-dialog>.map-bkg-footer{position:absolute;bottom:0;left:0;right:0;margin:0;padding:3px 8px;background:white;box-sizing:border-box}
.map-home-page .header-menu[data-open="true"]>.header-menu-links:has(.map-menu-info){max-height:min(70dvh,640px);overflow-y:auto;overscroll-behavior:contain}
.map-menu-info{border-top:1px solid var(--border,#d6dce4);margin-top:4px;padding-top:4px}
.map-menu-info>summary{display:list-item;min-height:44px;align-content:center;cursor:pointer;font-size:14px;font-weight:500}
.map-menu-info>summary:focus-visible{outline:2px solid var(--navy,#142032);outline-offset:1px}
.map-menu-info>p{margin:6px 0 10px;font-size:12px;font-weight:400;line-height:1.5;overflow-wrap:anywhere}
.map-home-page .map-menu-info p a{display:inline;min-height:0;font-size:inherit;text-decoration:underline}
.map-home-page .map-menu-info .map-source-links{display:flex;flex-direction:column;gap:4px}
.map-home-page .map-menu-info .map-source-links>a{display:flex;align-items:center;min-height:36px}
