.lightbox-overlay{position:fixed;inset:0;background:#061018eb;backdrop-filter:blur(8px);z-index:3000;display:flex;align-items:center;justify-content:center;cursor:zoom-out;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.lightbox-shell{width:min(1080px,94vw);display:grid;justify-items:center;gap:14px;position:relative;touch-action:pan-y;cursor:grab;user-select:none}.lightbox-shell:active{cursor:grabbing}.lightbox-img{max-width:92vw;max-height:92vh;border-radius:16px;box-shadow:0 8px 40px #00000061;background:#111;cursor:zoom-out;transition:box-shadow .18s}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border:1px solid rgba(126,176,198,.35);border-radius:999px;background:#07131cd1;color:#eefbff;font-size:1.9rem;line-height:1;cursor:pointer;z-index:2;backdrop-filter:blur(6px);box-shadow:0 4px 16px #0000004d}@media(max-width:640px){.lightbox-nav{width:52px;height:52px;font-size:2rem}.lightbox-nav--prev{left:4px}.lightbox-nav--next{right:4px}}.lightbox-nav--prev{left:8px}.lightbox-nav--next{right:8px}.lightbox-filmstrip{display:flex;gap:8px;max-width:100%;overflow-x:auto;padding:2px 6px 6px}.lightbox-thumb{border:1px solid rgba(87,131,150,.34);border-radius:12px;background:#0a1823b8;padding:0;width:68px;height:68px;overflow:hidden;flex:0 0 auto;cursor:pointer}.lightbox-thumb img{width:100%;height:100%;object-fit:cover}.lightbox-thumb--active{border-color:#15c0b7b3;box-shadow:0 0 0 2px #15c0b72e}.profile-panel-overlay{position:fixed;inset:0;background:#02061794;z-index:2300;display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;padding:24px 0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.profile-panel-modal{background:linear-gradient(180deg,#0a212efa,#081c28fa);border:1px solid rgba(70,125,149,.52);border-radius:22px;padding:20px;width:min(420px,98vw);max-width:99vw;min-height:60vh;max-height:85vh;box-shadow:0 28px 60px #0206178f;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:12px;-webkit-overflow-scrolling:touch}@media(max-width:991px){.profile-panel-overlay{align-items:flex-end;padding:0 0 8px}.profile-panel-modal{border-radius:18px 18px 0 0;margin-bottom:0;width:98vw;max-width:99vw;max-height:80vh}}.spot-detail-overlay{position:fixed;bottom:0;left:0;right:0;z-index:2250;background:#0a1520;border-radius:20px 20px 0 0;max-height:75vh;max-height:calc(75vh - env(safe-area-inset-bottom,0px));max-height:calc(75dvh - env(safe-area-inset-bottom,0px));padding-bottom:max(12px,env(safe-area-inset-bottom,0px));overflow-y:auto;overscroll-behavior:contain}@media(min-width:992px){.spot-detail-overlay{inset:80px 20px auto auto;width:400px;max-height:calc(100vh - 100px);border-radius:20px}}.spot-detail-overlay__back{display:none}@media(max-width:991px){.spot-detail-overlay{padding:0;max-height:calc(88vh - env(safe-area-inset-bottom,0px));max-height:calc(88dvh - env(safe-area-inset-bottom,0px));padding-bottom:max(10px,env(safe-area-inset-bottom,0px))}.spot-detail-overlay__back{display:none}.spot-detail-panel{width:100%;max-width:100%;height:auto;max-height:calc(88vh - env(safe-area-inset-bottom,0px));max-height:calc(88dvh - env(safe-area-inset-bottom,0px));border-radius:20px 20px 0 0;margin:0;padding:0;overflow-y:auto}}html.no-scroll,.no-scroll{overflow:hidden!important;overscroll-behavior:none}body.no-scroll{overflow:hidden!important}.spot-detail-overlay,.mobile-more-menu,.mobile-utility-panel__content,.auth-modal,.profile-panel-modal,.spot-detail-panel{touch-action:pan-y;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.profile-menu__dropdown-overlay{position:fixed;inset:0;background:#0206172e;z-index:2200;display:flex;align-items:flex-start;justify-content:flex-end}.profile-menu__dropdown{margin-top:68px;margin-right:18px}@media(max-width:991px){.profile-menu__dropdown{margin-top:calc(68px + env(safe-area-inset-top,0px));margin-right:10px;min-width:80vw;max-width:96vw}}.fade-enter-active,.fade-leave-active{transition:opacity .18s}.fade-enter-from,.fade-leave-to{opacity:0}@supports (-webkit-touch-callout: none){html{-webkit-text-size-adjust:100%}}:root{--font-body: "Space Grotesk", system-ui, -apple-system, sans-serif;--font-display: "Space Grotesk", system-ui, -apple-system, sans-serif;color-scheme:dark;-moz-osx-font-smoothing:grayscale;--bg-app: #F8FAFC;--bg-0: #05121a;--bg-1: #0a2432;--bg-2: #0f3441;--panel: #0d2431;--panel-2: #102c3a;--line: #1d4a5d;--text: #e8f5fb;--text-dark: #0F172A;--text-muted: #64748B;--muted: #9ec0cf;--brand: #14B8A6;--brand-hover: #0F766E;--brand-soft: #CCFBF1;--brand-2: #F59E0B;--accent: #FF3B30;--accent-soft: #FFE4E6;--danger: #DC2626;--border: #E2E8F0;--shadow-soft: 0 4px 16px rgba(15,23,42,.06);--shadow-card: 0 8px 28px rgba(15,23,42,.08);--radius-lg: 20px;--radius-md: 14px;--radius-pill: 999px;font-family:var(--font-body);color:var(--text);background:radial-gradient(1200px 600px at 20% -10%,rgba(20,184,166,.08),transparent 60%),radial-gradient(800px 400px at 90% 0%,rgba(245,158,11,.06),transparent 60%),var(--bg-0);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{touch-action:manipulation;-webkit-text-size-adjust:100%}html,body,#app{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden;max-width:100%;overscroll-behavior-y:none}.leaflet-container,.leaflet-container *,.spot-gallery__main,.spot-gallery__hero,.lightbox-shell,.lightbox-img,.card-image-wrap,.preview-image,.preview-image img,.spot-strip,.spot-strip *{touch-action:auto}body{background:radial-gradient(circle at 9% 6%,rgba(21,192,183,.22),transparent 34%),radial-gradient(circle at 90% 2%,rgba(245,158,11,.18),transparent 30%),linear-gradient(156deg,#123344 0%,var(--bg-1) 40%,var(--bg-0) 100%)}*::-webkit-scrollbar{width:10px;height:10px}@media(pointer:coarse){button,[role=button],a{min-height:44px;min-width:44px}.type-chip,.sidebar-chip,.strip-view-all,.cookie-banner__btn{min-height:44px}}*::-webkit-scrollbar-thumb{background:#2a3a5d;border-radius:999px}*::-webkit-scrollbar-track{background:#0f172a}button,input,select,textarea{font:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #38bdf8;outline-offset:1px}.app-shell{min-height:100vh;display:flex;flex-direction:column;position:relative}.app-content{padding-top:calc(64px + env(safe-area-inset-top,0px));padding-bottom:calc(84px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;min-height:100vh;flex:1}@media(min-width:992px){.app-content{padding-bottom:calc(16px + env(safe-area-inset-bottom,0px))}}.app-shell:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);background-size:24px 24px;mask-image:radial-gradient(circle at center,black 20%,transparent 95%);z-index:0}.topbar{height:calc(64px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) max(20px,env(safe-area-inset-right,0px)) 0 max(20px,env(safe-area-inset-left,0px));border-bottom:1px solid rgba(92,155,182,.2);background:linear-gradient(180deg,#071824f7,#05121af7);-webkit-backdrop-filter:blur(16px) saturate(1.4);backdrop-filter:blur(16px) saturate(1.4);display:flex;align-items:center;gap:16px;position:fixed;top:0;left:0;right:0;z-index:2150;box-shadow:0 1px #5c9bb626,0 4px 20px #0000004d}.brand-wrap{flex-shrink:0;display:flex;align-items:center;min-width:0}.brand{font-family:var(--font-display);font-weight:800;font-size:1.1rem;color:#d0fffb;letter-spacing:.2px;text-shadow:0 0 28px rgba(21,192,183,.38);display:inline-flex;align-items:center;gap:8px;min-width:0;max-width:100%;background:none;border:none;padding:0;cursor:pointer;line-height:inherit;text-align:left}.brand:hover{opacity:.85}.brand-copy{display:grid;gap:1px;min-width:0}.brand-logo{width:56px;height:56px;object-fit:contain;border-radius:10px;border:none;box-shadow:none}.brand-name{font-family:var(--font-display);font-weight:800;font-size:1.2rem;color:#d0fffb;letter-spacing:.08em;text-transform:uppercase;margin-left:0;text-shadow:0 0 20px rgba(21,192,183,.35);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.brand-subtitle{font-size:.75rem;color:#92bed1b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meta{color:var(--muted);font-size:.875rem}.role-pill{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;border:1px solid rgba(245,158,11,.45);background:#f59e0b29;color:#ffe3a8;font-size:.72rem;font-weight:600}.topbar-actions{margin-left:auto;flex-shrink:0;display:flex;align-items:center;flex-wrap:nowrap;gap:8px;justify-content:flex-end;min-width:0}.topbar-guest-actions{display:inline-flex;align-items:center;gap:8px}.topbar--create-focus{justify-content:center}.topbar--create-focus .brand-wrap{align-items:center}.topbar--tight .brand-subtitle{display:none}.topbar--tight .brand-name{font-size:1.05rem}.topbar--tight .topbar-actions,.topbar--tight .topbar-guest-actions{gap:6px}.topbar--tight .topbar-guest-actions .topbar-btn{padding-left:10px;padding-right:10px}.topbar--ultra-compact .brand-copy{display:grid}.topbar--ultra-compact .brand-subtitle,.only-mobile{display:none}.topbar-btn{border:1px solid #376982;background:linear-gradient(180deg,#153d53,#123447);color:var(--text);border-radius:12px;padding:9px 13px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:600;transition:transform .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease}.topbar-btn__icon{display:inline-flex;align-items:center;justify-content:center;width:1.05rem;line-height:1}.topbar-btn__label{display:inline-flex;align-items:center}.topbar-btn__badge{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#f97316;color:#fff7ed;font-size:.68rem;font-weight:700;line-height:20px;text-align:center;box-shadow:0 0 0 2px #061621e6}.topbar-btn__status{width:9px;height:9px;border-radius:50%;background:#34d399;box-shadow:0 0 0 2px #071824f2,0 0 14px #34d39994}.topbar-btn__icon--account{width:auto}.topbar-btn__icon--account-auth{width:1.35rem;height:1.35rem;border-radius:999px;border:1px solid rgba(120,182,209,.72);background:#0a2432db;color:#dff8ff;font-size:.74rem;font-weight:700}.topbar-btn--mobile-account .topbar-btn__label{max-width:92px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-btn:hover:not(:disabled){background:#19465c;border-color:#3f7e98;transform:translateY(-1px);box-shadow:0 10px 22px #020c122e}.topbar-btn--primary{border-color:#13b9ae;background:linear-gradient(135deg,#0d8f9f,#11b9ad);color:#edfffd;box-shadow:0 8px 20px #11b9ad47}.topbar-btn--cta{gap:7px;padding:0 18px;font-size:.9rem;font-weight:700;letter-spacing:.03em;box-shadow:0 4px 16px #11b9ad61,0 0 #11b9ad38;animation:cta-pulse 2.8s ease-in-out infinite}@keyframes cta-pulse{0%,to{box-shadow:0 4px 16px #11b9ad61,0 0 #11b9ad38}50%{box-shadow:0 4px 22px #11b9ad8c,0 0 0 7px #11b9ad00}}.topbar-btn--logout{gap:6px}.topbar-btn--lang{min-width:42px;padding:0 11px;font-size:.76rem;font-weight:700;letter-spacing:.06em;opacity:.88}.topbar-btn--lang .topbar-btn__label{white-space:nowrap;line-height:1}.flag-icon{width:22px;height:16px;border-radius:2px;object-fit:cover;display:block}.topbar-btn--lang:hover{opacity:1}.profile-menu{position:relative}.profile-menu__dropdown{position:static;min-width:260px;width:min(300px,92vw);border:1px solid rgba(58,104,128,.9);border-radius:14px;background:linear-gradient(180deg,#0e2c3cfa,#0b212ffa);box-shadow:0 20px 44px #00000061;display:grid;z-index:2100;overflow:hidden}.profile-menu__summary{padding:10px 12px;border-bottom:1px solid rgba(55,91,112,.65);background:#0516216b;display:grid;gap:4px}.profile-menu__name{color:#e9f8ff;font-size:.9rem;font-weight:700}.profile-menu__role{color:#9ec0cf;font-size:.76rem}.profile-menu__stat{margin-top:3px;padding:6px 8px;border-radius:8px;border:1px solid rgba(73,118,143,.62);background:#0d2938b3;display:flex;align-items:center;justify-content:space-between;color:#b9d8e5;font-size:.76rem}.profile-menu__stat strong{color:#e8f5fb;font-size:.86rem}.profile-menu__item{border:none;border-bottom:1px solid rgba(48,86,108,.75);background:transparent;color:#dff4ff;text-align:left;padding:10px 12px;cursor:pointer;font-size:.84rem;display:flex;align-items:center;justify-content:space-between;gap:10px}.profile-menu__item:last-child{border-bottom:none}.profile-menu__item:hover{background:#174860d6}.profile-menu__item--danger{color:#ffd2d2}.profile-menu__item--danger-toggle{color:#fbbf24;font-size:.8rem;opacity:.7;padding-block:6px;border-top:1px solid rgba(255,180,100,.12);margin-top:2px}.profile-menu__item--danger-toggle:hover{opacity:1;background:#3c230a99}.profile-menu__badge{min-width:24px;height:24px;border-radius:999px;border:1px solid rgba(92,155,182,.72);background:#0e2e3fc7;color:#d8eef8;display:inline-flex;align-items:center;justify-content:center;font-size:.76rem;font-weight:700;padding:0 7px}.topbar-btn--primary:hover:not(:disabled){background:linear-gradient(135deg,#0fa2ae,#18cab9);border-color:#4ce1d6}.topbar-btn--secondary{border-color:#578198bf;background:linear-gradient(180deg,#142c3cf0,#0e202df0);color:#d8eef8}.topbar-btn--secondary:hover:not(:disabled){border-color:#71a7c3e0;background:linear-gradient(180deg,#183649f5,#102737f5)}.topbar-btn--quiet{border-color:#57819859;background:#0a1d286b;color:#cee6f1db;padding:8px 12px;font-size:.82rem;box-shadow:none}.topbar-btn--quiet:hover:not(:disabled){border-color:#71a7c38f;background:#112b3a9e;color:#e1f4ff;transform:translateY(-1px)}.topbar-btn--more{border-color:#578198c7;background:linear-gradient(180deg,#122a39f5,#0c1d29f5)}.topbar-btn--mobile-menu{min-width:108px;padding-inline:14px;justify-content:space-between;gap:10px;border-color:#6fb6d1d9;background:linear-gradient(135deg,#14384afa,#0b2230fa);box-shadow:0 12px 26px #010a123d}.topbar-btn--mobile-menu .topbar-btn__icon{width:auto;font-size:1rem}.topbar-btn--mobile-menu .topbar-btn__label{flex:1;justify-content:flex-start}@media(max-width:991px){.topbar-btn--mobile-menu{min-width:44px!important;width:44px;padding:0!important;justify-content:center}.topbar-btn--mobile-menu .topbar-btn__label{display:none}}.topbar-btn--mobile-create{min-width:92px;padding-inline:12px;justify-content:space-between;gap:6px;border-radius:22px}.topbar-btn--mobile-create .topbar-btn__icon{width:auto;font-size:1.1rem;font-weight:700}.topbar-btn--mobile-account{min-width:122px;justify-content:space-between;padding-inline:12px;border-color:#6aa5bfd1;background:linear-gradient(135deg,#112c3bfa,#0a1f2bfa)}.topbar-btn--mobile-account .topbar-btn__label{flex:1;justify-content:flex-start}.mobile-more-overlay{position:fixed;inset:0;z-index:2240;display:flex;align-items:flex-start;justify-content:center;padding:calc(72px + env(safe-area-inset-top,0px)) 12px max(12px,env(safe-area-inset-bottom,0px));overflow:hidden}.mobile-more-backdrop{position:absolute;inset:0;background:#02081294;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.mobile-more-menu{position:relative;z-index:1;width:min(720px,100%);max-height:calc(100dvh - 88px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));border-radius:20px;border:1px solid rgba(63,109,132,.82);background:linear-gradient(180deg,#091f2dfc,#071824fc);box-shadow:0 22px 42px #0000006b;padding:14px;display:grid;gap:12px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}.mobile-more-menu__topbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.mobile-more-menu__eyebrow{color:#8fb3c3;font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.mobile-more-menu__hero{display:grid;gap:12px;padding:12px;border-radius:18px;border:1px solid rgba(59,101,123,.72);background:linear-gradient(135deg,#0a2535eb,#091c28eb)}.mobile-more-menu__hero--guest{border-color:#15c0b75c;background:linear-gradient(135deg,#092b32f0,#081c25f0)}.mobile-more-menu__summary{display:grid;gap:6px}.mobile-more-menu__summary-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.mobile-more-menu__summary strong{color:#ecfbff;font-size:1rem}.mobile-more-menu__summary span{color:#95b9ca;font-size:.82rem}.mobile-more-menu__summary-copy{margin:0;color:#85afc1;font-size:.82rem;line-height:1.45}.mobile-more-menu__account-state{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:999px;border:1px solid rgba(91,148,174,.5);background:#0e2b3bb8;white-space:nowrap}.mobile-more-menu__hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.mobile-more-menu__hero-stat{border-radius:14px;border:1px solid rgba(60,100,121,.58);background:#0819248f;padding:10px;display:grid;gap:2px}.mobile-more-menu__auth-quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mobile-more-menu__auth-btn{border:1px solid rgba(89,144,169,.72);background:linear-gradient(180deg,#102b3af5,#0a1e2af5);color:#dff3fc;border-radius:12px;min-height:42px;font-weight:700;font-size:.82rem;cursor:pointer}.mobile-more-menu__auth-btn--primary{border-color:#4ce1d6a3;background:linear-gradient(135deg,#0d8f9ffa,#11b9adfa);color:#f1fffd}.mobile-more-menu__hero-stat strong{color:#effcff;font-family:var(--font-display);font-size:.92rem}.mobile-more-menu__hero-stat span{color:#8ab0c0;font-size:.71rem;line-height:1.35}.mobile-more-menu__section{display:grid;gap:8px}.mobile-more-menu__section--grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-more-card{border:1px solid rgba(58,101,124,.72);border-radius:16px;background:linear-gradient(180deg,#0d2736e6,#091c28e6);color:#e0f4fb;padding:12px;text-align:left;display:grid;gap:6px;min-height:112px;cursor:pointer;transition:transform .15s ease,border-color .15s ease,background .15s ease}.mobile-more-card:hover{transform:translateY(-1px);border-color:#64a3bfd1;background:linear-gradient(180deg,#113143f0,#0b2230f0)}.mobile-more-card--primary{border-color:#15c0b770;background:linear-gradient(135deg,#0b5a61f0,#0a3c4af0)}.mobile-more-card--upload{grid-column:1 / -1;flex-direction:row;align-items:center;min-height:68px;padding:14px 18px;gap:14px;background:linear-gradient(135deg,#0d8f9f,#11b9ad);border-color:#ffffff2e;box-shadow:0 4px 18px #11b9ad52;display:flex}.mobile-more-card--upload .mobile-more-card__icon{font-size:1.7rem;font-weight:300;flex-shrink:0}.mobile-more-card--upload .mobile-more-card__title{font-size:1.05rem;color:#fff}.mobile-more-card--upload .mobile-more-card__meta{color:#ffffffc7}.mobile-more-card--upload:hover{background:linear-gradient(135deg,#0ea5a0,#13c8bc);border-color:#ffffff47}.mobile-more-card--accent{border-color:#f59e0b6b;background:linear-gradient(135deg,#573a10eb,#36250beb)}.mobile-more-card--favs{border-color:#ef444459;background:linear-gradient(135deg,#4c101ae0,#2a080ee0)}.mobile-more-card--favs:hover{border-color:#ef44448c;background:linear-gradient(135deg,#601420e6,#360a10e6)}.mobile-more-card__icon{font-size:1.15rem;line-height:1}.mobile-more-card__title{color:#eefbff;font-size:.9rem;font-weight:700}.mobile-more-card__meta{color:#8fb3c3;font-size:.74rem;line-height:1.4}.mobile-more-item{border:1px solid rgba(51,91,112,.72);border-radius:14px;background:#103041a3;color:#d6edf8;padding:12px 14px;text-align:left;font-size:.92rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px}.mobile-more-item:hover{border-color:#5c9bb6e6;background:#153e53c7}.mobile-more-item strong{color:#f1fbff;font-size:.88rem}.mobile-more-item--primary{border-color:#15c0b7a3;background:linear-gradient(135deg,#0d7976f0,#0a5e68f0)}.mobile-more-item--danger{border-color:#f8717170;background:linear-gradient(180deg,#702939e6,#561e2de6);color:#ffe5e7}.mobile-more-item--danger-toggle{color:#fbbf24;font-size:.82rem;opacity:.65;border-color:#ffb4642e;background:#281c0ab3}.mobile-more-item--danger-toggle:hover{opacity:1}.topbar-btn--danger{border-color:#f8717180;background:linear-gradient(180deg,#7c2d3feb,#5b2131eb);color:#ffe4e6}.topbar-btn--danger:hover:not(:disabled){border-color:#fca5a5b8;background:linear-gradient(180deg,#90374cf5,#6e2739f5)}.topbar-btn--icon-only{min-width:40px;width:40px;padding-left:0;padding-right:0}.topbar-btn--wide{min-width:150px}.topbar-btn:disabled{opacity:.65;cursor:not-allowed;box-shadow:none}.mobile-utility-overlay{position:fixed;inset:0;z-index:2260;background:#020812a3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:flex-end;justify-content:center;padding:calc(72px + env(safe-area-inset-top,0px)) 10px 10px}.mobile-utility-panel{width:min(720px,100%);max-height:calc(100dvh - 82px - env(safe-area-inset-top,0px));border-radius:24px;border:1px solid rgba(66,112,136,.82);background:linear-gradient(180deg,#091e2cfc,#071723fc);box-shadow:0 24px 56px #00000070;overflow:hidden;display:flex;flex-direction:column}.mobile-utility-panel--moderation{max-width:860px}.mobile-utility-panel__head,.mobile-utility-panel__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid rgba(48,83,103,.72)}.mobile-utility-panel__head div{display:grid;gap:3px}.mobile-utility-panel__head strong{color:#f0fbff}.mobile-utility-panel__head span{color:#97bece;font-size:.82rem}.mobile-utility-panel__content{padding:10px 12px 0;overflow:auto}.mobile-utility-panel__foot{border-top:1px solid rgba(48,83,103,.72);border-bottom:none}.mobile-utility-panel__foot .topbar-btn{flex:1}.notif-list--mobile{padding-bottom:10px}.moderation-panel--mobile-sheet{position:static;inset:auto;width:100%;max-height:none;padding:0;background:transparent;border:none;box-shadow:none}.layout{flex:1;display:grid;grid-template-columns:minmax(340px,380px) minmax(0,1fr);align-items:stretch;gap:16px;padding:16px;position:relative;width:min(1480px,calc(100% - 24px));margin:0 auto}@media(min-width:1280px){.layout{grid-template-columns:minmax(360px,400px) minmax(0,1fr);gap:18px;padding:18px}}@media(min-width:992px){.map-shell{border-radius:18px;overflow:hidden;box-shadow:0 8px 32px #00000038,0 1px 3px #0000001f}.sidebar-shell{border-radius:18px;box-shadow:0 8px 32px #00000038,0 1px 3px #0000001f;overflow:visible}.sidebar{border-radius:18px;overflow-y:auto;max-height:calc(100dvh - 112px)}.map-root{border-radius:18px}}.kpi-strip{display:none}.kpi-card{border:1px solid #336882;border-radius:var(--radius-md);background:linear-gradient(160deg,#0a2535f0,#0c2c3ce6);padding:11px 12px;display:grid;gap:2px;box-shadow:inset 0 1px #ade9ff1f}.kpi-card span{color:#a8cddd;font-size:.76rem}.kpi-card strong{font-family:var(--font-display);font-size:1.24rem;color:#f0fffc}.sidebar-shell,.map-shell{min-width:0;min-height:0;position:relative}.scenic-discover-btn{position:absolute;top:12px;right:12px;z-index:700;background:#15c0b7;color:#0a1520;border:none;border-radius:999px;padding:9px 14px;font-size:13px;font-weight:700;cursor:pointer;box-shadow:0 4px 14px #00000040;transition:transform .15s,opacity .15s}.scenic-discover-btn:disabled{opacity:.6;cursor:wait}.scenic-discover-btn:hover:not(:disabled){transform:scale(1.03)}.scenic-clear-btn{position:absolute;top:12px;right:12px;z-index:700;background:#081624d9;color:#e8f5fb;border:1px solid rgba(255,255,255,.15);border-radius:999px;padding:7px 12px;font-size:12px;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.empty-inspire-card{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:690;width:min(340px,calc(100% - 32px));background:#0a1520f5;border:1px solid rgba(21,192,183,.18);border-radius:20px;padding:22px 18px;text-align:center;display:grid;gap:10px;box-shadow:0 16px 40px #00000061;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.empty-inspire-card__icon{font-size:28px}.empty-inspire-card h3{margin:0;font-size:16px;font-weight:800;color:#e8f5fb;font-family:var(--font-display)}.empty-inspire-card p{margin:0;font-size:13px;color:#9ec0cf;line-height:1.5}.empty-inspire-card small{font-size:11px;color:#6d96ab}.empty-inspire-card .cbtn{justify-content:center;width:100%;margin-top:4px}.map-controls-float{position:absolute;bottom:100px;left:16px;z-index:100;display:flex;flex-direction:column;gap:8px}.leaflet-control-zoom{border:none!important;border-radius:14px!important;overflow:hidden;box-shadow:0 6px 18px #020c1852!important}.leaflet-control-zoom a{width:38px!important;height:38px!important;line-height:38px!important;font-size:20px!important;font-weight:700!important;background:#0a1520eb!important;color:#e8f5fb!important;border-bottom:1px solid rgba(21,192,183,.14)!important;-webkit-backdrop-filter:blur(10px) saturate(1.2);backdrop-filter:blur(10px) saturate(1.2)}.leaflet-control-zoom a:hover{background:#153a4af5!important;color:#fff!important}.leaflet-control-zoom a.leaflet-disabled{background:#0a15209e!important;color:#6d96ab!important}.sidebar{font-family:var(--font-body);font-weight:500;font-size:1rem;padding:14px;letter-spacing:.12px;margin-left:0;display:flex;flex-direction:column;gap:10px;border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);border:1px solid #2a5b73;background:linear-gradient(180deg,#0a2535f2,#091e2cf2);animation:riseIn .42s ease}.topbar--create-focus{padding:0 14px}.topbar--create-focus .brand-logo{width:36px;height:36px}.topbar--create-focus .brand-name{font-size:1.1rem}.sidebar-head{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:4px}.sidebar-head h2{margin:0;font-size:1.05rem}.sidebar-subtitle{margin:2px 0 0;color:var(--muted);font-size:.77rem}.sidebar-summary{display:inline-flex;gap:8px;align-items:center;color:var(--muted);font-size:.76rem;padding:7px 10px;border:1px solid #275067;border-radius:10px;background:linear-gradient(180deg,#113345,#102d3d)}.sidebar-highlights{display:grid;grid-template-columns:1fr;gap:8px}.highlight-card{border:1px solid #275067;border-radius:10px;background:#102f41;padding:7px 8px;display:grid;gap:2px}.highlight-card--location{gap:10px;padding:10px}.highlight-card__row{display:flex;align-items:center;justify-content:space-between;gap:10px}.highlight-card__toggle{border:1px solid rgba(80,142,168,.42);background:#0a2331c2;color:#dff8ff;border-radius:999px;padding:8px 12px;font-size:.76rem;font-weight:700;cursor:pointer;white-space:nowrap}.highlight-card__copy{margin:0;color:#8fb3c4;font-size:.75rem;line-height:1.45}.highlight-card span{color:#9ac5d9;font-size:.68rem}.highlight-card strong{font-size:.88rem;font-family:var(--font-display)}.highlight-card--active{border-color:#19baa8;background:#0f3c45}.filters{display:flex;flex-direction:column;gap:10px}.filter-section{border:1px solid #285168;border-radius:10px;background:linear-gradient(180deg,#123246,#102d3f);padding:7px 8px}.filter-section summary{list-style:none;cursor:pointer;font-weight:600;color:#b9deed;font-size:.8rem;margin-bottom:6px}.filter-section summary::-webkit-details-marker{display:none}.sidebar-pills{display:flex;flex-wrap:wrap;gap:6px}.sidebar-pill{border:1px solid #335775;background:#163346;color:#d4eaf4;border-radius:999px;padding:4px 10px;font-size:.72rem;cursor:pointer}.sidebar-pill:hover{background:#1e4861}.filter-group{display:flex;flex-direction:column;gap:5px}.filter-label{color:#cbd5e1;font-size:.78rem;font-weight:600}.row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.input{width:100%;border:1px solid rgba(74,129,153,.3);background:#0a192acc;color:#e2e8f0;border-radius:12px;padding:11px 14px;font-size:.92rem;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.input:focus{border-color:var(--brand);box-shadow:0 0 0 3px #15c0b726;background:#0c1e30e6;outline:none}.input::placeholder{color:#4a6a7e}.input--error{border-color:#f87171;box-shadow:0 0 0 1px #f8717140}.field-error{color:#fecaca;font-size:.74rem;margin-top:-2px}.auth-input-help{color:#8fb3c4;font-size:.72rem;margin-top:-2px}.view-toggle{display:inline-flex;gap:8px}.quick-actions{display:flex;justify-content:flex-end}.chips{display:flex;flex-wrap:wrap;gap:6px}.chips--tags .chip{font-size:.74rem}.chip{border:1px solid #334155;background:#1b273f;color:#cbd5e1;border-radius:999px;padding:4px 10px;cursor:pointer;font-size:.78rem;transition:all .16s ease}.chip:hover{background:#223657}.chip.active{border-color:#38bdf8;color:#e0f2fe;background:#1d3b63}.distance-toggle{display:inline-flex;align-items:center;gap:8px;font-size:.86rem;color:#cbd5e1}.distance-box{display:flex;flex-direction:column;gap:4px;border:1px solid #26324f;background:#131f37;border-radius:10px;padding:8px}.distance-box input[type=range]{accent-color:#38bdf8}.distance-box small{color:#94a3b8}.toggle-btn{border:1px solid #334155;background:#1b273f;color:#cbd5e1;border-radius:10px;padding:6px 12px;cursor:pointer;transition:all .16s ease}.toggle-btn:hover{background:#233652}.toggle-btn.active{border-color:#38bdf8;color:#e0f2fe;background:#1d3b63}.btn-reload{border:1px solid #334155;background:#1e293b;color:#e2e8f0;border-radius:10px;padding:6px 10px;cursor:pointer;transition:all .16s ease;font-weight:600}.btn-reload:hover{background:#253650}.state-block{padding:12px;border-radius:10px;background:#162033;color:#cbd5e1;border:1px solid #26324f}.state-action{margin-top:10px}.state-block.error{color:#fecaca;background:#3b1c24;border-color:#7f1d1d}.spot-list{list-style:none;margin:0;padding:0 2px 0 0;display:flex;flex-direction:column;gap:7px;overflow-y:auto;max-height:55vh}@media(max-width:640px){.spot-list{max-height:62vh;max-height:min(62vh,520px)}}.spot-list.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.spot-list.grid .spot-item{border-radius:12px;overflow:hidden}@media(max-width:640px){.spot-list.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}}.spot-list--skeleton{pointer-events:none}.spot-skeleton{border:1px solid #26324f;background:#121f36;border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:8px}.spot-skeleton__thumb,.spot-skeleton__line{background:linear-gradient(90deg,#1b2a44 10%,#223657,#1b2a44 80%);background-size:220% 100%;animation:shimmer 1.4s ease-in-out infinite;border-radius:8px}.spot-skeleton__thumb{width:100%;height:92px}.spot-skeleton__line{height:12px}.spot-skeleton__line--title{height:16px;width:76%}.spot-skeleton__line--short{width:44%}.spot-item{width:100%;border:1px solid #2b4f70;background:linear-gradient(180deg,#132a43,#12243a);color:#e2e8f0;border-radius:var(--radius-md);text-align:left;padding:10px 12px;cursor:pointer;display:flex;flex-direction:column;gap:5px;transition:all .16s ease}.spot-item:focus-visible{outline:2px solid #22d3ee;outline-offset:2px}.spot-item:hover{transform:translateY(-1px);border-color:#3a537b;background:#172846}.spot-item img{width:100%;max-height:120px;object-fit:cover;border-radius:8px;margin-bottom:4px}.spot-item.active{border-color:#3bc8f7;background:linear-gradient(180deg,#163556,#16304f);box-shadow:inset 0 0 0 1px #38bdf833}.spot-item span{color:#94a3b8;font-size:.82rem}.spot-item__head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.spot-item__head strong{line-height:1.25}.spot-item__category{flex-shrink:0;padding:2px 8px;border-radius:999px;border:1px solid #334155;background:#1c2f4b;color:#bfdbfe;font-size:.69rem;text-transform:lowercase}.spot-item__description{margin:0;color:#94a3b8;font-size:.78rem;line-height:1.3}.spot-item__tags{display:flex;flex-wrap:wrap;gap:6px}.spot-item__meta{margin-top:2px;display:inline-flex;align-items:center;gap:6px;color:#86a9bb;font-size:.69rem}.spot-item__meta-dot{opacity:.7}.spot-item__tag{border-radius:999px;padding:2px 8px;background:#182a46;border:1px solid #2f4567;color:#bfdbfe;font-size:.7rem}.spot-item small{color:#64748b;font-size:.75rem;line-height:1.2}.spot-item__actions{margin-top:8px;display:flex;gap:6px}.spot-item__action{border:1px solid #334155;background:#18263f;color:#e2e8f0;border-radius:8px;padding:4px 8px;font-size:.74rem;cursor:pointer}.spot-item__action:hover{background:#233652}.spot-item__action--danger{border-color:#7f1d1d;background:#3b1f2a;color:#fecaca}.spot-item__action--danger:hover{background:#4a2230}.pagination{margin-top:auto;border-top:1px solid #22314f;padding-top:10px;display:flex;align-items:center;justify-content:space-between;gap:10px;position:sticky;bottom:0;background:linear-gradient(180deg,#0f172a00,#0f172aeb 26%,#0f172a)}.page-info{font-size:.78rem;color:#94a3b8}.page-actions{display:flex;gap:8px}.btn-page{border:1px solid #334155;background:#1e293b;color:#e2e8f0;border-radius:10px;padding:6px 10px;cursor:pointer;transition:all .16s ease}.btn-page:hover:not(:disabled){background:#273852}.btn-page:disabled{opacity:.5;cursor:not-allowed}.map-panel{height:clamp(620px,calc(100dvh - 150px),930px);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;position:relative;background:#0c2533;box-shadow:var(--shadow-strong);animation:riseIn .48s ease}.leaflet-popup.spot-popup-shell .leaflet-popup-content-wrapper{background:#0a2330f2;border:1px solid rgba(67,146,178,.75);border-radius:12px;box-shadow:0 18px 30px #020c1273;color:#dff7ff}.leaflet-popup.spot-popup-shell .leaflet-popup-content{margin:10px;min-width:180px}.leaflet-popup.spot-popup-shell .leaflet-popup-tip{background:#0a2330f2;border:1px solid rgba(67,146,178,.75)}.spot-popup{display:grid;gap:8px}.spot-popup__head{display:grid;gap:2px}.spot-popup__title{font-size:.86rem;color:#e8fcff}.spot-popup__category{font-size:.72rem;color:#95cadf;text-transform:lowercase}.spot-popup__media img{width:100%;max-width:220px;max-height:126px;object-fit:cover;border-radius:8px;border:1px solid rgba(87,153,181,.65)}.map-toolbar{position:absolute;top:12px;right:12px;display:inline-flex;gap:8px;z-index:700;padding:6px;border-radius:999px;background:#071e2b9e;border:1px solid rgba(78,134,160,.45);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.map-toolbar--tablet{top:10px;right:10px;gap:7px}.map-toolbar--mobile{top:auto;left:50%;right:auto;transform:translate(-50%);bottom:calc(34px + env(safe-area-inset-bottom,0px));display:flex;justify-content:center;flex-wrap:wrap;gap:6px;max-width:calc(100% - 14px)}.map-tool-btn{border:1px solid rgba(79,153,186,.9);background:#082130e0;color:#def6ff;border-radius:10px;min-height:34px;padding:6px 11px;font-size:.77rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.map-tool-btn__icon{width:.9rem;display:inline-flex;justify-content:center;align-items:center;line-height:1}.map-tool-btn__label{display:inline-flex;align-items:center;line-height:1}.map-tool-btn:hover{background:#0d354ce6}.map-tool-btn--active{border-color:#15c0b7e6;background:linear-gradient(180deg,#0b6262f0,#094e4cf0);color:#d9fffb;box-shadow:inset 0 0 0 1px #7bffea38}.map-selected-card{position:absolute;left:12px;bottom:12px;z-index:710;border:1px solid #2a5e74;background:#071f2deb;border-radius:12px;padding:8px 10px;display:grid;gap:2px;min-width:210px;max-width:min(320px,calc(100% - 24px))}.map-selected-card--pulse{animation:selectedPulse .32s ease}.map-selected-card strong{font-size:.82rem;color:#e8fbff}.map-selected-card span{font-size:.74rem;color:#9bc7db}.map-selected-card small{font-size:.69rem;color:#7ca9be}.map-legend-card{position:absolute;right:12px;top:12px;z-index:706;display:grid;gap:6px;padding:9px 10px;border-radius:12px;border:1px solid rgba(76,138,166,.46);background:linear-gradient(180deg,#071e2bdb,#081b27ad);color:#dff6ff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 10px 22px #020c1238}.map-legend-card--collapsed{padding-bottom:8px}.map-legend-card__head{display:flex;align-items:center;justify-content:space-between;gap:10px}.map-legend-card__toggle{border:1px solid rgba(103,157,180,.58);background:#092635c7;color:#dff8ff;border-radius:999px;padding:3px 9px;font-size:.65rem;font-weight:700;cursor:pointer}.map-legend-card__toggle:hover{background:#0c3346db}.map-legend-card strong{font-size:.76rem}.map-legend-card__items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px}.map-legend-item{display:inline-flex;align-items:center;gap:6px;color:#b9dceb;font-size:.68rem}.map-legend-dot--default{background:linear-gradient(145deg,#14b8a6,#0ea5e9)}.map-legend-dot{width:10px;height:10px;border-radius:999px;border:1px solid rgba(228,246,255,.9);box-shadow:0 0 0 1px #02141e80}.map-legend-dot--water{background:linear-gradient(145deg,#0ea5e9,#2563eb)}.map-legend-dot--nature{background:linear-gradient(145deg,#22c55e,#16a34a)}.map-legend-dot--food{background:linear-gradient(145deg,#f59e0b,#ea580c)}.map-legend-dot--urban{background:linear-gradient(145deg,#64748b,#334155)}.map-legend-dot--adventure{background:linear-gradient(145deg,#a855f7,#7c3aed)}.map-legend-dot--culture{background:linear-gradient(145deg,#ec4899,#be185d)}.map-root{width:100%;height:100%;min-height:100%}.leaflet-marker-pane,.leaflet-marker-icon{z-index:1000!important}.leaflet-marker-pane img,.leaflet-marker-pane svg{z-index:1000!important}.spot-cluster{display:flex;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,#f59e0b,#ea580c);border:3px solid #ffffff;box-shadow:0 4px 16px #0000006b,0 0 0 5px #ffffffeb,0 0 0 10px #f59e0b2e;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.spot-cluster:hover{transform:scale(1.1);box-shadow:0 6px 22px #00000080,0 0 0 6px #fffffffa,0 0 0 12px #f59e0b38}.spot-cluster--medium{background:linear-gradient(135deg,#14b8a6,#0891b2);box-shadow:0 4px 16px #0000006b,0 0 0 5px #ffffffeb,0 0 0 10px #14b8a62e}.spot-cluster--large{background:linear-gradient(135deg,#ec4899,#a855f7);box-shadow:0 4px 16px #0000006b,0 0 0 5px #ffffffeb,0 0 0 10px #ec48992e}.spot-cluster__count{color:#fff;font-weight:800;font-size:.95rem;line-height:1;text-shadow:0 1px 4px rgba(0,0,0,.5),0 0 6px rgba(0,0,0,.3);pointer-events:none;letter-spacing:-.02em}@media(max-width:640px){.spot-cluster{box-shadow:0 3px 14px #0006,0 0 0 4px #fffffff2,0 0 0 8px #0000001f}}.spot-marker{display:grid;place-items:center;--marker-accent: #14b8a6;--marker-fill: #0a1c26}.spot-marker__pin{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 2px 5px rgba(0,0,0,.55));transition:transform .15s ease,filter .15s ease}.spot-marker__pin-shell{fill:var(--marker-fill);stroke:var(--marker-accent);stroke-width:2.8}.spot-marker__pin-core{fill:none;stroke:var(--marker-accent);stroke-width:2.6}.spot-marker__pin-stem{fill:none;stroke:var(--marker-accent);stroke-width:2.8;stroke-linecap:round}.spot-marker--tone-water{--marker-accent: #0ea5e9}.spot-marker--tone-nature{--marker-accent: #22c55e}.spot-marker--tone-food{--marker-accent: #f59e0b}.spot-marker--tone-urban{--marker-accent: #64748b}.spot-marker--tone-adventure{--marker-accent: #a855f7}.spot-marker--tone-culture{--marker-accent: #ec4899}.spot-marker--touch .spot-marker__pin{filter:drop-shadow(0 3px 7px rgba(0,0,0,.55))}.spot-marker--selected .spot-marker__pin{filter:drop-shadow(0 0 6px rgba(254,240,138,.92)) drop-shadow(0 3px 8px rgba(0,0,0,.55));transform:scale(1.08)}.spot-marker__dot{width:14px;height:14px;border-radius:999px;border:2px solid #dffaff;background:linear-gradient(145deg,#14b8a6,#0ea5e9);box-shadow:0 0 0 2px #031f2d8c,0 8px 16px #05121a66}.spot-marker--tone-water .spot-marker__dot{background:linear-gradient(145deg,#0ea5e9,#2563eb)}.spot-marker--tone-nature .spot-marker__dot{background:linear-gradient(145deg,#22c55e,#16a34a)}.spot-marker--tone-food .spot-marker__dot{background:linear-gradient(145deg,#f59e0b,#ea580c)}.spot-marker--tone-urban .spot-marker__dot{background:linear-gradient(145deg,#64748b,#334155)}.spot-marker--tone-adventure .spot-marker__dot{background:linear-gradient(145deg,#a855f7,#7c3aed)}.spot-marker--tone-culture .spot-marker__dot{background:linear-gradient(145deg,#ec4899,#be185d)}.spot-marker--touch .spot-marker__dot{width:18px;height:18px;border-width:3px}.spot-marker--selected .spot-marker__dot{width:18px;height:18px;border-color:#fef08a;box-shadow:0 0 0 3px #f59e0b40,0 10px 22px #05121a80}.spot-detail-panel{width:100%;max-width:100%;margin:0;padding:0;border:none;border-radius:20px 20px 0 0;background:#0a1520;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;color:#fff;position:relative;z-index:1}.spot-detail-panel__handle{width:100%;padding:12px 0 10px;display:grid;place-items:center;cursor:grab;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.spot-detail-panel__handle-bar{width:36px;height:4px;background:#ffffff52;border-radius:2px}.spot-detail-panel__handle:active{cursor:grabbing}.spot-detail-panel__close{position:absolute;top:14px;right:14px;width:44px;height:44px;border-radius:50%;border:none;background:#ffffff1f;color:#fff;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:50;transition:background .15s,color .15s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.spot-detail-panel__close:hover{background:#ffffff38;color:#fff}.spot-detail-panel__body{padding:16px 20px 20px;display:grid;gap:12px}.spot-detail-panel__head{display:flex;justify-content:space-between;gap:12px}.spot-detail-panel__head h3{margin:0 0 4px;font-size:1.1rem;font-weight:700;color:#e8f5fb;font-family:var(--font-display);line-height:1.25}.spot-detail-panel__author{display:flex;align-items:center;gap:8px;margin:8px 0 6px;font-size:.82rem}.author-avatar{width:26px;height:26px;border-radius:50%;background:#15c0b726;border:1px solid rgba(21,192,183,.3);color:#15c0b7;font-weight:700;font-size:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.author-name{color:#e8f5fb;font-weight:500}.visibility-badge{font-size:.68rem;padding:2px 8px;border-radius:999px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#9ec0cf}.source-badge{font-size:.68rem;padding:2px 8px;border-radius:999px;background:#4285f41f;border:1px solid rgba(66,133,244,.25);color:#8ab4f8}.spot-detail-panel__cat{margin:0 0 4px;font-size:.8rem;color:#8fb3c4;text-transform:capitalize}.spot-detail-panel__head-actions{display:flex;gap:6px;flex-shrink:0}.create-map-marker{background:transparent;border:none}.create-map-marker span{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%;filter:drop-shadow(0 4px 8px rgba(2,6,23,.45));user-select:none}.create-map-marker--spot span{font-size:1.35rem}.create-map-marker--user span{font-size:1.1rem;background:#083143db;border:1px solid rgba(92,155,182,.72);border-radius:999px}.spot-detail-panel__meta{display:inline-block;margin-top:4px;color:#9ecde0;font-size:.72rem}.spot-detail-panel__meta--address{display:block;margin-top:4px;color:#9ecde0;font-size:.71rem;white-space:normal;word-break:break-word;opacity:.88;line-height:1.4}.spot-detail-panel__description{margin:0;color:#e6f2f8;font-size:.92rem;line-height:1.6;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:14px}@media(max-width:991px){.spot-detail-panel__description{font-size:.94rem;line-height:1.62;padding:13px}}.spot-detail-panel__actions-row{display:flex;flex-wrap:wrap;gap:8px}.spot-action-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:12px;border:1px solid rgba(70,120,148,.4);background:#0a1e2d99;color:#b9d8e5;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.spot-action-btn:hover{background:#103246bf;border-color:#64aac880}.spot-action-btn:disabled{opacity:.5;cursor:not-allowed}.spot-action-btn--add{background:#15c0b7;color:#0a1520;border-color:#15c0b7;font-weight:700}.spot-action-btn--add:hover{background:#0fb3ab;border-color:#0fb3ab}.spot-action-btn--fav:hover{border-color:#ef444480;background:#ef44441a;color:#f87171}.spot-action-btn--dir:hover{border-color:#007aff80;background:#007aff1a;color:#60b0ff}.spot-action-btn--sv:hover{border-color:#34c75980;background:#34c7591a;color:#6fda8e}.spot-action-btn--share:hover{border-color:#af52de80;background:#af52de1a;color:#c88bff}.spot-action-btn--edit{padding:6px 10px;font-size:.85rem}.spot-action-btn--edit:hover{border-color:#f59e0b80;background:#f59e0b1a;color:#f59e0b}.spot-action-btn--delete{padding:6px 10px;font-size:.85rem}.spot-action-btn--delete:hover{border-color:#f8717180;background:#f871711a;color:#f87171}.spot-detail-panel__tags{display:flex;flex-wrap:wrap;gap:6px}.spot-detail-panel__tags span{border:1px solid rgba(37,192,183,.25);background:#15c0b714;border-radius:999px;padding:3px 10px;font-size:.72rem;color:#15c0b7}.spot-gallery{position:relative}.spot-gallery__main{position:relative;width:100%;height:300px;border-radius:20px 20px 0 0;overflow:hidden;background:#0a1520;cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-drag:none}.spot-gallery__main:active{cursor:grabbing}.spot-gallery__hero{width:100%;height:100%;object-fit:cover;object-position:center;display:block;background:#0a1520;cursor:zoom-in}@media(max-width:991px){.spot-gallery__hero{height:100%;max-height:none;min-height:0;max-width:100%;object-fit:cover;background:#0a1520}.spot-gallery__main{height:260px}.map-controls-float{bottom:auto!important;top:calc(12px + env(safe-area-inset-top,0px));left:12px!important}.spot-action-btn{min-height:44px;padding:10px 14px}}.spot-gallery__nav{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:#05121c99;color:#fff;font-size:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background .15s}.spot-gallery__nav:hover{background:#05121cd9}.spot-gallery__nav--prev{left:10px}.spot-gallery__nav--next{right:10px}.spot-gallery__counter{position:absolute;top:12px;right:12px;background:#05121cbf;border:1px solid rgba(80,140,168,.4);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;color:#e8f5fb;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.spot-gallery__strip{display:flex;gap:8px;padding:10px 12px;overflow-x:auto;scrollbar-width:none;background:#0a1520cc}.spot-gallery__strip::-webkit-scrollbar{display:none}.spot-gallery__thumb{width:60px;height:60px;border-radius:10px;overflow:hidden;flex-shrink:0;border:2px solid transparent;padding:0;cursor:pointer;background:#05121c80;transition:border-color .15s,opacity .15s;opacity:.7}.spot-gallery__thumb.active{border-color:#15c0b7;opacity:1}.spot-gallery__thumb:hover{opacity:.85}.spot-gallery__thumb img{width:100%;height:100%;object-fit:cover}.spot-detail-panel__rating{border:1px solid #2f6079;border-radius:10px;background:#12374b;padding:8px;display:grid;gap:7px}.spot-detail-panel__rating h4{margin:0;font-size:.84rem}.spot-detail-panel__auth-hint{border:1px solid rgba(19,185,174,.25);border-radius:10px;background:#0d1b2a8c;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;color:#8ec5d9;font-size:.8rem;font-weight:400;line-height:1.35;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.spot-detail-panel__auth-hint span{flex:1;min-width:0}.spot-detail-panel__rating-actions{display:flex;flex-wrap:wrap;gap:6px}.spot-detail-panel__rating-actions .topbar-btn{min-width:48px;justify-content:center;padding:6px 8px}.spot-detail-panel__rating-summary{margin:0;color:#a9d5e6;font-size:.76rem}.spot-detail-panel__comments h4{margin:0 0 6px;font-size:.86rem}.spot-detail-panel__comment-form{display:flex;gap:8px}.spot-detail-panel__status{margin:0;border-radius:10px;padding:9px 10px;font-size:.76rem;line-height:1.4}.spot-detail-panel__status--warning{border:1px solid rgba(225,170,67,.45);background:#48331073;color:#ffdba0}.spot-detail-panel__status--error{border:1px solid rgba(212,93,93,.42);background:#4c191973;color:#ffd1d1}.spot-detail-panel__status--success,.spot-detail-panel__status--info{border:1px solid rgba(79,147,178,.35);background:#0f2a3b85;color:#bfe7f7}.spot-detail-panel__comment-list{margin:8px 0 0;padding:0;list-style:none;display:grid;gap:7px}.spot-detail-panel__comment-list li{border:1px solid #2f5f77;border-radius:10px;background:#123548;padding:8px;display:grid;gap:3px}.spot-detail-panel__comment-item{display:flex!important;align-items:flex-start;gap:8px}.comment-avatar{width:30px;height:30px;border-radius:50%;object-fit:cover;flex-shrink:0;border:1px solid rgba(17,185,173,.4)}.comment-avatar--placeholder{background:linear-gradient(135deg,#0d8f9f,#117ea0);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:#fff}.comment-body{flex:1;min-width:0;display:grid;gap:2px}.spot-detail-panel__comment-list strong{font-size:.78rem}.spot-detail-panel__comment-list small{color:#8eb5c7;font-size:.68rem}.spot-detail-panel__comment-list p{margin:0;font-size:.8rem;color:#d4ecf6}.comment-delete-btn{flex-shrink:0;width:26px;height:26px;border:1px solid rgba(239,68,68,.3);border-radius:50%;background:transparent;color:#ef4444b3;font-size:1rem;font-weight:700;line-height:1;cursor:pointer;transition:background .15s,color .15s,border-color .15s;display:flex;align-items:center;justify-content:center;align-self:center}.comment-delete-btn:hover{background:#ef44441f;color:#ef4444;border-color:#ef44448c}.spot-detail-panel__empty{margin:8px 0 0;color:#8eb5c7;font-size:.78rem}.explorer-location-marker{background:transparent}.explorer-location-marker__emoji{position:relative;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:999px;background:linear-gradient(135deg,#163d58,#0f2637);border:1px solid rgba(126,190,217,.46);box-shadow:0 10px 20px #00000047;font-size:1.05rem}.explorer-location-marker__pulse{position:absolute;left:50%;top:50%;width:18px;height:18px;border-radius:999px;background:#5ed2ff40;transform:translate(-50%,-50%);animation:explorerPulse 1.8s ease-out infinite}@keyframes explorerPulse{0%{transform:translate(-50%,-50%) scale(.85);opacity:.8}to{transform:translate(-50%,-50%) scale(2.5);opacity:0}}@media(max-width:768px){input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],input[type=url],input[type=tel],textarea,select{font-size:16px!important}.lightbox-shell{width:96vw}.lightbox-nav{width:40px;height:40px}.spot-detail-panel__auth-hint{flex-direction:column;align-items:stretch;gap:8px}.spot-detail-panel__auth-hint .topbar-btn--primary{align-self:flex-start}.highlight-card__row{align-items:stretch;flex-direction:column}}.profile-panel__header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.profile-panel__avatar-wrap{position:relative;cursor:pointer;flex-shrink:0}.profile-panel__avatar{width:56px;height:56px;border-radius:50%;object-fit:cover;border:2px solid rgba(17,185,173,.5);display:block}.profile-panel__avatar--placeholder{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#0d8f9f,#117ea0);border:2px solid rgba(17,185,173,.5);display:flex;align-items:center;justify-content:center;font-size:1.4rem;font-weight:700;color:#fff}.profile-panel__avatar-edit{position:absolute;bottom:0;right:0;background:#0f1e2dd9;border-radius:50%;width:20px;height:20px;font-size:.7rem;display:flex;align-items:center;justify-content:center}.profile-panel__avatar-input{display:none}.profile-panel__avatar-wrap:hover .profile-panel__avatar,.profile-panel__avatar-wrap:hover .profile-panel__avatar--placeholder{opacity:.75}.profile-panel__info-grid{display:grid;gap:6px;padding:10px 12px;margin-bottom:12px;background:#0d8f9f14;border:1px solid rgba(17,185,173,.18);border-radius:8px}.profile-panel__info-item{display:flex;align-items:baseline;gap:8px;font-size:.83rem}.profile-panel__info-label{color:#9fc4d4;min-width:110px;flex-shrink:0;font-weight:500}.profile-panel__info-value{color:#d6eef5;font-weight:600;word-break:break-all}.profile-panel__topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid rgba(81,127,149,.28)}.profile-panel__topbar h2{margin:0}.profile-panel__title{margin:0;font-size:.95rem}.profile-panel__empty{margin:6px 0;font-size:.84rem;color:#9fc4d4}.profile-panel__favorites{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;max-height:52vh;overflow-y:auto}.profile-panel__favorite-card{list-style:none}.profile-panel__favorite-item{width:100%;border:1px solid rgba(70,125,149,.25);background:#0a1628bf;border-radius:16px;color:#e6f7ff;text-align:left;padding:14px 16px;display:flex;align-items:center;gap:14px;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background-color .18s ease,box-shadow .18s ease;font-family:inherit}.profile-panel__favorite-item:hover{background:#0c1c30e6;border-color:#15c0b759;transform:translateY(-2px);box-shadow:0 8px 24px #0000004d}.profile-panel__favorite-thumb{width:88px;height:66px;border-radius:10px;overflow:hidden;flex-shrink:0;border:1px solid rgba(70,125,149,.3);background:#050d1480;display:flex;align-items:center;justify-content:center}.profile-panel__favorite-thumb img{width:100%;height:100%;object-fit:cover}.profile-panel__favorite-thumb-placeholder{font-size:1.6rem}.profile-panel__favorite-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.profile-panel__favorite-title{font-family:var(--font-display);font-size:.92rem;font-weight:700;color:#e8f5fb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-panel__favorite-loc{font-size:.72rem;color:#64829a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-panel__favorite-meta{display:flex;align-items:center;gap:10px}.profile-panel__favorite-cat{font-size:.7rem;color:#86a9bc;background:#5c9bb614;padding:2px 8px;border-radius:6px}.profile-panel__favorite-rating{font-size:.74rem;font-weight:700;color:#f59e0b}.profile-panel__favorite-tags{display:flex;gap:4px;flex-wrap:wrap}.profile-panel__favorite-tag{font-size:.66rem;font-weight:600;color:#15c0b7;background:#15c0b71a;border:1px solid rgba(21,192,183,.2);padding:1px 8px;border-radius:999px}.profile-panel__favorite-arrow{font-size:1.1rem;color:#64829a;flex-shrink:0;transition:transform .2s ease,color .2s ease}.profile-panel__favorite-item:hover .profile-panel__favorite-arrow{color:#15c0b7;transform:translate(4px)}.profile-panel__account-actions{display:flex;flex-direction:column;gap:6px;margin:16px 0;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}.profile-panel__account-btn{display:flex;align-items:center;gap:12px;padding:12px;background:#ffffff0d;border:none;border-radius:10px;color:#fff;font-size:15px;cursor:pointer;text-align:left}.profile-panel__account-btn:hover{background:#ffffff1a}.profile-panel__badge{margin-left:auto;padding:2px 8px;background:#ff453a;border-radius:10px;font-size:12px;font-weight:600;color:#fff}@keyframes selectedPulse{0%{transform:scale(.95);box-shadow:0 0 #14b8a659}60%{transform:scale(1.02);box-shadow:0 0 0 8px #14b8a600}to{transform:scale(1);box-shadow:none}}.map-overlay{position:absolute;left:12px;top:86px;border:1px solid #2c5d74;background:#0a212ded;color:#d8ecf6;border-radius:10px;padding:8px 10px;font-size:.82rem;z-index:500;max-width:min(320px,calc(100% - 28px))}.map-overlay--error{border-color:#7f1d1d;color:#fecaca;background:#3b1c24f2}.auth-modal-backdrop{position:fixed;inset:0;background:#020617d1;display:grid;place-items:center;z-index:2500;padding:16px;-webkit-backdrop-filter:blur(12px) saturate(1.2);backdrop-filter:blur(12px) saturate(1.2);overflow-y:auto}.auth-modal{width:min(440px,100%);background:linear-gradient(170deg,#0e2a3af7,#081c28fa);border:1px solid rgba(74,129,153,.35);border-radius:22px;padding:24px;display:flex;flex-direction:column;gap:14px;box-shadow:0 32px 80px #0000008c,0 0 0 1px #15c0b714;max-height:calc(100dvh - 24px);overflow-y:auto;-webkit-overflow-scrolling:touch}.auth-modal--wide{width:min(520px,100%)}.auth-form{display:flex;flex-direction:column;gap:12px}.auth-modal h2{margin:0;font-family:var(--font-display);font-size:1.25rem;font-weight:700;color:#f0f9ff}.auth-subtitle{margin:0 0 4px;color:var(--muted);font-size:.88rem;line-height:1.5}.auth-label{font-size:.82rem;font-weight:600;color:#cbd5e1;letter-spacing:.02em}.auth-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:12px;padding-top:14px;border-top:1px solid rgba(74,129,153,.15)}.spot-location-actions{display:flex;flex-wrap:wrap;gap:8px}.spot-autofill-status{margin:0;padding:8px 12px;border-radius:8px;background:#0d1b2a99;border:1px solid rgba(19,185,174,.2);color:#8ec5d9;font-size:.78rem;line-height:1.4}.spot-tag-picker{display:flex;flex-wrap:wrap;gap:8px}.spot-tag-picker .input{flex:1 1 220px}.spot-map-picker-box{border:1px solid #334155;border-radius:10px;padding:10px;background:#0b1324;display:flex;flex-direction:column;gap:8px}.spot-map-picker-help{margin:0;font-size:.82rem;color:#94a3b8}.spot-map-picker{width:100%;height:260px;border-radius:8px;overflow:hidden;border:1px solid #24324f}.autocomplete-hero-btn{display:flex;align-items:center;gap:14px;width:100%;padding:16px 18px;background:linear-gradient(135deg,#15c0b726,#0ea5e91f);border:1.5px solid rgba(21,192,183,.4);border-radius:16px;cursor:pointer;transition:all .25s ease;text-align:left;margin-bottom:4px}.autocomplete-hero-btn:hover:not(:disabled){background:linear-gradient(135deg,#15c0b740,#0ea5e933);border-color:#15c0b7a6;transform:translateY(-1px);box-shadow:0 4px 16px #15c0b733}.autocomplete-hero-btn:disabled{opacity:.6;cursor:wait}.autocomplete-hero-icon{font-size:28px;flex-shrink:0;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:#15c0b71f;border-radius:12px}.autocomplete-hero-text{display:flex;flex-direction:column;gap:2px;min-width:0}.autocomplete-hero-title{font-size:15px;font-weight:700;color:#15c0b7}.autocomplete-hero-subtitle{font-size:12px;color:#7fb8c9;line-height:1.3}.spot-form-title{font-family:var(--font-display);font-size:1.3rem;font-weight:700;margin:0;letter-spacing:.01em;color:#f0f9ff}.spot-form-section{display:flex;flex-direction:column;gap:10px;padding:16px 0;border-bottom:1px solid rgba(74,129,153,.12)}.spot-form-section:last-of-type{border-bottom:none;padding-bottom:0}.spot-form-section-title{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--brand);opacity:.9;margin-bottom:2px}.spot-address-search{position:relative;display:flex;align-items:center}.spot-address-search-icon{position:absolute;left:12px;font-size:.9rem;pointer-events:none;z-index:2}.spot-address-search-input{padding-left:34px!important;padding-right:80px!important;font-size:16px!important}.spot-address-clear{position:absolute;right:58px;width:22px;height:22px;border-radius:50%;border:none;background:#ffffff1f;color:#9ec0cf;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2}.spot-address-clear:hover{background:#ff3b3033;color:#fff}.spot-address-gps{position:absolute;right:32px;width:22px;height:22px;border-radius:50%;border:1px solid rgba(21,192,183,.35);background:#15c0b71f;color:#15c0b7;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2}.spot-address-gps:hover{background:#15c0b740}.spot-address-search-spinner{position:absolute;right:10px;color:var(--brand);pointer-events:none;display:flex;align-items:center}.spot-address-search-spinner .spin{animation:spin .9s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse-fade{0%,to{opacity:1}50%{opacity:.4}}.spot-address-results{position:absolute;top:calc(100% + 4px);left:0;right:0;margin:0;padding:6px;list-style:none;background:#081624fa;border:1px solid rgba(74,129,153,.4);border-radius:14px;box-shadow:0 16px 40px #0000008c;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:600;max-height:260px;overflow-y:auto}.spot-address-result-item{display:flex;flex-direction:row;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;cursor:pointer;transition:background .15s ease}.spot-address-result-item:hover,.spot-address-result-item.focused{background:#15c0b726}.spot-address-result-icon{font-size:16px;flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#15c0b71a;border-radius:8px}.spot-address-result-text{display:flex;flex-direction:column;gap:2px;min-width:0}.spot-address-result-name{font-size:.88rem;font-weight:600;color:#e2e8f0}.spot-address-result-addr{font-size:.72rem;color:#7a97ac;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.spot-image-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.spot-image-field{display:flex;flex-direction:column;gap:6px}.spot-image-input{font-size:.78rem!important;padding:10px 8px!important;cursor:pointer;border-style:dashed!important;text-align:center}.spot-location-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 18px!important;border-style:dashed!important;font-weight:600;font-size:.88rem!important;border-radius:14px!important;transition:all .2s ease!important}.spot-location-btn:hover{border-style:solid!important;background:#15c0b714!important}.spot-location-btn-icon{font-size:1.2rem}.spot-submit-btn{padding:14px 32px!important;font-weight:700;font-size:1rem!important;letter-spacing:.02em;border-radius:14px!important}.profile-panel__heading{font-family:var(--font-display);font-weight:700}.profile-panel__header-info{display:flex;flex-direction:column;gap:4px}.profile-panel__username{font-size:1rem}.profile-panel__stats-row{display:flex;gap:8px;margin-bottom:8px}.profile-panel__stat-card{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;background:#0d8f9f14;border:1px solid rgba(17,185,173,.18);border-radius:12px;text-align:center}.profile-panel__stat-value{font-family:var(--font-display);font-size:1.3rem;font-weight:700;color:var(--brand)}.profile-panel__stat-value--date{font-size:.78rem;font-weight:600;color:#8ec5d9}.profile-panel__stat-label{font-size:.68rem;font-weight:500;color:#7a97ac;text-transform:uppercase;letter-spacing:.05em}.auth-error{color:#fecaca;margin:4px 0 0;font-size:.84rem}.auth-info{color:#93c5fd;margin:4px 0 0;font-size:.84rem}.auth-success{color:#86efac;margin:4px 0 0;font-size:.84rem}.auth-inline-actions{display:flex;align-items:center;justify-content:flex-start;gap:10px;margin-top:2px}.auth-consent-block{display:grid;gap:10px;padding:12px 14px;border-radius:16px;border:1px solid rgba(68,110,133,.28);background:#08131e8f}.auth-consent-item{display:flex;align-items:flex-start;gap:10px;color:#d7edf8;font-size:.85rem;line-height:1.4}.auth-consent-item input{margin-top:3px}.auth-consent-item a{color:#7dd3fc}.auth-consent-item a:hover{color:#bae6fd}.auth-note{margin:0;color:#9dc2d2;font-size:.78rem;line-height:1.35}.auth-switch{border:none;background:transparent;color:#7dd3fc;text-align:left;padding:0;margin-top:2px;cursor:pointer;font-size:.84rem;text-decoration:underline;text-underline-offset:2px}.auth-switch--register-cta{width:100%;margin-top:8px;padding:12px 14px;border:1px solid rgba(76,225,214,.52);border-radius:14px;background:linear-gradient(180deg,#104d5deb,#0c3845eb);color:#eafcff;font-weight:700;text-align:center;text-decoration:none;box-shadow:0 14px 30px #041c2652}.auth-switch--register-cta:hover{border-color:#6bf0e8b8;background:linear-gradient(180deg,#125b6ef5,#0d4251f5)}.oauth-block{margin-top:14px;border-top:none;padding:14px;background:#ffffff0a;border:1px solid rgba(255,255,255,.07);border-radius:14px;display:flex;flex-direction:column;gap:10px}.oauth-block--top{margin-top:10px;margin-bottom:2px;padding:16px;background:linear-gradient(180deg,#ffffff0f,#ffffff08);border:1px solid rgba(255,255,255,.09);box-shadow:0 8px 24px #0000002e,inset 0 1px #ffffff0f}.oauth-block__header{display:flex;align-items:center;justify-content:space-between;gap:10px}.oauth-badge{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#0a1520;background:linear-gradient(135deg,#14b8a6,#f59e0b);padding:4px 8px;border-radius:999px;line-height:1;white-space:nowrap;box-shadow:0 2px 8px #14b8a63d}.oauth-title{font-size:.84rem;font-weight:600;color:#cbd5e1;text-align:center;letter-spacing:.015em;flex:1}.oauth-hint{margin:0;font-size:11px;font-weight:500;color:#7fa7bb;text-align:center;line-height:1.4}.oauth-btn__arrow{width:16px;height:16px;opacity:.72;flex-shrink:0;margin-left:auto}.oauth-btn:hover .oauth-btn__arrow{opacity:1;transform:translate(1px);transition:all .15s}.auth-divider{display:flex;align-items:center;gap:12px;margin:8px 0 2px;user-select:none}.auth-divider__line{flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent)}.auth-divider__text{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#7fa7bb;white-space:nowrap;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);padding:4px 10px;border-radius:999px}.oauth-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.oauth-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 14px;font-size:.92rem;font-weight:700;border-radius:12px;letter-spacing:.01em;box-shadow:0 2px 10px #0000001a;transition:transform .14s ease,box-shadow .14s ease,filter .14s ease,background .14s ease;-webkit-tap-highlight-color:transparent}.oauth-btn:active:not(:disabled){transform:scale(.97);box-shadow:0 1px 6px #0000001f}.oauth-btn:hover:not(:disabled){filter:brightness(1.03);box-shadow:0 4px 16px #00000029}.oauth-btn__logo{width:28px;height:28px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:800;letter-spacing:-.02em;flex-shrink:0;line-height:1}.oauth-btn__text{font-size:.92rem;font-weight:700;line-height:1;letter-spacing:.01em}.oauth-btn__logo--google{background:#fff;color:#ea4335;box-shadow:0 1px 3px #0000001f}.oauth-btn__logo--facebook{background:#1877f2;color:#fff}.oauth-btn__logo--apple{background:#000;color:#fff;font-size:.95rem}.oauth-btn__logo--github{background:#1f2937;color:#fff}.oauth-btn--google{background:#fff!important;color:#1f1f1f!important;border:1px solid #dadce0!important}.oauth-btn--google:hover:not(:disabled){background:#f8f9fa!important;border-color:#c9cdd1!important}.oauth-btn--apple{background:#000!important;color:#fff!important;border:1px solid #000000!important}.oauth-btn--apple:hover:not(:disabled){background:#1a1a1a!important}.oauth-btn--google .oauth-btn__text{color:#1f1f1f}.oauth-btn--apple .oauth-btn__text{color:#fff}.oauth-btn--disabled{opacity:.46;filter:grayscale(.15);cursor:not-allowed}.oauth-btn:disabled{cursor:not-allowed;opacity:.52}.notifications-dropdown{position:relative}.notifications-trigger{position:relative;width:38px;height:36px;display:grid;place-items:center}.notifications-badge{position:absolute;top:-7px;right:-8px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;font-size:.68rem;font-weight:700;line-height:18px;text-align:center}.notifications-panel{position:absolute;right:0;top:calc(100% + 8px);width:min(340px,86vw);max-height:420px;overflow-y:auto;background:#0f172a;border:1px solid #334155;border-radius:12px;box-shadow:0 12px 30px #02061773;z-index:1200;animation:fadeInPanel .14s ease}.notifications-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid #24324f;position:sticky;top:0;background:#0f172a}.notifications-error{padding:6px 12px 0}.notifications-empty{color:#94a3b8;text-align:center;font-size:.84rem;padding:14px 10px}.notifications-list{list-style:none;margin:0;padding:0}.notification-item{display:flex;gap:8px;border-bottom:1px solid #1e293b;padding:10px;cursor:pointer;transition:background-color .16s ease}.notification-item:hover{background:#13203a}.notification-item--unread{background:#12233f;border-left:3px solid #0ea5e9}.notification-main{min-width:0;flex:1}.notification-title-row{display:flex;align-items:center;gap:6px;margin-bottom:3px}.notification-icon{font-size:1rem}.notification-title{font-size:.83rem;color:#e2e8f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-new{margin-left:auto;border-radius:999px;padding:1px 6px;background:#0ea5e9;color:#e0f2fe;font-size:.64rem;font-weight:700}.notification-message{margin:0;color:#94a3b8;font-size:.79rem;line-height:1.3}.notification-time{color:#64748b;font-size:.72rem}.notification-delete{border:none;background:transparent;color:#94a3b8;font-size:1.15rem;line-height:1;cursor:pointer;padding:2px 4px}.notification-delete:hover{color:#fca5a5}.moderation-wrap{position:relative}.moderation-trigger{display:inline-flex;align-items:center;gap:6px}.moderation-badge{min-width:18px;height:18px;border-radius:999px;background:#ef4444;color:#fff;font-size:.68rem;font-weight:700;line-height:18px;text-align:center;padding:0 5px}.moderation-panel{position:absolute;right:0;top:calc(100% + 8px);width:min(560px,92vw);max-height:70vh;overflow-y:auto;background:#0f172a;border:1px solid #334155;border-radius:12px;box-shadow:0 14px 34px #02061780;z-index:1200;padding:10px;animation:fadeInPanel .14s ease}.moderation-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.moderation-count{margin:0 0 8px;color:#94a3b8;font-size:.84rem}.moderation-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0 0 10px}.moderation-stats small{display:block;border:1px solid #22314f;background:#0b162a;color:#cbd5e1;border-radius:8px;padding:6px 8px;font-size:.72rem}.moderation-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.moderation-item{border:1px solid #22314f;background:#111e34;border-radius:10px;padding:10px;display:grid;grid-template-columns:180px 1fr;gap:10px;transition:border-color .16s ease,background-color .16s ease}.moderation-item:hover{border-color:#38547d;background:#152542}.moderation-image{width:100%;height:130px;object-fit:cover;border-radius:8px;border:1px solid #334155}.moderation-image--empty{display:grid;place-items:center;color:#cbd5e1;background:#1b2a44}.moderation-body{display:flex;flex-direction:column;gap:4px}.moderation-body p{margin:0;color:#94a3b8;font-size:.82rem}.moderation-body small{color:#64748b;font-size:.74rem}.moderation-actions{display:flex;gap:8px;margin-top:8px}.moderation-reject{border-color:#7f1d1d;background:#3f1d24;color:#fecaca}.toast-stack{position:fixed;top:14px;right:14px;z-index:5000;pointer-events:none;display:flex;flex-direction:column;align-items:flex-end;gap:8px;max-width:min(420px,calc(100vw - 28px))}.mobile-upload-fab{display:none;position:fixed;bottom:24px;right:18px;z-index:1800;align-items:center;gap:7px;padding:0 20px 0 16px;height:52px;border-radius:26px;border:none;background:linear-gradient(135deg,#0d8f9f,#11b9ad);color:#fff;font-weight:700;font-size:1rem;cursor:pointer;box-shadow:0 6px 22px #11b9ad80,0 2px 8px #0000004d;transition:transform .15s ease,box-shadow .15s ease;-webkit-tap-highlight-color:transparent}.mobile-upload-fab:active{transform:scale(.94);box-shadow:0 3px 12px #11b9ad66}.mobile-upload-fab__icon{font-size:1.4rem;line-height:1;font-weight:400}.mobile-upload-fab__label{font-size:.9rem;font-weight:700;letter-spacing:.02em}@media(max-width:768px){.mobile-upload-fab{display:flex}}.mobile-signin-btn{position:fixed;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:10px;padding:16px;background:linear-gradient(180deg,#08141efa,#050f16fc);border:none;border-top:1px solid rgba(55,105,130,.35);font-size:16px;font-weight:600;color:#e8f5fb;cursor:pointer;z-index:1000;padding-bottom:calc(16px + env(safe-area-inset-bottom,0))}.mobile-signin-btn svg{width:22px;height:22px}.visibility-toggle{display:flex;align-items:center;justify-content:space-between;padding:12px 0;margin-bottom:12px;border-bottom:1px solid rgba(255,255,255,.1)}.visibility-label{font-size:14px;font-weight:500;color:#9ec0cf}.visibility-options{display:flex;background:#ffffff1a;border-radius:8px;padding:2px}.visibility-btn{padding:8px 16px;border:none;border-radius:6px;font-size:13px;font-weight:500;color:#9ec0cf;background:transparent;cursor:pointer;transition:all .2s ease}.visibility-btn.active{background:#15c0b7;color:#fff}.spot-detail-panel__actions .topbar-btn{white-space:nowrap}:root{--toast-duration: 6s}.toast-msg{position:relative;display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(21,192,183,.22);background:#0a1520f0;color:#e2e8f0;border-radius:14px;padding:12px 14px 14px;min-width:260px;max-width:min(420px,calc(100vw - 28px));width:fit-content;box-shadow:0 12px 28px #0000006b,0 2px 8px #0000002e,inset 0 1px #ffffff0f;font-size:.88rem;font-weight:600;line-height:1.42;pointer-events:auto;cursor:pointer;overflow:hidden;-webkit-backdrop-filter:blur(14px) saturate(1.25);backdrop-filter:blur(14px) saturate(1.25);animation:toastIn .36s cubic-bezier(.16,1,.3,1)}.toast-msg__icon{width:28px;height:28px;min-width:28px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;line-height:1;flex-shrink:0;background:#ffffff1a;border:1px solid rgba(255,255,255,.12)}.toast-msg--success .toast-msg__icon{background:#22c55e2e;border-color:#22c55e47;color:#86efac}.toast-msg--error .toast-msg__icon{background:#ef444429;border-color:#ef444447;color:#fca5a5}.toast-msg--warning .toast-msg__icon{background:#f59e0b2e;border-color:#f59e0b47;color:#fcd34d}.toast-msg--info .toast-msg__icon{background:#3b82f629;border-color:#3b82f647;color:#93c5fd}.toast-msg__text{flex:1;min-width:0;text-align:left;word-break:break-word}.toast-msg__close{width:26px;height:26px;min-width:26px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:#ffffff14;color:#ffffffd1;font-size:11px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .15s,transform .12s;margin-left:2px}.toast-msg__close:hover{background:#ffffff24}.toast-msg__close:active{transform:scale(.92)}.toast-msg__progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,#ffffff38,#ffffff0f);transform-origin:left;animation:toastProgress var(--toast-duration, 6s) linear forwards;opacity:.9}.toast-msg--success .toast-msg__progress{background:linear-gradient(90deg,#22c55e,#22c55e2e)}.toast-msg--error .toast-msg__progress{background:linear-gradient(90deg,#ef4444,#ef44442e)}.toast-msg--warning .toast-msg__progress{background:linear-gradient(90deg,#f59e0b,#f59e0b2e)}.toast-msg--info .toast-msg__progress{background:linear-gradient(90deg,#3b82f6,#3b82f62e)}.toast-msg--success{border-color:#22c55e47;background:linear-gradient(180deg,#103620f5,#0c2818f5)}.toast-msg--error{border-color:#ef44444d;background:linear-gradient(180deg,#401014f5,#300c10f5)}.toast-msg--warning{border-color:#f59e0b52;background:linear-gradient(180deg,#40260af5,#301e08f5)}.toast-msg--info{border-color:#3b82f647;background:linear-gradient(180deg,#0e2440f5,#0c1c30f5)}@keyframes toastIn{0%{opacity:0;transform:translateY(-10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toastProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.toast-enter-active{transition:all .32s cubic-bezier(.16,1,.3,1)}.toast-leave-active{transition:all .22s ease}.toast-enter-from{opacity:0;transform:translateY(-10px) scale(.98)}.toast-leave-to{opacity:0;transform:translateY(-6px) scale(.98)}@keyframes fadeInPanel{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:220% 0}to{background-position:-220% 0}}@keyframes riseIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:991px){.auth-modal-backdrop{place-items:start center;padding:calc(72px + env(safe-area-inset-top,0px)) 10px 10px}.auth-modal{width:min(640px,100%);max-height:calc(100dvh - 82px)}.topbar{padding:0 14px;gap:10px}.brand-wrap{min-width:0;flex:1;max-width:calc(100% - 176px)}.brand-copy{min-width:0}.brand-logo{width:44px;height:44px}.brand-name{font-size:1.1rem}.topbar-actions{gap:6px;flex-shrink:1;max-width:176px}.topbar-btn--mobile-account,.topbar-btn--mobile-menu{min-width:84px;padding-inline:8px;gap:6px}.topbar-btn--mobile-account .topbar-btn__label,.topbar-btn--mobile-menu .topbar-btn__label{min-width:0;max-width:56px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-btn--mobile-create{min-width:42px;width:42px;padding-inline:0;justify-content:center;border-radius:14px}.topbar-btn--mobile-create .topbar-btn__label{display:none}.topbar-btn--mobile-create .topbar-btn__icon{font-size:1.15rem;margin:0}.layout{grid-template-columns:1fr;grid-template-rows:1fr;gap:0;padding:0;width:100%}.meta{display:none}.sidebar-highlights{grid-template-columns:repeat(3,minmax(0,1fr))}.only-mobile{display:inline-flex;align-items:center}.sidebar-shell{position:fixed;inset:auto 8px 8px;width:auto;max-width:none;transform:translateY(calc(100% + 20px));transition:transform .26s ease,opacity .22s ease;z-index:1700;padding:0;opacity:0;pointer-events:none;display:flex;flex-direction:column;justify-content:flex-end}.sidebar-shell--open{transform:translateY(0);opacity:1;pointer-events:auto}.sidebar-sheet-chrome{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px 0;border-radius:20px 20px 0 0;background:linear-gradient(180deg,#0a2535fa,#0a2535f0);border:1px solid #2a5b73;border-bottom:none;box-shadow:0 -10px 26px #020a123d}.sidebar-sheet-handle{width:52px;height:5px;border-radius:999px;background:#92bed16b;margin:0 auto;flex:1;max-width:52px}.sidebar-sheet-close{border:1px solid rgba(74,129,153,.42);background:#0b202dc2;color:#d8eef7;border-radius:999px;padding:6px 12px;font-size:.76rem;font-weight:700;cursor:pointer}.sidebar{height:auto;max-height:min(78dvh,calc(100dvh - 100px));overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y;border-radius:0 0 20px 20px;border-top:none;box-shadow:0 -18px 38px #020a1252}.sidebar-backdrop{display:block;position:fixed;inset:calc(64px + env(safe-area-inset-top,0px)) 0 0;border:none;background:#01050ea6;z-index:2160;width:100%;height:100vh;cursor:pointer}.sidebar-shell.sidebar-shell--open{z-index:2200}.topbar-btn,.profile-menu__item,.sidebar-backdrop{min-height:44px;min-width:44px;font-size:1rem;touch-action:manipulation}.map-shell{order:-1;padding:8px 8px 12px}.layout--map-focus{grid-template-rows:1fr}.layout--map-focus .sidebar-shell{transform:translateY(calc(100% + 20px));opacity:0;pointer-events:none}.layout--map-focus .map-shell{order:0}.layout--map-focus .map-panel{height:calc(100dvh - 68px);border-radius:14px}.map-legend-card{right:8px;top:8px;max-width:min(250px,calc(100% - 16px))}.sidebar{border-right:1px solid #1f2a44}.map-panel{height:clamp(360px,calc(100dvh - 84px - env(safe-area-inset-bottom,0px)),100dvh);border-radius:14px}.map-root{min-height:100%}.leaflet-control-attribution{display:none!important}.row{grid-template-columns:1fr}.oauth-grid{grid-template-columns:1fr;gap:12px}.oauth-btn{min-height:52px;padding:14px 16px;font-size:.96rem;border-radius:14px}.oauth-btn__logo{width:30px;height:30px;font-size:.88rem}.oauth-btn__text{font-size:.96rem}.oauth-block{padding:16px;gap:12px}.oauth-title{font-size:.88rem}.spot-list.grid,.moderation-item{grid-template-columns:1fr}.moderation-panel,.notifications-panel{position:fixed;top:68px;right:10px;left:10px;width:auto;max-width:none;max-height:calc(100vh - 80px)}.toast-stack{top:calc(78px + env(safe-area-inset-top,0px));right:12px;left:12px;bottom:auto;align-items:center;max-width:none}.toast-msg{min-width:0;width:fit-content;max-width:min(420px,calc(100vw - 24px));padding:13px 16px 15px;font-size:.88rem;font-weight:600;border-radius:14px;box-shadow:0 10px 28px #0000005c,0 2px 8px #0000002e;margin:0 auto}.toast-msg__text{text-align:center}.toast-msg__close{display:inline-flex}}@media(max-width:991px)and (max-height:420px){.topbar{height:calc(60px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) 10px 0}.app-content{padding-top:calc(60px + env(safe-area-inset-top,0px))}.brand-copy{display:none}.brand-wrap{max-width:52px}}@media(max-width:640px){.topbar{padding:env(safe-area-inset-top,0px) 10px 0;gap:6px}.brand-logo{width:34px;height:34px}.brand-name{font-size:.88rem}.brand-subtitle{display:none}.brand-wrap{max-width:calc(100% - 150px)}.topbar-actions{gap:5px;max-width:150px}.topbar-btn{min-height:38px;padding:7px;font-size:.74rem;border-radius:10px}.only-mobile .topbar-btn__label,.topbar-btn--logout .topbar-btn__label,.mod-summary .mod-label{display:none}.topbar-btn--mobile-account .topbar-btn__label,.topbar-btn--mobile-menu .topbar-btn__label{display:inline-flex}.topbar-btn--mobile-create{min-width:38px;width:38px;justify-content:center;padding-left:0;padding-right:0;border-radius:14px}.topbar-btn--mobile-create .topbar-btn__label{display:none}.topbar-btn--mobile-create .topbar-btn__icon{font-size:1.15rem;font-weight:700}.only-mobile,.topbar-btn--logout,.mod-summary,.notif-btn{min-width:38px;width:38px;justify-content:center;padding-left:0;padding-right:0}.topbar-btn--mobile-menu{min-width:76px;width:auto;justify-content:space-between;padding-left:6px;padding-right:6px}.topbar-btn--mobile-account{min-width:74px;width:auto;justify-content:space-between;padding-left:6px;padding-right:6px}.topbar-btn--cta{min-width:auto;width:auto;padding-left:8px;padding-right:8px}.profile-menu__dropdown{right:auto;left:0}.role-pill{display:none}.sidebar-highlights{grid-template-columns:1fr}.sidebar-shell{left:0;right:0;bottom:0}.sidebar-sheet-chrome{padding:10px 12px 0;border-radius:18px 18px 0 0}.sidebar{max-height:min(76dvh,calc(100dvh - 104px));border-radius:0}.sidebar-shell{left:4px;right:4px;width:auto;max-width:none;top:64px;padding:4px}.sidebar-backdrop{inset:calc(64px + env(safe-area-inset-top,0px)) 0 0}.sidebar{height:calc(100dvh - 80px)}.layout{grid-template-rows:1fr;gap:0;padding:0;width:100%}.map-shell{padding:6px 6px 10px}.sidebar{padding:12px;gap:10px}.map-panel{height:clamp(360px,calc(100dvh - 80px),100dvh);border-radius:12px}.auth-modal-backdrop{padding:calc(72px + env(safe-area-inset-top,0px)) 8px 8px}.auth-modal{max-height:calc(100dvh - 82px);padding:14px}.map-toolbar{top:8px;right:8px}.map-overlay{left:8px;top:78px;max-width:min(248px,calc(100% - 16px));font-size:.75rem;padding:7px 9px}.map-toolbar--tablet{top:8px;right:8px}.map-toolbar--mobile{top:auto;left:50%;right:auto;transform:translate(-50%);bottom:calc(32px + env(safe-area-inset-bottom,0px));gap:5px;padding:4px;justify-content:center;max-width:calc(100% - 12px)}.map-tool-btn{min-height:34px;width:auto;min-width:104px;padding:5px 8px;font-size:.69rem;gap:5px}.layout--map-focus .map-panel{height:calc(100vh - 76px);border-radius:12px}.map-selected-card{left:8px;right:8px;bottom:calc(56px + env(safe-area-inset-bottom,0px));max-width:none}.map-legend-card{left:auto;right:8px;top:8px;padding:8px 9px;max-width:188px}.map-legend-card__items{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.map-legend-item{font-size:.64rem;justify-content:flex-start}.spot-list{max-height:45vh}.spot-detail-panel{margin-top:0;padding:14px 12px 16px;max-height:calc(100dvh - 70px - env(safe-area-inset-top,0px))}.spot-detail-panel__head{flex-direction:column;align-items:flex-start}.spot-detail-panel__actions{width:100%}.spot-detail-panel__actions .topbar-btn{flex:1;justify-content:center}.spot-detail-panel__comment-form{flex-direction:column}.spot-gallery__hero{max-height:50vh}.spot-detail-panel__rating-actions .topbar-btn{flex:1}.profile-panel__favorite-item{flex-direction:column;align-items:stretch;padding:10px;gap:10px}.profile-panel__favorite-thumb{width:100%;height:128px}.profile-panel__favorite-arrow{display:none}.auth-modal--wide{width:100%;border-radius:18px;padding:18px;max-height:calc(100dvh - 60px)}.auth-modal--wide .row{grid-template-columns:1fr;gap:8px}.auth-modal--wide .auth-form{gap:10px}.auth-modal--wide .auth-label{font-size:.82rem;margin-bottom:-1px}.auth-modal--wide .input{padding:12px 14px;font-size:16px}.spot-form-section{padding:12px 0}.spot-image-grid{grid-template-columns:1fr 1fr;gap:10px}.spot-location-actions{flex-direction:column;gap:8px}.spot-location-actions .topbar-btn{width:100%;justify-content:center;padding:12px 16px;font-size:.88rem}.spot-address-results{max-height:200px}.spot-tag-picker{flex-direction:column;gap:8px}.spot-tag-picker .input{flex:1 1 auto;width:100%}.spot-tag-picker .topbar-btn{width:100%;justify-content:center}.spot-autofill-status{font-size:.74rem;padding:7px 10px}.spot-map-picker{height:200px}.auth-actions{flex-direction:column-reverse;gap:6px}.auth-actions .topbar-btn{width:100%;justify-content:center;padding:10px}.profile-panel__stats-row{flex-direction:column;gap:6px}.profile-panel__stat-card{flex-direction:row;justify-content:space-between;padding:10px 14px}.spot-detail-panel__auth-hint{padding:8px 10px;font-size:.76rem}.spot-detail-panel__auth-hint .topbar-btn--primary{align-self:stretch;width:100%;justify-content:center;padding:7px 10px}.spot-detail-panel__auth-hint--actions{width:100%;margin-left:0}}@media(max-width:430px){.topbar{padding:env(safe-area-inset-top,0px) 8px 0;gap:4px;height:calc(60px + env(safe-area-inset-top,0px))}.app-content{padding-top:calc(60px + env(safe-area-inset-top,0px))}.brand-logo{width:30px;height:30px}.brand-name{font-size:.84rem}.topbar-btn--mobile-menu .topbar-btn__label{display:inline-flex;font-size:.62rem;max-width:56px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-btn--mobile-create{min-width:34px;width:34px;min-height:34px;padding-left:0;padding-right:0;justify-content:center;border-radius:13px}.topbar-btn--mobile-create .topbar-btn__label{display:none}.topbar-btn--mobile-create .topbar-btn__icon{font-size:1.05rem;font-weight:700;margin:0}.topbar-btn--mobile-account .topbar-btn__label{display:inline-flex;font-size:.64rem;max-width:48px}.topbar-btn--mobile-menu,.topbar-btn--mobile-account{min-width:34px;width:auto;min-height:34px;padding-left:6px;padding-right:6px}.topbar-btn--mobile-account{min-width:74px;justify-content:space-between}.topbar-btn--lang{min-width:34px;width:34px;min-height:34px;padding:0 4px}.topbar-btn--lang .topbar-btn__label{white-space:nowrap;font-size:.9rem;letter-spacing:0;line-height:1}.brand-wrap{max-width:calc(100% - 164px)}.topbar-actions{max-width:164px;gap:4px}.map-legend-card{right:8px;top:8px;left:auto;padding:6px 8px;max-width:178px}.map-legend-card strong{font-size:.7rem}.map-legend-card__toggle{padding:2px 8px;font-size:.62rem}.map-toolbar--mobile{bottom:calc(30px + env(safe-area-inset-bottom,0px));padding:3px}.map-tool-btn{min-width:96px;min-height:32px;font-size:.66rem}}@media(min-width:992px){.layout{grid-template-columns:minmax(280px,330px) minmax(0,1fr)}.kpi-strip{grid-template-columns:minmax(0,1fr);padding-top:8px}.map-panel{height:clamp(620px,calc(100dvh - 156px),920px)}}.app-footer{flex-shrink:0;padding:22px 20px max(18px,env(safe-area-inset-bottom,0px));border-top:1px solid rgba(70,125,149,.2);background:linear-gradient(180deg,#06121bfa,#051018fa),radial-gradient(circle at 12% 0%,rgba(21,192,183,.12),transparent 28%),radial-gradient(circle at 90% 10%,rgba(245,158,11,.1),transparent 24%);position:relative;z-index:10;display:grid;gap:18px}.app-footer__grid{display:grid;grid-template-columns:minmax(0,1.35fr) repeat(2,minmax(220px,.8fr)) minmax(220px,.9fr);gap:18px;align-items:start}.app-footer__brand{display:flex;align-items:flex-start;gap:12px}.app-footer__brand-copy{display:grid;gap:5px}.app-footer__eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#68b4cc}.app-footer__logo{width:44px;height:44px;object-fit:contain;border-radius:10px;box-shadow:0 10px 22px #0000003d}.app-footer__name{font-family:var(--font-display);font-weight:700;font-size:1rem;color:#c8f0f9}.app-footer__tagline{color:#7eaabd;font-size:.82rem;line-height:1.5}.app-footer__section{display:grid;gap:10px}.app-footer__summary{margin:0;color:#7eaabd;font-size:.82rem;line-height:1.45}.app-footer__links{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap}.app-footer__link{border:1px solid rgba(70,125,149,.28);background:#0b1f2c8f;color:#9fd0e2;padding:7px 11px;cursor:pointer;font-size:.78rem;font-weight:600;font-family:var(--font-body);border-radius:999px;transition:color .15s,background .15s,border-color .15s,transform .15s;white-space:nowrap}.app-footer__link:hover{color:#d4edf9;background:#4e86a02e;border-color:#62a4c26b;transform:translateY(-1px)}.app-footer__link--cta{color:#15c0b7;font-weight:600;border-color:#15c0b752;background:#15c0b714}.app-footer__link--cta:hover{background:#15c0b724;color:#6ee7df}.app-footer__actions{display:flex;flex-wrap:wrap;gap:8px}.app-footer__section--stats{min-width:0}.app-footer__stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.app-footer__stat-card{border:1px solid rgba(69,120,145,.34);border-radius:16px;background:linear-gradient(180deg,#0a1f2cd1,#081723d1);padding:12px 13px;display:grid;gap:3px}.app-footer__stat-card strong{color:#ebfbff;font-family:var(--font-display);font-size:.98rem}.app-footer__stat-card span{color:#7faabe;font-size:.75rem}.app-footer__count{color:#6fa8c4;font-size:.76rem}.app-footer__copy{color:#4f8aa6;font-size:.76rem}.app-footer__bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px;border-top:1px solid rgba(49,83,100,.42)}.app-footer__status{color:#8ec7bf;font-size:.76rem;white-space:nowrap}@media(max-width:991px){.brand-subtitle{display:none}.app-footer{padding:18px 14px 16px;gap:16px}.app-footer__grid{grid-template-columns:1fr 1fr}.app-footer__count{display:block}}@media(max-width:640px){.brand-name{font-size:1.05rem}.app-footer{padding:16px 12px 14px;gap:14px}.app-footer__grid{grid-template-columns:1fr}.app-footer__links,.app-footer__actions{width:100%}.app-footer__stat-card{padding:11px 12px}.app-footer__bottom{width:100%;flex-direction:column;align-items:flex-start}.topbar-btn--mobile-account,.topbar-btn--mobile-menu{min-width:96px}.mobile-more-menu{width:100%;padding:12px}.mobile-more-menu__hero-stats,.mobile-more-menu__section--grid{grid-template-columns:1fr 1fr}.mobile-more-card{min-height:100px}}.handle-hint{font-size:12px;color:#8e8e93;text-align:center;margin-top:4px;display:block;letter-spacing:.02em}.spot-detail-panel__close--senior{background:#fff!important;color:#0a1520!important;border:1px solid rgba(0,0,0,.12)!important;width:36px!important;height:36px!important;font-size:18px!important;font-weight:700!important;border-radius:50%!important;box-shadow:0 4px 12px #00000026!important;top:10px!important;right:10px!important;line-height:1!important}.detail-sticky-footer{position:sticky;bottom:0;background:#0a1520;border-top:1px solid rgba(0,0,0,.06);padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:16px;z-index:2}.detail-sticky-footer small{font-size:12px;color:#8e8e93}.detail-sticky-footer .cbtn{width:100%;justify-content:center;height:56px;font-size:16px}.lightbox-close-senior{position:fixed;top:calc(12px + env(safe-area-inset-top,0px));right:calc(12px + env(safe-area-inset-right,0px));z-index:9999;background:#fff;color:#0a1520;border:none;width:44px;height:44px;border-radius:50%;font-size:18px;font-weight:700;line-height:1;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #0000004d;cursor:pointer;-webkit-tap-highlight-color:transparent}.empty-cities{margin-top:12px;display:flex;flex-direction:column;gap:8px;align-items:center}.empty-cities__row{display:flex;gap:8px}.city-btn{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:20px;padding:8px 14px;font-size:13px;font-weight:600;cursor:pointer}.empty-hint{margin-top:8px;background:#ffffff14;padding:6px 10px;border-radius:8px;font-size:12px}.spot-detail-panel__streetview{margin-top:16px}.spot-detail-panel__section-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#0a1520;margin:0 0 8px}.bottom-nav .label{font-size:12.5px!important}.leaflet-control-zoom a{width:44px!important;height:44px!important;line-height:44px!important;font-size:22px!important}@media(max-width:991px){.auth-modal input[type=text],.auth-modal input[type=email],.auth-modal input[type=password]{height:52px!important;font-size:16px!important;padding:12px 14px!important}.auth-modal .cbtn--primary,.auth-modal .spot-submit-btn{height:56px!important;font-size:17px!important}.auth-subtitle{font-size:15px!important;color:#d0fffb!important}}.earth-pill{display:flex;justify-content:space-around;align-items:center;background:#1c1c1ef2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:999px;padding:8px 6px;margin:16px 0 8px;box-shadow:0 4px 20px #00000040;border:1px solid rgba(255,255,255,.08)}.earth-pill__btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;background:transparent;border:none;color:#fff;font-size:11px;font-weight:600;cursor:pointer;padding:6px 4px;border-radius:12px}.earth-pill__btn--accent{color:#ff9500}.earth-pill__icon{font-size:18px;line-height:1}.earth-pill__btn:active{transform:scale(.96)}.map-search-bar{position:absolute;top:calc(12px + env(safe-area-inset-top,0px));left:12px;right:12px;z-index:800;display:flex;align-items:center;gap:8px;background:#0d1b26eb;border:1px solid rgba(60,110,138,.25);border-radius:12px;padding:6px 8px;box-shadow:0 4px 16px #00000038;backdrop-filter:blur(8px)}.map-search-bar__filter,.map-search-bar__search{width:36px;height:36px;border-radius:8px;border:1px solid rgba(60,110,138,.2);background:#112636;color:#8fb3c4;display:flex;align-items:center;justify-content:center;font-size:16px;cursor:pointer;flex-shrink:0}.map-search-bar__filter:hover,.map-search-bar__search:hover{background:#162f42;color:#e8f5fb}.map-search-bar input{flex:1;border:none;outline:none;font-size:15px;color:#e8f5fb;background:transparent}.map-search-bar input::placeholder{color:#5a8a9e}.map-search-bar__action{width:36px;height:36px;border-radius:50%;border:none;background:#112636;display:flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer;box-shadow:0 2px 8px #0000001f}.leaflet-top.leaflet-left{top:12px;z-index:500}.leaflet-left .leaflet-control{margin-left:12px}@media(min-width:992px){.map-search-bar{max-width:420px;left:50%;transform:translate(-50%)}}.wizard-modal{max-height:calc(100dvh - 16px);display:flex;flex-direction:column;overflow:hidden}.wizard-header{position:sticky;top:0;z-index:2;background:linear-gradient(170deg,#0e2a3afc,#081c28fc);border-bottom:1px solid rgba(74,129,153,.16);margin:-24px -24px 14px;padding:18px 24px 14px;border-radius:22px 22px 0 0}.wizard-title-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.wizard-close{width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:#ffffff14;color:#e2e8f0;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px}.wizard-steps{margin-top:10px;display:grid;gap:8px}.wizard-progress{height:4px;background:#ffffff14;border-radius:999px;overflow:hidden}.wizard-progress-fill{height:100%;background:linear-gradient(90deg,#14b8a6,#0ea5e9);transition:width .28s cubic-bezier(.16,1,.3,1)}.wizard-step-dots{display:flex;gap:8px}.wizard-dot{flex:1;display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:#6d96ab;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:999px;padding:6px 10px;transition:all .2s}.wizard-dot em{width:22px;height:22px;border-radius:50%;background:#ffffff14;display:flex;align-items:center;justify-content:center;font-style:normal;font-size:11px;font-weight:800;flex-shrink:0}.wizard-dot.active{color:#e8f5fb;background:#15c0b71f;border-color:#15c0b747}.wizard-dot.active em{background:#14b8a6;color:#0a1520}.wizard-dot.done{color:#14b8a6}.wizard-dot.done em{background:#15c0b738;color:#14b8a6}.wizard-step-label{font-size:11px;color:#7aa7bb;font-weight:600;letter-spacing:.02em}.wizard-draft{margin:8px 0 0;font-size:12px;color:#fbbf24;background:#fbbf241a;border:1px solid rgba(251,191,36,.22);padding:6px 10px;border-radius:8px;display:flex;justify-content:space-between;align-items:center}.wizard-draft-clear{background:none;border:none;color:#fbbf24;font-weight:700;cursor:pointer;text-decoration:underline;font-size:12px}.wizard-form{overflow-y:auto;max-height:min(62vh,560px);padding-right:2px;gap:14px!important}.wizard-step{display:grid;gap:14px;animation:riseIn .28s ease}.wizard-card{background:#ffffff08;border:1px solid rgba(74,129,153,.14);border-radius:16px;padding:14px;display:grid;gap:10px}.wizard-advanced{margin-top:6px;font-size:12px;color:#7aa7bb}.wizard-advanced summary{cursor:pointer;user-select:none;padding:6px 0;list-style:none}.wizard-advanced summary::-webkit-details-marker{display:none}.wizard-location-ok{background:#15c0b71a;border:1px solid rgba(21,192,183,.18);color:#b9f0eb;font-size:12px;font-weight:600;padding:7px 10px;border-radius:8px;text-align:center}.wizard-image-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.wizard-image-slot{position:relative;aspect-ratio:1;border:2px dashed rgba(74,129,153,.24);border-radius:14px;overflow:hidden;background:#0a192a99;transition:border-color .2s,background .2s}.wizard-image-slot.filled{border-style:solid;border-color:#15c0b752;background:#0a1520}.wizard-image-slot.error{border-color:#f87171}.wizard-image-label{display:flex;width:100%;height:100%;align-items:center;justify-content:center;cursor:pointer}.wizard-image-label img{width:100%;height:100%;object-fit:cover;display:block}.wizard-image-placeholder{display:grid;place-items:center;gap:4px;color:#7aa7bb;text-align:center;padding:8px}.wizard-image-plus{width:32px;height:32px;border-radius:50%;background:#15c0b724;color:#14b8a6;display:flex;align-items:center;justify-content:center;font-size:18px}.wizard-image-placeholder small{font-size:11px;font-weight:600;line-height:1.2}.wizard-image-input{display:none}.wizard-image-remove{position:absolute;top:6px;right:6px;width:24px;height:24px;border-radius:50%;border:none;background:#000000a3;color:#fff;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(6px)}.wizard-image-name{position:absolute;bottom:0;left:0;right:0;background:#0000009e;color:#fff;font-size:10px;padding:4px 6px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wizard-category-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.wizard-cat-chip{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;border-radius:12px;border:1px solid rgba(74,129,153,.18);background:#0a192a99;color:#9ec0cf;font-size:11px;font-weight:600;cursor:pointer;transition:all .16s;min-height:64px;justify-content:center}.wizard-cat-chip:hover{border-color:#15c0b747;background:#15c0b70f}.wizard-cat-chip.active{background:#14b8a6;border-color:#14b8a6;color:#0a1520;box-shadow:0 4px 14px #15c0b738}.wizard-cat-icon{font-size:18px}.wizard-tags-hint{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.wizard-tag-suggest{border:1px solid rgba(21,192,183,.18);background:#15c0b714;color:#14b8a6;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s}.wizard-tag-suggest.active{background:#14b8a6;border-color:#14b8a6;color:#0a1520}.wizard-tag-suggest:focus-visible{outline:2px solid #14B8A6;outline-offset:2px}.wizard-summary{background:#15c0b70f;border:1px solid rgba(21,192,183,.14);border-radius:14px;padding:14px;display:grid;gap:8px}.wizard-summary h4{margin:0;font-size:13px;font-weight:700;color:#e8f5fb}.wizard-summary-row{display:flex;align-items:center;gap:8px;font-size:13px;color:#cbd5e1}.wizard-summary-row span:first-child{font-size:14px}.wizard-actions{position:sticky;bottom:0;display:flex;gap:10px;padding:12px 0 0;margin-top:4px;border-top:1px solid rgba(74,129,153,.12);background:linear-gradient(180deg,transparent,rgba(8,28,40,.96) 18%);backdrop-filter:blur(8px);z-index:1}.wizard-actions .topbar-btn{flex:1;justify-content:center;min-height:48px}.wizard-next{background:linear-gradient(135deg,#14b8a6,#0ea5e9)!important;border-color:transparent!important;color:#fff!important}.draft-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;background:linear-gradient(135deg,#15c0b724,#0ea5e91f);border:1px solid rgba(21,192,183,.22);border-radius:12px;padding:10px 14px;margin:0 16px 12px;font-size:13px;color:#e8f5fb;backdrop-filter:blur(8px)}.draft-banner__text{flex:1;font-weight:600;line-height:1.4}.draft-banner__actions{display:flex;gap:8px;flex-shrink:0}.draft-banner__btn{padding:8px 14px;border-radius:999px;font-size:12px;font-weight:700;cursor:pointer;border:none;transition:all .15s}.draft-banner__btn--primary{background:#14b8a6;color:#0a1520}.draft-banner__btn--primary:hover{background:#0ea5e9;color:#fff}.draft-banner__btn--ghost{background:#ffffff0f;color:#8fb3c4;border:1px solid rgba(255,255,255,.1);width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:50%}@media(max-width:640px){.wizard-header{margin:-14px -14px 12px;padding:14px 14px 12px;border-radius:18px 18px 0 0}.wizard-form{max-height:min(58vh,520px)}.wizard-image-grid{gap:8px}.draft-banner{margin:0 8px 10px;padding:8px 10px;font-size:12px}.draft-banner__btn--primary{padding:7px 10px;font-size:11px}.wizard-category-chips{grid-template-columns:repeat(2,1fr)}.wizard-dot{padding:5px 8px;font-size:11px}}@media(max-width:375px){.hero__h1{font-size:1.6rem!important}.hero__sub{font-size:.88rem!important}.sc-card--main{width:200px!important;left:8px!important}.sc-card--back{width:160px!important;right:-2px!important}.spot-finder-panel,.discover-panel,.settings-panel{max-height:calc(100dvh - 56px - env(safe-area-inset-top) - env(safe-area-inset-bottom))!important}.l-table{display:block;overflow-x:auto;white-space:nowrap}.home-spots__grid{gap:10px!important}}.moderation-bulk[data-v-1c729807]{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0;padding:10px;background:#ffffff0a;border:1px solid rgba(60,110,138,.18);border-radius:12px}.bulk-msg[data-v-1c729807]{font-size:12px;color:#9ec0cf;width:100%}.cookie-banner[data-v-969b81f1]{position:fixed;bottom:0;left:0;right:0;z-index:99999;background:#081421fa;backdrop-filter:blur(20px) saturate(1.8);border-top:1px solid rgba(21,192,183,.15);box-shadow:0 -8px 40px #00000073}.cookie-banner__inner[data-v-969b81f1]{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:16px 20px max(16px,env(safe-area-inset-bottom,0px))}.cookie-banner__body[data-v-969b81f1]{flex:1;min-width:260px}.cookie-banner__title[data-v-969b81f1]{margin:0 0 4px;font-size:.82rem;font-weight:700;color:#dceeff;letter-spacing:.02em}.cookie-banner__text[data-v-969b81f1]{margin:0;font-size:.78rem;color:#8ba9b8;line-height:1.55}.cookie-banner__link[data-v-969b81f1]{color:#37c5e3;text-decoration:underline;text-underline-offset:2px;font-weight:600;white-space:nowrap}.cookie-banner__link[data-v-969b81f1]:hover{color:#7de3f7}.cookie-banner__actions[data-v-969b81f1]{display:flex;gap:10px;flex-shrink:0}.cookie-banner__btn[data-v-969b81f1]{padding:10px 20px;min-height:44px;border-radius:999px;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .18s,border-color .18s,color .18s,box-shadow .18s;white-space:nowrap}.cookie-banner__btn--ghost[data-v-969b81f1]{background:transparent;border:1px solid rgba(70,125,149,.45);color:#9cc4d5}.cookie-banner__btn--ghost[data-v-969b81f1]:hover{border-color:#15c0b780;color:#d8f5ff}.cookie-banner__btn--reject[data-v-969b81f1]{background:transparent;border:1px solid rgba(220,70,70,.35);color:#d49494}.cookie-banner__btn--reject[data-v-969b81f1]:hover{border-color:#dc464699;color:#f5c8c8;background:#dc464614}.cookie-banner__btn--accept[data-v-969b81f1]{background:#15c0b72e;border:1px solid rgba(21,192,183,.45);color:#b8fff9}.cookie-banner__btn--accept[data-v-969b81f1]:hover{background:#15c0b747;border-color:#15c0b7b3;box-shadow:0 0 16px #15c0b724}.cookie-banner__panel[data-v-969b81f1]{border-top:1px solid rgba(70,125,149,.2);padding:16px 20px max(16px,env(safe-area-inset-bottom,0px));max-width:1100px;margin:0 auto;background:#050f1a99}.cookie-banner__panel-title[data-v-969b81f1]{margin:0 0 14px;font-size:.82rem;font-weight:700;color:#d0e5f0}.cookie-banner__categories[data-v-969b81f1]{display:grid;gap:12px}.cookie-banner__category-header[data-v-969b81f1]{display:flex;align-items:flex-start;gap:14px}.cookie-banner__category-info[data-v-969b81f1]{flex:1;min-width:0}.cookie-banner__category-name[data-v-969b81f1]{font-size:.8rem;font-weight:600;color:#cce6f2;display:block;margin-bottom:2px}.cookie-banner__category-required[data-v-969b81f1]{font-size:.68rem;font-weight:400;color:#6a95a8;margin-left:6px}.cookie-banner__category-desc[data-v-969b81f1]{margin:0;font-size:.72rem;color:#7e9eae;line-height:1.45}.cookie-banner__switch[data-v-969b81f1]{position:relative;display:inline-block;width:42px;height:24px;flex-shrink:0;margin-top:2px}.cookie-banner__switch input[data-v-969b81f1]{opacity:0;width:0;height:0}.cookie-banner__slider[data-v-969b81f1]{position:absolute;inset:0;background:#32556999;border-radius:24px;cursor:pointer;transition:background .22s}.cookie-banner__slider[data-v-969b81f1]:before{content:"";position:absolute;height:18px;width:18px;left:3px;bottom:3px;background:#cde3ee;border-radius:50%;transition:transform .22s}.cookie-banner__switch input:checked+.cookie-banner__slider[data-v-969b81f1]{background:#15c0b780}.cookie-banner__switch input:checked+.cookie-banner__slider[data-v-969b81f1]:before{transform:translate(18px);background:#b8fff9}.cookie-banner__switch input:disabled+.cookie-banner__slider[data-v-969b81f1]{opacity:.5;cursor:not-allowed}.cookie-banner__switch input:disabled+.cookie-banner__slider[data-v-969b81f1]:before{background:#5a7e8f}.cookie-banner__panel-actions[data-v-969b81f1]{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.cookie-banner-enter-active[data-v-969b81f1]{transition:transform .35s cubic-bezier(.22,.61,.36,1),opacity .35s ease}.cookie-banner-leave-active[data-v-969b81f1]{transition:transform .25s ease-in,opacity .25s ease}.cookie-banner-enter-from[data-v-969b81f1],.cookie-banner-leave-to[data-v-969b81f1]{transform:translateY(100%);opacity:0}.cookie-panel-expand-enter-active[data-v-969b81f1]{transition:max-height .3s ease,opacity .25s ease,padding .3s ease;overflow:hidden}.cookie-panel-expand-leave-active[data-v-969b81f1]{transition:max-height .22s ease,opacity .18s ease,padding .22s ease;overflow:hidden}.cookie-panel-expand-enter-from[data-v-969b81f1],.cookie-panel-expand-leave-to[data-v-969b81f1]{max-height:0;opacity:0;padding-top:0;padding-bottom:0}@media(max-width:640px){.cookie-banner__inner[data-v-969b81f1]{flex-direction:column;align-items:stretch;gap:14px;padding:14px}.cookie-banner__actions[data-v-969b81f1]{justify-content:flex-end}.cookie-banner__btn[data-v-969b81f1]{padding:7px 16px;font-size:.76rem}.cookie-banner__panel[data-v-969b81f1]{padding:12px 14px}.cookie-banner__panel-actions[data-v-969b81f1]{flex-direction:row;justify-content:flex-end}}.bottom-nav[data-v-783e7f18]{position:fixed;bottom:calc(10px + env(safe-area-inset-bottom,0px));left:50%;transform:translate(-50%);width:calc(100% - 20px);max-width:380px;z-index:1200;display:flex;justify-content:center;pointer-events:none}.bottom-nav__pill[data-v-783e7f18]{width:100%;background:#0a1b2af0;-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);border:1px solid rgba(255,255,255,.06);border-radius:24px;box-shadow:0 10px 28px #00000057,0 1px #ffffff0a inset;pointer-events:auto;overflow:hidden}.bottom-nav__inner[data-v-783e7f18]{display:flex;justify-content:space-between;align-items:center;gap:2px;height:62px;padding:5px 6px}@media(min-width:992px){.bottom-nav[data-v-783e7f18]{display:none}}.nav-item[data-v-783e7f18]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:6px;border:none;background:transparent;cursor:pointer;border-radius:16px;min-width:0;flex:1;height:52px;transition:background .18s,transform .12s;-webkit-tap-highlight-color:transparent;position:relative}.nav-item[data-v-783e7f18]:hover{background:#ffffff0d}.nav-item[data-v-783e7f18]:active{transform:scale(.93)}.nav-item.active[data-v-783e7f18]{background:#15c0b724}.nav-item.active[data-v-783e7f18]:after{content:"";position:absolute;bottom:3px;left:50%;transform:translate(-50%);width:16px;height:2.5px;border-radius:999px;background:#14b8a6;opacity:.9}.nav-item--action[data-v-783e7f18]{flex:0 0 64px;height:52px}.nav-icon[data-v-783e7f18]{width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:#7aa7bb;transition:color .18s,transform .18s}.nav-item.active .nav-icon[data-v-783e7f18]{color:#14b8a6;transform:translateY(-.5px)}.nav-icon--action[data-v-783e7f18]{width:50px;height:50px;background:linear-gradient(135deg,#0d8f9f,#14b8a6 60%,#0ea5e9);color:#fff!important;border-radius:50%;box-shadow:0 5px 14px #14b8a65c,0 0 0 1px #ffffff14 inset;border:1px solid rgba(255,255,255,.12);transform:translateY(-4px)}.nav-item--action:active .nav-icon--action[data-v-783e7f18]{transform:translateY(-4px) scale(.94)}.nav-icon--action svg[data-v-783e7f18]{width:24px;height:24px}.nav-icon svg[data-v-783e7f18]{width:100%;height:100%}.avatar[data-v-783e7f18]{width:28px;height:28px;border-radius:50%;background:#ffffff14;color:#e8f5fb;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;border:1.5px solid rgba(255,255,255,.14);transition:all .18s}.avatar--active[data-v-783e7f18]{background:#14b8a6;color:#fff;border-color:#14b8a6;box-shadow:0 0 0 3px #14b8a62e}.label[data-v-783e7f18]{font-size:9px;font-weight:600;color:#8fb3c4;letter-spacing:.06em;text-transform:uppercase;line-height:1}.nav-item.active .label[data-v-783e7f18]{color:#e8fff9}.nav-item--action .label[data-v-783e7f18]{color:#c8fff9;font-size:8.5px;margin-top:-1px;letter-spacing:.05em}@media(max-width:360px){.bottom-nav[data-v-783e7f18]{width:calc(100% - 12px);max-width:none}.bottom-nav__inner[data-v-783e7f18]{gap:0;padding:4px;height:60px}.nav-item[data-v-783e7f18]{padding:4px 2px;height:48px}.label[data-v-783e7f18]{font-size:8.5px}.nav-icon--action[data-v-783e7f18]{width:50px;height:50px}}.spot-types-filter[data-v-ab24447c]{background:#ffffff0d;border-radius:16px;padding:16px;border:1px solid rgba(255,255,255,.1)}.filter-header[data-v-ab24447c]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.filter-header h3[data-v-ab24447c]{margin:0;font-size:12px;font-weight:600;color:#6d96ab;text-transform:uppercase;letter-spacing:.5px}.clear-btn[data-v-ab24447c]{background:none;border:none;color:#15c0b7;font-size:14px;font-weight:500;cursor:pointer}.types-grid[data-v-ab24447c]{display:flex;flex-wrap:wrap;gap:8px}.type-chip[data-v-ab24447c]{display:flex;align-items:center;gap:6px;padding:10px 16px;border-radius:20px;border:1px solid rgba(255,255,255,.2);background:#ffffff0d;font-size:14px;font-weight:500;color:#fff;cursor:pointer;transition:all .2s ease}.type-chip[data-v-ab24447c]:hover{background:#ffffff1a}.type-chip.selected[data-v-ab24447c]{border-color:transparent;color:#fff}.chip-icon[data-v-ab24447c]{font-size:14px}.distance-slider[data-v-ab5cee13]{background:#ffffff0d;border-radius:16px;padding:16px;border:1px solid rgba(255,255,255,.1)}.slider-header h3[data-v-ab5cee13]{margin:0 0 16px;font-size:12px;font-weight:600;color:#6d96ab;text-transform:uppercase;letter-spacing:.5px}.slider-content[data-v-ab5cee13]{margin-bottom:20px}.slider-labels[data-v-ab5cee13]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.label-left[data-v-ab5cee13]{font-size:16px;font-weight:500;color:#fff}.label-right[data-v-ab5cee13]{font-size:16px;font-weight:600;color:#6d96ab;transition:color .2s ease}.label-right.active[data-v-ab5cee13]{color:#15c0b7}.slider-track[data-v-ab5cee13]{position:relative;height:4px;background:#fff3;border-radius:2px}.range-input[data-v-ab5cee13]{position:absolute;width:100%;height:100%;margin:0;padding:0;opacity:0;cursor:pointer;z-index:2}.range-fill[data-v-ab5cee13]{position:absolute;top:0;left:0;height:100%;background:#15c0b7;border-radius:2px;pointer-events:none;transition:width .1s ease}.range-input[data-v-ab5cee13]::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;background:#0a1019;border:2px solid #15c0b7;border-radius:50%;cursor:pointer;box-shadow:0 2px 6px #0000004d}.range-input[data-v-ab5cee13]::-moz-range-thumb{width:24px;height:24px;background:#0a1019;border:2px solid #15c0b7;border-radius:50%;cursor:pointer;box-shadow:0 2px 6px #0000004d}.location-options[data-v-ab5cee13]{display:flex;flex-direction:column;gap:12px}.location-btn[data-v-ab5cee13]{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px;border-radius:12px;border:1px solid rgba(255,255,255,.2);background:#ffffff0d;font-size:15px;font-weight:500;color:#fff;cursor:pointer;transition:all .2s ease}.location-btn[data-v-ab5cee13]:hover{background:#ffffff1a}.location-btn.current[data-v-ab5cee13]{background:#00bfa61a;border-color:#00bfa64d}.location-btn.current[data-v-ab5cee13]:hover{background:#00bfa633}.location-btn svg[data-v-ab5cee13]{width:20px;height:20px}.custom-location[data-v-ab5cee13]{width:100%}.location-form[data-v-ab5cee13]{display:flex;gap:8px}.location-input[data-v-ab5cee13]{flex:1;padding:12px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.2);background:#ffffff0d;color:#fff;font-size:15px;outline:none;transition:border-color .2s ease}.location-input[data-v-ab5cee13]::placeholder{color:#6d96ab}.location-input[data-v-ab5cee13]:focus{border-color:#15c0b7}.location-submit[data-v-ab5cee13]{width:44px;height:44px;border-radius:12px;border:none;background:#15c0b7;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.location-submit[data-v-ab5cee13]:hover{background:#00a896}.location-submit svg[data-v-ab5cee13]{width:20px;height:20px;color:#fff}.lang-selector[data-v-38ae6d5f]{display:flex;gap:6px}.lang-btn[data-v-38ae6d5f]{width:36px;height:36px;border-radius:50%;border:2px solid rgba(80,140,168,.3);background:#0a1e2d99;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:0}.lang-btn[data-v-38ae6d5f]:hover{border-color:#508ca899;transform:scale(1.05)}.lang-btn.active[data-v-38ae6d5f]{border-color:#15c0b7;background:#15c0b726;box-shadow:0 0 0 2px #15c0b733}.lang-flag[data-v-38ae6d5f]{font-size:18px;line-height:1}.spot-finder-overlay[data-v-76a585a0]{position:fixed;inset:0;background:#020812d1;backdrop-filter:blur(12px) saturate(1.2);display:flex;align-items:flex-end;justify-content:center;z-index:2300;padding:0}.spot-finder-panel[data-v-76a585a0]{width:100%;max-width:500px;max-height:calc(100dvh - 72px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));max-height:calc(100vh - 72px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));background:linear-gradient(180deg,#0f2436,#0d1b26);border:1px solid rgba(60,110,138,.3);border-radius:22px 22px 0 0;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;box-shadow:0 -12px 40px #00000073;padding-bottom:max(12px,env(safe-area-inset-bottom,0px))}@media(min-width:992px){.spot-finder-overlay[data-v-76a585a0]{align-items:center;padding:16px}.spot-finder-panel[data-v-76a585a0]{border-radius:18px;max-height:calc(100vh - 32px)}}.panel-header[data-v-76a585a0]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid rgba(60,110,138,.15)}.header-right[data-v-76a585a0]{display:flex;align-items:center;gap:8px}.panel-title[data-v-76a585a0]{margin:0;font-size:1.05rem;font-weight:700;color:#e8f5fb}.close-btn[data-v-76a585a0]{width:44px;height:44px;border-radius:50%;border:1px solid rgba(60,110,138,.3);background:#112636;color:#8fb3c4;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s,color .15s}.close-btn[data-v-76a585a0]:hover{background:#1c3a4f;color:#e8f5fb}.close-btn svg[data-v-76a585a0]{width:16px;height:16px}.search-section[data-v-76a585a0]{padding:12px 16px}.search-input-wrapper[data-v-76a585a0]{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#112636;border:1px solid rgba(60,110,138,.25);border-radius:10px;transition:border-color .2s}.search-input-wrapper[data-v-76a585a0]:focus-within{border-color:#15c0b766}.search-icon[data-v-76a585a0]{width:18px;height:18px;color:#5a8a9e;flex-shrink:0}.search-input[data-v-76a585a0]{flex:1;border:none;background:transparent;font-size:15px;color:#e8f5fb;outline:none}.search-input[data-v-76a585a0]::placeholder{color:#5a8a9e}.spot-types-section[data-v-76a585a0]{padding:0 16px 12px;border-top:1px solid rgba(60,110,138,.1)}.spot-types-btn[data-v-76a585a0]{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:11px;background:#112636;border:1px solid rgba(60,110,138,.2);border-radius:10px;font-size:14px;font-weight:600;color:#8fb3c4;cursor:pointer;transition:background .15s}.spot-types-btn[data-v-76a585a0]:hover{background:#162f42}.chevron[data-v-76a585a0]{width:18px;height:18px;transition:transform .2s ease}.chevron.open[data-v-76a585a0]{transform:rotate(180deg)}.distance-section[data-v-76a585a0]{padding:12px 16px;border-top:1px solid rgba(60,110,138,.1)}.quick-filters[data-v-76a585a0]{display:flex;gap:8px;padding:12px 16px;border-top:1px solid rgba(60,110,138,.1)}.filter-pill[data-v-76a585a0]{flex:1;padding:10px 12px;background:#112636;border:1px solid rgba(60,110,138,.2);border-radius:8px;font-size:13px;font-weight:600;color:#8fb3c4;cursor:pointer;transition:background .15s,color .15s}.filter-pill[data-v-76a585a0]:hover{background:#162f42}.filter-pill.active[data-v-76a585a0]{background:#15c0b7;border-color:#15c0b7;color:#0d1b26}.attribute-toggles[data-v-76a585a0]{display:flex;gap:14px;padding:12px 16px;border-top:1px solid rgba(60,110,138,.1)}.toggle-label[data-v-76a585a0]{display:flex;align-items:center;gap:6px;cursor:pointer}.toggle-label input[data-v-76a585a0]{display:none}.toggle-circle[data-v-76a585a0]{width:18px;height:18px;border:2px solid rgba(60,110,138,.3);border-radius:50%;transition:all .15s ease}.toggle-label input:checked+.toggle-circle[data-v-76a585a0]{background:#15c0b7;border-color:#15c0b7}.toggle-label input:checked+.toggle-circle[data-v-76a585a0]:after{content:"✓";color:#0d1b26;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;height:100%}.toggle-text[data-v-76a585a0]{font-size:13px;color:#8fb3c4;font-weight:500}.toggle-suffix[data-v-76a585a0]{font-size:11px;color:#5a8a9e}.action-buttons[data-v-76a585a0]{display:flex;gap:10px;padding:16px max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));border-top:1px solid rgba(60,110,138,.15);background:#081824fa;position:sticky;bottom:0}.browse-btn[data-v-76a585a0]{flex:1;min-height:48px;padding:14px;background:linear-gradient(135deg,#15c0b7,#0da89f);border:none;border-radius:12px;font-size:15px;font-weight:700;color:#0d1b26;cursor:pointer;transition:transform .15s,background .15s;box-shadow:0 4px 14px #15c0b740}.browse-btn[data-v-76a585a0]:hover{background:#13b0a8}.clear-btn[data-v-76a585a0]{flex:1;min-height:48px;padding:13px;background:#112636;border:1px solid rgba(60,110,138,.25);border-radius:12px;font-size:14px;font-weight:600;color:#8fb3c4;cursor:pointer;transition:background .15s}.clear-btn[data-v-76a585a0]:hover{background:#162f42}.distance-warning[data-v-76a585a0]{margin:8px 0 0;padding:8px 12px;font-size:12px;color:#f59e0b;background:#f59e0b14;border:1px solid rgba(245,158,11,.2);border-radius:8px;text-align:center}.slide-up-enter-active[data-v-76a585a0],.slide-up-leave-active[data-v-76a585a0]{transition:all .25s ease}.slide-up-enter-from[data-v-76a585a0],.slide-up-leave-to[data-v-76a585a0]{opacity:0}.slide-up-enter-from .spot-finder-panel[data-v-76a585a0],.slide-up-leave-to .spot-finder-panel[data-v-76a585a0]{transform:translateY(-16px)}.preview-card[data-v-20957696]{position:fixed;bottom:calc(100px + env(safe-area-inset-bottom,0px));left:max(10px,env(safe-area-inset-left,0px));right:max(10px,env(safe-area-inset-right,0px));max-height:min(48vh,400px);max-height:min(calc(100dvh - 120px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)),400px);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;max-width:460px;margin:0 auto;background:linear-gradient(180deg,#0f2436,#0a1520);border:1px solid rgba(255,255,255,.1);border-radius:18px;box-shadow:0 12px 28px #0000005c,0 3px 8px #00000038;display:flex;flex-direction:column;z-index:1300;cursor:pointer;transition:box-shadow .22s ease;-webkit-tap-highlight-color:transparent;animation:previewIn-20957696 .32s cubic-bezier(.16,1,.3,1);-webkit-backdrop-filter:blur(12px) saturate(1.2);backdrop-filter:blur(12px) saturate(1.2);scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent}.preview-card[data-v-20957696]::-webkit-scrollbar{width:4px}.preview-card[data-v-20957696]::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:999px}@media(max-width:640px){.preview-card[data-v-20957696]{max-height:min(44vh,360px);max-height:min(calc(100dvh - 104px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)),360px);bottom:calc(94px + env(safe-area-inset-bottom,0px));left:max(8px,env(safe-area-inset-left,0px));right:max(8px,env(safe-area-inset-right,0px))}}@media(max-height:700px){.preview-card[data-v-20957696]{max-height:min(42vh,320px)}}@keyframes previewIn-20957696{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.preview-card[data-v-20957696]:active{transform:scale(.985)}.preview-handle[data-v-20957696]{display:flex;justify-content:center;padding:7px 0 4px;background:transparent}.preview-handle span[data-v-20957696]{width:32px;height:4px;border-radius:999px;background:#ffffff2e}.preview-top[data-v-20957696]{display:flex;align-items:center;justify-content:space-between;padding:1px 10px 4px;background:transparent}.preview-uploaded[data-v-20957696]{font-size:11px;font-weight:500;color:#8fb3c4;letter-spacing:.01em}.preview-top-actions[data-v-20957696]{display:flex;gap:6px;align-items:center}.preview-top-btn[data-v-20957696]{width:44px;height:44px;min-width:44px;min-height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.9);background:#fff;color:#0f172a;font-size:14px;font-weight:800;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,transform .12s,box-shadow .15s;box-shadow:0 2px 10px #00000038;line-height:1}.preview-top-btn[data-v-20957696]:active{transform:scale(.92);background:#f1f5f9}.preview-top-btn--active[data-v-20957696]{background:#ff3b3038!important;color:#ff6b6b!important;border-color:#ff3b3052!important}.preview-close[data-v-20957696]{position:absolute;top:12px;right:10px;width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:#00000061;color:#fff;font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .15s,transform .15s}.preview-close[data-v-20957696]:active{transform:scale(.92);background:#00000085}.preview-image[data-v-20957696]{position:relative;width:100%;height:128px;flex-shrink:0;overflow:hidden;background:linear-gradient(135deg,#0f2436,#0a1520);cursor:pointer}@media(max-width:640px){.preview-image[data-v-20957696]{height:118px}}@media(max-width:360px){.preview-image[data-v-20957696]{height:106px}}@media(min-width:642px)and (max-width:991px){.preview-image[data-v-20957696]{height:124px}}.preview-image img[data-v-20957696]{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}.preview-card:hover .preview-image img[data-v-20957696]{transform:scale(1.03)}.preview-gradient[data-v-20957696]{position:absolute;inset:auto 0 0;height:64px;background:linear-gradient(to top,rgba(0,0,0,.52),transparent);pointer-events:none}.preview-no-image[data-v-20957696]{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:32px;background:linear-gradient(135deg,#112636,#0a1520);color:#5a7d8e}.preview-category-badge[data-v-20957696]{position:absolute;left:10px;bottom:10px;background:#fffffff5;color:#0f172a;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;box-shadow:0 2px 10px #0000002e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.preview-distance-badge[data-v-20957696]{position:absolute;left:10px;top:10px;background:#00000085;color:#fff;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:700;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.14)}.preview-rating-badge[data-v-20957696]{position:absolute;right:10px;bottom:10px;background:linear-gradient(135deg,#f59e0b,#fbbf24);color:#1a1100;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:800;box-shadow:0 2px 8px #00000038}.preview-content[data-v-20957696]{padding:8px 12px 12px;display:flex;flex-direction:column;gap:5px;min-width:0;background:transparent;flex-shrink:0}.preview-swipe-hint[data-v-20957696]{display:block;text-align:center;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#ffffff52;margin-top:2px;user-select:none}@media(max-width:640px){.preview-swipe-hint[data-v-20957696]{font-size:9px}}@media(max-width:640px){.preview-content[data-v-20957696]{padding:7px 10px 8px;gap:3px}}.preview-title[data-v-20957696]{margin:0;font-size:15px;font-weight:800;color:#e8f5fb;font-family:var(--font-display);line-height:1.22;letter-spacing:-.01em;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.preview-meta-row[data-v-20957696]{display:flex;align-items:center;gap:6px;font-size:12px;color:#8fb3c4;flex-wrap:wrap}.preview-author[data-v-20957696]{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:#c8e4f3}.preview-avatar[data-v-20957696]{width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,#0d8f9f,#14b8a6);color:#fff;font-size:10px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.14)}.preview-meta-dot[data-v-20957696]{opacity:.5;color:#5a7d8e}.preview-meta-cat[data-v-20957696]{text-transform:capitalize;color:#8fb3c4}.preview-desc[data-v-20957696]{margin:0;font-size:12px;color:#b9d8e8;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.preview-tags[data-v-20957696]{display:flex;gap:6px;flex-wrap:wrap}.preview-tag[data-v-20957696]{font-size:11px;font-weight:600;color:#7ee8df;background:#15c0b71f;border:1px solid rgba(21,192,183,.18);padding:3px 8px;border-radius:999px}.preview-actions[data-v-20957696]{display:flex;gap:8px;margin-top:4px}.preview-action[data-v-20957696]{flex:1;min-height:38px;border-radius:999px;font-size:12px;font-weight:700;cursor:pointer;border:1px solid transparent;transition:transform .12s,background .15s,box-shadow .15s}.preview-action[data-v-20957696]:active{transform:scale(.97)}.preview-action--ghost[data-v-20957696]{background:#ffffff0f;color:#c8e4f3;border-color:#ffffff14}.preview-action--ghost[data-v-20957696]:hover{background:#ffffff1a}.preview-action--primary[data-v-20957696]{background:linear-gradient(135deg,#0d8f9f,#14b8a6);color:#fff;box-shadow:0 4px 14px #14b8a647;border-color:#ffffff0f;min-height:44px;font-size:13.5px;letter-spacing:.01em;padding:10px 16px}.preview-action--pill[data-v-20957696]{background:#ffffff0f;color:#e8f5fb;border:1px solid rgba(255,255,255,.08);min-height:36px;font-size:12px;padding:0 10px}.preview-actions--earth[data-v-20957696]{background:#0000001f;border-radius:12px;padding:4px;gap:6px;margin-top:8px;flex-shrink:0}@media(max-width:640px){.preview-action--primary[data-v-20957696]{min-height:46px;font-size:14px}}.spot-strip[data-v-4028f885]{position:absolute;bottom:calc(80px + env(safe-area-inset-bottom,0px));left:8px;right:8px;background:linear-gradient(180deg,#0f2436,#0a1520);border:1px solid rgba(255,255,255,.08);border-radius:18px;box-shadow:0 12px 32px #00000057;padding:0;z-index:998;max-height:26vh;max-height:min(26vh,210px);overflow:hidden;-webkit-backdrop-filter:blur(12px) saturate(1.2);backdrop-filter:blur(12px) saturate(1.2);animation:stripIn-4028f885 .32s cubic-bezier(.16,1,.3,1)}.spot-strip--mini[data-v-4028f885]{position:fixed;bottom:calc(100px + env(safe-area-inset-bottom,0px));left:max(10px,env(safe-area-inset-left,0px));right:max(10px,env(safe-area-inset-right,0px));max-height:none;height:auto;min-height:0;max-height:min(34vh,172px);background:linear-gradient(180deg,#0f2436,#0a1520);-webkit-backdrop-filter:blur(16px) saturate(1.4);backdrop-filter:blur(16px) saturate(1.4);border:1px solid rgba(255,255,255,.1);border-radius:16px;box-shadow:0 14px 36px #00000061,0 2px 10px #00000038;padding:0 0 8px;z-index:1300;overflow:hidden;overflow-x:hidden;overflow-y:hidden;animation:stripIn-4028f885 .28s cubic-bezier(.16,1,.3,1);box-sizing:border-box}.spot-strip.spot-strip--mini[data-v-4028f885]{background:linear-gradient(180deg,#0f2436,#0a1520);bottom:calc(100px + env(safe-area-inset-bottom,0px));left:max(10px,env(safe-area-inset-left,0px));right:max(10px,env(safe-area-inset-right,0px));max-height:min(34vh,172px);overflow:hidden}@media(max-width:390px){.spot-strip--mini[data-v-4028f885],.spot-strip.spot-strip--mini[data-v-4028f885]{max-height:min(32vh,158px);bottom:calc(94px + env(safe-area-inset-bottom,0px))}}@media(max-height:700px){.spot-strip--mini[data-v-4028f885],.spot-strip.spot-strip--mini[data-v-4028f885]{max-height:min(36vh,162px)}}@media(min-width:768px)and (max-width:991px){.spot-strip--mini[data-v-4028f885],.spot-strip.spot-strip--mini[data-v-4028f885]{bottom:calc(96px + env(safe-area-inset-bottom,0px));max-height:min(30vh,168px)}}@keyframes stripIn-4028f885{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.strip-mini__handle[data-v-4028f885]{display:flex;justify-content:center;padding:6px 0 3px}.strip-mini__handle span[data-v-4028f885]{width:32px;height:4px;background:#ffffff38;border-radius:999px;display:block}.strip-mini__head[data-v-4028f885]{display:flex;justify-content:space-between;align-items:center;padding:8px 14px 6px;gap:10px;min-width:0}.strip-mini__head strong[data-v-4028f885]{font-size:12px;font-weight:800;color:#e8f5fb;letter-spacing:-.02em;display:flex;align-items:center;gap:6px;flex-shrink:0}.strip-mini__head strong[data-v-4028f885]:before{content:"";width:6px;height:6px;border-radius:50%;background:#14b8a6;display:block;flex-shrink:0;box-shadow:0 0 0 3px #14b8a62e}.strip-mini__actions[data-v-4028f885]{display:flex;align-items:center;gap:10px;flex-shrink:0;position:relative;z-index:2}.strip-mini__close[data-v-4028f885]{width:44px;height:44px;min-width:44px;min-height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.9);background:#fff;color:#0f172a;font-size:15px;font-weight:800;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,transform .12s,box-shadow .15s;flex-shrink:0;box-shadow:0 2px 10px #00000038;line-height:1;margin-left:2px;pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent;position:relative;z-index:3}.strip-mini__close[data-v-4028f885]:hover{background:#f1f5f9}.strip-mini__close[data-v-4028f885]:active{transform:scale(.92);box-shadow:0 1px 4px #0000002e}.strip-mini__viewall[data-v-4028f885]{background:#14b8a6;border:none;font-size:11px;font-weight:800;color:#fff;cursor:pointer;display:flex;align-items:center;gap:3px;padding:3px 10px;border-radius:999px;box-shadow:0 2px 8px #14b8a647;transition:transform .15s,background .15s;letter-spacing:.01em;min-height:26px}.strip-mini__viewall[data-v-4028f885]:hover{background:#0f766e}.strip-mini__viewall[data-v-4028f885]:active{transform:scale(.96)}.strip-mini__scroll[data-v-4028f885]{display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:4px 10px 12px;scroll-snap-type:x mandatory;scroll-padding:10px}.strip-mini__scroll[data-v-4028f885]::-webkit-scrollbar{display:none}.strip-mini__card[data-v-4028f885]{width:72px;height:72px;flex-shrink:0;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.08);padding:0;background:#0f2436;scroll-snap-align:start;box-shadow:0 3px 10px #0000002e;transition:transform .15s,box-shadow .15s}@media(max-width:390px){.strip-mini__card[data-v-4028f885]{width:64px;height:64px;border-radius:10px}}@media(min-width:768px)and (max-width:991px){.strip-mini__card[data-v-4028f885]{width:68px;height:68px}}.strip-mini__card[data-v-4028f885]:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001f}.strip-mini__card[data-v-4028f885]:active{transform:scale(.97)}.strip-mini__card img[data-v-4028f885]{width:100%;height:100%;object-fit:cover;display:block}.spot-strip[data-v-4028f885]:before{content:"";width:32px;height:4px;background:#ffffff29;border-radius:999px;margin:8px auto 4px;display:block;pointer-events:none}.spot-strip--mini[data-v-4028f885]:before,.spot-strip.spot-strip--mini[data-v-4028f885]:before{display:none!important}.strip-header[data-v-4028f885]{display:flex;justify-content:space-between;align-items:center;padding:6px 12px 8px;border-bottom:1px solid rgba(255,255,255,.06);gap:8px}.strip-count[data-v-4028f885]{font-size:12px;font-weight:700;color:#e8f5fb;letter-spacing:-.01em;display:flex;align-items:center;gap:6px}.strip-count[data-v-4028f885]:before{content:"●";color:#14b8a6;font-size:8px}.strip-view-all[data-v-4028f885]{background:#ffffff0f;border:1px solid rgba(255,255,255,.08);border-radius:999px;padding:7px 12px;min-height:34px;font-size:11px;font-weight:700;color:#e8f5fb;cursor:pointer;transition:background .15s}.strip-view-all[data-v-4028f885]:hover{background:#ffffff1a}.strip-view-all[data-v-4028f885]:active{transform:scale(.96)}.strip-scroll[data-v-4028f885]{display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x mandatory;padding:6px 10px 10px}.strip-overlay[data-v-4028f885]{position:fixed;inset:0;background:#0a0a0a;z-index:2360;display:flex;flex-direction:column;animation:stripIn-4028f885 .28s ease}.strip-full[data-v-4028f885]{flex:1;display:flex;flex-direction:column;overflow:hidden;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}.strip-full__header[data-v-4028f885]{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 12px;color:#fff;font-size:15px;font-weight:700;flex-shrink:0}.strip-full__close[data-v-4028f885]{width:44px;height:44px;min-width:44px;min-height:44px;border-radius:50%;border:none;background:#ffffff1a;color:#fff;font-size:16px;display:flex;align-items:center;justify-content:center;cursor:pointer}.strip-full__grid[data-v-4028f885]{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:0 4px 80px}.strip-full__cell[data-v-4028f885]{aspect-ratio:1;border-radius:12px;overflow:hidden;background:#1a1a1a;border:none;padding:0;cursor:pointer}.strip-full__cell img[data-v-4028f885]{width:100%;height:100%;object-fit:cover;display:block}.strip-full__cell--pad[data-v-4028f885]{background:transparent;border:none}.strip-full__locate[data-v-4028f885]{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));width:44px;height:44px;border-radius:50%;border:none;background:#1a1a1a;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #0000004d;cursor:pointer}.strip-full__locate svg[data-v-4028f885]{width:22px;height:22px}.strip-scroll[data-v-4028f885]::-webkit-scrollbar{display:none}.strip-card[data-v-4028f885]{width:140px;flex-shrink:0;border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.07);padding:0;cursor:pointer;background:#0d2130;text-align:left;scroll-snap-align:start;box-shadow:0 3px 10px #0003;transition:transform .18s cubic-bezier(.16,1,.3,1),box-shadow .18s,border-color .18s;-webkit-tap-highlight-color:transparent}.strip-card[data-v-4028f885]:hover{transform:translateY(-2px);border-color:#15c0b72e;box-shadow:0 10px 24px #00000047}.strip-card[data-v-4028f885]:active{transform:scale(.97)}.strip-card__media[data-v-4028f885]{width:100%;height:84px;overflow:hidden;background:linear-gradient(135deg,#0f2436,#0a1520);position:relative}.strip-card__media img[data-v-4028f885]{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.strip-card:hover .strip-card__media img[data-v-4028f885]{transform:scale(1.04)}.strip-no-image[data-v-4028f885]{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:22px;background:linear-gradient(135deg,#112636,#0a1520);color:#5a7d8e}.strip-card__body[data-v-4028f885]{padding:9px 10px 10px;display:grid;gap:3px;background:#0d2130}.strip-card__title[data-v-4028f885]{font-size:13px;font-weight:700;color:#e8f5fb;line-height:1.25;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;letter-spacing:-.01em}.strip-card__meta[data-v-4028f885]{font-size:11px;color:#8fb3c4;text-transform:capitalize;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:4px}.strip-card__meta[data-v-4028f885]:before{content:"—";opacity:.4}.map-layers[data-v-a927a797]{position:relative}.layers-btn[data-v-a927a797]{width:40px;height:40px;border-radius:10px;border:1px solid rgba(70,130,158,.55);background:#081e2ce0;color:#b9d8e5;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s;backdrop-filter:blur(4px)}.layers-btn[data-v-a927a797]:hover{background:#0e3248eb;border-color:#64aac899}.layers-btn svg[data-v-a927a797]{width:20px;height:20px}.layers-dropdown[data-v-a927a797]{position:absolute;bottom:48px;left:0;background:linear-gradient(180deg,#0a212efc,#081924fc);border:1px solid rgba(70,125,149,.5);border-radius:12px;box-shadow:0 16px 36px #00000059;overflow:hidden;min-width:140px;z-index:100}.layer-option[data-v-a927a797]{width:100%;display:flex;align-items:center;gap:10px;padding:12px 16px;border:none;background:transparent;color:#b9d8e5;cursor:pointer;transition:background .15s;text-align:left}.layer-option[data-v-a927a797]:hover{background:#10324680}.layer-option.active[data-v-a927a797]{background:#15c0b71f}.layer-icon[data-v-a927a797]{font-size:16px}.layer-label[data-v-a927a797]{font-size:14px;font-weight:500;color:#b9d8e5}.layer-option.active .layer-label[data-v-a927a797]{color:#15c0b7;font-weight:600}.fade-enter-active[data-v-a927a797],.fade-leave-active[data-v-a927a797]{transition:opacity .2s ease}.fade-enter-from[data-v-a927a797],.fade-leave-to[data-v-a927a797]{opacity:0}.streetview-embed[data-v-b01f382f]{position:relative;width:100%;height:360px;background:#f2f2f7;border-radius:16px;overflow:hidden;border:1px solid rgba(0,0,0,.06)}@media(max-width:640px){.streetview-embed[data-v-b01f382f]{height:320px}}.streetview-embed__iframe[data-v-b01f382f]{width:100%;height:100%;border:0}.streetview-embed__preview[data-v-b01f382f]{width:100%;height:100%;position:relative;cursor:pointer;background:#e2e8f0;display:flex;align-items:center;justify-content:center}.streetview-embed__thumb[data-v-b01f382f]{width:100%;height:100%;object-fit:cover;display:block}.streetview-embed__pin[data-v-b01f382f]{position:absolute;top:50%;left:50%;transform:translate(-50%,-100%);font-size:32px;filter:drop-shadow(0 2px 6px rgba(0,0,0,.35));pointer-events:none}.streetview-embed__thumb--fallback[data-v-b01f382f]{display:flex;align-items:center;justify-content:center;font-size:48px;background:linear-gradient(135deg,#e2e8f0,#cbd5e1)}.streetview-embed__play[data-v-b01f382f]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#ffffffeb;border:none;border-radius:999px;padding:12px 20px;font-size:14px;font-weight:700;box-shadow:0 4px 16px #0003;cursor:pointer}.streetview-embed__tap[data-v-b01f382f]{position:absolute;bottom:12px;left:50%;transform:translate(-50%);background:#0a1520e0;color:#fff;font-size:11px;font-weight:600;padding:4px 10px;border-radius:999px}.streetview-embed__heading-hint[data-v-b01f382f]{position:absolute;top:10px;left:50%;transform:translate(-50%);background:#ffffffeb;color:#0a1520;font-size:11px;font-weight:600;padding:4px 10px;border-radius:999px;box-shadow:0 2px 8px #0000001f}.streetview-embed__free-badge[data-v-b01f382f]{position:absolute;top:10px;right:10px;background:#14b8a6eb;color:#fff;font-size:10px;font-weight:700;padding:3px 8px;border-radius:999px}.streetview-embed__placeholder[data-v-b01f382f],.streetview-embed__loader[data-v-b01f382f],.streetview-embed__error[data-v-b01f382f]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#8e8e93;font-size:14px;gap:12px;padding:16px;text-align:center}.streetview-embed__error small[data-v-b01f382f]{font-size:12px;color:#64748b}.streetview-embed__error-actions[data-v-b01f382f]{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.spinner[data-v-b01f382f]{width:20px;height:20px;border:3px solid #e2e8f0;border-top-color:#ff3b30;border-radius:50%;animation:spin-b01f382f .8s linear infinite;display:inline-block}@keyframes spin-b01f382f{to{transform:rotate(360deg)}}.streetview-embed__actions[data-v-b01f382f]{position:absolute;bottom:10px;right:10px;display:flex;gap:8px}.btn[data-v-b01f382f]{font-size:12px;font-weight:600;padding:8px 12px;border-radius:20px;border:none;cursor:pointer}.btn--ghost[data-v-b01f382f]{background:#ffffffeb;color:#1c1c1e;box-shadow:0 2px 8px #0000001f;backdrop-filter:blur(8px)}.btn--secondary[data-v-b01f382f]{background:#ff3b30;color:#fff}.onboarding-overlay[data-v-54672c5e]{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100000;padding:16px}.onboarding-card[data-v-54672c5e]{background:linear-gradient(180deg,#0a212efa,#081c28fa);border:1px solid rgba(70,125,149,.25);border-radius:20px;padding:24px 20px;max-width:340px;width:100%;text-align:center;position:relative;box-shadow:0 20px 60px #0006}.onboarding-skip[data-v-54672c5e]{position:absolute;top:12px;right:12px;background:#ffffff14;color:#e8f5fb;border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer}.onboarding-progress[data-v-54672c5e]{display:flex;gap:8px;justify-content:center;margin:8px 0 16px}.onboarding-progress span[data-v-54672c5e]{width:32px;height:4px;border-radius:2px;background:#ffffff1f}.onboarding-progress span.active[data-v-54672c5e]{background:#14b8a6}.onboarding-icon[data-v-54672c5e]{font-size:48px;margin-bottom:12px}.onboarding-card h3[data-v-54672c5e]{margin:0 0 8px;font-size:20px;color:#e8f5fb}.onboarding-card p[data-v-54672c5e]{font-size:16px;line-height:1.5;color:#e8f5fb;margin:0 0 8px}.onboarding-card small[data-v-54672c5e]{font-size:13px;color:#9ec0cf;display:block;margin-bottom:16px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);padding:8px;border-radius:8px}.onboarding-help[data-v-54672c5e]{font-size:12px;color:#7daabd;margin-top:12px}.cbtn[data-v-54672c5e]{width:100%;height:52px;font-size:16px;font-weight:700;border-radius:12px;border:none;cursor:pointer}.cbtn--primary[data-v-54672c5e]{background:#14b8a6;color:#fff}.perm-onboarding-overlay[data-v-9b88cf23]{position:fixed;inset:0;background:#020812c7;backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:3200;padding:16px max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.perm-onboarding-card[data-v-9b88cf23]{width:min(380px,100%);background:linear-gradient(180deg,#0f2436,#0a1520);border:1px solid rgba(60,110,138,.3);border-radius:20px;padding:20px;display:grid;gap:14px;box-shadow:0 20px 60px #00000080;text-align:center}.perm-onboarding-icon[data-v-9b88cf23]{font-size:32px}.perm-onboarding-card h3[data-v-9b88cf23]{margin:0;font-size:18px;font-weight:700;color:#e8f5fb}.perm-onboarding-actions[data-v-9b88cf23]{display:flex;gap:10px;justify-content:center}.perm-onboarding-actions .topbar-btn[data-v-9b88cf23]{flex:1}.perm-onboarding-dots[data-v-9b88cf23]{display:flex;justify-content:center;gap:6px}.dot[data-v-9b88cf23]{width:6px;height:6px;border-radius:50%;background:#fff3}.dot.active[data-v-9b88cf23]{background:#15c0b7;width:18px;border-radius:999px}.fade-enter-active[data-v-9b88cf23],.fade-leave-active[data-v-9b88cf23]{transition:opacity .25s}.fade-enter-from[data-v-9b88cf23],.fade-leave-to[data-v-9b88cf23]{opacity:0}.error-boundary[data-v-50da2f52]{min-height:100vh;display:grid;place-content:center;gap:.75rem;padding:1.5rem;text-align:center;color:#f8fafc;background:radial-gradient(circle at 20% 20%,rgba(251,146,60,.3),transparent 45%),radial-gradient(circle at 80% 75%,rgba(239,68,68,.28),transparent 48%),#0f172a}.error-code[data-v-50da2f52]{margin:0;font-size:.8rem;letter-spacing:.2em;color:#fdba74;text-transform:uppercase}h2[data-v-50da2f52]{margin:0;font-size:clamp(1.4rem,3vw,2.1rem)}.error-message[data-v-50da2f52]{margin:0;color:#e2e8f0}.retry[data-v-50da2f52]{justify-self:center;border:none;border-radius:999px;padding:.6rem 1.1rem;font-weight:700;background:#ef4444;color:#fff;cursor:pointer}.retry[data-v-50da2f52]:hover{background:#dc2626}
