:root{--bg: #ffffff;--bg-warm: #faf9f7;--panel: #ffffff;--line: #e8e6e1;--line-strong: #d6d3cc;--ink: #16181d;--ink-soft: #3f444e;--dim: #6b7280;--dimmer: #9ca3af;--accent: #1f6feb;--accent-soft: #eaf1fe;--accent-line: #b9d2fb;--warn: #b45309;--warn-soft: #fdf5e7;--bad: #b42318;--air: #7c4ddb;--ground: #1f6feb;--transfer: #b45309;--chrome: rgba(255, 255, 255, .88);--overlay: rgba(255, 255, 255, .94);--overlay-solid: rgba(255, 255, 255, .97);--map-bg: #eeece7;--selected-control: #16181d;--selected-control-ink: #ffffff;--r-sm: 6px;--r: 10px;--r-lg: 16px;--pad: 20px;--col: 1080px;--shadow-sm: 0 1px 2px rgba(22, 24, 29, .05);--shadow: 0 4px 16px rgba(22, 24, 29, .07), 0 1px 2px rgba(22, 24, 29, .04);--shadow-lift: 0 10px 30px rgba(22, 24, 29, .1), 0 2px 5px rgba(22, 24, 29, .05);--ease: cubic-bezier(.32, .72, 0, 1);--fast: .14s;--slow: .32s;--font: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace}html[data-theme=dark]{color-scheme:dark;--bg: #10141b;--bg-warm: #0c1118;--panel: #171d26;--line: #29313d;--line-strong: #3a4554;--ink: #f2f5f8;--ink-soft: #c8d0da;--dim: #9ba7b5;--dimmer: #738091;--accent: #64a1ff;--accent-soft: #172b48;--accent-line: #315b91;--warn: #f0ad57;--warn-soft: #342617;--bad: #ff8178;--air: #b18aff;--ground: #64a1ff;--transfer: #f0ad57;--chrome: rgba(16, 20, 27, .9);--overlay: rgba(23, 29, 38, .94);--overlay-solid: rgba(23, 29, 38, .97);--map-bg: #131b22;--selected-control: #eef3f8;--selected-control-ink: #111720;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow: 0 4px 16px rgba(0, 0, 0, .32), 0 1px 2px rgba(0, 0, 0, .24);--shadow-lift: 0 10px 30px rgba(0, 0, 0, .42), 0 2px 5px rgba(0, 0, 0, .25)}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg-warm);color:var(--ink);font-family:var(--font);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,select{font:inherit;color:inherit}h1,h2,h3{margin:0;font-weight:600;letter-spacing:-.01em}.step-head{margin-bottom:24px}.step-head h1{font-size:27px;line-height:1.2}.step-head p{margin:7px 0 0;color:var(--dim);font-size:15px;max-width:58ch}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-sm)}.btn{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:var(--r-sm);border:1px solid var(--line-strong);background:var(--panel);cursor:pointer;transition:background var(--fast) var(--ease),border-color var(--fast) var(--ease)}.btn:hover:not(:disabled){background:var(--bg-warm);border-color:var(--dimmer)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:500}.btn.primary:hover:not(:disabled){background:#1b62d1;border-color:#1b62d1}.btn.quiet{border-color:transparent;background:transparent;color:var(--dim)}.btn.quiet:hover:not(:disabled){background:#16181d0d;color:var(--ink)}.tag{display:inline-block;padding:1px 6px;border-radius:4px;font-size:11px;font-weight:500;letter-spacing:.01em;border:1px solid var(--line-strong);color:var(--dim);background:var(--bg-warm);white-space:nowrap}.tag.warn{color:var(--warn);border-color:#e8d9b6;background:var(--warn-soft)}.tag.accent{color:var(--accent);border-color:var(--accent-line);background:var(--accent-soft)}.num{font-variant-numeric:tabular-nums}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.leaflet-container{font-family:var(--font);background:var(--map-bg)}.leaflet-control-attribution{font-size:10px!important;color:var(--dimmer)!important;background:var(--overlay)!important}.leaflet-control-attribution a{color:var(--dim)!important}.leaflet-bar{border:none!important;box-shadow:var(--shadow-sm)!important}.leaflet-bar a{background:var(--panel)!important;border-bottom-color:var(--line)!important;color:var(--ink-soft)!important}html[data-theme=dark] .leaflet-tile-pane{filter:invert(.88) hue-rotate(175deg) brightness(.62) saturate(.72)}.sitelinks.svelte-12qhfyh{display:flex;gap:1.2rem;justify-content:center;padding:1.4rem 1rem 2.2rem;font-size:.9rem}.sitelinks.svelte-12qhfyh a:where(.svelte-12qhfyh){color:var(--dim)}.sitelinks.svelte-12qhfyh a:where(.svelte-12qhfyh):hover{color:var(--fg)}header.svelte-12qhfyh{position:sticky;top:0;z-index:400;background:var(--chrome);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}header.svelte-12qhfyh .bar:where(.svelte-12qhfyh),footer.svelte-12qhfyh .bar:where(.svelte-12qhfyh){max-width:var(--col);margin:0 auto;padding:0 var(--pad);display:flex;align-items:center;gap:18px}header.svelte-12qhfyh .bar:where(.svelte-12qhfyh){height:56px}.brand.svelte-12qhfyh{display:inline-flex;align-items:center;gap:7px;border:none;background:none;padding:0;font-family:Avenir Next,Avenir,Helvetica Neue,Arial,sans-serif;font-size:20px;font-weight:700;letter-spacing:-.035em;line-height:1;cursor:pointer}.wordmark.svelte-12qhfyh{display:inline-flex;align-items:center;gap:0}.wordmark.svelte-12qhfyh img:where(.svelte-12qhfyh){width:27px;height:27px;object-fit:contain;flex:0 0 27px;margin-right:-2px;transform:translateY(-2px)}.brand.svelte-12qhfyh small:where(.svelte-12qhfyh){display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:18px;padding:0 6px;border:1px solid var(--line-strong);border-radius:999px;color:var(--dim);font-family:var(--font);font-size:9px;font-weight:700;line-height:1;letter-spacing:.08em;text-indent:.08em;text-transform:uppercase}.progress.svelte-12qhfyh{display:flex;gap:2px;margin:0 auto}.dot.svelte-12qhfyh{display:flex;align-items:center;gap:6px;padding:5px 9px;border:none;border-radius:100px;background:transparent;color:var(--dimmer);font-size:12.5px;cursor:pointer;transition:color var(--fast) var(--ease),background var(--fast) var(--ease)}.dot.svelte-12qhfyh:disabled{cursor:default}.dot.svelte-12qhfyh:not(:disabled):hover{background:var(--bg-warm);color:var(--ink-soft)}.dot-mark.svelte-12qhfyh{width:6px;height:6px;border-radius:50%;background:var(--line-strong);transition:all var(--slow) var(--ease)}.dot.done.svelte-12qhfyh{color:var(--ink-soft)}.dot.done.svelte-12qhfyh .dot-mark:where(.svelte-12qhfyh){background:var(--accent)}.dot.now.svelte-12qhfyh{color:var(--ink);font-weight:600}.dot.now.svelte-12qhfyh .dot-mark:where(.svelte-12qhfyh){background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}@media(max-width:720px){.dot-label.svelte-12qhfyh{display:none}.dot.svelte-12qhfyh{padding:8px 5px}}.meta.svelte-12qhfyh{font-size:12px;color:var(--dimmer);white-space:nowrap}@media(max-width:900px){.meta.svelte-12qhfyh{display:none}}.theme-toggle.svelte-12qhfyh{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--dim);font-size:11.5px;cursor:pointer;white-space:nowrap}.theme-toggle.svelte-12qhfyh:hover{border-color:var(--line-strong);color:var(--ink)}@media(max-width:620px){.theme-label.svelte-12qhfyh{display:none}}main.svelte-12qhfyh{max-width:var(--col);margin:0 auto;padding:30px var(--pad) 96px}.step.svelte-12qhfyh{display:block}.loading.svelte-12qhfyh,.fatal.svelte-12qhfyh{color:var(--dim)}.loading.svelte-12qhfyh{padding:60px 0;text-align:center}.fatal.svelte-12qhfyh{padding:26px}.fatal.svelte-12qhfyh h1:where(.svelte-12qhfyh){color:var(--ink);font-size:20px;margin-bottom:8px}.fatal.svelte-12qhfyh code:where(.svelte-12qhfyh){font-family:var(--mono);font-size:13px;background:var(--bg-warm);padding:1px 5px;border-radius:4px}.dim.svelte-12qhfyh{color:var(--dimmer)}footer.svelte-12qhfyh{position:fixed;bottom:0;left:0;right:0;z-index:400;background:var(--chrome);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line)}footer.svelte-12qhfyh .bar:where(.svelte-12qhfyh){height:62px}.blocker.svelte-12qhfyh{margin:0 auto;font-size:13px;color:var(--dim);text-align:center}.map-legend.svelte-12qhfyh{display:flex;align-items:center;justify-content:center;gap:18px}.map-legend.svelte-12qhfyh span:where(.svelte-12qhfyh){display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.legend-line.svelte-12qhfyh{display:inline-block;width:28px;height:0;border-top:3px solid var(--ground);border-radius:999px}.legend-line.flight.svelte-12qhfyh{border-top:2px dashed var(--air)}.legend-line.connection.svelte-12qhfyh{border-top:2px dashed var(--transfer)}@media(max-width:680px){.map-legend.svelte-12qhfyh{gap:9px;font-size:10.5px}.legend-line.svelte-12qhfyh{width:18px}}
