@keyframes slideUpTooltip{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes anim-spin{to{transform:rotate(360deg)}}@keyframes anim-float-x{0%,to{transform:translate(0)}50%{transform:translate(-15px)}}@keyframes anim-float-y{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes anim-wind{0%,to{transform:translate(0)skew(0)}50%{transform:translate(-15px)skew(-15deg)}}@keyframes anim-wave{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-8px)rotate(-8deg)}}@keyframes anim-pulse{0%,to{opacity:.05;transform:scale(1)}50%{opacity:.12;transform:scale(1.05)}}@keyframes anim-calima{0%,to{transform:translate(0)scale(1)}33%{transform:translate(-10px,5px)scale(1.05)}66%{transform:translate(5px,-10px)scale(.95)}}.anim-sun{animation:30s linear infinite anim-spin}.anim-cloud{animation:8s ease-in-out infinite anim-float-x}.anim-rain{animation:4s ease-in-out infinite anim-float-y}.anim-wind{animation:3s ease-in-out infinite anim-wind}.anim-wave{animation:5s ease-in-out infinite anim-wave}.anim-moon{animation:6s ease-in-out infinite anim-pulse}.anim-calima{animation:12s ease-in-out infinite anim-calima}@font-face{font-family:Intro Caps;src:url(/assets/IntroDemo-BlackCAPS-BWFWGcrK.otf)format("opentype");font-weight:900;font-style:normal}@font-face{font-family:Intro Caps Cond;src:url(/assets/IntroDemoCond-BlackCAPS-BwcMSN9J.otf)format("opentype");font-weight:900;font-style:normal}:root{--bg:#0a0a0b;--surface:#121214;--surface-dark:#000;--surface-mid:#1a1a1d;--nav-bg-glass:#1a1a1dd9;--nav-border-glass:#ffffff26;--text:#fff;--text-sec:#a0a0a5;--text-inv:#111;--text-inv-sec:#0000008c;--orange:#f77e2d;--orange-light:#ff9b57;--orange-dim:#f77e2d1f;--orange-pale:#f77e2d14;--border:#ffffff14;--radius-sm:10px;--radius-md:16px;--radius-lg:22px;--radius-pill:100px;--shadow-sm:0 1px 4px #0003;--shadow-md:0 4px 20px #0000004d;--shadow-lg:0 12px 40px #00000080;--bg-primary:var(--bg);--bg-secondary:var(--surface-mid);--bg-card:var(--surface);--bg-elevated:var(--surface);--text-primary:var(--text);--text-secondary:var(--text-sec);--accent:var(--orange);--accent-terracotta:var(--orange);--accent-teal:var(--orange);--accent-glow:#ff6a004d;--accent-dim:var(--orange-dim);--border-active:#ff6a0099;--border-bright:#ffffff26;--glass-bg:var(--surface);--glass-blur:none;--glass-border:1px solid var(--border);--nav-bg:#121214d9;--text-xs:.75rem;--text-sm:.85rem;--text-md:1rem;--text-lg:1.15rem;--text-xl:1.4rem;--text-2xl:1.8rem;--text-3xl:2.5rem;--lh-tight:1.2;--lh-normal:1.5;--lh-relaxed:1.6;--fw-regular:400;--fw-medium:400;--fw-bold:600;--fw-heavy:700}[data-theme=light]{--bg:transparent;--surface:#ffffff26;--surface-dark:#ffffff0d;--surface-mid:#ffffff1a;--nav-bg-glass:#ffffff26;--nav-border-glass:#ffffff4d;--text:#fff;--text-sec:#ffffffd9;--text-inv:#1c1c1e;--text-inv-sec:#0009;--orange:#f77e2d;--orange-light:#ff9b57;--orange-dim:#f77e2d40;--orange-pale:#f77e2d26;--border:#ffffff4d;--glass-border:1px solid #fff6;--nav-bg:#ffffff26;--shadow-sm:0 8px 32px #0000001f;--shadow-md:0 12px 40px #00000029;--shadow-lg:0 16px 48px #0003;--card-gradient-1:transparent;--card-gradient-2:transparent}[data-theme=light] body{background-color:#dde2e8;background-image:linear-gradient(#0006, #0006), var(--light-bg-image,url(/bg3.webp));-webkit-text-stroke:.25px currentColor;text-shadow:0 0 1px #1c1c1e26;background-position:50%;background-size:cover;background-attachment:fixed}[data-theme=light] [style*="var(--surface)"],[data-theme=light] [style*="var(--surface-mid)"],[data-theme=light] .glass-panel{-webkit-backdrop-filter:blur(12px);box-shadow:var(--shadow-sm)}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html{font-size:15px}button,input,select,textarea,button:focus,input:focus,select:focus,textarea:focus{outline:none}html[data-theme=light]{font-size:16.5px}h1,h2,h3,h4,h5,h6{font-weight:var(--fw-bold);letter-spacing:normal;line-height:1.2;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif!important}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;overscroll-behavior:none;-webkit-user-select:none;user-select:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5;overflow-x:hidden}input,select,textarea{-webkit-user-select:auto;user-select:auto;font-family:inherit}img{-webkit-touch-callout:none;-webkit-user-drag:none}.page-container{width:100%;max-width:640px;margin:0 auto}.glass-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:16px}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-md{font-size:var(--text-md)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.text-3xl{font-size:var(--text-3xl)}.font-regular{font-weight:var(--fw-regular)}.font-medium{font-weight:var(--fw-medium)}.font-bold{font-weight:var(--fw-bold)}.font-heavy{font-weight:var(--fw-heavy)}.leading-tight{line-height:var(--lh-tight)}.leading-normal{line-height:var(--lh-normal)}.leading-relaxed{line-height:var(--lh-relaxed)}.tracking-tight{letter-spacing:-.03em}.tracking-normal{letter-spacing:normal}.tracking-wide{letter-spacing:.05em}.heading-editorial{font-weight:var(--fw-heavy);color:var(--text);letter-spacing:-.03em;line-height:var(--lh-tight)}.label-caps{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-sec);font-weight:var(--fw-bold)}.mono{font-family:inherit}.btn-primary{background:var(--orange);color:#fff;border-radius:var(--radius-pill);font-family:inherit;font-weight:var(--fw-bold);font-size:var(--text-sm);letter-spacing:.02em;cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;padding:13px 28px;transition:all .2s;display:inline-flex}.btn-primary:hover{background:var(--orange-light);transform:translateY(-1px);box-shadow:0 6px 20px #ff6a004d}.btn-primary:active{transform:scale(.95)}.btn-secondary{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-pill);font-family:inherit;font-weight:var(--fw-bold);font-size:var(--text-sm);cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:12px 24px;transition:all .2s;display:inline-flex}.btn-secondary:hover{border-color:var(--orange);color:var(--orange)}.btn-secondary:active{transform:scale(.95)}.btn-icon{background:var(--surface);border:1px solid var(--border);color:var(--text-sec);border-radius:var(--radius-sm);cursor:pointer;width:40px;height:40px;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;transition:all .2s;display:flex}.btn-icon:hover{color:var(--orange);border-color:#ff6a0066}.btn-icon:active{transform:scale(.92)}.badge-orange{background:var(--orange);border-radius:var(--radius-pill);font-size:var(--text-xs);color:#fff;letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:4px;padding:4px 10px;font-weight:700;display:inline-flex}.tag-pill{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface-mid);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.07em;color:var(--text-sec);padding:4px 10px;font-weight:500;display:inline-flex}.sep{background:var(--border);height:1px;margin:16px 0}.hide-scrollbar::-webkit-scrollbar{display:none}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.dark-card{background:var(--surface-dark);color:var(--text)}.light-card{color:#111;background:#fff}.light-card .label-caps{color:#888}.leaflet-container{background-color:var(--bg)!important}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}.animate-slide-left{animation:.3s cubic-bezier(.25,1,.5,1) forwards slideInLeft}.animate-slide-right{animation:.3s cubic-bezier(.25,1,.5,1) forwards slideInRight}.icon-button{cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:10px;display:flex}button:focus-visible{outline:2px solid var(--orange);outline-offset:2px}.truncate-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.marker-cluster-small,.marker-cluster-medium,.marker-cluster-large{background-color:color-mix(in srgb, var(--orange) 60%, transparent)!important}.marker-cluster-small div,.marker-cluster-medium div,.marker-cluster-large div{font-family:inherit;font-weight:700;background-color:var(--orange)!important;color:#fff!important}.leaflet-control-attribution{color:#ffffff4d!important;text-shadow:none!important;background:0 0!important;padding:0 8px!important;font-size:9px!important}.leaflet-control-attribution a{color:#ffffff4d!important;text-decoration:none!important}.react-joyride__tooltip{color:#fff!important;background-color:#1a1a1d!important;border:1px solid #ffffff1a!important;border-radius:16px!important}.react-joyride__tooltip>div{color:#fff!important}.react-joyride__tooltip button[title=Skip]{color:#a0a0a5!important}.react-joyride__tooltip h2,.react-joyride__tooltip h3{color:#fff!important}.app-container{background:var(--bg);width:100vw;height:100vh;display:flex;position:relative;overflow:hidden}.main-content{z-index:1;height:100%;padding-bottom:calc(95px + env(safe-area-inset-bottom));flex:1;position:relative;overflow:hidden auto}.grid-overlay{display:none}.timeline-line{border-left:1px dashed var(--border);z-index:0;width:1px;position:absolute;top:20px;bottom:20px;left:23px}@media (width>=768px){.main-content{margin-left:80px;padding-bottom:0}}.spin{animation:1s linear infinite spin}.app-nav{bottom:calc(env(safe-area-inset-bottom) + 4px);background:var(--nav-bg-glass);-webkit-backdrop-filter:blur(24px);border:1px solid var(--nav-border-glass);z-index:100;border-radius:100px;flex-direction:row;justify-content:space-around;padding:8px 12px;display:flex;position:fixed;left:12px;right:12px;box-shadow:0 10px 40px #0000004d}.nav-btn{alignItems:center;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;align-items:center;padding:8px 0;transition:color .2s;display:flex}@media (width>=768px){.app-nav{background:var(--surface);width:80px;box-shadow:none;border:none;border-right:1px solid var(--border);border-radius:0;flex-direction:column;justify-content:center;gap:32px;padding:24px 0;inset:0 auto 0 0}.nav-btn{flex:none}.layer-buttons{bottom:24px!important}}.layer-buttons{bottom:calc(100px + env(safe-area-inset-bottom))}.leaflet-bottom{bottom:calc(80px + env(safe-area-inset-bottom))!important}@media (width>=768px){.leaflet-bottom{bottom:0!important}}.spot-card-image{aspect-ratio:1}.spot-card-image.compact{aspect-ratio:3/4}@media (width>=768px){.spot-card-image.compact{aspect-ratio:1}}.feed-grid{grid-template-columns:1fr;gap:12px;display:grid}.feed-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width>=768px){.feed-grid.compact{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}.page-container-full{width:100%;margin:0 auto}@media (width>=768px){.page-container-full{padding:0 24px}}.time-editor{box-sizing:border-box;border:1px solid var(--border);background:var(--surface-mid);width:min(360px,100vw - 32px);color:var(--text);border-radius:20px;padding:24px}.time-editor::backdrop{background:#0009}.time-editor button{font:inherit;cursor:pointer;border-radius:8px;padding:10px 16px}.time-editor :focus-visible{outline:2px solid var(--orange);outline-offset:3px}@media (width<=420px){.timeline-entry{flex-direction:column;gap:8px!important}.timeline-time{justify-content:flex-start;gap:8px;flex-direction:row!important}.timeline-time>div:empty{display:none}}
