.nearby-section {padding-top:32px;padding-bottom:48px;scroll-margin-top:100px}
.nearby-section [hidden] {display:none!important}
.nearby-heading {display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:22px}
.nearby-heading .section-kicker {color:#38767d}
.nearby-heading h2 {font-size:clamp(27px,3.2vw,40px);margin:8px 0 10px;letter-spacing:-1px}
.nearby-heading p {margin:0;color:#66717f;line-height:1.75;max-width:720px}
.nearby-explorer {display:grid;grid-template-columns:minmax(0,1fr) 338px;border:1px solid #d8e2e4;border-radius:24px;overflow:hidden;box-shadow:0 20px 55px #172a3610;background:#fff}
.nearby-stage {position:relative;min-height:570px;isolation:isolate;background:radial-gradient(ellipse at 44% 43%,#eefaff 0%,#d3ecfa 52%,#bbdbf0 100%)}
.nearby-stage::before {content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 3% 88%,#f8fcff9c 0%,transparent 38%),radial-gradient(ellipse at 94% 3%,#f6f9ff8c 0%,transparent 33%)}
.nearby-sky-decoration {position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.nearby-stage[data-map-mode=streets] .nearby-sky-decoration {visibility:hidden}
.nearby-stars {position:absolute;inset:0}
.nearby-stars span {position:absolute;left:var(--x);top:var(--y);width:var(--size,9px);height:var(--size,9px);background:#fffdf2;clip-path:polygon(50% 0,62% 37%,100% 50%,62% 63%,50% 100%,38% 63%,0 50%,38% 37%);animation:nearby-twinkle var(--duration,4s) ease-in-out var(--delay,0s) infinite}
.nearby-stars span:nth-child(1) {--x:8%;--y:20%;--size:11px;--delay:-.8s}
.nearby-stars span:nth-child(2) {--x:22%;--y:12%;--size:7px;--delay:-2.4s;--duration:5s}
.nearby-stars span:nth-child(3) {--x:43%;--y:9%;--size:5px;--delay:-1.5s}
.nearby-stars span:nth-child(4) {--x:66%;--y:15%;--size:10px;--delay:-3.2s;--duration:4.8s}
.nearby-stars span:nth-child(5) {--x:93%;--y:10%;--size:6px;--delay:-.5s}
.nearby-stars span:nth-child(6) {--x:15%;--y:36%;--size:5px;--delay:-2.7s;--duration:5.2s}
.nearby-stars span:nth-child(7) {--x:5%;--y:53%;--size:8px;--delay:-1.8s}
.nearby-stars span:nth-child(8) {--x:89%;--y:45%;--size:11px;--delay:-3.6s;--duration:5s}
.nearby-stars span:nth-child(9) {--x:95%;--y:65%;--size:5px;--delay:-1.2s}
.nearby-stars span:nth-child(10) {--x:16%;--y:73%;--size:10px;--delay:-2.2s;--duration:4.6s}
.nearby-stars span:nth-child(11) {--x:30%;--y:88%;--size:7px;--delay:-.3s}
.nearby-stars span:nth-child(12) {--x:67%;--y:89%;--size:5px;--delay:-3s;--duration:5.5s}
.nearby-stars span:nth-child(13) {--x:85%;--y:79%;--size:9px;--delay:-1.6s}
.nearby-stars span:nth-child(14) {--x:52%;--y:77%;--size:6px;--delay:-3.4s;--duration:4.8s}
.nearby-stars span:nth-child(15) {--x:75%;--y:38%;--size:5px;--delay:-.9s}
.nearby-stars span:nth-child(16) {--x:37%;--y:27%;--size:8px;--delay:-2.5s;--duration:5s}
.nearby-stars span:nth-child(3n) {border-radius:50%;clip-path:none;background:#fffefa}
.nearby-stars span:nth-child(4n) {background:#fff1b8}
.nearby-moon {position:absolute;top:18%;right:7%;width:clamp(68px,11%,110px);filter:drop-shadow(0 6px 12px #75a6c233)}
.nearby-section .nearby-moon svg {display:block;width:100%;height:auto;fill:none;stroke:none}
@keyframes nearby-twinkle {0%,100% {opacity:.38;transform:scale(.72)}45%,55% {opacity:1;transform:scale(1.12)}}
.nearby-canvas {position:absolute;inset:0;z-index:1;background:transparent}
.nearby-canvas .maplibregl-canvas {outline-offset:-5px}
.nearby-canvas .maplibregl-ctrl-bottom-right {bottom:12px;right:10px}
.nearby-canvas .maplibregl-ctrl-bottom-left {bottom:10px;left:10px;max-width:85%}
.nearby-canvas .maplibregl-ctrl-attrib {background:#e9eff4e8;color:#12263b;font:10px/1.5 Arial,sans-serif;border-radius:6px;padding:3px 6px}
.nearby-canvas .maplibregl-ctrl-attrib a {color:#12263b}
.nearby-toolbar {position:absolute;z-index:3;top:20px;left:20px;right:20px;display:flex;justify-content:space-between;align-items:start;gap:8px;pointer-events:none}
.nearby-toolbar > * {pointer-events:auto}
.nearby-modes {display:flex;gap:4px;padding:4px;background:#ffffffd9;border:1px solid #accfe1;border-radius:12px;box-shadow:0 3px 12px #5d8ea514}
.nearby-modes button,.nearby-icon-button {border:0;border-radius:8px;color:#44637a;background:transparent;min-height:38px;padding:8px 13px;font:inherit;font-size:13px;cursor:pointer}
.nearby-modes button[aria-pressed=true] {background:#d9effb;color:#254e69;box-shadow:0 1px 5px #527b8e16}
.nearby-icon-actions {display:flex;gap:6px}
.nearby-icon-button {width:40px;padding:10px;background:#ffffffd9;border:1px solid #accfe1;box-shadow:0 3px 12px #5d8ea514}
.nearby-icon-button svg {width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;vertical-align:middle}
.nearby-map-hint {position:absolute;bottom:51px;left:22px;right:62px;z-index:2;pointer-events:none;color:#385c72;font-size:13px;line-height:1.6;background:#fffffff0;border:1px solid #b4d4e3;border-radius:10px;padding:10px 13px;width:fit-content;max-width:calc(100% - 95px);box-shadow:0 3px 15px #537f9a12}
.nearby-map-hint small {display:block;color:#647c8a;font-size:10px;margin-top:3px}
.nearby-map-state {position:absolute;left:20px;right:20px;top:90px;z-index:4;color:#385c72;background:#f6fcfff5;border:1px solid #b4d4e3;padding:13px 16px;border-radius:10px;font-size:13px;line-height:1.6}
.nearby-map-state[hidden] {display:none}
.nearby-map-state button {display:block;margin-top:9px;padding:8px 12px;border:1px solid #94bfd6;border-radius:6px;background:#dfedf7;color:#385c72;cursor:pointer;font:inherit}
.nearby-panel {padding:25px 24px 20px;display:flex;flex-direction:column;background:#fffefb;font-family:var(--font-read,Arial,sans-serif)}
.nearby-section .nearby-icon-button {color:#44637a}
.nearby-panel h3 {font-size:22px;letter-spacing:-.5px;margin:0 0 17px;color:#172e38}
.nearby-search {display:flex;gap:6px}
.nearby-search input {width:100%;min-width:0;background:white;border:1px solid #d7e2e3;border-radius:9px;padding:11px;font:inherit;font-size:12px;color:#1b343c}
.nearby-search button {width:43px;flex-shrink:0;min-height:43px;background:#203f49;color:#d1f6e7;border:0;border-radius:9px;cursor:pointer}
.nearby-search button svg {width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}
.nearby-search-help {color:#7b848a;font-size:10px;line-height:1.65;margin:7px 0 9px}
.nearby-city-shortcuts {display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.nearby-city-shortcuts button {background:#edf3f2;color:#41666c;border:0;border-radius:20px;padding:5px 12px;font:inherit;font-size:11px;cursor:pointer}
.nearby-location-buttons {display:flex;gap:6px}
.nearby-location-buttons button {min-width:0;flex:1;border:1px solid #d7e2e3;border-radius:8px;background:white;color:#294952;padding:10px 5px;font:inherit;font-size:11px;min-height:40px;cursor:pointer}
.nearby-location-buttons svg {height:13px;width:13px;fill:none;stroke:currentColor;stroke-width:1.7;vertical-align:-2px;margin-right:3px}
.nearby-selection {margin-top:20px;border-top:1px solid #e5eae6;padding-top:17px}
.nearby-label {display:block;color:#6f8085;font-size:11px;margin-bottom:6px}
.nearby-area-name {font-size:19px;color:#1d4147;margin:0;overflow-wrap:anywhere}
.nearby-coordinates {min-height:16px;display:block;font:10px/1.5 Arial,sans-serif;color:#7b8589;margin-top:3px}
.nearby-radius {display:flex;gap:6px;margin:12px 0 14px}
.nearby-radius button {flex:1;padding:9px 0;border-radius:7px;border:1px solid #dbe7e5;background:white;color:#658184;font:inherit;font-size:11px;cursor:pointer}
.nearby-radius button[aria-pressed=true] {background:#dff2eb;border-color:#88c7b4;color:#1a5747}
.nearby-google {display:flex;align-items:center;justify-content:center;gap:7px;background:#23444e;color:white;border:1px solid #23444e;border-radius:8px;min-height:43px;text-decoration:none;font-size:12px;text-align:center}
.nearby-google svg {width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.7}
.nearby-google[aria-disabled=true] {opacity:.42;cursor:default}
.nearby-tabs {display:flex;gap:15px;border-bottom:1px solid #dde6e5;margin-top:23px}
.nearby-tabs button {border:0;border-bottom:2px solid transparent;color:#869094;background:none;padding:0 1px 10px;font:inherit;font-size:13px;cursor:pointer}
.nearby-tabs button[aria-selected=true] {color:#245953;border-bottom-color:#3a9476}
.nearby-results {padding-top:17px;flex:1;min-height:105px;max-height:380px;overflow:auto}
.nearby-empty-icon {width:31px;height:31px;border-radius:9px;background:#edf4f0;color:#5b947e;display:grid;place-items:center;margin-bottom:9px}
.nearby-empty-icon svg {width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7}
.nearby-results h4 {color:#335457;font-size:13px;margin:0 0 7px}
.nearby-results p {color:#7a8589;font-size:11px;line-height:1.85;margin:0 0 9px}
.nearby-results-link {display:inline-flex;color:#327466;font-size:11px;text-decoration:underline;text-underline-offset:4px;padding:3px 0}
.nearby-status {color:#7f5840;font-size:11px;line-height:1.7;margin:10px 0 0}
.nearby-status:empty {display:none}
.nearby-privacy {color:#8a9497;font-size:9px;line-height:1.8;margin:14px 0 0;padding-top:11px;border-top:1px solid #edf0e9}
.nearby-pin {width:19px;height:19px;border-radius:50%;border:3px solid #d8fff0;background:#36c995;box-shadow:0 0 0 7px #6ff2c828,0 0 30px #71f8bfa0}
.nearby-listing {padding:12px 0;border-bottom:1px solid #e7edeb}
.nearby-listing header {display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.nearby-listing h4 {margin-bottom:5px;overflow-wrap:anywhere}
.nearby-listing .nearby-listing-distance {color:#46987d;white-space:nowrap;font-size:10px}
.nearby-listing button {border:1px solid #90b6aa;border-radius:6px;background:#f0f8f4;color:#295e50;padding:7px 11px;font:inherit;font-size:11px;cursor:pointer}
.nearby-section button:disabled {opacity:.5;cursor:default}
.nearby-section button:focus-visible,.nearby-section a:focus-visible,.nearby-section input:focus-visible {outline:3px solid #3bb898;outline-offset:3px}
.nearby-explorer:fullscreen {height:100vh;width:100vw;border-radius:0;grid-template-columns:minmax(0,1fr) 338px}
.nearby-explorer:fullscreen .nearby-stage {height:100vh}
@media (min-width:1440px) {.nearby-stage {min-height:610px}}
@media (max-width:1000px) {.nearby-explorer {grid-template-columns:minmax(0,1fr) 300px}.nearby-panel {padding:23px 18px}.nearby-stage {min-height:610px}.nearby-toolbar {top:14px;left:14px;right:14px}.nearby-modes button {padding:8px 10px}}
@media (max-width:760px) {.nearby-section {padding-top:20px;padding-bottom:30px}.nearby-explorer {grid-template-columns:1fr;border-radius:18px}.nearby-stage {min-height:420px}.nearby-panel {padding:22px}.nearby-toolbar {top:13px;left:13px;right:13px}.nearby-map-hint {left:15px;bottom:51px;font-size:11px}.nearby-map-hint small {font-size:9px}.nearby-icon-button {width:36px}.nearby-panel h3 {font-size:21px}.nearby-results {min-height:0;max-height:none}.nearby-privacy {font-size:10px}.nearby-explorer:fullscreen {display:block;overflow:auto}.nearby-explorer:fullscreen .nearby-stage {height:60vh;min-height:340px}.nearby-explorer:fullscreen .nearby-panel {min-height:40vh}.nearby-canvas .maplibregl-ctrl-attrib {font-size:9px}}
@media (max-width:760px) {.nearby-moon {width:58px;top:18%;right:5%}.nearby-stars span {max-width:8px;max-height:8px}}
@media (prefers-reduced-motion:reduce) {.nearby-section * {scroll-behavior:auto!important}.nearby-stars span {animation:none;opacity:.85;transform:none}}
