/* R3.4.5: Google-Earth-inspired control dock, status bar and refreshed branding */
:root{
  --vg-soft-1:#eef7f1;
  --vg-soft-2:#dfeee5;
  --vg-soft-3:#cfe3d6;
  --vg-green-1:#0e6a43;
  --vg-green-2:#165b3a;
  --vg-green-3:#10492f;
  --vg-panel:#f7fbf8;
  --vg-shadow:0 10px 30px rgba(16,73,47,.12);
  --status-bar-h:42px;
}
body{background:linear-gradient(180deg,#f5fbf7 0%,#edf7f1 100%);color:var(--vg-green-3)}
.topbar{
  background:linear-gradient(90deg,#f9fcfa 0%, #eef7f2 48%, #e6f3ec 100%)!important;
  border-bottom:1px solid #b8d7c5!important;
  box-shadow:0 3px 14px rgba(16,73,47,.06);
}
.brand{gap:12px}
.brand-symbol{
  background:linear-gradient(145deg,#0f6e45,#1d7a51)!important;
  color:#fff!important;
  box-shadow:0 8px 16px rgba(15,110,69,.18);
}
.brand strong{color:#0f6d45!important;letter-spacing:-.02em}
.brand small{color:#2d6f50!important;letter-spacing:.03em!important}
.header-actions{gap:8px}
.header-actions button,.atlas-admin-entry{
  border-radius:12px!important;
  min-height:42px;
  font-weight:750;
  box-shadow:0 4px 10px rgba(16,73,47,.06);
}
.header-actions #languageBtn{
  min-width:66px!important;
  letter-spacing:.04em;
}
.header-actions #homeBtn{padding-inline:14px}
.workspace{height:calc(100dvh - var(--header) - var(--footer));background:linear-gradient(180deg,#f3faf5 0%,#edf6f0 100%)}
.side{background:rgba(255,255,255,.96)}
.layer-panel,.info-panel{background:linear-gradient(180deg,#f9fcfa 0%,#f5fbf7 100%)}
.panel-heading{background:linear-gradient(180deg,#eef7f1 0%,#e6f2eb 100%)!important}
.panel-heading h2{font-weight:800}
.mapwrap{background:#dce7df}
#map{filter:saturate(1.03)}
.atlas-map-search{
  border-radius:16px!important;
  overflow:hidden;
  background:rgba(255,255,255,.96);
  box-shadow:var(--vg-shadow);
}
.atlas-map-search>input{font-size:14px;padding-block:11px}
#desktopLayers{display:none!important}
.map-tools{
  top:18px;
  left:14px;
  border-radius:14px;
  overflow:hidden;
  box-shadow:var(--vg-shadow);
}
.map-tools button{
  background:rgba(255,255,255,.96);
  border-color:#c7ddd0;
  color:var(--vg-green-2);
}
.map-tools button:hover{background:#f4faf6}
.map-bottom-right{
  position:absolute;
  right:14px;
  bottom:calc(var(--status-bar-h) + 16px);
  z-index:620;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:10px;
}
.map-bottom-right .dock-btn,
.map-bottom-right select{
  background:rgba(255,255,255,.97);
  border:1px solid #bdd6c7;
  color:var(--vg-green-2);
  border-radius:14px;
  box-shadow:var(--vg-shadow);
  min-height:44px;
}
.map-bottom-right .dock-btn{
  display:flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  font-weight:800;
}
.map-bottom-right .dock-label{font-size:13px}
.map-bottom-right select{padding:10px 14px;font-weight:800;min-width:136px}
.ge-compass{
  position:relative;
  width:56px;
  height:56px;
  min-width:56px!important;
  border-radius:50%!important;
  border:1px solid #bfd5c8!important;
  background:radial-gradient(circle at 30% 28%,#ffffff 0%,#f5fbf7 62%,#ebf4ef 100%)!important;
  box-shadow:var(--vg-shadow)!important;
  display:grid!important;
  place-items:center;
  padding:0!important;
}
.ge-compass .north-letter{
  position:absolute;
  top:8px;
  left:50%;
  transform:translateX(-50%);
  font-weight:900;
  font-size:16px;
  color:var(--vg-green-2);
  letter-spacing:.02em;
}
.ge-compass .needle{
  position:absolute;
  left:50%;
  top:17px;
  transform:translateX(-50%);
  width:0;height:0;
  border-left:8px solid transparent;
  border-right:8px solid transparent;
  border-bottom:18px solid #c9483a;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.16));
}
.ge-compass::after{
  content:'';
  position:absolute;
  left:50%;top:50%;transform:translate(-50%,-4px);
  width:8px;height:8px;border-radius:50%;background:#fff;border:2px solid #d8e6de;
}
.map-top-right{display:none!important}
.map-bottom{
  position:absolute;
  left:0;right:0;bottom:0;
  z-index:610;
  height:var(--status-bar-h);
  max-width:none!important;
  border-radius:0;
  border:0;
  border-top:1px solid #b9d3c3;
  background:rgba(255,255,255,.96);
  box-shadow:0 -4px 16px rgba(16,73,47,.08);
  padding:0 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:nowrap;
  color:#184d34;
  font-size:12px;
}
.map-bottom .status-left,
.map-bottom .status-right{display:flex;align-items:center;gap:14px;min-width:0}
.map-bottom .status-left{flex:1;overflow:hidden}
#coordinates{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}
#statusScale,#statusZoom{font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}
#coordMode{
  min-width:74px;
  padding:6px 10px;
  border-radius:10px;
  border-color:#c1d8ca;
  font-size:11px;
  font-weight:800;
  background:#f3faf6;
}
.map-scale{right:14px;bottom:calc(var(--status-bar-h) + 14px)!important;z-index:605}
.leaflet-control-scale{
  margin:0!important;
  padding:8px 10px!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.96)!important;
  border:1px solid #c1d8ca!important;
  box-shadow:var(--vg-shadow)!important;
}
.leaflet-control-scale-line{
  min-width:92px!important;
  background:transparent!important;
  border:solid #16593a!important;
  border-width:0 2px 3px!important;
  color:#16593a!important;
  font-weight:800!important;
  line-height:17px!important;
  padding:0 6px!important;
}
footer{
  background:linear-gradient(90deg,#eff8f2 0%,#e7f3eb 100%)!important;
  color:#245d41!important;
  border-top:1px solid #bad4c6;
  font-weight:600;
}
.atlas-tile-status{bottom:calc(var(--status-bar-h) + 80px)!important}
@media(min-width:801px){
  .atlas-map-search{left:16px!important;top:16px!important;width:min(360px,calc(100vw - 520px))!important}
  body.atlas-layers-visible .atlas-map-search{left:calc(min(330px,37vw) + 16px)!important;width:min(360px,calc(100vw - min(330px,37vw) - 470px))!important}
}
@media(max-width:800px){
  :root{--status-bar-h:52px}
  .topbar{padding-inline:10px}
  .header-actions{gap:5px}
  .header-actions #languageBtn{min-width:58px!important}
  #settingsBtn{display:none}
  .map-top-right{display:none!important}
  #desktopLayers{display:inline-flex!important}
  .atlas-map-search{top:10px!important;left:10px!important;right:10px!important;width:auto!important}
  .map-tools{top:76px;left:10px}
  .map-bottom-right{right:10px;bottom:calc(var(--status-bar-h) + 12px)}
  .map-bottom-right select{min-width:118px;padding:8px 10px}
  .map-bottom-right .dock-btn{display:none}
  .ge-compass{width:50px;height:50px;min-width:50px!important}
  .map-bottom{height:auto;min-height:var(--status-bar-h);padding:8px 10px;align-items:flex-start;flex-direction:column;gap:6px}
  .map-bottom .status-left,.map-bottom .status-right{width:100%;justify-content:space-between}
  #coordinates{font-size:11px}
  .map-scale{bottom:calc(var(--status-bar-h) + 64px)!important;right:10px}
  .atlas-tile-status{bottom:calc(var(--status-bar-h) + 128px)!important}
}
