/* Readable map controls and compact presentation of the existing data. */
html:root[data-theme] body.regions-page #regionsMapPane :is(.map-guide-copy,.map-guide-note,.map-guide-scale,.map-guide-kicker,.rank-list-title,.rank-region-label,.worst-name,.worst-val,.worst-name small,.layer-group-summary,.pill,.leg-row,.mob-map-layer-kicker,.mob-layer-select-label,.mob-map-extreme-rank){font-size:.75rem!important;line-height:1.45!important;letter-spacing:normal!important}
html:root[data-theme] body.regions-page #regionsMapPane :is(.rank-toggle button,.map-reset-btn,.map-panel-toggle,.map-expand-btn,.rank-region-select){font-size:.75rem!important;min-height:36px;letter-spacing:normal!important}
html:root[data-theme] body.regions-page #regionsMapPane .map-guide{width:min(320px,calc(100% - 24px));padding:12px;max-height:calc(100% - 100px);overflow:auto}
html:root[data-theme] body.regions-page #regionsMapPane .map-guide-title{font-size:.85rem!important;line-height:1.4;letter-spacing:normal}
.map-layer-meta{font:400 .75rem/1.45 Inter,Arial,sans-serif;color:var(--regional-copy);margin-top:6px;overflow-wrap:anywhere}
.map-guide-details{margin-top:10px;border-top:1px solid var(--regional-border);padding-top:8px}
.map-guide-details summary{font:600 .75rem/1.5 Inter,Arial,sans-serif;cursor:pointer;color:var(--regional-heading);min-height:32px;align-content:center}
.map-guide-ranges{display:grid;gap:6px;padding:0;margin:12px 0;list-style:none;font:.75rem/1.5 Inter,Arial,sans-serif;color:var(--regional-copy)}
.map-guide-ranges li{display:flex;gap:9px;align-items:center}
.map-guide-ranges i{width:22px;height:16px;border:1px solid var(--regional-border);border-radius:3px;flex-shrink:0}
.map-missing-reasons,.map-reference-periods{font:.75rem/1.5 Inter,Arial,sans-serif;color:var(--regional-copy);margin-top:10px}
.map-missing-reasons ul{padding-left:18px;margin:5px 0}
.map-reference-periods:empty{display:none}
.map-panel-toggle,.map-expand-btn{font:600 .75rem/1.3 Inter,Arial,sans-serif;min-height:36px;border:1px solid var(--regional-border);border-radius:6px;background:var(--regional-panel-soft);color:var(--regional-heading);padding:6px 10px;cursor:pointer}
#mapRankToggle{width:100%;text-align:left}
#mapRankContents[hidden]{display:none!important}
#mapRankContents{margin-top:10px}
html:root[data-theme] body.regions-page #regionsMapPane .map-rank-panel{width:min(360px,calc(100% - 24px));max-height:42%;padding:10px}
.regional-map-expanded{overflow:hidden!important}
html:root[data-theme] body.regions-page #regionsMapPane .map-frame.is-expanded{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-width:none!important;min-height:0!important;z-index:10000!important;border-radius:0!important}
.map-frame.is-expanded #map{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important}
.map-frame.is-expanded .map-tools{margin-left:auto}
.regional-map-tooltip{display:grid;gap:4px;min-width:180px;max-width:290px;white-space:normal;font:400 .8rem/1.45 Inter,Arial,sans-serif}
.regional-map-tooltip b{font-weight:600}
html:root[data-theme] body.regions-page .leaflet-tooltip:has(.regional-map-tooltip){background:var(--regional-panel)!important;color:var(--regional-heading)!important;border-color:var(--regional-border)!important;box-shadow:0 3px 12px #0005}
.map-tools .map-hint{display:none}
.map-guide-scale{align-items:flex-start}
.map-guide-scale>*{max-width:49%;overflow-wrap:anywhere}
.map-guide-scale strong{text-align:right}
.map-guide-mobile{display:none}
:is(.map-panel-toggle,.map-expand-btn,.map-guide-details summary):focus-visible{outline:2px solid var(--regional-accent);outline-offset:3px}
@media(max-width:768px){
  html:root[data-theme] body.regions-page #regionsMapPane :is(.mob-map-layer-toggle,.mob-layer-category,.mob-layer-select,.mob-toggle-btn,.mob-rank-toggle button,.rank-region-select,.rank-region-button){min-height:44px!important;font-size:.75rem!important;letter-spacing:normal!important}
  .mob-map-layer-current{min-width:0}
  #mobMapLayerMeta{font-size:.75rem;white-space:normal}
  .map-expand-btn{display:none}
  .map-guide-mobile{display:block;margin:10px 12px;border:1px solid var(--regional-border);border-radius:8px;padding:12px;background:var(--regional-panel);color:var(--regional-heading);font:.8rem/1.5 Inter,Arial,sans-serif}
  .map-guide-mobile summary{min-height:44px;align-content:center;cursor:pointer;font-weight:600}
  .map-guide-mobile .map-guide{position:static!important;display:block!important;width:auto!important;max-height:none!important;box-shadow:none!important;border:0!important;padding:8px 0!important;background:transparent!important}
  .map-guide-mobile .map-guide-details{border-top:0}
  .map-wrap.mob-map-active .leaflet-control-zoom{margin-top:290px!important}
}

.regional-layer-search{min-width:0;margin:8px 0 12px;font:400 .75rem/1.5 Inter,Arial,sans-serif;color:var(--regional-copy)}
.regional-layer-search label{display:block;font-weight:600;color:var(--regional-heading);margin-bottom:5px}
.regional-layer-search-row{display:flex;gap:6px}
.regional-layer-search input{min-width:0;width:100%;min-height:38px;border:1px solid var(--regional-border);border-radius:6px;padding:8px;background:var(--regional-panel);color:var(--regional-heading);font:inherit}
.regional-layer-search button{min-height:38px;border:1px solid var(--regional-border);border-radius:6px;background:var(--regional-panel-soft);color:var(--regional-heading);padding:6px 9px;cursor:pointer;font:inherit}
.regional-layer-search p{margin:5px 0 0}
.regional-layer-search-results{display:grid;gap:6px;margin-top:8px;max-height:210px;overflow:auto}
.regional-layer-search-results button{text-align:left;white-space:normal}
#regionsMapPane :is(.regional-layer-search [hidden],.layer-group[hidden],.pill[hidden],.mob-layer-category-strip[hidden],.mob-layer-select-wrap[hidden],.regional-layer-search-results[hidden]){display:none!important}
:is(.regional-layer-search input,.regional-layer-search button,.map-view-share):focus-visible{outline:2px solid var(--regional-accent);outline-offset:3px}
.map-view-share-status{position:absolute;right:12px;top:52px;z-index:501;margin:0;padding:5px 8px;border-radius:5px;background:var(--regional-panel);color:var(--regional-heading);font:400 .75rem/1.5 Inter,Arial,sans-serif;max-width:calc(100% - 24px)}
.map-view-share-status:empty{display:none}
.map-view-share-link{position:absolute;right:12px;top:90px;z-index:502;width:min(420px,calc(100% - 24px));padding:8px;background:var(--regional-panel);color:var(--regional-heading);border:1px solid var(--regional-border);border-radius:5px;font-size:.8rem}
@media(max-width:768px){
  .regional-layer-search{grid-column:1/-1;margin:0 0 7px;width:100%}
  .regional-layer-search :is(input,button){min-height:44px}
  #regionsMapPane .map-view-share{min-height:36px;font-size:.7rem;padding:6px 8px}
  .map-wrap.mob-map-active .map-topbar{top:auto;bottom:12px;height:36px}
  .map-view-share-status{top:auto;bottom:58px}
  .map-view-share-link{top:auto;bottom:96px}
  .map-wrap.mob-map-active .leaflet-control-zoom{margin-top:365px!important}
}

/* Leave the hovered boundary and pointer unobscured on either side. */
.regional-hover-tooltip.leaflet-tooltip-right{margin-left:40px}
.regional-hover-tooltip.leaflet-tooltip-left{margin-left:-40px}
