:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#30302e;font-synthesis:none;color-scheme:light;--ink:#30302e;--muted:#70706b;--ember:#a34032;--glass:rgba(248,247,243,.89);--line:rgba(65,61,55,.15);--shadow:0 5px 22px #2926211a,0 1px 3px #29262114}
*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{border:0;cursor:pointer;color:inherit;background:none;font-weight:550}button:disabled{opacity:.42;cursor:default}button:not(:disabled):hover,a:hover{background:#e6e3dc8c}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--ember);outline-offset:3px}button[aria-pressed=true]{color:#943b30;background:#a3403213}svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}h1,h2,h3,p{margin:0}h1,h2{font-size:15px;font-weight:650}h1 span{font-weight:430;color:#76736b;margin-left:3px}[hidden]{display:none!important}.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
#maps-viewer{position:relative;width:100%;height:100%;height:100dvh;background:#e6e4dd;isolation:isolate}#map{position:absolute;inset:0;background:#e6e4dd}.glass{background:var(--glass);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:9px}
.map-brand{position:absolute;z-index:2;top:16px;left:16px;height:48px;display:flex;align-items:center;padding:0 12px;gap:10px}.map-brand a{display:flex;align-items:center;gap:9px;min-height:44px;background:none;white-space:nowrap}.map-brand img{object-fit:contain;width:48px;height:25px}.admin-context{font-size:10px;color:var(--ember);border-left:1px solid var(--line);padding-left:9px}
.map-tools{position:absolute;z-index:4;top:16px;right:16px;display:flex;align-items:center;padding:2px;gap:1px}.map-tools button,.map-tools a{height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;gap:7px;border-radius:6px;padding:0 12px;font-size:12px;white-space:nowrap}.map-tools a svg{width:17px;height:17px}.map-tools a:not([hidden])+#layers-toggle,.signout-form+#layers-toggle{border-left:1px solid var(--line);border-radius:0 6px 6px 0}.signout-form{margin:0}
.icon-button{width:44px;min-width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0!important;border-radius:6px}
.map-search{position:absolute;z-index:6;top:16px;left:270px;width:min(330px,calc(100vw - 550px));overflow:hidden}.map-search form{display:flex;align-items:center;gap:8px;min-height:46px;padding-left:12px}.map-search form>svg{width:18px;height:18px;color:var(--muted)}.map-search input{min-width:0;width:100%;height:44px;border:0;background:transparent;color:var(--ink);font-size:13px;outline-offset:-3px}.map-search input::-webkit-search-cancel-button{display:none}.map-search .icon-button{border-radius:0}.map-search .icon-button svg{width:17px;height:17px}.map-search ul{list-style:none;padding:5px;margin:0;border-top:1px solid var(--line);max-height:min(420px,calc(100dvh - 160px));overflow:auto;overscroll-behavior:contain}.map-search [role=option]{min-height:48px;padding:9px 10px;border-radius:5px;cursor:pointer;font-size:13px;line-height:1.35;overflow-wrap:anywhere}.map-search [role=option]:hover,.map-search [aria-selected=true]{background:#a3403213}.map-search [role=option] span,.map-search [role=option] small{display:block}.map-search [role=option] small{color:var(--muted);font-size:11px;margin-top:3px}.map-search #search-status{padding:11px 13px;font-size:12px;border-top:1px solid var(--line)}.map-tools #search-toggle{display:none}.map-place{position:absolute;left:16px;top:73px;z-index:2;max-width:calc(100% - 95px);padding:6px 10px;font-size:12px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}.share-dialog #share-place{font-size:13px;margin:0 0 12px;color:var(--muted)}
@media(max-width:1050px){.map-search{display:none;top:74px;left:16px;width:330px;max-width:calc(100% - 32px)}.search-open .map-search{display:block}.map-tools #search-toggle{display:flex}.search-open .map-place{display:none}}
@media(min-width:1051px){[data-admin-view=true] .map-search{left:310px;width:min(330px,calc(100vw - 590px))}}
.map-control-panel{position:absolute;z-index:5;top:74px;right:16px;width:292px;max-width:calc(100% - 32px);max-height:calc(100dvh - 145px);overflow:auto;overscroll-behavior:contain;padding:8px}
#maps-viewer:not(.layers-open) .map-control-panel{width:238px}#maps-viewer.controls-open .maplibregl-ctrl-top-right{visibility:hidden;pointer-events:none}#maps-viewer:not(.sketching) .drawing-dock{display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px}#maps-viewer:not(.sketching) .drawing-summary{padding-left:4px}
.map-sheet{padding:0 5px 8px}.sheet-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 7px;gap:16px}.map-sheet>.sheet-heading{justify-content:flex-end;height:36px;margin:-3px -5px 0}.map-sheet>.sheet-heading button{height:44px}
.menu-actions{display:grid;grid-template-columns:1fr;gap:1px}.menu-actions>button,.menu-actions .tfh-import-open{width:100%;min-height:44px;display:flex;align-items:center;justify-content:flex-start;gap:10px;padding:0 9px;border-radius:6px;font-size:13px;text-align:left}.menu-actions svg{width:19px;height:19px}.menu-section-heading{display:flex;gap:9px;align-items:center;font-size:12px;font-weight:650;padding:15px 8px 10px;border-top:1px solid var(--line);margin-top:10px}.menu-section-heading svg{width:17px;height:17px}
.basemap-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(65px,1fr));gap:5px;margin-bottom:7px}.basemap-options button{min-height:44px;padding:9px 7px;border:1px solid var(--line);border-radius:6px;font-size:12px}
.layer-row{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;padding:0 4px;font-size:12px;cursor:pointer}.layer-row input{width:20px;height:20px;accent-color:var(--ember)}.imagery-control,.restricted-layers{display:block;border-top:1px solid var(--line);margin-top:8px;padding-top:12px}.imagery-control>span,.restricted-layers label{font-size:12px;font-weight:600;display:block;margin-bottom:7px}.imagery-control select,.restricted-layers select{width:100%;height:44px;background:#fff9;border:1px solid var(--line);border-radius:6px;color:var(--ink);padding:0 9px;font-size:12px}.muted{font-size:12px;color:var(--muted);line-height:1.5}.restricted-layers p{margin-top:8px}
.drawing-dock{padding:3px 5px 5px}.drawing-dock:not([hidden])+.map-sheet:not([hidden]){margin-top:8px;padding-top:5px;border-top:1px solid var(--line)}.drawing-summary{min-height:34px;display:flex;align-items:center;font-size:13px;font-weight:600;padding:0 7px}.measurement{font-size:13px;font-variant-numeric:tabular-nums}.draw-tools{display:flex;align-items:center;gap:4px}.draw-tools button{min-height:44px;border-radius:6px;padding:0 12px;font-size:12px}.draw-tools #draw-finish{color:#943b30;background:#a3403213}.draw-tools .icon-button{width:44px;min-width:44px}
.map-status{position:absolute;z-index:4;left:50%;top:50%;transform:translate(-50%,-50%);max-width:calc(100% - 48px);padding:18px 22px;text-align:center;font-size:14px;line-height:1.5}.map-status button{display:block;margin:12px auto 0;min-height:44px;padding:10px 16px;border-radius:6px;background:#a3403214;color:var(--ember)}.map-notice{position:absolute;z-index:7;left:50%;bottom:72px;transform:translateX(-50%);padding:12px 17px;font-size:13px;text-align:center;max-width:calc(100% - 36px);line-height:1.5}
.map-footer{position:absolute;z-index:2;right:12px;bottom:0;display:flex;align-items:center;font-size:10px;line-height:1.5;color:#494943;pointer-events:auto}.map-footer a{position:relative;display:flex;align-items:center;min-height:0;padding:5px 6px;white-space:nowrap}.map-footer a::before{content:"";position:absolute;inset:-10px -2px}.map-footer a:hover{background:none;color:var(--ember)}
.maplibregl-ctrl-top-right{top:76px;right:16px}.maplibregl-ctrl-top-right .maplibregl-ctrl{margin:0 0 12px}.maplibregl-ctrl-group{background:var(--glass);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)!important;overflow:hidden}.maplibregl-ctrl-group button{width:44px;height:44px}.maplibregl-ctrl-group button+button{border-top:1px solid var(--line)}.maplibregl-ctrl-group button:not(:disabled):hover{background:#e6e3dc8c}
.maplibregl-ctrl-bottom-right{right:10px;bottom:5px;display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;max-width:calc(100% - 120px);gap:0 5px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{margin:0;float:none}.maplibregl-ctrl-bottom-right .map-footer{position:static;padding:0 3px;border-radius:6px;background:#f8f7f3cf;backdrop-filter:blur(10px)}.maplibregl-ctrl-attrib{font-size:10px;line-height:1.5;background:#f8f7f3cf;border-radius:6px;padding:7px;max-width:100%;box-shadow:none}.maplibregl-ctrl-attrib a{color:#56534d}.maplibregl-ctrl-attrib a:hover{text-decoration:none;color:var(--ember)}.maplibregl-ctrl-scale{border-color:#67645c;background:#f8f7f39c;border-radius:0 0 3px 3px;font-size:10px;color:#4c4943}.maplibregl-ctrl-bottom-left{left:16px;bottom:17px}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{margin:0}
.maplibregl-map.mouse-pointer .maplibregl-canvas-container.maplibregl-interactive{cursor:pointer}.maplibregl-map.mouse-move .maplibregl-canvas-container.maplibregl-interactive{cursor:move}.maplibregl-map.mouse-add .maplibregl-canvas-container.maplibregl-interactive{cursor:crosshair}.maplibregl-map.mouse-move.mode-direct_select .maplibregl-canvas-container.maplibregl-interactive{cursor:grab}
.share-dialog{padding:18px 22px;width:390px;max-width:calc(100% - 32px);color:var(--ink)}.share-dialog::backdrop{background:#23211f55;backdrop-filter:blur(3px)}.share-dialog input{width:100%;padding:11px;border:1px solid var(--line);border-radius:6px;background:#fffb;font-size:13px}.share-dialog #copy-link{min-height:44px;padding:11px 15px;border-radius:6px;background:#a3403214;color:var(--ember);margin-top:12px;float:right}.share-dialog form::after{content:"";display:block;clear:both}
.credits-dialog{padding:16px 20px 20px;width:430px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 48px);overflow:auto;color:var(--ink);font-size:12px;line-height:1.6}.credits-dialog::backdrop{background:#23211f33;backdrop-filter:blur(2px)}.credits-dialog h2{font-size:14px}.credit-list{margin:0}.credit-list dt{font-weight:650;margin:14px 0 4px}.credit-list dd{margin:5px 0}.credit-list a{color:#555650;text-decoration:underline;text-decoration-color:#7776;text-underline-offset:3px}.credit-list a:hover{color:var(--ember);background:none}
.current-location-marker{width:15px;height:15px;border:3px solid #fff;border-radius:50%;background:#a34032;box-shadow:0 0 0 5px #a3403229,0 1px 5px #0004;pointer-events:none}
.search-result-marker{width:19px;height:19px;border:3px solid #fffdf8;border-radius:50%;background:#a34032;box-shadow:0 0 0 2px #a3403270,0 2px 7px #0005;pointer-events:none}
.point-popup{z-index:4}.point-popup .maplibregl-popup-content{padding:3px 6px 5px;background:var(--glass);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;backdrop-filter:blur(16px) saturate(1.1);color:var(--ink);font:inherit}.point-popup[class*="anchor-top"] .maplibregl-popup-tip{border-bottom-color:var(--glass)}.point-popup[class*="anchor-bottom"] .maplibregl-popup-tip{border-top-color:var(--glass)}.point-popup.maplibregl-popup-anchor-left .maplibregl-popup-tip{border-right-color:var(--glass)}.point-popup.maplibregl-popup-anchor-right .maplibregl-popup-tip{border-left-color:var(--glass)}
.point-coordinate-row{display:flex;align-items:center;gap:0}.point-coordinate-row input{width:201px;min-width:0;padding:7px 4px;border:0;border-radius:4px;background:transparent;color:var(--ink);font-size:12px;font-variant-numeric:tabular-nums;user-select:text}.point-coordinate-row svg{width:17px;height:17px}.point-actions{display:flex;gap:4px;border-top:1px solid var(--line);padding-top:3px}.point-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 9px;border-radius:6px;font-size:12px;white-space:nowrap;flex:1}.point-actions svg{width:17px;height:17px}
#locate-button[aria-busy=true] svg{animation:gps-pending 1.3s ease-in-out infinite}@keyframes gps-pending{50%{opacity:.35}}
@supports(backdrop-filter:blur(15px)){.glass,.maplibregl-ctrl-group{background:linear-gradient(135deg,#fff5,#f8f7f31a),#f4f2edcf;backdrop-filter:blur(18px) saturate(1.1)}}
@media(max-width:700px){.map-brand{top:10px;left:10px;height:46px;padding:0 8px;gap:6px}.map-brand a{gap:6px}.map-brand img{width:32px;height:22px}.map-brand h1{font-size:12px}.map-brand h1 span{margin-left:1px}.admin-context{font-size:9px;padding-left:6px}.map-tools{top:10px;right:10px;padding:0}.map-tools button,.map-tools a{padding:0 9px;font-size:11px}.map-tools #layers-toggle>span{display:none}.map-tools #layers-toggle{width:44px;padding:0}.map-control-panel{top:66px;right:10px;max-width:calc(100% - 20px);max-height:calc(100dvh - 135px)}.maplibregl-ctrl-top-right{top:66px;right:10px}.maplibregl-ctrl-bottom-right{right:7px;bottom:3px;max-width:calc(100% - 14px);gap:0 3px}.maplibregl-ctrl-attrib{font-size:10px;max-width:calc(100vw - 106px);padding:5px}.maplibregl-ctrl-bottom-left{left:10px;bottom:58px}.map-footer a{padding:0 5px}.map-notice{bottom:93px;font-size:12px}.credits-dialog{padding:14px 18px 18px}}
@media(max-width:360px){.map-brand img{width:26px}.map-brand a{gap:4px}.map-brand h1{font-size:11px}.map-brand{padding:0 6px}.admin-context{display:none}}
@media(max-width:700px){.map-search{top:66px;left:10px;width:calc(100% - 20px);max-width:none}.map-search input{font-size:16px}.map-place{left:10px;top:65px;font-size:11px;max-width:calc(100% - 80px)}.search-open .maplibregl-ctrl-top-right{visibility:hidden;pointer-events:none}.map-tools #search-toggle{width:44px;padding:0}.map-brand{max-width:calc(100% - 159px)}.map-brand a{min-width:0}.map-brand h1{overflow:hidden;text-overflow:ellipsis}.map-brand img{flex:none}}
@media(prefers-reduced-transparency:reduce){.glass,.maplibregl-ctrl-group,.point-popup .maplibregl-popup-content{backdrop-filter:none;background:#f7f5f0}}@media(forced-colors:active){.glass,.maplibregl-ctrl-group,.point-popup .maplibregl-popup-content{background:Canvas;border:1px solid CanvasText;backdrop-filter:none}button[aria-pressed=true]{outline:2px solid Highlight}.point-coordinate-row input{color:CanvasText}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}#locate-button[aria-busy=true] svg{animation:none;opacity:.55}}
