/* One stable map canvas. Controls and panels float above it at every viewport. */
body.explorer-editorial .workspace,
body.explorer-editorial.immersive .workspace,
body.explorer-editorial.has-destination .workspace,
body.explorer-editorial.immersive.has-destination .workspace {
  position:relative;display:block;grid-column:1/-1;grid-template-columns:none;
  height:clamp(580px,46vw,680px);min-height:0;padding:0;gap:0;
  overflow:hidden;background:radial-gradient(ellipse at 50% 42%,#edf0f3 0%,#e0e5eb 60%,#d6dde5 100%);border-radius:0;isolation:isolate;
}
body.explorer-editorial .map-shell{position:relative;width:100%;height:100%;min-width:0;min-height:0;border:0;border-radius:0;background:transparent}
body.explorer-editorial.explorer-mockup #worldMap{position:absolute;inset:70px 14px 50px;width:calc(100% - 28px);height:calc(100% - 120px);overflow:hidden;touch-action:pan-y}

.explorer-editorial .editorial-slides>button svg{display:block;width:20px;height:20px;margin:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.explorer-editorial .editorial-slides>button:hover{background:#17243bb3;border-color:#d3b777}
.explorer-editorial #editorialMapTopActions{position:absolute;top:16px;left:16px;z-index:32}
.explorer-editorial #expandExplorer{min-height:50px;padding:13px 19px;border:1px solid #b38a48;border-radius:12px;background:linear-gradient(135deg,#243651,#101b30);box-shadow:0 4px 14px #17243b24;color:#fff;font-size:13px;font-weight:650}
.explorer-editorial #expandExplorer:hover{background:#243651;border-color:#d3b777}
.explorer-editorial #expandExplorer svg{width:21px;height:21px;flex:none}
.explorer-editorial .editorial-map-top{position:absolute;top:16px;right:16px;z-index:31;display:flex;max-width:calc(100% - 250px);padding:4px;border:1px solid #e1e3e8;border-radius:13px;background:#ffffffed;box-shadow:0 3px 14px #17243b12}
.explorer-editorial .editorial-map-top .layers{display:flex;gap:4px;overflow:visible}
.explorer-editorial .editorial-map-top .layers button{flex:1 1 auto;min-height:40px;padding:10px 16px;border-color:transparent;border-radius:9px;background:transparent;gap:8px;font-size:12px}
.explorer-editorial .editorial-map-top .layers button.on{background:#17243b;border-color:#17243b;color:#fff;box-shadow:0 2px 6px #17243b12}
.explorer-editorial .editorial-map-top .layers [data-icon] svg{width:17px;height:17px}

.explorer-editorial #editorialMapRail{position:absolute;top:84px;left:16px;z-index:26;display:flex;flex-direction:column;align-items:center;gap:12px}
body.explorer-editorial #editorialMapRail .filter-dock>#mobileFilters,
.explorer-editorial #editorialMapRail #savedToggle{position:relative;display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-height:44px;margin:0;padding:0;border:1px solid #dde0e5;border-radius:10px;background:white;color:#17243b;box-shadow:0 3px 12px #101b300d}
.explorer-editorial #editorialMapRail #mobileFilters.on{background:#f5efe3;border-color:#b38a48}
.explorer-editorial #editorialMapRail #mobileFilters>span:not(#filterBadge),
.explorer-editorial #editorialMapRail .explorer-shell__compare-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.explorer-editorial #editorialMapRail :is(#mobileFilters,#savedToggle)>svg{width:20px;height:20px}
.explorer-editorial #editorialMapRail :is(#filterBadge,#savedCount){position:absolute;right:-5px;top:-5px;display:grid;place-items:center;min-width:20px;height:20px;padding:0 3px;border:2px solid #fff;border-radius:50%;background:#17243b;color:#fff;font-size:9px}
.explorer-editorial .map-controls{position:absolute;inset:auto 16px 16px auto;z-index:31;display:flex;flex-direction:column;padding:0;border:1px solid #dde0e5;border-radius:11px;background:#fff;box-shadow:0 3px 14px #17243b14;overflow:hidden}
.explorer-editorial .map-controls button{display:grid;place-items:center;width:44px;height:42px;min-height:42px;margin:0;padding:0;border:0;border-radius:0;line-height:1;font-size:25px;color:#17243b}
.explorer-editorial .map-controls button+button,.explorer-editorial .map-controls #homeMap{border-top:1px solid #e5e6ea}
.explorer-editorial .map-controls button:hover{background:#f5efe3;color:#17243b}
.explorer-editorial .map-controls #homeMap svg{width:17px;height:17px}
body.explorer-editorial.explorer-mockup .explorer-intro{position:absolute;inset:auto auto 43px 16px;width:auto;z-index:5;pointer-events:none}
.explorer-editorial .explorer-selection-key{position:absolute;inset:auto auto 87px 16px;z-index:5;color:#785b2f;background:#ffffffd9;border-color:#d5bf96;font-size:9px}
.explorer-editorial .legend{left:16px;right:80px;bottom:16px;z-index:5;justify-content:flex-start;max-width:none}
.explorer-editorial .federal-summary{top:80px;left:80px;right:80px;z-index:6}

/* Opening either panel never allocates space or changes the SVG rectangle. */
body.explorer-editorial .workspace>.sidebar{position:absolute;inset:80px auto auto 16px;z-index:36;display:flex;width:310px;max-width:calc(100% - 32px);height:calc(100% - 96px);max-height:none;padding:18px;border:1px solid #e1e3e8;border-radius:14px;background:#fff;color:#17243b;box-shadow:0 12px 38px #17243b24;transform:none;transition:none;overscroll-behavior:contain}
body.explorer-editorial .workspace>.sidebar[aria-hidden=true]{display:none}
.explorer-editorial .sidebar .filter-panel__head{position:sticky;top:-18px;z-index:3;padding:8px 0;background:#fff;box-shadow:0 -18px 0 #fff}
body.explorer-editorial .workspace>.inspector{position:absolute;inset:80px 76px auto auto;z-index:28;display:block;width:380px;min-width:0;max-width:calc(100% - 108px);height:auto;min-height:0;max-height:calc(100% - 96px);border:1px solid #e1e3e8;border-radius:15px;background:#fff;color:#17243b;box-shadow:0 12px 38px #17243b26;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#b7b0a6 #fff;transform:none;animation:none}
.explorer-editorial .filter-panel__backdrop{position:absolute;inset:0;z-index:34;background:#17243b26}
.explorer-editorial .inspector .inspector-tools{position:absolute;top:10px;right:11px}
.explorer-editorial .inspector .explorer-country-actions{position:sticky;bottom:0}

body.explorer-editorial.explorer-expanded .editorial-map-card{flex:1;min-height:0;grid-template-rows:minmax(0,1fr) auto}
body.explorer-editorial.explorer-expanded .workspace,
body.explorer-editorial.explorer-expanded.immersive.has-destination .workspace{height:100%;min-height:0}
body.explorer-editorial.explorer-expanded #worldMap{touch-action:none}

@media(max-width:900px){
 .explorer-editorial #explorerSelectionContext{min-height:3em}
 body.explorer-editorial .workspace,
 body.explorer-editorial.immersive .workspace,
 body.explorer-editorial.has-destination .workspace,
 body.explorer-editorial.immersive.has-destination .workspace{height:clamp(580px,76dvh,660px)}
 body.explorer-editorial.explorer-expanded .workspace,
 body.explorer-editorial.explorer-expanded.immersive.has-destination .workspace{height:100%;min-height:0}
 .explorer-editorial #editorialMapTopActions{top:12px;left:12px}
 .explorer-editorial #expandExplorer{min-height:48px;padding:11px 13px;font-size:12px;gap:8px}
 .explorer-editorial #editorialMapRail{top:14px;right:12px;left:auto;flex-direction:row;gap:9px}
 .explorer-editorial .editorial-map-top{top:72px;left:12px;right:12px;max-width:none;padding:3px}
 .explorer-editorial .editorial-map-top .layers{width:100%;gap:3px}
 .explorer-editorial .editorial-map-top .layers button{min-width:0;flex:1 1 0;padding:9px 5px;gap:6px;font-size:11px}
 .explorer-editorial .editorial-map-top .layers [data-icon] svg{width:15px;height:15px}
 body.explorer-editorial.explorer-mockup #worldMap{inset:124px 10px 76px;width:calc(100% - 20px);height:calc(100% - 200px)}
 body.explorer-editorial .workspace>.sidebar{inset:128px 12px auto;width:auto;max-width:none;height:calc(100% - 142px);padding:15px}
 .explorer-editorial .sidebar .filter-panel__head{top:-15px;box-shadow:0 -15px 0 #fff}
 body.explorer-editorial .workspace>.inspector{inset:128px 12px auto;width:auto;max-width:none;max-height:calc(100% - 198px);border-radius:13px}
 body.explorer-editorial.editorial-filter-active .inspector{visibility:hidden;pointer-events:none}
 .explorer-editorial .inspector .inspector-visual{height:104px}
 .explorer-editorial .inspector .inspector-body{padding:12px 13px}
 .explorer-editorial .map-controls{right:12px;bottom:12px;flex-direction:row}
 .explorer-editorial .map-controls button{width:42px;height:44px;min-height:44px}
 .explorer-editorial .map-controls button+button,.explorer-editorial .map-controls #homeMap{border-top:0;border-left:1px solid #e5e6ea}
 body.explorer-editorial.explorer-mockup .explorer-intro{left:12px;bottom:65px}
 .explorer-editorial .legend{left:12px;right:155px;bottom:12px;gap:5px 8px;font-size:8px;max-height:44px}
 .explorer-editorial .explorer-selection-key{left:12px;bottom:87px}
 .explorer-editorial .federal-summary{top:127px;left:12px;right:12px}
}
@media(max-width:380px){
 .explorer-editorial #expandExplorer{font-size:11px;padding-inline:10px;gap:6px}
 .explorer-editorial #editorialMapRail{gap:6px}
 .explorer-editorial .editorial-map-top .layers button{gap:4px;font-size:10px}
}

/* Lot 2026-10-03 — the interactive mobile map owns gestures while the finger is inside it. */
@media(max-width:900px){
  body.explorer-editorial.explorer-mockup #worldMap{touch-action:none!important;overscroll-behavior:contain;-webkit-user-select:none;user-select:none}
  body.explorer-editorial .map-shell{overscroll-behavior:contain}
}
