/* The same presentation for stored terrain and address-generated terrain. */
.terrain-point-readout{position:absolute;top:10px;left:10px;z-index:14;margin:0;padding:5px 8px;border:1px solid #cbd8d0;border-radius:5px;background:rgba(255,255,255,.94);color:#203837;font:600 12px/1.4 system-ui,sans-serif;max-width:calc(100% - 20px);pointer-events:none;box-shadow:0 1px 5px #0002}
.terrain-point-marker{position:absolute;z-index:13;width:14px;height:14px;transform:translate(-50%,-50%);border:2px solid #fff;border-radius:50%;background:#d69230;box-shadow:0 1px 4px #0006;pointer-events:none}
.terrain-point-readout[hidden],.terrain-point-marker[hidden]{display:none!important}
.unified-viewer{--ink:#203837;--line:#cbd8d0;--teal:#246b60;--muted:#60756d}
.unified-viewer-header{width:100%;max-width:none!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:0 16px!important;align-items:center;padding:10px 16px!important;background:#fff;border-bottom:1px solid var(--line)}
.unified-viewer-header .viewer-case-links{grid-column:1;grid-row:1/3;display:flex;align-items:center;gap:6px}
.unified-viewer-header .viewer-case-links a,.unified-viewer-header #back{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:6px 10px;border:1px solid #adc2b9;border-radius:7px;background:white;color:var(--teal);font:13px/1.4 system-ui,sans-serif;text-decoration:none;white-space:nowrap}
.unified-viewer-header>.viewer-case-links+div:not(.unified-viewer-actions){grid-column:2;grid-row:1/3;min-width:0}
.unified-viewer-header>.unified-viewer-title{grid-column:2!important;grid-row:1!important}
.unified-viewer-header>.unified-viewer-address{grid-column:2!important;grid-row:2!important}
.unified-viewer-header .unified-viewer-title{font:700 20px/1.3 system-ui,sans-serif!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0!important;min-width:0}
.unified-viewer-header .unified-viewer-address{font:12px/1.4 system-ui,sans-serif!important;color:var(--muted);margin:3px 0 0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.unified-viewer-header .eyebrow,.unified-viewer-header>p:not(.unified-viewer-address){display:none!important}
.unified-viewer-header .unified-viewer-actions{grid-column:3!important;grid-row:1/3!important;display:flex;align-items:center;gap:8px;flex-wrap:nowrap}
.unified-viewer-header .unified-viewer-actions>button,.unified-viewer-header .unified-viewer-actions>details>summary{min-height:40px;font:14px/1.4 system-ui,sans-serif}
.unified-viewer .tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;background:#f5f7f2;border:0}
.unified-viewer .tabs button{min-width:0;min-height:44px;padding:7px 5px;border:1px solid var(--line);border-radius:7px;font:13px/1.35 system-ui,sans-serif;color:var(--ink);background:#fff}
.unified-viewer .tabs button[aria-selected=true]{background:var(--teal);color:#fff;border-color:var(--teal)}
.unified-viewer .sidebar .property .tag,.unified-viewer .sidebar .property h2,.unified-viewer .sidebar .property #address{display:none}
.unified-viewer .sidebar .property{padding-top:8px;padding-bottom:8px}
.unified-viewer .generated-header-actions>details>div{z-index:40}
.unified-viewer .viewer-boundary-review{display:block;padding:10px;color:var(--teal);text-decoration:none;white-space:normal;font:14px/1.5 system-ui,sans-serif}
.unified-viewer .viewer-boundary-review-secondary{grid-column:1/-1!important;grid-row:4!important}
.unified-viewer.shared-restricted .viewer-case-links,.unified-viewer.generated-shared .viewer-case-links{display:none!important}
@media(max-width:850px){
 .unified-viewer-header{grid-template-columns:minmax(0,1fr) auto!important;padding:8px 12px!important;gap:7px 10px!important}
 .unified-viewer-header .viewer-case-links{grid-column:1;grid-row:1}
 .unified-viewer-header .unified-viewer-actions{grid-column:2!important;grid-row:1!important}
 .unified-viewer-header>.viewer-case-links+div:not(.unified-viewer-actions){grid-column:1/-1;grid-row:2/4}
 .unified-viewer-header>.unified-viewer-title{grid-column:1/-1!important;grid-row:2!important}
 .unified-viewer-header>.unified-viewer-address{grid-column:1/-1!important;grid-row:3!important}
 .unified-viewer-header .unified-viewer-title{font-size:19px!important}
 .unified-viewer .tabs button{font-size:11px;min-height:46px;padding:7px 3px}
 .unified-viewer-header .viewer-case-links a,.unified-viewer-header #back{min-height:44px}
}
@media print{.unified-viewer-header .viewer-case-links,.unified-viewer-header .unified-viewer-actions{display:none!important}}

.unified-viewer:not(.map-focused) .viewer-external-links{display:flex!important;flex-wrap:wrap;gap:7px;padding:16px 10px;margin-top:14px;border-top:1px solid var(--line);background:#fff}
.unified-viewer .viewer-external-links a{display:flex;align-items:center;justify-content:center;flex:1 1 120px;min-height:44px;padding:8px;border:1px solid #a8bcb0;border-radius:6px;color:#246b60;background:#f6faf8;text-decoration:none;font:600 13px/1.4 system-ui}
.unified-viewer .viewer-external-links small{flex-basis:100%;color:#60756d;font:12px/1.5 system-ui}
.unified-viewer .viewer-external-links a[aria-disabled=true]{opacity:.5}
.generated-distant{border-top:1px solid #cbd8d0;margin-top:14px;padding-top:10px}.generated-distant .controls{display:flex;gap:7px;flex-wrap:wrap}.generated-distant p,.generated-distant details{font-size:12px;line-height:1.6}.generated-distant input[type=checkbox]{width:18px;height:18px;flex:none}.generated-distant label.generated-checkbox{display:flex;align-items:center;gap:8px}

.mobile-sheet,.mobile-map-quick{display:none}
@media screen and (max-width:850px){
 html:has(body.mobile-viewer){overflow:hidden;overscroll-behavior:none}
 body.mobile-viewer{--phone-top:calc(56px + env(safe-area-inset-top,0px));--phone-tabs:calc(54px + env(safe-area-inset-bottom,0px));--phone-modes:52px;--phone-sheet-max:max(0px,calc(100dvh - var(--phone-top) - var(--phone-tabs) - var(--phone-modes) - 44px));--sheet-size:0px;margin:0!important;height:100dvh;overflow:hidden!important;overscroll-behavior:none}
 body.mobile-viewer[data-mobile-sheet=half]{--sheet-size:min(36dvh,320px,var(--phone-sheet-max))}
 body.mobile-viewer[data-mobile-sheet=full]{--sheet-size:var(--phone-sheet-max)}
 body.mobile-viewer .unified-viewer-header{position:fixed!important;inset:0 0 auto;height:var(--phone-top);z-index:30;padding:calc(6px + env(safe-area-inset-top,0px)) calc(10px + env(safe-area-inset-right,0px)) 6px calc(10px + env(safe-area-inset-left,0px))!important;display:flex!important;gap:8px!important;box-sizing:border-box}
 body.mobile-viewer .unified-viewer-header>.viewer-case-links{flex:none}
 body.mobile-viewer .viewer-case-links a{font-size:11px;padding:4px 6px;min-height:40px}
 body.mobile-viewer .viewer-case-links a:first-child:not(:last-child){display:none}
 body.mobile-viewer .unified-viewer-header>.viewer-case-links+div:not(.unified-viewer-actions){flex:1;min-width:0}
 body.mobile-viewer .unified-viewer-title{font-size:15px!important;flex:1;line-height:1.3;max-height:40px;overflow:hidden}
 body.mobile-viewer .unified-viewer-header p,body.mobile-viewer .unified-viewer-header .eyebrow{display:none!important}
 body.mobile-viewer .unified-viewer-address,body.mobile-viewer .viewer-boundary-review-secondary{display:none!important}
 body.mobile-viewer .unified-viewer-actions{margin-left:auto;flex:none;gap:4px}
 body.mobile-viewer .unified-viewer-actions>button,body.mobile-viewer .unified-viewer-actions>details>summary{font-size:12px!important;padding:6px!important}
 body.mobile-viewer .workspace,body.mobile-viewer .layout,body.mobile-viewer .stage,body.mobile-viewer #terrainMain,body.mobile-viewer #mapSection{position:static!important;display:block;min-height:0!important;height:auto!important;max-height:none!important;overflow:visible!important;padding:0!important;margin:0!important;border:0!important}
 body.mobile-viewer .workspace>.sidebar,body.mobile-viewer .layout>aside,body.mobile-viewer .viewer-top{display:none!important}
 body.mobile-viewer .tabs{position:fixed!important;inset:auto 0 0;z-index:60;display:flex!important;height:var(--phone-tabs);box-sizing:border-box;padding:4px calc(4px + env(safe-area-inset-right,0px)) calc(4px + env(safe-area-inset-bottom,0px)) calc(4px + env(safe-area-inset-left,0px));margin:0!important;border-top:1px solid #a8bcb0;background:#fff;gap:3px}
 body.mobile-viewer .tabs button{flex:1;min-width:0;font-size:11px!important;padding:4px 2px!important;line-height:1.25;min-height:44px;border-radius:7px}
 body.mobile-viewer .tabs button[hidden]{display:none!important}
 body.mobile-viewer #canvasWrap.has-map-frame-controls,body.mobile-viewer #mapWrap.has-map-frame-controls{
  position:fixed!important;inset:var(--phone-top) 0 calc(var(--phone-tabs) + var(--phone-modes) + 44px)!important;
  width:100%!important;height:auto!important;max-height:none!important;min-height:0!important;aspect-ratio:auto!important;margin:0!important;border-radius:0!important;overflow:hidden;z-index:1}
 body.mobile-viewer #scene,body.mobile-viewer #map,body.mobile-viewer #flat{width:100%!important;height:100%!important;max-height:none!important;touch-action:none}
 body.mobile-viewer .map-frame-controls{position:fixed!important;inset:auto 0 var(--phone-tabs)!important;transform:none!important;max-width:none!important;width:100%!important;height:var(--phone-modes);box-sizing:border-box;display:flex!important;padding:4px calc(6px + env(safe-area-inset-right,0px)) 4px calc(6px + env(safe-area-inset-left,0px));z-index:60;border-radius:0;box-shadow:none}
 body.mobile-viewer .map-frame-controls #dragMode,body.mobile-viewer .map-frame-controls #dragModes{display:grid!important}
 body.mobile-viewer .map-frame-controls .map-mouse-guide,body.mobile-viewer .map-frame-controls [data-map-top],body.mobile-viewer .map-frame-controls [data-map-overview]{display:none!important}
 body.mobile-viewer .map-frame-controls button{min-height:44px;font-size:12px}
 body.mobile-viewer .mobile-sheet{position:fixed;inset:auto 0 calc(var(--phone-tabs) + var(--phone-modes));height:calc(var(--sheet-size) + 44px);display:flex;flex-direction:column;z-index:50;background:#fff;border:1px solid #a8bcb0;border-radius:16px 16px 0 0;box-shadow:0 -3px 16px #203e3c26;overflow:hidden;box-sizing:border-box;padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}
 body.mobile-viewer .mobile-sheet-head{display:flex;flex:none;height:44px;align-items:stretch;gap:4px;padding:0 6px;background:#f6faf8}
 body.mobile-viewer .mobile-sheet-head button{margin:0;padding:4px 10px;min-height:44px;min-width:44px;border:0;background:transparent;color:#203e3c;font-size:13px}
 body.mobile-viewer .mobile-sheet-handle{display:flex;flex:1;min-width:0!important;align-items:center;gap:8px;text-align:left;touch-action:none;cursor:ns-resize}
 body.mobile-viewer .mobile-sheet-handle span{color:#8ca99d}
 body.mobile-viewer .mobile-sheet-handle small{margin-left:auto;white-space:nowrap;color:#51766b;font-size:11px}
 body.mobile-viewer .mobile-guide{margin:0 0 10px;padding:0 8px;border:1px solid #d4e0d8;border-radius:8px;background:#f6faf8;font-size:13px;line-height:1.7}
 body.mobile-viewer .mobile-guide summary{display:flex;align-items:center;color:#246b60;font-weight:600}
 body.mobile-viewer .mobile-guide ol{padding-left:20px;margin:0 0 12px}
 body.mobile-viewer .mobile-sheet-handle strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 body.mobile-viewer .mobile-sheet-content{min-height:0;flex:1;overflow:auto;overscroll-behavior:contain;touch-action:pan-y;padding:10px 12px 24px;scrollbar-gutter:stable}
 body.mobile-viewer[data-mobile-sheet=closed] .mobile-sheet-content{visibility:hidden;padding:0}
 body.mobile-viewer .mobile-sheet-content>*{max-width:100%;box-sizing:border-box}
 body.mobile-viewer .mobile-sheet-content input,body.mobile-viewer .mobile-sheet-content select,body.mobile-viewer .mobile-sheet-content textarea{font-size:16px;max-width:100%;box-sizing:border-box}
 body.mobile-viewer .mobile-sheet-content button,body.mobile-viewer .mobile-sheet-content summary{min-height:44px}
 body.mobile-viewer .mobile-sheet-content #settingsPanels,body.mobile-viewer .mobile-sheet-content .shared-options-content{max-height:none!important;overflow:visible!important;padding:0}
 body.mobile-viewer .mobile-sheet-content .terrain-toolbar{display:block}
 body.mobile-viewer .mobile-sheet-content .terrain-toolbar>label{margin:10px 0}
 body.mobile-viewer .mobile-sheet-content .shared-options-content{display:flex;flex-direction:column}
 body.mobile-viewer[data-mobile-tab=view] .shared-options-content>[data-panel=view],body.mobile-viewer[data-mobile-tab=hazard] .shared-options-content>[data-panel=hazard],body.mobile-viewer[data-mobile-tab=buildings] .shared-options-content>[data-panel=buildings]{order:-1}
 body.mobile-viewer .mobile-sheet-content #settingsPanels>.panel:not([hidden]),body.mobile-viewer .mobile-sheet-content .shared-options-content>.panel:not([hidden]){display:block!important}
 body.mobile-viewer .mobile-map-quick{display:flex;position:fixed;right:calc(8px + env(safe-area-inset-right,0px));top:calc(var(--phone-top) + 10px);z-index:20;flex-direction:column;gap:5px}
 body.mobile-viewer .mobile-map-quick button{width:44px;height:44px;min-height:44px;margin:0;padding:0;white-space:nowrap;border:1px solid #a8bcb0;border-radius:9px;background:#fffffff2;color:#203e3c;font-size:16px;box-shadow:0 1px 5px #0002}
 body.mobile-viewer .mobile-map-quick button:nth-child(4),body.mobile-viewer .mobile-map-quick button[data-view-height]{font-size:12px}
 body.mobile-viewer .eye-map-panel{top:76px!important;left:calc(8px + env(safe-area-inset-left,0px))!important;right:auto!important;bottom:auto!important;width:104px!important;max-width:104px;padding:3px}
 body.mobile-viewer .eye-map-panel canvas{width:96px!important;height:80px!important}
 body.mobile-viewer .eye-map-panel>div,body.mobile-viewer .eye-map-panel small{display:none!important}
 body.mobile-viewer .terrain-point-readout{left:calc(10px + env(safe-area-inset-left,0px));max-width:calc(100% - 70px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px))}
 body.mobile-viewer #buildingMapHint{position:fixed;top:calc(var(--phone-top) + 52px);left:calc(8px + env(safe-area-inset-left,0px));right:calc(60px + env(safe-area-inset-right,0px));z-index:22;margin:0}
 body.mobile-viewer .mobile-sheet-content [hidden],body.mobile-viewer .mobile-map-quick [hidden],body.mobile-viewer .mobile-sheet-head [hidden]{display:none!important}
 body.mobile-viewer[data-mobile-tab=docs] .mobile-map-quick,body.mobile-viewer[data-mobile-tab=docs] .map-frame-controls{visibility:hidden}
 body.mobile-viewer .mobile-sheet-content .property{display:none}
 body.mobile-viewer .mobile-sheet-content .settings-summary,body.mobile-viewer .mobile-sheet-content .shared-display-options>summary{display:none}
}
@media screen and (max-width:850px) and (max-height:480px){
 body.mobile-viewer .mobile-map-quick{flex-direction:row;top:calc(var(--phone-top) + 6px)}
 body.mobile-viewer .eye-map-panel{top:8px!important}
}
@media print{.mobile-sheet,.mobile-map-quick{display:none!important}}
/* Compact navigation stays on the map; legends and warnings remain in settings. */
.unified-viewer #mapControlDock .map-control-head,.unified-viewer #mapControlDock .map-control-row,.unified-viewer #mapControlDock .map-control-note,.unified-viewer .generated-direction-buttons,.unified-viewer .generated-wheel-hint{display:none!important}
.unified-viewer #mapControlDock #mapControlBody{display:block!important}
.unified-viewer #mapControlDock{border:0;box-shadow:none;padding:0}
@media screen and (max-width:850px){
 body.mobile-viewer{--phone-modes:0px}
 body.mobile-viewer .map-frame-controls{position:absolute!important;inset:auto auto 8px calc(8px + env(safe-area-inset-left,0px))!important;width:auto!important;max-width:calc(100% - 120px)!important;height:auto;display:block!important;padding:0;z-index:18;border:0;border-radius:8px;box-shadow:none;background:transparent}
 body.mobile-viewer .map-frame-controls #dragMode,body.mobile-viewer .map-frame-controls #dragModes{grid-template-columns:1fr}
 body.mobile-viewer .map-frame-controls .map-mouse-guide{display:block!important}
 body.mobile-viewer .map-corner-quick{display:none!important}
 body.mobile-viewer .mobile-map-quick{display:grid;grid-template-columns:repeat(2,44px);gap:4px;top:auto;bottom:calc(var(--phone-tabs) + 44px + 8px);right:calc(8px + env(safe-area-inset-right,0px));z-index:20}
 body.mobile-viewer .mobile-map-quick button{border-radius:8px;box-shadow:0 1px 5px #0002}
 body.mobile-viewer .eye-map-panel{top:8px!important;right:calc(8px + env(safe-area-inset-right,0px))!important;left:auto!important}
 body.mobile-viewer .view-mode-overlay{max-width:calc(100% - 130px)}
 body.mobile-viewer .terrain-point-readout{max-width:calc(100% - 132px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px))}
}
@media screen and (max-width:850px) and (max-height:480px){
 body.mobile-viewer .mobile-map-quick{grid-template-columns:repeat(3,44px);top:auto}
 body.mobile-viewer .eye-map-panel{width:88px!important;max-width:88px}
 body.mobile-viewer .eye-map-panel canvas{width:80px!important;height:62px!important}
 body.mobile-viewer .map-control-popover{max-height:calc(100dvh - 205px)}
}
