/* Mobile presentation: one tool sheet at a time; original controls and handlers are reused. */
.mobile-sheet-head,.explore-mobile-dock,.mobile-flight-guide{display:none}
#view4DBtn{width:auto;flex:0 0 auto;min-width:106px;padding:0 10px;line-height:1.4}
/* Desktop: the same tools are grouped in a quiet side rail, leaving the map open. */
@media(min-width:901px){
  #map4DPanel.desktop-explore .explore-mobile-dock{display:flex;position:absolute;top:88px;right:16px;z-index:8;width:82px;flex-direction:column;gap:6px;padding:8px;background:#102e3bf2;border:1px solid #ffffff30;border-radius:16px;box-shadow:0 12px 30px #0004}
  #map4DPanel.desktop-explore .explore-mobile-dock button{display:flex;min-height:62px;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:5px 3px;border:1px solid transparent;border-radius:10px;background:#214653;color:#d6eceb;font-size:12px;line-height:1.35}
  #map4DPanel.desktop-explore .explore-mobile-dock button span:first-child{font-size:21px}
  #map4DPanel.desktop-explore .explore-mobile-dock button[aria-expanded=true]{background:#a4e9c9;color:#103e2d;font-weight:800}
  #map4DPanel.desktop-explore .four-controls{display:block;top:88px;right:112px;width:340px;max-height:calc(100% - 300px);transition:opacity .18s,transform .18s;transform-origin:top right}
  #map4DPanel.desktop-explore .four-controls>.mobile-node-hidden{display:none!important}
  #map4DPanel.desktop-explore:not(.mobile-sheet-open) .four-controls{display:none}
  #map4DPanel.desktop-explore .mobile-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 0 10px;margin-bottom:8px;border-bottom:1px solid #ffffff25}
  #map4DPanel.desktop-explore .mobile-sheet-head b{font-size:16px}
  #map4DPanel.desktop-explore .mobile-sheet-head button{min-height:38px;padding:5px 9px;background:#a4e9c9;color:#123c2f;font-weight:700}
  #map4DPanel.desktop-explore .four-controls label{grid-template-columns:90px 1fr 42px}
  #map4DPanel.desktop-explore .four-footer{position:relative}
  #map4DPanel.desktop-explore .country-badge{right:112px;bottom:24px;max-width:320px}
  #map4DPanel.desktop-explore .pilot-hud{inset:88px 112px 116px 20px}
  #map4DPanel.desktop-explore .mobile-flight-guide{left:112px;right:112px;top:88px}
  #map4DPanel.desktop-explore .mobile-flight-guide:not([hidden]){display:flex;position:absolute;z-index:9;align-items:center;justify-content:space-between;gap:8px;padding:6px 10px;background:#12333ff0;border:1px solid #a4e9c966;border-radius:10px;font-size:13px}
  #map4DPanel.desktop-explore.mobile-sheet-open .mobile-flight-guide{display:none!important}
  #map4DPanel.desktop-explore.mobile-sheet-open .country-badge{display:none}
  #map4DPanel.desktop-explore .four-header{min-height:48px;padding:6px 14px}
  #map4DPanel.desktop-explore .four-header b{font-size:17px}
  #map4DPanel.desktop-explore .four-header span{font-size:12px}
  #map4DPanel.desktop-explore .four-footer{padding:3px 14px 5px}
  #map4DPanel.desktop-explore .four-status{min-height:28px;font-size:12px}
  #map4DPanel.desktop-explore .four-time{gap:6px;font-size:12px}
  #map4DPanel.desktop-explore #fourTimeRange{height:16px;margin:2px auto}
  #map4DPanel.desktop-explore .four-meta{display:none}
  #map4DPanel.desktop-explore .pilot-button-pad{display:flex}
}

/* Keep the scene clean: attribution remains available through the map's legal info, not over the image. */
#map4DPanel .cesium-widget-credits,#map4DPanel .cesium-viewer-bottom{display:none!important}
.map-attribution{display:none!important}
#map4DPanel.is-drone{grid-template-rows:0 minmax(0,1fr) 0}
#map4DPanel.is-drone .four-header,#map4DPanel.is-drone .four-footer,#map4DPanel.is-drone .four-controls,#map4DPanel.is-drone .explore-mobile-dock{display:none!important}
#map4DPanel.is-drone .four-header{height:0;padding:0;border:0;overflow:hidden}
#map4DPanel.is-drone .pilot-hud{inset:16px 16px 16px}
.pilot-button-pad{display:none;position:absolute;left:50%;right:auto;bottom:14px;transform:translateX(-50%);gap:14px;direction:ltr;pointer-events:auto;z-index:6}
.pilot-pad-group{display:flex;flex-direction:column;align-items:center;gap:3px;background:#102e3bd9;border:1px solid #a4e9c955;border-radius:12px;padding:5px}
.pilot-pad-group b{font-size:11px;color:#bfe6d7;direction:rtl}
.pilot-pad-grid{display:grid;grid-template-columns:repeat(3,34px);grid-template-rows:repeat(3,34px);gap:2px}
.pilot-pad-grid button,.pilot-pad-grid i{width:34px;height:34px;min-height:34px;padding:0!important;display:grid;place-items:center;font-size:15px;font-style:normal}
.pilot-pad-grid i{display:block}.pilot-pad-grid button.is-held{background:#a4e9c9;color:#103e2d;transform:scale(.94)}
.pilot-pad-grid button:focus-visible,.pilot-pad-grid button:hover{background:#2d6870}
.pilot-record{position:absolute;left:16px;bottom:14px;display:flex;align-items:center;gap:8px;padding:6px 8px;background:#102e3bd9;border:1px solid #a4e9c955;border-radius:12px;pointer-events:auto;direction:rtl}
.pilot-record button{min-height:40px!important;background:#b52f3b!important;color:#fff!important;font-weight:800!important;border-color:#e86b72!important}
.pilot-record button.is-recording{background:#d51f2d!important;box-shadow:0 0 0 3px #ff687055;animation:pno-record-pulse 1.1s infinite}
.pilot-record output{font-size:12px;color:#d6eeea;white-space:nowrap}
.pilot-sticks{z-index:4;direction:ltr}
@keyframes pno-record-pulse{50%{filter:brightness(1.3)}}
.country-search-hint{font-size:12px;color:#c8e5e1;margin:0 0 8px}
.country-search-form{display:flex!important;gap:6px!important;align-items:stretch!important;margin:0 0 8px!important}
.country-search-form input{flex:1;min-width:0;color:#fff;background:#173642;border:1px solid #ffffff55;border-radius:8px;padding:8px;font:inherit}
.country-search-form button{min-width:74px}
.country-search-results{display:grid;gap:4px;margin-bottom:8px;max-height:150px;overflow:auto}
#map4DPanel .four-status button,#map4DPanel .four-time button{transition:background .18s,transform .18s,opacity .18s}
#map4DPanel .four-status button:active,#map4DPanel .four-time button:active,#map4DPanel .four-row button:active{transform:translateY(1px)}
#map4DPanel .four-controls input[type=range]{cursor:pointer}
#map4DPanel .four-controls .mode-text{min-height:42px;padding:7px 9px;border-inline-start:3px solid #a4e9c9;background:#ffffff0d;border-radius:8px}
#map4DPanel .four-footer{backdrop-filter:blur(8px)}
.four-header-actions{display:flex;align-items:center;gap:8px}
#map4DPanel.presentation-mode{grid-template-rows:1fr!important;background:#000}
#map4DPanel.presentation-mode .four-header,#map4DPanel.presentation-mode .four-footer,#map4DPanel.presentation-mode .four-controls,#map4DPanel.presentation-mode .explore-mobile-dock,#map4DPanel.presentation-mode .pilot-hud,#map4DPanel.presentation-mode #fourWalkHud,#map4DPanel.presentation-mode .country-badge,#map4DPanel.presentation-mode .mobile-flight-guide{display:none!important}
#map4DPanel.presentation-mode #fourCanvas{grid-row:1!important;min-height:100dvh;height:100dvh}
@media(max-width:900px){.pilot-button-pad{display:none!important}}
@media(max-width:900px){.pilot-record{left:50%;bottom:102px;transform:translateX(-50%);z-index:3}}
@media(max-width:900px){
  #map4DPanel.mobile-explore{--mobile-dock-height:76px;--mobile-header-height:60px;box-sizing:border-box;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}
  #map4DPanel.mobile-explore *{box-sizing:border-box}
  #map4DPanel.mobile-explore button,#map4DPanel.mobile-explore select,#map4DPanel.mobile-explore summary{min-height:44px;touch-action:manipulation}
  #map4DPanel.mobile-explore input:not([type=checkbox]),#map4DPanel.mobile-explore select{font-size:16px!important}
  #map4DPanel.mobile-explore .four-header{min-height:58px;padding:6px max(10px,env(safe-area-inset-right)) 6px max(10px,env(safe-area-inset-left));padding-top:max(6px,env(safe-area-inset-top));gap:8px}
  #map4DPanel.mobile-explore .four-header b{font-size:17px}
  #map4DPanel.mobile-explore .four-header span{display:none}
  #map4DPanel.mobile-explore #fourClose{font-size:13px;min-width:98px;white-space:nowrap}
  #map4DPanel.mobile-explore #fourCanvas{grid-row:2;min-height:0}
  #map4DPanel.mobile-explore .explore-mobile-dock{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-row:3;position:relative;z-index:12;padding:5px max(6px,env(safe-area-inset-right)) max(5px,env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left));background:#102e3b;border-top:1px solid #a4e9c94d;gap:4px}
  #map4DPanel.mobile-explore .explore-mobile-dock button{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:0;min-height:56px;padding:3px;border-color:transparent;background:transparent;font-size:12px;color:#d2e6e8;line-height:1.5}
  #map4DPanel.mobile-explore .explore-mobile-dock button span:first-child{font-size:21px}
  #map4DPanel.mobile-explore .explore-mobile-dock button[aria-expanded=true]{background:#a4e9c9;color:#103e2d;font-weight:700}
  #map4DPanel.mobile-explore .four-controls{display:none;position:absolute;inset:auto 0 var(--mobile-dock-height) 0;width:100%;max-height:min(62dvh,calc(100% - var(--mobile-header-height) - var(--mobile-dock-height) - 38px));margin:0;padding:0 12px 16px;background:#12333ffb;border-radius:20px 20px 0 0;border:1px solid #89cdbf66;z-index:10;overflow:auto;overscroll-behavior:contain;box-shadow:0 -10px 28px #0005;scroll-padding-top:68px}
  #map4DPanel.mobile-explore .four-controls>.mobile-node-hidden{display:none!important}
  #map4DPanel.mobile-explore.mobile-sheet-open .four-controls{display:block}
  #map4DPanel.mobile-explore .mobile-sheet-head{display:flex;position:sticky;top:0;align-items:center;justify-content:space-between;gap:10px;background:#12333f;border-bottom:1px solid #ffffff30;padding:8px 0;z-index:2;margin-bottom:12px}
  #map4DPanel.mobile-explore .mobile-sheet-head b{font-size:16px}
  #map4DPanel.mobile-explore .mobile-sheet-head button{font-size:13px;background:#a4e9c9;color:#123c2f;font-weight:700;padding:6px 10px}
  #map4DPanel.mobile-explore .four-controls label{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:12px;font-size:14px}
  #map4DPanel.mobile-explore .four-controls label input:not([type=checkbox]),#map4DPanel.mobile-explore .four-controls label select{max-width:100%;width:100%;min-height:44px;border-radius:9px;padding:6px;background:#204653;color:#fff;border:1px solid #bedfd655}
  #map4DPanel.mobile-explore .four-controls input[type=range]{padding:0!important;accent-color:#a4e9c9}
  #map4DPanel.mobile-explore .four-controls input[type=checkbox]{width:24px;height:24px}
  #map4DPanel.mobile-explore .four-controls output{width:auto;min-width:40px}
  #map4DPanel.mobile-explore .four-controls .four-row{display:flex;flex-wrap:wrap;gap:8px}
  #map4DPanel.mobile-explore .four-controls .four-row button{flex:1 1 95px;min-height:46px;padding:8px!important;font-size:14px;line-height:1.5}
  #map4DPanel.mobile-explore .country-explore,#map4DPanel.mobile-explore .pilot-box,#map4DPanel.mobile-explore .flight-route{border:0;background:none;box-shadow:none;padding:0;margin:0}
  #map4DPanel.mobile-explore .pilot-box>summary,#map4DPanel.mobile-explore .flight-route>summary{display:none}
  #map4DPanel.mobile-explore summary{display:flex;align-items:center;font-size:15px!important;padding:8px 0;color:#a4e9c9}
  #map4DPanel.mobile-explore .country-places button{font-size:14px!important;min-height:48px;white-space:normal}
  #map4DPanel.mobile-explore .four-footer{display:block;position:static;padding:0;border:0;background:transparent}
  #map4DPanel.mobile-explore .four-time{flex-wrap:wrap;gap:8px}
  #map4DPanel.mobile-explore .four-time label{flex:1 0 100%}
  #map4DPanel.mobile-explore #fourPlay{flex:1}
  #map4DPanel.mobile-explore .four-status{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
  #map4DPanel.mobile-explore .four-status button{max-width:none;font-size:14px!important;min-height:44px}
  #map4DPanel.mobile-explore .four-meta{display:grid;font-size:12px;gap:6px;margin-top:12px}
  #map4DPanel.mobile-explore #fourTimeRange{height:44px}
  #map4DPanel.mobile-explore #fourWalkHud{inset:calc(var(--mobile-header-height) + 5px) 8px auto;padding:0;z-index:4}
  #map4DPanel.mobile-explore .walk-hud-head{padding:5px 8px;width:auto;max-width:100%;font-size:12px}
  #map4DPanel.mobile-explore .walk-hud-head b{display:none}
  #map4DPanel.mobile-explore .walk-hud-head span{font-size:11px;max-width:180px}
  #map4DPanel.mobile-explore .walk-help,#map4DPanel.mobile-explore .walk-touch{display:none!important}
  #map4DPanel.mobile-explore .country-badge{left:8px;right:auto;bottom:calc(var(--mobile-dock-height) + 35px);max-width:min(270px,calc(100% - 16px));font-size:13px;padding:4px 8px;max-height:32dvh;overflow:auto}
  #map4DPanel.mobile-explore .country-badge button{font-size:13px!important;min-height:44px!important}
  #map4DPanel.mobile-explore.mobile-sheet-open .country-badge,#map4DPanel.mobile-explore.mobile-interacting .country-badge,#map4DPanel.mobile-explore.mobile-piloting .country-badge{display:none}
  #map4DPanel.mobile-explore .pilot-hud{inset:calc(var(--mobile-header-height) + 5px) 0 calc(var(--mobile-dock-height) + 38px);z-index:5}
  #map4DPanel.mobile-explore .pilot-readout{left:8px;right:8px;top:0;max-width:none;font-size:12px;line-height:1.5;padding:6px 8px}
  #map4DPanel.mobile-explore .pilot-mini{left:8px;top:56px;width:112px;height:77px}
  #map4DPanel.mobile-explore .pilot-sticks{bottom:0;left:max(14px,env(safe-area-inset-left));right:max(14px,env(safe-area-inset-right))}
  #map4DPanel.mobile-explore .pilot-sticks [data-stick]{width:86px;height:86px;box-shadow:0 2px 8px #0004}
  #map4DPanel.mobile-explore .pilot-sticks span{font-size:12px}
  #map4DPanel.mobile-explore .pilot-lift{bottom:110px;left:50%;display:flex;gap:8px;white-space:nowrap}
  #map4DPanel.mobile-explore .pilot-lift button{min-height:44px;min-width:58px;padding:6px!important;font-size:13px!important}
  #map4DPanel.mobile-explore .mobile-flight-guide{display:flex;position:absolute;left:8px;right:8px;top:calc(var(--mobile-header-height) + 7px);z-index:6;align-items:center;justify-content:space-between;gap:6px;background:#12333ff0;border:1px solid #a4e9c966;border-radius:10px;padding:4px 7px;font-size:12px}
  #map4DPanel.mobile-explore .mobile-flight-guide button{min-width:55px;background:#763d39}
  #map4DPanel.mobile-explore.mobile-piloting .mobile-flight-guide{display:none}
  #map4DPanel.mobile-explore.mobile-sheet-open .pilot-hud,#map4DPanel.mobile-explore.mobile-sheet-open #fourWalkHud,#map4DPanel.mobile-explore.mobile-sheet-open .mobile-flight-guide{display:none}
  #map4DPanel.mobile-explore #fourStartup{inset:var(--mobile-header-height) 0 var(--mobile-dock-height);z-index:15}
  #map4DPanel.mobile-explore .cesium-widget-credits{max-height:32px;overflow:auto;font-size:10px;pointer-events:auto}
}
@media(max-width:900px) and (max-height:500px){
  #map4DPanel.mobile-explore .four-controls{left:auto;right:0;width:min(370px,52vw);max-height:calc(100% - var(--mobile-header-height) - var(--mobile-dock-height));border-radius:14px 0 0 0}
  #map4DPanel.mobile-explore .four-header{min-height:48px}
  #map4DPanel.mobile-explore .explore-mobile-dock button{min-height:44px;flex-direction:row;gap:6px}
  #map4DPanel.mobile-explore .pilot-mini{left:calc(50% - 48px);top:40px;width:96px;height:66px}
  #map4DPanel.mobile-explore .pilot-sticks [data-stick]{width:70px;height:70px}
  #map4DPanel.mobile-explore .pilot-lift{bottom:0}
  #map4DPanel.mobile-explore .country-badge{max-height:34vh}
}
/* Main 2D page: readable entry button and larger touch targets. */
@media(max-width:700px){
  .app-header{grid-template-columns:minmax(0,1fr) auto!important;gap:6px!important;padding:8px!important}
  .brand-copy b{font-size:12px!important}.brand-zone{gap:5px!important}.brand-zone .logo{display:none}
  .header-actions{gap:4px}.header-actions .header-btn{height:44px;min-width:44px}
  #view4DBtn{width:auto;flex-basis:auto;min-width:104px;font-size:13px;padding:0 8px}
  .sheet-close,.search-clear{min-width:44px;min-height:44px}
  .map-controls button{width:44px;height:44px}
  .quick-chip{min-height:44px}
  .quickbar{top:136px}.map-controls,.scene-badge{top:192px}
  .sheet{max-height:min(66dvh,calc(100dvh - 150px));bottom:calc(88px + var(--safe-bottom))}
  .sheet-title small{display:none}.sheet-open .scene-badge,.sheet-open .quickbar{visibility:hidden}
  .nav-btn{font-size:12px;min-height:54px}
  .scene-badge{max-width:calc(100% - 82px);padding:6px 9px}
  .search-results{max-height:45dvh}.form-grid{grid-template-columns:1fr}
}
@media(max-width:370px){.app-header .brand-copy b{max-width:110px}.scene-badge{max-width:200px}.quickbar{top:136px}}
@media(prefers-reduced-motion:reduce){.mobile-explore *{scroll-behavior:auto!important}}

/* v70: independent lanes for recording, pads, lift and joysticks. */
#map4DPanel .pilot-pad-grid button,#map4DPanel .pilot-lift button{touch-action:none;user-select:none}
#map4DPanel .pilot-record{left:12px;top:38px;bottom:auto;transform:none;max-width:calc(100% - 24px);flex-wrap:wrap}
#map4DPanel .pilot-mini{top:100px}
#map4DPanel.desktop-explore .pilot-button-pad{bottom:54px;gap:12px}
#map4DPanel.desktop-explore .pilot-lift{bottom:0;gap:8px}
#map4DPanel.desktop-explore .pilot-sticks{bottom:0}
#map4DPanel.desktop-explore .four-controls>.four-footer{position:static;padding:0;display:block}
#map4DPanel.desktop-explore .four-controls .four-time{flex-wrap:wrap}
#map4DPanel.desktop-explore.mobile-sheet-open .pilot-hud{visibility:hidden}
#map4DPanel .country-explore [data-e="results"] button{white-space:normal;overflow-wrap:anywhere;line-height:1.5;text-align:start}
@media(max-width:900px){
  #map4DPanel.mobile-explore .pilot-record{top:34px;bottom:auto;left:12px;transform:none;padding:4px 6px;gap:5px}
  #map4DPanel.mobile-explore .pilot-record output{font-size:10px}
  #map4DPanel.mobile-explore .pilot-lift{bottom:10px;gap:4px}
  #map4DPanel.mobile-explore .pilot-lift button{min-width:42px;min-height:40px;font-size:11px!important}
  #map4DPanel.mobile-explore .pilot-mini{top:94px;width:110px;height:75px}
}
@media(max-width:420px){
  #map4DPanel.mobile-explore .pilot-lift{bottom:112px}
}
@media(max-height:600px){
  #map4DPanel .pilot-mini{display:none}
  #map4DPanel .pilot-record output{display:none}
  #map4DPanel.desktop-explore .pilot-hud{top:62px;bottom:100px}
}
