._banner_1e9b0_1{left:.75rem;right:.75rem;bottom:calc(env(safe-area-inset-bottom) + 84px);z-index:120;border:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172af0;border-radius:14px;align-items:center;gap:.75rem;padding:.75rem;display:flex;position:fixed;box-shadow:0 8px 28px #02061759}._text_1e9b0_18{flex:1;min-width:0}._title_1e9b0_23{color:var(--text);font-size:.88rem;font-weight:700}._sub_1e9b0_29{color:var(--text-muted);margin:.25rem 0 0;font-size:.78rem;line-height:1.35}._actions_1e9b0_36{align-items:center;gap:.5rem;display:flex}._install_1e9b0_42{background:var(--accent);color:#041423;border:none;border-radius:10px;padding:.45rem .7rem;font-size:.78rem;font-weight:700}._dismiss_1e9b0_52{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);border-radius:10px;padding:.42rem .65rem;font-size:.78rem;font-weight:600}@media (width>=720px){._banner_1e9b0_1{width:min(620px,100vw - 1.5rem);left:50%;right:auto;transform:translate(-50%)}}._layout_1vg5r_1{background:var(--bg);flex-direction:column;min-height:100dvh;display:flex}._main_1vg5r_8{padding:env(safe-area-inset-top) 0 calc(env(safe-area-inset-bottom) + 74px);flex:1;overflow:auto}._nav_1vg5r_14{bottom:max(10px, env(safe-area-inset-bottom));border:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:100;background:#111827e6;border-radius:14px;justify-content:center;align-items:center;gap:.25rem;width:min(560px,100vw - 1rem);margin:0 auto;padding:.5rem;display:flex;position:fixed;left:0;right:0}._link_1vg5r_33,._linkActive_1vg5r_34{border-radius:var(--radius-sm);min-width:0;color:var(--text-muted);letter-spacing:.01em;flex:1;justify-content:center;align-items:center;padding:.45rem .5rem;font-size:.72rem;font-weight:600;text-decoration:none;transition:color .15s,background .15s,transform .15s;display:flex}._link_1vg5r_33:hover{color:var(--text);transform:translateY(-1px)}._linkActive_1vg5r_34{color:var(--accent);background:#38bdf814}._label_1vg5r_60{white-space:nowrap}._badge_1vg5r_64{background:var(--accent);min-width:17px;height:17px;color:var(--bg);border-radius:999px;justify-content:center;align-items:center;padding:0 5px;font-size:.65rem;font-weight:700;display:flex;position:absolute;top:-4px;right:-2px}._link_1vg5r_33,._linkActive_1vg5r_34{position:relative}._page_c9ko6_1{padding:1rem 1.25rem 1.5rem}._header_c9ko6_5{margin-bottom:1.25rem}._title_c9ko6_9{letter-spacing:-.02em;color:var(--text);margin:0;font-size:1.5rem;font-weight:700}._subtitle_c9ko6_17{color:var(--text-muted);margin:.25rem 0 0;font-size:.85rem}._loading_c9ko6_23{text-align:center;color:var(--text-muted);padding:2rem}._list_c9ko6_29{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}._card_c9ko6_38{border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);position:relative;overflow:hidden;box-shadow:0 2px 12px #0206172e}._cardInner_c9ko6_47{text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;border:none;padding:1rem 5.5rem 1rem 1rem;transition:background .15s,transform .15s}._cardInner_c9ko6_47:hover{background:var(--surface-elevated);transform:translateY(-1px)}._route_c9ko6_63{flex-direction:column;gap:.2rem;display:flex}._routeOrigin_c9ko6_69{color:var(--text);font-size:1.05rem;font-weight:600}._routeTo_c9ko6_75{color:var(--text-muted);font-size:.9rem}._meta_c9ko6_80{color:var(--accent);flex-wrap:wrap;align-items:center;gap:.25rem;margin-top:.5rem;font-size:.95rem;font-weight:500;display:flex}._countdown_c9ko6_91{font-variant-numeric:tabular-nums}._leaving_c9ko6_95{color:var(--success)}._noService_c9ko6_99,._noEtd_c9ko6_103{color:var(--text-muted)}._cars_c9ko6_107{color:var(--text-muted);font-weight:400}._trainAt_c9ko6_112{color:var(--text-muted);margin-top:.35rem;font-size:.8rem}._meetHint_c9ko6_118{color:var(--accent)}._fare_c9ko6_122{color:var(--text-muted);margin-top:.35rem;font-size:.8rem}._reverseBtn_c9ko6_128{border:1px solid var(--border);background:var(--surface-elevated);width:32px;height:32px;color:var(--accent);border-radius:50%;font-size:.95rem;line-height:1;transition:color .15s,border-color .15s;position:absolute;top:50%;right:2.85rem;transform:translateY(-50%)}._reverseBtn_c9ko6_128:hover{border-color:var(--accent)}._deleteBtn_c9ko6_148{border:1px solid var(--border);background:var(--surface-elevated);width:32px;height:32px;color:var(--text-muted);border-radius:50%;font-size:1.1rem;line-height:1;transition:color .15s,border-color .15s;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}._deleteBtn_c9ko6_148:hover{color:var(--danger);border-color:var(--danger)}._empty_c9ko6_169{text-align:center;padding:3rem 1.5rem}._emptyTitle_c9ko6_174{color:var(--text);margin:0;font-size:1.25rem;font-weight:600}._emptySub_c9ko6_181{color:var(--text-muted);margin:.5rem 0 1.5rem;font-size:.95rem}._primaryButton_c9ko6_187{border-radius:var(--radius-sm);background:var(--accent);color:var(--bg);border:none;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:filter .15s}._primaryButton_c9ko6_187:hover{filter:brightness(1.1)}:root{--bg:#0a0e17;--surface:#111827;--surface-elevated:#1a2234;--surface-soft:#0f172a;--border:#1e293b;--text:#f1f5f9;--text-muted:#94a3b8;--accent:#38bdf8;--accent-dim:#0ea5e9;--success:#34d399;--warn:#fbbf24;--danger:#f87171;--radius:14px;--radius-sm:10px;--font-sans:"DM Sans", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace}*{box-sizing:border-box}html{-webkit-tap-highlight-color:transparent;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:var(--bg);min-height:100dvh;color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.5}#root{min-height:100dvh}a{color:var(--accent);text-decoration:none}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline-offset:2px;outline:2px solid #38bdf8cc}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@supports (padding:env(safe-area-inset-bottom)){.safe-bottom{padding-bottom:calc(env(safe-area-inset-bottom) + .5rem)}}
