:root{--brand-paper:#f4f1eb;--brand-surface:#fffefb;--brand-ink:#242629;--brand-muted:#62605b;--brand-green:#23644b;--brand-sage:#e1ebe3;--brand-line:#d8d2c8;--brand-input:#89847b;--brand-on-green:#fffefb;--brand-danger:#b44335;--brand-danger-surface:#fbedea;--brand-warn:#78551c;--brand-warn-surface:#fff3df;color-scheme:light;--bg-0:var(--brand-paper);--bg-1:var(--brand-surface);--bg-2:#ebe7df;--border:var(--brand-line);--border-active:var(--brand-input);--text-1:var(--brand-ink);--text-2:var(--brand-muted);--text-m:var(--brand-muted);--accent:var(--brand-green);--brand-accent:var(--brand-green);--accent-dim:#87a391;--accent-glow:var(--brand-sage);--warn:var(--brand-warn);--err:var(--brand-danger);--ok:var(--accent);--ok-glow:var(--accent-glow);--warn-glow:var(--brand-warn-surface);--err-glow:var(--brand-danger-surface);--font-body:var(--font-brand-sans,"Source Sans 3",system-ui,sans-serif);--font-display:var(--font-brand-serif,"Source Serif 4",Georgia,serif);--font-mono:var(--font-jetbrains,"JetBrains Mono",monospace)}.brandLogo{display:inline-flex;align-items:center;gap:10px;min-width:0;color:inherit;line-height:1}.brandLogoText{display:inline-grid;gap:4px;min-width:0}.brandLogoWord{max-width:calc(100vw - 112px);overflow:hidden;color:var(--text-1);font-family:var(--font-display);font-size:var(--type-2xl);font-weight:600;letter-spacing:var(--tracking-display);line-height:1;text-overflow:ellipsis;white-space:nowrap}.brandLogoNum{color:inherit}.brandLogoPeriod{color:var(--brand-green)}.brandLogoTagline{color:var(--text-2);font-size:var(--type-xs);letter-spacing:var(--tracking-normal);line-height:var(--leading-snug)}@media (max-width:640px){.brandLogoTagline{display:none}}.brandLogo-light .brandLogoWord{color:var(--ink-0,var(--brand-ink))}.brandLogo-light .brandLogoTagline{color:var(--brand-muted)}*{margin:0;padding:0;box-sizing:border-box}body,html{min-height:100%;font-family:var(--font-body);background:var(--bg-0);color:var(--text-1)}h1{font-family:var(--font-display);font-weight:400;letter-spacing:var(--tracking-tight)}body{overflow:hidden}.appShell{height:100dvh;display:flex;flex-direction:column}.environmentBanner{flex:0 0 auto;display:flex;align-items:center;justify-content:center;gap:10px;padding:8px 16px;border-bottom:1px solid rgba(253,172,47,.45);background:#2a1c08;color:#ffe3c1;font-size:12px;line-height:1.35;text-align:center}.environmentBanner strong{color:#ffffff;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.appShellBody{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow-x:hidden;overflow-y:auto}.appFooter{flex:0 0 auto;justify-content:space-between;padding:10px 16px calc(10px + env(safe-area-inset-bottom, 0px));border-top:1px solid var(--border);background:var(--bg-1);color:var(--text-m);font-size:var(--type-xs);line-height:var(--leading-normal)}.appFooter,.appFooterDisclaimer,.appFooterLinks{display:flex;align-items:flex-start;gap:8px}.appFooterDisclaimer{min-width:0}.appFooterLinks{flex-wrap:wrap;justify-content:flex-end;white-space:nowrap;gap:4px 8px}.appFooterLink{color:var(--text-2);font-weight:500;text-decoration:none}@media (pointer:coarse){.appFooterLink{display:inline-flex;align-items:center;min-height:24px;padding-inline:2px}}.appFooterLink:focus-visible,.appFooterLink:hover{color:var(--accent);text-decoration:underline}.appFooterLinkButton{border:none;background:none;padding:0;font-family:inherit;font-size:inherit;line-height:inherit;cursor:pointer}.appFooterLabel{flex-shrink:0;font-family:var(--font-body);font-size:var(--type-xs);font-weight:700;letter-spacing:var(--tracking-normal);text-transform:none;color:var(--text-2)}.appFooterText{min-width:0;color:var(--text-2)}@media (max-width:768px){.appFooter{align-items:stretch;flex-direction:column;gap:4px;padding:6px 10px calc(6px + env(safe-area-inset-bottom, 0px));font-size:var(--type-xs);line-height:1.35}.appFooterDisclaimer{display:block;flex:0 0 auto;white-space:normal}.appFooterLabel{margin-right:4px;font-size:var(--type-xs)}.appFooterLinks,.appFooterText{overflow:visible;white-space:normal}.appFooterLinks{flex:0 0 auto;flex-wrap:wrap;gap:4px 7px;justify-content:flex-start}}@media (min-width:1100px){.appShell:has([aria-label="Area Profiles map"])>.appFooter{align-items:center;padding:4px 10px calc(4px + env(safe-area-inset-bottom, 0px));background:color-mix(in srgb,var(--bg-0) 94%,transparent);font-size:var(--type-xs);line-height:1.25}.appShell:has([aria-label="Area Profiles map"])>.appFooter .appFooterDisclaimer,.appShell:has([aria-label="Area Profiles map"])>.appFooter .appFooterLinks{align-items:center}}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.leaflet-container{background:var(--bg-0)!important;cursor:crosshair!important;font-family:var(--font-body)!important}.mapLoadingState{position:absolute;inset:0;display:grid;place-content:center;gap:12px;min-height:320px;color:var(--text-2);background:radial-gradient(circle at 50% 45%,var(--accent-glow),transparent 34%),var(--bg-0);font-size:13px;letter-spacing:.02em;text-align:center}.mapLoadingPulse{width:28px;height:28px;margin-inline:auto;border:2px solid var(--border-active);border-top-color:var(--accent);border-radius:50%;animation:mapLoadingSpin .8s linear infinite}@keyframes mapLoadingSpin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.mapLoadingPulse{animation:none}}.area-research-boundary{filter:drop-shadow(0 0 2px rgba(15,14,12,.95))}.leaflet-popup-content-wrapper{color:var(--text-1)!important;border:1px solid var(--border)!important;border-radius:8px!important;box-shadow:0 8px 32px rgba(0,0,0,.5)!important}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:var(--bg-1)!important}.leaflet-popup-content{font-size:12px!important}.leaflet-tooltip.mapApproximateFootprintLabel{background:var(--bg-1)!important;border:1px solid var(--border)!important;border-radius:4px!important;box-shadow:none!important;color:var(--text-1)!important;font-family:var(--font-mono)!important;font-size:10px!important;font-weight:700!important;padding:2px 4px!important;pointer-events:none!important;white-space:nowrap!important}.leaflet-tooltip.mapApproximateFootprintLabel:before{display:none!important}.mapAssemblageIneligibleLabel{border:1px solid rgba(243,160,6,.5);border-radius:4px;background:rgba(24,24,21,.88);color:#ffba5f;font-size:11px;font-weight:600;padding:2px 5px;box-shadow:none}@keyframes spin{to{transform:rotate(1turn)}}.appLayout{display:flex;flex:1 1 auto;min-height:0;overflow:hidden;position:relative}.appLayout>main{min-width:0;min-height:0}.sidebar{width:min(400px,34vw);min-width:360px;height:100%;min-height:0;background:var(--bg-1);border-right:1px solid var(--border);display:flex;flex-direction:column;z-index:1000;transition:transform .3s cubic-bezier(.4,0,.2,1)}.mapContainer{width:100%;height:100%;position:relative}.mapContainer .mapboxgl-ctrl-top-right{left:8px;right:auto}.mapboxgl-ctrl-group.terrainNavigationControl{display:grid;grid-template-columns:repeat(3,44px)}.mapboxgl-ctrl-group.terrainNavigationControl button{width:44px;height:44px;border:0;font-size:20px}.mapboxgl-ctrl-group.terrainNavigationControl button:last-child{font-size:11px;font-weight:700}.mapboxgl-ctrl-group.terrainNavigationControl button:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}.mapInstruction{position:absolute;top:12px;left:50%;transform:translateX(-50%);max-width:min(320px,calc(100% - 24px));background:var(--bg-1);border:1px solid var(--border);border-radius:7px;padding:8px 16px;z-index:1000;font-size:11px;color:var(--text-2);pointer-events:none;text-align:center}.mapPanelStack{position:absolute;right:16px;bottom:20px;display:flex;flex-direction:column;gap:10px;width:min(280px,calc(100% - 32px));max-height:calc(100% - 40px);z-index:1000}.mapPanelStackCollapsed{width:auto}.mapPanelStackBuildings{width:min(280px,calc(100% - 32px));bottom:36px;max-height:calc(100% - 148px)}.mapBuildingNote{flex:0 1 auto;min-height:0;max-height:180px;overflow-y:auto;overscroll-behavior:contain}.mapBuildingNote strong{display:block;margin-bottom:6px;color:var(--text-1)}.mapLayerCollapseToggle{display:inline-flex;align-items:center;justify-content:center;align-self:flex-end;flex:0 0 auto;min-height:36px;padding:8px 14px;border:1px solid var(--border);border-radius:999px;background:var(--bg-1);box-shadow:0 10px 26px rgba(0,0,0,.28);color:var(--text-1);font-family:var(--font-mono);font-size:10.5px;font-weight:700;cursor:pointer}.mapLayerPanelBody{display:flex;flex:1 1 auto;flex-direction:column;gap:10px;min-height:0;overflow-y:auto;overscroll-behavior:contain}.mapPanelStackCollapsed .mapLayerPanelBody{display:none}.mapLegend{background:var(--bg-1);border:1px solid var(--border);border-radius:7px;padding:10px 14px;font-size:11px;line-height:1.45}.mapOverlayPanel{box-shadow:0 10px 26px rgba(0,0,0,.28)}.mapLegendHeader{margin-bottom:8px;color:var(--text-2);font-family:var(--font-mono);font-size:10.5px;font-weight:700;letter-spacing:.7px;text-transform:uppercase}.mapLegendList{display:flex;flex-direction:column;gap:6px}.mapLayerToggle,.mapLegendRow{display:flex;align-items:center;gap:8px}.mapLayerToggle{cursor:pointer;-webkit-user-select:none;user-select:none}.mapLayerToggleCompact{gap:6px}.mapLayerToggleMuted{opacity:.55}.mapLayerToggle input{margin:0;accent-color:var(--accent)}.mapLayerToggleGroup{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px;margin-top:4px}.mapLegendSwatch{width:14px;height:8px;border-radius:2px;border-width:1.5px;border-style:solid;flex-shrink:0}.mapLegendNote{margin-top:8px;color:var(--text-2);font-size:10.5px;line-height:1.4}.mapTerrainButton{width:100%;min-height:34px;padding:7px 10px;border:1px solid var(--accent-dim);border-radius:6px;background:var(--accent-glow);color:var(--accent);font-family:var(--font-mono);font-size:10.5px;font-weight:700;cursor:pointer}.mapTerrainButton:focus-visible:not(:disabled),.mapTerrainButton:hover:not(:disabled){background:var(--accent);color:var(--bg-0)}.mapTerrainButton:disabled{border-color:var(--border);background:var(--bg-0);color:var(--text-m);cursor:not-allowed;opacity:.7}.terrainWorkspaceBackdrop{position:fixed;inset:0;z-index:6000;display:grid;place-items:center;padding:24px;background:rgba(8,7,5,.78);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.terrainWorkspace{display:flex;flex-direction:column;width:min(1180px,100%);height:min(760px,100%);min-height:0;overflow:hidden;border:1px solid var(--border-bright);border-radius:12px;background:var(--bg-1);box-shadow:0 24px 80px rgba(0,0,0,.55)}.terrainWorkspaceHeader{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border-bottom:1px solid var(--border);background:var(--bg-1)}.terrainWorkspaceHeader h2{margin:2px 0 0;color:var(--text-1);font-size:17px;line-height:1.2}.terrainWorkspaceEyebrow{color:var(--accent);font-family:var(--font-mono);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.terrainWorkspaceActions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.terrainWorkspaceToggle{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:6px 9px;border:1px solid var(--border);border-radius:6px;color:var(--text-2);font-size:10.5px;cursor:pointer;-webkit-user-select:none;user-select:none}.terrainWorkspaceToggle input{margin:0;accent-color:var(--accent)}.terrainWorkspaceCameraControl{display:inline-flex;align-items:center;gap:5px;min-height:32px;padding:6px 9px;border:1px solid var(--border);border-radius:6px;background:var(--bg-2);color:var(--text-1);font-family:var(--font-mono);font-size:10.5px;font-weight:700;line-height:1;cursor:pointer;-webkit-user-select:none;user-select:none}.terrainWorkspaceCameraControl:focus-visible,.terrainWorkspaceCameraControl:hover,.terrainWorkspaceCameraControlActive{border-color:var(--accent);color:var(--accent)}.terrainWorkspaceCameraControlActive{cursor:grabbing}.terrainWorkspaceCameraControl>span:first-child{font-size:15px}.terrainWorkspaceMapOrbitActive .mapboxgl-canvas,.terrainWorkspaceMapOrbitActive .terrainWorkspaceCanvas{cursor:grab;touch-action:none}.terrainWorkspaceMapOrbitDragging .mapboxgl-canvas,.terrainWorkspaceMapOrbitDragging .terrainWorkspaceCanvas{cursor:grabbing}.terrainWorkspaceClose{min-height:32px;padding:6px 12px;border:1px solid var(--border);border-radius:6px;background:var(--bg-2);color:var(--text-1);font-family:var(--font-mono);font-size:10.5px;font-weight:700;cursor:pointer}.terrainWorkspaceClose:focus-visible,.terrainWorkspaceClose:hover{border-color:var(--accent);color:var(--accent)}.terrainWorkspaceBody{display:grid;grid-template-columns:minmax(0,1fr) 306px;flex:1 1 auto;min-height:0}.terrainWorkspaceMap{position:relative;min-width:0;min-height:0;background:#eae8e2}.terrainWorkspaceCanvas,.terrainWorkspaceMap .mapboxgl-map{width:100%;height:100%}.terrainWorkspaceMap .mapboxgl-ctrl-group{overflow:hidden;border:1px solid rgba(24,24,21,.45);border-radius:6px;box-shadow:0 4px 16px rgba(0,0,0,.22)}.terrainWorkspaceMap .mapboxgl-ctrl button{background-color:rgba(251,250,247,.94)}.terrainWorkspaceMap .mapboxgl-ctrl-attrib{font-size:9px}.terrainWorkspaceStatus{position:absolute;top:16px;left:50%;z-index:2;max-width:calc(100% - 32px);transform:translateX(-50%);padding:8px 12px;border:1px solid rgba(24,24,21,.22);border-radius:6px;background:rgba(251,250,247,.94);color:#181815;font-family:var(--font-mono);font-size:10px;font-weight:700;box-shadow:0 5px 20px rgba(0,0,0,.18);text-align:center}.terrainWorkspaceStatusError{border-color:rgba(220,36,47,.35);color:#991a20}.terrainWorkspaceRail{display:flex;flex-direction:column;min-width:0;overflow:auto;padding:18px;border-left:1px solid var(--border);background:var(--bg-1)}.terrainWorkspaceRailHeader p{margin:6px 0 0;color:var(--text-2);font-size:11px;line-height:1.45}.terrainMetricGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:16px}.terrainMetricCard{display:grid;gap:4px;min-width:0;padding:9px;border:1px solid var(--border);border-radius:7px;background:var(--bg-0)}.terrainMetricDetail,.terrainMetricLabel{color:var(--text-m);font-size:9px;line-height:1.3}.terrainMetricLabel{font-family:var(--font-mono);font-weight:700;letter-spacing:.03em;text-transform:uppercase}.terrainMetricValue{overflow-wrap:anywhere;color:var(--text-1);font-family:var(--font-mono);font-size:13px;line-height:1.2}.terrainWorkspaceRailMessage{margin:18px 0 0;padding:12px;border:1px solid var(--border);border-radius:7px;color:var(--text-2);font-size:11px;line-height:1.5}.terrainWorkspaceLegend{display:flex;flex-wrap:wrap;gap:8px 12px;margin-top:auto;padding-top:18px;color:var(--text-2);font-size:10px}.terrainWorkspaceLegend span{display:inline-flex;align-items:center;gap:5px}.terrainLegendSwatch{width:11px;height:11px;border-radius:3px}.terrainLegendGentle{background:#08d39f}.terrainLegendSloped{background:#f3a006}.terrainLegendSteep{background:#ef4445}.terrainWorkspaceDisclaimer{margin:12px 0 0;padding-top:12px;border-top:1px solid var(--border);color:var(--text-m);font-size:10px;line-height:1.45}.mapLensActions{display:grid;gap:5px;margin-top:10px;padding-top:9px;border-top:1px solid var(--border)}.mapLensActionsLabel{color:var(--text-m);font-family:var(--font-mono);font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.mapLegendLink{display:block;width:100%;padding:5px 0;border:0;background:transparent;color:var(--accent);font:inherit;font-size:10.5px;text-align:left;text-decoration:none;cursor:pointer}.mapLegendLink:focus-visible,.mapLegendLink:hover{color:var(--text-1);text-decoration:underline}.mapBasemapSwitcher{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.mapBasemapOption{display:flex;align-items:center;justify-content:center;padding:6px 8px;border:1px solid var(--border);border-radius:6px;background:var(--bg-0);color:var(--text-2);font-size:10.5px;cursor:pointer;-webkit-user-select:none;user-select:none;text-align:center}.mapBasemapOption input{position:absolute;opacity:0;pointer-events:none}.mapBasemapOption:focus-within{outline:2px solid var(--accent);outline-offset:2px}.mapBasemapOption:has(input:disabled){opacity:.55;cursor:not-allowed}.mapBasemapOptionActive{background:var(--accent);border-color:var(--accent);color:var(--bg-0);font-weight:600}.locationError,.mobileLocateButton,.mobileMapBackButton,.mobileMapBar,.mobileMapLinkButton{display:none}.candidateReturnRow{position:sticky;top:0;z-index:5;display:flex;padding:10px 14px;border-bottom:1px solid var(--border);background:var(--bg-2)}.candidateReturnButton{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;border:1px solid var(--accent-dim);border-radius:8px;background:var(--accent-glow);color:var(--accent);font-family:var(--font-mono);font-size:11px;font-weight:700;text-decoration:none}.candidateReturnButton:before{content:"←";font-size:16px;line-height:1}.candidateReturnButton:focus-visible,.candidateReturnButton:hover{border-color:var(--accent);outline:none}@media (max-width:768px){.candidateReturnButton{width:100%}}.mobileHeader,.mobileSubheader{display:none}.desktopHeader,.desktopSearch{display:block}.assemblageToolbar{display:grid;gap:6px}.assemblageToolbarButtons{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.assemblageButton{min-height:34px;padding:8px 13px;border-radius:999px;font-family:var(--font-mono);font-size:10px;font-weight:800;letter-spacing:.02em;cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease,opacity .14s ease,transform .14s ease}.assemblageButtonPrimary{border:1px solid var(--accent);background:var(--accent);color:var(--bg-0);box-shadow:0 0 0 1px rgba(41,212,161,.12),0 8px 20px rgba(41,212,161,.14)}.assemblageButtonPrimary:hover:not(:disabled){background:color-mix(in srgb,var(--accent),black 12%);border-color:var(--accent);color:var(--bg-0);transform:translateY(-1px)}.assemblageButtonSecondary{border:1px solid var(--border);background:rgba(153,151,145,.08);color:var(--text-2)}.assemblageButtonSecondary:hover:not(:disabled){background:rgba(153,151,145,.14);color:var(--text-1)}.assemblageButton:disabled{cursor:not-allowed;opacity:.45;transform:none}.assemblageError,.assemblageHint{display:block;font-family:var(--font-mono);font-size:10px;line-height:1.35}.assemblageHint{color:var(--text-m)}.assemblageError{color:var(--err)}@media (max-width:768px){body,html{height:100%}body{overscroll-behavior:none}.appShell:has(.sidebarMapMode) [aria-label="Getting started checklist"],.appShell:has(.sidebarMapMode)>.appFooter{display:none}.appLayout,.sidebar{height:100%}.sidebar{position:absolute;inset:0;width:100%;min-width:0;border-right:none;border-radius:0;z-index:2000;overflow:hidden;padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0)}.sidebarPanel{transform:none}.sidebarMapMode{transform:translateX(-100%);pointer-events:none}.mobileHeader{display:grid;grid-template-columns:minmax(0,1fr);column-gap:8px;padding:10px 14px;flex-shrink:0;width:100%}.mobileHeader,.mobileSubheader{align-items:center;background:var(--bg-1)}.mobileSubheader{display:flex;justify-content:flex-end;gap:10px;padding:0 14px 10px;border-bottom:1px solid var(--border)}.mobileHeader>*{min-width:0}.mobileBrand{display:flex;align-items:center;gap:8px;min-width:0;color:var(--text-2);font-size:11px;letter-spacing:.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobileBrandDot{width:4px;height:4px;border-radius:999px;background:var(--text-m);flex-shrink:0}.mobileSheetButton{padding:8px 16px;border:1px solid var(--border);border-radius:999px;background:var(--bg-2);color:var(--text-1);font-weight:600;flex-shrink:0}.mobileLocateButton,.mobileSheetButton{min-height:36px;font-family:var(--font-mono);font-size:11px;cursor:pointer;-webkit-tap-highlight-color:transparent}.mobileLocateButton{display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;border:1px solid var(--accent-dim);border-radius:999px;background:var(--accent-glow);color:var(--accent);font-weight:700;white-space:nowrap}.mobileLocateButton:disabled{opacity:.45;cursor:not-allowed}.locationError{display:block;padding:8px 14px;border-bottom:1px solid rgba(253,172,47,.22);background:rgba(253,172,47,.1);color:var(--warn);font-size:11px;line-height:1.4}.mobileMapBar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:8px;position:absolute;top:0;left:0;right:0;z-index:3000;padding:calc(env(safe-area-inset-top, 0px) + 10px) 14px 10px;background:var(--bg-1);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.mobileMapBar>*{min-width:0}.mobileMapBackButton{display:flex;align-items:center;justify-content:center;position:absolute;bottom:calc(env(safe-area-inset-bottom, 0px) + 16px);left:50%;transform:translateX(-50%);z-index:3000;padding:12px 24px;background:var(--accent);color:var(--bg-0);border:none;border-radius:999px;font-size:12px;font-weight:700;box-shadow:0 8px 24px rgba(0,0,0,.4);letter-spacing:.3px}.mobileMapBackButton,.mobileMapLinkButton{font-family:var(--font-mono);cursor:pointer}.mobileMapLinkButton{display:inline-block;margin-top:16px;padding:10px 20px;background:var(--bg-2);border:1px solid var(--border);border-radius:8px;color:var(--accent);font-size:11px;font-weight:600}.desktopHeader,.desktopSearch{display:none}.mapContainer{height:100%;width:100%}.mapContainer .mapboxgl-ctrl-top-right{top:var(--mobile-map-control-top,calc(env(safe-area-inset-top, 0px) + 72px))}.tabSwitcher{position:sticky;top:0;z-index:2;background:var(--bg-1)}.assemblageButton,.tabSwitcher button{min-height:44px;font-size:12px}.mapInstruction{top:calc(env(safe-area-inset-top, 0px) + 58px);left:12px;right:12px;transform:none;padding:8px 12px;font-size:10px}.mapPanelStack{right:12px;left:12px;bottom:calc(env(safe-area-inset-bottom, 0px) + 72px);width:auto;max-height:calc(100% - var(--map-layer-top-offset, env(safe-area-inset-top, 0px) + 72px) - env(safe-area-inset-bottom, 0px) - 72px)}.mapPanelStackCollapsed{left:auto;width:auto}.mapPanelStackBuildings{width:min(280px,calc(100% - 24px));left:auto;max-height:calc(100% - var(--map-layer-top-offset, env(safe-area-inset-top, 0px) + 72px) - env(safe-area-inset-bottom, 0px) - 184px)}.mapLayerCollapseToggle{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 14px;border:1px solid var(--border);border-radius:999px;background:var(--bg-1);box-shadow:0 10px 26px rgba(0,0,0,.28);color:var(--text-1);font-family:var(--font-mono);font-size:11px;font-weight:700;cursor:pointer}.mapPanelStackCollapsed .mapLayerPanelBody{display:none}.mapLegend{padding:8px 12px}.terrainWorkspaceBackdrop{display:block;padding:0}.terrainWorkspace{width:100%;height:100%;border:0;border-radius:0}.terrainWorkspaceHeader{align-items:flex-start;flex-direction:column;gap:10px;padding:12px 14px}.terrainWorkspaceActions{width:100%;justify-content:flex-start}.terrainWorkspaceBody{display:flex;flex-direction:column}.terrainWorkspaceMap{flex:1 1 54%;min-height:260px}.terrainWorkspaceRail{flex:1 1 46%;min-height:0;padding:14px;border-top:1px solid var(--border);border-left:0}.terrainWorkspaceLegend{margin-top:14px}.mapLayerToggleGroup{grid-template-columns:1fr}}@media (max-width:420px){.mobileHeader,.mobileMapBar{grid-template-columns:minmax(0,1fr);column-gap:6px;padding-inline:10px}.mobileSubheader{padding-inline:10px}}@media (max-width:768px){input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=button]):not([type=submit]),select,textarea{font-size:16px!important}}.mapZoningSplitLegend{position:absolute;left:12px;bottom:32px;z-index:400;width:min(300px,calc(100% - 24px));max-height:30%;overflow:auto;font-size:var(--type-xs);color:var(--text-1)}.mapZoningSplitLegend .mapLegendRow{gap:8px;margin:6px 0}.mapZoningSplitLegend .mapLegendRow span:nth-child(2){flex:1 1}.mapZoningSplitLegend .mapLegendSwatch{flex-shrink:0;border:1px solid var(--text-1)}.ConsentBanner_banner__JKEUv{flex:0 0 auto;display:flex;gap:16px;align-items:flex-start;justify-content:space-between;padding:14px 16px;border-top:1px solid var(--border-active);background:var(--bg-1)}.ConsentBanner_body__OFJ3B{min-width:0}.ConsentBanner_heading__rZHVc{margin:0;color:var(--text-1);font-size:15px;line-height:1.3}.ConsentBanner_copy__Eg4ae{margin:8px 0 0;color:var(--text-2);font-size:13px;line-height:1.6}.ConsentBanner_copy__Eg4ae a{color:var(--accent)}.ConsentBanner_options__zeYDy{display:grid;gap:10px;margin-top:14px}.ConsentBanner_option__4uFrN{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--bg-0);cursor:pointer}.ConsentBanner_option__4uFrN input{width:16px;height:16px;margin-top:2px;accent-color:var(--accent);cursor:pointer}.ConsentBanner_option__4uFrN strong{display:block;color:var(--text-1);font-size:13px}.ConsentBanner_option__4uFrN small{display:block;margin-top:4px;color:var(--text-2);font-size:12px;line-height:1.55}.ConsentBanner_optionDisabled__3Sj2J{opacity:.55;cursor:not-allowed}.ConsentBanner_optionDisabled__3Sj2J input{cursor:not-allowed}.ConsentBanner_actions__k_1uy{display:flex;flex-wrap:wrap;gap:8px;align-items:center;flex-shrink:0}.ConsentBanner_primary__6nnfl,.ConsentBanner_secondary__bkt32,.ConsentBanner_tertiary__zj__a{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 16px;border-radius:999px;font-family:inherit;font-size:13px;font-weight:700;cursor:pointer}.ConsentBanner_primary__6nnfl{border:1px solid var(--accent);background:var(--accent);color:#0f0f0d}.ConsentBanner_secondary__bkt32{border:1px solid var(--border-active);background:transparent;color:var(--text-1)}.ConsentBanner_tertiary__zj__a{border:1px solid transparent;background:transparent;color:var(--text-2)}.ConsentBanner_primary__6nnfl:hover,.ConsentBanner_secondary__bkt32:hover,.ConsentBanner_tertiary__zj__a:hover{filter:brightness(1.1)}.ConsentBanner_option__4uFrN input:focus-visible,.ConsentBanner_primary__6nnfl:focus-visible,.ConsentBanner_secondary__bkt32:focus-visible,.ConsentBanner_tertiary__zj__a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (max-width:768px){.ConsentBanner_banner__JKEUv{flex-direction:column;gap:14px;padding:16px}.ConsentBanner_actions__k_1uy{width:100%}.ConsentBanner_primary__6nnfl,.ConsentBanner_secondary__bkt32{flex:1 1 auto}}.AppNavClient_nav__RZSC4{flex:0 0 auto;display:flex;align-items:center;gap:18px;min-height:68px;padding:6px 16px;border-bottom:1px solid var(--border);background:var(--bg-1);color:var(--text-1);z-index:5000}.AppNavClient_brand__atX3a{display:inline-flex;align-items:center;gap:10px;min-width:0;color:var(--text-1);text-decoration:none;font-weight:500}.AppNavClient_navBody__mq_tu{display:flex;align-items:center;justify-content:space-between;gap:18px;flex:1 1 auto;min-width:0}.AppNavClient_links__flTMx{display:flex;align-items:stretch;min-width:0}.AppNavClient_navGroup__CSWrz{position:relative;display:flex;align-items:center;padding:0 14px}.AppNavClient_navGroup__CSWrz+.AppNavClient_navGroup__CSWrz{border-left:1px solid var(--border)}.AppNavClient_navGroupTrigger__rtSmO{display:flex;align-items:center}.AppNavClient_link__3Ep7t{display:inline-flex;align-items:center;min-height:30px;padding:6px 8px;border-radius:var(--radius-sm);color:var(--text-2);font-size:var(--type-base);font-weight:500;text-decoration:none}.AppNavClient_link__3Ep7t:focus-visible,.AppNavClient_link__3Ep7t:hover{background:var(--bg-2);color:var(--text-1);outline:none}.AppNavClient_link__3Ep7t[aria-current=page]{background:var(--accent-glow);color:var(--accent)}.AppNavClient_linkLocked__QY4uH,.AppNavClient_linkLocked__QY4uH:focus-visible,.AppNavClient_linkLocked__QY4uH:hover{background:transparent;color:var(--text-m);cursor:not-allowed;opacity:.46}.AppNavClient_navMenuTrigger__l6o_U{display:inline-flex;align-items:center;justify-content:center;width:28px;min-height:30px;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-m);cursor:pointer}.AppNavClient_navMenuTrigger__l6o_U:focus-visible,.AppNavClient_navMenuTrigger__l6o_U:hover,.AppNavClient_navMenuTrigger__l6o_U[aria-expanded=true]{background:var(--bg-2);color:var(--accent);outline:none}.AppNavClient_navMenuTrigger__l6o_U span{transition:transform var(--dur-fast) var(--ease-standard)}.AppNavClient_navMenuTrigger__l6o_U[aria-expanded=true] span{transform:rotate(180deg)}.AppNavClient_navDropdown__kGWGf{position:absolute;top:calc(100% + 10px);left:10px;display:grid;gap:2px;min-width:210px;padding:6px;border:1px solid var(--border-active);border-radius:var(--radius-sm);background:var(--bg-1);box-shadow:var(--elev-3);z-index:5001}.AppNavClient_navDropdownItem___ote3{display:flex;align-items:center;min-height:36px;padding:8px 10px;border-radius:var(--radius-sm);color:var(--text-1);font-size:var(--type-sm);font-weight:500;text-decoration:none}.AppNavClient_navDropdownItem___ote3:focus-visible,.AppNavClient_navDropdownItem___ote3:hover,.AppNavClient_navDropdownItem___ote3[aria-current=page]{background:var(--bg-2);color:var(--accent);outline:none}.AppNavClient_navDropdownItemLocked__myEuO,.AppNavClient_navDropdownItemLocked__myEuO:focus-visible,.AppNavClient_navDropdownItemLocked__myEuO:hover{background:transparent;color:var(--text-m);cursor:not-allowed;opacity:.46}.AppNavClient_onboardingBanner__eGan6{position:relative;z-index:4000;flex:0 0 auto;display:grid;grid-template-columns:minmax(170px,.8fr) minmax(360px,1.6fr) auto;align-items:center;gap:18px;padding:10px 16px;border-bottom:1px solid var(--border-active);background:var(--accent-glow);color:var(--text-1)}.AppNavClient_onboardingIntro__K87Yp{display:grid;gap:2px}.AppNavClient_onboardingIntro__K87Yp strong{font-size:var(--type-sm)}.AppNavClient_onboardingIntro__K87Yp span,.AppNavClient_onboardingSteps__jOuuy span{color:var(--text-2);font-size:var(--type-xs)}.AppNavClient_onboardingSteps__jOuuy{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none}.AppNavClient_onboardingSteps__jOuuy li{display:grid;gap:2px;min-width:0}.AppNavClient_onboardingSteps__jOuuy strong{color:var(--accent);font-family:var(--font-body);font-size:var(--type-xs)}.AppNavClient_onboardingActions__WuOQw{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.AppNavClient_onboardingActions__WuOQw a,.AppNavClient_onboardingActions__WuOQw button{min-height:34px;padding:8px 10px;border:1px solid var(--border-active);border-radius:var(--radius-sm);background:var(--bg-0);color:var(--text-1);font-family:var(--font-body);font-size:var(--type-xs);font-weight:500;text-decoration:none;cursor:pointer}.AppNavClient_account__Fztn4{position:relative;display:flex;align-items:center;min-width:0}.AppNavClient_userTrigger__P8V8G{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-0);color:var(--text-1);cursor:pointer;text-align:right}.AppNavClient_userTrigger__P8V8G:focus-visible,.AppNavClient_userTrigger__P8V8G:hover{border-color:var(--accent);outline:none}.AppNavClient_userTrigger__P8V8G[aria-expanded=true]{border-color:var(--accent)}.AppNavClient_userBlock__Ta9bf{display:flex;flex-direction:column;align-items:flex-end;min-width:0;line-height:1.2}.AppNavClient_userEmail__Q47i_,.AppNavClient_userName__Y_4Lq{max-width:min(240px,24vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.AppNavClient_userName__Y_4Lq{color:var(--text-1);font-size:var(--type-sm);font-weight:500}.AppNavClient_userEmail__Q47i_{font-family:var(--font-body)}.AppNavClient_userEmail__Q47i_,.AppNavClient_userTriggerCaret___eGCN{color:var(--text-m);font-size:var(--type-xs)}.AppNavClient_userMenu__UINkC{position:absolute;top:calc(100% + 6px);right:0;min-width:200px;padding:6px;border:1px solid var(--border-active);border-radius:var(--radius-sm);background:var(--bg-1);box-shadow:var(--elev-3);display:flex;flex-direction:column;gap:2px;z-index:5001}.AppNavClient_userMenuItem__qUoQg{display:flex;align-items:center;width:100%;min-height:34px;padding:8px 12px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-1);font-family:inherit;font-size:var(--type-base);font-weight:500;text-align:left;text-decoration:none;cursor:pointer}.AppNavClient_userMenuItem__qUoQg:focus-visible,.AppNavClient_userMenuItem__qUoQg:hover{background:var(--bg-2);color:var(--accent);outline:none}.AppNavClient_userMenuItem__qUoQg:disabled{cursor:wait;opacity:.68}.AppNavClient_userMenuDivider__c_6Ws{height:1px;margin:4px;background:var(--border)}.AppNavClient_userMenuError__E3wXZ{padding:4px 12px 8px;color:var(--err);font-size:var(--type-xs)}.AppNavClient_tosBanner__6aExc{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 16px;border-bottom:1px solid color-mix(in srgb,var(--warn) 35%,transparent);background:var(--warn-glow);color:var(--text-1);font-size:var(--type-sm);line-height:1.5;z-index:4000}.AppNavClient_tosBannerText__GAa7u{display:flex;align-items:center;flex-wrap:wrap;gap:6px;min-width:0}.AppNavClient_tosBannerText__GAa7u strong{color:var(--warn);font-family:var(--font-body);font-size:var(--type-xs)}.AppNavClient_tosBannerActions__dxoi_{display:flex;align-items:center;gap:8px;flex:0 0 auto}.AppNavClient_tosLink__pyp0s{color:var(--accent);font-size:var(--type-sm);font-weight:500;text-decoration:none}.AppNavClient_tosLink__pyp0s:focus-visible,.AppNavClient_tosLink__pyp0s:hover{text-decoration:underline;outline:none}.AppNavClient_tosButton__XD_qQ{min-height:30px;padding:6px 10px;border:1px solid var(--warn);border-radius:var(--radius-sm);background:var(--bg-0);color:var(--text-1);font-family:var(--font-body);font-size:var(--type-xs);font-weight:500;cursor:pointer}.AppNavClient_tosButton__XD_qQ:disabled{cursor:wait;opacity:.68}.AppNavClient_tosError__0eogX{color:var(--err)}.AppNavClient_menuButton__4Da20{display:none;align-items:center;justify-content:center;flex-direction:column;gap:4px;width:38px;height:38px;margin-left:auto;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-0);cursor:pointer}.AppNavClient_menuButton__4Da20 span{width:16px;height:2px;border-radius:999px;background:var(--text-2)}@media (max-width:1100px){.AppNavClient_nav__RZSC4{position:relative;min-height:54px;padding:8px 12px;gap:10px}.AppNavClient_menuButton__4Da20{display:inline-flex}.AppNavClient_navBody__mq_tu{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:12px;padding:12px;border-bottom:1px solid var(--border);background:var(--bg-1)}.AppNavClient_navBodyOpen__oRGGt{display:flex}.AppNavClient_links__flTMx{display:flex;flex-direction:column;gap:8px}.AppNavClient_navGroup__CSWrz{display:grid;gap:6px;padding:0}.AppNavClient_navGroup__CSWrz+.AppNavClient_navGroup__CSWrz{padding-top:8px;border-top:1px solid var(--border);border-left:0}.AppNavClient_navGroupTrigger__rtSmO{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:6px}.AppNavClient_link__3Ep7t{justify-content:center}.AppNavClient_link__3Ep7t,.AppNavClient_navMenuTrigger__l6o_U{min-height:44px;background:var(--bg-0);border:1px solid var(--border)}.AppNavClient_navMenuTrigger__l6o_U{width:44px}.AppNavClient_navDropdown__kGWGf{position:static;min-width:0;width:100%;box-shadow:none}.AppNavClient_account__Fztn4{flex-direction:column;align-items:stretch}.AppNavClient_userTrigger__P8V8G{justify-content:space-between;width:100%;text-align:left}.AppNavClient_userBlock__Ta9bf{align-items:flex-start}.AppNavClient_userEmail__Q47i_,.AppNavClient_userName__Y_4Lq{max-width:100%}.AppNavClient_userMenu__UINkC{position:static;margin-top:8px;width:100%;box-shadow:none}.AppNavClient_tosBanner__6aExc{align-items:stretch;flex-direction:column;gap:10px;padding:10px 12px}.AppNavClient_tosBannerActions__dxoi_{justify-content:flex-start;flex-wrap:wrap}.AppNavClient_onboardingBanner__eGan6{pointer-events:none;grid-template-columns:1fr;gap:10px;padding:12px}.AppNavClient_onboardingSteps__jOuuy{grid-template-columns:1fr}.AppNavClient_onboardingActions__WuOQw{justify-content:flex-start}.AppNavClient_onboardingActions__WuOQw a,.AppNavClient_onboardingActions__WuOQw button{min-height:44px;pointer-events:auto}}@media (max-width:640px){.AppNavClient_tosBanner__6aExc{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;padding:8px 12px}.AppNavClient_tosBannerText__GAa7u{display:grid;gap:2px}.AppNavClient_tosBannerActions__dxoi_{display:grid;grid-template-columns:repeat(2,auto);align-items:center;justify-content:start;gap:4px 10px}.AppNavClient_tosButton__XD_qQ{grid-column:1/-1;min-height:44px}.AppNavClient_onboardingBanner__eGan6{gap:8px;padding:8px 12px}.AppNavClient_onboardingIntro__K87Yp span{display:none}.AppNavClient_onboardingSteps__jOuuy{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.AppNavClient_onboardingSteps__jOuuy span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.AppNavClient_onboardingActions__WuOQw{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.AppNavClient_onboardingActions__WuOQw a,.AppNavClient_onboardingActions__WuOQw button{display:inline-flex;align-items:center;justify-content:center;min-width:0;padding-inline:6px}}