/* DendroGeo GIS workspace · presentation-only layer.
 * No raster classification, bar sensitivity, data structures, or button colors change.
 * Scoped to the live map to preserve site-wide design tokens and themes. */
#v-map #surfaceEditorMenu{
  border-radius:12px;
  box-shadow:0 2px 12px color-mix(in srgb,var(--ink) 5%,transparent);
}
#v-map #surfaceMenuBar{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  align-items:center;
  width:100%;
  box-sizing:border-box;
  padding:6px;
}
#v-map #surfaceMenuBar>.dg-editor-menu>summary{
  border-radius:9px;
  min-height:42px;
  padding:8px 11px;
  font-size:.78rem;
  gap:8px;
}
#v-map #surfaceMenuBar>.dg-editor-menu[open]>.dg-editor-menu-body{
  max-height:min(73dvh,670px);
  overflow:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
}
#v-map #surfaceMenuBar .dg-editor-menu-body{
  width:min(420px,calc(100vw - 22px));
  padding:16px;
  line-height:1.5;
}
#v-map #surfaceMenuBar .dg-editor-panel-head{
  align-items:center;
  margin-bottom:12px;
}
#v-map #surfaceMenuBar .dg-editor-menu-body .dg-sens-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  margin:10px 0;
}
#v-map #surfaceMenuBar .dg-editor-menu-body .dg-sens-actions .dg-png-btn{
  width:100%;
  justify-content:center;
  text-align:center;
  white-space:normal;
  overflow-wrap:anywhere;
  min-height:43px;
}
#v-map #surfaceMenuBar .dg-editor-menu-body .dg-png-btn:focus-visible,
#v-map #surfaceMenuBar select:focus-visible,
#v-map #surfaceMenuBar input:focus-visible{
  outline:2px solid var(--green);
  outline-offset:2px;
}
#v-map #surfaceMenuBar .dg-editor-menu-body .dg-png-label{
  margin:10px 0 5px;
}
#v-map #surfaceMenuBar #parkGridTools .dg-png-head,
#v-map #surfaceMenuBar #parkLayerTools .dg-png-head,
#v-map #surfaceMenuBar #parkRasterExport .dg-png-head{
  display:none;
}
#v-map #surfaceMenuBar #parkGridTools .dg-png-fields{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
#v-map #surfaceMenuBar #parkGridTools .dg-png-fields>.dg-png-field:first-child{
  grid-column:1/-1;
}
#v-map #surfaceMenuBar #parkGridTools .dg-png-fields>.dg-png-field{
  min-width:0;
}
#v-map #surfaceMenuBar #parkGridTools .dg-png-select,
#v-map #surfaceMenuBar #parkGridTools .dg-png-input{
  min-height:44px;
}
#v-map #surfaceMenuBar #parkGridTools .dg-png-option{
  border-radius:9px;
}
#v-map #surfaceMenuBar #parkRasterExport{
  display:flex;
  flex-direction:column;
  gap:12px;
}
#v-map #surfaceMenuBar #parkRasterExport .dg-png-btn,
#v-map #surfaceMenuBar #parkGridTools #gridBuildBtn{
  justify-content:center;
  font-weight:700;
}
#v-map #surfaceMenuBar #parkLayerTools .dg-png-options{
  margin:0 0 8px;
}
#v-map #surfaceMenuBar .dg-ux-option-note{
  margin:8px 0;
  color:var(--mut);
  font-size:.73rem;
  line-height:1.6;
}
#v-map #surfaceMenuBar .dg-ux-export-section{
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid var(--line);
}
#v-map #surfaceMenuBar .dg-ux-export-section h4{
  font:700 .8rem/1.4 var(--f-ui);
  color:var(--ink);
  margin:0 0 6px;
}
#v-map #surfaceMenuBar .dg-ux-export-section .dg-png-field{
  margin:8px 0 0;
}
#v-map #surfaceMenuBar .dg-ux-export-section .dg-png-options{
  margin-top:9px;
}
#v-map #surfaceMenuBar .dg-ux-output-menu{
  margin-left:0;
}
#v-map #surfaceMenuBar>.dg-ux-output-menu>.dg-editor-menu-body{
  left:auto;
  right:auto;
}
#v-map #parkInfo{
  border:1px solid var(--line)!important;
  border-left:4px solid var(--green)!important;
  padding:14px;
  border-radius:12px;
  box-shadow:0 2px 9px color-mix(in srgb,var(--ink) 4%,transparent);
}
#v-map #parkInfo>div[style*="display:flex"]:first-child{
  margin-bottom:8px!important;
}
#v-map #parkInfo>div[style*="display:grid"]:nth-child(2){
  grid-template-columns:minmax(0,1fr)!important;
  gap:0!important;
}
#v-map #parkInfo #parkSurfaceAction{
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:12px;
}
#v-map #parkInfo #parkSurfaceAction .dg-png-head{
  flex:1 1 260px;
  margin:0;
}
#v-map #parkInfo #parkSurfaceAction .dg-png-head .dg-png-sub{
  line-height:1.4;
}
#v-map #parkInfo #parkSurfaceAction>button{
  flex:0 0 auto;
  min-height:44px;
  width:auto;
  padding-inline:18px;
}
#v-map #parkInfo #parkSurfaceAction>.dg-png-sub:last-child{
  flex-basis:100%;
  margin:0;
  max-width:86ch;
}
#v-map #liveAnalysis .card{
  border-radius:13px;
  border:1px solid var(--line);
  overflow:hidden;
  min-width:0;
}
#v-map #liveAnalysis .shead{
  flex-wrap:wrap;
  gap:8px;
}
#v-map #liveAnalysis .grid.g4{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
}
#v-map #liveAnalysis .grid.g4>.stat{
  min-width:0;
}
#v-map #liveAnalysis .dg-ux-species-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:12px;
}
#v-map #liveAnalysis .dg-ux-species-head>.lbl{margin:0!important}
#v-map #liveAnalysis .dg-ux-species-head .dg-png-btn{
  margin-left:auto;
  width:auto;
}
#v-map #liveAnalysis .dg-ux-species-row{
  border-radius:8px;
  padding:5px 8px;
  margin:0 0 5px!important;
}
#v-map #liveAnalysis .dg-ux-species-row:nth-child(even){
  background:color-mix(in srgb,var(--tint) 35%,transparent);
}
#v-map #liveAnalysis .dg-ux-species-row>div:first-child{
  gap:6px;
  align-items:start;
  min-width:0;
}
#v-map #liveAnalysis .dg-ux-species-row>div:first-child>span:first-child{
  min-width:0;
  overflow-wrap:anywhere;
}
@media (max-width:850px){
 #v-map #surfaceMenuBar>.dg-editor-menu>summary{padding:7px 9px}
 #v-map #liveAnalysis .grid.g4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
 #v-map #surfaceMenuBar{gap:4px;padding:5px}
 #v-map #surfaceMenuBar>.dg-editor-menu>summary{
   min-height:42px;
   padding:6px 8px;
   gap:5px;
   font-size:.69rem;
 }
 #v-map #surfaceMenuBar .dg-editor-menu-body{
   max-height:min(68dvh,570px);
   padding:12px;
 }
 #v-map #surfaceMenuBar #parkGridTools .dg-png-fields{
   grid-template-columns:minmax(0,1fr);
 }
 #v-map #surfaceMenuBar #parkGridTools .dg-png-fields>.dg-png-field:first-child{
   grid-column:auto;
 }
 #v-map #surfaceMenuBar .dg-editor-menu-body .dg-sens-actions{
   grid-template-columns:minmax(0,1fr);
 }
 #v-map #parkInfo{padding:10px}
 #v-map #parkInfo #parkSurfaceAction{flex-direction:column;align-items:stretch}
 #v-map #parkInfo #parkSurfaceAction>button{width:100%}
 #v-map #liveAnalysis .grid.g4{grid-template-columns:repeat(2,minmax(0,1fr))}
 #v-map #liveAnalysis .dg-ux-species-head .dg-png-btn{min-height:42px}
}
@media(prefers-reduced-motion:reduce){
 #v-map #surfaceMenuBar .dg-editor-menu>summary,
 #v-map #liveAnalysis .dg-ux-species-row{transition:none}
}

/* GIS WORKSPACE v2 · 2026-10-08. Presentation-only: uses existing theme tokens.
   QGIS/ArcGIS-inspired single pane; WCAG 2.2 reflow / touch-target sizing.
   No UI colors, surface raster classes, sliders or GIS classification are changed. */
#v-map,#v-map .card,#v-map #surfaceEditorMenu,#v-map #surfaceMapWorkspace,
#v-map #surfaceMenuBar,#v-map #liveAnalysis{min-width:0;max-width:100%;box-sizing:border-box}
#v-map #surfaceMenuBar>.dg-ux-output-menu{
  margin-left:0; /* Old "push to far right" caused the reported disorder. */
}
#v-map #surfaceMenuBar>.dg-ux-output-menu>.dg-editor-menu-body{
  right:auto; /* JS positions the shared panel inside the viewport. */
}
#v-map.surface-review-active #surfaceMenuBar #parkRasterExport{
  display:flex!important; /* report remains reachable even in analysis mode */
}
#v-map #surfaceMenuBar>.dg-editor-menu{
  max-width:100%;
  min-width:0;
}
#v-map #surfaceMenuBar>.dg-editor-menu>summary{
  display:flex;
  justify-content:flex-start;
  max-width:100%;
  box-sizing:border-box;
  white-space:normal;
  line-height:1.25;
  gap:7px;
}
#v-map #surfaceMenuBar>.dg-editor-menu>summary .dg-editor-menu-chevron{
  margin-left:auto;
}
#v-map #surfaceMenuBar .dg-editor-menu-body{
  box-sizing:border-box;
  max-width:calc(100vw - 20px);
  max-height:min(72dvh,670px);
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  word-break:normal;
  overflow-wrap:anywhere;
  background:var(--surface);
  color:var(--ink);
}
#v-map #surfaceMenuBar .dg-editor-menu-body .dg-editor-panel-head{
  margin-bottom:10px;
  min-width:0;
}
#v-map #surfaceMenuBar .dg-editor-menu-section,
#v-map #surfaceMenuBar .dg-png-card,
#v-map #surfaceMenuBar .dg-png-field,
#v-map #surfaceMenuBar .dg-png-copy{min-width:0;max-width:100%;box-sizing:border-box}
#v-map #surfaceMenuBar .dg-editor-menu-body input:not([type=checkbox]):not([type=range]),
#v-map #surfaceMenuBar .dg-editor-menu-body select,
#v-map #surfaceMenuBar .dg-editor-menu-body textarea{
  max-width:100%;min-width:0;box-sizing:border-box;min-height:44px;
}
#v-map #surfaceMenuBar .dg-editor-menu-body .dg-png-option{
  display:flex;gap:8px;align-items:center;
  box-sizing:border-box;max-width:100%;min-width:0;
  padding:10px;min-height:48px;
  border-radius:9px;
}
#v-map #surfaceMenuBar .dg-png-option .dg-png-copy{
  flex:1 1 auto;
  overflow-wrap:anywhere;
}
#v-map #surfaceMenuBar .dg-png-option input[type=checkbox]{
  width:auto;min-height:24px;flex:0 0 auto;
}
#v-map #surfaceMenuBar #parkRasterExport,
#v-map #surfaceMenuBar #parkGridTools,
#v-map #surfaceMenuBar #parkLayerTools{
  background:transparent;border:0;box-shadow:none;padding:0;margin:0;
  min-width:0;width:100%;max-width:100%;
}
#v-map #surfaceMenuBar .dg-ux-output-menu .dg-png-btn{
  min-height:44px;justify-content:center;text-align:center;
}
#v-map #surfaceMenuBar .dg-ux-export-section{
  border-top:1px solid var(--line);margin:12px 0 0;padding-top:12px;
}
#v-map #surfaceMenuBar .dg-ux-export-section h4{
  margin:0;font-family:var(--f-ui);font-size:.79rem;
  font-weight:700;letter-spacing:0;
}
#v-map #surfaceMenuBar .dg-ux-export-section .dg-png-field{
  margin:8px 0 0;
}
#v-map #surfaceMenuBar .dg-ux-tool-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
#v-map #surfaceMenuBar .dg-ux-tool-grid>.dg-png-btn{
  min-height:44px;min-width:0;
  width:100%;justify-content:center;text-align:center;
  white-space:normal;
}
#v-map #surfaceMenuBar .dg-ux-tool-grid>.dg-png-btn.is-active{
  border-color:var(--green);
  box-shadow:inset 0 0 0 1px var(--green);
}
#v-map #surfaceMenuBar .dg-ux-coordinate-row{
  display:grid;grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;gap:6px;
}
#v-map #surfaceMenuBar .dg-ux-coordinate-row .dg-png-input{
  min-width:0;margin:0;width:100%;
}
#v-map #surfaceMenuBar .dg-ux-coordinate-row .dg-png-btn{
  width:auto;min-height:44px;margin:0;
  justify-content:center;
}
#v-map #surfaceMenuBar .dg-ux-option-note{font-size:.74rem;line-height:1.55;margin:8px 0}
#v-map #surfaceMenuBar #parkGridTools .dg-png-fields{
  grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;
}
#v-map #surfaceMenuBar #parkGridTools .dg-png-fields>.dg-png-field:first-child{
  grid-column:1/-1;
}
#v-map #parkInfo{
  overflow-wrap:anywhere;
  max-width:100%;
  min-width:0;
}
#v-map #parkInfo>div[style*="display:grid"]{
  min-width:0;max-width:100%;
}
#v-map #parkInfo #parkSurfaceAction{
  width:100%;max-width:100%;min-width:0;box-sizing:border-box;
}
#v-map #parkInfo #parkSurfaceAction .dg-png-head{min-width:0}
#v-map #parkInfo #parkSurfaceAction .dg-png-badge{
  white-space:normal;max-width:100%;overflow-wrap:anywhere;
}
#v-map #landCoverReport,#v-map #lcSens{
  min-width:0;max-width:100%;box-sizing:border-box;
  overflow-wrap:anywhere;
}
#v-map #landCoverReport .dg-surface-stat{
  min-width:0;max-width:100%;
}
#v-map #landCoverReport .dg-surface-stat>b{
  text-align:right;white-space:normal;min-width:0;
}
#v-map #liveAnalysis .dg-ux-species-head{
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px;
}
#v-map #liveAnalysis .dg-ux-species-caption{
  margin-left:auto;font-size:.69rem;color:var(--mut);
  font-weight:500;letter-spacing:0;text-transform:none;
}
#v-map #liveAnalysis .dg-ux-species-head>.dg-png-btn{display:none}
#v-map #liveAnalysis .dg-ux-species-row{
  max-width:100%;min-width:0;overflow-wrap:anywhere;
}
#v-map #liveAnalysis .dg-ux-species-row>div{min-width:0;max-width:100%}
#v-map #liveAnalysis .dg-ux-species-row>div:first-child>span{
  overflow-wrap:anywhere;white-space:normal;
}
#v-map #liveAnalysis .grid.g4>.stat{overflow-wrap:anywhere}
#v-map #surfaceMapWorkspace,#v-map #map{min-width:0;max-width:100%}
#v-map #map .leaflet-control-attribution{font-size:10px;line-height:1.2;max-width:100%}
@media (max-width:1000px){
  #v-map #surfaceMenuBar{gap:5px}
  #v-map #surfaceMenuBar>.dg-editor-menu>summary{padding:8px;min-height:44px}
}
@media (max-width:700px){
  #v-map #surfaceEditorMenu{
    border-radius:12px;overflow:visible;
  }
  #v-map #surfaceMenuBar{
    display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
    align-items:stretch;gap:5px;padding:6px;
  }
  #v-map #surfaceMenuBar>.dg-editor-menu{
    width:100%;max-width:100%;min-width:0;position:static;
  }
  #v-map #surfaceMenuBar>.dg-editor-menu>summary{
    display:flex;flex-direction:column;align-items:center;
    justify-content:center;gap:4px;
    width:100%;min-width:0;min-height:60px;
    padding:6px 3px;text-align:center;
    border-radius:9px;font-size:.68rem;line-height:1.2;
    overflow-wrap:anywhere;
  }
  #v-map #surfaceMenuBar .dg-editor-menu-icon{
    width:21px;height:21px;flex:0 0 21px;
  }
  #v-map #surfaceMenuBar .dg-editor-menu-chevron{display:none}
  #v-map #surfaceMenuBar .dg-editor-menu-label{
    max-width:100%;white-space:normal;overflow-wrap:anywhere;
  }
  #v-map #surfaceMenuBar .dg-editor-menu-body{
    position:fixed;z-index:1200;
    width:calc(100vw - 20px);
    max-width:calc(100vw - 20px);
    max-height:60dvh;
    border-radius:12px;
    padding:12px;
    overflow-x:hidden;
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
  }
  #v-map .dg-editor-status{
    width:100%;min-width:0;
    font-size:.7rem;line-height:1.45;
  }
  #v-map #parkInfo #parkSurfaceAction{
    flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:8px;
  }
  #v-map #parkInfo #parkSurfaceAction>.dg-png-head{
    flex:0 1 auto;width:100%;
  }
  #v-map #parkInfo #parkSurfaceAction>.dg-png-btn{
    width:100%;min-height:44px;
  }
  #v-map #surfaceMenuBar #parkGridTools .dg-png-fields{
    grid-template-columns:minmax(0,1fr);
  }
  #v-map #surfaceMenuBar #parkGridTools .dg-png-fields>.dg-png-field:first-child{grid-column:auto}
  #v-map #liveAnalysis .card{padding:12px;max-width:100%}
  #v-map #liveAnalysis .grid.g4{grid-template-columns:repeat(2,minmax(0,1fr))}
  #v-map #lcSens .dg-sens-head{flex-wrap:wrap;gap:8px}
  #v-map #lcSens .dg-sens-head>.dg-png-btn{min-height:44px}
  #v-map #lcSens .dg-sens-row{grid-template-columns:82px minmax(0,1fr) 75px;gap:6px}
  #v-map #lcSens .dg-sens-row .dg-sens-label{font-size:.7rem}
  #v-map #lcSens .dg-sens-row .dg-sens-count{font-size:.69rem}
  #v-map #map.surface-review-map{max-width:100%;box-sizing:border-box}
  #v-map #surfaceMapTools{left:6px;top:68px}
  #v-map #surfaceMapTools .dg-editor-rail{padding:3px;gap:2px}
  #v-map #surfaceMapTools .dg-editor-tool{width:42px;height:42px}
  #v-map #surfaceMenuBar .dg-ux-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:360px){
  #v-map #surfaceMenuBar{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  #v-map #surfaceMenuBar>.dg-editor-menu>summary{
    font-size:.68rem;min-height:54px;
  }
  #v-map #lcSens .dg-sens-row{grid-template-columns:74px minmax(0,1fr) 66px;gap:4px}
  #v-map #lcSens .dg-sens-row .dg-sens-count{font-size:.65rem}
  #v-map #surfaceMenuBar .dg-ux-coordinate-row{
    grid-template-columns:minmax(0,1fr) auto;
  }
  #v-map #surfaceMenuBar .dg-ux-coordinate-row .dg-png-btn:last-child{
    grid-column:1/-1;width:100%;
  }
}
@media (prefers-reduced-motion:reduce){
  #v-map #surfaceMenuBar>.dg-editor-menu>summary{transition:none}
}

/* 2026-10-08 · Unified surface analysis and mobile output QA.
 * Display-only rules: no scientific values, palette or control semantics change. */
#v-map, #v-map #parkInfo, #v-map #landCoverReport,
#v-map #lcSens, #v-map #liveAnalysis{
  box-sizing:border-box;min-width:0;max-width:100%;
}
#v-map #parkInfo *, #v-map #lcSens *, #v-map #landCoverReport *,
#v-map #liveAnalysis *{box-sizing:border-box;min-width:0}
#v-map #parkInfo #parkSurfaceAction .dg-png-sub,
#v-map #parkInfo #parkSurfaceAction>.dg-png-sub:last-child,
#v-map #landCoverReport, #v-map #lcSens .dg-sens-hint{
  max-width:100%;width:auto;white-space:normal;
  overflow-wrap:anywhere;word-break:normal;line-height:1.55;
}
#v-map #parkInfo #parkSurfaceAction>.dg-png-sub:last-child{
  flex-basis:100%;min-width:0;max-width:100%;
}
#v-map #landCoverReport{
  border:1px solid var(--line);border-radius:12px;
  background:var(--surface);padding:15px;
}
#v-map #landCoverReport>b:first-child{
  display:block;margin:0 0 11px;
  font:700 .93rem/1.4 var(--f-ui);color:var(--ink);
}
#v-map #landCoverReport>.dg-surface-stat{
  display:grid;grid-template-columns:minmax(0,1fr) auto;
  align-items:center;gap:5px 12px;
  margin:0;padding:12px 8px;border-bottom:1px solid var(--line);
}
#v-map #landCoverReport>.dg-surface-stat:nth-of-type(even){
  background:color-mix(in srgb,var(--tint) 24%,transparent);
  border-radius:8px;
}
#v-map #landCoverReport>.dg-surface-stat>span{
  min-width:0;overflow-wrap:anywhere;font-size:.82rem;font-weight:650;
}
#v-map #landCoverReport>.dg-surface-stat>b{
  min-width:0;font-size:.79rem;white-space:normal;
  text-align:right;overflow-wrap:anywhere;
}
#v-map #landCoverReport>.dg-surface-stat>.dg-surface-track{
  grid-column:1/-1;width:100%;min-width:0;margin:2px 0 0;
}
#v-map.surface-review-active #landCoverReport>details.dg-sens-details{
  display:none!important; /* Raw summary is shown via the existing 'Ham analizi göster' button, not twice. */
}
#v-map #lcSens .dg-sens-actions{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;
  align-items:stretch;
}
#v-map #lcSens .dg-sens-actions>.dg-png-btn{
  width:100%;min-width:0;min-height:44px;
  text-align:center;justify-content:center;
  overflow-wrap:anywhere;white-space:normal;
}
#v-map #liveAnalysis .dg-ux-group-summary{
  display:flex!important;flex-wrap:wrap;gap:8px 13px;
  justify-content:flex-start!important;align-items:center;
}
#v-map #liveAnalysis .dg-ux-group-summary>span{
  white-space:normal;overflow-wrap:anywhere;flex:0 1 auto;
}
#v-map #liveAnalysis .dg-ux-species-row>div:first-child{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto;
  gap:8px;align-items:start;
}
#v-map #liveAnalysis .dg-ux-species-row>div:first-child>span:first-child{
  overflow-wrap:anywhere;line-height:1.4;
}
/* Toast messages must be the topmost visible region, including on iOS Safari. */
#toastWrap{
  z-index:2147483000!important;
  top:max(12px,env(safe-area-inset-top) + 12px)!important;
  right:max(10px,env(safe-area-inset-right) + 10px)!important;
  max-width:min(380px,calc(100vw - 20px))!important;
  width:max-content;box-sizing:border-box;
}
#toastWrap .toast{
  width:100%;max-width:100%;min-width:0;box-sizing:border-box;
  overflow-wrap:anywhere;white-space:normal;
}
@media(max-width:700px){
  #toastWrap{left:10px!important;right:10px!important;width:auto!important;max-width:calc(100vw - 20px)!important}
  #v-map #parkInfo #parkSurfaceAction .dg-png-sub,
  #v-map #parkInfo #parkSurfaceAction>.dg-png-sub:last-child{
    display:block;width:100%;min-width:0;max-width:100%;
    white-space:normal;overflow-wrap:anywhere;
  }
  #v-map #landCoverReport{padding:11px}
  #v-map #landCoverReport>.dg-surface-stat{
    grid-template-columns:minmax(0,1fr) auto;
    gap:5px 8px;padding:10px 5px;
  }
  #v-map #lcSens .dg-sens-actions{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  #v-map #lcSens .dg-sens-actions>.dg-png-btn:last-child{
    grid-column:1/-1;
  }
  #v-map #liveAnalysis .grid.g4{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  #v-map #liveAnalysis .shead{align-items:flex-start}
}
@media(max-width:360px){
  #v-map #lcSens .dg-sens-actions{grid-template-columns:minmax(0,1fr)}
  #v-map #lcSens .dg-sens-actions>.dg-png-btn:last-child{grid-column:auto}
  #v-map #landCoverReport>.dg-surface-stat{
    grid-template-columns:minmax(0,1fr);
  }
  #v-map #landCoverReport>.dg-surface-stat>b{text-align:left}
}

/* Oct 2026 mobile polish: output is single-source, engine/locked theme untouched. */
#v-map #parkInfo #parkSurfaceAction .dg-png-sub,
#v-map #parkInfo #parkSurfaceAction .dg-png-badge,
#v-map #landCoverReport,
#v-map #lcSens{
  min-width:0;
  overflow-wrap:anywhere;
  word-break:normal;
  hyphens:auto;
}
#v-map #landCoverReport .dg-surface-track{border-radius:8px;overflow:hidden}
#v-map #landCoverReport>.dg-surface-stat{min-width:0}
#v-map #lcSens #dgSensSummary{display:none} /* duplicate numbers under the result card */
#v-map #liveAnalysis .dg-ux-species-row{counter-increment:dg-species;position:relative}
#v-map #liveAnalysis .dg-ux-species-head{counter-reset:dg-species}
#v-map #liveAnalysis .dg-ux-species-row>div:first-child{align-items:center}
#v-map #liveAnalysis .dg-ux-species-row>div:first-child>span:last-child{
  white-space:nowrap;justify-self:end;font-variant-numeric:tabular-nums
}
#v-map #liveAnalysis .dg-ux-group-summary>span{
  display:inline-flex;gap:5px;align-items:baseline;min-height:32px
}
#v-map #liveAnalysis .grid.g4>.stat .val{overflow-wrap:anywhere}
#toastWrap{
  position:fixed!important;
  isolation:isolate;
  z-index:2147483646!important;
  max-height:min(65dvh,560px);
  overflow-y:auto;
  overscroll-behavior:contain;
}
#toastWrap .toast{background:var(--surface);box-shadow:var(--sh)}
@media(max-width:700px){
  /* Keep alerts at the top of the viewport; bottom toasts covered mobile controls. */
  #toastWrap{
    top:max(12px,env(safe-area-inset-top) + 12px)!important;
    bottom:auto!important;
    left:10px!important;right:10px!important;
    width:auto!important;
    max-height:min(38dvh,320px);
  }
  #v-map #parkInfo #parkSurfaceAction>.dg-png-btn{
    display:flex;width:100%;min-width:0;max-width:100%;
    white-space:normal;overflow-wrap:anywhere;line-height:1.35;
    text-align:center;
  }
  #v-map #parkInfo #parkSurfaceAction>.dg-png-head{
    display:grid;grid-template-columns:minmax(0,1fr);gap:6px;
    width:100%;min-width:0;max-width:100%;
  }
  #v-map #parkInfo #parkSurfaceAction .dg-png-badge{
    max-width:100%;white-space:normal;overflow-wrap:anywhere;
  }
  #v-map #parkInfo #parkSurfaceAction .dg-png-sub{font-size:.71rem;line-height:1.55}
  #v-map #parkInfo #parkSurfaceAction>.dg-png-sub:last-child{flex:0 1 auto}
  #v-map #liveAnalysis .dg-ux-species-row{padding:9px 7px}
  #v-map #liveAnalysis .dg-ux-group-summary{gap:4px 10px}
}
@media(max-width:380px){
  #v-map #landCoverReport>.dg-surface-stat{
    grid-template-columns:minmax(0,1fr);
    gap:4px;
  }
  #v-map #landCoverReport>.dg-surface-stat>b{text-align:left;justify-self:start}
  #v-map #liveAnalysis .dg-ux-species-row>div:first-child{
    grid-template-columns:minmax(0,1fr) auto;
    gap:4px;
  }
}

/* 2026-10-08 · Parity with ESA WorldCover result presentation ONLY.
   The raw source report remains unchanged. Reviewed area totals and the
   map's source palette are read, never modified. */
#v-map #landCoverReport>b:first-child{
  font:700 .82rem/1.6 var(--f-ui);
  margin:0 0 7px;
}
#v-map #landCoverReport .dg-ux-surface-rows{
  margin:6px 0 4px;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--bg);
}
#v-map #landCoverReport .dg-ux-surface-rows>.dg-surface-stat{
  display:grid;
  grid-template-columns:106px minmax(0,1fr) 132px;
  align-items:center;
  column-gap:8px;
  row-gap:0;
  min-width:0;
  margin:8px 0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
}
#v-map #landCoverReport .dg-ux-surface-rows>.dg-surface-stat>span{
  grid-column:1;
  grid-row:1;
  min-width:0;
  font:700 .75rem/1.45 var(--f-ui);
  white-space:normal;
  overflow-wrap:normal;
}
#v-map #landCoverReport .dg-ux-surface-rows>.dg-surface-stat>.dg-surface-track{
  grid-column:2;
  grid-row:1;
  width:100%;
  height:16px;
  min-width:0;
  margin:0;
  background:rgba(20,30,25,.06);
  overflow:hidden;
  border-radius:8px;
}
#v-map #landCoverReport .dg-ux-surface-rows>.dg-surface-stat>.dg-surface-track>i{
  display:block;
  height:100%;
  box-sizing:border-box;
  border:1px solid var(--dg-ux-surface-color,#94a3b8);
  border-radius:8px;
  background:color-mix(in srgb,var(--dg-ux-surface-color,#94a3b8) 40%,transparent)!important;
}
#v-map #landCoverReport .dg-ux-surface-rows>.dg-surface-stat>b{
  grid-column:3;
  grid-row:1;
  min-width:0;
  font:600 .75rem/1.45 var(--f-mono,ui-monospace,monospace);
  text-align:right;
  font-variant-numeric:tabular-nums;
  white-space:normal;
  overflow-wrap:normal;
}
#v-map #landCoverReport .dg-ux-surface-percentage{
  color:var(--mut);
  font-weight:400;
}
#v-map #landCoverReport>.dg-sens-hint{
  font-size:.67rem;
  line-height:1.6;
  margin-top:8px;
}
/* Native accent colors match the map's reviewed polygon palette. They also
   act as fallbacks before preview rows have loaded/been scanned. */
#v-map #lcSens input.dg-sens-slider#dgSensRange-green{
  accent-color:var(--dg-ux-slider-color,#22c55e);
}
#v-map #lcSens input.dg-sens-slider#dgSensRange-water{
  accent-color:var(--dg-ux-slider-color,#3b82f6);
}
#v-map #lcSens input.dg-sens-slider#dgSensRange-hard{
  accent-color:var(--dg-ux-slider-color,#64748b);
}
#v-map #lcSens input.dg-sens-slider#dgSensRange-bare{
  accent-color:var(--dg-ux-slider-color,#8b5a2b);
}
@media(max-width:700px){
  #v-map #landCoverReport .dg-ux-surface-rows{
    padding:9px 8px;
  }
  #v-map #landCoverReport .dg-ux-surface-rows>.dg-surface-stat{
    grid-template-columns:96px minmax(0,1fr) 122px;
    column-gap:6px;
  }
}
@media(max-width:380px){
  #v-map #landCoverReport .dg-ux-surface-rows>.dg-surface-stat{
    grid-template-columns:84px minmax(0,1fr) 110px;
    column-gap:5px;
  }
  #v-map #landCoverReport .dg-ux-surface-rows>.dg-surface-stat>span,
  #v-map #landCoverReport .dg-ux-surface-rows>.dg-surface-stat>b{
    font-size:.7rem;
  }
}
@media(max-width:330px){
  #v-map #landCoverReport .dg-ux-surface-rows>.dg-surface-stat{
    grid-template-columns:minmax(0,1fr) auto;
    row-gap:4px;
  }
  #v-map #landCoverReport .dg-ux-surface-rows>.dg-surface-stat>b{
    grid-column:2;
  }
  #v-map #landCoverReport .dg-ux-surface-rows>.dg-surface-stat>.dg-surface-track{
    grid-column:1/-1;
    grid-row:2;
  }
}

/* 2026-10-08 · Measurement + file-menu consolidation + mobile restoration.
   Existing button tokens, classes and GIS source colors remain unchanged. */
#v-map #surfaceMenuBar>.dg-editor-menu.dg-ux-output-menu{margin-left:0}
#v-map #surfaceMenuBar>.dg-editor-menu>summary{visibility:visible}
#v-map #surfaceMapTools:has(.dg-ux-ndvi-map-info){
  display:flex;align-items:flex-start;gap:7px;
}
#v-map #surfaceMapTools .dg-ux-ndvi-map-info{
  pointer-events:none;
  box-sizing:border-box;
  width:min(260px,calc(100vw - 96px));
  max-width:calc(100vw - 96px);
  padding:9px 11px;
  border:1px solid var(--line);
  border-radius:9px;
  background:var(--surface);
  color:var(--ink);
  box-shadow:0 3px 12px #18242020;
  font:600 .7rem/1.55 var(--f-ui);
  white-space:normal;
  overflow-wrap:anywhere;
}
#v-map #surfaceMenuBar #parkRasterExport button[hidden]{display:none!important}
@media(max-width:700px){
  #v-map #surfaceMenuBar{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    width:100%;
    max-width:100%;
    overflow:visible;
    grid-auto-flow:row;
    grid-auto-rows:minmax(60px,auto);
    justify-items:stretch;
  }
  #v-map #surfaceMenuBar>.dg-editor-menu{
    display:block;
    width:100%;
    min-width:0;
    min-height:60px;
    margin:0;
  }
  #v-map #surfaceMenuBar>.dg-editor-menu>summary{
    display:flex;
    min-height:60px;
    height:100%;
    overflow-wrap:anywhere;
    white-space:normal;
    text-align:center;
  }
}
@media(max-width:390px){
  #v-map #surfaceMenuBar{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* Visible, theme-consistent native controls: overrides UA black range tracks.
   Uses the existing map classes and never changes their scientific palette. */
#v-map #lcSens input.dg-sens-slider[id^="dgSensRange-"]{
  -webkit-appearance:none;
  appearance:none;
  background:transparent!important;
  cursor:pointer;
  height:44px;
}
#v-map #lcSens input.dg-sens-slider[id^="dgSensRange-"]::-webkit-slider-runnable-track{
  height:9px;
  border:1px solid var(--line);
  border-radius:999px;
  background:linear-gradient(to right,
    var(--dg-ux-slider-color,#22c55e) 0%,
    var(--dg-ux-slider-color,#22c55e) var(--dg-ux-slider-fill,50%),
    var(--surface) var(--dg-ux-slider-fill,50%),
    var(--surface) 100%);
}
#v-map #lcSens input.dg-sens-slider[id^="dgSensRange-"]::-webkit-slider-thumb{
  -webkit-appearance:none;
  appearance:none;
  width:21px;height:21px;
  margin-top:-7px;
  border:2px solid var(--surface);
  border-radius:50%;
  background:var(--dg-ux-slider-color,#22c55e);
  box-shadow:0 0 0 1px var(--line),0 2px 4px #0002;
}
#v-map #lcSens input.dg-sens-slider[id^="dgSensRange-"]::-moz-range-track{
  height:9px;
  border:1px solid var(--line);
  border-radius:999px;
  background:var(--surface);
}
#v-map #lcSens input.dg-sens-slider[id^="dgSensRange-"]::-moz-range-progress{
  height:9px;
  border-radius:999px;
  background:var(--dg-ux-slider-color,#22c55e);
}
#v-map #lcSens input.dg-sens-slider[id^="dgSensRange-"]::-moz-range-thumb{
  width:18px;height:18px;
  border:2px solid var(--surface);
  border-radius:50%;
  background:var(--dg-ux-slider-color,#22c55e);
  box-shadow:0 0 0 1px var(--line);
}
#v-map #lcSens input.dg-sens-slider:disabled{cursor:not-allowed;opacity:.6}

/* A single accessible disclosure for the original top-six species bars. */
#v-map #liveAnalysis details.dg-ux-species-collapse{
  margin-top:13px;
  padding:0;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--surface);
  overflow:hidden;
}
#v-map #liveAnalysis details.dg-ux-species-collapse>summary{
  display:flex;
  align-items:center;
  min-height:48px;
  padding:10px 12px;
  cursor:pointer;
  list-style:none;
}
#v-map #liveAnalysis details.dg-ux-species-collapse>summary::-webkit-details-marker{display:none}
/* Disclosure arrow is owned by ui-standard.css, like every other app section. */
#v-map #liveAnalysis details.dg-ux-species-collapse>summary:focus-visible{
  outline:2px solid var(--green);outline-offset:-2px;
}
#v-map #liveAnalysis .dg-ux-species-list{
  padding:5px 12px 10px;
  border-top:1px solid var(--line);
}

/* Distance labels sit midway between measured points (map-only, no raster edits). */
#v-map #map .leaflet-tooltip.dg-ux-distance-label{
  pointer-events:none!important;
  color:var(--ink);
  background:var(--surface);
  border:1px solid var(--green);
  border-radius:7px;
  box-shadow:0 2px 9px #18242033;
  padding:4px 8px;
  font:700 .78rem/1.35 var(--f-ui);
  white-space:nowrap;
  text-align:center;
  font-variant-numeric:tabular-nums;
}
#v-map #map .leaflet-tooltip.dg-ux-distance-label:before{
  display:none;
}
@media(max-width:700px){
  #v-map #map .leaflet-tooltip.dg-ux-distance-label{
    font-size:.74rem;
    padding:4px 7px;
  }
}

/* Reviewed surface drafts: the active map, button palette and scientific
   acceptance action remain unchanged. This is a separate account-save path. */
#v-map #lcSens .dg-ux-draft-save{
  margin:8px 0 10px;
  padding:10px 11px;
  border:1px solid var(--line);
  border-radius:9px;
  background:var(--surface);
}
#v-map #lcSens .dg-ux-draft-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
#v-map #lcSens .dg-ux-draft-actions>.dg-png-btn{
  min-width:0;
  white-space:normal;
  min-height:42px;
  text-align:center;
}
#v-map #lcSens .dg-ux-draft-hint,
#v-map #lcSens .dg-ux-draft-status{
  margin:7px 0 0;
  color:var(--mut);
  font:500 .73rem/1.55 var(--f-ui);
}
#v-map #lcSens .dg-ux-draft-status[data-status="ok"]{color:var(--green)}
#v-map #lcSens .dg-ux-draft-status[data-status="error"]{color:#b42318}
@media(max-width:390px){
 #v-map #lcSens .dg-ux-draft-actions{grid-template-columns:1fr}
}
