.terrain-map-shell{--terrain-control-border:color-mix(in srgb, var(--color-border) 55%, var(--color-text) 45%);flex-direction:column;gap:.65rem;padding:.65rem;display:flex}.terrain-control-card{border:1px solid var(--terrain-control-border);background:var(--color-surface);color:var(--color-text);border-radius:.9rem;flex-direction:column;gap:.65rem;padding:.8rem;display:flex}.terrain-heading-card{flex-direction:row;justify-content:space-between;align-items:center}.terrain-map-wrap{border:1px solid var(--color-border);border-radius:.9rem;height:min(54vh,540px);min-height:300px;position:relative;overflow:hidden}.terrain-leaflet-host{position:absolute;inset:0}.terrain-map-shell:fullscreen,.terrain-map-fallback-fullscreen{z-index:99999;width:100vw;height:100dvh;max-height:100dvh;padding:max(.5rem, env(safe-area-inset-top)) max(.5rem, env(safe-area-inset-right)) max(.5rem, env(safe-area-inset-bottom)) max(.5rem, env(safe-area-inset-left));border:0;border-radius:0;flex-direction:column;gap:.5rem;display:flex;position:fixed;inset:0;overflow:hidden}.terrain-map-shell:fullscreen .terrain-map-wrap,.terrain-map-fallback-fullscreen .terrain-map-wrap{flex:1;height:auto;min-height:0}.terrain-map-shell:fullscreen .terrain-details,.terrain-map-fallback-fullscreen .terrain-details{display:none}.terrain-map-shell .leaflet-bottom.leaflet-right{bottom:.5rem}.map-action,.map-primary{border:1px solid var(--terrain-control-border);background:var(--color-surface);min-height:42px;color:var(--color-text);border-radius:.65rem;justify-content:center;align-items:center;padding:.55rem .8rem;font-size:.85rem;font-weight:700;display:inline-flex;box-shadow:0 1px 4px #0002}.map-action:hover{background:var(--color-surface-hover)}.map-action:focus-visible,.terrain-control-card button:focus-visible,.terrain-control-card input:focus-visible{outline:2px solid var(--color-text);outline-offset:2px}.map-primary{border-color:var(--color-accent-action);background:var(--color-accent-action);color:var(--color-accent-on)}.map-primary:hover{background:var(--color-accent-action-hover)}.map-primary:disabled{opacity:.65}.terrain-warning-panel{border-color:var(--color-warning);background:var(--color-warning-soft);color:var(--color-text)}.terrain-warning-text{color:var(--color-text-muted)}.terrain-secondary-action{border-color:var(--terrain-control-border);background:var(--color-surface)}.terrain-secondary-action:hover{background:var(--color-surface-hover)}.terrain-delete-point{color:var(--color-danger)}.terrain-delete-point:hover{background:var(--color-danger-soft)}.terrain-scenario-card{border-color:var(--scenario-color);background:var(--color-surface);color:var(--color-text);border-left-width:.45rem}.terrain-scenario-card[data-scenario=measured]{--scenario-color:#087f5b}.terrain-scenario-card[data-scenario=minimum]{--scenario-color:#2563eb}.terrain-scenario-card[data-scenario=maximum]{--scenario-color:#d97706}[data-theme=dark] .terrain-scenario-card[data-scenario=measured]{--scenario-color:#3ddb9a}[data-theme=dark] .terrain-scenario-card[data-scenario=minimum]{--scenario-color:#80a9ff}[data-theme=dark] .terrain-scenario-card[data-scenario=maximum]{--scenario-color:#f2b457}.terrain-scenario-card-selected{outline:2px solid var(--color-text);outline-offset:2px}.terrain-action-card>div:first-child>span{align-items:center}.terrain-action-card>div:first-child>span>span{align-items:center;gap:.3rem;display:inline-flex}.terrain-action-card i{border-radius:2px;width:.8rem;height:.22rem;display:inline-block}.legend-measured{background:#087f5b}.legend-min{background:#2563eb}.legend-max{background:#d97706}[data-theme=dark] .legend-measured{background:#3ddb9a}[data-theme=dark] .legend-min{background:#80a9ff}[data-theme=dark] .legend-max{background:#f2b457}.terrain-details{border:1px solid var(--terrain-control-border);background:var(--color-surface);max-height:48vh;color:var(--color-text);border-radius:.9rem;flex-direction:column;gap:.75rem;padding:.8rem;display:flex;overflow-y:auto}.terrain-details>ul{border-color:var(--terrain-control-border);flex-shrink:0}.terrain-number-icon{background:0 0;border:0}.terrain-number-icon span{color:#fff;background:#0f8a5f;border:2px solid #fff;border-radius:9999px;justify-content:center;align-items:center;width:28px;height:28px;font:700 13px/1 system-ui,sans-serif;display:flex;box-shadow:0 1px 4px #0008}@media (width<=640px){.terrain-map-wrap{height:48vh;min-height:280px}.terrain-map-shell:fullscreen .terrain-map-wrap,.terrain-map-fallback-fullscreen .terrain-map-wrap{min-height:0}.terrain-control-card{padding:.7rem}.terrain-heading-card{align-items:flex-start}.terrain-details{max-height:none}}
