:root,:host{--ol-background-color:white;--ol-accent-background-color:#f5f5f5;--ol-subtle-background-color:#80808040;--ol-partial-background-color:#ffffffbf;--ol-foreground-color:#333;--ol-subtle-foreground-color:#666;--ol-brand-color:#0af}.ol-box{box-sizing:border-box;border:1.5px solid var(--ol-background-color);background-color:var(--ol-partial-background-color);border-radius:2px}.ol-mouse-position{position:absolute;top:8px;right:8px}.ol-scale-line{background:var(--ol-partial-background-color);border-radius:4px;padding:2px;position:absolute;bottom:8px;left:8px}.ol-scale-line-inner{border:1px solid var(--ol-subtle-foreground-color);color:var(--ol-foreground-color);text-align:center;will-change:contents, width;border-top:none;margin:1px;font-size:10px;transition:all .25s}.ol-scale-bar{position:absolute;bottom:8px;left:8px}.ol-scale-bar-inner{display:flex}.ol-scale-step-marker{background-color:var(--ol-foreground-color);float:right;z-index:10;width:1px;height:15px}.ol-scale-step-text{z-index:11;color:var(--ol-foreground-color);text-shadow:-1.5px 0 var(--ol-partial-background-color), 0 1.5px var(--ol-partial-background-color), 1.5px 0 var(--ol-partial-background-color), 0 -1.5px var(--ol-partial-background-color);font-size:10px;position:absolute;bottom:-5px}.ol-scale-text{text-align:center;color:var(--ol-foreground-color);text-shadow:-1.5px 0 var(--ol-partial-background-color), 0 1.5px var(--ol-partial-background-color), 1.5px 0 var(--ol-partial-background-color), 0 -1.5px var(--ol-partial-background-color);font-size:12px;position:absolute;bottom:25px}.ol-scale-singlebar{z-index:9;box-sizing:border-box;border:1px solid var(--ol-foreground-color);height:10px;position:relative}.ol-scale-singlebar-even{background-color:var(--ol-subtle-foreground-color)}.ol-scale-singlebar-odd{background-color:var(--ol-background-color)}.ol-unsupported{display:none}.ol-viewport,.ol-unselectable{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.ol-viewport canvas{all:unset;overflow:hidden}.ol-viewport{touch-action:pan-x pan-y}.ol-selectable{-webkit-touch-callout:default;-webkit-user-select:text;user-select:text}.ol-grabbing{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.ol-grab{cursor:move;cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.ol-control{background-color:var(--ol-subtle-background-color);border-radius:4px;position:absolute}.ol-zoom{top:.5em;left:.5em}.ol-rotate{transition:opacity .25s linear,visibility linear;top:.5em;right:.5em}.ol-rotate.ol-hidden{opacity:0;visibility:hidden;transition:opacity .25s linear,visibility 0s linear .25s}.ol-zoom-extent{top:4.643em;left:.5em}.ol-full-screen{top:.5em;right:.5em}.ol-control button{color:var(--ol-subtle-foreground-color);font-weight:700;font-size:inherit;text-align:center;background-color:var(--ol-background-color);border:none;border-radius:2px;width:1.375em;height:1.375em;margin:1px;padding:0;line-height:.4em;text-decoration:none;display:block}.ol-control button::-moz-focus-inner{border:none;padding:0}.ol-zoom-extent button{line-height:1.4em}.ol-compass{will-change:transform;font-weight:400;display:block}.ol-touch .ol-control button{font-size:1.5em}.ol-touch .ol-zoom-extent{top:5.5em}.ol-control button:hover,.ol-control button:focus{outline:1px solid var(--ol-subtle-foreground-color);color:var(--ol-foreground-color);text-decoration:none}.ol-zoom .ol-zoom-in{border-radius:2px 2px 0 0}.ol-zoom .ol-zoom-out{border-radius:0 0 2px 2px}.ol-attribution{text-align:right;flex-flow:row-reverse;align-items:center;max-width:calc(100% - 1.3em);display:flex;bottom:.5em;right:.5em}.ol-attribution a{color:var(--ol-subtle-foreground-color);text-decoration:none}.ol-attribution ul{color:var(--ol-foreground-color);text-shadow:0 0 2px var(--ol-background-color);margin:0;padding:1px .5em;font-size:12px}.ol-attribution li{list-style:none;display:inline}.ol-attribution li:not(:last-child):after{content:" "}.ol-attribution img{max-height:2em;max-width:inherit;vertical-align:middle}.ol-attribution button{flex-shrink:0}.ol-attribution.ol-collapsed ul{display:none}.ol-attribution:not(.ol-collapsed){background:var(--ol-partial-background-color)}.ol-attribution.ol-uncollapsible{border-radius:4px 0 0;bottom:0;right:0}.ol-attribution.ol-uncollapsible img{max-height:1.6em;margin-top:-.2em}.ol-attribution.ol-uncollapsible button{display:none}.ol-zoomslider{height:200px;top:4.5em;left:.5em}.ol-zoomslider button{height:10px;position:relative}.ol-touch .ol-zoomslider{top:5.5em}.ol-overviewmap{bottom:.5em;left:.5em}.ol-overviewmap.ol-uncollapsible{border-radius:0 4px 0 0;bottom:0;left:0}.ol-overviewmap .ol-overviewmap-map,.ol-overviewmap button{display:block}.ol-overviewmap .ol-overviewmap-map{border:1px solid var(--ol-subtle-foreground-color);width:150px;height:150px}.ol-overviewmap:not(.ol-collapsed) button{position:absolute;bottom:0;left:0}.ol-overviewmap.ol-collapsed .ol-overviewmap-map,.ol-overviewmap.ol-uncollapsible button{display:none}.ol-overviewmap:not(.ol-collapsed){background:var(--ol-subtle-background-color)}.ol-overviewmap-box{border:1.5px dotted var(--ol-subtle-foreground-color)}.ol-overviewmap .ol-overviewmap-box:hover{cursor:move}.ol-overviewmap .ol-viewport:hover{cursor:pointer}:root{--ink:#16222c;--ink-soft:#5a6873;--ink-faint:#8d99a3;--paper-ink:#16222c;--paper-veil:#ffffffe6;--accent:#1769e0;--accent-strong:#1259c6;--accent-tint:color-mix(in srgb, var(--accent) 10%, transparent);--accent-tint-strong:color-mix(in srgb, var(--accent) 16%, transparent);--on-fill:#fff;--route:#d52b1e;--danger:#b3261e;--danger-bright:#ff6a5e;--positive:#16794b;--trail-hiking:#dda200;--trail-mountain:#e0201b;--trail-alpine:#1b4fd8;--trail-unmarked:#8d99a3;--sky-sun:#e09600;--sky-cloud:#6f7d88;--sky-rain:#1f74c4;--sky-snow:#4c9fdb;--sky-lightning:#d97706;--effort-low:#16794b;--effort-medium:#a77410;--effort-high:#c2560f;--effort-extreme:#b3261e;--surface-rest:#ffffffc2;--surface-hover:#ffffffeb;--surface-raised:#fffffff0;--surface-solid:#fff;--surface-dark:#121a21eb;--ink-disabled:#b3bcc3;--toggle-track:#c2c9ce;--toggle-knob:#fff;--notice-border:#be80003d;--notice-surface:#fff6da99;--marker-neutral:#46545f;--marker-finish:var(--route);--hairline:color-mix(in srgb, var(--ink) 8%, transparent);--hairline-strong:color-mix(in srgb, var(--ink) 13%, transparent);--shadow-resting:0 1px 2px #101b240f, 0 2px 10px #101b2414;--shadow-raised:0 1px 3px #101b2414, 0 8px 24px #101b2424;--shadow-floating:0 2px 6px #101b241a, 0 18px 44px #101b2433;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--glass-blur:saturate(1.5) blur(14px);--motion:.16s cubic-bezier(.2, .7, .3, 1);--control-size:2.75rem;--control-padding:.2rem;--control-gap:.75rem;--weather-strip-height:9.25rem;--ambient-surface:#ffffffd1;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--ink);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#eef2f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--ink:#e9eff4;--ink-soft:#a9b8c4;--ink-faint:#7f8f9c;--ink-disabled:#55636e;--accent:#5fa2ff;--accent-strong:#85b8ff;--accent-tint:color-mix(in srgb, var(--accent) 18%, transparent);--accent-tint-strong:color-mix(in srgb, var(--accent) 28%, transparent);--on-fill:#0b1420;--danger:#ff7d70;--positive:#4cc38a;--trail-hiking:#f0bb33;--trail-mountain:#ff6257;--trail-alpine:#7d9dff;--sky-sun:#f5b73c;--sky-cloud:#9fb0bd;--sky-rain:#5fa2ff;--sky-snow:#8ec6f5;--sky-lightning:#f5a524;--effort-low:#4cc38a;--effort-medium:#e0a83c;--effort-high:#f5904d;--effort-extreme:#ff6a5e;--surface-rest:#141d26d6;--surface-hover:#141d26eb;--surface-raised:#141d26f0;--surface-solid:#18222c;--surface-dark:#080d12f0;--toggle-track:#45566a;--toggle-knob:#dfe8ee;--notice-border:#f0bb334d;--notice-surface:#4838108c;--marker-neutral:#7d92a3;--marker-finish:#ff6257;--ambient-surface:#141d26e0}}@media (hover:hover) and (pointer:fine){:root{--ambient-surface:#ffffffb3}}@media (prefers-color-scheme:dark) and (hover:hover) and (pointer:fine){:root{--ambient-surface:#141d26cc}}@media (prefers-reduced-transparency:reduce){:root{--ambient-surface:var(--surface-solid);--surface-rest:var(--surface-solid);--surface-hover:var(--surface-solid);--surface-raised:var(--surface-solid);--surface-dark:#121a21;--paper-veil:#fff;--glass-blur:none}}@media (prefers-contrast:more){:root{--ambient-surface:var(--surface-solid);--ink-soft:#3d4a55;--ink-faint:#55636e;--surface-rest:var(--surface-solid);--surface-hover:var(--surface-solid);--surface-raised:var(--surface-solid);--paper-veil:#fff;--hairline:color-mix(in srgb, var(--ink) 22%, transparent);--hairline-strong:color-mix(in srgb, var(--ink) 34%, transparent)}}@media (prefers-color-scheme:dark) and (prefers-contrast:more){:root{--ink-soft:#c8d5df;--ink-faint:#a4b3bf}}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}body{overscroll-behavior:none;overflow:hidden}button,input,select{font:inherit}:where(button,select,a,input,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.visually-hidden,.route-stage-legs-unit-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.route-statistics-label,.map-layers-section-title,.route-elevation-profile-header .route-elevation-profile-title,.route-elevation-profile-header strong,.route-stage-legs-header strong,.public-transport-departures h2{color:var(--ink-faint);letter-spacing:.09em;text-transform:uppercase;font-size:.68rem;font-weight:700}.app{touch-action:pan-x pan-y;background:#eef2f4;width:100%;height:100%;position:relative}.app:fullscreen{width:100vw;height:100vh}.map{touch-action:none;background:#e7ecef;position:absolute;inset:0}.map--aerial-fusion .viatopo-cartography{mix-blend-mode:multiply}.app--route-creation .map,.app--route-creation .ol-viewport{cursor:crosshair}.app--route-creation .map--route-waypoint-hover,.app--route-creation .map--route-waypoint-hover .ol-viewport,.app--route-creation .map--route-segment-hover,.app--route-creation .map--route-segment-hover .ol-viewport{cursor:pointer}.app--route-creation .map--route-edit-dragging,.app--route-creation .map--route-edit-dragging .ol-viewport{cursor:grabbing}.app--route-busy .map,.app--route-busy .ol-viewport{cursor:progress}.map-controls{z-index:20;align-items:flex-end;gap:var(--control-gap);pointer-events:none;flex-direction:column;display:flex;position:absolute;top:1rem;right:1rem}.map-controls .map-control-stack,.map-controls .location-message,.map-controls button,.map-controls select{pointer-events:auto}.map-control-stack,.map-control-button--route-toggle{border:1px solid var(--hairline);border-radius:var(--radius-lg);background:var(--surface-rest);box-shadow:var(--shadow-resting);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);transition:opacity var(--motion), background var(--motion), box-shadow var(--motion)}.map-control-stack{padding:var(--control-padding);flex-direction:column;align-items:center;gap:.1rem;display:flex}.map-control-stack:hover,.map-control-stack:focus-within,.map-control-button--route-toggle:hover{background:var(--surface-hover);box-shadow:var(--shadow-raised)}.map-control-stack--ambient{--glyph:var(--ink-soft);--stack-rule:var(--hairline);border-color:var(--hairline);background:var(--ambient-surface);box-shadow:var(--shadow-resting)}.map-controls:hover .map-control-stack--ambient,.map-control-stack--ambient:hover,.map-control-stack--ambient:focus-within{--glyph:var(--ink);--stack-rule:var(--hairline-strong);border-color:var(--hairline-strong);background:var(--surface-hover);box-shadow:var(--shadow-raised)}.map-control-stack-divider{background:var(--stack-rule,var(--hairline-strong));width:calc(100% - .5rem);height:1px;transition:background var(--motion);border:0;flex:none;margin:.15rem 0}.map-control-button{width:var(--control-size);height:var(--control-size);border-radius:var(--radius-md);color:var(--glyph,var(--ink));cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--motion), background var(--motion);background:0 0;border:0;place-items:center;padding:0;display:grid}.map-control-button:hover{background:var(--accent-tint)}.map-control-button:active{background:var(--accent-tint-strong)}.map-control-button:disabled{color:var(--ink-disabled);cursor:not-allowed}.map-control-button:disabled:hover{background:0 0}.map-control-button--location:disabled{cursor:wait}.map-control-button--zoom{font-size:1.6rem;font-weight:300;line-height:1}.map-control-button--compass{animation:compass-appear var(--motion) both}.map-control-button--compass svg{transform-origin:50%}.map-control-button--compass circle{stroke:var(--hairline-strong);stroke-width:1.4px}.compass-needle-north{fill:currentColor;stroke:none}.compass-needle-south{fill:none;stroke:currentColor;stroke-width:1.3px;opacity:.45}@keyframes compass-appear{0%{opacity:0;scale:.8}to{opacity:1;scale:1}}.map-control-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:1.4rem;height:1.4rem}.map-control-button--location .location-icon-center{fill:currentColor;stroke:none}.map-control-button--route-toggle{border-radius:var(--radius-lg);background:var(--surface-rest);width:3.05rem;height:3.05rem;position:relative}.map-control-button--route-toggle:hover{background:var(--surface-hover)}.map-control-button--route-toggle svg{width:1.6rem;height:1.6rem}.map-control-button--route-toggle .route-icon-line{stroke-width:2px}.map-control-button--route-active,.map-control-button--menu-open{color:var(--on-fill);background:var(--accent)}.map-control-button--route-active:hover,.map-control-button--menu-open:hover,.map-control-button--route-active:active,.map-control-button--menu-open:active{background:var(--accent-strong)}.map-control-button--active{color:var(--accent);background:var(--accent-tint)}.map-control-button--route-loading:after{content:"";border:2px solid;border-right-color:#0000;border-radius:50%;width:.68rem;height:.68rem;animation:.7s linear infinite route-loading-spin;position:absolute;bottom:.3rem;right:.3rem}@keyframes route-loading-spin{to{transform:rotate(360deg)}}.map-control-button--route-action.map-control-button--route-active:disabled,.map-control-button--route-action.map-control-button--route-active:disabled:hover{color:var(--on-fill);background:var(--accent);cursor:default;opacity:1}.map-control-button--offline{border:1px solid var(--hairline);border-radius:var(--radius-lg);background:var(--surface-rest);width:3.05rem;height:3.05rem;box-shadow:var(--shadow-resting);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);position:relative}.map-control-button--offline:hover{background:var(--surface-hover);box-shadow:var(--shadow-raised)}.map-control-button--offline svg{width:1.6rem;height:1.6rem}.map-control-button--offline:before{background:conic-gradient(currentcolor calc(var(--offline-progress,0) * 360deg), transparent 0);content:"";opacity:0;transition:opacity var(--motion);border-radius:50%;position:absolute;inset:.18rem;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 2px),#000 calc(100% - 2px));mask:radial-gradient(farthest-side,#0000 calc(100% - 2px),#000 calc(100% - 2px))}.map-control-button--offline-preparing{color:var(--accent)}.map-control-button--offline-preparing:before{opacity:1}.map-control-button--offline-ready{color:var(--positive);background:color-mix(in srgb, var(--positive) 14%, var(--surface-rest))}.map-control-button--offline-ready:hover{background:color-mix(in srgb, var(--positive) 20%, var(--surface-hover))}.map-control-button--offline-unavailable{color:var(--effort-medium)}.map-control-button--offline .offline-icon-mark{stroke-width:2.1px}.route-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.55rem;display:flex}.route-action-controls{flex-flow:wrap;justify-content:flex-end;align-items:center;gap:.1rem;max-width:min(29rem,100vw - 6rem);animation:.18s cubic-bezier(.2,.7,.3,1) route-strip-appear;display:flex}@keyframes route-strip-appear{0%{opacity:0;transform:translate(.5rem)}}.route-import-control,.map-layers-selector{display:flex;position:relative}.map-layers-menu{border:1px solid var(--hairline);border-radius:var(--radius-lg);background:var(--surface-raised);width:15rem;box-shadow:var(--shadow-floating);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);padding:.4rem;animation:.15s cubic-bezier(.2,.7,.3,1) panel-appear;position:absolute;top:-.2rem;right:calc(100% + .6rem);overflow:hidden}@keyframes panel-appear{0%{opacity:0;transform:translateY(-.25rem)}}.map-layers-section{margin:0;padding:0}.map-layers-section--overlays{border-top:1px solid var(--hairline);margin-top:.35rem;padding-top:.35rem}.map-layers-section-title{margin:0;padding:.4rem .5rem .3rem}.map-layer-option{border-radius:var(--radius-sm);width:100%;min-height:2.6rem;color:var(--ink);cursor:pointer;text-align:left;transition:background var(--motion);background:0 0;border:0;grid-template-columns:2.15rem minmax(0,1fr) 1.75rem;align-items:center;gap:.65rem;padding:.35rem .5rem;display:grid}.map-layer-option:hover{background:var(--accent-tint)}.map-layer-option--selected{background:var(--accent-tint);font-weight:600}.map-layer-option--overlay{grid-template-columns:minmax(0,1fr) 1.75rem;min-height:2.85rem}.map-layer-option--overlay.map-layer-option--selected{background:0 0}.map-layer-option--overlay.map-layer-option--selected:hover{background:var(--accent-tint)}.map-layer-option--overlay:not(.map-layer-option--selected){color:var(--ink-soft)}.base-map-option-preview{border:1px solid var(--hairline-strong);background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:5px;width:2.15rem;height:1.6rem}.base-map-option-preview--color{background-image:url(/base-map-previews/color.png)}.base-map-option-preview--gray{background-image:url(/base-map-previews/gray.png)}.base-map-option-preview--aerial{background-image:url(/base-map-previews/aerial.png)}.base-map-option-preview--openTopo{background-image:url(/base-map-previews/open-topo.png)}.map-layers-aerial-imagery{border-top:1px solid var(--hairline);margin-top:.35rem;padding-top:.35rem}.map-layer-option-beta{background:var(--accent-tint-strong);color:var(--accent);letter-spacing:.05em;text-transform:uppercase;vertical-align:.05em;border-radius:.25rem;margin-left:.35rem;padding:.05rem .3rem;font-size:.6rem;font-weight:600;line-height:1.4;display:inline-block}.map-layer-fusion{grid-template-columns:repeat(3,minmax(0,1fr));gap:.2rem;padding:0 .5rem .4rem;display:grid}.map-layer-fusion-label{color:var(--ink-soft);grid-column:1/-1;margin:0 0 .1rem;font-size:.8rem}.map-layer-fusion-option{border:1px solid var(--hairline);color:var(--ink-soft);font:inherit;text-align:center;cursor:pointer;transition:background var(--motion), border-color var(--motion), color var(--motion);background:0 0;border-radius:.4rem;padding:.3rem .2rem;font-size:.75rem;line-height:1.2}.map-layer-fusion-option:hover{background:var(--surface-hover)}.map-layer-fusion-option--selected{border-color:var(--accent);background:var(--accent-tint);color:var(--ink)}.map-layer-opacity{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.15rem .65rem;padding:0 .5rem .4rem;display:grid}.map-layer-opacity-label,.map-layer-opacity-value{color:var(--ink-soft);font-size:.8rem}.map-layer-opacity-value{font-variant-numeric:tabular-nums;text-align:right}.map-layer-opacity-slider{width:100%;accent-color:var(--accent);cursor:pointer;touch-action:none;background:0 0;grid-column:1/-1;margin:.1rem 0 0}.map-layer-option-check{fill:none;width:1.15rem;height:1.15rem;stroke:var(--accent);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4px;justify-self:center}.map-layer-option-toggle{background:var(--toggle-track);width:1.75rem;height:1rem;transition:background var(--motion);border-radius:999px;justify-self:center;position:relative}.map-layer-option-toggle span{background:var(--toggle-knob);width:.75rem;height:.75rem;transition:transform var(--motion);border-radius:50%;position:absolute;top:.125rem;left:.125rem;box-shadow:0 1px 3px #00000040}.map-layer-option-toggle--checked{background:var(--accent)}.map-layer-option-toggle--checked span{transform:translate(.75rem)}.map-header{z-index:20;align-items:flex-start;gap:.6rem;max-width:calc(100vw - 8rem);display:flex;position:absolute;top:1rem;left:1rem}.app-brand-menu{flex:none;display:flex;position:relative}.app-brand{height:var(--control-size);border:1px solid var(--hairline);border-radius:var(--radius-lg);background:var(--surface-rest);box-shadow:var(--shadow-resting);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);color:inherit;cursor:pointer;font:inherit;transition:background var(--motion);-webkit-user-select:none;user-select:none;flex:none;align-items:center;gap:.45rem;padding:0 .9rem;display:flex}.app-brand:hover{background:var(--surface-hover)}.app-brand:active{background:var(--accent-tint)}.app-brand-mark{flex:none;width:1.4rem;height:1.4rem}.app-brand-contour{fill:none;stroke:var(--ink-faint);stroke-linecap:round;stroke-width:2.7px}.app-brand-peak{fill:var(--ink)}.app-brand-word{color:var(--ink);letter-spacing:-.015em;white-space:nowrap;font-size:1.02rem;font-weight:640;line-height:1}.app-brand-word-prefix{color:var(--ink-soft);font-weight:450}.app-brand-caret{fill:none;width:.85rem;height:.85rem;stroke:var(--ink-faint);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.2px;transition:rotate var(--motion);flex:none;margin-left:-.15rem}.app-brand--menu-open .app-brand-caret{rotate:180deg}.app-brand--menu-open{background:var(--surface-hover)}.app-menu{z-index:1;border:1px solid var(--hairline);border-radius:var(--radius-lg);background:var(--surface-raised);width:12.5rem;box-shadow:var(--shadow-floating);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);padding:.4rem;animation:.15s cubic-bezier(.2,.7,.3,1) panel-appear;position:absolute;top:calc(100% + .45rem);left:0;overflow:hidden}.app-menu-languages{grid-template-columns:repeat(4,minmax(0,1fr));gap:.2rem;display:grid}.app-menu-language{border-radius:var(--radius-sm);min-height:2.1rem;color:var(--ink-soft);cursor:pointer;font:inherit;letter-spacing:.04em;transition:color var(--motion), background var(--motion), border-color var(--motion);background:0 0;border:1px solid #0000;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;padding:.3rem .1rem;font-size:.68rem;font-weight:700;display:flex}.app-menu-language:hover{color:var(--ink);background:var(--accent-tint)}.app-menu-language--selected{border-color:var(--accent);color:var(--ink);background:var(--accent-tint)}.app-menu-flag{flex:none;width:1.25rem;height:.875rem}.app-menu-flag-edge{fill:none;stroke:var(--hairline-strong);stroke-width:.8px}.app-menu-section{margin:0;padding:0}.app-menu-section--actions{border-top:1px solid var(--hairline);margin-top:.35rem;padding-top:.35rem}.app-menu-option{border-radius:var(--radius-sm);width:100%;min-height:2.35rem;color:var(--ink-soft);cursor:pointer;font:inherit;text-align:left;transition:color var(--motion), background var(--motion);background:0 0;border:0;grid-template-columns:1.35rem minmax(0,1fr);align-items:center;gap:.6rem;padding:.35rem .5rem;font-size:.92rem;text-decoration:none;display:grid}.app-menu-option:hover{color:var(--ink);background:var(--accent-tint)}.app-menu-option-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:1.15rem;height:1.15rem}.location-search{width:min(22rem,100%);min-width:0;position:relative}.location-search-field{height:var(--control-size);border:1px solid var(--hairline);border-radius:var(--radius-lg);background:var(--surface-rest);box-shadow:var(--shadow-resting);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);transition:background var(--motion), box-shadow var(--motion), border-color var(--motion);align-items:center;display:flex}.location-search-field:hover{background:var(--surface-hover)}.location-search-field:focus-within{border-color:color-mix(in srgb, var(--accent) 45%, transparent);background:var(--surface-raised);box-shadow:var(--shadow-raised), 0 0 0 3px var(--accent-tint)}.location-search-icon{fill:none;width:1.2rem;height:1.2rem;stroke:var(--ink-faint);stroke-linecap:round;stroke-width:2px;transition:stroke var(--motion);flex:none;margin-left:.8rem}.location-search-field:focus-within .location-search-icon{stroke:var(--accent)}.location-search input{min-width:0;height:100%;color:var(--ink);background:0 0;border:0;outline:0;flex:1;padding:0 .7rem;font-size:.95rem}.location-search input::placeholder{color:var(--ink-soft)}.location-search input::-webkit-search-cancel-button{display:none}.location-search-clear{border-radius:0 var(--radius-lg) var(--radius-lg) 0;width:2.4rem;height:100%;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;font-size:1.45rem;line-height:1;display:grid}.location-search-clear:hover{color:var(--ink);background:var(--accent-tint)}.location-search-panel{border:1px solid var(--hairline);border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-floating);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);margin-top:.4rem;animation:.15s cubic-bezier(.2,.7,.3,1) panel-appear;overflow:hidden}.location-search-results{max-height:min(24rem,100vh - 6rem);margin:0;padding:.3rem;list-style:none;overflow-y:auto}.location-search-result{border-radius:var(--radius-sm);width:100%;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:.7rem;padding:.6rem .65rem;display:flex}.location-search-result:hover,.location-search-result--active{background:var(--accent-tint)}.location-search-result-icon{fill:none;width:1.3rem;height:1.3rem;stroke:var(--ink-faint);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;flex:none}.location-search-result--active .location-search-result-icon,.location-search-result:hover .location-search-result-icon{stroke:var(--accent)}.location-search-result-text{flex-direction:column;gap:.1rem;min-width:0;display:flex}.location-search-result-text strong{text-overflow:ellipsis;white-space:nowrap;font-size:.98rem;font-weight:600;overflow:hidden}.location-search-result-text span{color:var(--ink-faint);font-size:.78rem}.location-search-status{color:var(--ink-soft);padding:.85rem .95rem;font-size:.88rem}.location-search-status--error{color:var(--danger)}.tooltip,.route-context-hint,.route-message,.location-message{color:#f2f5f7;background:var(--surface-dark);box-shadow:var(--shadow-raised);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:.82rem;line-height:1.35}.route-context-hint{z-index:24;border-radius:var(--radius-sm);pointer-events:none;text-align:center;max-width:min(24rem,100vw - 1.5rem);padding:.4rem .65rem;position:absolute;transform:translate(-50%,calc(-100% - .75rem))}.route-context-hint--below{transform:translate(-50%,.75rem)}.tooltip{z-index:40;border-radius:var(--radius-sm);pointer-events:none;text-align:center;text-wrap:balance;visibility:hidden;max-width:min(15rem,100vw - 2rem);padding:.35rem .6rem;position:fixed}.tooltip--left{--tooltip-entry-x:.3rem}.tooltip--right{--tooltip-entry-x:-.3rem}.tooltip--top{--tooltip-entry-y:.3rem}.tooltip--bottom{--tooltip-entry-y:-.3rem}.tooltip--placed{visibility:visible;animation:.12s cubic-bezier(.2,.7,.3,1) tooltip-appear}@keyframes tooltip-appear{0%{opacity:0;transform:translate(var(--tooltip-entry-x,0), var(--tooltip-entry-y,0))}}.route-message{z-index:22;border-radius:var(--radius-md);text-align:center;width:max-content;max-width:min(34rem,100vw - 2rem);padding:.6rem .9rem;animation:.18s cubic-bezier(.2,.7,.3,1) message-appear;position:absolute;top:4.75rem;left:50%;transform:translate(-50%)}@keyframes message-appear{0%{opacity:0;transform:translate(-50%)translateY(-.35rem)}}.route-message--error,.location-message--error{color:var(--danger-bright)}.location-message{border-radius:var(--radius-md);text-align:right;max-width:min(17rem,100vw - 5.5rem);padding:.55rem .75rem}.route-tool-group{position:relative}.install-invitation{top:calc(100% + var(--control-gap));right:calc(var(--control-size) + 1rem);border:1px solid var(--hairline);border-radius:var(--radius-lg);width:min(23rem,100vw - 5.5rem);color:var(--ink);background:var(--surface-raised);box-shadow:var(--shadow-raised);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);pointer-events:auto;grid-template-columns:1fr auto;align-items:center;gap:.35rem .6rem;padding:.8rem .9rem .9rem;animation:.16s cubic-bezier(.2,.7,.3,1) panel-appear;display:grid;position:absolute}.install-invitation-title{letter-spacing:-.01em;margin:0;font-size:.98rem;font-weight:650;line-height:1.25}.install-invitation-close{border-radius:var(--radius-sm);width:2rem;height:2rem;color:var(--ink-faint);cursor:pointer;transition:color var(--motion), background var(--motion);background:0 0;border:0;place-items:center;padding:0;font-size:1.5rem;line-height:1;display:grid}.install-invitation-close:hover{color:var(--ink);background:color-mix(in srgb, var(--ink) 6%, transparent)}.install-invitation-body{color:var(--ink-soft);grid-column:1/-1;margin:0;font-size:.85rem;line-height:1.45}.install-invitation-share{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;vertical-align:-.15em;width:1em;height:1em;margin-right:.3em}.install-invitation-action{border:1px solid var(--accent);border-radius:var(--radius-md);height:2.4rem;color:var(--on-fill);background:var(--accent);cursor:pointer;font:inherit;transition:background var(--motion), border-color var(--motion);grid-column:1/-1;justify-self:end;margin-top:.15rem;padding:0 1.1rem;font-weight:600}.install-invitation-action:hover{border-color:var(--accent-strong);background:var(--accent-strong)}.map-context-menu{z-index:32;border:1px solid var(--hairline);border-radius:var(--radius-md);max-width:min(24rem,100vw - 1rem);color:var(--ink);background:var(--surface-raised);box-shadow:var(--shadow-floating);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);padding:.3rem;animation:.12s cubic-bezier(.2,.7,.3,1) panel-appear;position:absolute;top:0;left:0}.map-context-menu:focus-visible{outline:none}.map-context-menu-position{flex-wrap:wrap;align-items:center;gap:.2rem;padding:.1rem .1rem .2rem;display:flex}.map-context-menu-format{border-radius:var(--radius-sm);color:var(--ink-faint);cursor:pointer;appearance:none;letter-spacing:.02em;transition:color var(--motion), background var(--motion);background:0 0;border:0;outline:0;padding:.2rem .35rem;font-size:.72rem;font-weight:600}.map-context-menu-format:hover{color:var(--ink-soft);background:var(--accent-tint)}.map-context-menu-copy{border-radius:var(--radius-sm);min-width:0;color:var(--ink-soft);cursor:pointer;transition:background var(--motion);background:0 0;border:0;flex:auto;justify-content:space-between;align-items:center;gap:.5rem;padding:.25rem .4rem;font-size:.78rem;display:flex}.map-context-menu-copy:hover,.map-context-menu-copy:focus-visible{background:var(--accent-tint)}.map-context-menu-coordinates{font-variant-numeric:tabular-nums;white-space:nowrap}.map-context-menu-copy svg{fill:none;width:1rem;height:1rem;stroke:var(--ink-faint);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;flex:none}.map-context-menu-copy:hover svg{stroke:var(--accent)}.map-context-menu-copy svg .map-context-menu-check,.map-context-menu-copy:hover svg .map-context-menu-check{stroke:var(--positive);stroke-width:2.2px}.map-context-menu-error{color:var(--danger);margin:0;padding:.1rem .5rem .35rem;font-size:.76rem}.map-context-menu-item{border-radius:var(--radius-sm);color:var(--ink);white-space:nowrap;transition:background var(--motion);align-items:center;gap:.6rem;padding:.5rem .6rem;font-size:.9rem;text-decoration:none;display:flex}.map-context-menu-item:hover,.map-context-menu-item:focus-visible{background:var(--accent-tint)}.map-context-menu-item svg{fill:none;width:1.15rem;height:1.15rem;stroke:var(--ink-faint);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;flex:none}.map-context-menu-item:hover svg,.map-context-menu-item:focus-visible svg{stroke:var(--accent)}.map-information-popup{z-index:30;border:1px solid var(--hairline);border-radius:var(--radius-lg);width:min(23rem,100vw - 2rem);max-height:calc(100vh - 6rem);color:var(--ink);background:var(--surface-raised);box-shadow:var(--shadow-floating);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);animation:.16s cubic-bezier(.2,.7,.3,1) panel-appear;position:absolute;top:5rem;left:1rem;overflow:hidden}.map-information-popup-header{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:center;gap:1rem;min-height:3rem;padding:.7rem .7rem .7rem 1rem;font-size:.98rem;font-weight:600;display:flex}.map-information-popup-close{border-radius:var(--radius-sm);width:2.1rem;height:2.1rem;color:var(--ink-faint);cursor:pointer;transition:color var(--motion), background var(--motion);background:0 0;border:0;flex:none;place-items:center;padding:0;font-size:1.6rem;font-weight:300;line-height:1;display:grid}.map-information-popup-close:hover{color:var(--danger);background:color-mix(in srgb, var(--danger) 9%, transparent)}.map-information-popup-body{overscroll-behavior:contain;max-height:calc(100vh - 9rem);padding:1rem;font-size:.9rem;line-height:1.5;overflow-y:auto}.map-information-popup-body>p{color:var(--ink-soft);margin:0}.map-information-popup-error{color:var(--danger)!important}.map-information-popup-content .htmlpopup-header{margin-bottom:.85rem;font-size:1.02rem;font-weight:700;line-height:1.35}.map-information-popup-content table{border-collapse:collapse;width:100%}.map-information-popup-content td,.map-information-popup-content th{vertical-align:top;border-bottom:1px solid var(--hairline);text-align:left;padding:.45rem 0}.map-information-popup-content .cell-left,.map-information-popup-content th{width:38%;color:var(--ink-soft);padding-right:.8rem;font-weight:600}.map-information-popup-content p:first-child,.map-information-popup-content div:first-child{margin-top:0}.map-information-popup-content p:last-child,.map-information-popup-content div:last-child{margin-bottom:0}.map-information-popup-content a{color:var(--accent);text-underline-offset:2px;text-decoration-thickness:1px}.map-information-popup-content img{max-width:100%;height:auto}.public-transport-stop-popup{width:fit-content;min-width:23rem;max-width:min(29rem,100vw - 2rem)}.public-transport-stop-popup .map-information-popup-header{contain:inline-size;align-items:flex-start}.public-transport-stop-heading{flex-direction:column;gap:.4rem;min-width:0;line-height:1.35;display:flex}.public-transport-stop-heading strong{overflow-wrap:anywhere;font-weight:700}.public-transport-stop-modes{flex-wrap:wrap;gap:.3rem;display:flex}.public-transport-stop-modes img{flex:none;width:1.25rem;height:1.25rem}.public-transport-departures{margin-bottom:1rem}.public-transport-departures h2{margin:0 0 .5rem}.public-transport-departures-status{color:var(--ink-soft);margin:0}.public-transport-departure-groups{flex-direction:column;gap:.75rem;display:flex}.public-transport-departure-group h3{color:var(--ink);margin:0;font-size:.86rem;font-weight:700;line-height:1.35}.public-transport-departure-list{grid-template-columns:max-content minmax(0,1fr) 3.15rem;column-gap:.35rem;margin:.25rem 0 0;padding:0 .75rem 0 0;list-style:none;display:grid}.public-transport-departure-list--with-delay{grid-template-columns:max-content minmax(0,1fr) 3.15rem 3.5rem}.public-transport-departure-list li{grid-column:1/-1;grid-template-columns:subgrid;border-bottom:1px solid var(--hairline);align-items:center;min-height:2.6rem;display:grid}.public-transport-departure-list li:first-child{border-top:1px solid var(--hairline)}.public-transport-departure-line{box-sizing:border-box;min-width:3.5rem;max-width:5.5rem;color:var(--ink);background:var(--accent-tint);text-align:center;text-overflow:ellipsis;white-space:nowrap;border-radius:5px;padding:.2rem .4rem;font-size:.82rem;font-weight:700;overflow:hidden}.public-transport-departure-destination{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-left:.15rem;font-weight:600;overflow:hidden}.public-transport-departure-time{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;font-weight:700}.public-transport-departure-time--delayed,.public-transport-departure-delay{color:var(--danger)}.public-transport-departure-delay{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;font-size:.8rem;font-weight:700}.public-transport-stop-links{contain:inline-size;flex-direction:column;gap:.5rem;display:flex}.public-transport-stop-links a{border:1px solid var(--hairline);border-radius:var(--radius-md);min-height:2.6rem;color:var(--accent);background:var(--accent-tint);transition:background var(--motion);align-items:center;gap:.6rem;padding:.6rem .75rem;font-weight:600;text-decoration:none;display:flex}.public-transport-stop-links a:hover{background:var(--accent-tint-strong)}.public-transport-stop-links svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;flex:none;width:1.15rem;height:1.15rem}.hiking-signpost-popup{width:min(27rem,100vw - 2rem)}.hiking-signpost-photo{margin:0}.hiking-signpost-photo img{border:1px solid var(--hairline);border-radius:var(--radius-md);width:100%;height:auto;display:block}.hiking-signpost-photo-status{color:var(--ink-soft);margin:0}.hiking-signpost-credit{color:var(--ink-faint);margin-top:.5rem;font-size:.78rem}.hiking-signpost-credit a{color:var(--ink-faint);text-underline-offset:2px}.hiking-signpost-credit a:hover{color:var(--accent)}.hiking-signpost-hint{color:var(--ink-soft);margin:.85rem 0 0;font-size:.84rem}.hiking-signpost-links{margin-top:.85rem}.hiking-signpost-links a{border:1px solid var(--hairline);border-radius:var(--radius-md);min-height:2.6rem;color:var(--accent);background:var(--accent-tint);transition:background var(--motion);align-items:center;gap:.6rem;padding:.6rem .75rem;font-weight:600;text-decoration:none;display:flex}.hiking-signpost-links a:hover{background:var(--accent-tint-strong)}.hiking-signpost-links svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;flex:none;width:1.15rem;height:1.15rem}.route-summary{z-index:20;border:1px solid var(--hairline);border-radius:var(--radius-xl);background:var(--surface-raised);width:min(52rem,100vw - 2rem);max-width:calc(100vw - 2rem);max-height:calc(100dvh - 2rem);box-shadow:var(--shadow-raised);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);flex-direction:column;display:flex;position:absolute;bottom:1rem;left:50%;overflow:hidden;transform:translate(-50%)}.movable-panel--dragging{box-shadow:var(--shadow-floating);cursor:grabbing;opacity:.92;-webkit-user-select:none;user-select:none}.movable-panel-handle{border-radius:var(--radius-sm);color:var(--ink-disabled);cursor:grab;font:inherit;transition:color var(--motion), background var(--motion);touch-action:none;background:0 0;border:0;justify-content:center;align-items:center;gap:.1rem;padding:0;display:flex}.movable-panel-handle:hover,.movable-panel-handle:focus-visible{color:var(--accent);background:var(--accent-tint)}.movable-panel--dragging .movable-panel-handle{color:var(--accent);cursor:grabbing}.movable-panel-grip{fill:currentColor;flex:none;width:.7rem;height:1.2rem}.movable-panel-handle--titled{color:inherit;padding:.1rem .3rem .1rem .15rem}.movable-panel-handle--titled .movable-panel-grip{opacity:0;width:.5rem;height:.85rem;transition:opacity var(--motion)}.movable-panel-handle--titled:hover .movable-panel-grip,.movable-panel-handle--titled:focus-visible .movable-panel-grip,.movable-panel--dragging .movable-panel-handle--titled .movable-panel-grip{opacity:1}.movable-panel-reset{border-radius:var(--radius-sm);color:var(--ink-soft);cursor:pointer;transition:color var(--motion), background var(--motion);background:0 0;border:0;place-items:center;padding:0;display:grid}.movable-panel-reset:hover{color:var(--accent);background:var(--accent-tint)}.movable-panel-reset svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:1.25rem;height:1.25rem}.route-summary-panels{overscroll-behavior:contain;flex-direction:column;max-height:min(24rem,42dvh);display:flex;overflow-y:auto}.route-summary-handle{border-radius:0;width:1.6rem}.route-summary-reset{border-radius:0;width:2.6rem}.route-statistics{flex:none;grid-template-columns:1.6rem repeat(6,minmax(0,1fr)) 3.4rem;display:grid}.route-statistics--moved{grid-template-columns:1.6rem repeat(6,minmax(0,1fr)) 2.6rem 3.4rem}.route-statistics-item--trail{min-width:0}.route-summary-panels+.route-statistics{border-top:1px solid var(--hairline)}.route-statistics-item{white-space:nowrap;flex-direction:column;justify-content:center;align-items:center;gap:.12rem;min-width:0;padding:.7rem .75rem;display:flex;position:relative}.route-statistics-item+.route-statistics-item:before{background:var(--hairline-strong);content:"";width:1px;position:absolute;top:22%;bottom:22%;left:0}.route-statistics-item strong{color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:1.08rem;font-weight:650}.route-statistics-direction-icon{display:none}.route-energy-value{cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:.06rem;padding:0;display:flex}.route-energy-value strong{color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:1.08rem;font-weight:650}.route-effort-band{color:var(--on-fill);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;background:var(--effort-low);border-radius:999px;padding:.08rem .34rem;font-size:.6rem;font-weight:700}.route-effort-band--medium{background:var(--effort-medium)}.route-effort-band--high{background:var(--effort-high)}.route-effort-band--extreme{background:var(--effort-extreme)}.route-trail-class{min-width:0;max-width:100%;color:var(--ink);white-space:nowrap;align-items:center;gap:.3rem;font-size:.88rem;font-weight:600;display:flex;overflow:hidden}.route-trail-class-name{text-overflow:ellipsis;min-width:0;overflow:hidden}.route-trail-class-dot{background:var(--trail-unmarked);border-radius:50%;flex:none;width:.6rem;height:.6rem}.route-trail-class-dot--hiking{background:var(--trail-hiking)}.route-trail-class-dot--mountain{background:var(--trail-mountain)}.route-trail-class-dot--alpine{background:var(--trail-alpine)}.route-profile-toggle{width:3.4rem;color:var(--ink-soft);cursor:pointer;transition:color var(--motion), background var(--motion);background:0 0;border:0;place-items:center;padding:0;display:grid}.route-profile-toggle:hover{color:var(--accent);background:var(--accent-tint)}.route-profile-toggle:disabled{color:var(--ink-faint);cursor:default;opacity:.5}.route-profile-toggle:disabled:hover{background:0 0}.route-profile-toggle--active{color:var(--accent);background:var(--accent-tint)}.route-profile-toggle svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9px;width:1.55rem;height:1.55rem}.route-elevation-profile{flex:none;width:100%;padding:.85rem 1rem .6rem}.route-elevation-profile-title{margin-left:-.15rem}.route-elevation-profile-header,.route-stage-legs-header{justify-content:space-between;align-items:baseline;gap:1rem;padding:0 .35rem .45rem;display:flex}.route-elevation-profile-header{align-items:center}.route-elevation-profile-header span{color:var(--ink);font-variant-numeric:tabular-nums;font-size:.92rem;font-weight:600}.route-elevation-profile-chart{touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:auto;min-height:8rem;display:block}.route-elevation-profile-grid{stroke:color-mix(in srgb, var(--ink) 11%, transparent);stroke-width:1px;vector-effect:non-scaling-stroke}.route-elevation-profile-distance-grid{stroke:color-mix(in srgb, var(--ink) 7%, transparent);stroke-width:1px;vector-effect:non-scaling-stroke}.route-elevation-profile-axis-label,.route-elevation-profile-distance-label{fill:var(--ink-faint);font-variant-numeric:tabular-nums;font-size:13px}.route-elevation-profile-area{stroke:none}.route-elevation-profile-area-top{stop-color:#d52b1e;stop-opacity:.26}.route-elevation-profile-area-bottom{stop-color:#d52b1e;stop-opacity:.02}.route-elevation-profile-line{fill:none;stroke:var(--route);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.25px;vector-effect:non-scaling-stroke}.route-elevation-profile-line--hiking{stroke:var(--trail-hiking)}.route-elevation-profile-line--mountain{stroke:var(--trail-mountain)}.route-elevation-profile-line--alpine{stroke:var(--trail-alpine)}.route-elevation-profile-line--unmarked{stroke:var(--trail-unmarked)}.route-elevation-profile-legend-pending{color:var(--ink-faint);align-items:center;gap:.4rem;margin:0;padding:.4rem .35rem 0;font-size:.78rem;display:flex}.route-trail-class-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;flex:none;width:.72rem;height:.72rem;animation:.7s linear infinite route-loading-spin}.route-statistics-item .route-trail-class-spinner{color:var(--ink-faint)}.route-elevation-profile-legend{color:var(--ink-soft);flex-wrap:wrap;gap:.25rem .9rem;margin:0;padding:.35rem .35rem 0;font-size:.78rem;list-style:none;display:flex}.route-elevation-profile-legend li{align-items:center;gap:.3rem;display:flex}.route-elevation-profile-legend-distance{color:var(--ink-faint);font-variant-numeric:tabular-nums}.route-elevation-profile-hit-area{fill:#0000;cursor:crosshair;pointer-events:all}.route-elevation-profile-stage line{stroke:color-mix(in srgb, var(--ink-soft) 55%, transparent);stroke-dasharray:4 4;stroke-width:1.5px;vector-effect:non-scaling-stroke}.route-elevation-profile-stage text{fill:var(--ink-soft);font-size:12px;font-weight:700}.route-elevation-profile-user-position{pointer-events:none}.route-elevation-profile-user-position circle{fill:var(--accent);stroke:var(--surface-solid);stroke-width:2.5px;vector-effect:non-scaling-stroke}.route-elevation-profile-user-position .route-elevation-profile-user-halo{fill:color-mix(in srgb, var(--accent) 22%, transparent);stroke:none}.route-elevation-profile-hover{pointer-events:none}.route-elevation-profile-hover line{stroke:color-mix(in srgb, var(--ink) 45%, transparent);stroke-dasharray:3 3;stroke-width:1.5px;vector-effect:non-scaling-stroke}.route-elevation-profile-hover circle{fill:var(--route);stroke:var(--surface-solid);stroke-width:2.5px;vector-effect:non-scaling-stroke}.route-stage-legs{border-top:1px solid var(--hairline);flex:none;width:100%;padding:.7rem 1rem .55rem}.route-stage-legs-header span{color:var(--ink-faint);font-size:.8rem}.route-stage-legs-list{margin:0;padding:0;list-style:none}.route-stage-legs-item{border-top:1px solid var(--hairline);grid-template-columns:minmax(0,auto) repeat(5,minmax(0,1fr)) minmax(0,auto);align-items:center;gap:.5rem;padding:.4rem .35rem;display:grid}.route-stage-legs-item:first-child{border-top:0}.route-stage-legs-route{color:var(--ink-faint);align-items:center;gap:.3rem;font-size:.82rem;display:flex}.route-stage-legs-badge{width:1.3rem;height:1.3rem;color:var(--on-fill);background:var(--marker-neutral);border-radius:50%;place-items:center;font-size:.72rem;font-weight:700;display:grid}.route-stage-legs-badge--start{background:var(--positive)}.route-stage-legs-badge--finish{background:var(--marker-finish)}.route-stage-legs-value{color:var(--ink-soft);font-variant-numeric:tabular-nums;white-space:nowrap;justify-content:flex-end;align-items:baseline;gap:.25rem;font-size:.88rem;display:flex}.route-stage-legs-energy{color:inherit;font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:0;padding:0}.route-stage-legs-value--energy,.route-stage-legs-value--trail{gap:.3rem}.route-stage-legs-value--trail{min-width:0}.route-stage-legs-value--trail .route-trail-class{font-size:.82rem;font-weight:500}.route-stage-legs-duration{color:var(--ink);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;font-size:.92rem;font-weight:650}.about-dialog{border-radius:var(--radius-xl);width:min(40rem,100vw - 2rem);max-width:none;max-height:calc(100vh - 2rem);color:var(--ink);background:0 0;border:0;padding:0;overflow:visible}.about-dialog::backdrop,.route-export-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#10181f6b}.about-dialog-panel{border-radius:var(--radius-xl);background:var(--surface-solid);max-height:calc(100vh - 2rem);box-shadow:var(--shadow-floating);flex-direction:column;display:flex;overflow:hidden}.about-dialog-header{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.4rem 1.4rem 1.1rem;display:flex}.about-dialog-header h2{letter-spacing:-.02em;margin:0;font-size:1.5rem;font-weight:650;line-height:1.15}.about-dialog-tagline{color:var(--ink-soft);margin:.4rem 0 0;font-size:.94rem;line-height:1.45}.about-dialog-icon-close{border-radius:var(--radius-sm);width:2.3rem;height:2.3rem;color:var(--ink-faint);cursor:pointer;transition:color var(--motion), background var(--motion);background:0 0;border:0;flex:none;place-items:center;padding:0;font-size:1.6rem;line-height:1;display:grid}.about-dialog-icon-close:hover{color:var(--ink);background:color-mix(in srgb, var(--ink) 6%, transparent)}.about-dialog-content{overscroll-behavior:contain;scrollbar-gutter:stable;flex-direction:column;gap:1.15rem;padding:1.2rem 1.4rem 1.7rem;display:flex;overflow-y:auto}.about-dialog-notice h3{margin:0 0 .5rem;font-size:.98rem;font-weight:650;line-height:1.3}.about-dialog-section h3{border-bottom:1px solid var(--hairline);color:var(--ink-faint);letter-spacing:.09em;text-transform:uppercase;margin:0 0 .7rem;padding-bottom:.45rem;font-size:.68rem;font-weight:700;line-height:1.3}.about-dialog-section p,.about-dialog-notice p{color:var(--ink-soft);margin:0;line-height:1.6}.about-dialog-section p+p{margin-top:.65rem}.about-dialog-notice{border:1px solid var(--notice-border);border-radius:var(--radius-md);background:var(--notice-surface);padding:.9rem 1rem}.about-dialog-details,.about-dialog-credits{gap:.65rem;margin:0;display:grid}.about-dialog-details>div,.about-dialog-credits>div{grid-template-columns:minmax(9rem,.8fr) minmax(0,1.2fr);align-items:baseline;gap:.75rem;display:grid}.about-dialog-details dt,.about-dialog-credits dt{color:var(--ink-faint);font-size:.84rem;font-weight:600}.about-dialog-details dd,.about-dialog-credits dd{overflow-wrap:anywhere;min-width:0;margin:0;line-height:1.45}.about-dialog a{color:var(--accent);text-underline-offset:2px}.about-dialog-footer{border-top:1px solid var(--hairline);justify-content:flex-end;padding:.9rem 1.4rem 1.1rem;display:flex}.route-export-dialog{border-radius:var(--radius-lg);width:min(27rem,100vw - 2rem);max-width:none;color:var(--ink);background:0 0;border:0;padding:0;overflow:visible}.route-export-dialog-form{border-radius:var(--radius-lg);background:var(--surface-solid);box-shadow:var(--shadow-floating);flex-direction:column;gap:.65rem;padding:1.3rem;display:flex}.route-export-dialog-form h2{letter-spacing:-.01em;margin:0 0 .25rem;font-size:1.15rem;font-weight:650;line-height:1.3}.route-export-dialog-form label{font-size:.86rem;font-weight:600}.route-export-dialog-form input{border:1px solid var(--hairline-strong);border-radius:var(--radius-md);width:100%;height:2.85rem;color:var(--ink);background:var(--surface-solid);transition:border-color var(--motion), box-shadow var(--motion);outline:0;padding:0 .85rem}.route-export-dialog-form input:focus{border-color:color-mix(in srgb, var(--accent) 60%, transparent);box-shadow:0 0 0 3px var(--accent-tint)}.route-export-dialog-form p{color:var(--ink-faint);margin:0;font-size:.82rem;line-height:1.45}.route-export-dialog-actions{justify-content:flex-end;gap:.6rem;margin-top:.5rem;display:flex}.about-dialog-close,.route-export-dialog-button{border-radius:var(--radius-md);cursor:pointer;min-width:6.5rem;height:2.6rem;transition:background var(--motion), border-color var(--motion);padding:0 1.1rem;font-weight:600}.about-dialog-close,.route-export-dialog-button--primary{border:1px solid var(--accent);color:var(--on-fill);background:var(--accent)}.about-dialog-close:hover,.route-export-dialog-button--primary:hover{border-color:var(--accent-strong);background:var(--accent-strong)}.route-export-dialog-button--secondary{border:1px solid var(--hairline-strong);color:var(--ink);background:var(--surface-solid)}.route-export-dialog-button--secondary:hover{background:color-mix(in srgb, var(--ink) 5%, var(--surface-solid))}.route-export-dialog-button--primary:disabled{color:var(--ink-faint);background:color-mix(in srgb, var(--ink) 10%, var(--surface-solid));cursor:not-allowed;border-color:#0000}.offline-downloads-dialog{border-radius:var(--radius-lg);width:min(32rem,100vw - 2rem);max-width:none;color:var(--ink);background:0 0;border:0;padding:0;overflow:visible}.offline-downloads-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#10181f6b}.offline-downloads-body{border-radius:var(--radius-lg);background:var(--surface-solid);max-height:calc(100vh - 2rem);box-shadow:var(--shadow-floating);flex-direction:column;gap:1.15rem;padding:1.3rem;display:flex;overflow-y:auto}.offline-downloads-body h2{letter-spacing:-.01em;margin:0;font-size:1.15rem;font-weight:650;line-height:1.3}.offline-downloads-body h3{margin:0 0 .5rem;font-size:.9rem;font-weight:650}.offline-downloads-storage,.offline-downloads-form,.offline-downloads-kept,.offline-downloads-route{flex-direction:column;gap:.45rem;display:flex}.offline-downloads-steps{flex-direction:column;gap:.9rem;margin:0;padding:0;list-style:none;display:flex}.offline-downloads-step{grid-template-columns:1.1rem 1fr;gap:.65rem;display:grid;position:relative}.offline-downloads-step:not(:last-child):before{background:var(--hairline-strong);content:"";width:1px;position:absolute;top:1.4rem;bottom:-1.1rem;left:.5rem}.offline-downloads-step-mark{border:1px solid var(--hairline-strong);width:1.1rem;height:1.1rem;color:var(--surface-solid);background:var(--surface-solid);border-radius:999px;justify-content:center;align-items:center;margin-top:.1rem;display:flex}.offline-downloads-step-mark svg{width:.75rem;height:.75rem}.offline-downloads-step-mark--done{border-color:var(--accent);background:var(--accent)}.offline-downloads-step-mark--blocked{border-color:var(--danger)}.offline-downloads-step-mark--running{border-color:var(--accent);border-top-color:#0000;animation:.9s linear infinite offline-step-spin}@keyframes offline-step-spin{to{transform:rotate(360deg)}}.offline-downloads-step-body{flex-direction:column;gap:.3rem;min-width:0;display:flex}.offline-downloads-step-title{font-size:.86rem;font-weight:650}.offline-downloads-step-detail{color:var(--ink-faint);font-size:.82rem;line-height:1.45}.offline-downloads-step .offline-downloads-form{margin-top:.25rem}.offline-downloads-form label{font-size:.86rem;font-weight:600}.offline-downloads-form input{border:1px solid var(--hairline-strong);border-radius:var(--radius-md);width:100%;height:2.85rem;color:var(--ink);background:var(--surface-solid);transition:border-color var(--motion), box-shadow var(--motion);outline:0;padding:0 .85rem}.offline-downloads-form input:focus{border-color:color-mix(in srgb, var(--accent) 60%, transparent);box-shadow:0 0 0 3px var(--accent-tint)}.offline-downloads-note,.offline-downloads-storage-text,.offline-downloads-estimate{color:var(--ink-faint);margin:0;font-size:.82rem;line-height:1.45}.offline-downloads-storage-text{color:var(--ink);font-weight:600}.offline-downloads-note--warning{color:var(--danger)}.offline-downloads-gauge{background:linear-gradient(to right, var(--accent) 0, var(--accent) calc(var(--offline-storage-share,0) * 100%), color-mix(in srgb, var(--ink) 12%, transparent) calc(var(--offline-storage-share,0) * 100%));border-radius:999px;height:.6rem;display:block}.offline-downloads-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.offline-downloads-item{border:1px solid var(--hairline);border-radius:var(--radius-md);align-items:center;gap:.6rem;padding:.65rem .75rem;display:flex}.offline-downloads-item-text{flex-direction:column;flex:1;gap:.2rem;min-width:0;display:flex}.offline-downloads-item-name{text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;font-weight:600;overflow:hidden}.offline-downloads-item-meta{color:var(--ink-faint);font-size:.78rem}.offline-downloads-item-bar{background:linear-gradient(to right, var(--accent) 0, var(--accent) calc(var(--offline-item-coverage,0) * 100%), color-mix(in srgb, var(--ink) 12%, transparent) calc(var(--offline-item-coverage,0) * 100%));border-radius:999px;height:.25rem;margin-top:.15rem;display:block}.offline-downloads-actions{justify-content:flex-end;gap:.6rem;display:flex}.offline-downloads-actions--close{border-top:1px solid var(--hairline);padding-top:1rem}.offline-downloads-button{border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;height:2.4rem;transition:background var(--motion), border-color var(--motion);padding:0 .95rem;font-size:.86rem;font-weight:600}.offline-downloads-button--primary{border:1px solid var(--accent);color:var(--on-fill);background:var(--accent)}.offline-downloads-button--primary:hover{border-color:var(--accent-strong);background:var(--accent-strong)}.offline-downloads-button--primary:disabled{color:var(--ink-faint);background:color-mix(in srgb, var(--ink) 10%, var(--surface-solid));cursor:not-allowed;border-color:#0000}.offline-downloads-button--secondary{border:1px solid var(--hairline-strong);color:var(--ink);background:var(--surface-solid)}.offline-downloads-button--secondary:hover{background:color-mix(in srgb, var(--ink) 5%, var(--surface-solid))}.offline-downloads-button--danger{border:1px solid color-mix(in srgb, var(--danger) 45%, transparent);color:var(--danger);background:var(--surface-solid)}.offline-downloads-button--danger:hover{background:color-mix(in srgb, var(--danger) 10%, var(--surface-solid))}.weather-forecast{z-index:19;width:min(28rem,100vw - 2rem);height:var(--weather-strip-height);border:1px solid var(--hairline);border-radius:var(--radius-lg);color:var(--ink);background:var(--surface-raised);box-shadow:var(--shadow-floating);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);flex-direction:column;padding:.45rem .5rem .5rem;animation:.16s cubic-bezier(.2,.7,.3,1) panel-appear;display:flex;position:absolute;top:4.75rem;left:50%;transform:translate(-50%)}.weather-forecast-header{align-items:center;gap:.45rem;padding:0 .1rem .35rem;display:flex}.weather-forecast-title{letter-spacing:.01em;margin:0;font-size:.78rem;font-weight:650}.weather-forecast-locality{color:var(--ink);font-weight:640}.weather-forecast-reset{flex:none;width:1.35rem;height:1.35rem}.weather-forecast-reset svg{stroke-width:1.9px;width:.95rem;height:.95rem}.weather-forecast-place{color:var(--ink-soft);font-variant-numeric:tabular-nums;margin:0;font-size:.72rem}.weather-forecast-source{color:var(--ink-faint);white-space:nowrap;margin:0 0 0 auto;font-size:.68rem}.weather-forecast-close{border-radius:var(--radius-sm);width:1.35rem;height:1.35rem;color:var(--ink-soft);cursor:pointer;font:inherit;transition:color var(--motion), background var(--motion);background:0 0;border:0;flex:none;place-items:center;padding:0;font-size:1.05rem;line-height:1;display:grid}.weather-forecast-close:hover{color:var(--ink);background:var(--accent-tint)}.weather-forecast-days{flex:1;align-items:stretch;gap:.1rem;min-height:0;margin:0;padding:0;list-style:none;display:flex;overflow-x:auto}.weather-forecast-days--stale{opacity:.45}.weather-day{border-radius:var(--radius-sm);flex:1 1 0;min-width:3.15rem;display:flex}.weather-day--today{background:var(--accent-tint)}.weather-day-content{flex-direction:column;justify-content:center;align-items:center;gap:.12rem;width:100%;padding:.28rem .15rem;display:flex}.weather-day-name{color:var(--ink-soft);text-transform:capitalize;white-space:nowrap;font-size:.68rem;font-weight:600}.weather-day--today .weather-day-name{color:var(--accent-strong)}.weather-day-icon{fill:none;width:1.75rem;height:1.75rem;stroke:var(--sky-cloud);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;flex:none}.weather-icon-sun{stroke:var(--sky-sun)}.weather-icon-sun-disc{fill:var(--sky-sun)}.weather-icon-cloud{fill:var(--surface-raised);stroke:var(--sky-cloud)}.weather-icon-fog{stroke:var(--sky-cloud)}.weather-icon-rain{stroke:var(--sky-rain);stroke-width:1.9px}.weather-icon-snow{stroke:var(--sky-snow);stroke-width:1.6px}.weather-icon-lightning{stroke:var(--sky-lightning);stroke-width:1.9px}.weather-day-temperatures{font-variant-numeric:tabular-nums;white-space:nowrap;align-items:baseline;gap:.22rem;font-size:.82rem;display:flex}.weather-day-temperatures strong{font-weight:650}.weather-day-temperature-minimum{color:var(--ink-faint);font-size:.74rem}.weather-day-figure{color:var(--ink-soft);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:.18rem;font-size:.66rem;display:flex}.weather-day-figure-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;flex:none;width:.68rem;height:.68rem}.weather-day-figure--wet{color:var(--sky-rain)}.weather-forecast-message{color:var(--ink-soft);text-align:center;flex:1;justify-content:center;align-items:center;gap:.7rem;margin:0;font-size:.82rem;display:flex}.weather-forecast-retry{border:1px solid var(--hairline-strong);border-radius:var(--radius-sm);color:var(--ink);background:var(--surface-solid);cursor:pointer;font:inherit;padding:.3rem .7rem;font-size:.78rem}.weather-forecast-retry:hover{background:var(--accent-tint)}.app--weather-open:not(:has(.weather-forecast--moved)) .route-message{top:calc(4.75rem + var(--weather-strip-height) + .5rem)}.status-card{z-index:10;border-radius:var(--radius-md);background:var(--surface-raised);max-width:min(420px,100% - 2rem);box-shadow:var(--shadow-raised);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);text-align:center;flex-direction:column;gap:.4rem;padding:.85rem 1.15rem;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.status-card--error{border-top:3px solid var(--danger)}.status-card span{color:var(--ink-soft);font-size:.88rem}.ol-scale-bar{bottom:1.4rem;left:1.4rem;pointer-events:auto!important}.ol-scale-bar:before{content:"";border-radius:var(--radius-md);opacity:0;background:var(--paper-veil);box-shadow:var(--shadow-raised);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);transition:opacity var(--motion);position:absolute;inset:-1.5rem -2rem -.7rem -.75rem}.ol-scale-bar:hover:before{opacity:1}.ol-scale-text,.ol-scale-step-text{color:var(--paper-ink);font-variant-numeric:tabular-nums;text-shadow:0 0 2px #fff,0 0 5px #ffffffd9;font-size:.7rem;font-weight:500}.ol-scale-singlebar{border-color:color-mix(in srgb, var(--paper-ink) 55%, transparent);height:5px}.ol-scale-step-marker{background-color:color-mix(in srgb, var(--paper-ink) 55%, transparent)}@media (height<=560px){:root{--control-size:2.35rem;--control-gap:.5rem}.map-control-button--route-toggle,.map-control-button--offline{width:2.65rem;height:2.65rem}}@media (width<=700px){:root{--control-gap:.55rem}.ol-scale-bar{display:none}.app-brand{width:var(--control-size);justify-content:center;padding:0}.app-brand-word,.app-brand-caret{display:none}.map-header{width:calc(100vw - 1.5rem);max-width:none;top:.75rem;left:.75rem}.location-search{width:100%}.map-controls{top:4.25rem;right:.75rem}.map-information-popup{width:calc(100vw - 5.5rem);max-height:calc(100vh - 5rem);top:4.25rem;left:.75rem}.public-transport-stop-popup{min-width:0;max-width:none}.hiking-signpost-popup{width:calc(100vw - 5.5rem)}.map-information-popup-body{max-height:calc(100vh - 8rem)}.about-dialog-details>div,.about-dialog-credits>div{grid-template-columns:1fr;gap:.15rem}.route-message{top:8rem}.weather-forecast{width:calc(100vw - 1.5rem);top:4.25rem;left:.75rem;transform:none}:is(.app--weather-open:not(:has(.weather-forecast--moved)) .map-controls,.app--weather-open:not(:has(.weather-forecast--moved)) .route-message){top:calc(4.25rem + var(--weather-strip-height) + var(--control-gap))}.route-summary{bottom:calc(.75rem + env(safe-area-inset-bottom,0px));width:calc(100vw - 1.5rem)}.route-statistics{grid-template-columns:1.5rem repeat(5,minmax(0,1fr)) 2.85rem;width:100%}.route-statistics--moved{grid-template-columns:1.25rem repeat(5,minmax(0,1fr)) 2.1rem 2.5rem}.route-statistics-item--trail{display:none}.route-energy-value{min-width:0;max-width:100%}.route-energy-value strong{text-overflow:ellipsis;max-width:100%;font-size:clamp(.66rem,2.7vw,.9rem);overflow:hidden}.route-energy-approx{display:none}.route-effort-band{padding:.05rem .28rem;font-size:.52rem}.route-summary-handle{width:1.5rem}.route-statistics--moved .route-summary-handle{width:1.25rem}.route-statistics--moved .route-profile-toggle{width:2.5rem}.route-statistics--moved .route-statistics-item strong{font-size:clamp(.64rem,2.85vw,.82rem)}.route-summary-reset{width:2.4rem}.route-statistics--moved .route-summary-reset{width:2.1rem}.route-summary-reset svg{width:1.15rem;height:1.15rem}.route-statistics-item{flex-direction:row;align-items:center;gap:.12rem;min-width:0;min-height:2.85rem;padding:.4rem .1rem}.route-statistics-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.route-statistics-direction-icon{fill:none;width:.6rem;height:.85rem;stroke:var(--ink-faint);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4px;flex:none;display:block}.route-statistics-item strong{text-align:center;min-width:0;font-size:clamp(.72rem,3.3vw,.88rem)}.route-profile-toggle{width:2.85rem}.route-profile-toggle svg{width:1.4rem;height:1.4rem}.route-elevation-profile-chart{min-height:8.5rem}.route-stage-legs{padding:.6rem .65rem .5rem}.route-summary-panels{max-height:min(17rem,38dvh)}.route-stage-legs-item{grid-template-columns:minmax(0,auto) repeat(2,minmax(0,1fr)) minmax(0,auto);grid-template-areas:"route distance energy duration""trail ascent descent descent";gap:.2rem .3rem;padding:.35rem .1rem}.route-stage-legs-route{grid-area:route}.route-stage-legs-value--distance{grid-area:distance}.route-stage-legs-value--ascent{grid-area:ascent}.route-stage-legs-value--descent{grid-area:descent}.route-stage-legs-value--energy{grid-area:energy}.route-stage-legs-value--trail{grid-area:trail;justify-content:flex-start}.route-stage-legs-duration{grid-area:duration}.route-stage-legs-badge{width:1.2rem;height:1.2rem;font-size:.68rem}.route-stage-legs-value,.route-stage-legs-duration{font-size:clamp(.72rem,3.1vw,.86rem)}}@media (width<=430px){.route-elevation-profile{padding-left:.45rem;padding-right:.45rem}.route-elevation-profile-header{padding-left:.55rem;padding-right:.55rem}}
