.trip-section.svelte-x09yfy{display:block;width:100%;border:none;border-bottom:1px solid rgba(255,255,255,.04);background:none;color:inherit;font:inherit;text-align:left;cursor:pointer;padding:0;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;touch-action:pan-x;overflow:hidden}.trip-section.trip-liquid.svelte-x09yfy{position:fixed;width:auto;bottom:calc(env(safe-area-inset-bottom,0px) + 56px);left:max(var(--space-5),env(safe-area-inset-left,0px));right:max(var(--space-5),env(safe-area-inset-right,0px));z-index:1000;background:#1c1c1e8c;backdrop-filter:blur(40px) saturate(1.8) brightness(1.1);-webkit-backdrop-filter:blur(40px) saturate(1.8) brightness(1.1);border-radius:22px;border:.5px solid rgba(255,255,255,.18);box-shadow:0 2px 20px #00000040,0 0 0 .5px #ffffff0f inset}.trip-progress-track.svelte-x09yfy{height:3px;background:#ffffff0a}.trip-progress-fill.svelte-x09yfy{height:100%;background:#3b82f6;border-radius:0 2px 2px 0;transition:width .8s cubic-bezier(.22,1,.36,1);min-width:4px}.fill-arrived.svelte-x09yfy{background:var(--color-success)}.trip-content.svelte-x09yfy{display:flex;flex-direction:column;gap:0;padding:10px 14px 12px}.trip-card-main.svelte-x09yfy{display:flex;gap:10px}.trip-card-left.svelte-x09yfy{flex:1;min-width:0;display:flex;flex-direction:column;gap:0}.trip-card-badge-row.svelte-x09yfy{display:flex;align-items:center;gap:8px;padding-bottom:6px}.trip-badge-text-sm.svelte-x09yfy{font-size:.72rem}.trip-card-right.svelte-x09yfy{display:flex;flex-direction:column;align-items:center;gap:8px;flex-shrink:0}.trip-info.svelte-x09yfy{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.trip-status.svelte-x09yfy{font-size:.92rem;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trip-status-label.svelte-x09yfy{color:#ffffff73;font-weight:500;margin-right:4px}.trip-status-stop.svelte-x09yfy{color:#fff}.trip-status-boarding.svelte-x09yfy,.trip-status-waiting.svelte-x09yfy,.trip-status-at-stop.svelte-x09yfy{color:var(--accent-300)}.trip-status-alight.svelte-x09yfy{color:#f59e0b}.trip-status-arrived.svelte-x09yfy{color:var(--color-success)}.trip-status-transfer.svelte-x09yfy{color:#f59e0b}.trip-row-bottom.svelte-x09yfy{display:flex;align-items:center;gap:8px;min-height:18px;min-width:0}.trip-focus-stop.svelte-x09yfy{font-size:.74rem;color:#ffffffd1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.trip-row-exit.svelte-x09yfy{font-size:.72rem;color:var(--accent-400, #3b82f6);font-weight:500;padding-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trip-row-dest.svelte-x09yfy{font-size:.68rem;color:#ffffff4d;padding-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trip-row-distance.svelte-x09yfy{font-size:.68rem;color:#ffffff59;padding-top:1px;font-variant-numeric:tabular-nums}.trip-gps-weak.svelte-x09yfy{font-size:.7rem;color:#f59e0b;flex-shrink:0}.trip-sheet-wrapper.svelte-x09yfy{height:var(--sheet-h, 0px);overflow:hidden;will-change:height}.trip-sheet-wrapper.sheet-animating.svelte-x09yfy{transition:height .28s cubic-bezier(.22,1,.36,1)}.trip-expanded-details.svelte-x09yfy{padding:0 16px 16px;display:flex;flex-direction:column;gap:10px}.trip-drag-handle.svelte-x09yfy{display:flex;justify-content:center;padding:4px 0 2px;cursor:grab}.trip-drag-pill.svelte-x09yfy{width:32px;height:3px;border-radius:2px;background:#ffffff26}.trip-detail-meta.svelte-x09yfy{display:flex;align-items:center;gap:0;font-size:.72rem;color:#fff6;flex-wrap:wrap;row-gap:4px}.trip-stop-list.svelte-x09yfy{display:flex;flex-direction:column;max-height:min(44vh,320px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.1) transparent;touch-action:pan-y;contain:layout style}.trip-leg-divider.svelte-x09yfy{display:grid;grid-template-columns:12px minmax(0,1fr);gap:6px;padding:0 6px 0 2px}.trip-leg-divider.leg-passed.svelte-x09yfy .trip-leg-divider-content:where(.svelte-x09yfy){opacity:.45}.trip-leg-divider-line.svelte-x09yfy{display:flex;justify-content:center;align-self:stretch}.trip-leg-divider-rail.svelte-x09yfy{width:2px;flex:1;border-radius:999px;background:var(--trip-leg-line)}.trip-leg-divider-content.svelte-x09yfy{display:flex;align-items:center;gap:6px;min-width:0;padding:4px 0 2px}.trip-leg-delay.svelte-x09yfy{margin-left:auto;font-size:.68rem;font-weight:600;color:var(--color-error-muted);white-space:nowrap}.trip-leg-vehicle-icon.svelte-x09yfy{margin-left:auto;display:flex;align-items:center;justify-content:center;flex-shrink:0;min-width:34px}.trip-leg-delay.svelte-x09yfy+.trip-leg-vehicle-icon:where(.svelte-x09yfy){margin-left:0}.trip-stop-item.svelte-x09yfy{display:flex;align-items:center;gap:8px;min-height:30px;padding:0 6px 0 2px;border-radius:10px}.trip-stop-item.stop-current.svelte-x09yfy,.trip-stop-item.stop-alight.svelte-x09yfy{background:none}.stop-line-segment.svelte-x09yfy{display:grid;grid-template-rows:minmax(0,1fr) auto minmax(0,1fr);align-items:center;width:12px;flex-shrink:0;position:relative;align-self:stretch}.stop-line-upper.svelte-x09yfy,.stop-line-lower.svelte-x09yfy{width:2px;background:transparent;justify-self:center;align-self:stretch;min-height:4px;position:relative;overflow:hidden}.stop-line-fill.svelte-x09yfy{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:1px;transform-origin:top center;transition:transform 1s cubic-bezier(.22,1,.36,1);pointer-events:none}.stop-line-segment.segment-has-up.svelte-x09yfy .stop-line-upper:where(.svelte-x09yfy),.stop-line-segment.segment-has-down.svelte-x09yfy .stop-line-lower:where(.svelte-x09yfy){background:var(--trip-stop-line)}.stop-dot.svelte-x09yfy{width:7px;height:7px;border-radius:50%;background:var(--trip-stop-dot);border:1.5px solid var(--trip-stop-line);flex-shrink:0;z-index:1;align-self:center;justify-self:center}.stop-dot.dot-passed.svelte-x09yfy{background:var(--trip-stop-dot);border-color:var(--trip-stop-line)}.stop-dot.dot-current.svelte-x09yfy{width:8px;height:8px;background:var(--trip-stop-line);border:1.5px solid var(--trip-stop-line)}.stop-dot.dot-final.svelte-x09yfy,.stop-dot.dot-alight.svelte-x09yfy{width:9px;height:9px;background:var(--trip-stop-line);border:1.5px solid var(--trip-stop-line)}.stop-name.svelte-x09yfy{font-size:.75rem;color:#ffffff8c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.stop-name.name-current.svelte-x09yfy{color:#fff;font-weight:600}.stop-name.name-alight.svelte-x09yfy{font-size:.75rem;font-weight:500;color:#ffffff8c}.stop-name.name-passed.svelte-x09yfy{color:#ffffff40}.stop-time.svelte-x09yfy{font-size:.68rem;color:#ffffff59;font-variant-numeric:tabular-nums;flex-shrink:0;min-width:34px;text-align:right}.stop-time.time-passed.svelte-x09yfy{color:#ffffff26}.stop-time.time-current.svelte-x09yfy{color:#ffffffb3;font-weight:600}.stop-time.time-alight.svelte-x09yfy{color:#ffffff59;font-weight:500}.trip-stop-btn.svelte-x09yfy{margin-top:8px;width:36px;height:36px;border-radius:10px;background:#ef44441a;border:1px solid rgba(239,68,68,.12);color:#ef4444;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:transform .12s ease,background .12s ease}.trip-stop-btn.svelte-x09yfy:active{transform:scale(.88);background:#ef444433}.trip-stop-btn.svelte-x09yfy svg:where(.svelte-x09yfy){width:15px;height:15px}.trip-error.svelte-x09yfy{font-size:.7rem;color:#ef4444;padding:0 16px 8px}.bottom-bar.svelte-hqni5r{position:fixed;bottom:0;left:0;right:0;z-index:1000;background:var(--glass-bg);backdrop-filter:blur(24px) saturate(1.4);-webkit-backdrop-filter:blur(24px) saturate(1.4);border-top:1px solid var(--border-subtle)}.bottom-bar.keyboard-up.svelte-hqni5r{display:none}.bottom-nav-tabs.svelte-hqni5r{display:flex;align-items:stretch;justify-content:space-around;height:calc(68px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px)}.bottom-nav-item.svelte-hqni5r{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;flex:1;padding:6px 0;color:var(--text-tertiary);text-decoration:none;transition:color .15s ease;position:relative}.bottom-nav-item.active.svelte-hqni5r{color:var(--accent-400)}.bottom-nav-item.active.svelte-hqni5r:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:24px;height:2px;background:var(--accent-400);border-radius:0 0 2px 2px}.has-trip.svelte-hqni5r .bottom-nav-item.active:where(.svelte-hqni5r):before{display:none}.bottom-nav-icon.svelte-hqni5r{width:22px;height:22px;stroke-width:1.75}.bottom-nav-item.has-trip-dot.svelte-hqni5r:after{content:"";position:absolute;top:8px;right:calc(50% - 18px);width:6px;height:6px;background:var(--color-success);border-radius:50%;animation:svelte-hqni5r-pulse-dot 2s ease-in-out infinite}@keyframes svelte-hqni5r-pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.bottom-nav-label.svelte-hqni5r{font-size:.625rem;font-weight:500;letter-spacing:.01em;line-height:1;white-space:nowrap;text-align:center}:root,[data-theme=dark]{--bg-primary: #09090b;--bg-secondary: #18181b;--bg-elevated: #27272a;--bg-hover: #3f3f46;--accent-50: #dbeafe;--accent-100: #bfdbfe;--accent-200: #93c5fd;--accent-300: #60a5fa;--accent-400: #3b82f6;--accent-500: #2563eb;--accent-600: #1d4ed8;--accent-700: #1e40af;--text-primary: #fafafa;--text-secondary: #a1a1aa;--text-tertiary: #71717a;--text-muted: #52525b;--border-subtle: rgba(255, 255, 255, .06);--border-default: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .15);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .5);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .5);--shadow-glow: none;--color-error: #f87171;--color-error-muted: #fca5a5;--color-success: #22c55e;--glass-bg: rgba(9, 9, 11, .7);--glass-bg-strong: rgba(9, 9, 11, .8);--input-bg: #0e0e11;--map-tile-filter: brightness(1.7) saturate(.85);--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--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;--search-results-width: 760px;--leg-time-column-width: 50px;--leg-row-gap: 6px;--timeline-segment-width: 22px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-2xl: 28px;--radius-full: 9999px;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-emphasized: cubic-bezier(.2, .8, .2, 1);--ease-spring: cubic-bezier(.22, 1.2, .32, 1);--ease-in-smooth: cubic-bezier(.4, 0, .2, 1);--duration-fast: .15s;--duration-normal: .25s;--duration-slow: .4s;--duration-page-enter: .22s;--duration-route-open: .58s;--duration-route-close: .3s;--native-status-bar-height: 0px}[data-theme=oled]{--bg-primary: #020617;--bg-secondary: #0f172a;--bg-elevated: #1e293b;--bg-hover: #334155;--accent-50: #dbeafe;--accent-100: #bfdbfe;--accent-200: #93c5fd;--accent-300: #60a5fa;--accent-400: #3b82f6;--accent-500: #2563eb;--accent-600: #1d4ed8;--accent-700: #1e40af;--text-primary: #f8fafc;--text-secondary: #94a3b8;--text-tertiary: #64748b;--text-muted: #475569;--border-subtle: rgba(255, 255, 255, .08);--border-default: rgba(255, 255, 255, .12);--border-strong: rgba(255, 255, 255, .2);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .5);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .5);--shadow-glow: none;--color-error: #f87171;--color-error-muted: #fca5a5;--color-success: #22c55e;--glass-bg: rgba(2, 6, 23, .7);--glass-bg-strong: rgba(2, 6, 23, .85);--input-bg: #0f172a;--map-tile-filter: brightness(1.7) saturate(.85)}[data-theme=light]{--bg-primary: #f0f4f8;--bg-secondary: #ffffff;--bg-elevated: #ffffff;--bg-hover: #e2e8f0;--accent-50: #eff6ff;--accent-100: #dbeafe;--accent-200: #bfdbfe;--accent-300: #93c5fd;--accent-400: #60a5fa;--accent-500: #3b82f6;--accent-600: #2563eb;--accent-700: #1d4ed8;--text-primary: #000000;--text-secondary: #3f3f46;--text-tertiary: #52525b;--text-muted: #8e8e93;--border-subtle: rgba(0, 0, 0, .04);--border-default: rgba(0, 0, 0, .08);--border-strong: rgba(0, 0, 0, .15);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 12px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 24px rgba(0, 0, 0, .08);--shadow-glow: none;--color-error: #ff3b30;--color-error-muted: #ff6961;--color-success: #34c759;--glass-bg: rgba(255, 255, 255, .75);--glass-bg-strong: rgba(255, 255, 255, .9);--input-bg: #f2f2f7;--map-tile-filter: brightness(.97) contrast(1.02)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}button,button *,a,a *,[role=button],[role=button] *{touch-action:pan-x pan-y}button svg,[role=button] svg{pointer-events:none}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scrollbar-gutter:stable}html,body{height:100%;background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-family);line-height:1.5;letter-spacing:-.01em;-webkit-text-size-adjust:100%;overscroll-behavior:none}html.native-app,html.native-app body{overflow-x:clip;touch-action:pan-x pan-y}html.native-app,html.native-app body{min-height:100vh}.has-bottom-nav .flexParent{overflow-x:clip}.flexParent{display:flex;flex-direction:column;min-height:100vh;background:var(--bg-primary)}[data-theme=dark] .mainContent{background:radial-gradient(ellipse 900px 700px at 50% 0,rgba(37,99,235,.15) 0%,transparent 70%) no-repeat top center / 100% 700px,var(--bg-primary)}html.native-app .flexParent{min-height:100vh}.mainContent{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8);min-height:100vh;position:relative;overflow-x:clip}html.native-app .mainContent{min-height:0}@media(max-width:1023.98px){.mainContent{padding-top:max(var(--space-12),calc(env(safe-area-inset-top) + var(--space-8)));padding-right:max(var(--space-3),env(safe-area-inset-right));padding-bottom:max(var(--space-8),env(safe-area-inset-bottom));padding-left:max(var(--space-3),env(safe-area-inset-left));min-height:100svh;overflow-x:clip}html.native-app:not(.native-android) .mainContent{padding-right:max(var(--space-5),env(safe-area-inset-right));padding-left:max(var(--space-5),env(safe-area-inset-left))}}.has-bottom-nav:before{content:"";position:fixed;top:0;left:0;right:0;height:calc(max(env(safe-area-inset-top,0px),var(--native-status-bar-height)) + 16px);background:linear-gradient(to bottom,var(--glass-bg) 30%,transparent);z-index:9999;pointer-events:none}.has-bottom-nav .mainContent{padding-top:max(var(--space-5),calc(max(env(safe-area-inset-top,0px),var(--native-status-bar-height)) + var(--space-3)));padding-bottom:calc(68px + env(safe-area-inset-bottom,0px) + var(--space-2))}.keyboard-spacer{height:var(--keyboard-height, 0px);transition:height .28s ease-out;flex-shrink:0}.has-bottom-nav .search-page{width:100%}.search-page:not(.has-results){margin-top:auto;margin-bottom:auto}@media(max-width:1023.98px){.mainContent:has(.search-page.has-active-search-state){justify-content:flex-start}.search-page{transition:margin-top var(--duration-normal) var(--ease-out-expo),margin-bottom var(--duration-normal) var(--ease-out-expo)}.search-page.has-active-search-state{margin-top:0;margin-bottom:0}}.has-bottom-nav .search-subtitle{margin-bottom:var(--space-2)}.has-bottom-nav .search-title{margin-bottom:var(--space-1)}.has-bottom-nav,.has-bottom-nav *{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.has-bottom-nav input,.has-bottom-nav textarea{-webkit-touch-callout:default;-webkit-user-select:text;user-select:text}html.native-app,html.native-app body,html.native-app *{scrollbar-width:none!important;-ms-overflow-style:none!important}html.native-app::-webkit-scrollbar,html.native-app *::-webkit-scrollbar{display:none!important;width:0!important;height:0!important;background:transparent!important}@media(max-width:539.98px){.search-container,.journey-result,.route-list-container{width:100%;min-width:0;box-sizing:border-box}.journey-card{width:100%}}.search-page{width:100%;min-width:0}.search-page.has-results .search-container{margin-top:var(--space-8)}@media(max-width:539.98px){.search-page.has-results .search-container{margin-top:var(--space-6)}}.app-page{width:100%;min-width:0}.search-container{text-align:center;max-width:1200px;width:100%;margin-inline:auto;position:relative;z-index:1;animation:fadeIn var(--duration-page-enter) var(--ease-emphasized);contain:layout style;transition:margin-top var(--duration-normal) var(--ease-out-expo)}@keyframes fadeIn{0%{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.letter-o{position:relative;display:inline-block;color:transparent}.status-indicator{position:absolute;top:56.5%;left:52.5%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;width:100%;height:100%;pointer-events:none}.status-dot{position:absolute;width:.55em;height:.55em;background:linear-gradient(135deg,var(--accent-300),var(--accent-500));border-radius:50%;box-shadow:none;z-index:2}.status-ring{position:absolute;width:.55em;height:.55em;border:2px solid var(--accent-400);border-radius:50%;animation:ping 2.5s cubic-bezier(0,0,.2,1) infinite;z-index:1}@keyframes ping{0%{transform:scale(1);opacity:1}75%,to{transform:scale(3);opacity:0}}.search-title{font-size:clamp(2.5rem,6vw,3.5rem);font-weight:600;line-height:1.2;letter-spacing:-.03em;margin-bottom:var(--space-4);padding-bottom:.1em;background:linear-gradient(180deg,var(--text-primary) 0%,var(--text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.search-title-accent{display:inline-block;white-space:nowrap}.search-subtitle{font-size:1.125rem;color:var(--text-tertiary);margin-bottom:var(--space-10);font-weight:400}@media(max-width:539.98px){.search-subtitle{font-size:.9375rem;margin-bottom:var(--space-6)}}.search-form{display:flex;flex-direction:column;gap:var(--space-4)}@media(min-width:540px){.search-form{flex-direction:row;flex-wrap:wrap;align-items:center;width:min(100%,var(--search-results-width));margin-inline:auto;background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-2xl);padding:var(--space-2);box-shadow:var(--shadow-lg);transition:border-color var(--duration-normal) var(--ease-out-expo),box-shadow var(--duration-normal) var(--ease-out-expo)}.search-form:focus-within{box-shadow:var(--shadow-lg)}}.search-input-wrapper{flex:1;min-width:0;position:relative;display:flex;align-items:center}.search-input-actions{position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:var(--space-3)}@media(min-width:540px){.search-input-actions{right:var(--space-1)}}.search-clear-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;border-radius:0;background:transparent;color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:color var(--duration-normal) var(--ease-out-expo)}.search-clear-button svg{width:1.125rem;height:1.125rem}@media(hover:hover){.search-clear-button:hover{color:var(--text-primary)}}.search-clear-button:active{color:var(--text-primary)}.search-input{flex:1;padding:var(--space-4) var(--space-6);border:none;border-radius:var(--radius-xl);background:transparent;color:var(--text-primary);font-size:1rem;font-family:var(--font-family);font-weight:500;outline:none;resize:none;white-space:pre-wrap;overflow-wrap:break-word;word-break:break-word;line-height:1.5;field-sizing:content;min-height:1lh;max-height:5lh;overflow-y:auto}.search-input:placeholder-shown{white-space:nowrap}.search-input::placeholder{color:var(--text-muted);font-weight:400;white-space:nowrap}@media(max-width:539.98px){.search-input{width:100%;background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:var(--space-4) var(--space-5);font-size:1rem}.search-input.has-clear{padding-right:calc(var(--space-5) + 2.25rem)}.search-input.has-clear-double{padding-right:calc(var(--space-5) + 4.25rem)}.search-input:focus{border-color:var(--border-strong)}.search-input-wrapper:has(.search-input:focus){border-color:var(--border-strong)}}@media(min-width:540px){.search-input.has-clear{padding-right:calc(var(--space-6) + 2.25rem)}.search-input.has-clear-double{padding-right:calc(var(--space-6) + 4.25rem)}}@media(min-width:540px)and (max-width:767px){.search-input{min-width:320px}}@media(min-width:1024px){.search-input{min-width:500px}}.search-button{padding:var(--space-4) var(--space-8);border:none;border-radius:var(--radius-xl);background:linear-gradient(135deg,var(--accent-500),var(--accent-600));color:#fff;font-size:.9375rem;font-weight:600;font-family:var(--font-family);cursor:pointer;transition:all var(--duration-normal) var(--ease-out-expo);box-shadow:none;display:flex;align-items:center;justify-content:center;gap:var(--space-2)}@media(min-width:540px){.search-button{margin-right:2.75px}}@media(hover:hover){.search-button:hover{filter:brightness(1.15)}}.search-button:active{filter:brightness(.9)}.search-button svg{width:18px;height:18px}.search-button .search-spinner{animation:spin .8s linear infinite}.top-logo-btn{position:fixed;top:max(var(--space-4),env(safe-area-inset-top));left:max(var(--space-4),env(safe-area-inset-left));z-index:1000;display:flex;align-items:center;text-decoration:none;cursor:pointer;transition:opacity var(--duration-normal) var(--ease-out-expo),transform var(--duration-normal) var(--ease-out-expo)}.top-logo-btn:active{opacity:.7}.top-logo-text{font-size:1.5rem;font-weight:700;letter-spacing:-.01em;background:linear-gradient(180deg,var(--text-primary) 0%,var(--text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.profile-icon-btn{position:fixed;top:max(var(--space-4),env(safe-area-inset-top));right:max(var(--space-4),env(safe-area-inset-right));z-index:1000;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;border:1px solid var(--border-default);box-sizing:border-box;background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--text-secondary);text-decoration:none;cursor:pointer;transition:background var(--duration-normal) var(--ease-out-expo),border-color var(--duration-normal) var(--ease-out-expo),transform var(--duration-normal) var(--ease-out-expo)}.profile-icon-btn svg{width:22px;height:22px}.profile-icon-btn:active{background:var(--bg-elevated);border-color:var(--border-strong)}@media(hover:hover){.profile-icon-btn:hover{background:var(--bg-elevated);border-color:var(--border-strong)}}.profile-icon-avatar{font-size:1rem;font-weight:700;color:#fff;background:var(--accent-500);width:100%;height:100%;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1}.search-tabs-spacer{margin-top:var(--space-8);width:min(100%,var(--search-results-width));margin-inline:auto}@media(max-width:539.98px){.search-tabs-spacer{margin-top:var(--space-4)}}.search-tabs-card{width:100%;background:var(--bg-secondary);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--border-default);border-radius:var(--radius-2xl);box-shadow:0 16px 40px #00000040,inset 0 1px #ffffff0d;overflow:hidden;animation:fadeIn .35s var(--ease-emphasized) both}[data-theme=light] .search-tabs-card{background:var(--bg-secondary);border:1px solid var(--border-default)}@media(max-width:539.98px){.search-tabs-card{border-radius:var(--radius-xl)}}.search-tabs-header{display:flex;border-bottom:1px solid var(--border-default);padding:var(--space-2);gap:var(--space-2);background:transparent;position:relative;z-index:1}[data-theme=light] .search-tabs-header{border-bottom-color:var(--border-subtle)}.search-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:none;border-radius:var(--radius-xl);background:transparent;color:var(--text-tertiary);font-size:.875rem;font-weight:600;font-family:var(--font-family);cursor:pointer;transition:all var(--duration-normal) var(--ease-out-expo);position:relative;white-space:nowrap;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.search-tab svg{width:16px;height:16px;flex-shrink:0;transition:color var(--duration-normal) var(--ease-out-expo)}@media(hover:hover){.search-tab:hover{color:var(--text-primary);background:#ffffff08}[data-theme=light] .search-tab:hover{background:#00000008}}.search-tab:active{transform:scale(.97)}.search-tab.active{color:var(--text-primary);background:var(--bg-elevated);box-shadow:0 4px 12px #0000001a,inset 0 1px #ffffff0d}[data-theme=light] .search-tab.active{background:#fff;box-shadow:0 4px 16px #00000014}.search-tab.active svg{color:var(--accent-500)}.search-tabs-content{padding:var(--space-2);overscroll-behavior:contain;transition:height var(--duration-normal) var(--ease-out-expo);contain:content;will-change:height}@media(max-width:539.98px){.search-tab{padding:var(--space-3) var(--space-2);font-size:.875rem;gap:var(--space-1)}.search-tab svg{width:14px;height:14px}}.tab-panel{visibility:hidden;height:0;overflow:hidden}.tab-panel-active{visibility:visible;height:auto;overflow:visible}.tab-route-list{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-1) 0}.tab-route-item{display:flex;align-items:center;gap:var(--space-3);padding:12px var(--space-4);margin:0 var(--space-2);border:1px solid transparent;border-radius:var(--radius-xl);background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:all var(--duration-normal) var(--ease-out-expo)}.tab-panel-active .tab-route-item{animation:tabItemIn .4s var(--ease-spring) both}@keyframes tabItemIn{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(hover:hover){.tab-route-item:hover{background:var(--bg-elevated);border-color:var(--border-subtle);transform:translate(4px);box-shadow:0 4px 12px #0000000a}[data-theme=light] .tab-route-item:hover{background:#fff;box-shadow:0 4px 12px #0000000d}}.tab-route-item:active{background:var(--bg-hover);transform:translate(2px) scale(.99)}.tab-route-from,.tab-route-to{font-size:.9375rem;font-weight:500;line-height:18px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.tab-route-from{flex:1;text-align:left}.tab-route-to{flex:1;text-align:left;font-weight:600}.tab-route-separator{width:18px;height:18px;color:var(--accent-400);flex-shrink:0;opacity:.8}.tab-route-chevron{width:18px;height:18px;color:var(--text-muted);flex-shrink:0;transition:transform var(--duration-normal) var(--ease-out-expo),color var(--duration-normal) var(--ease-out-expo)}@media(hover:hover){.tab-route-item:hover .tab-route-chevron{transform:translate(4px);color:var(--accent-500)}}.tab-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-6);text-align:center}.tab-empty svg{width:32px;height:32px;color:var(--text-muted);opacity:.5}.tab-empty p{font-size:.875rem;line-height:21px;color:var(--text-tertiary);margin:0}@media(max-width:539.98px){.search-tabs-content{padding:var(--space-1)}.tab-route-item{flex-direction:column;align-items:flex-start;gap:2px;padding:8px var(--space-3);margin:0}.tab-route-from,.tab-route-to{font-size:.875rem;line-height:18px;flex:none;width:100%}.tab-route-from{color:var(--text-secondary);font-weight:400}.tab-route-to{font-weight:600}.tab-route-separator,.tab-route-chevron{display:none}.tab-empty{padding:var(--space-5)}.tab-empty svg{width:24px;height:24px}.tab-empty p{font-size:.8125rem;line-height:18px}.tab-route-item{transition:none}}.popular-searches{position:absolute;left:0;right:0;padding-top:var(--space-6);overflow:hidden;animation:fadeIn .4s cubic-bezier(.22,1,.36,1) both}.popular-searches-heading{display:none}.popular-searches-list{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--space-2);max-width:900px;margin-inline:auto}.popular-search-card{display:inline-flex;align-items:center;gap:var(--space-1);border:1px solid var(--border-default);background:var(--surface-elevated);color:var(--text-tertiary);font-size:.8125rem;font-weight:500;font-family:var(--font-family);cursor:pointer;padding:var(--space-1) var(--space-3);border-radius:999px;transition:color var(--duration-normal) var(--ease-out-expo),background var(--duration-normal) var(--ease-out-expo),border-color var(--duration-normal) var(--ease-out-expo);animation:fadeIn .35s cubic-bezier(.22,1,.36,1) both}@media(hover:hover){.popular-search-card:hover{color:var(--text-primary);background:var(--bg-hover);box-shadow:var(--shadow-md)}}.popular-search-card:active{color:var(--text-primary);background:var(--bg-hover);box-shadow:var(--shadow-md)}.popular-search-card:focus-visible{outline:none;box-shadow:var(--shadow-md);outline-offset:2px;border-radius:999px}.popular-search-card svg{width:.75rem;height:.75rem;flex-shrink:0;opacity:.5}.popular-search-stop{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}@media(max-width:539.98px){.popular-searches{position:static;padding-top:var(--space-8)}.popular-searches-heading{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:0 0 var(--space-3) 0}.popular-searches-list{flex-direction:column;gap:var(--space-3)}.popular-search-card{width:100%;justify-content:center;font-size:.9375rem;font-weight:500;padding:var(--space-4) var(--space-5);border-radius:var(--radius-xl);background:var(--bg-secondary);border:1px solid var(--border-default);box-shadow:var(--shadow-md);color:var(--text-secondary);max-width:100%;overflow:hidden}.popular-search-card:active{background:var(--bg-elevated);border-color:var(--border-strong)}.popular-search-card svg{width:.875rem;height:.875rem;opacity:.4}}.autocomplete-suggestions{position:absolute;top:100%;left:0;right:0;z-index:50;margin-top:var(--space-2);background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);list-style:none;overflow:hidden;animation:suggestionsIn .2s var(--ease-out-expo) both}@keyframes suggestionsIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.autocomplete-suggestion{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);cursor:pointer;transition:background var(--duration-fast) var(--ease-out-expo)}.autocomplete-suggestion+.autocomplete-suggestion{border-top:1px solid var(--border-subtle)}.autocomplete-suggestion.highlighted,.autocomplete-suggestion:active{background:var(--bg-hover)}@media(hover:hover){.autocomplete-suggestion:hover{background:var(--bg-elevated)}}.autocomplete-suggestion-name{font-size:.875rem;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autocomplete-suggestion-meta{font-size:.75rem;color:var(--text-tertiary);white-space:nowrap;flex-shrink:0}@media(max-width:539.98px){.autocomplete-suggestions{border-radius:var(--radius-md);margin-top:var(--space-1)}.autocomplete-suggestion{padding:var(--space-3) var(--space-4)}}@media(min-width:540px){.autocomplete-suggestions{border-radius:var(--radius-lg);max-width:var(--search-results-width)}}.journey-result{margin-top:var(--space-8);width:100%;animation:fadeIn var(--duration-page-enter) var(--ease-emphasized)}@media(max-width:539.98px){.journey-result{width:100%}}@media(min-width:540px){.journey-result{width:min(100%,var(--search-results-width));min-width:0;margin-inline:auto}}.journey-card{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-2xl);padding:var(--space-6)}@media(max-width:539.98px){.journey-card{padding:var(--space-4) var(--space-5);border-radius:var(--radius-xl)}}.journey-card-compact{cursor:pointer;transition:transform var(--duration-normal) var(--ease-emphasized),box-shadow var(--duration-normal) var(--ease-emphasized),border-color var(--duration-normal) var(--ease-emphasized);width:100%;text-align:left;transform-origin:center;will-change:transform,box-shadow}button.journey-card{font:inherit;color:inherit}@media(hover:hover){.journey-card-compact:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px) scale(1.004)}}.journey-card-compact:active{box-shadow:var(--shadow-lg);transform:translateY(-2px) scale(1.004)}.journey-card-compact .journey-header{border-bottom:none;margin-bottom:0;padding-bottom:0}.journey-card-compact .journey-times .journey-time{font-size:1.125rem}.journey-time-delayed{color:var(--color-error)}.journey-card-compact .journey-times .journey-arrow{width:16px;height:16px;margin:0 var(--space-2)}.journey-card-compact .journey-stops .journey-from,.journey-card-compact .journey-stops .journey-to{font-size:.8125rem}.journey-card-compact .journey-stops{margin-bottom:var(--space-2)}.journey-card-compact .meta-item{font-size:.8125rem}.journey-card-compact .meta-item svg{width:14px;height:14px}.error-card{background:var(--bg-secondary);border:1px solid rgba(220,38,38,.4);border-radius:var(--radius-2xl);padding:var(--space-8);box-shadow:var(--shadow-lg),0 0 30px #dc262626;text-align:center}@media(max-width:539px){.error-card{padding:var(--space-6);border-radius:var(--radius-xl)}}.error-message{font-size:1rem;color:var(--text-secondary);line-height:1.6}.journey-header{padding-bottom:var(--space-5);padding-right:var(--space-10);border-bottom:1px solid var(--border-subtle);margin-bottom:var(--space-5);position:relative}@media(max-width:539px){.journey-header{padding-right:var(--space-8);padding-bottom:var(--space-3);margin-bottom:var(--space-3)}.favorite-button svg{width:24px;height:24px}}.journey-from,.journey-to{font-size:1.125rem;font-weight:600;color:var(--text-primary)}.journey-time{font-family:var(--font-mono);font-size:1rem;font-weight:600;color:var(--text-primary);letter-spacing:0}.journey-arrow{width:20px;height:20px;color:var(--text-primary);flex-shrink:0;margin:0 var(--space-2);align-self:center;position:relative;top:1px}.journey-times{display:flex;align-items:center;gap:var(--space-1);margin-bottom:var(--space-2)}.journey-times .journey-time{font-size:1.25rem;font-weight:700}.journey-times .journey-arrow{width:18px;height:18px;margin:0 var(--space-2);top:0}.journey-stops{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.journey-stops .journey-from,.journey-stops .journey-to{font-size:.9375rem;font-weight:500;color:var(--text-secondary)}.journey-track{color:var(--text-tertiary);font-weight:400;font-size:.85em;white-space:nowrap}.journey-stops .journey-from:after{content:"→";margin-left:var(--space-2);color:var(--text-muted);font-weight:400;font-size:1.35em;line-height:1}@media(max-width:539px){.journey-times .journey-time{font-size:1.25rem}.journey-times .journey-arrow{width:18px;height:18px;margin:0 var(--space-2)}.journey-stops .journey-from,.journey-stops .journey-to{font-size:.875rem}}.favorite-button{position:absolute;top:0;right:0;background:none;border:none;cursor:pointer;padding:0;color:var(--text-tertiary);transition:all var(--duration-normal) var(--ease-out-expo);display:flex;align-items:center;justify-content:center;width:32px;height:32px;overflow:visible;transform-origin:center}@media(hover:hover){.favorite-button:hover{color:var(--text-secondary)}}.favorite-button:active{color:var(--text-secondary)}.favorite-button.is-favorite{color:var(--accent-400)}@media(hover:hover){.favorite-button.is-favorite:hover{color:var(--accent-300)}}.favorite-button.is-favorite:active{color:var(--accent-300)}.favorite-button svg{width:28px;height:28px;display:block;position:relative;transition:transform var(--duration-normal) var(--ease-spring)}@keyframes favoriteTapPop{0%{transform:scale(1)}35%{transform:scale(.84)}75%{transform:scale(1.1)}to{transform:scale(1)}}.favorite-button.is-tapping svg{animation:favoriteTapPop .26s var(--ease-out-expo) both}.journey-header-clickable{cursor:pointer;transition:background-color .6s var(--ease-out-expo);margin:calc(-1 * var(--space-6));margin-bottom:var(--space-5);padding:var(--space-6);padding-bottom:var(--space-5);border-radius:var(--radius-xl);border-bottom:none;position:relative}.journey-header-clickable .journey-route,.journey-header-clickable .journey-times,.journey-header-clickable .journey-stops,.journey-header-clickable .journey-meta{padding-right:40px}@media(max-width:539px){.journey-header-clickable{margin:calc(-1 * var(--space-4)) calc(-1 * var(--space-5));margin-bottom:var(--space-4);padding:var(--space-4) var(--space-5);padding-bottom:var(--space-4)}.journey-header-clickable .journey-route,.journey-header-clickable .journey-times,.journey-header-clickable .journey-stops,.journey-header-clickable .journey-meta{padding-right:34px}.journey-header-clickable .favorite-button{top:var(--space-4);right:var(--space-4)}.journey-header-clickable:after{left:var(--space-4);right:var(--space-4)}}.journey-header-clickable:after{content:"";position:absolute;bottom:0;left:var(--space-6);right:var(--space-6);height:0;background:transparent;border-bottom:1px solid var(--border-subtle);border-radius:0;transition:left .6s var(--ease-out-expo),right .6s var(--ease-out-expo),height .6s var(--ease-out-expo),border-radius .6s var(--ease-out-expo)}@media(hover:hover){.journey-header-clickable:hover{background-color:var(--border-subtle)}.journey-header-clickable:hover:after{left:0;right:0;height:var(--radius-xl);border-radius:0 0 var(--radius-xl) var(--radius-xl)}}.journey-header-clickable:active{background-color:var(--border-subtle)}.journey-header-clickable:active:after{left:0;right:0;height:var(--radius-xl);border-radius:0 0 var(--radius-xl) var(--radius-xl)}.journey-header-clickable .favorite-button{top:0;right:0}.journey-action-buttons{position:absolute;top:var(--space-6);right:var(--space-6);display:flex;flex-direction:column;align-items:center;gap:var(--space-2);z-index:2}.journey-action-buttons .favorite-button{position:relative;top:0;right:0}.map-toggle-button{background:none;border:none;cursor:pointer;padding:0;color:var(--text-tertiary);transition:all var(--duration-normal) var(--ease-out-expo);display:flex;align-items:center;justify-content:center;width:32px;height:32px;overflow:visible;transform-origin:center;margin-top:var(--space-3)}@media(hover:hover){.map-toggle-button:hover{color:var(--text-secondary)}}.map-toggle-button:active{color:var(--text-secondary)}.map-toggle-button.is-active{color:var(--accent-400)}.map-toggle-button svg{width:24px;height:24px;display:block;transition:transform var(--duration-normal) var(--ease-spring)}.map-toggle-button:active svg{transform:scale(.88)}@media(max-width:539px){.journey-action-buttons{top:var(--space-4);right:var(--space-4)}.map-toggle-button svg{width:22px;height:22px}}.start-trip-container{padding:var(--space-3) 0 0}.start-trip-premium-button{width:100%;background:#3b82f61f;color:var(--accent-300);border:1px solid rgba(59,130,246,.18);border-radius:12px;padding:11px 16px;font-size:.88rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .12s ease}@media(hover:hover){.start-trip-premium-button:hover:not(:disabled){background:#3b82f62e;border-color:#3b82f647}}.start-trip-premium-button:active:not(:disabled){transform:scale(.97);background:#3b82f638}.start-trip-premium-button:disabled{opacity:.5;cursor:not-allowed}.start-trip-premium-button.trip-active-button{background:#16a34a1f;color:var(--color-success);border-color:#16a34a2e}@media(hover:hover){.start-trip-premium-button.trip-active-button:hover:not(:disabled){background:#dc26261f;color:var(--color-error);border-color:#dc26262e}}.start-trip-premium-button.trip-active-button:active:not(:disabled){background:#dc26262e;color:var(--color-error);border-color:#dc262640}.premium-icon{width:18px;height:18px;opacity:.8}.start-trip-spinner{animation:tripSpinnerRotate 1s linear infinite}@keyframes tripSpinnerRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.start-trip-error{margin:8px 0 0;padding:0;font-size:.78rem;color:var(--color-error);text-align:center;animation:tripErrorFadeIn .2s ease-out}@keyframes tripErrorFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.journey-map-section{overflow:hidden;border-radius:var(--radius-lg);margin:0 0 var(--space-3) 0}.journey-map-wrapper{position:relative;width:100%;height:240px;border-radius:var(--radius-lg);overflow:hidden;mask-image:radial-gradient(#fff,#000);-webkit-mask-image:-webkit-radial-gradient(white,black)}.journey-map{width:100%;height:100%;background:var(--bg-primary)}.journey-map .map-tiles-base{filter:var(--map-tile-filter)}.journey-map .leaflet-container{outline:none!important;border:none!important}.journey-map .leaflet-marker-icon,.journey-map .leaflet-marker-shadow{touch-action:pan-x pan-y}.journey-map .leaflet-control-attribution{display:none!important}.map-controls{position:absolute;bottom:var(--space-2);display:flex;flex-direction:column;gap:6px;z-index:1000}.map-controls-left{left:var(--space-2)}.map-controls-right{right:var(--space-2)}.map-ctrl-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--glass-bg-strong);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--text-secondary);cursor:pointer;transition:background var(--duration-fast),color var(--duration-fast),border-color var(--duration-fast);-webkit-tap-highlight-color:transparent;touch-action:pan-x pan-y}.map-ctrl-btn:focus{outline:none}@media(hover:hover){.map-ctrl-btn:hover{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border-strong)}}.map-ctrl-btn:active{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border-strong)}.map-ctrl-btn svg{width:16px;height:16px}.map-ctrl-locate.is-locating{color:var(--accent-400)}.map-ctrl-locate.is-following{color:var(--text-primary);border-color:#3b82f68c;background:#2563eb47}.map-ctrl-locate.is-locating svg{animation:locatePulse 1.2s ease-in-out infinite}@keyframes locatePulse{0%,to{opacity:1;transform:rotate(45deg) scale(1)}50%{opacity:.5;transform:rotate(45deg) scale(.85)}}.map-stop-dot{background:transparent!important;border:none!important}.map-endpoint{display:flex;align-items:center;gap:6px;white-space:nowrap}.map-endpoint-dot{width:12px;height:12px;background:#fff;border-radius:50%;box-shadow:0 0 8px #ffffff80,0 2px 6px #0006;flex-shrink:0}.map-endpoint-label{font-family:var(--font-family);font-size:.6875rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.06em;text-shadow:0 1px 4px rgba(0,0,0,.8);padding:2px 7px;background:#00000073;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border-radius:6px}.user-location-marker{position:relative;width:24px;height:24px}.user-location-dot{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:12px;height:12px;background:#3b82f6;border:2.5px solid #fff;border-radius:50%;box-shadow:none;z-index:2}.user-location-ring{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:24px;height:24px;background:#3b82f633;border-radius:50%;animation:userLocPulse 2s ease-out infinite;z-index:1}@keyframes userLocPulse{0%{transform:translate(-50%,-50%) scale(1);opacity:1}to{transform:translate(-50%,-50%) scale(2.2);opacity:0}}.vehicle-marker{position:relative;width:32px;height:32px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,.9);box-shadow:0 0 10px #0009,0 0 20px #0000004d;animation:vehicleAppear .3s ease-out}.vehicle-label{font-family:var(--font-family);font-size:.625rem;font-weight:800;color:#fff;line-height:1;text-shadow:0 1px 2px rgba(0,0,0,.5)}.vehicle-bearing{position:absolute;inset:0;pointer-events:none;transition:transform .3s ease-out}.vehicle-chevron{position:absolute;top:-12px;left:50%;transform:translate(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:8px solid rgba(255,255,255,.95);filter:drop-shadow(0 0 3px rgba(0,0,0,.7))}@keyframes vehicleAppear{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.journey-card-expanded{transition:all var(--duration-normal) var(--ease-out-expo)}.journey-meta{display:flex;gap:var(--space-5)}.journey-badges{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.meta-item{display:flex;align-items:center;gap:var(--space-2);color:var(--text-secondary);font-size:.875rem;font-weight:500}.meta-item svg{width:16px;height:16px;color:var(--accent-400)}.journey-legs{display:flex;flex-direction:column;gap:0;overflow:hidden;position:relative}.journey-leg{display:flex;flex-direction:column}.journey-leg-transport{position:relative;overflow:hidden;touch-action:pan-x pan-y}.journey-leg-walk{display:flex;align-items:center;margin-left:6px;margin-bottom:10px;margin-top:10px;padding:var(--space-1) 0 var(--space-2) 0}@media(min-width:540px){.journey-leg-walk{align-items:center;margin-left:0;margin-bottom:6px;margin-top:6px}}.leg-row{display:flex;align-items:center;gap:var(--leg-row-gap);padding:0}.leg-time-column{width:var(--leg-time-column-width);flex-shrink:0;display:flex;align-items:center;justify-content:flex-end;box-sizing:border-box;padding-left:2px}.leg-time-column-spacer{min-height:1px}.leg-time-column-duration{justify-content:center}@media(max-width:539px){:root{--leg-time-column-width: 48px;--leg-row-gap: 4px;--timeline-segment-width: 20px}}.leg-row-content{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0;padding:var(--space-1) 0}@media(max-width:539px){.leg-row-content{gap:var(--space-2)}}.leg-time{font-family:var(--font-mono);font-size:.875rem;font-weight:600;color:var(--text-primary);line-height:1;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right;letter-spacing:0}.leg-station{font-size:.9375rem;font-weight:500;color:var(--text-secondary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:539px){.leg-station{font-size:.875rem}.journey-from,.journey-to{font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journey-time{font-size:.875rem}.journey-meta{flex-wrap:wrap;gap:var(--space-2) var(--space-3)}}.leg-row-planned-time{margin-bottom:-12px}@media(max-width:539px){.leg-row-planned-time{margin-bottom:-6px}}.leg-row-planned-time .timeline-segment:before{content:"";position:absolute;top:-1px;bottom:-1px;left:50%;transform:translate(-50%);width:4px;background:var(--bg-secondary);z-index:1}.leg-time-planned{font-family:var(--font-mono);font-size:.875rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text-muted);text-decoration:line-through;text-decoration-color:var(--text-muted);opacity:.7;white-space:nowrap;letter-spacing:0}.leg-time-actual{font-family:var(--font-mono);font-size:.875rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--color-error);white-space:nowrap;letter-spacing:0}.leg-duration-row{padding:0}.stops-toggle-text{display:inline-flex;align-items:center;gap:4px;background:transparent;border:none;padding:0;font-size:.75rem;font-weight:500;color:var(--text-tertiary);cursor:pointer;transition:color .2s var(--ease-out-expo);margin:0;position:relative;top:-2px}@media(max-width:539px){.stops-toggle-text{top:0}}@media(hover:hover){.stops-toggle-text:hover{color:var(--text-primary)}}.stops-toggle-text:active{color:var(--text-primary)}.stops-toggle-icon{width:14px;height:14px;transition:transform .2s var(--ease-out-expo)}.stops-toggle-icon.is-expanded{transform:rotate(180deg)}.leg-duration-row .timeline-segment:before{content:"";position:absolute;top:-1px;bottom:-1px;left:50%;transform:translate(-50%);width:3px;background:color-mix(in srgb,var(--leg-color, var(--accent-500)) 85%,white);z-index:0}.leg-duration-content{justify-content:flex-start;padding:0}.transport-badge-compact{display:inline-flex;padding:4px;border-radius:var(--radius-lg)}.transport-badge{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:5px 9px;border-radius:var(--radius-md);font-size:.7rem;font-weight:700;color:#fff;white-space:nowrap;line-height:1}.transport-badge-icon{display:inline-flex;align-items:center;justify-content:center;width:1.4em;height:1.4em;flex-shrink:0}.transport-badge-icon svg{display:block;width:100%;height:100%}.transport-badge-text{display:inline-flex;align-items:center}.transport-badge .transport-towards{font-weight:400;color:#ffffffd9}.leg-cancelled{opacity:1}.leg-cancelled .leg-time,.leg-cancelled .leg-station{text-decoration:line-through;text-decoration-thickness:2px;text-decoration-color:#dc262699}.cancelled-label{font-size:.8125rem;font-weight:600;color:var(--color-error-muted);letter-spacing:.02em}.cancelled-message{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4);margin-top:var(--space-2);margin-bottom:var(--space-2);background:#dc26261a;border:1px solid rgba(220,38,38,.25);border-radius:var(--radius-md);font-size:.8125rem;color:var(--color-error-muted);line-height:1.5}.cancelled-message svg{width:16px;height:16px;flex-shrink:0;margin-top:2px;stroke:var(--color-error)}.journey-card-cancelled{border-color:#dc26264d}@media(hover:hover){.journey-card-cancelled:hover{border-color:#dc262680;box-shadow:var(--shadow-lg),0 0 30px #dc26261a}}.journey-card-cancelled:active{border-color:#dc262680;box-shadow:var(--shadow-lg),0 0 30px #dc26261a}.meta-cancelled{color:var(--color-error);font-weight:600}.meta-cancelled svg{stroke:var(--color-error)}.badge-cancelled .transport-badge{text-decoration:line-through}.timeline-segment{width:var(--timeline-segment-width);display:flex;justify-content:center;align-items:center;flex-shrink:0;position:relative;align-self:stretch}.timeline-dot-origin{width:12px;height:12px;border-radius:50%;position:relative;z-index:2;transform:translateZ(0);will-change:transform}.timeline-dot-destination{width:10px;height:10px;background:var(--bg-secondary);border:2.5px solid;border-radius:50%;position:relative;z-index:2;transform:translateZ(0);will-change:transform}.timeline-dot-intermediate{width:6px;height:6px;border-radius:50%;background:var(--bg-secondary);border:1.5px solid;position:relative;z-index:2;transform:translateZ(0);will-change:transform}.leg-origin .timeline-segment:after{content:"";position:absolute;top:50%;bottom:-9999px;left:50%;transform:translate(-50%);width:3px;background:color-mix(in srgb,var(--leg-color, var(--accent-500)) 85%,white);z-index:0}.leg-origin .timeline-segment:before{content:"";position:absolute;top:-1px;bottom:50%;left:50%;transform:translate(-50%);width:4px;background:var(--bg-secondary);z-index:1}.leg-destination .timeline-segment:before{content:"";position:absolute;top:-9999px;bottom:50%;left:50%;transform:translate(-50%);width:3px;background:color-mix(in srgb,var(--leg-color, var(--accent-500)) 85%,white);z-index:0}.leg-destination .timeline-segment:after{content:"";position:absolute;top:50%;bottom:-1px;left:50%;transform:translate(-50%);width:4px;background:var(--bg-secondary);z-index:1}.intermediate-stop-row .timeline-segment:before{content:"";position:absolute;top:-1px;bottom:-1px;left:50%;transform:translate(-50%);width:3px;background:color-mix(in srgb,var(--leg-color, var(--accent-500)) 85%,white);z-index:0}.leg-cancelled-info .timeline-segment:before{content:"";position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%);width:3px;background:color-mix(in srgb,var(--leg-color, var(--accent-500)) 85%,white);z-index:0}.journey-legs>.journey-leg-walk:first-child .timeline-segment:before,.journey-legs>.journey-leg-walk:last-child .timeline-segment:before{display:none}.journey-leg-walk .timeline-segment{align-self:stretch}.journey-leg-walk .timeline-segment:before{content:"";position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%);width:2.5px;background:var(--leg-color, var(--text-muted))}.journey-leg-walk .timeline-segment:after{display:none}.transport-chip{display:inline-flex;align-items:center;padding:4px 12px;border-radius:999px;border:5px solid color-mix(in srgb,var(--leg-color) 25%,transparent);background-clip:padding-box}.chip-label{font-size:.8125rem;font-weight:700;color:#fff;white-space:nowrap}.transport-towards{font-size:.8125rem;font-weight:400;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex-shrink:1}.towards-arrow{color:var(--text-muted);margin-right:2px}.transport-leg-duration{position:relative;top:-2px;padding:5px;left:3px;font-size:.75rem;font-weight:500;color:var(--text-tertiary);line-height:1;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:center}@media(max-width:539px){.transport-leg-duration{top:0}}.leg-inline-transport{display:inline-flex;align-items:center;gap:var(--space-2);flex-shrink:0;min-width:0;margin-left:auto}.leg-badge-row-mobile{display:none;align-items:center;gap:var(--space-2);padding:0 0 var(--space-1) 0;position:relative;z-index:2}.cancelled-chip{font-size:.75rem;font-weight:600;color:var(--color-error-muted);padding:2px 8px;background:#dc262626;border-radius:999px}.leg-cancelled-info{padding:0}.leg-cancelled-info .timeline-segment{align-self:stretch}.walk-content{display:flex;align-items:center;gap:var(--space-2);padding:0;flex:1;min-width:0}.walk-icon{width:16px;height:16px;color:var(--text-muted);flex-shrink:0}.walk-label{font-size:.8125rem;font-weight:500;color:var(--text-tertiary)}.leg-station-origin{font-weight:600;color:var(--text-primary)}.leg-station-destination{font-weight:400;color:var(--text-primary)}.intermediate-stops-list{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s ease;overflow:hidden;padding:0}.intermediate-stops-list.is-expanded{grid-template-rows:1fr}.intermediate-stops-inner{min-height:0;display:flex;flex-direction:column;overflow:hidden;gap:0}.intermediate-stop-row{padding:0}.intermediate-stop-row .leg-time-intermediate{font-size:.75rem;color:var(--text-tertiary);font-weight:500}.intermediate-stop-row .leg-station-intermediate{font-size:.8125rem;color:var(--text-tertiary);font-weight:400}@media(max-width:539px){.timeline-dot-origin{width:10px;height:10px}.timeline-dot-destination{width:8px;height:8px}.transport-chip{padding:3px 10px}.chip-label{font-size:.75rem}.transport-towards{font-size:.75rem;max-width:120px}.walk-label{font-size:.75rem}.leg-inline-transport{display:none}.leg-badge-row-mobile{display:flex;width:100%}}.journey-card-skeleton{cursor:default;pointer-events:none}@media(hover:hover){.journey-card-skeleton:hover{border-color:var(--border-default);box-shadow:var(--shadow-lg);transform:none}}.journey-card-skeleton:active{border-color:var(--border-default);box-shadow:var(--shadow-lg);transform:none}.journey-card-skeleton:before,.journey-card-skeleton:after{display:none}.journey-card-skeleton .timeline-segment:not(.timeline-segment-skeleton):before,.journey-card-skeleton .timeline-segment:not(.timeline-segment-skeleton):after{display:none!important}.journey-card-skeleton .timeline-dot-origin,.journey-card-skeleton .timeline-dot-destination{display:none}.journey-card-skeleton .timeline-segment-skeleton:before,.journey-card-skeleton .timeline-segment-skeleton:after{content:"";position:absolute;left:50%;transform:translate(-50%);width:2.5px;background:var(--bg-hover);z-index:0}.journey-card-skeleton .timeline-segment-skeleton-origin:before{display:none}.journey-card-skeleton .timeline-segment-skeleton-origin:after{top:50%;bottom:-1px}.journey-card-skeleton .timeline-segment-skeleton-middle:before{top:-1px;bottom:-1px}.journey-card-skeleton .timeline-segment-skeleton-middle:after{display:none}.journey-card-skeleton .timeline-segment-skeleton-destination:before{top:-1px;bottom:50%}.journey-card-skeleton .timeline-segment-skeleton-destination:after{display:none}.journey-card-skeleton .timeline-skeleton-dot{width:10px;height:10px;border-radius:50%;background:var(--bg-hover);border:2px solid var(--bg-hover);position:relative;z-index:1}.journey-card-skeleton .timeline-skeleton-dot-hollow{background:var(--bg-secondary)}.login-container{width:100%;max-width:420px;margin-inline:auto;position:relative;z-index:1;animation:fadeIn var(--duration-page-enter) var(--ease-emphasized)}.login-card{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-2xl);padding:var(--space-10);box-shadow:var(--shadow-lg)}@media(max-width:539px){.login-card{padding:var(--space-6);border-radius:var(--radius-xl)}}.login-header{text-align:center;margin-bottom:var(--space-8)}.login-icon{width:56px;height:56px;background:linear-gradient(135deg,var(--accent-500),var(--accent-700));border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-5);box-shadow:var(--shadow-md)}.login-icon svg{width:28px;height:28px;color:#fff}.login-title{font-size:1.25rem;font-weight:700;letter-spacing:-.02em;margin-bottom:var(--space-1)}.login-subtitle{font-size:.9375rem;color:var(--text-tertiary)}.account-container{width:min(100%,var(--search-results-width));margin:0 auto;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-12) 0 var(--space-8);animation:fadeIn var(--duration-page-enter) var(--ease-emphasized)}.account-header-row{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.account-back-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-full);border:1px solid var(--border-default);background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--text-primary);cursor:pointer;flex-shrink:0;transition:background var(--duration-normal) var(--ease-out-expo),border-color var(--duration-normal) var(--ease-out-expo),transform var(--duration-normal) var(--ease-out-expo)}.account-back-btn svg{width:18px;height:18px;margin-left:-1px}.account-back-btn:active{background:var(--bg-elevated);border-color:var(--border-strong);transform:scale(.92)}@media(hover:hover){.account-back-btn:hover{background:var(--bg-elevated);border-color:var(--border-strong)}}.account-heading{font-size:1.5rem;font-weight:800;letter-spacing:-.03em;margin-top:0;margin-bottom:0}.account-profile{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-6);background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-2xl)}.account-avatar{width:48px;height:48px;background:var(--accent-500);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.account-avatar svg{width:24px;height:24px;color:#fff}.account-info{min-width:0}.account-name{font-size:1.125rem;font-weight:700;letter-spacing:-.02em;line-height:1.3}.account-email{font-size:.875rem;font-weight:500;color:var(--text-secondary);overflow-wrap:break-word;word-break:break-all}.account-card{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-xl);padding:var(--space-6)}.account-card-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.account-card-icon{width:18px;height:18px;color:var(--accent-400);flex-shrink:0}.account-card-title{font-size:.9375rem;font-weight:700;letter-spacing:-.01em}.account-card-hint{font-size:.8125rem;color:var(--text-muted);margin-bottom:var(--space-4);margin-top:calc(-1 * var(--space-2))}.account-inline-error{padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);border:1px solid rgba(220,38,38,.24);background:#dc262614;color:var(--color-error-muted);font-size:.875rem}.account-signout{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;padding:var(--space-3) var(--space-5);border:1px solid rgba(220,38,38,.3);border-radius:var(--radius-lg);background:#dc262614;color:var(--color-error);font-size:.875rem;font-weight:600;font-family:var(--font-family);cursor:pointer;transition:background var(--duration-fast),border-color var(--duration-fast),color var(--duration-fast)}.account-signout svg{width:16px;height:16px}@media(hover:hover){.account-signout:hover{background:#dc262629;border-color:#dc262673;color:var(--color-error)}}.account-signout:active{background:#dc262638;border-color:#dc262680}.account-signout:focus-visible{outline:2px solid var(--color-error);outline-offset:1px}.account-footer{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) 0 var(--space-4)}.account-footer-link{border:none;background:none;color:var(--text-muted);font-size:.75rem;font-weight:500;font-family:var(--font-family);text-decoration:none;cursor:pointer;transition:color var(--duration-fast)}@media(hover:hover){.account-footer-link:hover{color:var(--text-secondary)}}.account-footer-link:active{color:var(--text-secondary)}.account-footer-delete{color:var(--text-muted)}@media(hover:hover){.account-footer-delete:hover{color:var(--color-error)}}.account-footer-delete:active{color:var(--color-error)}.account-footer-delete:disabled{opacity:.5;cursor:wait}.account-footer-sep{color:var(--text-muted);font-size:.75rem}.account-delete{display:flex;align-items:center;justify-content:center;gap:var(--space-2);flex-shrink:0;min-height:44px;padding:0 var(--space-5);border:1px solid rgba(220,38,38,.35);border-radius:var(--radius-lg);background:#dc26261f;color:var(--color-error-muted);font-size:.875rem;font-weight:600;font-family:var(--font-family);cursor:pointer;transition:background var(--duration-fast),border-color var(--duration-fast),color var(--duration-fast)}.account-delete svg{width:16px;height:16px}@media(hover:hover){.account-delete:hover:not(:disabled){background:#dc262633;border-color:#dc262680;color:var(--color-error-muted)}}.account-delete:active:not(:disabled){background:#dc262633;border-color:#dc262680;color:var(--color-error-muted)}.account-delete:disabled{opacity:.7;cursor:wait}.account-delete-confirm-button{min-width:220px}.account-delete-cancel{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 var(--space-5);border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-elevated);color:var(--text-secondary);font-size:.875rem;font-weight:600;font-family:var(--font-family);cursor:pointer;transition:background var(--duration-fast),border-color var(--duration-fast),color var(--duration-fast)}@media(hover:hover){.account-delete-cancel:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-strong);color:var(--text-primary)}}.account-delete-cancel:active:not(:disabled){background:var(--bg-hover);border-color:var(--border-strong);color:var(--text-primary)}.account-delete-cancel:disabled{opacity:.7;cursor:wait}.account-delete-modal-backdrop{position:fixed;inset:0;z-index:1100;background:#0006;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.account-delete-modal-wrap{position:fixed;inset:0;z-index:1101;display:grid;place-items:center;padding:var(--space-5)}.account-delete-modal{width:min(100%,440px);display:grid;gap:var(--space-5);padding:var(--space-6);border-radius:28px;background:var(--bg-secondary);border:1px solid var(--border-default);box-shadow:0 24px 80px #00000073,inset 0 1px #ffffff0f}.account-delete-modal-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:18px;background:#dc262624;color:var(--color-error-muted)}.account-delete-modal-icon svg{width:24px;height:24px}.account-delete-modal-copy{display:grid;gap:var(--space-2)}.account-delete-modal-title{margin:0;font-size:1.125rem;font-weight:800;letter-spacing:-.025em}.account-delete-modal-text{margin:0;color:var(--text-secondary);font-size:.9375rem;line-height:1.65}.account-delete-modal-actions{display:flex;justify-content:flex-end;gap:var(--space-3)}.account-delete-cancel:focus-visible{outline:2px solid var(--border-strong);outline-offset:1px}.account-delete:focus-visible{outline:2px solid var(--color-error);outline-offset:1px}.place-field{margin-bottom:var(--space-3)}.place-field:last-child{margin-bottom:0}.place-label{display:block;font-size:.8125rem;font-weight:600;color:var(--text-secondary);margin-bottom:var(--space-1)}.place-input{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--input-bg);color:var(--text-primary);font-size:.875rem;font-family:var(--font-family);font-weight:500;transition:border-color var(--duration-fast),box-shadow var(--duration-fast);outline:none}.place-input::placeholder{color:var(--text-muted);font-weight:400}.place-input:focus{border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.place-label-row{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1)}.place-label-row>label{flex:1;min-width:0}.place-name-inline{background:none;border:none;outline:none;font-size:.8125rem;font-weight:600;color:var(--text-secondary);padding:0;width:100%;min-width:0;overflow:visible;text-overflow:ellipsis}.place-name-inline::placeholder{color:var(--text-muted);font-weight:500}.place-remove-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;background:none;border:none;padding:2px;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--duration-fast)}@media(hover:hover){.place-remove-btn:hover{color:var(--color-error)}}.place-remove-btn:active{color:var(--color-error)}.place-remove-btn svg{width:14px;height:14px}.place-add-btn{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-5);padding:0;background:none;border:none;color:var(--accent-400);font-size:.8125rem;font-weight:500;cursor:pointer;transition:opacity var(--duration-fast)}@media(hover:hover){.place-add-btn:hover{opacity:.8}}.place-add-btn:active{opacity:.8}.place-add-btn svg{width:16px;height:16px;flex-shrink:0;vertical-align:middle;margin-top:-1px}.place-input-error{border-color:var(--color-error)!important;box-shadow:0 0 0 3px #dc26261f!important}.place-name-inline.place-input-error{color:var(--color-error);box-shadow:none!important}.place-name-inline.place-input-error::placeholder{color:var(--color-error)}.pref-group{margin-bottom:var(--space-4)}.pref-group:last-child{margin-bottom:0}.pref-label{display:block;font-size:.8125rem;font-weight:600;color:var(--text-secondary);margin-bottom:var(--space-2)}.pref-row{display:flex;gap:var(--space-4)}.pref-half{flex:1;min-width:0}@media(max-width:539px){.pref-row{flex-direction:column;gap:0}}.segment-control{position:relative;display:flex;gap:0;padding:2px;border:1px solid var(--border-subtle);border-radius:var(--radius-full);background:var(--input-bg);overflow:hidden;--segment-count: 1;--segment-index: 0}.segment-indicator{position:absolute;top:2px;left:2px;bottom:2px;width:calc((100% - 4px) / var(--segment-count));border-radius:var(--radius-full);background:var(--border-default);z-index:0;transform:translate(calc(var(--segment-index) * 100%));transition:transform .3s var(--ease-out-expo),width .3s var(--ease-out-expo);pointer-events:none}.segment-button{flex:1 1 0%;min-width:0;position:relative;z-index:1;border:none;background:transparent;color:var(--text-tertiary);border-radius:var(--radius-full);padding:var(--space-2) var(--space-2);font-weight:600;font-size:.75rem;cursor:pointer;transition:color .2s var(--ease-emphasized);font-family:var(--font-family);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(hover:hover){.segment-button:hover{color:var(--text-primary)}}.segment-button:active,.segment-button.is-active{color:var(--text-primary)}.segment-button:focus-visible{outline:none;box-shadow:var(--shadow-md);outline-offset:1px}.pref-toggle-list{display:flex;flex-direction:column;gap:var(--space-2)}.pref-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--input-bg);border:1px solid var(--border-subtle);cursor:pointer;transition:border-color var(--duration-fast);font-family:var(--font-family);width:100%}@media(hover:hover){.pref-toggle-row:hover{border-color:var(--border-default)}}.pref-toggle-row:active{border-color:var(--border-default)}.pref-toggle-row:focus-visible{outline:none;box-shadow:var(--shadow-md);outline-offset:1px}.pref-toggle-label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.pref-toggle-switch{width:42px;height:24px;background:var(--bg-hover);border-radius:var(--radius-full);position:relative;transition:background var(--duration-normal) var(--ease-out-expo),box-shadow var(--duration-normal) var(--ease-out-expo);flex-shrink:0}.pref-toggle-switch.is-on{background:var(--accent-500);box-shadow:none}.pref-toggle-switch:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;background:#fff;border-radius:50%;transition:transform var(--duration-normal) var(--ease-out-expo),box-shadow var(--duration-normal) var(--ease-out-expo);box-shadow:0 1px 3px #0000004d}.pref-toggle-switch.is-on:after{transform:translate(18px)}@media(max-width:539px){.account-container{gap:var(--space-3);padding:var(--space-8) 0 var(--space-6)}.account-profile{padding:var(--space-5);border-radius:var(--radius-xl)}.account-card{padding:var(--space-5)}.account-delete-confirm-button,.account-delete-cancel{width:100%}.account-delete-modal{padding:var(--space-5);border-radius:24px}.account-delete-modal-actions{flex-direction:column-reverse}}.oauth-buttons{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-6)}.btn-oauth{display:flex;align-items:center;justify-content:center;gap:var(--space-3);width:100%;padding:var(--space-4) var(--space-5);border:1px solid var(--border-default);border-radius:var(--radius-lg);font-size:.9375rem;font-weight:600;font-family:var(--font-family);cursor:pointer;transition:all var(--duration-normal) var(--ease-out-expo)}.btn-oauth:active{transform:scale(.98)}@media(hover:hover){.btn-oauth:hover{transform:scale(.98)}}.btn-google{background:var(--bg-primary);color:var(--text-primary)}@media(hover:hover){.btn-google:hover{background:var(--bg-elevated);border-color:var(--border-strong)}}.btn-google:active{background:var(--bg-elevated);border-color:var(--border-strong)}.btn-apple{background:#fff;color:#000;border-color:var(--border-strong)}@media(hover:hover){.btn-apple:hover{background:#f0f0f0}}.btn-apple:active{background:#f0f0f0}.route-list{width:100%;max-width:1200px;margin:0 auto;padding:var(--space-12) 0 var(--space-8);animation:fadeIn var(--duration-page-enter) var(--ease-emphasized);contain:layout style}@media(max-width:539px){.route-list{padding:var(--space-8) 0 var(--space-6)}}.route-list-header{display:flex;justify-content:flex-start;align-items:center;gap:var(--space-4);margin-bottom:var(--space-5);width:min(100%,var(--search-results-width));margin-inline:auto}.route-list-heading{font-size:1.75rem;font-weight:700;color:var(--text-primary);letter-spacing:-.02em;text-align:left;margin:0}.route-list-header-actions{display:flex;justify-content:flex-end;margin-left:auto}.route-list-header-action-placeholder{display:block;width:140px;height:1px}.clear-history-button{padding:var(--space-2) var(--space-4);border:1px solid var(--border-default);border-radius:var(--radius-lg);background:transparent;color:var(--text-secondary);font-size:.875rem;font-weight:500;font-family:var(--font-family);cursor:pointer;transition:all var(--duration-normal) var(--ease-out-expo)}@media(hover:hover){.clear-history-button:hover{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border-strong)}}.clear-history-button:active{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border-strong)}.route-cards{display:flex;flex-direction:column;gap:var(--space-4);width:min(100%,var(--search-results-width));margin-inline:auto;contain:layout style}.route-list.isEmptySignedOut .route-list-header{width:min(100%,400px)}.route-list.isEmptySignedOut .route-list-heading{width:100%;text-align:center}.route-list.isEmptySignedOut .empty-state{width:min(100%,400px)}.route-list.isEmptySignedOut .empty-state-card{width:100%}.route-card{content-visibility:auto;contain-intrinsic-size:auto 72px;background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-2xl);padding:var(--space-5) var(--space-6);box-shadow:var(--shadow-md);cursor:pointer;transition:all var(--duration-normal) var(--ease-out-expo);position:relative;display:flex;align-items:center;gap:var(--space-4);overflow:hidden;will-change:transform}[data-theme=light] .route-card,[data-theme=light] .journey-card,[data-theme=light] .account-card,[data-theme=light] .account-profile,[data-theme=light] .login-card,[data-theme=light] .empty-state-card,[data-theme=light] .error-card,[data-theme=light] .search-tabs-card{box-shadow:var(--shadow-md),0 1px 2px #00000026}@media(min-width:540px){[data-theme=light] .search-form{box-shadow:var(--shadow-md),0 1px 2px #00000026}}@media(max-width:539.98px){[data-theme=light] .search-input{box-shadow:var(--shadow-md),0 1px 2px #00000026}}html.native-app .route-card,html.native-app .popular-search-card{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--bg-secondary)}@media(max-width:539px){.route-card{width:100%;margin:0 auto}.route-list-header-actions,.route-list-header-action-placeholder{min-width:0;width:0}}@media(min-width:540px){.route-card{min-width:0}}.route-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,var(--border-subtle),transparent);transition:left .5s var(--ease-out-expo);pointer-events:none}@media(hover:hover){.route-card:hover{background:var(--bg-elevated);border-color:var(--border-strong);box-shadow:var(--shadow-md)}.route-card:hover:before{left:100%}}.route-card:active{background:var(--bg-elevated);border-color:var(--border-strong);box-shadow:var(--shadow-md)}.route-card:active:before{left:100%}.route-card .swap-button{position:relative;flex-shrink:0;z-index:1;margin-left:auto;background:none;border:none;cursor:pointer;padding:0;color:var(--text-tertiary);transition:all var(--duration-normal) var(--ease-out-expo);display:flex;align-items:center;justify-content:center;width:32px;height:32px}@media(hover:hover){.route-card .swap-button:hover{color:var(--text-secondary)}}.route-card .swap-button:active{color:var(--text-secondary)}.route-card .swap-button:active{color:var(--accent-400)}.route-card .swap-button svg{width:22px;height:22px}.route-card .favorite-button{position:relative;flex-shrink:0;z-index:1;margin-left:0}.route-card-main-button{display:flex;align-items:center;gap:var(--space-4);flex:1;min-width:0;background:none;border:none;color:inherit;font:inherit;text-align:left;cursor:pointer;padding:0}.route-card-main-button:focus-visible{outline:none;box-shadow:var(--shadow-md);outline-offset:4px;border-radius:var(--radius-lg)}.route-timeline{display:flex;flex-direction:column;align-items:center;gap:0;flex-shrink:0;align-self:stretch;padding:var(--space-1) 0}.route-dot{width:10px;height:10px;background:var(--accent-500);border-radius:50%;flex-shrink:0;box-shadow:none}.route-dot-end{background:transparent;border:2px solid var(--accent-500);box-shadow:none}.route-line{width:2px;flex:1;min-height:16px;background:var(--accent-500)}.route-card-content{display:flex;flex-direction:column;gap:var(--space-1);z-index:1;flex:1;min-width:0}.route-from,.route-to{font-size:1rem;font-weight:500;color:var(--text-primary);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.route-from{font-size:.9375rem;color:var(--text-secondary)}.route-to{font-weight:600}.empty-state{display:flex;align-items:center;justify-content:center;width:min(100%,var(--search-results-width));margin-inline:auto;position:relative;z-index:1;animation:fadeIn var(--duration-page-enter) var(--ease-emphasized)}.empty-state-card{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-2xl);padding:var(--space-12) var(--space-10);text-align:center;max-width:400px}@media(max-width:539px){.empty-state-card{padding:var(--space-8) var(--space-6);border-radius:var(--radius-xl)}}.empty-state-icon-wrapper{width:80px;height:80px;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-6)}.empty-state-icon{width:36px;height:36px;color:var(--text-tertiary);stroke-width:1.5}.empty-state-title{font-size:1.125rem;font-weight:600;letter-spacing:-.01em;margin-bottom:var(--space-2)}.empty-state-text{color:var(--text-tertiary);font-size:.9375rem}.route-list-container{display:flex;flex-direction:column;gap:var(--space-4)}.route-list-container .journey-result{margin-top:0;animation:none}.scroll-sentinel{height:1px}.load-more-retry{display:flex;align-items:center;justify-content:center;gap:8px;width:auto;margin:0 auto;padding:14px var(--space-6);border:none;border-radius:var(--radius-full);background:var(--bg-elevated);color:var(--text-secondary);font-size:.8125rem;letter-spacing:.01em;text-align:center;cursor:pointer;transition:background .2s ease,transform .2s ease;animation:fadeIn .3s ease}@media(hover:hover){.load-more-retry:hover{background:var(--bg-hover);transform:scale(1.01)}}.load-more-retry:active{background:var(--bg-hover);transform:scale(1.01)}.load-more-spinner{display:flex;justify-content:center;align-items:center;gap:10px;padding:var(--space-4) 0 var(--space-6)}.load-more-spinner.active{animation:fadeIn .3s ease}.load-more-spinner.hidden{padding:0}.load-more-dot{width:6px;height:6px;border-radius:50%;background:var(--accent-400);opacity:0}.load-more-spinner.active .load-more-dot{opacity:1;animation:loadMoreWave 1.2s ease-in-out infinite}.load-more-spinner.active .load-more-dot:nth-child(2){animation-delay:.15s}.load-more-spinner.active .load-more-dot:nth-child(3){animation-delay:.3s}@keyframes loadMoreWave{0%,to{opacity:.35;transform:translateY(0)}50%{opacity:1;transform:translateY(-6px)}}.route-list-container .journey-result:first-child{margin-top:var(--space-8)}.route-list-container .journey-card-compact{animation:compactCardIn .4s cubic-bezier(.22,1.2,.36,1) both}.route-list-container .journey-result:nth-child(1) .journey-card-compact{animation-delay:0ms}.route-list-container .journey-result:nth-child(2) .journey-card-compact{animation-delay:50ms}.route-list-container .journey-result:nth-child(3) .journey-card-compact{animation-delay:.1s}.route-list-container .journey-result:nth-child(4) .journey-card-compact{animation-delay:.15s}.route-list-container .journey-result:nth-child(5) .journey-card-compact{animation-delay:.2s}.route-list-container .journey-result:nth-child(n+6) .journey-card-compact{animation-delay:.23s}.route-list-container .journey-card-compact.no-enter-animation{animation-delay:0ms!important}@keyframes compactCardIn{0%{opacity:0;transform:translateY(20px) scale(.95)}70%{opacity:1;transform:translateY(-2px) scale(1.005)}to{opacity:1;transform:translateY(0) scale(1)}}.route-list-container .journey-card-motion{overflow:clip;transform-origin:center top;will-change:transform,opacity}.route-list-container .journey-card-entering{animation:routeCardOpen var(--duration-route-open) cubic-bezier(.34,1.4,.64,1) both}@keyframes routeCardOpen{0%{opacity:0;transform:scale(.95) translateY(10px)}50%{opacity:1;transform:scale(1.006) translateY(-1px)}to{opacity:1;transform:scale(1) translateY(0)}}.route-list-container .journey-legs-shell{overflow:hidden}.route-list-container .journey-card-entering .journey-legs-shell{animation:routeLegsOpen .48s cubic-bezier(.22,1,.36,1) .06s both}@keyframes routeLegsOpen{0%{transform:translateY(-8px);opacity:0}to{transform:translateY(0);opacity:1}}.route-list-container .journey-card-entering .journey-leg{animation:routeLegIn .35s var(--ease-emphasized) both;animation-delay:calc(60ms + (var(--leg-index, 0) * 45ms))}@keyframes routeLegIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.route-list-container .journey-card-entering .favorite-button{animation:favIconIn .45s cubic-bezier(.34,1.56,.64,1) .12s both}.route-list-container .journey-card-entering .map-toggle-button{animation:favIconIn .45s cubic-bezier(.34,1.56,.64,1) .18s both}@keyframes favIconIn{0%{opacity:0;transform:scale(0) rotate(-60deg)}60%{opacity:1;transform:scale(1.15) rotate(8deg)}to{opacity:1;transform:scale(1) rotate(0)}}.route-list-container .journey-card-collapsing{pointer-events:none;animation:routeCardClose var(--duration-route-close) cubic-bezier(.55,0,1,.45) both}@keyframes routeCardClose{0%{opacity:1;transform:scale(1) translateY(0)}18%{transform:scale(1.015) translateY(3px)}to{opacity:0;transform:scale(.88) translateY(-20px)}}.route-list-container .journey-card-collapsing .journey-legs-shell{animation:routeLegsClose .2s cubic-bezier(.55,0,1,.45) both}@keyframes routeLegsClose{0%{transform:translateY(0);opacity:1}to{transform:translateY(-8px);opacity:0}}.route-list-container .journey-card-collapsing .journey-leg{animation:routeLegOut .15s cubic-bezier(.55,0,1,.45) both;animation-delay:var(--leg-out-delay, 0ms)}@keyframes routeLegOut{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.95) translateY(-10px)}}.route-list-container .journey-card-collapsing .favorite-button{animation:favIconOut .15s cubic-bezier(.55,0,1,.45) both}.route-list-container .journey-card-collapsing .map-toggle-button{animation:favIconOut .15s cubic-bezier(.55,0,1,.45) .03s both}@keyframes favIconOut{0%{opacity:1;transform:scale(1) rotate(0)}to{opacity:0;transform:scale(.3) rotate(30deg)}}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.tab-route-item{animation-duration:.25s!important}}html:not(.native-app) ::-webkit-scrollbar{width:8px}html:not(.native-app) ::-webkit-scrollbar-track{background:var(--bg-primary)}html:not(.native-app) ::-webkit-scrollbar-thumb{background:var(--bg-hover);border-radius:var(--radius-full)}html:not(.native-app) ::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.error-msg{color:var(--color-error);font-size:.875rem;min-height:1.25rem;text-align:center}
