.leaflet-container img.leaflet-tile.global-heatmap-tile{background:0 0}.startup-screen{min-height:var(--app-height,100dvh);color:#f8fafc;background:#14171b;place-content:center;justify-items:center;gap:14px;font:600 1rem/1.5 system-ui,sans-serif;display:grid}:root{--accent-blue-50:#eff6ff;--accent-blue-100:#dbeafe;--accent-blue-200:#bfdbfe;--accent-blue-300:#93c5fd;--accent-blue-400:#60a5fa;--accent-blue-500:#3b82f6;--accent-blue-600:#2563eb;--accent-blue-700:#1d4ed8;--accent-blue-800:#1e40af;--accent-blue-900:#1e3a8a;--slate-950:#0b0d10;--slate-925:#101216;--slate-900:#14171b;--slate-850:#191d22;--slate-800:#20252b;--slate-750:#292f36;--slate-700:#343c45;--alpha-2:#ffffff05;--alpha-4:#ffffff0a;--alpha-6:#ffffff0f;--alpha-8:#ffffff14;--alpha-12:#ffffff1f;--alpha-18:#ffffff2e;--alpha-24:#ffffff3d;--alpha-38:#ffffff61;--alpha-56:#ffffff8f;--alpha-72:#ffffffb8;--alpha-92:#ffffffeb;--green-500:#22c55e;--amber-500:#f59e0b;--red-500:#ef4444;--red-400:#ff6b6b;--blue-500:#3b82f6;--surface-base:var(--slate-900);--surface-1:var(--slate-800);--surface-2:var(--slate-850);--surface-3:var(--slate-750);--surface-inset:var(--alpha-4);--surface-overlay:#0000008c;--surface-map-placeholder:#d8e0d8;--surface-weather:#0d1117;--surface-details-side:#12122a;--surface-details-tabs:#141426;--surface-details-sheet:#0d1117;--surface-details-inset:inset -8px 0 40px #00000080;--surface-hover:var(--alpha-12);--surface-hover-strong:var(--alpha-18);--scrim-strong:#000000e6;--text-on-scrim:#ffffffeb;--ink-strong:#f1f5f9;--ink-muted:#94a3b8;--ink-subtle:#64748b;--surface-glass:linear-gradient(145deg, #14171bb3, #292f3685);--surface-glass-hover:linear-gradient(145deg, #292f36d1, #343c45a8);--border-glass:#ffffff2e;--text-on-glass:#ffffffeb;--text-on-glass-muted:#ffffffad;--shadow-glass:0 10px 22px #0000003d, inset 0 1px 0 #ffffff1a;--glass-blur:blur(22px) saturate(155%);--surface-glass-chrome:linear-gradient(145deg, #14171b70, #292f3642);--border-glass-chrome:#ffffff1f;--shadow-glass-chrome:0 8px 24px #00000047, inset 0 1px 0 #ffffff14;--glass-blur-chrome:blur(30px) saturate(180%);--entry-page-background:radial-gradient(120% 100% at 50% -10%, #60a5fa2e 0%, #60a5fa00 55%), linear-gradient(160deg, #1b1f24 0%, #121519 52%, #0b0d10 100%);--entry-card-background:linear-gradient(180deg, #ffffff14 0%, #ffffff09 100%);--entry-card-border:#ffffff1f;--entry-card-shadow:0 24px 60px -20px #000000a6, inset 0 1px 0 #ffffff14;--entry-input-background:#00000047;--chart-temp-max:#ff6b35;--chart-temp-min:#42a5f5;--chart-precip:#4fc3f7;--chart-precip-ink:#81d4fa;--chart-series-accent:#60a5fa;--chart-series-alt:#65c7ff;--chart-series-danger:#f87171;--chart-axis:var(--ink-muted);--chart-grid:var(--border-default);--chart-series-strava:#fc4c02;--warning-ink:#ffd166;--danger-ink:#ff9a8a;--success-ink:#86efac;--starred-ink:#facc15;--border-subtle:var(--alpha-6);--border-default:var(--alpha-12);--border-strong:var(--alpha-18);--border-focus:var(--accent-blue-400);--text-primary:var(--alpha-92);--text-secondary:var(--alpha-72);--text-tertiary:var(--alpha-56);--text-disabled:var(--alpha-38);--text-on-accent:#0f172a;--text-placeholder:var(--alpha-56);--accent:var(--accent-blue-400);--accent-hover:var(--accent-blue-300);--accent-pressed:var(--accent-blue-500);--accent-soft:#60a5fa26;--accent-softer:#60a5fa14;--accent-ring:#60a5fa73;--accent-on-soft:var(--accent-blue-200);--accent-on-soft-strong:var(--accent-blue-50);--accent-gradient:linear-gradient(135deg, var(--accent-blue-400) 0%, var(--accent-blue-300) 100%);--accent-gradient-hover:linear-gradient(135deg, var(--accent-blue-300) 0%, var(--accent-blue-300) 100%);--brand-mark-soft:#60a5fa47;--brand-mark-softer:#60a5fa14;--brand-mark-border:#60a5fa59;--brand-mark-shadow:#60a5fa8c;--success:var(--green-500);--success-soft:#22c55e1f;--warning:var(--amber-500);--warning-soft:#f59e0b1f;--danger:var(--red-500);--danger-text:var(--red-400);--danger-soft:#ef44441f;--info:var(--blue-500);--info-soft:#3b82f61f;--action-primary-bg:var(--accent);--action-primary-bg-hover:var(--accent-hover);--action-primary-border:var(--accent-ring);--action-primary-ink:var(--text-on-accent);--action-primary-shadow:var(--elev-accent);--action-secondary-bg:var(--alpha-8);--action-secondary-bg-hover:var(--alpha-18);--action-secondary-border:var(--alpha-12);--action-secondary-ink:var(--text-primary);--action-danger-bg:var(--danger-soft);--action-danger-bg-hover:color-mix(in srgb, var(--danger) 18%, transparent);--action-danger-border:color-mix(in srgb, var(--danger) 26%, transparent);--action-danger-border-hover:color-mix(in srgb, var(--danger) 42%, transparent);--action-danger-ink:var(--danger-ink);--action-danger-ink-hover:color-mix(in srgb, var(--danger) 70%, var(--text-primary));--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-xs:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:20px;--radius-pill:999px;--elev-1:0 1px 2px #00000040;--elev-2:0 4px 12px #0000004d;--elev-3:0 8px 24px #0006;--elev-4:0 25px 50px -12px #0000008c;--elev-sheet-up:0 -18px 36px #02061780;--elev-accent:0 10px 22px #60a5fa38, inset 0 1px 0 #ffffff29;--elev-accent-strong:0 14px 28px #93c5fd52, inset 0 1px 0 #ffffff38;--z-map:0;--z-map-overlay:400;--z-controls:1200;--z-header:1001;--z-popover:3000;--z-sheet:5000;--z-modal:8000;--z-toast:9000;--z-tooltip:9500;--tap-target-min:44px;--motion-instant:80ms;--motion-fast:.16s;--motion-base:.22s;--motion-slow:.32s;--motion-emphasis:.48s;--ease-standard:cubic-bezier(.22, 1, .36, 1);--ease-decelerate:cubic-bezier(.16, 1, .3, 1);--ease-accelerate:cubic-bezier(.4, 0, 1, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-linear:linear;--ease-drawer:cubic-bezier(.32, .72, 0, 1);--press-scale:.97;--press-scale-lg:.985;--transition-button:background var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard), scale var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);--transition-panel:transform var(--motion-base) var(--ease-decelerate), opacity var(--motion-base) var(--ease-decelerate);--transition-sheet:transform var(--motion-base) var(--ease-standard), height var(--motion-base) var(--ease-standard);--transition-color:color var(--motion-fast) var(--ease-standard), background-color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard);--transition-fade:opacity var(--motion-fast) var(--ease-standard);--transition-transform:transform var(--motion-fast) var(--ease-standard);--app-height:100dvh;--keyboard-inset:0px;--tracking-display:-.022em;--tracking-title:-.014em;--tracking-heading:-.008em;--tracking-body:0em;--tracking-small:.01em;--tracking-micro:.02em;--tracking-caps:.04em;--leading-display:1.05;--leading-title:1.15;--leading-heading:1.3;--leading-body:1.5;--leading-dense:1.35;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text-primary);background-color:var(--surface-base);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-weight:400;line-height:1.5}:root[data-theme=light]{--slate-950:#fff;--slate-925:#f8fafc;--slate-900:#f3f6f8;--slate-850:#edf1f5;--slate-800:#fff;--slate-750:#f8fafc;--slate-700:#e7edf3;--alpha-2:#0f172a05;--alpha-4:#0f172a0a;--alpha-6:#0f172a0f;--alpha-8:#0f172a14;--alpha-12:#0f172a1f;--alpha-18:#0f172a2e;--alpha-24:#0f172a3d;--alpha-38:#0f172a7a;--alpha-56:#0f172a9e;--alpha-72:#0f172ac2;--alpha-92:#0f172aeb;--surface-overlay:#0f172a6b;--surface-map-placeholder:#e6ebe6;--surface-weather:#fff;--surface-details-side:#f4f7fb;--surface-details-tabs:#fff;--surface-details-sheet:#f4f7fb;--surface-details-inset:inset -8px 0 40px #0f172a0f;--ink-strong:#0f172a;--ink-muted:#475569;--ink-subtle:#64748b;--text-tertiary:#0f172ab3;--text-disabled:#0f172a94;--text-placeholder:#0f172aa8;--chart-temp-max:#c2410c;--chart-temp-min:#1d4ed8;--chart-precip:#0284c7;--chart-precip-ink:#075985;--chart-series-accent:#1d4ed8;--chart-series-alt:#0e7490;--chart-series-danger:#b91c1c;--chart-series-strava:#c2410c;--warning-ink:#92400e;--danger-ink:#b91c1c;--success-ink:#15803d;--starred-ink:#b45309;--surface-glass:linear-gradient(145deg, #ffffff6b, #f1f5f947);--surface-glass-hover:linear-gradient(145deg, #ffffff94, #e2e8f070);--border-glass:#0f172a33;--text-on-glass:#0f172a;--text-on-glass-muted:#1e293b;--shadow-glass:0 10px 26px #0f172a24, inset 0 1px 0 #fffc;--glass-blur:blur(30px) saturate(200%);--surface-glass-chrome:linear-gradient(145deg, #ffffff4d, #f1f5f929);--border-glass-chrome:#0f172a1f;--shadow-glass-chrome:0 8px 24px #0f172a1a, inset 0 1px 0 #ffffffb3;--glass-blur-chrome:blur(34px) saturate(210%);--accent-on-soft:var(--accent-blue-700);--accent-on-soft-strong:var(--accent-blue-800);--entry-page-background:radial-gradient(120% 100% at 50% -10%, #60a5fa24 0%, #60a5fa00 54%), linear-gradient(160deg, #f9fbfc 0%, #edf2f5 100%);--entry-card-background:linear-gradient(180deg, #fffffff0, #f8fafce6);--entry-card-border:#0f172a1f;--entry-card-shadow:0 24px 60px -24px #0f172a33, inset 0 1px 0 #ffffffe6;--entry-input-background:#0f172a0a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-property:opacity,color,background-color,border-color,box-shadow,fill,stroke!important;transition-duration:var(--motion-fast)!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}:root{--press-scale:1;--press-scale-lg:1}}@media (prefers-reduced-transparency:reduce){:root{--surface-glass:linear-gradient(145deg, #14171bf7, #20252bf2);--surface-glass-hover:linear-gradient(145deg, #292f36fa, #343c45f5);--surface-glass-chrome:linear-gradient(145deg, #14171bf5, #20252bf0);--glass-blur:none;--glass-blur-chrome:none;--border-glass:var(--alpha-24);--border-glass-chrome:var(--alpha-18);--surface-overlay:#000000d1}:root[data-theme=light]{--surface-glass:linear-gradient(145deg, #fffffffa, #f1f5f9f5);--surface-glass-hover:linear-gradient(145deg, #fff, #e2e8f0fa);--surface-glass-chrome:linear-gradient(145deg, #fffffff7, #f1f5f9f2);--surface-overlay:#0f172ac7}}@media (prefers-contrast:more){:root{--glass-blur:none;--glass-blur-chrome:none;--surface-glass:var(--surface-1);--surface-glass-hover:var(--surface-3);--surface-glass-chrome:var(--surface-1);--border-subtle:var(--alpha-24);--border-default:var(--alpha-38);--border-strong:var(--alpha-56);--border-glass:var(--alpha-56);--border-glass-chrome:var(--alpha-38);--text-secondary:var(--alpha-92);--text-tertiary:var(--alpha-72);--text-placeholder:var(--alpha-72);--text-on-glass-muted:var(--text-on-glass);--surface-overlay:#000000db}:root[data-theme=light]{--text-tertiary:#0f172adb;--text-placeholder:#0f172adb;--surface-overlay:#0f172ad1}:focus-visible{outline-width:3px}}*{box-sizing:border-box}html,body{width:100%;min-height:100%;margin:0;padding:0}html{background:var(--surface-base);overscroll-behavior:none}:root::backdrop{background:var(--surface-base)}:root:-webkit-full-screen{background:var(--surface-base)}:root:fullscreen{background:var(--surface-base)}html[data-ui-text-size=large]{font-size:112.5%}html[data-ui-text-size=extra-large]{font-size:125%}body{min-height:var(--app-height);background:var(--surface-base);-webkit-overflow-scrolling:touch;overflow:hidden auto}a{color:var(--accent);-webkit-text-decoration:inherit;text-decoration:inherit;transition:var(--transition-color);font-weight:500}a:hover{color:var(--accent-hover)}button{transition:scale var(--motion-fast) var(--ease-standard);font-family:inherit}button:active:not(:disabled):not([aria-disabled=true]):not([data-press-scale=none]){scale:var(--press-scale)}button.route-item-select:active:not(:disabled),button[data-press-scale=lg]:active:not(:disabled):not([aria-disabled=true]){scale:var(--press-scale-lg)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-xs)}body:focus-visible,main:focus-visible,div:focus-visible:not([tabindex]){outline:none}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--alpha-4)}::-webkit-scrollbar-thumb{background:var(--alpha-18);border-radius:var(--radius-xs);transition:var(--transition-color)}::-webkit-scrollbar-thumb:hover{background:var(--alpha-24)}@media (max-width:768px){*{-webkit-tap-highlight-color:transparent}html,body,#root{touch-action:pan-x pan-y}.leaflet-container,.planner-map-canvas,.route-map-container{touch-action:none}button,.route-item,.activity-btn,.sort-btn{touch-action:manipulation}button,.clickable{-webkit-user-select:none;user-select:none}::-webkit-scrollbar{width:4px;height:4px}}@supports (padding:max(0px)){.header{padding-left:max(16px, env(safe-area-inset-left));padding-right:max(16px, env(safe-area-inset-right))}}.toast-container{top:max(16px, calc(env(safe-area-inset-top,0px) + 12px));z-index:var(--z-toast);pointer-events:none;flex-direction:column;align-items:center;gap:12px;width:min(420px,100vw - 32px);max-width:calc(100vw - 32px);display:flex;position:fixed;left:50%;transform:translate(-50%)}@media (min-width:1025px){.toast-container{align-items:flex-end;inset:auto 24px 24px auto;transform:none}@starting-style{.toast{transform:translateY(20px)}}.toast[data-state=exiting]{transform:translateY(20px)}}.toast{background:var(--surface-2);border:1px solid var(--alpha-12);width:100%;color:var(--text-primary);pointer-events:none;opacity:1;transition:opacity var(--motion-slow) var(--ease-standard), transform var(--motion-slow) var(--ease-standard);border-radius:12px;align-items:center;gap:10px;padding:12px 16px;font-size:.82rem;line-height:1.4;display:flex;transform:translateY(0);box-shadow:0 8px 24px #0006}@starting-style{.toast{opacity:0;transform:translateY(-100%)}}.toast[data-state=exiting]{opacity:0;transition:opacity var(--motion-base) var(--ease-standard), transform var(--motion-base) var(--ease-standard);transform:translateY(-100%)}.toast-swipe-dismissed[data-state=exiting]{transition:opacity var(--motion-base) var(--ease-standard), transform var(--motion-base) var(--ease-standard)}.toast-swiping{cursor:grabbing;transition:none}@media (prefers-reduced-motion:reduce){.toast,.toast[data-state=exiting]{transform:none}}.toast-icon{flex-shrink:0;width:22px;height:22px}.toast-icon svg{width:100%;height:100%}.toast-message{flex:1}.toast-action{background:var(--alpha-8);border:1px solid var(--border-strong);min-height:32px;color:inherit;font:inherit;cursor:pointer;pointer-events:auto;border-radius:6px;flex-shrink:0;padding:5px 10px;font-weight:700}.toast-action:hover{background:var(--surface-hover-strong);border-color:var(--alpha-38)}.toast-action:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.toast-action-link{color:var(--accent);border:none;border-bottom:1px solid var(--accent-ring);white-space:nowrap;background:0 0;border-radius:0;padding:0;font-weight:600;text-decoration:none;transition:border-color .15s}.toast-action-link:hover{border-color:var(--accent);background:0 0}.toast-close{background:var(--alpha-8);border:1px solid var(--border-strong);width:28px;height:28px;color:var(--text-primary);cursor:pointer;pointer-events:auto;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:4px;transition:background-color .2s,border-color .2s;display:flex}.toast-close:hover{background:var(--surface-hover-strong);border-color:var(--alpha-38)}.toast-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.toast-close svg{width:14px;height:14px}.toast-info{border-left:4px solid var(--info)}.toast-info .toast-icon{color:var(--info)}.toast-success{border-left:4px solid var(--success)}.toast-success .toast-icon{color:var(--success)}.toast-warning{border-left:4px solid var(--warning)}.toast-warning .toast-icon{color:var(--warning)}.toast-error{border-left:4px solid var(--danger)}.toast-error .toast-icon{color:var(--danger)}@media (max-width:480px){.toast-container{width:calc(100vw - 24px);max-width:calc(100vw - 24px)}.toast{gap:10px;padding:10px 12px;font-size:.85rem}}.loading-indicator{justify-content:center;align-items:center;gap:var(--space-2,8px);color:inherit;font:inherit;vertical-align:middle;display:inline-flex}.loading-indicator-scene{flex:none;width:68px;height:40px;display:block;position:relative;overflow:hidden}.loading-indicator-artwork,.loading-indicator-athlete{width:100%;height:100%;display:block}.loading-indicator-athlete{object-fit:contain;filter:var(--loading-indicator-athlete-filter,none);-webkit-user-select:none;user-select:none}.loading-indicator-label{min-width:0}.loading-indicator-label--hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.loading-indicator--small{gap:6px;font-size:.82rem}.loading-indicator--small .loading-indicator-scene{width:42px;height:26px}.loading-indicator--large{flex-direction:column;gap:10px}.loading-indicator--large .loading-indicator-scene{width:96px;height:54px}.callback-page{min-height:var(--app-height,100dvh);background:var(--entry-page-background);justify-content:center;align-items:center;display:flex}.callback-container{text-align:center;color:var(--text-primary)}.callback-container h2{margin:24px 0 8px;font-size:1.5rem}.callback-container p{color:var(--text-secondary);margin:0}.error-icon{font-size:48px}.callback-container button{color:var(--text-on-accent);cursor:pointer;background:#60a5fa;border:none;border-radius:8px;margin-top:24px;padding:12px 24px;font-size:1rem;transition:background .2s}.callback-container button:hover{background:#3b82f6}.status-page{--status-accent:var(--accent);isolation:isolate;min-height:var(--app-height,100dvh);padding:max(28px, env(safe-area-inset-top,0px)) max(20px, env(safe-area-inset-right,0px)) max(28px, env(safe-area-inset-bottom,0px)) max(20px, env(safe-area-inset-left,0px));box-sizing:border-box;background:var(--surface-base);color:var(--text-primary);place-items:center;display:grid;position:relative;overflow:hidden}.status-page--service-unavailable{--status-accent:var(--warning)}.status-page--unexpected-error{--status-accent:var(--danger-text)}.status-page__grid{z-index:-1;background-image:linear-gradient(#94a3b812 1px,#0000 1px),linear-gradient(90deg,#94a3b812 1px,#0000 1px);background-size:32px 32px;position:absolute;inset:-25%;transform:rotate(-6deg);-webkit-mask-image:linear-gradient(#0000 0%,#000 24% 72%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 24% 72%,#0000 100%)}.status-page__content{text-align:center;width:min(100%,620px);animation:status-page-enter var(--motion-slow) var(--ease-decelerate) both}.status-page__brand{align-items:center;gap:var(--space-2);color:var(--text-secondary);font-size:.8rem;font-weight:700;display:inline-flex}.status-page__brand svg{width:20px;height:20px}.status-page__route{width:min(100%,320px);height:auto;margin:var(--space-6) auto var(--space-4);display:block;overflow:visible}.status-page__route-track{fill:none;stroke:#e2e8f052;stroke-linecap:round;stroke-width:4px}.status-page__route-start,.status-page__route-end{fill:var(--surface-base);stroke:var(--status-accent);stroke-width:3px}.status-page__route-marker{fill:none;stroke:var(--status-accent);stroke-linecap:round;stroke-width:4px}.status-page__code{color:var(--status-accent);margin:0;font-size:.82rem;font-weight:800}.status-page h1{max-width:540px;margin:var(--space-2) auto 0;color:var(--text-primary);letter-spacing:var(--tracking-display);font-size:2.35rem;font-weight:750;line-height:1.12}.status-page__message{max-width:550px;margin:var(--space-5) auto 0;color:var(--text-primary);font-size:1.02rem;line-height:1.6}.status-page__detail{max-width:500px;margin:var(--space-2) auto 0;color:var(--text-tertiary);font-size:.9rem;line-height:1.55}.status-page__actions{justify-content:center;gap:var(--space-3);margin-top:var(--space-7);flex-wrap:wrap;display:flex}.status-page__primary-action,.status-page__secondary-action{min-height:var(--tap-target-min);border-radius:var(--radius-sm);font:inherit;cursor:pointer;transition:var(--transition-button);border:1px solid #0000;padding:10px 16px;font-weight:700;line-height:1.2}.status-page__primary-action{background:var(--status-accent);color:#10131d;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.status-page--not-found .status-page__primary-action{color:var(--text-on-accent)}.status-page__primary-action:hover{filter:brightness(1.08);transform:translateY(-1px)}.status-page__secondary-action{border-color:var(--border-default);color:var(--text-primary);background:#ffffff0a}.status-page__secondary-action:hover{border-color:var(--border-strong);background:#ffffff17}.status-page__primary-action:focus-visible,.status-page__secondary-action:focus-visible{outline-offset:3px;outline:3px solid #fff}@keyframes status-page-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:560px){.status-page h1{font-size:1.85rem}.status-page__route{width:min(100%,270px);margin-top:var(--space-5)}.status-page__actions{flex-direction:column;align-items:stretch;width:min(100%,300px);margin-left:auto;margin-right:auto}}#root{width:100%;min-height:var(--app-height,100dvh);height:var(--app-height,100dvh);margin:0;padding:0}.app-loading-screen{min-height:var(--app-height,100dvh);color:#94a3b8;place-items:center;display:grid}.session-error-screen{min-height:var(--app-height,100dvh);background:var(--color-bg,#0f172a);color:var(--color-text,#f8fafc);text-align:center;place-content:center;justify-items:center;gap:14px;padding:32px;display:grid}.session-error-screen h1,.session-error-screen p{margin:0}.session-error-screen p{max-width:560px;color:var(--color-text-muted,#cbd5e1)}.session-error-screen button{min-width:120px;min-height:var(--tap-target-min,44px);background:var(--color-accent,#60a5fa);color:var(--text-on-accent);font:inherit;cursor:pointer;border:0;border-radius:8px;padding:10px 18px;font-weight:700}.session-error-screen button:focus-visible{outline-offset:3px;outline:3px solid #fff}.session-degraded-banner{z-index:5200;right:16px;bottom:max(16px, env(safe-area-inset-bottom,0px));color:#fff1c2;pointer-events:none;background:#2a210e;border:1px solid #f59e0b;border-radius:8px;align-items:center;gap:12px;width:min(520px,100vw - 32px);padding:10px 12px;font-size:.86rem;line-height:1.35;display:flex;position:fixed;box-shadow:0 10px 28px #00000061}.session-degraded-banner span{flex:auto}.session-degraded-banner-actions{pointer-events:auto;flex:none;align-items:center;gap:7px;display:flex}.session-degraded-banner button{min-height:34px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid #fbbf24;border-radius:6px;flex:none;padding:6px 12px;font-weight:700}.session-degraded-banner button:disabled{cursor:wait;opacity:.65}.session-degraded-banner button:focus-visible{outline-offset:2px;outline:2px solid #fff}.user-context-launch-notice{z-index:5000;color:#fff1c2;background:#2a210e;border:1px solid #fbbf2485;border-radius:10px;align-items:flex-start;gap:12px;width:min(460px,100vw - 32px);padding:12px;font-size:.88rem;line-height:1.4;display:flex;position:fixed;top:16px;right:16px;box-shadow:0 12px 28px #00000059}.user-context-launch-notice button{min-height:30px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid #ffecb37a;border-radius:6px;flex:none;padding:5px 8px;font-size:.78rem;font-weight:700}.user-context-launch-notice button:focus-visible{outline-offset:2px;outline:2px solid #fde68a}@media (max-width:520px){.session-degraded-banner{right:10px;bottom:max(10px, env(safe-area-inset-bottom,0px));flex-direction:column;align-items:flex-start;width:calc(100vw - 20px);font-size:.8rem}.session-degraded-banner-actions{flex-wrap:wrap;justify-content:flex-end;align-self:flex-end}.user-context-launch-notice{width:calc(100vw - 20px);top:10px;right:10px}}
