@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,400;0,500;0,700;0,900;1,400&display=swap");:root{--red:#e61e25;--red-600:#c2191f;--red-50:#fff1f2;--brand:#e61e25;--brand-hover:rgba(230,30,37,.8);--brand-active:rgba(230,30,37,.6);--brand-tint:rgba(230,30,37,.2);--brand-tint-weak:rgba(230,30,37,.08);--on-brand:#fff;--ink-900:#27272a;--ink-800:#3f3f46;--ink-700:#52525b;--ink-500:#808089;--ink-400:#a6a6b0;--ink-300:#c4c4cf;--ink-200:#dddde3;--ink-100:#ebebf0;--ink-50:#f5f5fa;--paper:#fff;--text-primary:#27272a;--text-secondary:#808089;--text-tertiary:#a6a6b0;--text-on-dark:#fff;--surface-page:#f5f5fa;--surface-card:#fff;--surface-sunken:#f5f5fa;--surface-inverse:#27272a;--line:#dddde3;--line-weak:#ebebf0;--line-strong:#c4c4cf;--overlay-scrim:rgba(0,0,0,.4);--ok:#00ab56;--ok-bg:#e6f7ee;--warn:#ffc400;--warn-bg:#fff7db;--info:#007aff;--info-bg:#e5f1ff;--negative:#ff424f;--negative-bg:#ffecee;--positive:#00ab56;--sale:#ff2d55;--r-xs:4px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:20px;--r-pill:999px;--sh-1:0 1px 4px rgba(0,0,0,.2);--sh-2:0 2px 10px rgba(0,0,0,.2);--sh-3:0 4px 20px rgba(0,0,0,.09);--shadow-ring:0 0 0 1px var(--line);--shadow-ring-faint:0 0 0 1px var(--line-weak);--focus-ring:0 0 0 3px rgba(230,30,37,.3);--ease-standard:cubic-bezier(.2,0,0,1);--ease-emphasized:cubic-bezier(.3,0,0,1);--ease-out:cubic-bezier(0.23,1,0.32,1);--ease-drawer:cubic-bezier(0.32,0.72,0,1);--dur-fast:120ms;--dur-base:200ms;--dur-slow:320ms;--font-sans:"Roboto",-apple-system,BlinkMacSystemFont,"PingFang HK","Noto Sans HK","Microsoft JhengHei",system-ui,sans-serif;--font-display:"Roboto",-apple-system,BlinkMacSystemFont,"PingFang HK","Noto Sans HK",sans-serif;--font-mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;--nav-h:76px;--tap-target-min:44px}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;color:var(--text-primary);background:#e4e4ea}[role=button],button{-webkit-tap-highlight-color:transparent;cursor:pointer}button{font-family:inherit}.hk-map{overflow:hidden}.hk-map,.hk-map .land{position:absolute;inset:0}.hk-map .harbour{position:absolute;left:-10%;right:-10%;top:38%;height:14%;transform:rotate(-3deg)}.hk-map .roads-h,.hk-map .roads-v{position:absolute;inset:0;pointer-events:none}.hk-map .road{position:absolute;background:currentColor;opacity:.55}.hk-map .blob{position:absolute;border-radius:50%;filter:blur(8px);opacity:.35}.map-light .land{background:#efebe3}.map-light .harbour{background:linear-gradient(180deg,#bcd5df,#a8c7d4)}.map-light .roads-h,.map-light .roads-v{color:#fff}.map-light .roads-fine{color:#e2dcd0}.map-light .blob.park{background:#c8d8b6}.map-light .blob.commercial{background:#f4e6cb}.map-warm .land{background:#f4efe7}.map-warm .harbour{background:linear-gradient(180deg,#c8d6dc,#b0c2cb)}.map-warm .roads-h,.map-warm .roads-v{color:#fff}.map-warm .roads-fine{color:#e6ddcd}.map-warm .blob.park{background:#cdddbe}.map-warm .blob.commercial{background:#f6e2c8}.map-dark .land{background:#0f1418}.map-dark .harbour{background:linear-gradient(180deg,#0a2a38,#08222e)}.map-dark .roads-h,.map-dark .roads-v{color:#2a3036}.map-dark .roads-fine{color:#1a2024}.map-dark .blob.park{background:#1a2a1f}.map-dark .blob.commercial{background:#2a2118}.marker{position:absolute;transform:translate(-50%,-100%);font-family:var(--font-sans)}.marker,.marker.paid .pin{display:flex;align-items:center;justify-content:center}.marker.paid .pin{width:36px;height:44px;background:var(--red);border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 6px 14px rgba(230,30,37,.45),0 0 0 3px #fff;position:relative}.marker.paid .pin:before{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid rgba(230,30,37,.45);animation:breathe 2.2s ease-out 3 forwards}.marker.paid .pin .glyph{transform:rotate(45deg);color:#fff;font-weight:700}.marker.free .pin{width:26px;height:26px;border:2px solid #808089;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--ink-700)}.marker .label-chip,.marker.free .pin{background:#fff;box-shadow:var(--sh-1);font-weight:600}.marker .label-chip{position:absolute;top:-28px;white-space:nowrap;color:var(--ink-900);font-size:10px;padding:4px 8px;border-radius:999px}@keyframes breathe{0%{transform:scale(1);opacity:.8}70%{transform:scale(1.7);opacity:0}to{transform:scale(1.7);opacity:0}}@keyframes mh-marker-pop{0%{transform:scale(.5)}}@keyframes mh-locate-ping{0%{transform:translate(-50%,-50%) scale(1);opacity:.55}to{transform:translate(-50%,-50%) scale(4);opacity:0}}.device-stage{display:flex;justify-content:center;align-items:center;height:100vh;height:100dvh;background:#e4e4ea;overflow:hidden}.phone-frame{width:390px;height:844px;flex:0 0 auto;position:relative;overflow:hidden;background:#000;border-radius:44px;box-shadow:0 0 0 11px #1a1816,0 0 0 13px #2a2724,0 30px 60px rgba(0,0,0,.28),0 8px 16px rgba(0,0,0,.12);transform:scale(var(--device-scale,1));transform-origin:center center}.phone-frame .notch{position:absolute;top:12px;left:50%;transform:translateX(-50%);width:120px;height:30px;border-radius:20px;background:#0a0907;z-index:100;pointer-events:none}.phone-frame .ios-time{position:absolute;top:18px;left:28px;z-index:101;font-family:-apple-system,SF Pro,system-ui;font-weight:600;font-size:15px;color:#27272a}.phone-frame .ios-right{position:absolute;top:21px;right:26px;z-index:101;display:flex;align-items:center;gap:6px;color:#27272a}.phone-frame .home-bar{position:absolute;bottom:8px;left:50%;transform:translateX(-50%);width:134px;height:5px;border-radius:3px;background:rgba(0,0,0,.35);z-index:101;pointer-events:none}.phone-screen{position:absolute;inset:0;border-radius:44px;overflow:hidden;background:var(--surface-page)}.phone-screen *{scrollbar-width:none;-ms-overflow-style:none}.phone-screen ::-webkit-scrollbar{width:0;height:0;display:none}@media (max-width:480px){.device-stage{height:100dvh;align-items:stretch}.phone-frame{width:100vw;height:100vh;height:100dvh;border-radius:0;box-shadow:none;transform:none}.phone-frame .home-bar,.phone-frame .ios-right,.phone-frame .ios-time,.phone-frame .notch{display:none}.phone-screen{border-radius:0}}html{-webkit-text-size-adjust:100%}body,html{overscroll-behavior:none}body{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-overflow-scrolling:touch}[contenteditable],input,textarea{-webkit-user-select:text;-moz-user-select:text;user-select:text}.phone-screen{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.bottom-nav-safe{padding-bottom:max(env(safe-area-inset-bottom),8px)}[role=button],a,button{touch-action:manipulation}@keyframes page-slide-in-right{0%{transform:translateX(100%);opacity:.92}to{transform:translateX(0);opacity:1}}@keyframes page-slide-in-left{0%{transform:translateX(-100%);opacity:.92}to{transform:translateX(0);opacity:1}}@keyframes page-fade-in{0%{opacity:0}to{opacity:1}}.page-enter{animation:page-slide-in-right .24s var(--ease-emphasized) both;will-change:transform}.page-enter-back{animation:page-slide-in-left .24s var(--ease-emphasized) both;will-change:transform}.page-enter-fade{animation:page-fade-in var(--dur-fast) ease-out both}@media (hover:hover) and (pointer:fine){.phone-screen a[href]:hover,.phone-screen button:not(:disabled):hover{filter:brightness(.94)}}.phone-screen a[href],.phone-screen button:not(:disabled){transition:filter .12s ease,transform .1s ease}.phone-screen a[href]:active,.phone-screen button:not(:disabled):active{transform:scale(.97)}@keyframes mh-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){@keyframes page-slide-in-right{0%{transform:none;opacity:0}to{transform:none;opacity:1}}@keyframes page-slide-in-left{0%{transform:none;opacity:0}to{transform:none;opacity:1}}@keyframes mh-marker-pop{0%{transform:none}}@keyframes mh-locate-ping{0%{transform:translate(-50%,-50%);opacity:.55}to{transform:translate(-50%,-50%);opacity:0}}.marker.paid .pin:before{animation:none;opacity:0}}