:root{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#264435;color-scheme:light;--paper:#fafbef;--green:#294d36}*{box-sizing:border-box}html,body{height:100%;margin:0;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;border:0}button:focus-visible,a:focus-visible,#viewport:focus-visible{outline:3px solid #417d6b;outline-offset:4px}button:hover{background:#e6ebd8}button:active{transform:scale(.96)}#app{position:relative;isolation:isolate;height:100dvh;min-height:360px;overflow:hidden;background:#e7eac3}#viewport{position:absolute;inset:0;overflow:hidden;touch-action:none;cursor:grab;background:radial-gradient(ellipse at 45% 45%,#eff0d4 0%,#e7eac3 65%,#dde3ba 100%);user-select:none}#viewport.dragging{cursor:grabbing}#scene{position:absolute;left:0;top:0;width:100%;height:100%}#map-art{overflow:visible;width:100%;height:100%;display:block}.terrain-contours{display:none}body.show-contours .terrain-contours{display:block}body.terrain #illustrations{display:none}body.terrain .island>polygon:first-child{opacity:0}.topbar{position:absolute;top:max(22px,env(safe-area-inset-top));left:28px;right:28px;display:flex;justify-content:space-between;align-items:center;pointer-events:none}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:#264435;pointer-events:auto;background:#fafbefed;padding:10px 17px 11px 11px;border:1px solid #fff9;border-radius:18px;box-shadow:0 5px 20px #284f2410}.brandmark{display:grid;place-items:center;font-size:35px;width:45px;height:45px;background:#e2e9ca;border-radius:13px;line-height:1}.brand small{font-size:9px;letter-spacing:1.8px;font-weight:750;display:block;margin-bottom:3px}.brand strong{font-size:17px;font-weight:670;letter-spacing:-.5px}.header-actions{display:flex;gap:12px;align-items:center;pointer-events:auto}.live-label{font-size:12px;display:flex;align-items:center;gap:8px;background:#fafbefdf;border-radius:24px;padding:11px 15px}.live-label i,.tag-dot{width:6px;height:6px;background:#5c8140;border-radius:50%;display:inline-block}.icon{width:42px;height:42px;border:1px solid #fff8;border-radius:50%;background:#fafbefef;font-size:20px;box-shadow:0 4px 16px #27472810}.map-tag{position:absolute;top:122px;left:32px;display:flex;gap:9px;align-items:center;font-size:12px;color:#536744}.map-tag small{font-size:10px;color:#7b8769;padding-left:5px}.tools{position:absolute;top:50%;right:26px;transform:translateY(-50%);display:flex;flex-direction:column;gap:12px}.tools button{width:46px;height:46px;background:#fafbf0f5;display:grid;place-items:center;font-size:24px;border-radius:13px;box-shadow:0 4px 13px #253b2510}.tool-group{border:1px solid #fff9;border-radius:14px;overflow:hidden;box-shadow:0 5px 20px #29462312}.tool-group button{box-shadow:none;border-radius:0}.tool-group button+button{border-top:1px solid #dfe5cf}.tools button.compass{height:61px;gap:0;position:relative}.compass span{display:block;line-height:30px;font-size:31px;transform-origin:50% 50%}.compass small{font-size:9px;line-height:12px}.bottom{position:absolute;left:50%;bottom:max(56px,calc(env(safe-area-inset-bottom) + 42px));transform:translateX(-50%);display:flex;gap:10px;align-items:center}.mode-switch{display:flex;background:#fafbf0f5;border:1px solid #fff9;border-radius:25px;padding:5px;box-shadow:0 6px 24px #29462318}.mode-switch button{border-radius:20px;padding:10px 19px;font-size:13px;white-space:nowrap;background:transparent}.mode-switch button[aria-pressed=true]{background:#315339;color:#fffbe6;box-shadow:0 3px 8px #25432920}.contour-toggle{border-radius:23px;padding:14px 18px;font-size:12px;background:#fafbf0f5;white-space:nowrap;border:1px solid #fff9;box-shadow:0 6px 24px #29462310}.contour-toggle[aria-pressed=true]{background:#dbe5c5;box-shadow:inset 0 0 0 1px #8fa77b}.gesture-hint{position:absolute;bottom:max(20px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);font-size:11px;color:#63734e;margin:0;white-space:nowrap;pointer-events:none;transition:opacity .4s}.gesture-hint.dismissed{opacity:0}.attribution{position:absolute;bottom:8px;right:15px;font-size:9px;color:#71805c;margin:0;pointer-events:none}.scale{position:absolute;left:32px;bottom:67px;font-size:11px;font-variant-numeric:tabular-nums;color:#536744;pointer-events:none}.scale span{display:block;margin-bottom:4px}.scale div{width:100px;height:6px;border:1.5px solid #536744;border-top:0}.details{position:absolute;top:100px;right:28px;bottom:auto;max-height:calc(100dvh - 135px);overflow:auto;width:355px;background:#fafbf2f5;backdrop-filter:blur(18px);padding:23px;border:1px solid #fff;border-radius:23px;box-shadow:0 15px 70px #24462d22}.details[hidden]{display:none}.panel-head{display:flex;justify-content:space-between;gap:10px;align-items:start}.panel-head .icon{flex:0 0 32px;width:32px;height:32px;box-shadow:none;background:#e7eddb}.panel-head small{font-size:9px;letter-spacing:2px;font-weight:700;color:#6c8058}h1{font-size:24px;line-height:1.15;letter-spacing:-.8px;margin:10px 0 15px}.details p{font-size:13px;line-height:1.65;color:#52664c}.legend{display:flex;align-items:center;gap:10px;font-size:12px;padding:15px 0;border-block:1px solid #e1e7d4}.legend i{width:28px;border-top:3px solid #365c32}.details p.note{background:#eaf0dc;padding:12px;border-radius:12px;font-size:11px}.details p.source{font-size:10px;margin-bottom:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:600px){.topbar{top:max(14px,env(safe-area-inset-top));left:14px;right:14px}.brand{padding:8px 12px 9px 8px;gap:8px;border-radius:15px}.brandmark{width:36px;height:36px;font-size:30px;border-radius:10px}.brand small{font-size:8px;letter-spacing:1.2px}.brand strong{font-size:15px}.live-label{display:none}.icon{width:39px;height:39px}.map-tag{top:102px;left:20px;font-size:11px;gap:7px}.map-tag small{display:none}.tools{right:14px;gap:9px;top:47%}.tools button{width:42px;height:44px}.tools button.compass{height:57px}.bottom{gap:7px;bottom:max(53px,calc(env(safe-area-inset-bottom) + 40px));width:max-content;max-width:calc(100% - 24px)}.mode-switch{padding:4px}.mode-switch button{font-size:12px;padding:10px 14px}.contour-toggle{font-size:11px;padding:13px 12px}.scale{bottom:117px;left:20px;font-size:10px}.gesture-hint{bottom:24px;font-size:9px}.attribution{bottom:7px;right:0;left:0;text-align:center;font-size:8px}.details{top:91px;right:14px;left:14px;max-height:calc(100dvh - 120px);width:auto;padding:20px}}@media(max-height:500px){.topbar{top:10px}.brand{padding:7px 12px}.brandmark{height:32px;width:32px}.brand strong{font-size:14px}.map-tag{display:none}.tools{flex-direction:row;top:auto;bottom:75px;right:15px;transform:none;gap:8px}.tool-group{display:flex}.tool-group button+button{border-top:0;border-left:1px solid #dfe5cf}.tools button.compass{height:44px}.compass small{display:none}.bottom{bottom:26px}.gesture-hint{display:none}.scale{bottom:40px}.details{top:77px;max-height:calc(100dvh - 90px)}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.terrain-contours path,.island>polygon{vector-effect:non-scaling-stroke}#user-features [data-feature-type="fence"] path{vector-effect:non-scaling-stroke}

/* Avoid re-rasterizing the large blurred parcel shadow during gestures. */
#viewport.map-moving .island>polygon{filter:none}
