@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:100%;font-display:swap;src:url(../media/a2947afc6a06879b-s.0gz0.h24vv934.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:100%;font-display:swap;src:url(../media/651aaf1801011892-s.0_pfzm~5i7__8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Archivo;font-style:normal;font-weight:100 900;font-stretch:100%;font-display:swap;src:url(../media/75affa71d1e2f6a7-s.p.0e5c5_wyqqx75.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo Fallback;src:local(Arial);ascent-override:88.96%;descent-override:21.28%;line-gap-override:0.0%;size-adjust:98.7%}.archivo_9443aef7-module__vKFuNW__className{font-family:Archivo,Archivo Fallback;font-style:normal}.archivo_9443aef7-module__vKFuNW__variable{--font-archivo:"Archivo", "Archivo Fallback"}
@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/4ba802ed8e67eac5-s.04ygcc0k6zvvf.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d7a0600e467cf0bd-s.18awt9904y5ei.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/dc0d9adbac686440-s.p.0~z396rbj0t4w.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b8f2b92a9960dd69-s.09-.4z_6a6fti.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/28e60ca39c9ae554-s.1841exvy3.1-g.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/8d05cfa5faa8406c-s.p.0kbulo~7o8gic.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Mono Fallback;src:local(Arial);ascent-override:81.58%;descent-override:26.3%;line-gap-override:0.0%;size-adjust:137.28%}.space_mono_7618295e-module__0uytZW__className{font-family:Space Mono,Space Mono Fallback;font-style:normal}.space_mono_7618295e-module__0uytZW__variable{--font-space-mono:"Space Mono", "Space Mono Fallback"}
:root{--ink-900:#0a0a0b;--ink-800:#1c1c20;--ink-700:#2e2e33;--ink-500:#6b6b73;--ink-400:#9a9aa2;--ink-300:#b9b9c0;--line-200:#e5e5e9;--line-100:#efeff2;--paper-100:#f6f6f7;--paper-50:#fafafa;--paper:#fff;--blue-700:#0e45be;--blue-600:#1457e6;--blue-500:#3d74f0;--blue-100:#dce8fd;--blue-50:#eef4fe;--yellow-500:#f5c400;--yellow-400:#ffd60a;--yellow-100:#fff4c2;--yellow-50:#fffae0;--success-600:#0e9f6e;--success-50:#e7f8f1;--warning-600:#c2710c;--warning-50:#fcf3e6;--danger-600:#dc2626;--danger-50:#fceaea;--bg:var(--paper-50);--surface:var(--paper);--surface-sunk:var(--paper-100);--surface-ink:var(--ink-900);--text:var(--ink-900);--text-muted:var(--ink-500);--text-faint:var(--ink-300);--text-on-ink:#fff;--border:var(--line-200);--border-strong:var(--ink-900);--accent:var(--blue-600);--accent-press:var(--blue-700);--accent-tint:var(--blue-50);--highlight:var(--yellow-400);--focus-ring:var(--blue-500);--font-sans:var(--font-archivo), "Archivo", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:var(--font-space-mono), "Space Mono", ui-monospace, "SFMono-Regular", monospace;--fs-display:clamp(48px, 7vw, 88px);--fs-h1:clamp(34px, 4.5vw, 52px);--fs-h2:clamp(26px, 3vw, 36px);--fs-h3:22px;--fs-body-lg:19px;--fs-body:17px;--fs-sm:15px;--fs-label:13px;--fs-xs:12px;--lh-tight:1.04;--lh-snug:1.18;--lh-body:1.5;--tracking-display:-.02em;--tracking-tight:-.01em;--tracking-label:.12em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-pill:999px;--shadow-sm:0 1px 2px #0a0a0b0f, 0 1px 1px #0a0a0b0a;--shadow-md:0 4px 14px #0a0a0b14, 0 1px 3px #0a0a0b0f;--shadow-lg:0 12px 34px #0a0a0b1f, 0 2px 8px #0a0a0b0f;--shadow-sheet:0 -8px 34px #0a0a0b24;--ring:0 0 0 4px var(--blue-100);--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-fast:.12s;--dur:.2s;--dur-slow:.32s;--maxw-app:480px;--maxw-read:720px;--maxw-wide:1080px;--tap-min:56px}.t-display{font-family:var(--font-sans);font-weight:900;font-size:var(--fs-display);line-height:var(--lh-tight);letter-spacing:var(--tracking-display);text-wrap:balance}.t-h1{font-family:var(--font-sans);font-weight:800;font-size:var(--fs-h1);line-height:var(--lh-tight);letter-spacing:var(--tracking-display);text-wrap:balance}.t-h2{font-family:var(--font-sans);font-weight:800;font-size:var(--fs-h2);line-height:var(--lh-snug);letter-spacing:var(--tracking-tight);text-wrap:balance}.t-h3{font-family:var(--font-sans);font-weight:700;font-size:var(--fs-h3);line-height:var(--lh-snug);letter-spacing:var(--tracking-tight)}.t-body-lg{font-family:var(--font-sans);font-weight:500;font-size:var(--fs-body-lg);line-height:var(--lh-body)}.t-body{font-family:var(--font-sans);font-weight:400;font-size:var(--fs-body);line-height:var(--lh-body)}.t-sm{font-family:var(--font-sans);font-weight:400;font-size:var(--fs-sm);line-height:var(--lh-body)}.t-label{font-family:var(--font-sans);font-weight:700;font-size:var(--fs-label);letter-spacing:var(--tracking-label);text-transform:uppercase;line-height:1.1}.t-mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-weight:700}*{box-sizing:border-box}html{background:#1c1c20}html,body{min-height:100%;margin:0}body{min-height:100dvh;font-family:var(--font-sans);color:var(--ink-900);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background:#1c1c20;justify-content:center;display:flex}.ms{letter-spacing:normal;text-transform:none;white-space:nowrap;font-feature-settings:"liga";-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;font-variation-settings:"FILL" 1, "wght" 600, "GRAD" 0, "opsz" 24;-webkit-user-select:none;user-select:none;direction:ltr;font-family:Material Symbols Sharp;font-style:normal;font-weight:400;line-height:1;display:inline-block}.app{background:var(--paper);flex-direction:column;width:100%;max-width:420px;min-height:100dvh;display:flex;position:relative;overflow:hidden;box-shadow:0 0 60px #00000059}.hdr{z-index:30;-webkit-backdrop-filter:saturate(180%)blur(12px);border-bottom:1px solid var(--line-100);background:#ffffffd9;justify-content:space-between;align-items:center;padding:14px 18px;display:flex;position:sticky;top:0}.wm{letter-spacing:-.04em;color:var(--ink-900);align-items:center;font-size:22px;font-weight:900;display:inline-flex}.wm .arr{color:var(--blue-600);margin:0 -.04em;font-size:.82em;transform:translateY(.06em)}.lang{border:1.5px solid var(--line-200);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:6px;height:40px;padding:0 12px;font-size:14px;font-weight:700;display:inline-flex}.lang .ms{color:var(--ink-500);font-size:18px}.steps{align-items:center;gap:6px;display:flex}.steps .dot{background:var(--line-200);width:22px;height:5px;transition:background var(--dur);border-radius:999px}.steps .dot.on{background:var(--ink-900)}.screen{flex:1;padding:22px 18px 132px;overflow-y:auto}.screen-enter{animation:slideup var(--dur) var(--ease-out) both}@keyframes slideup{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.screen-enter{animation:none}}.overline{letter-spacing:.12em;text-transform:uppercase;color:var(--blue-600);align-items:center;gap:7px;margin-bottom:12px;font-size:13px;font-weight:700;display:inline-flex}.overline .ms{font-size:18px}.h-title{letter-spacing:-.02em;text-wrap:balance;margin:0 0 8px;font-size:32px;font-weight:800;line-height:1.05}.h-title.big-step{margin:8px 0 24px;font-size:38px}.sub{color:var(--ink-500);margin:0 0 22px;font-size:17px;line-height:1.45}.tiles{grid-template-columns:1fr 1fr;gap:14px;display:grid}.tile{border:2px solid var(--line-200);cursor:pointer;text-align:left;transition:transform var(--dur-fast) var(--ease-out), border-color var(--dur);background:#fff;border-radius:16px;flex-direction:column;gap:6px;padding:18px;display:flex}.tile:active{transform:scale(.98)}.tile .topr{justify-content:space-between;align-items:center;display:flex}.tile .topr .ms{color:var(--ink-300);font-size:30px}.tile .big{letter-spacing:-.02em;font-size:30px;font-weight:900}.tile .d{color:var(--ink-500);font-size:13.5px;font-weight:500;line-height:1.35}.tile.sel{border-color:var(--ink-900);background:var(--ink-900);color:#fff}.tile.sel .d{color:#ffffffb8}.tile.sel .topr .ms{color:#fff}.tile.sel .check{color:var(--yellow-400)}.linkbtn{border:2px solid var(--line-200);cursor:pointer;width:100%;height:56px;color:var(--ink-900);background:#fff;border-radius:12px;justify-content:center;align-items:center;gap:10px;margin-top:16px;font-size:16px;font-weight:700;display:flex}.linkbtn .ms{color:var(--ink-500);font-size:22px}.linkbtn:active{background:var(--paper-100)}.change-dest{border:1px solid var(--line-200);font-family:var(--font-sans);color:var(--blue-600);cursor:pointer;transition:background var(--dur);background:#fff;border-radius:999px;align-items:center;gap:7px;margin:-8px 0 20px;padding:7px 12px 7px 10px;font-size:14px;font-weight:600;display:inline-flex}.change-dest:active{background:var(--blue-50)}.change-dest .ms{font-size:18px}.loc-btn{background:var(--ink-900);color:#fff;width:100%;height:56px;font-family:var(--font-sans);letter-spacing:-.01em;cursor:pointer;transition:transform var(--dur-fast) var(--ease-out), opacity var(--dur);border:none;border-radius:12px;justify-content:center;align-items:center;gap:10px;margin-bottom:16px;font-size:17px;font-weight:700;display:flex}.loc-btn .ms{color:var(--yellow-400);font-size:22px}.loc-btn:active{transform:translateY(1px)}.loc-btn.busy{opacity:.9;cursor:progress}.spinner{border:2.5px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.ordiv{color:var(--ink-300);align-items:center;gap:12px;margin:0 0 16px;display:flex}.ordiv:before,.ordiv:after{content:"";background:var(--line-200);flex:1;height:1px}.ordiv span{letter-spacing:.1em;text-transform:uppercase;font-size:12px;font-weight:700}.field-lab{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-500);margin-bottom:8px;font-size:13px;font-weight:700;display:block}.field-lab .opt{text-transform:none;letter-spacing:0;color:var(--ink-400);font-weight:500}.field{border:2px solid var(--line-200);background:#fff;border-radius:8px;align-items:center;gap:12px;height:56px;padding:0 14px;display:flex}.field:focus-within{border-color:var(--blue-600);box-shadow:var(--ring)}.field .ms{color:var(--ink-400);font-size:22px}.field input{font-family:var(--font-sans);color:var(--ink-900);background:0 0;border:none;outline:none;flex:1;font-size:17px;font-weight:500}.field input::placeholder{color:var(--ink-300)}.suggest{flex-direction:column;margin-top:10px;display:flex}.suggest button{border:none;border-bottom:1px solid var(--line-100);font-family:var(--font-sans);color:var(--ink-900);cursor:pointer;text-align:left;background:0 0;align-items:center;gap:12px;padding:13px 8px;font-size:16px;font-weight:600;display:flex}.suggest button .ms{color:var(--ink-400);font-size:20px}.suggest button:active{background:var(--paper-100)}.suggest button .meta{color:var(--ink-400);margin-left:auto;font-size:13px;font-weight:500}.helpnote{background:var(--blue-50);border-radius:12px;align-items:flex-start;gap:10px;margin-top:18px;padding:12px 14px;display:flex}.helpnote .ms{color:var(--blue-600);flex-shrink:0;margin-top:1px;font-size:20px}.helpnote p{color:var(--ink-700);margin:0;font-size:13.5px;line-height:1.45}.credit{text-align:center;margin-top:8px}.credit a{color:var(--ink-300);transition:color var(--dur);font-size:12px;font-weight:500;text-decoration:none}.credit a:hover{color:var(--ink-500)}.credit-name{text-decoration:underline}.chips{gap:8px;margin:0 -18px 18px;padding-bottom:4px;padding-left:18px;padding-right:18px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{border:2px solid var(--line-200);height:42px;color:var(--ink-900);cursor:pointer;white-space:nowrap;background:#fff;border-radius:999px;flex:none;align-items:center;gap:7px;padding:0 15px;font-size:14.5px;font-weight:700;display:inline-flex}.chip .ms{font-size:19px}.chip.on{background:var(--ink-900);color:#fff;border-color:var(--ink-900)}.routes{flex-direction:column;gap:14px;display:flex}.route{border:1px solid var(--line-200);box-shadow:var(--shadow-md);cursor:pointer;text-align:left;width:100%;font-family:var(--font-sans);transition:transform var(--dur-fast) var(--ease-out);background:#fff;border-radius:16px;padding:0;overflow:hidden}.route:active{transform:scale(.985)}.route.pick{border-color:var(--blue-600)}.route .pick-bar{background:var(--blue-600);color:#fff;letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:6px;padding:7px 14px;font-size:11.5px;font-weight:800;display:flex}.route .pick-bar .ms{color:var(--yellow-400);font-size:16px}.route .top{align-items:center;gap:14px;padding:16px 16px 13px;display:flex}.mode-ic{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.mode-ic .ms{font-size:30px}.route .meta{flex:1;min-width:0}.route .name{letter-spacing:-.01em;font-size:19px;font-weight:800}.route .msub{color:var(--ink-500);font-size:13.5px;font-weight:500}.route .legs{flex-wrap:wrap;align-items:center;gap:6px 4px;margin-top:-3px;padding:0 16px 14px;display:flex}.route .leg{background:var(--blue-50);color:var(--blue-700);white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:3px;padding:2px 7px;font-size:11.5px;font-weight:700;display:inline-flex}.route .leg .ms{font-size:14px}.route .leg-sep{color:var(--ink-400);flex:none;font-size:14px}.route .nums{text-align:right;flex-shrink:0}.route .time{font-family:var(--font-mono);font-size:21px;font-weight:700}.route .time small{font-size:12px;font-weight:700}.route .price{color:var(--ink-500);font-size:14px;font-weight:600}.route .price-note{color:var(--success-600);max-width:120px;margin-top:2px;margin-left:auto;font-size:11px;font-weight:600;line-height:1.25}.route .foot{border-top:1px solid var(--line-100);background:var(--paper-50);align-items:center;gap:8px;padding:9px 16px;display:flex}.badge{letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:700}.badge.best{background:var(--success-50);color:#0b7d57}.badge.freq{background:var(--blue-50);color:var(--blue-700)}.badge.fast{background:var(--yellow-100);color:#7a5a00}.badge.transfer{background:var(--line-100);color:var(--ink-500)}.route .chev{color:var(--ink-300);margin-left:auto}.route .chev .ms{font-size:22px}.cta-bar{padding:16px 18px calc(22px + env(safe-area-inset-bottom,0px));background:linear-gradient(to top, var(--paper) 72%, #fff0);z-index:25;position:absolute;bottom:0;left:0;right:0}.cta{background:var(--blue-600);color:#fff;width:100%;height:58px;font-family:var(--font-sans);letter-spacing:-.01em;cursor:pointer;transition:background var(--dur), transform var(--dur-fast);border:none;border-radius:12px;justify-content:center;align-items:center;gap:10px;font-size:18px;font-weight:700;display:flex}.cta .ms{font-size:24px}.cta:hover{background:var(--blue-500)}.cta:active{background:var(--blue-700);transform:translateY(1px)}.cta:disabled{background:var(--line-200);color:var(--ink-300);cursor:not-allowed}.scrim{z-index:40;animation:fade var(--dur) ease both;background:#0a0a0b80;position:absolute;inset:0}@keyframes fade{0%{opacity:0}to{opacity:1}}.sheet{z-index:41;background:var(--paper);box-shadow:var(--shadow-sheet);max-height:80%;animation:sheetup var(--dur-slow) var(--ease-out) both;border-radius:24px 24px 0 0;flex-direction:column;display:flex;position:absolute;bottom:0;left:0;right:0}@keyframes sheetup{0%{transform:translateY(100%)}to{transform:none}}.sheet .grab{background:var(--line-200);border-radius:999px;width:40px;height:5px;margin:10px auto 4px}.sheet .sh-hd{justify-content:space-between;align-items:center;padding:6px 20px 12px;display:flex}.sheet .sh-hd h3{letter-spacing:-.01em;margin:0;font-size:20px;font-weight:800}.sheet .sheet-sub{color:var(--ink-500);margin:0;padding:0 20px 12px;font-size:14px;line-height:1.4}.sheet .x{background:var(--paper-100);cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.sheet .x .ms{color:var(--ink-700);font-size:20px}.sheet .sh-body{padding:0 12px 24px;overflow-y:auto}.air{border:none;border-bottom:1px solid var(--line-100);width:100%;font-family:var(--font-sans);cursor:pointer;text-align:left;background:0 0;align-items:center;gap:14px;padding:14px 12px;display:flex}.air:active{background:var(--paper-100)}.air .logo{background:var(--paper-100);width:40px;height:40px;color:var(--ink-700);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;font-weight:800;display:flex}.air .an{font-size:16px;font-weight:700}.air .at{color:var(--ink-400);font-size:13px;font-weight:600;font-family:var(--font-mono);margin-left:auto}.ride-apps{border:1px solid var(--line-200);background:var(--blue-50);border-radius:16px;margin:16px 0 4px;padding:14px}.ride-apps-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.ride-apps-title{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-900);align-items:center;gap:7px;font-size:13px;font-weight:700;display:inline-flex}.ride-apps-title .ms{color:var(--blue-600);font-size:18px}.ride-apps-price{font-family:var(--font-mono);color:var(--ink-900);font-size:18px;font-weight:700}.ride-apps .app-btn{background:#fff}.ride-apps-note{color:var(--ink-500);margin:12px 0 0;font-size:13px;font-weight:600;line-height:1.4}.app-grid{grid-template-columns:1fr 1fr;gap:10px;margin-top:10px;display:grid}.app-btn{border:1px solid var(--line-200);font-family:var(--font-sans);cursor:pointer;background:#fff;border-radius:16px;flex-direction:column;align-items:center;gap:9px;padding:16px 12px;transition:transform .1s;display:flex}.app-btn:active{transform:scale(.97)}.app-btn .app-logo{border-radius:12px;width:48px;height:48px}.app-btn .an{color:var(--ink-700);font-size:14px;font-weight:700}.back{width:fit-content;font-family:var(--font-sans);color:var(--ink-700);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin-bottom:14px;padding:0;font-size:15px;font-weight:700;display:flex}.back .ms{font-size:22px}.det-hd{align-items:center;gap:14px;margin-bottom:4px;display:flex}.det-stat{gap:10px;margin:16px 0 6px;display:flex}.stat{border:1px solid var(--line-200);border-radius:12px;flex:1;padding:12px 14px}.stat .k{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-400);font-size:11px;font-weight:700}.stat .v{font-family:var(--font-mono);margin-top:2px;font-size:22px;font-weight:700}.stat .note{color:var(--success-600);margin-top:3px;font-size:11px;font-weight:600;line-height:1.25}.stat .tnote{color:var(--ink-500);margin-top:3px;font-size:11px;font-weight:600;line-height:1.25}.stat .v .live-dot{vertical-align:middle;margin-right:5px;display:inline-block}.timeline{margin-top:22px;padding-left:6px;position:relative}.tl-step{gap:14px;padding-bottom:22px;display:flex;position:relative}.tl-step:not(:last-child):before{content:"";background:var(--line-200);width:2px;position:absolute;top:30px;bottom:-4px;left:13px}.tl-dot{background:var(--ink-900);color:#fff;z-index:1;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:800;display:flex}.tl-dot.ms-dot .ms{font-size:18px}.tl-step .body h4{margin:4px 0 3px;font-size:16px;font-weight:700}.tl-step .body p{color:var(--ink-500);margin:0;font-size:14px;line-height:1.45}.tl-step .body .tl-meta{font-family:var(--font-mono);letter-spacing:-.02em;color:var(--blue-700);margin:0 0 4px;font-size:12px;font-weight:700}.tl-step .body .carousel{max-width:260px;margin:10px 0 2px}.carousel-frame{position:relative}.carousel-track{scroll-snap-type:x mandatory;border:1px solid var(--line-200);background:var(--paper-50);scrollbar-width:none;-webkit-overflow-scrolling:touch;border-radius:12px;display:flex;overflow:auto hidden}.carousel-track::-webkit-scrollbar{display:none}.carousel-slide{scroll-snap-align:center;flex:0 0 100%;line-height:0}.carousel-open{cursor:zoom-in;background:0 0;border:none;width:100%;padding:0;line-height:0;display:block}.carousel-img{aspect-ratio:3/4;object-fit:cover;width:100%;height:auto;display:block}.carousel.single .carousel-img{border:1px solid var(--line-200);border-radius:12px}.carousel-zoomhint{pointer-events:none;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0a0b8c;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;display:flex;position:absolute;bottom:8px;right:8px}.carousel-zoomhint .ms{font-size:18px}.carousel-count{font-family:var(--font-mono);letter-spacing:-.02em;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0a0b8c;border-radius:999px;padding:3px 7px;font-size:11px;font-weight:700;position:absolute;top:8px;right:8px}.carousel-arrow{width:32px;height:32px;color:var(--ink-900);box-shadow:var(--shadow-md);cursor:pointer;background:#ffffffe6;border:none;border-radius:999px;justify-content:center;align-items:center;transition:opacity .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.carousel-arrow .ms{font-size:22px}.carousel-arrow.prev{left:6px}.carousel-arrow.next{right:6px}.carousel-arrow:disabled{opacity:0;pointer-events:none}.carousel-dots{justify-content:center;gap:6px;margin-top:8px;display:flex}.carousel-dot{background:var(--line-200);cursor:pointer;border:none;border-radius:999px;width:6px;height:6px;padding:0;transition:width .15s,background .15s}.carousel-dot.on{background:var(--ink-900);width:16px}.lightbox{z-index:100;touch-action:none;background:#0a0a0bed;justify-content:center;align-items:center;animation:.15s lb-in;display:flex;position:fixed;inset:0}@keyframes lb-in{0%{opacity:0}to{opacity:1}}.lightbox-track{display:flex;position:absolute;inset:0}.lightbox-slide{flex:0 0 100%;height:100%;position:relative}.lightbox-img{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;border-radius:4px;width:auto;max-width:calc(100% - 32px);height:auto;max-height:calc(100% - 32px);margin:auto;position:absolute;inset:16px}.lightbox-close,.lightbox-nav{z-index:2;cursor:pointer;color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff24;border:none;border-radius:999px;justify-content:center;align-items:center;display:flex;position:absolute}.lightbox-close{top:max(14px, env(safe-area-inset-top));width:40px;height:40px;right:14px}.lightbox-close .ms{font-size:24px}.lightbox-nav{width:42px;height:42px;top:50%;transform:translateY(-50%)}.lightbox-nav .ms{font-size:28px}.lightbox-nav.prev{left:12px}.lightbox-nav.next{right:12px}.lightbox-nav:disabled{opacity:0;pointer-events:none}.lightbox-count{top:max(18px, env(safe-area-inset-top));z-index:2;font-family:var(--font-mono);color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff24;border-radius:999px;padding:4px 10px;font-size:13px;font-weight:700;position:absolute;left:50%;transform:translate(-50%)}.det-sec{margin-top:28px}.sec-lab{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-900);align-items:center;gap:7px;margin-bottom:12px;font-size:13px;font-weight:700;display:flex}.sec-lab .ms{color:var(--blue-600);font-size:18px}.ticket-grid{grid-template-columns:1fr;gap:10px;margin-top:14px;display:grid}.ticket{border:1px solid var(--line-200);background:#fff;border-radius:12px;flex-direction:column;gap:3px;padding:13px 14px;display:flex;position:relative}.ticket.best{border:2px solid var(--ink-900);padding:12px 13px}.ticket .tag-best{background:var(--success-50);color:#0b7d57;letter-spacing:.05em;text-transform:uppercase;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:700;position:absolute;top:-9px;left:12px}.ticket .tk-top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.ticket .nm{letter-spacing:-.01em;font-size:15px;font-weight:800}.ticket .pr{font-family:var(--font-mono);font-size:17px;font-weight:700}.ticket .per{font-family:var(--font-mono);color:var(--success-600);font-size:12px;font-weight:700}.ticket .for{color:var(--ink-700);margin-top:2px;font-size:12.5px;font-weight:600;line-height:1.35}.ticket .val{color:var(--ink-500);font-size:12.5px;line-height:1.4}.ticket .tk-note{color:var(--warning-600);margin-top:4px;font-size:12px;font-weight:600;line-height:1.4}.ticket-app{border:1px solid var(--line-200);width:100%;color:var(--ink-800);text-align:left;cursor:pointer;background:#fff;border-radius:12px;align-items:center;gap:10px;margin-top:12px;padding:12px 14px;font-size:13.5px;font-weight:700;line-height:1.3;display:flex}.ticket-app:active{transform:scale(.99)}.ticket-app .lead{width:24px;height:24px;color:var(--blue-600);border-radius:6px;flex:none;font-size:22px}.ticket-app .ext{color:var(--ink-400);flex:none;margin-left:auto;font-size:18px}.stops{padding-left:2px;position:relative}.stop{align-items:center;gap:12px;padding:6px 0;display:flex;position:relative}.stop:not(:last-child):before{content:"";background:var(--line-200);width:2px;position:absolute;top:22px;bottom:-6px;left:8px}.stop .stop-dot{border:2px solid var(--line-200);z-index:1;background:#fff;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.stop.first .stop-dot{background:var(--blue-600);border-color:var(--blue-600)}.stop.last .stop-dot{background:var(--ink-900);border-color:var(--ink-900)}.stop.last .stop-dot .ms{color:#fff;font-size:11px}.stop .nm{color:var(--ink-900);font-size:15px;font-weight:600}.stop.first .nm,.stop.last .nm{font-weight:800}.stop .note{color:var(--ink-400);margin-left:auto;font-size:12px;font-weight:600}.live-card{border:1px solid var(--blue-100,#dce8fd);background:var(--blue-50);border-radius:14px;flex-direction:column;align-items:flex-start;gap:9px;padding:14px 16px;display:flex}.live-from{color:var(--ink-900);align-items:center;gap:9px;font-size:15px;font-weight:700;display:flex}.live-dot{background:var(--blue-600);border-radius:999px;flex-shrink:0;width:9px;height:9px;position:relative}.live-dot:after{content:"";background:var(--blue-600);border-radius:999px;animation:1.8s ease-out infinite livepulse;position:absolute;inset:0}@keyframes livepulse{0%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(2.6)}}.live-val{align-items:baseline;gap:6px;padding-left:18px;display:flex}.live-num{font-family:var(--font-mono);color:var(--blue-700);letter-spacing:-.02em;font-size:26px;font-weight:800;line-height:1}.live-num.live-now{text-transform:uppercase;letter-spacing:.02em;font-size:19px}.live-unit{color:var(--ink-500);font-size:14px;font-weight:700}.live-next{border-left:1px solid var(--blue-100,#dce8fd);color:var(--ink-500);align-self:center;margin-left:8px;padding-left:9px;font-size:12.5px;font-weight:600}.live-val.muted{color:var(--ink-500);font-size:13.5px;font-weight:600}.live-foot{color:var(--ink-400);margin-top:8px;font-size:12px;font-weight:600}@media (prefers-reduced-motion:reduce){.live-dot:after{opacity:0;animation:none}}.toast{z-index:50;background:var(--ink-900);color:#fff;box-shadow:var(--shadow-lg);animation:slideup var(--dur) var(--ease-out) both;border-radius:12px;align-items:center;gap:10px;padding:14px 16px;font-size:15px;font-weight:600;display:flex;position:absolute;bottom:96px;left:18px;right:18px}.toast .ms{color:var(--yellow-400);font-size:22px}.night-banner{color:#fff;background:linear-gradient(135deg,#141a3e,#0b1030);border:1px solid #788cff38;border-radius:14px;align-items:flex-start;gap:11px;margin:16px 0 2px;padding:13px 15px;display:flex}.night-banner .ms{color:#ffd66e;flex-shrink:0;margin-top:1px;font-size:22px}.night-banner .nb-title{letter-spacing:.03em;font-size:13px;font-weight:800}.night-banner p{color:#ffffffc7;margin:2px 0 0;font-size:13px;line-height:1.45}.route .night-flag{color:var(--warning-600);align-items:center;gap:4px;font-size:11.5px;font-weight:700;display:inline-flex}.route .night-flag .ms{font-size:16px}.night-splash{z-index:95;cursor:pointer;text-align:center;color:#fff;animation:ns-fade var(--dur) ease both;background:radial-gradient(125% 80% at 50% 16%,#1b2350 0%,#0b1030 46%,#05060f 100%);flex-direction:column;justify-content:center;align-items:center;gap:34px;padding:32px;display:flex;position:fixed;inset:0}.night-splash.closing{opacity:0;transition:opacity var(--dur-slow) ease;animation:none}@keyframes ns-fade{0%{opacity:0}to{opacity:1}}.ns-sky{justify-content:center;align-items:center;width:240px;height:150px;display:flex;position:relative}.ns-moon{width:104px;height:104px;animation:moonrise .72s var(--ease-out) both;background:radial-gradient(circle at 63% 37%,#96a4cd66,#96a4cd00 24%),radial-gradient(circle at 41% 66%,#96a4cd4d,#96a4cd00 18%),radial-gradient(circle at 35% 30%,#fff,#e7eaf7 55%,#c3c9e2);border-radius:50%;box-shadow:0 0 40px 10px #b0c4ff6b,0 0 120px 30px #5674e638}@keyframes moonrise{0%{opacity:0;transform:translateY(22px)scale(.9)}to{opacity:1;transform:none}}.ns-star{opacity:.85;background:#fff;border-radius:50%;width:3px;height:3px;animation:2.6s ease-in-out infinite twinkle;position:absolute;box-shadow:0 0 6px 1px #fff9}.ns-star.s1{top:10%;left:16%}.ns-star.s2{width:2px;height:2px;animation-delay:.5s;top:24%;left:82%}.ns-star.s3{width:2px;height:2px;animation-delay:1s;top:66%;left:8%}.ns-star.s4{animation-delay:1.4s;top:78%;left:74%}.ns-star.s5{width:2px;height:2px;animation-delay:.8s;top:6%;left:60%}.ns-star.s6{animation-delay:1.8s;top:52%;left:92%}@keyframes twinkle{0%,to{opacity:.25}50%{opacity:.95}}.ns-copy{animation:moonrise .72s var(--ease-out) 90ms both;flex-direction:column;align-items:center;gap:10px;display:flex}.ns-title{letter-spacing:-.01em;font-size:30px;font-weight:800}.ns-body{color:#ffffffd1;max-width:300px;margin:0;font-size:15px;line-height:1.5}.ns-dismiss{color:#fff;cursor:pointer;background:#ffffff14;border:1.5px solid #ffffff47;border-radius:999px;height:42px;margin-top:6px;padding:0 22px;font-size:14px;font-weight:700}@media (prefers-reduced-motion:reduce){.night-splash,.ns-moon,.ns-copy{animation:none}.ns-star{opacity:.8;animation:none}.night-splash.closing{transition:none}}.arrival-hero{flex-wrap:wrap;align-items:stretch;gap:12px;margin:0 0 22px;display:flex}.flap-clock{background:var(--ink-900);border:1px solid var(--ink-900);border-radius:12px;flex-direction:column;flex:150px;gap:8px;padding:12px 14px;display:flex}.flap-label{letter-spacing:.12em;text-transform:uppercase;color:#ffffff80;font-size:11px;font-weight:700}.flap-row{align-items:center;gap:4px;display:flex}.flap{width:30px;height:44px;font-family:var(--font-mono);text-align:center;color:#fff;font-variant-numeric:tabular-nums;background:linear-gradient(#2d2d34 0 50%,#202026 50% 100%);border-radius:5px;font-size:28px;font-weight:700;line-height:44px;position:relative;box-shadow:inset 0 0 0 1px #ffffff0d,0 1px 2px #00000073}.flap:after{content:"";background:#0000008c;height:2px;position:absolute;top:50%;left:0;right:0;transform:translateY(-1px)}.flap-sep{font-family:var(--font-mono);color:#fff;padding:0 1px;font-size:26px;font-weight:700;animation:1s step-end infinite lcdblink}@keyframes lcdblink{50%{opacity:.3}}.arrival-btn{border:1px solid var(--line-200);min-height:56px;font-family:var(--font-sans);color:var(--ink-900);cursor:pointer;text-align:center;transition:background var(--dur);background:#fff;border-radius:12px;flex:150px;justify-content:center;align-items:center;gap:9px;padding:10px 16px;font-size:15px;font-weight:700;display:inline-flex}.arrival-btn .ms{color:var(--blue-600);font-size:20px}.arrival-btn:active{background:var(--paper-100)}.arrival-chip{border:1px solid var(--ink-900);background:var(--ink-900);border-radius:12px;flex:150px;align-items:stretch;display:flex;overflow:hidden}.arrival-chip .ac-main{min-height:56px;font-family:var(--font-sans);color:#fff;cursor:pointer;background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-size:15px;font-weight:700;display:inline-flex}.arrival-chip .ac-main .ms{color:var(--yellow-400);font-size:19px}.arrival-chip .ac-clear{cursor:pointer;color:#fff;background:#ffffff1a;border:none;justify-content:center;align-items:center;width:48px;display:flex}.arrival-chip .ac-clear .ms{font-size:20px}.arrival-chip .ac-clear:active{background:#fff3}.arr-wheel{--wheel-h:220px;--item-h:44px;justify-content:center;align-items:stretch;gap:8px;padding:4px 0;display:flex;position:relative;-webkit-mask-image:linear-gradient(#0000,#000 22% 78%,#0000);mask-image:linear-gradient(#0000,#000 22% 78%,#0000)}.arr-col{z-index:1;height:var(--wheel-h);scroll-snap-type:y mandatory;padding:calc((var(--wheel-h) - var(--item-h)) / 2) 0;scrollbar-width:none;-webkit-overflow-scrolling:touch;position:relative;overflow-y:auto}.arr-col::-webkit-scrollbar{display:none}.arr-item{width:92px;height:var(--item-h);scroll-snap-align:center;cursor:pointer;font-family:var(--font-mono);color:var(--ink-300);transition:color var(--dur), transform var(--dur);background:0 0;border:none;justify-content:center;align-items:center;font-size:26px;font-weight:700;display:flex}.arr-item.on{color:var(--ink-900);transform:scale(1.08)}.arr-sep{z-index:1;font-family:var(--font-mono);color:var(--ink-900);align-self:center;font-size:26px;font-weight:700;position:relative}.arr-band{height:var(--item-h);pointer-events:none;background:var(--paper-100);border-radius:10px;position:absolute;top:50%;left:8px;right:8px;transform:translateY(-50%)}.arr-night-hint{background:var(--ink-900);color:#fff;border-radius:999px;align-items:center;gap:6px;width:fit-content;margin:8px auto 0;padding:6px 13px;font-size:12.5px;font-weight:700;display:flex}.arr-night-hint .ms{color:#ffd66e;font-size:16px}.arr-set{background:var(--blue-600);color:#fff;width:100%;min-height:52px;font-family:var(--font-sans);cursor:pointer;transition:background var(--dur);border:none;border-radius:12px;margin-top:14px;font-size:16px;font-weight:700}.arr-set:active{background:var(--blue-700)}.arr-clear{border:1px solid var(--line-200);background:var(--paper-50);width:100%;min-height:48px;font-family:var(--font-sans);color:var(--blue-600);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;margin-top:8px;font-size:14px;font-weight:700;display:inline-flex}.arr-clear .ms{font-size:18px}.arr-clear:active{background:var(--blue-50)}.planning-note{color:#fff;background:linear-gradient(135deg,#141a3e,#0b1030);border:1px solid #788cff38;border-radius:14px;align-items:flex-start;gap:11px;padding:13px 15px;display:flex}.planning-note .ms{color:#ffd66e;flex-shrink:0;margin-top:1px;font-size:22px}.planning-note p{color:#ffffffd1;margin:0;font-size:13px;line-height:1.45}@media (prefers-reduced-motion:reduce){.flap-sep{animation:none}}
