.app-tabs[data-v-d81cc08a]{position:absolute;left:50%;bottom:calc(10px + var(--safe-bottom-inset));z-index:20;display:flex;gap:4px;width:min(420px,calc(100% - 24px));box-sizing:border-box;padding:6px;border-radius:22px;background:#fffffff5;box-shadow:0 8px 24px #11182729,0 0 0 1px #1118270f;transform:translate(-50%);transition:transform .2s ease,opacity .2s ease;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.app-tabs.away[data-v-d81cc08a]{opacity:0;pointer-events:none;transform:translate(-50%,calc(100% + 16px))}.tab[data-v-d81cc08a]{display:grid;justify-items:center;align-content:center;gap:2px;flex:1;min-width:0;min-height:52px;padding:4px;border-radius:16px;color:var(--muted);font:700 .72rem var(--sans);text-decoration:none;transition:background .15s ease,color .15s ease;-webkit-tap-highlight-color:transparent}.tab>span[data-v-d81cc08a]:last-child{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tab-icon-wrap[data-v-d81cc08a]{position:relative;display:grid}.tab-icon[data-v-d81cc08a]{width:24px;height:24px}.badge[data-v-d81cc08a]{position:absolute;top:-4px;left:16px;min-width:18px;height:18px;padding:0 5px;box-sizing:border-box;border:2px solid #fff;border-radius:999px;background:var(--red);color:#fff;font:800 .66rem/14px var(--sans);text-align:center}.tab.on[data-v-d81cc08a]{background:var(--brand-soft);color:var(--brand-strong)}.tab[data-v-d81cc08a]:not(.on):active{background:var(--fill)}.tab[data-v-d81cc08a]:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}@media (prefers-reduced-motion: reduce){.app-tabs[data-v-d81cc08a],.tab[data-v-d81cc08a]{transition:none}}.map-layout[data-v-5b4ed8c1]{display:flex;flex-direction:column;height:100dvh;min-height:0;overflow:hidden}:where(.app-view[data-v-5b4ed8c1]){flex:1;width:100%;min-width:0;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch}.map-layout[data-v-5b4ed8c1]{position:relative;--bottom-space: var(--safe-bottom-inset)}.map-layout.with-tabs[data-v-5b4ed8c1]{--bottom-space: calc(var(--safe-bottom-inset) + 80px)}.pull-indicator[data-v-5b4ed8c1]{position:absolute;top:var(--safe-top);left:50%;z-index:30;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#fff;box-shadow:0 4px 14px #1118272e;pointer-events:none}.pull-indicator.settling[data-v-5b4ed8c1]{transition:transform .2s ease-out}.pull-spinner[data-v-5b4ed8c1]{width:22px;height:22px;border:3px solid var(--line);border-top-color:var(--brand);border-radius:50%}.pull-spinner.spin[data-v-5b4ed8c1]{animation:pull-spin-5b4ed8c1 .8s linear infinite}@keyframes pull-spin-5b4ed8c1{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.pull-spinner.spin[data-v-5b4ed8c1]{animation-duration:2s}}:root{--safe-top: max(env(safe-area-inset-top), calc(var(--tg-safe-area-inset-top, 0px) + var(--tg-content-safe-area-inset-top, 0px)));--safe-bottom-inset: max(env(safe-area-inset-bottom), calc(var(--tg-safe-area-inset-bottom, 0px) + var(--tg-content-safe-area-inset-bottom, 0px)));--brand: #f59e0b;--brand-light: #fbbf24;--brand-gradient: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);--brand-ink: #1f1300;--brand-strong: #b45309;--brand-soft: #fff4e2;--accent: var(--brand);--accent-soft: var(--brand-soft);--accent-strong: var(--brand-strong);--green: #1a9c4b;--green-soft: #e6f4e7;--red: #c62828;--red-soft: #fdecec;--blue: #1a73e8;--blue-soft: #e8f0fe;--ink: #111827;--muted: #6b7280;--faint: #9aa3af;--page: #f4f5f7;--card: #ffffff;--line: #e5e7eb;--fill: #f1f3f6;--sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans Khmer", sans-serif}html:lang(km){--sans: "Kantumruy Pro", "Noto Sans Khmer", "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}html:lang(km) body{line-height:1.6}*{box-sizing:border-box}html,body{height:100%;height:100dvh;margin:0;overflow:hidden;overscroll-behavior:none;background:var(--page);color:var(--ink);font:15px/1.45 var(--sans);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}#app{max-width:480px;height:100%;margin:0 auto;overflow:hidden;background:var(--page)}a{color:var(--brand-strong)}.card{margin:12px 16px;padding:16px;border-radius:16px;background:var(--card);border:1px solid var(--line)}.card-label{margin:0 0 8px;font-size:.8rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 16px;border:0;border-radius:12px;background:var(--brand);color:var(--brand-ink);font:700 .95rem var(--sans);text-decoration:none;cursor:pointer}.btn.secondary{background:var(--fill);color:var(--ink)}
