@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-opsz-normal-D9N6E8K1.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-opsz-normal-IcJDqblK.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-opsz-normal-Cre6nC2_.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/figtree-latin-ext-wght-normal-DCwSJGxG.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/figtree-latin-wght-normal-D_ZTVpCC.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-display: "Bricolage Grotesque Variable", "Bricolage Grotesque", ui-sans-serif, system-ui, sans-serif;--font-ui: "Figtree Variable", "Figtree", ui-sans-serif, system-ui, sans-serif;--r-sm: 12px;--r-md: 18px;--r-lg: 26px;--r-pill: 999px;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--safe-b: env(safe-area-inset-bottom, 0px)}.t-customer{--ground: oklch(98.5% .012 60);--ink: oklch(22% .04 330);--ink-2: oklch(42% .035 330);--ink-3: oklch(58% .03 330);--line: oklch(22% .04 330 / .08);--glass: oklch(100% 0 0 / .62);--glass-strong: oklch(100% 0 0 / .86);--glass-edge: oklch(100% 0 0 / .9);--accent: oklch(64% .22 18);--accent-ink: #fff;--accent-2: oklch(80% .16 75);--ok: oklch(62% .15 160);--warn: oklch(72% .16 70);--bad: oklch(58% .21 25);--primary: oklch(24% .05 330);--primary-ink: #fff;--a1: oklch(78% .17 40);--a2: oklch(72% .2 355);--a3: oklch(86% .15 85);--a4: oklch(78% .12 210);--aurora-opacity: .75;--shadow-float: 0 18px 50px -18px oklch(30% .1 340 / .35);color-scheme:light}.t-shop{--ground: oklch(17% .035 285);--ink: oklch(96% .01 285);--ink-2: oklch(80% .025 285);--ink-3: oklch(64% .03 285);--line: oklch(100% 0 0 / .08);--glass: oklch(26% .04 285 / .55);--glass-strong: oklch(28% .045 285 / .85);--glass-edge: oklch(100% 0 0 / .1);--accent: oklch(78% .15 175);--accent-ink: oklch(18% .04 285);--accent-2: oklch(72% .17 300);--ok: oklch(78% .15 160);--warn: oklch(82% .15 80);--bad: oklch(70% .19 22);--primary: oklch(78% .15 175);--primary-ink: oklch(18% .04 285);--a1: oklch(55% .15 175);--a2: oklch(45% .18 300);--a3: oklch(50% .14 240);--a4: oklch(55% .16 340);--aurora-opacity: .42;--shadow-float: 0 24px 60px -20px oklch(0% 0 0 / .6);color-scheme:dark}.t-rider{--ground: oklch(13% .01 260);--ink: #fff;--ink-2: oklch(86% .01 260);--ink-3: oklch(70% .01 260);--line: oklch(100% 0 0 / .12);--glass: oklch(22% .015 260);--glass-strong: oklch(25% .015 260);--glass-edge: oklch(100% 0 0 / .12);--accent: oklch(86% .18 125);--accent-ink: oklch(15% .02 260);--accent-2: oklch(80% .15 75);--ok: oklch(82% .17 150);--warn: oklch(84% .16 80);--bad: oklch(70% .2 25);--primary: oklch(86% .18 125);--primary-ink: oklch(15% .02 260);--a1: oklch(40% .1 150);--a2: oklch(35% .1 250);--a3: oklch(30% .05 260);--a4: oklch(30% .05 260);--aurora-opacity: .25;--shadow-float: 0 20px 50px -20px #000;color-scheme:dark}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:var(--font-ui);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}.theme{min-height:100dvh;background:var(--ground);color:var(--ink);position:relative;isolation:isolate}h1,h2,h3,.display{font-family:var(--font-display);letter-spacing:-.025em;line-height:1.02;margin:0;text-wrap:balance}p{margin:0}button,input,textarea,select{font:inherit;color:inherit}a{color:inherit}:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:10px}.num{font-variant-numeric:tabular-nums}.muted{color:var(--ink-2)}.faint{color:var(--ink-3)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.aurora{position:fixed;top:-20vmax;right:-20vmax;bottom:-20vmax;left:-20vmax;z-index:-1;pointer-events:none;opacity:var(--aurora-opacity);overflow:hidden}.aurora i{position:absolute;width:70vmax;height:70vmax;border-radius:50%;filter:blur(70px);mix-blend-mode:normal;will-change:transform;animation:drift 38s var(--ease-out) infinite alternate}.aurora i:nth-child(1){background:radial-gradient(circle at 50% 50%,var(--a1),transparent 62%);left:-10%;top:-25%}.aurora i:nth-child(2){background:radial-gradient(circle at 50% 50%,var(--a2),transparent 62%);right:-15%;top:-10%;animation-duration:46s;animation-delay:-12s}.aurora i:nth-child(3){background:radial-gradient(circle at 50% 50%,var(--a3),transparent 60%);left:20%;top:5%;animation-duration:52s;animation-delay:-24s}.aurora i:nth-child(4){background:radial-gradient(circle at 50% 50%,var(--a4),transparent 60%);left:-20%;bottom:-30%;animation-duration:60s;animation-delay:-6s}@keyframes drift{0%{transform:translateZ(0) scale(1) rotate(0)}33%{transform:translate3d(8vmax,6vmax,0) scale(1.12) rotate(25deg)}66%{transform:translate3d(-6vmax,10vmax,0) scale(.92) rotate(-15deg)}to{transform:translate3d(4vmax,-6vmax,0) scale(1.06) rotate(10deg)}}.grain{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.paused .aurora i{animation-play-state:paused}.t-rider .aurora i{animation:none}.glass{background:var(--glass);-webkit-backdrop-filter:blur(22px) saturate(1.5);backdrop-filter:blur(22px) saturate(1.5);border:1px solid var(--glass-edge);border-radius:var(--r-lg)}.glass-strong{background:var(--glass-strong)}.t-rider .glass{-webkit-backdrop-filter:none;backdrop-filter:none}.float{box-shadow:var(--shadow-float)}.btn{--bg: var(--glass-strong);--fg: var(--ink);position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 20px;border:1px solid var(--glass-edge);border-radius:var(--r-pill);background:var(--bg);color:var(--fg);font-weight:650;cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .18s var(--ease-out),background .2s,opacity .2s;white-space:nowrap}.btn:disabled{opacity:.45;cursor:not-allowed}.btn svg,.chip svg{flex:none}a.btn{text-decoration:none}.btn.grow{flex:1 1 0;min-width:0;padding-inline:12px}.theme{overflow-x:clip}.btn.primary{--bg: var(--primary);--fg: var(--primary-ink);border-color:transparent}.btn.accent{--bg: var(--accent);--fg: var(--accent-ink);border-color:transparent}.btn.ok{--bg: var(--ok);--fg: #0b1a12;border-color:transparent}.btn.bad{--bg: color-mix(in oklch, var(--bad) 18%, transparent);--fg: var(--bad);border-color:color-mix(in oklch,var(--bad) 35%,transparent)}.btn.ghost{--bg: transparent;border-color:var(--line)}.btn.lg{min-height:58px;font-size:1.06rem;padding:0 26px}.btn.xl{min-height:72px;font-size:1.2rem;border-radius:22px}.btn.sm{min-height:38px;padding:0 14px;font-size:.9rem}.btn.block{width:100%}.btn.icon{width:48px;padding:0}.btn.sm.icon{width:38px}.btn.primary:after,.btn.accent:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 35%,oklch(100% 0 0 / .35) 50%,transparent 65%);transform:translate(-120%);transition:transform .8s var(--ease-out)}.btn.primary:hover:after,.btn.accent:hover:after{transform:translate(120%)}.chip{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 16px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--glass);cursor:pointer;font-weight:600;transition:background .2s,color .2s,border-color .2s;white-space:nowrap}.chip[aria-pressed=true]{background:var(--primary);color:var(--primary-ink);border-color:transparent}.chip small{font-weight:500;opacity:.7}.badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:var(--r-pill);font-size:.8rem;font-weight:700;background:color-mix(in oklch,var(--accent) 18%,transparent);color:var(--accent)}.badge.ok{background:color-mix(in oklch,var(--ok) 18%,transparent);color:var(--ok)}.badge.warn{background:color-mix(in oklch,var(--warn) 22%,transparent);color:color-mix(in oklch,var(--warn) 70%,var(--ink))}.badge.bad{background:color-mix(in oklch,var(--bad) 18%,transparent);color:var(--bad)}.dot{width:8px;height:8px;border-radius:50%;background:currentColor;display:inline-block}.dot.live{animation:livePulse 1.6s ease-out infinite}@keyframes livePulse{0%{box-shadow:0 0 0 0 currentColor}to{box-shadow:0 0 0 10px transparent}}.field{display:grid;gap:6px}.field>span{font-size:.9rem;font-weight:600;color:var(--ink-2)}.input{width:100%;min-height:52px;padding:0 16px;border-radius:16px;border:1px solid var(--line);background:var(--glass-strong);font-size:1.05rem;transition:border-color .2s,box-shadow .2s}textarea.input{padding:14px 16px;min-height:84px;resize:vertical}.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in oklch,var(--accent) 22%,transparent)}.row{display:flex;align-items:center;gap:10px}.row.wrap{flex-wrap:wrap}.between{justify-content:space-between}.stack{display:grid;gap:12px}.stack-lg{display:grid;gap:22px}.scroll-x{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}.scroll-x::-webkit-scrollbar{display:none}.grow{flex:1;min-width:0}.wrap-page{width:min(1100px,100%);margin:0 auto;padding:0 16px}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0d081661;z-index:40}.sheet{position:fixed;left:0;right:0;bottom:0;z-index:41;max-height:92dvh;overflow:auto;padding:10px 18px calc(22px + var(--safe-b));border-radius:30px 30px 0 0;background:var(--glass-strong);-webkit-backdrop-filter:blur(30px) saturate(1.6);backdrop-filter:blur(30px) saturate(1.6);border-top:1px solid var(--glass-edge)}@media (min-width: 760px){.sheet{left:50%;bottom:auto;top:50%;width:min(640px,94vw);border-radius:30px;translate:-50% -50%;border:1px solid var(--glass-edge)}}.grabber{width:44px;height:5px;border-radius:3px;background:var(--line);margin:2px auto 14px}.toasts{position:fixed;top:max(14px,env(safe-area-inset-top));left:0;right:0;z-index:60;display:grid;justify-items:center;gap:8px;pointer-events:none}.toast{pointer-events:auto;padding:12px 18px;border-radius:var(--r-pill);background:var(--primary);color:var(--primary-ink);font-weight:650;box-shadow:var(--shadow-float)}.map{width:100%;height:100%;min-height:220px;border-radius:inherit;overflow:hidden;background:color-mix(in oklch,var(--ground) 80%,var(--ink) 6%)}.t-shop .map .maplibregl-canvas,.t-rider .map .maplibregl-canvas{filter:invert(1) hue-rotate(185deg) saturate(.6) brightness(.9)}.map-plain{background-color:color-mix(in oklch,var(--ground) 88%,var(--ink) 5%);background-image:linear-gradient(color-mix(in oklch,var(--ink) 7%,transparent) 2px,transparent 2px),linear-gradient(90deg,color-mix(in oklch,var(--ink) 7%,transparent) 2px,transparent 2px);background-size:46px 46px}.t-shop .map-plain .maplibregl-canvas,.t-rider .map-plain .maplibregl-canvas{filter:none}.mk{width:22px;height:22px;border-radius:50%;border:3px solid #fff;box-shadow:0 6px 16px -4px #0008}.mk.shop{background:var(--accent-2);width:26px;height:26px;border-radius:8px}.mk.drop{background:var(--accent)}.mk.rider{background:var(--ok);position:relative}.mk.rider:after{content:"";position:absolute;top:-12px;right:-12px;bottom:-12px;left:-12px;border-radius:50%;border:2px solid var(--ok);animation:ring 2s ease-out infinite}@keyframes ring{0%{transform:scale(.4);opacity:.9}to{transform:scale(1.4);opacity:0}}.mk-label{font:700 12px var(--font-ui);background:#fff;color:#222;padding:2px 8px;border-radius:999px;margin-top:4px;white-space:nowrap;box-shadow:0 4px 10px -4px #0006}.maplibregl-ctrl-attrib{font-size:10px}.tile{--h: 30;position:relative;aspect-ratio:1;border-radius:20px;overflow:hidden;background:radial-gradient(120% 90% at 20% 15%,oklch(92% .09 calc(var(--h) + 20)) 0%,transparent 55%),radial-gradient(90% 90% at 85% 90%,oklch(66% .19 var(--h)) 0%,transparent 60%),oklch(80% .13 var(--h));display:grid;place-items:center}.tile b{font-family:var(--font-display);font-size:clamp(2rem,9vw,3.1rem);color:#ffffffeb;letter-spacing:-.05em;text-shadow:0 6px 24px oklch(30% .12 var(--h) / .45)}.tile.sold{filter:grayscale(1) opacity(.55)}.pin-boxes{display:flex;gap:12px;justify-content:center}.pin-boxes span{width:62px;height:74px;border-radius:18px;display:grid;place-items:center;font:800 2rem var(--font-display);background:var(--glass-strong);border:2px solid var(--line)}.pin-boxes span.on{border-color:var(--accent)}.pad{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.pad button{min-height:66px;border-radius:18px;border:1px solid var(--line);background:var(--glass);font:750 1.6rem var(--font-display);cursor:pointer}.pad button:active{background:var(--glass-strong)}.locked{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px;text-align:center}@media (prefers-reduced-motion: reduce){.aurora i,.dot.live,.mk.rider:after{animation:none!important}.btn:after{display:none}*{transition-duration:.01ms!important}}.t-shop .mk.drop,.t-rider .mk.drop{background:#ff6170;background:oklch(70% .2 18)}
