:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#06080f;--bg-2:#0b1020;--text:#f2f5ff;--muted:#f2f5ff9e;--faint:#f2f5ff61;--accent:#6ee7ff;--accent-2:#8b7cff;--accent-rgb:110, 231, 255;--accent-2-rgb:139, 124, 255;--glass:#ffffff0f;--glass-border:#ffffff1f;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-serif:"Instrument Serif", "Times New Roman", serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-soft:cubic-bezier(.2, .8, .2, 1)}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}html{overflow:hidden}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0}button{font:inherit;color:inherit}a{color:inherit;text-decoration:none}::selection{background:rgba(var(--accent-rgb), .35);color:#fff}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.reveal{opacity:0;animation:reveal 1s var(--ease-out) forwards;animation-delay:var(--d,0s);transform:translateY(16px)}@keyframes reveal{to{opacity:1;transform:translateY(0)}}@media (width<=820px){html{overflow:auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.reveal{opacity:1;transform:none}}.app{isolation:isolate;width:100%;height:100svh;min-height:640px;position:relative;overflow:hidden}.nav,.hero,.foot,.hud,.toast,.map-topbar,.loc-panel{will-change:transform;backface-visibility:hidden}.nav{z-index:10;justify-content:space-between;align-items:center;padding:22px clamp(20px,4vw,52px);display:flex;position:absolute;top:0;left:0;right:0}.logo{letter-spacing:-.02em;align-items:center;gap:11px;font-size:16px;font-weight:600;display:inline-flex}.logo-mark{width:30px;height:30px;transition:transform .5s var(--ease-soft);border-radius:10px;place-items:center;display:grid;position:relative;box-shadow:0 8px 20px -6px #6ee7ffcc,inset 0 1px #fff9}.logo-mark svg{border-radius:inherit;display:block}.logo:hover .logo-mark{transform:rotate(-8deg)scale(1.06)}.logo-accent{color:var(--muted)}.logo-hi{background:linear-gradient(92deg, var(--accent), var(--accent-2));color:#0000;-webkit-background-clip:text;background-clip:text}.glass-btn{white-space:nowrap;color:var(--text);background:var(--glass);border:1px solid var(--glass-border);transition:background .35s, border-color .35s, transform .45s var(--ease-soft);border-radius:999px;padding:10px 16px;font-size:13px;font-weight:500;position:relative;box-shadow:inset 0 1px #ffffff1f}.glass-btn:hover{background:#ffffff1c;border-color:#ffffff3d;transform:translateY(-1px)}.nav-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.nav-user{font:inherit;white-space:nowrap;color:var(--text);background:var(--glass);border:1px solid var(--glass-border);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:6px 12px 6px 6px;font-size:13px;font-weight:500;transition:background .25s,border-color .25s;display:inline-flex}.nav-user:hover{background:#ffffff1c;border-color:#ffffff3d}.nav-user-edit{color:var(--muted)}.nav-user-emoji{background:linear-gradient(160deg,#6ee7ff47,#8b7cff4d);border-radius:50%;place-items:center;width:24px;height:24px;font-size:14px;display:grid}.notif{position:relative}.notif-btn{place-items:center;width:38px;height:38px;padding:0;display:grid;position:relative}.notif-btn.has-unread{color:var(--text)}.notif-badge{text-align:center;color:#06080f;min-width:17px;height:17px;box-shadow:0 0 0 2px var(--bg);background:#fbbf77;border-radius:999px;padding:0 4px;font-size:10.5px;font-weight:700;line-height:17px;position:absolute;top:4px;right:4px}.notif-panel{width:min(380px,100vw - 40px);max-height:min(70vh,520px);animation:modal-in .35s var(--ease-out) both;z-index:30;background:linear-gradient(#181e34f7,#0a0e1cfa);border:1px solid #ffffff24;border-radius:20px;flex-direction:column;display:flex;position:absolute;top:calc(100% + 10px);right:0;overflow:hidden;box-shadow:0 30px 70px -24px #000000f2,inset 0 1px #ffffff24}.notif-head{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:14px 16px 10px;font-size:13px;font-weight:600;display:flex}.notif-empty{color:var(--muted);gap:10px;padding:22px 18px 24px;font-size:13px;line-height:1.5;display:flex}.notif-empty span{font-size:22px}.notif-list{margin:0;padding:6px;list-style:none;overflow-y:auto}.notif-item{width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:14px;grid-template-columns:40px 1fr auto;align-items:center;gap:12px;padding:10px;transition:background .25s;display:grid}.notif-item:hover{background:#ffffff12}.notif-item.unread{background:rgba(var(--accent-rgb), .07)}.notif-item.unread .notif-title:before{content:"";background:var(--accent);width:7px;height:7px;box-shadow:0 0 10px var(--accent);border-radius:50%;margin-right:7px;display:inline-block}.notif-avatar{background:linear-gradient(160deg,#6ee7ff3d,#8b7cff42);border-radius:13px;place-items:center;width:40px;height:40px;font-size:20px;display:grid}.notif-text{flex-direction:column;gap:2px;min-width:0;display:flex}.notif-title{font-size:13.5px}.notif-sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.notif-meta{color:var(--faint);flex-direction:column;align-items:flex-end;gap:3px;font-size:11px;display:flex}.notif-meta .mono{color:var(--accent)}.notif-head-actions{align-items:center;gap:8px;display:inline-flex}.notif-close{width:30px;height:30px;color:var(--muted);cursor:pointer;background:#ffffff0f;border:0;border-radius:50%;font-size:20px;line-height:1;display:none}.notif-foot{color:var(--faint);border-top:1px solid #ffffff14;padding:10px 16px 12px;font-size:11.5px;line-height:1.45}.sheet{z-index:25;width:min(360px,100vw - 40px);animation:modal-in .45s var(--ease-out) both;background:linear-gradient(#181e34f5,#0a0e1cfa);border:1px solid #ffffff24;border-radius:24px;padding:22px 22px 18px;position:absolute;top:92px;right:clamp(20px,4vw,52px);box-shadow:0 40px 90px -30px #000,inset 0 1px #ffffff24}.sheet-head{align-items:flex-start;gap:14px;padding-right:30px;display:flex}.sheet-avatar{background:linear-gradient(160deg,#6ee7ff47,#8b7cff4d);border:1px solid #ffffff29;border-radius:20px;flex:none;place-items:center;width:60px;height:60px;font-size:30px;display:grid}.sheet-kicker{letter-spacing:.05em;text-transform:uppercase;color:#fbbf77;margin-bottom:4px;font-size:11px;font-weight:600;display:inline-block}.sheet h2{font-family:var(--font-serif);letter-spacing:-.02em;margin:0;font-size:26px;font-weight:400}.sheet-building{color:var(--muted);margin:4px 0 0;font-size:13.5px;line-height:1.45}.sheet-msg{border-left:2px solid var(--accent);background:rgba(var(--accent-rgb), .07);border-radius:0 12px 12px 0;margin:16px 0 0;padding:10px 14px;font-size:13.5px;line-height:1.5}.sheet-facts{border-top:1px solid #ffffff14;border-bottom:1px solid #ffffff14;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0 0;padding:14px 0;display:grid}.sheet-facts div:nth-child(3){grid-column:1/-1}.sheet-facts dt{letter-spacing:.04em;text-transform:uppercase;color:var(--faint);font-size:11px}.sheet-facts dd{margin:3px 0 0;font-size:13.5px;font-weight:500}.sheet-links{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.sheet-links a{color:var(--text);background:#ffffff0f;border:1px solid #ffffff1a;border-radius:999px;padding:6px 11px;font-size:12.5px;text-decoration:none;transition:background .25s,border-color .25s}.sheet-links a:hover{border-color:rgba(var(--accent-rgb), .4);background:#ffffff1c}.sheet-none{color:var(--faint);font-size:12.5px}.sheet-grip{display:none}.sheet-locked{width:100%;font:inherit;text-align:left;color:var(--text);background:rgba(var(--accent-rgb), .08);border:1px solid rgba(var(--accent-rgb), .3);cursor:pointer;border-radius:12px;padding:10px 12px;font-size:12.5px}.sheet-actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.sheet-actions .glass-btn{cursor:pointer;flex:140px;justify-content:center;align-items:center;gap:6px;display:inline-flex}.sheet-hint{color:var(--faint);margin:10px 0 0;font-size:12px;line-height:1.45}.sheet-hint.ok{color:#86efac}.sheet-hint.err{color:#ffb4b4}.sheet-poke{transition:background .3s, color .3s, transform .3s var(--ease-soft), opacity .3s;position:relative;overflow:hidden}.sheet-poke:disabled{cursor:default;transform:none}.sheet-poke .poke-hand{transform-origin:70% 70%;display:inline-block}.sheet-poke:hover:not(:disabled) .poke-hand{animation:.7s ease-in-out wave}@keyframes wave{0%,to{transform:rotate(0)}25%{transform:rotate(18deg)}75%{transform:rotate(-12deg)}}.sheet-poke.is-sending{opacity:.85}.poke-spin{border:2px solid #06080f40;border-top-color:#06080f;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin-icon}.glass-btn.primary.sheet-poke.is-sent{color:#06080f;animation:poke-pop .5s var(--ease-out);background:#22c55e}@keyframes poke-pop{0%{transform:scale(.94)}55%{transform:scale(1.05)}to{transform:scale(1)}}.poke-check path{stroke-dasharray:24;stroke-dashoffset:24px;animation:check-draw .45s var(--ease-out) .1s forwards}@keyframes check-draw{to{stroke-dashoffset:0}}.wa-prompt{background:#25d36614;border:1px solid #25d3664d;border-radius:14px;flex-direction:column;gap:8px;margin-top:12px;padding:12px;display:flex}.wa-prompt.compact{background:0 0;border:0;margin:0;padding:0}.wa-prompt-text{color:var(--muted);font-size:12.5px;line-height:1.45}.wa-prompt-text strong{color:var(--text);font-weight:600}.wa-prompt-row{gap:8px;display:flex}.wa-prompt-row input{min-width:0;color:var(--text);font:inherit;background:#ffffff0d;border:1px solid #ffffff24;border-radius:10px;outline:none;flex:1;padding:9px 12px;font-size:14px}.wa-prompt-row input:focus{border-color:#25d36699}.wa-prompt-row .glass-btn{cursor:pointer;color:#06080f;background:#25d366;border-color:#0000;flex:none;font-weight:600}.wa-prompt-row .glass-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.glass-btn.primary.sheet-poke{color:#06080f;background:linear-gradient(135deg,#6ee7ff,#8b7cff);border-color:#0000;font-weight:600}.glass-btn.ghost{color:var(--muted);cursor:pointer;background:0 0;border-color:#0000}.glass-btn.ghost:hover{color:var(--text);background:#ffffff12}.glass-btn.primary{background:#ffffff17;border-color:#ffffff2e}.app.is-landing{cursor:pointer}.app.is-landing .hero,.app.is-landing .nav{cursor:default}.loc-panel{z-index:8;width:272px;animation:reveal .9s var(--ease-out) .3s both;background:linear-gradient(#181e34f0,#0a0e1cf5);border:1px solid #ffffff24;border-radius:20px;padding:14px 16px 13px;position:absolute;top:84px;left:clamp(20px,4vw,52px);box-shadow:0 30px 70px -24px #000000f2,0 0 0 1px #6ee7ff14,inset 0 1px #ffffff24}.loc-head{align-items:center;gap:8px;display:flex}.loc-pin{background:radial-gradient(closest-side,#6ee7ff59,#0000);border-radius:50%;place-items:center;width:18px;height:18px;display:grid;position:relative}.loc-pin-dot{background:linear-gradient(135deg,#7ee9ff,#8b7cff);border-radius:50%;width:8px;height:8px;box-shadow:0 0 10px #6ee7ffe6}.loc-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);flex:1;font-size:11px;font-weight:600}.loc-live{color:#4ade80;background:#4ade801f;border:1px solid #4ade804d;border-radius:999px;align-items:center;gap:5px;padding:2px 8px;font-size:10.5px;font-weight:600;display:inline-flex}.loc-live:before{content:"";background:#4ade80;border-radius:50%;width:6px;height:6px;box-shadow:0 0 8px #4ade80}.loc-area{font-family:var(--font-serif);letter-spacing:-.02em;margin-top:10px;font-size:26px;line-height:1.05}.loc-area.loading{color:var(--muted);font-size:18px;font-family:var(--font-sans)}.loc-line{color:var(--text);margin-top:6px;font-size:13px}.loc-line.muted{color:var(--muted);margin-top:2px;font-size:12px}.loc-coords{color:var(--accent);margin-top:10px;font-size:11.5px}.loc-meta{color:var(--muted);border-top:1px solid #ffffff14;align-items:center;gap:8px;margin-top:8px;padding-top:8px;font-size:11.5px;display:flex}.loc-meta .mono{color:var(--text)}.hero{z-index:5;pointer-events:none;max-width:600px;transition:opacity .3s var(--ease-soft), transform .35s var(--ease-soft), visibility 0s linear .35s;position:absolute;top:50%;left:clamp(20px,6vw,110px);transform:translateY(-50%)}.hero .cta,.hero .hero-chip{pointer-events:auto}.hero.is-hidden{opacity:0;visibility:hidden;transform:translateY(-50%)translate(-40px)}.hero.is-hidden .cta,.hero.is-hidden .hero-chip{pointer-events:none}.hero:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(closest-side,#06080feb,#06080f80 55%,#0000);position:absolute;inset:-120px -180px -120px -160px}.hero-chip{color:var(--muted);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:999px;align-items:center;gap:9px;padding:7px 12px 7px 9px;font-size:12.5px;display:inline-flex}.hero-chip .mono{color:var(--text);font-weight:500}.hero-chip-dot{background:#4ade80;border-radius:50%;width:8px;height:8px;position:relative;box-shadow:0 0 12px #4ade80}.hero-chip-dot:after{content:"";border:1px solid #4ade80b3;border-radius:50%;animation:2s ease-out infinite chip-ping;position:absolute;inset:-4px}@keyframes chip-ping{0%{opacity:1;transform:scale(.5)}to{opacity:0;transform:scale(1.8)}}.hero h1{font-family:var(--font-serif);letter-spacing:-.025em;margin:26px 0 18px;font-size:clamp(48px,6.6vw,98px);font-weight:400;line-height:.96}.hero h1 em{background:linear-gradient(94deg, #fff 0%, var(--accent) 48%, var(--accent-2) 100%);color:#0000;-webkit-background-clip:text;background-clip:text;padding-right:.08em;font-style:italic}.hero-sub{max-width:440px;color:var(--muted);text-wrap:balance;margin:0;font-size:clamp(16px,1.3vw,18px);line-height:1.55}.hero-actions{flex-wrap:wrap;align-items:center;gap:18px;margin-top:34px;display:flex}.hero-hint{color:var(--faint);letter-spacing:.01em;font-size:12.5px}.lite-scene{pointer-events:none;background:radial-gradient(900px 600px at 62% 42%, #0e1730 0%, #0e173000 60%), radial-gradient(700px 500px at 20% 90%, #8b7cff1f 0%, #8b7cff00 60%), var(--bg);animation:.6s ease-out both map-fade;position:absolute;inset:0;overflow:hidden}.lite-grid{background-image:linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);background-size:40px 40px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(closest-side at 50% 55%,#000 30%,#0000 100%);mask-image:radial-gradient(closest-side at 50% 55%,#000 30%,#0000 100%)}.lite-plane{width:0;height:0;animation:lite-in .9s var(--ease-out) both;position:absolute;top:50%;left:62%}@keyframes lite-in{0%{opacity:0;transform:scale(1.12)}to{opacity:1;transform:scale(1)}}.lite-rings{position:absolute;top:-400px;left:-400px;overflow:visible}.lite-rings circle{fill:none;stroke:#6ee7ff29;stroke-width:1px}.lite-rings text{font-family:var(--font-mono);fill:#f2f5ff59;font-size:10px}.lite-rings line{stroke:#6ee7ff66;stroke-width:1.2px;stroke-dasharray:4 5}.lite-you{position:absolute;top:0;left:0}.lite-you-dot{background:#6ee7ff;border:3px solid #fff;border-radius:50%;width:16px;height:16px;position:absolute;top:-8px;left:-8px}.lite-you .lite-tag{top:12px}.lite-tag{white-space:nowrap;color:var(--text);background:#0a0e1ce6;border:1px solid #ffffff24;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:600;position:absolute;top:22px;left:0;transform:translate(-50%)}.lite-tag b{color:var(--accent);margin-left:3px;font-weight:500}.lite-pin{left:var(--dx);top:var(--dy);pointer-events:auto;cursor:pointer;width:0;height:0;animation:lite-pin-in .5s var(--ease-out) both;animation-delay:var(--d);background:0 0;border:0;padding:0;position:absolute}@keyframes lite-pin-in{0%{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:translateY(0)}}.lite-pin-head{background:#171c2e;border:2.5px solid #fff;border-radius:50%;place-items:center;width:36px;height:36px;font-size:17px;display:grid;position:absolute;top:-18px;left:-18px;box-shadow:0 4px 12px #00000080}.lite-pin.faint{opacity:.45}.lite-pin.faint .lite-tag{display:none}.lite-fog{background:linear-gradient(to right, var(--bg) 0%, #06080fd9 22%, #06080f00 48%), linear-gradient(to bottom, var(--bg) 0%, #06080f00 20%), linear-gradient(to top, var(--bg) 0%, #06080f00 22%);position:absolute;inset:0}.app.is-overlay .lite-scene,.app.is-overlay .hero,.app.is-overlay .hud,.app.is-overlay .map-topbar,.app.is-overlay .loc-panel,.app.is-overlay .sheet{display:none}.cta{cursor:pointer;color:#06080f;letter-spacing:-.005em;isolation:isolate;transition:transform .5s var(--ease-soft), box-shadow .5s var(--ease-soft), background-position .9s var(--ease-soft);background:linear-gradient(135deg,#8df0ff 0%,#6ee7ff 40%,#8b7cff 100%) 0%/160% 160%;border:0;border-radius:999px;align-items:center;gap:12px;padding:15px 18px 15px 24px;font-size:15px;font-weight:600;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 14px 34px -12px #6ee7ffb3,inset 0 0 0 1px #ffffff40,inset 0 1px #ffffff80}.cta:before{content:"";transition:transform 1s var(--ease-soft);background:linear-gradient(115deg,#0000 32%,#ffffffa6 50%,#0000 68%);position:absolute;inset:0;transform:translate(-130%)}.cta:after{content:"";border-radius:inherit;opacity:0;z-index:-1;border:1.5px solid #6ee7ffb3;position:absolute;inset:-3px}.cta:hover{background-position:100%;transform:translateY(-2px);box-shadow:0 22px 46px -12px #6ee7ffd9,inset 0 0 0 1px #ffffff59,inset 0 1px #fff9}.cta:hover:before{transform:translate(130%)}.cta:active{transform:translateY(0)scale(.985)}.cta:disabled{cursor:progress}.cta:focus-visible{outline-offset:3px;outline:2px solid #fff}.cta-label{display:grid;position:relative}.cta-text{transition:transform .5s var(--ease-soft), opacity .35s;grid-area:1/1}.cta-text.alt{opacity:0;transform:translateY(12px)}.cta.is-scanning .cta-text{opacity:0;transform:translateY(-12px)}.cta.is-scanning .cta-text.alt{opacity:1;transform:translateY(0)}.cta.is-scanning:after{animation:1.2s ease-out infinite cta-ping}@keyframes cta-ping{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.18)}}.cta-icon{width:32px;height:32px;transition:transform .5s var(--ease-soft), background .4s;background:#06080f24;border-radius:50%;place-items:center;display:grid}.cta:hover .cta-icon{background:#06080f38;transform:translate(4px)}.cta.is-scanning .cta-icon svg{animation:1s linear infinite spin-icon}@keyframes spin-icon{to{transform:rotate(360deg)}}.hud-top{scrollbar-width:none;gap:6px;margin:0;padding:0 14px 12px;list-style:none;display:flex;overflow-x:auto}.hud-top::-webkit-scrollbar{display:none}.hud-top li{flex:none}.hud-top button{color:var(--text);font:inherit;cursor:pointer;transition:background .25s, border-color .25s, transform .3s var(--ease-soft);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:999px;align-items:center;gap:7px;padding:6px 10px 6px 7px;font-size:12.5px;display:inline-flex}.hud-top button:hover{border-color:rgba(var(--accent-rgb), .4);background:#ffffff1a;transform:translateY(-1px)}.hud-top-rank{color:#06080f;background:linear-gradient(135deg,#6ee7ff,#8b7cff);border-radius:50%;place-items:center;width:18px;height:18px;font-size:10.5px;display:grid}.hud-top li:first-child .hud-top-rank{box-shadow:0 0 0 3px rgba(var(--accent-rgb), .25)}.hud-top-avatar{font-size:15px}.hud-top-name{font-weight:600}.hud-top-dist{color:var(--accent);font-size:11.5px}.hud{z-index:8;background:linear-gradient(#141a2ec7,#0a0e1cdb);border:1px solid #ffffff24;border-radius:22px;width:min(560px,100vw - 40px);position:absolute;bottom:30px;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 30px 70px -24px #000000f2,inset 0 1px #ffffff29}.hud-main{align-items:center;gap:14px;padding:16px 18px 14px;display:flex}.hud-icon{width:36px;height:36px;color:var(--accent);background:#6ee7ff1f;border:1px solid #6ee7ff40;border-radius:12px;flex:none;place-items:center;display:grid}.hud-icon.spin svg{animation:.9s linear infinite spin-icon}.hud-icon.explore{color:var(--accent-2);background:#8b7cff24;border-color:#8b7cff4d}.hud-icon.done{color:#4ade80;background:#4ade801f;border-color:#4ade804d}.hud-text{letter-spacing:-.005em;flex-direction:column;flex:1;gap:3px;min-width:0;font-size:14px;display:flex}.hud-text strong{font-weight:600}.hud-sub{color:var(--muted);font-size:12.5px}.hud-accent{color:var(--accent)}.hud-coords{text-align:right;color:var(--faint);border-left:1px solid #ffffff14;flex:none;padding-left:14px;font-size:11px;line-height:1.5}.hud-foot{background:#ffffff05;border-top:1px solid #ffffff14;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;padding:9px 12px;display:flex}.hud-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.hud-btn{color:var(--muted);white-space:nowrap;cursor:pointer;transition:background .3s, color .3s, border-color .3s, transform .4s var(--ease-soft);background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:7px 11px 7px 9px;font-size:12.5px;font-weight:500;display:inline-flex}.hud-btn:hover:not(:disabled){color:var(--text);background:#ffffff14}.hud-btn.primary{color:#06080f;background:linear-gradient(135deg,#8df0ff,#8b7cff);padding:7px 13px 7px 10px;font-weight:600;box-shadow:0 10px 24px -12px #6ee7ffcc}.hud-btn.primary:hover:not(:disabled){color:#06080f;background:linear-gradient(135deg,#a5f4ff,#9c8fff);transform:translateY(-1px)}.hud-btn:disabled{cursor:progress;opacity:.8}.hud-btn.accent{color:var(--accent);border-color:rgba(var(--accent-rgb), .35);background:rgba(var(--accent-rgb), .08)}.hud-btn.accent:hover:not(:disabled){color:var(--accent);background:rgba(var(--accent-rgb), .14)}.hud-btn-spin{place-items:center;display:grid}.hud-btn-spin svg{animation:.9s linear infinite spin-icon}.hud-attr{color:var(--faint);padding-right:6px;font-size:10.5px}.is-google .logo-text,.is-google .glass-btn{text-shadow:0 1px 12px #000c}.is-google .glass-btn{background:#0a0e1c99;border-color:#fff3}@media (width<=1400px){.is-google .nav .glass-btn.secondary{display:none}}.map-topbar{z-index:12;animation:topbar-in .8s var(--ease-out) both;align-items:flex-start;gap:10px;display:flex;position:absolute;top:22px;left:50%;transform:translate(-50%)}@keyframes topbar-in{0%{opacity:0;transform:translate(-50%)translateY(16px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.msearch{width:300px;transition:width .5s var(--ease-soft);position:relative}.msearch.open{width:400px}.msearch-bar{height:42px;color:var(--muted);transition:border-color .35s, box-shadow .45s var(--ease-soft);background:#0a0e1cb8;border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:10px;padding:0 12px 0 14px;display:flex;position:relative;box-shadow:0 20px 50px -20px #000000e6,inset 0 1px #ffffff1f}.msearch.open .msearch-bar{color:var(--text);border-color:#6ee7ff8c;box-shadow:0 20px 50px -20px #000000e6,0 0 0 4px #6ee7ff24,0 0 30px -6px #8b7cff80,inset 0 1px #ffffff1f}.msearch-icon{flex:none;transition:color .3s}.msearch.open .msearch-icon{color:var(--accent)}.msearch input{min-width:0;color:var(--text);font:inherit;background:0 0;border:0;outline:0;flex:1;font-size:14px}.msearch input::placeholder{color:var(--muted)}.msearch input::-webkit-search-cancel-button{display:none}.msearch-clear{width:24px;height:24px;color:var(--text);cursor:pointer;background:#ffffff1a;border:0;border-radius:50%;flex:none;font-size:16px;line-height:1}.msearch-list{animation:reveal .35s var(--ease-out) both;background:#0c101ee6;border:1px solid #ffffff24;border-radius:20px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 8px);left:0;right:0;box-shadow:0 30px 70px -24px #000000f2}.msearch-list li button{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:14px;align-items:center;gap:12px;padding:9px 10px;transition:background .25s;display:flex}.msearch-list li button:hover,.msearch-list li button:focus-visible{background:#ffffff14;outline:none}.msearch-avatar{background:linear-gradient(160deg,#6ee7ff40,#8b7cff40);border-radius:11px;flex:none;place-items:center;width:34px;height:34px;font-size:18px;display:grid}.msearch-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.msearch-name{font-size:13.5px;font-weight:600}.msearch-sub{color:var(--muted);font-size:12px}.msearch-dist{color:var(--accent);font-size:12px}.msearch-empty{color:var(--muted);padding:12px 14px;font-size:13px}@keyframes map-fade{0%{opacity:0}to{opacity:1}}.modal-backdrop{z-index:50;background:radial-gradient(900px 600px at 75% 20%, rgba(var(--accent-2-rgb), .16), transparent 70%), radial-gradient(700px 500px at 15% 90%, rgba(var(--accent-rgb), .1), transparent 70%), var(--bg);place-items:center;padding:20px;animation:.2s ease-out both map-fade;display:grid;position:fixed;inset:0}.modal{text-align:center;width:min(420px,100%);animation:modal-in .35s var(--ease-out) both;background:linear-gradient(#181e34fa,#0a0e1cfc);border:1px solid #ffffff24;border-radius:28px;padding:28px 28px 20px;position:relative;box-shadow:0 40px 100px -30px #000}.modal.login{text-align:left}.modal.login:before{content:"";background:radial-gradient(400px 160px at 20% 0%, rgba(var(--accent-rgb), .18), transparent 70%);pointer-events:none;border-radius:28px 28px 0 0;height:160px;position:absolute;inset:0 0 auto}.login-brand{letter-spacing:-.02em;align-items:center;gap:9px;margin-bottom:18px;font-size:15px;font-weight:600;display:inline-flex;position:relative}.login-brand .logo-mark{width:26px;height:26px;box-shadow:none;border-radius:8px}.login-founder{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:14px;align-items:center;gap:10px;margin-bottom:14px;padding:8px 10px;display:flex;position:relative}.login-founder-avatar{background:#ffffff14;border-radius:11px;place-items:center;width:36px;height:36px;font-size:18px;display:grid}.login-founder strong{font-size:13.5px;display:block}.login-founder small{color:var(--muted);font-size:12px;display:block}.modal.login h2{font-size:28px}.modal.login p{max-width:none;margin:0 0 20px}.login-or{color:var(--faint);align-items:center;gap:10px;font-size:11.5px;display:flex}.login-or:before,.login-or:after{content:"";background:#ffffff1a;flex:1;height:1px}.auth-btn.google{color:#1f1f1f;background:#fff;border-color:#fff;justify-content:center;padding:12px 14px;font-size:14.5px}.auth-btn.google:hover{background:#f2f5ff}.login-features{color:var(--muted);border-top:1px solid #ffffff14;flex-direction:column;gap:8px;margin:20px 0 0;padding:14px 0 0;font-size:12.5px;line-height:1.45;list-style:none;display:flex}.login-features li{align-items:flex-start;gap:9px;display:flex}.login-features li span{text-align:center;flex:none;width:22px}@keyframes modal-in{0%{opacity:0;transform:translateY(24px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-close{width:34px;height:34px;color:var(--muted);cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:50%;place-items:center;transition:background .3s,color .3s;display:grid;position:absolute;top:14px;right:14px}.modal-close:hover{color:var(--text);background:#ffffff1f}.modal h2{font-family:var(--font-serif);letter-spacing:-.02em;margin:0 0 8px;font-size:30px;font-weight:400}.modal p{max-width:320px;color:var(--muted);margin:0 auto 22px;font-size:14px;line-height:1.5}.modal-actions{flex-direction:column;gap:10px;display:flex}.auth-btn{color:var(--text);cursor:pointer;transition:background .3s, border-color .3s, transform .4s var(--ease-soft);background:#ffffff0f;border:1px solid #ffffff1f;border-radius:14px;align-items:center;gap:12px;padding:11px 14px;font-size:14px;font-weight:600;display:flex}.auth-btn:hover{background:#ffffff1a;border-color:#ffffff38;transform:translateY(-1px)}.auth-badge{border-radius:8px;flex:none;place-items:center;width:26px;height:26px;font-size:14px;font-weight:800;display:grid}.auth-badge.google{background:conic-gradient(#ea4335 0 25%, #fbbc05 0 50%, #34a853 0 75%, #4285f4 0);color:#fff;text-shadow:0 1px 2px #00000059}.auth-badge.apple{color:#000;background:#fff;font-size:16px}.auth-badge.email{color:#06080f;background:linear-gradient(135deg,#6ee7ff,#8b7cff)}.modal-foot{color:var(--faint);margin-top:16px;font-size:11.5px;display:block}.auth-btn:disabled{opacity:.6;cursor:progress;transform:none}.auth-form{text-align:left;flex-direction:column;gap:10px;display:flex}.field{color:var(--muted);flex-direction:column;gap:6px;font-size:12.5px;display:flex}.field input{width:100%;color:var(--text);font:inherit;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:12px;outline:none;padding:11px 13px;font-size:14px;transition:border-color .25s,background .25s,box-shadow .25s}.field input::placeholder{color:var(--faint)}.field input:focus{border-color:rgba(var(--accent-rgb), .6);box-shadow:0 0 0 3px rgba(var(--accent-rgb), .16);background:#ffffff14}.auth-btn.submit{color:#06080f;background:linear-gradient(135deg,#6ee7ff,#8b7cff);border-color:#0000;justify-content:center;margin-top:4px}.auth-btn.submit:hover{background:linear-gradient(135deg,#8df0ff,#a294ff)}.auth-link{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;align-self:center;padding:4px 6px;font-size:12.5px}.auth-link:hover{text-decoration:underline}.auth-link.muted{color:var(--faint)}.auth-msg{text-align:left;border-radius:12px;margin-top:14px;padding:10px 12px;font-size:13px;line-height:1.45}.auth-msg.error{color:#ffb4b4;background:#ff6e6e1f;border:1px solid #ff6e6e4d}.auth-msg.ok{color:#bdf3ff;background:#6ee7ff1a;border:1px solid #6ee7ff4d}.onb{z-index:60;background:var(--bg);place-items:start center;padding:clamp(24px,6vh,64px) 16px 48px;display:grid;position:fixed;inset:0;overflow-y:auto}.onb-card{background:linear-gradient(#181e34e6,#0a0e1cf5);border:1px solid #ffffff1f;border-radius:24px;flex-direction:column;gap:22px;width:min(560px,100%);padding:clamp(24px,4vw,36px);display:flex;position:relative;box-shadow:0 40px 100px -30px #000}.onb.is-wide .onb-card{width:min(820px,100%)}.onb-body.onb-grid{grid-template-columns:1fr 1fr;align-items:start;gap:18px 22px;display:grid}.onb-grid .wide{grid-column:1/-1}.onb-card .modal-close{top:18px;right:18px}.onb-tabs{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:14px;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;display:grid}.onb-tabs button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:9px 6px;font-size:12.5px;font-weight:600;transition:background .25s,color .25s;display:inline-flex}.onb-tab-n{width:18px;height:18px;color:var(--muted);background:#ffffff14;border-radius:50%;place-items:center;font-size:10.5px;display:grid}.onb-tabs button.on{color:var(--text);background:#ffffff1f}.onb-tabs button.on .onb-tab-n,.onb-tabs button.done .onb-tab-n{color:#06080f;background:linear-gradient(135deg,#6ee7ff,#8b7cff)}.onb-tabs button.has-error .onb-tab-n{color:#06080f;background:#ff8a8a}.onb-body{flex-direction:column;gap:18px;min-height:150px;display:flex}.onb-kicker{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);background:rgba(var(--accent-rgb), .1);border:1px solid rgba(var(--accent-rgb), .25);border-radius:999px;margin-bottom:10px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-block}.onb-head h1{font-family:var(--font-serif);letter-spacing:-.02em;margin:0 0 8px;font-size:clamp(28px,5vw,36px);font-weight:400}.onb-head p{color:var(--muted);margin:0;font-size:14px;line-height:1.55}.onb-head strong{color:var(--text);font-weight:500}.onb-section{border-top:1px solid #ffffff14;padding-top:18px}.onb-label{color:var(--text);margin-bottom:8px;font-size:12.5px;font-weight:600}.req{color:#fbbf77;margin-left:6px;font-size:11px;font-weight:600}.hint{color:var(--faint);margin-left:6px;font-weight:400}.onb-avatar-row{align-items:flex-start;gap:18px;margin-top:8px;display:flex}.onb-avatar-preview{background:#ffffff0f;border:1px solid #ffffff29;border-radius:20px;flex:none;place-items:center;width:64px;height:64px;font-size:34px;display:grid}.onb-emoji-grid{flex-wrap:wrap;gap:6px;display:flex}.onb-emoji{cursor:pointer;width:40px;height:40px;transition:transform .3s var(--ease-soft), background .25s, border-color .25s;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;font-size:22px}.onb-emoji:hover{background:#ffffff1a;transform:translateY(-2px)scale(1.06)}.onb-emoji.on{background:rgba(var(--accent-rgb), .18);border-color:rgba(var(--accent-rgb), .6)}.onb-field{flex-direction:column;gap:8px;display:flex}.field-label{color:var(--text);align-items:baseline;font-weight:600;display:flex}.field-err{color:#ffb4b4;font-size:12px}.field-note{color:var(--faint);font-size:12px;line-height:1.45}.field.has-error input{border-color:#ff6e6e8c}.onb-seg{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;padding:3px;display:flex}.onb-seg button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;flex:1;padding:8px 6px;font-size:12.5px;font-weight:500;transition:background .25s,color .25s}.onb-seg button.on{color:var(--text);background:#ffffff1f}.onb-loc{background:#fbbf770f;border:1px solid #fbbf774d;border-radius:18px;align-items:center;gap:14px;margin-top:4px;padding:16px;transition:border-color .4s,background .4s;display:flex}.onb-loc.granted{background:#6ee7ff12;border-color:#6ee7ff59}.onb-loc.denied,.onb-loc.error,.onb-loc.unsupported{background:#ff6e6e12;border-color:#ff6e6e66}.onb-loc-icon{background:#ffffff0f;border-radius:14px;flex:none;place-items:center;width:44px;height:44px;font-size:22px;display:grid}.onb-loc.asking .onb-loc-icon{animation:1.4s linear infinite spin-icon}.onb-loc-text{flex:1;min-width:0}.onb-loc-text p{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.onb-loc-err{color:#ffb4b4!important}.onb-loc .glass-btn{cursor:pointer;flex:none}.onb-foot{justify-content:space-between;align-items:center;gap:12px;padding-top:6px;display:flex}.glass-btn.primary.onb-submit{cursor:pointer;color:#06080f;background:linear-gradient(135deg,#6ee7ff,#8b7cff);border-color:#0000;padding:12px 22px;font-size:14px;font-weight:600}.glass-btn.primary.onb-submit:hover{background:linear-gradient(135deg,#8df0ff,#a294ff)}.glass-btn.primary.onb-submit:disabled{opacity:.45;cursor:not-allowed;transform:none}@media (width<=820px){.onb{place-items:stretch stretch;padding:0}.onb-card{min-height:100svh;padding:20px 18px calc(20px + env(safe-area-inset-bottom));box-shadow:none;border:0;border-radius:0;gap:18px}.onb-head h1{margin-bottom:0;font-size:26px}.onb-body{animation:reveal .35s var(--ease-out) both;flex:1}.onb-foot{padding:12px 18px calc(14px + env(safe-area-inset-bottom));background:#0a0e1cf5;border-top:1px solid #ffffff14;margin:0 -18px -20px;position:sticky;bottom:0}.glass-btn.primary.onb-submit{text-align:center;flex:1}.onb-loc{flex-wrap:wrap}.onb-loc .glass-btn{width:100%}.onb-emoji{width:44px;height:44px}}.toast{z-index:20;color:var(--text);opacity:0;pointer-events:none;transition:opacity .45s var(--ease-soft), transform .6s var(--ease-soft);white-space:nowrap;background:#14101ed1;border:1px solid #ffbe784d;border-radius:999px;align-items:center;gap:10px;padding:11px 16px 11px 12px;font-size:13.5px;display:inline-flex;position:absolute;top:92px;left:50%;transform:translate(-50%)translateY(-14px);box-shadow:0 20px 50px -20px #000000e6}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}.toast-icon{color:#fbbf77;place-items:center;display:grid}.is-immersive .foot{visibility:hidden;pointer-events:none}.foot{z-index:6;color:var(--faint);align-items:center;gap:12px;font-size:12px;display:flex;position:absolute;bottom:30px;left:clamp(20px,4vw,52px)}.foot-sep{background:#ffffff40;border-radius:50%;width:3px;height:3px}@media (width<=820px){.app{height:auto;min-height:100svh}.app.is-google{height:100svh;min-height:0;overflow:hidden}.nav{gap:10px;padding:14px 16px}.nav .glass-btn{padding:8px 13px;font-size:12.5px}.nav .glass-btn.secondary{display:none}.logo{gap:9px;font-size:15px}.logo-mark{width:28px;height:28px}.nav.is-compact .logo-text{display:none}.hero{text-align:center;flex-direction:column;align-items:center;max-width:none;padding:110px 24px 0;display:flex;position:relative;top:auto;left:auto;transform:none}.hero:before{background:radial-gradient(closest-side,#06080fe6,#0000);inset:-40px -40px -120px}.hero h1{margin:20px 0 14px;font-size:clamp(44px,12vw,64px)}.hero-actions{justify-content:center;margin-top:26px}.hero.is-hidden{transform:translateY(-16px)}.lite-plane{transform-origin:0 0;top:68%;left:50%}.lite-fog{background:linear-gradient(to bottom, var(--bg) 0%, #06080fe6 36%, #06080f00 60%), linear-gradient(to top, var(--bg) 0%, #06080f00 16%)}.lite-pin.faint,.loc-panel{display:none}.map-topbar{flex-direction:row;align-items:center;gap:8px;width:auto;animation:none;top:64px;left:12px;right:12px;transform:none}.msearch,.msearch.open{flex:1;width:auto;min-width:0}.msearch input{font-size:16px}.map-toggle{align-self:auto}.map-toggle button{height:36px}.hud{width:100%;padding-bottom:env(safe-area-inset-bottom);background:#0c101ef7;border-bottom:0;border-radius:20px 20px 0 0;animation:none;bottom:0;left:0;right:0;transform:none}.hud-main{gap:12px;padding:14px 16px 10px}.hud-icon{width:32px;height:32px}.hud-text{font-size:13.5px}.hud-coords{display:none}.hud-top{padding:0 12px 10px}.hud-top button{padding:8px 12px 8px 8px;font-size:13px}.hud-foot{flex-wrap:wrap;gap:6px;padding:8px 10px}.hud-actions{flex-wrap:wrap}.hud-btn{padding:9px 12px 9px 10px;font-size:13px}.hud-attr{display:none}.sheet{width:100%;max-height:60svh;padding:10px 18px calc(16px + env(safe-area-inset-bottom));animation:sheet-up .3s var(--ease-out) both;background:#0c101ef7;border-bottom:0;border-radius:20px 20px 0 0;inset:auto 0 0;overflow-y:auto}.sheet-grip{background:#fff3;border-radius:999px;width:40px;height:4px;margin:0 auto 10px;display:block}.sheet-avatar{border-radius:14px;width:48px;height:48px;font-size:24px}.sheet h2{font-size:22px}.sheet-facts{margin-top:12px;padding:10px 0}.sheet-links{margin-top:10px}.sheet-actions{margin-top:12px}.sheet-actions .glass-btn{text-align:center;padding:11px 16px;font-size:14px}.notif-panel{width:auto;max-height:calc(100svh - 80px);animation:sheet-up .25s var(--ease-out) both;position:fixed;top:64px;left:12px;right:12px}.notif-close{place-items:center;display:grid}.notif-item{grid-template-columns:40px 1fr;row-gap:4px}.notif-sub{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.notif-meta{flex-direction:row;grid-column:2;align-items:center;gap:10px}.modal{padding:28px 20px 18px}.modal-backdrop{place-items:stretch stretch;padding:0}.modal.login{width:100%;min-height:100svh;box-shadow:none;padding:76px 22px calc(24px + env(safe-area-inset-bottom));background:0 0;border:0;border-radius:0;animation:.2s ease-out both map-fade;overflow-y:auto}.modal.login:before,.modal.login .sheet-grip{display:none}.modal.login h2{font-size:26px}.modal.login .modal-close{top:18px;right:18px}.wa-prompt-row input{font-size:16px}.wa-prompt-row .glass-btn{padding:10px 16px}.field input{font-size:16px}.toast{top:auto;bottom:calc(var(--hud-h,210px) + 16px);white-space:normal;border-radius:16px;width:calc(100vw - 32px);transform:translate(-50%)translateY(10px)}.toast.show{transform:translate(-50%)translateY(0)}.foot{white-space:nowrap;justify-content:center;font-size:11px;position:fixed;bottom:18px;left:16px;right:16px}}@keyframes sheet-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}:root:has(.app.is-google){overflow:hidden}@media (width<=420px){.nav{padding:12px}.nav-user{gap:0;padding:5px}.nav-user-name,.nav-user-edit{display:none}.notif-btn{width:34px;height:34px}.map-toggle button span,.map-toggle button{gap:0;padding:0 12px;font-size:0}.map-toggle button svg{width:17px;height:17px}}.gmap{z-index:1;animation:gmap-in .55s var(--ease-out) both;background:#0b0f1a;position:absolute;inset:0}@keyframes gmap-in{0%{opacity:0;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}.fm{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:#0b0f1a;position:absolute;inset:0;overflow:hidden}.fm.is-dragging{cursor:grabbing}.fm-layer{transform-origin:0 0;will-change:transform;width:0;height:0;position:absolute;top:0;left:0}.fm-tiles{z-index:1}.fm-tile{pointer-events:none;image-rendering:auto;backface-visibility:hidden;display:block;position:absolute}.fm-tile.base{filter:saturate(.9)brightness(.92)}.fm-tile.label{opacity:.85}.fm-tile.is-old{opacity:.6}.fm-world{z-index:3}.fm-route-line{height:calc(2px / var(--k,1));margin-top:calc(-1px / var(--k,1));transform-origin:0;background:repeating-linear-gradient(90deg, #6ee7ffe6 0 calc(7px / var(--k,1)), transparent calc(7px / var(--k,1)) calc(13px / var(--k,1)));pointer-events:none;position:absolute;top:0;left:0}.fm-route-chip{transform:translate(-50%, -50%) scale(var(--ik,1));color:#06080f;pointer-events:none;white-space:nowrap;background:#6ee7fff2;border-radius:999px;padding:3px 8px;font-size:11px;position:absolute}.fm-sep{background:#ffffff59;border-radius:50%;width:3px;height:3px}.fm-roam{pointer-events:none;border:1px dashed #ffffff38;border-radius:50%;position:absolute;top:0;left:0}.fm-accuracy{pointer-events:none;background:#6ee7ff1a;border:1px solid #6ee7ff4d;border-radius:50%;position:absolute;top:0;left:0}.fm-you{transform:scale(var(--ik,1));transform-origin:0 0;pointer-events:none;z-index:4;position:absolute;top:0;left:0}.fm-dot{background:#6ee7ff;border:3px solid #fff;border-radius:50%;width:16px;height:16px;position:absolute;top:-8px;left:-8px;box-shadow:0 2px 8px #00000080}.fm-you-tag{white-space:nowrap;color:var(--text);background:#0a0e1ce6;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:11.5px;font-weight:600;display:inline-flex;position:absolute;top:-36px;left:0;transform:translate(-50%)}.fm-you-live{background:#4ade80;border-radius:50%;width:6px;height:6px}.fm-person{left:var(--x);top:var(--y);transform:scale(var(--ik,1));transform-origin:0 0;z-index:5;position:absolute}.fm-person.selected{z-index:6}.fm-pin{cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:none;background:0 0;border:0;width:40px;height:52px;padding:0;display:block;position:absolute;top:-50px;left:-20px}.fm-pin:before{content:"";position:absolute;inset:-8px}.fm-pin-head{background:#171c2e;border:2.5px solid #fff;border-radius:50%;place-items:center;width:36px;height:36px;transition:background .2s,border-color .2s,transform .2s;display:grid;position:absolute;top:2px;left:2px;box-shadow:0 3px 10px #0000008c}.fm-pin-tip{clip-path:polygon(0 0,100% 0,50% 100%);background:#fff;width:12px;height:12px;margin-left:-6px;position:absolute;top:34px;left:50%}.fm-emoji{font-size:19px;line-height:1}.fm-person.selected .fm-pin-head{background:#6ee7ff;border-color:#fff;transform:scale(1.08)}.fm-person.selected .fm-pin-tip{background:#6ee7ff}.fm-pin:focus-visible .fm-pin-head{outline-offset:2px;outline:2px solid #6ee7ff}.fm-tag{white-space:nowrap;color:var(--text);pointer-events:none;background:#0a0e1ce0;border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:6px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex;position:absolute;top:6px;left:0;transform:translate(-50%)}.fm-tag-dist{color:#6ee7ff;font-weight:500}.fm-tag.is-stale{color:var(--muted)}.fm.is-sat .fm-tag,.fm.is-sat .fm-you-tag{background:#000000bf}.fm-zoom{z-index:10;background:#0a0e1cd9;border:1px solid #ffffff24;border-radius:12px;flex-direction:column;display:flex;position:absolute;bottom:190px;right:16px;overflow:hidden}.fm-zoom button{width:42px;height:42px;color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;place-items:center;display:grid}.fm-zoom button+button{border-top:1px solid #ffffff1a}.fm-zoom button:active{background:#ffffff1a}.fm-zoom .locate{color:#6ee7ff}.map-toggle{background:#0a0e1cd9;border:1px solid #ffffff24;border-radius:999px;flex:none;padding:3px;display:inline-flex}.map-toggle button{height:34px;color:var(--muted);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.map-toggle button.on{color:var(--text);background:#ffffff24}@media (width<=820px){.fm-zoom{right:12px;bottom:calc(var(--hud-h,210px) + 14px)}.app:has(.sheet) .fm-zoom{display:none}.fm-zoom button{width:40px;height:40px}.map-toggle button{padding:0 10px;font-size:12.5px}}@property --boost{syntax:"<number>";inherits:true;initial-value:1}@property --tilt{syntax:"<angle>";inherits:true;initial-value:57deg}@property --spin{syntax:"<angle>";inherits:true;initial-value:-12deg}.map-root{contain:layout paint;pointer-events:none;transition:--tilt 2s var(--ease-soft), --spin 2s var(--ease-soft);background:radial-gradient(1400px 900px at 62% 42%, #0e1730 0%, #0e173000 60%), radial-gradient(900px 700px at 20% 90%, #8b7cff24 0%, #8b7cff00 60%), var(--bg);--tilt:57deg;--spin:-12deg;animation:1.6s ease-out both map-fade;position:absolute;inset:0;overflow:hidden}.map-root.is-explore{--tilt:38deg;--spin:-4deg;pointer-events:auto;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.map-root.is-dragging{cursor:grabbing}.map-root.is-dragging .marker-float{pointer-events:none}.map-stage{perspective:1500px;perspective-origin:52% 36%;position:absolute;inset:0}.map-camera{transform-style:preserve-3d;--px:0;--py:0;--boost:1;transition:--boost 1.6s var(--ease-soft);transform:translate3d(calc(5vw + var(--px) * -28px), calc(5vh + var(--py) * -18px), 0) rotateX(calc(var(--py) * -3deg)) rotateY(calc(var(--px) * 5deg));will-change:transform;position:absolute;inset:0}.map-camera.is-focus{--boost:1.07}.is-explore .map-camera{--boost:1.14}.map-drift{transform-style:preserve-3d;animation:26s ease-in-out infinite alternate drift;position:absolute;inset:0}@keyframes drift{0%{transform:scale(var(--boost)) translate3d(-14px, 6px, 0)}to{transform:scale(var(--boost)) translate3d(16px, -10px, 0)}}.map-plane{width:2400px;height:2000px;transform-style:preserve-3d;transform-origin:1200px 1150px;transform:rotateX(var(--tilt)) rotateZ(var(--spin)) scale(1);animation:plane-in 2.6s var(--ease-out) both;margin:-1150px 0 0 -1200px;position:absolute;top:50%;left:50%}@keyframes plane-in{0%{transform:rotateX(var(--tilt)) rotateZ(var(--spin)) scale(1.45) translate3d(0, 160px, 0)}to{transform:rotateX(var(--tilt)) rotateZ(var(--spin)) scale(1) translate3d(0, 0, 0)}}.map-ground{position:absolute;inset:0}.map-ground-fade{pointer-events:none;background:radial-gradient(ellipse 72% 70% at 50% 55%, transparent 45%, var(--bg) 100%);position:absolute;inset:0}.map-synthetic{transition:opacity 1.6s var(--ease-soft);position:absolute;inset:0}.is-explore .map-synthetic{opacity:0}.map-pan{position:absolute;inset:0}.map-pan-3d{transform-style:preserve-3d}.map-tiles{opacity:0;transition:opacity 1.6s var(--ease-soft) .2s;position:absolute;inset:0}.is-explore .map-tiles{opacity:1}.map-tiles .tile{opacity:0;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;transition:opacity .7s ease-out;display:block;position:absolute}.map-tiles .tile.loaded{opacity:1}.map-tiles:after{content:"";pointer-events:none;background:radial-gradient(700px 520px at 1200px 1150px,#6ee7ff29,#0000 70%);position:absolute;inset:0}.map-grid{background-image:linear-gradient(#ffffff0d 1px,#0000 1px),linear-gradient(90deg,#ffffff0d 1px,#0000 1px);background-size:40px 40px;position:absolute;inset:0}.map-svg{position:absolute;top:0;left:0;overflow:visible}.water{fill:#6ee7ff14;stroke:#6ee7ff47;stroke-width:2px}.park{fill:#78ffbe17;stroke:#78ffbe33;stroke-width:1.5px}.blocks rect{fill:#c9d6ff;stroke:#ffffff17}.streets-minor line{stroke:#ffffff21;stroke-width:2.5px}.avenue{fill:none;stroke:#ffffff38;stroke-width:5px;stroke-linecap:round}.avenue-glow{fill:none;stroke:#6ee7ff33;stroke-width:14px;stroke-linecap:round}.districts text{font-family:var(--font-sans);letter-spacing:.34em;fill:#ffffff38;font-size:16px;font-weight:600}.map-sheen{pointer-events:none;background:radial-gradient(closest-side,#6ee7ff17,#0000);width:1400px;height:1000px;margin:-500px 0 0 -700px;animation:22s ease-in-out infinite alternate sheen;position:absolute;top:50%;left:50%}@keyframes sheen{0%{transform:translate(-260px,-120px)}to{transform:translate(220px,180px)}}.map-overlay{transform:translateZ(.5px)}.user-glow{transform-origin:1200px 1150px;transform-box:view-box;animation:5s ease-in-out infinite breathe}@keyframes breathe{0%,to{opacity:.8;transform:scale(.94)}50%{opacity:1;transform:scale(1.06)}}.range circle{fill:none;stroke:#6ee7ff29;stroke-width:1.5px;stroke-dasharray:3 10;stroke-linecap:round}.range text{font-family:var(--font-mono);letter-spacing:.08em;fill:#6ee7ff66;font-size:13px}.link{stroke:url(#link);stroke-width:2px;stroke-dasharray:7 10;stroke-linecap:round;opacity:0;animation:1.2s ease-out forwards link-in;animation-delay:var(--d);transition:opacity .4s,stroke-width .4s}.link.faint{--o:.16}@keyframes dash{to{stroke-dashoffset:-34px}}@keyframes link-in{to{opacity:var(--o,.55)}}.link.active{stroke-width:3px;--o:1;animation:1.2s linear infinite dash;opacity:1!important}.on-plane,.billboard{width:0;height:0;transform-style:preserve-3d;position:absolute;top:0;left:0}.on-plane{transform:translate3d(var(--x), var(--y), .8px)}.billboard{transform:translate3d(var(--x), var(--y), 0) rotateZ(calc(var(--spin) * -1)) rotateX(calc(var(--tilt) * -1))}.radar .sweep{transform-origin:50%;will-change:transform;background:conic-gradient(#6ee7ff00 0deg,#6ee7ff29 40deg,#6ee7ff00 70deg);border-radius:50%;width:600px;height:600px;animation:7s linear infinite sweep;position:absolute;top:-300px;left:-300px}@keyframes sweep{0%{transform:scale(2)rotate(0)}to{transform:scale(2)rotate(360deg)}}.radar .ring{opacity:0;width:360px;height:360px;animation:5.4s cubic-bezier(.1,.6,.3,1) infinite ring;animation-delay:calc(1.4s + var(--i,0) * 1.8s);will-change:transform, opacity;border:1px solid #6ee7ffb3;border-radius:50%;position:absolute;top:-180px;left:-180px}@keyframes ring{0%{opacity:.9;transform:scale(.08)}to{opacity:0;transform:scale(4)}}.radar .burst{opacity:0;background:radial-gradient(closest-side,#8b7cff2e,#0000 70%);border:1px solid #8b7cffd9;border-radius:50%;width:450px;height:450px;position:absolute;top:-225px;left:-225px;transform:scale(.08)}.is-scanning .radar .burst{animation:2.2s cubic-bezier(.1,.6,.3,1) both ring}.is-scanning .marker-pin{box-shadow:0 34px 60px -14px #000000e6,0 0 0 2px #8b7cffb3,0 0 60px -2px #8b7cffcc,inset 0 1px #ffffff8c}.ground>span{border-radius:50%;position:absolute}.ground-shadow{filter:blur(3px);background:radial-gradient(closest-side,#000000b3,#0000);width:68px;height:26px;top:-12px;left:-34px}.ground-shadow.small{width:44px;height:16px;top:-8px;left:-22px}.ground-glow{width:120px;height:120px;animation:3.6s ease-in-out infinite glow-pulse;animation-delay:var(--d);background:radial-gradient(closest-side,#6ee7ff59,#0000 72%);top:-60px;left:-60px}.ground.faint .ground-glow{opacity:.45}@keyframes glow-pulse{0%,to{opacity:.6;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}.ground-dot{background:var(--accent);width:10px;height:10px;box-shadow:0 0 14px var(--accent);top:-5px;left:-5px}.marker-enter{animation:drop 1.1s var(--ease-out) both;animation-delay:calc(1.2s + var(--d));position:absolute;bottom:0;left:0;transform:translate(-50%)}.marker.generated .marker-enter{animation-duration:.7s;animation-delay:var(--d)}.marker{outline:none}.marker:focus-visible .marker-pin{box-shadow:0 0 0 3px #fff,0 24px 46px -14px #000000d9}@keyframes drop{0%{opacity:0;transform:translate(-50%)translateY(-90px)scale(.6)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}.marker-float{animation:4.6s ease-in-out infinite float;animation-delay:calc(var(--d) * 2);cursor:pointer;pointer-events:auto;flex-direction:column;align-items:center;display:flex}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.marker-pin{width:62px;height:62px;transition:transform .55s var(--ease-soft), box-shadow .55s var(--ease-soft);background:linear-gradient(160deg,#3a4464eb,#181e34eb);border:1px solid #ffffff5c;border-radius:50%;place-items:center;display:grid;position:relative;box-shadow:0 24px 46px -14px #000000d9,0 0 0 1px #6ee7ff2e,0 0 30px -6px #6ee7ff66,inset 0 1px #ffffff73,inset 0 -10px 20px -12px #6ee7ff80}.marker-pin:before{content:"";opacity:.8;z-index:-1;background:conic-gradient(#6ee7ff00 0deg,#6ee7ff8c 90deg,#8b7cff99 150deg,#8b7cff00 220deg);border-radius:50%;position:absolute;inset:-6px;-webkit-mask-image:radial-gradient(closest-side,#0000 78%,#000 86%,#0003 100%);mask-image:radial-gradient(closest-side,#0000 78%,#000 86%,#0003 100%)}.marker:hover .marker-pin:before,.marker.active .marker-pin:before{animation:3.5s linear infinite spin}.marker-pin:after{content:"";pointer-events:none;background:radial-gradient(60% 40% at 50% 12%,#ffffff80,#0000 70%);border-radius:50%;position:absolute;inset:1px}@keyframes spin{to{transform:rotate(360deg)}}.marker-avatar{filter:drop-shadow(0 4px 10px #00000080);font-size:28px;line-height:1;transform:translateY(1px)}.marker-tail{background:linear-gradient(#ffffffb3,#fff0);width:2px;height:22px;margin-top:4px;display:block}.marker-tail.short{height:16px}.marker-name{letter-spacing:.01em;color:var(--text);transition:opacity .35s, transform .45s var(--ease-soft);white-space:nowrap;background:#080c18e0;border:1px solid #ffffff1f;border-radius:999px;margin-bottom:8px;padding:5px 10px;font-size:12px;font-weight:600;box-shadow:0 10px 24px -12px #000000e6}.marker.faint .marker-name{opacity:0;transform:translateY(6px)}.marker.faint .marker-pin{opacity:.72;width:46px;height:46px}.marker.faint .marker-avatar{font-size:20px}.marker.faint .marker-pin:before{opacity:.35}.marker:hover .marker-pin,.marker.active .marker-pin{opacity:1;transform:translateY(-4px)scale(1.08);box-shadow:0 34px 60px -14px #000000e6,0 0 0 1px #6ee7ff80,0 0 46px -4px #6ee7ffb3,inset 0 1px #ffffff8c,inset 0 -10px 20px -12px #6ee7ff99}.marker:hover .marker-name,.marker.active .marker-name{opacity:0;transform:translateY(-6px)}.marker-card{opacity:0;pointer-events:none;transform-origin:50% 100%;width:268px;transition:opacity .35s var(--ease-soft), transform .5s var(--ease-soft);text-align:left;z-index:3;background:linear-gradient(#141a2ef5,#0a0e1cf7);border:1px solid #ffffff24;border-radius:18px;padding:12px 12px 10px;position:absolute;bottom:calc(100% - 10px);left:50%;transform:translate(-50%,14px)scale(.92);box-shadow:0 30px 60px -18px #000000e6,0 0 0 1px #6ee7ff14,inset 0 1px #ffffff2e}.marker-card:after{content:"";background:#0a0e1ce6;border-bottom:1px solid #ffffff24;border-right:1px solid #ffffff24;width:12px;height:12px;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)rotate(45deg)}.marker:hover .marker-card,.marker.active .marker-card{opacity:1;transform:translate(-50%,-8px)scale(1)}.marker.side-left .marker-card,.marker.side-right .marker-card{top:auto;bottom:0}.marker.side-right .marker-card{transform-origin:0 100%;left:calc(50% + 46px);transform:translate(-10px)scale(.92)}.marker.side-left .marker-card{transform-origin:100% 100%;left:auto;right:calc(50% + 46px);transform:translate(10px)scale(.92)}.marker.side-right:hover .marker-card,.marker.side-right.active .marker-card,.marker.side-left:hover .marker-card,.marker.side-left.active .marker-card{transform:translate(0)scale(1)}.marker.side-left .marker-card:after,.marker.side-right .marker-card:after{border:0;bottom:28px;left:auto}.marker.side-right .marker-card:after{border-bottom:1px solid #ffffff24;border-left:1px solid #ffffff24;left:-6px;transform:rotate(45deg)}.marker.side-left .marker-card:after{border-top:1px solid #ffffff24;border-right:1px solid #ffffff24;right:-6px;transform:rotate(45deg)}.marker-card-head{align-items:center;gap:10px;display:flex}.marker-card-avatar{background:linear-gradient(160deg,#6ee7ff40,#8b7cff40);border:1px solid #ffffff24;border-radius:12px;flex:none;place-items:center;width:38px;height:38px;font-size:20px;display:grid}.marker-card-name{letter-spacing:-.01em;font-size:14px;font-weight:600}.marker-card-sub{color:var(--muted);margin-top:2px;font-size:12px}.marker-card-foot{color:var(--muted);border-top:1px solid #ffffff14;align-items:center;gap:7px;margin-top:10px;padding-top:9px;font-size:11.5px;display:flex}.marker-card-foot .mono{color:var(--accent)}.live-dot{background:#4ade80;border-radius:50%;width:7px;height:7px;animation:1.8s ease-in-out infinite blink;box-shadow:0 0 10px #4ade80}@keyframes blink{0%,to{opacity:1}50%{opacity:.6}}.dist{opacity:0;animation:dist-in .9s var(--ease-out) forwards;animation-delay:var(--d);pointer-events:none}@keyframes dist-in{to{opacity:1}}.dist.faint{opacity:0;transition:opacity .4s var(--ease-soft);animation:none}.dist.faint.active{opacity:1}.dist-pill{color:#dff8ff;letter-spacing:.02em;white-space:nowrap;animation:5s ease-in-out infinite float;animation-delay:calc(var(--d) * -1);background:#080c18e6;border:1px solid #6ee7ff4d;border-radius:999px;align-items:center;gap:7px;padding:6px 11px 6px 9px;font-size:12px;display:inline-flex;position:absolute;top:0;left:0;transform:translate(-50%,-50%);box-shadow:0 12px 28px -12px #6ee7ff8c,inset 0 1px #ffffff1f}.dist-dot{background:var(--accent);width:6px;height:6px;box-shadow:0 0 10px var(--accent);border-radius:50%}.you-ground>span{border-radius:50%;position:absolute}.you-halo{background:radial-gradient(closest-side,#6ee7ff47,#0000 75%);border:1.5px solid #6ee7ffb3;width:140px;height:140px;animation:3s ease-out infinite halo;top:-70px;left:-70px}.you-halo.delay{animation-delay:1.5s}@keyframes halo{0%{opacity:1;transform:scale(.2)}to{opacity:0;transform:scale(1.25)}}.you-float{animation:drop 1.2s var(--ease-out) both;flex-direction:column;align-items:center;animation-delay:.8s;display:flex;position:absolute;bottom:0;left:0;transform:translate(-50%)}.you-pin{background:linear-gradient(135deg,#7ee9ff,#8b7cff);border:3px solid #fff;border-radius:50%;place-items:center;width:26px;height:26px;animation:2.4s ease-in-out infinite you-pulse;display:grid;position:relative;box-shadow:0 14px 30px -8px #000c,0 0 0 6px #6ee7ff38,0 0 36px #6ee7ffb3}@keyframes you-pulse{0%,to{box-shadow:0 14px 30px -8px #000c,0 0 0 6px #6ee7ff38,0 0 36px #6ee7ffb3}50%{box-shadow:0 14px 30px -8px #000c,0 0 0 12px #6ee7ff1a,0 0 50px #6ee7ffe6}}.you-core{background:#06080f;border-radius:50%;width:6px;height:6px}.you-label{color:#06080f;white-space:nowrap;background:linear-gradient(135deg,#fff,#dff8ff);border-radius:999px;align-items:center;gap:4px;margin-bottom:10px;padding:7px 12px;font-size:13px;font-weight:600;animation:4s ease-in-out infinite float;display:inline-flex;box-shadow:0 14px 30px -10px #6ee7ffb3,inset 0 -1px #00000014}.you-emoji{font-size:13px;line-height:1}.map-fog{pointer-events:none;background:linear-gradient(to bottom, var(--bg) 0%, #06080fb3 12%, #06080f00 36%), linear-gradient(to top, var(--bg) 0%, #06080f00 22%), linear-gradient(to right, #06080fe6 0%, #06080f00 40%), linear-gradient(to left, #06080f99 0%, #06080f00 25%);position:absolute;inset:0}@media (width<=820px){.map-stage{perspective:1100px;perspective-origin:50% 30%}.map-camera{transform:translateY(26vh)scale(.72)!important}.map-fog{background:linear-gradient(to bottom, var(--bg) 0%, #06080fe6 34%, #06080f00 62%), linear-gradient(to top, var(--bg) 0%, #06080f00 18%)}.marker.faint{display:none}.app.is-landing .map-root{top:34svh}.map-drift,.map-sheen,.radar .sweep,.radar .ring,.radar .burst,.ground-glow,.marker-float,.you-float,.you-halo,.you-pin,.you-core,.live-dot,.dist-dot,.link{animation-iteration-count:1!important}.map-drift{transform:scale(var(--boost));animation:none}.ground-glow{filter:none;opacity:.35}.marker-card,.marker-pin,.you-label{filter:none}}@media (width>=821px){.app.is-landing .map-root{left:22%;-webkit-mask-image:linear-gradient(90deg,#0000,#000 22%);mask-image:linear-gradient(90deg,#0000,#000 22%)}}.app.is-overlay .map-root{display:none}.app.is-overlay .gmap{visibility:hidden}
