:root{--planner-blue: #1565f9;--planner-blue-dark: #0f3ea8;--planner-ink: #0f172a;--planner-muted: #5b6577;--planner-line: #dce3ed;--planner-mist: #f3f7fc;--planner-green: #2d8b66;--planner-route-1: #c2410c;--planner-route-2: #0f766e;--planner-route-3: #7c3aed;--planner-route-4: #9a6700;--planner-route-5: #475569}.ts-routeplanner-page{color:var(--planner-ink);font-family:Inter,sans-serif;overflow-x:hidden}.ts-routeplanner-page .ts-site-content .btn-primary{background:var(--planner-blue);border-color:var(--planner-blue)}.ts-routeplanner-page .ts-site-content .text-primary,.ts-routeplanner-page .ts-site-content a:not(.btn),.ts-routeplanner-page .ts-site-content .btn-link{color:var(--planner-blue-dark)!important}.ts-routeplanner-page .ts-site-content .btn-outline-primary{color:var(--planner-blue-dark);border-color:var(--planner-blue)}.ts-routeplanner-page .ts-site-content .btn-outline-primary:hover,.ts-routeplanner-page .ts-site-content .btn-outline-primary:focus-visible,.ts-routeplanner-page .ts-site-content .btn-outline-primary[aria-pressed=true]{color:#fff;background:var(--planner-blue-dark);border-color:var(--planner-blue-dark)}.ts-routeplanner-page .ts-site-content :is(a,button,input,select,summary):focus-visible{outline:3px solid var(--planner-blue)!important;outline-offset:3px;box-shadow:none!important}.ts-routeplanner-page .ts-site-content .btn-primary:hover,.ts-routeplanner-page .ts-site-content .btn-primary:focus-visible{background:var(--planner-blue-dark);border-color:var(--planner-blue-dark)}.ts-routeplanner-page .ts-site-content .btn,.ts-routeplanner-page .ts-site-content .btn-close,.ts-routeplanner-page .ts-site-content select,.ts-routeplanner-page .ts-site-content input[type=file],.ts-routeplanner-page .ts-site-content input[type=number]{min-height:44px;border-radius:8px;font-size:16px}.ts-routeplanner-page .ts-site-content .btn-close{min-width:44px}.ts-routeplanner-page .ts-site-content .form-check,.ts-routeplanner-page .ts-site-content summary{min-height:44px}.ts-routeplanner-page .ts-site-content summary{display:flex;align-items:center;cursor:pointer}.ts-routeplanner-page .ts-site-content .leaflet-control-zoom a{width:44px;height:44px;font-size:22px;line-height:44px}.ts-routeplanner-page .ts-site-content .small,.ts-routeplanner-page .ts-site-content small,.ts-routeplanner-page .ts-site-content .badge,.route-legend-title,.route-legend-item{font-size:14px!important}.planner-sidebar-outer{transition:width .24s cubic-bezier(.16,1,.3,1),max-width .24s cubic-bezier(.16,1,.3,1),flex-basis .24s cubic-bezier(.16,1,.3,1);background:#fff;border-color:var(--planner-line)!important}.planner-panel-toggle{position:absolute;top:12px;right:12px;z-index:20;display:grid;width:44px;height:44px;place-items:center;color:var(--planner-blue-dark);background:#fff;border:1px solid var(--planner-line);border-radius:999px;box-shadow:0 4px 14px #0f172a1a;transition:color .16s ease,background-color .16s ease,transform .16s ease}.planner-panel-toggle:hover,.planner-panel-toggle:focus-visible{color:#fff;background:var(--planner-blue-dark)}.planner-sidebar-outer.is-panel-collapsed .planner-sidebar-inner{display:none}.planner-sidebar-outer.is-panel-collapsed .planner-panel-toggle{right:50%;transform:translate(50%)}.planner-sidebar-inner{width:100%;max-width:100%;scrollbar-width:auto;scrollbar-color:var(--planner-muted) var(--planner-mist)}.planner-sidebar-inner>*,.planner-sidebar-inner .alert>span,.planner-sidebar-inner .route-data-row>:first-child{min-width:0}.planner-sidebar-inner .alert,.planner-sidebar-inner p,.planner-sidebar-inner span,.planner-sidebar-inner strong{overflow-wrap:anywhere}.via-header{flex-wrap:wrap;gap:8px}.planner-sidebar-inner::-webkit-scrollbar,.instructions-scroll::-webkit-scrollbar{width:10px}.planner-sidebar-inner::-webkit-scrollbar-thumb,.instructions-scroll::-webkit-scrollbar-thumb{background:var(--planner-muted);border:2px solid var(--planner-mist);border-radius:8px}.sheet-toggle{display:none;width:100%;min-height:64px;padding:8px 16px;color:var(--planner-ink);text-align:left;background:#fff;border:0;border-bottom:1px solid var(--planner-line);border-radius:16px 16px 0 0}.sheet-toggle:before{display:block;width:40px;height:4px;margin:0 auto 6px;background:var(--planner-line);border-radius:2px;content:""}.sheet-peek{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;color:var(--planner-muted);font-size:14px;font-weight:700}.sheet-peek-action{color:var(--planner-blue-dark)}.sheet-expanded-label,.sheet-toggle[aria-expanded=true] .sheet-peek{display:none}.sheet-toggle[aria-expanded=true] .sheet-expanded-label{display:block;text-align:center}.planner-map-col{min-height:520px}#plannerMap{outline:0}#plannerMap:focus-visible,.leaflet-marker-icon:focus-visible,.route-legend-item:focus-visible,.profile-toggle:focus-visible,.sheet-toggle:focus-visible{outline:3px solid var(--planner-blue);outline-offset:3px}.leaflet-marker-icon{min-width:44px!important;min-height:44px!important}.leaflet-station-pane{z-index:650}.station-marker-icon{display:grid!important;place-items:center;background:transparent;border:0}.station-marker-visual{width:14px;height:14px;background:var(--planner-blue);border:2px solid #ffffff;border-radius:50%;box-shadow:0 0 0 2px var(--planner-blue-dark),0 2px 6px #0f172a59;transition:transform .15s ease}.station-marker-icon:hover .station-marker-visual,.station-marker-icon:focus-visible .station-marker-visual{transform:scale(1.25)}.trip-marker{display:grid;width:44px;height:44px;place-items:center;color:#fff;font-weight:800;background:var(--planner-blue-dark);border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 1px var(--planner-ink)}.trip-marker-end{background:var(--planner-ink);border-radius:8px}.via-icon{display:flex;align-items:center;justify-content:center;color:var(--planner-ink);font-weight:800;background:#fbbf24;border:2px solid #fff;border-radius:50%}.leaflet-tooltip.node-label{color:#92400e;font-size:14px;font-weight:700;background:#fffffff2;border:1px solid #f59e0b;border-radius:8px;box-shadow:none}.leaflet-tooltip.node-label:before{display:none}.route-alternatives-legend{position:absolute;top:16px;right:16px;z-index:1000;min-width:160px;max-width:min(260px,calc(100vw - 32px));max-height:calc(100vh - 100px);overflow-y:auto;padding:10px;background:#fffffff5;border:1px solid var(--planner-line);border-radius:8px}.route-data-panel{background:var(--planner-mist);border-color:var(--planner-line)!important;border-radius:0;box-shadow:none}.route-data-row{background:var(--planner-mist);border:1px solid var(--planner-line);border-radius:0}.planner-success{color:var(--planner-ink);background:#e8f0ff;border-color:var(--planner-line)!important}.map-loading{z-index:2000;width:min(360px,calc(100% - 32px))}.planner-loading-card{position:relative;overflow:hidden;padding:24px 24px 20px;color:var(--planner-ink);text-align:center;background:radial-gradient(circle at 12% 5%,rgb(60 130 246 / 12%),transparent 34%),radial-gradient(circle at 90% 94%,rgb(57 145 89 / 12%),transparent 35%),#fffffff7;border:1px solid rgb(28 78 121 / 18%);border-radius:18px;box-shadow:0 24px 64px #0f172a38;animation:planner-loading-arrive .28s ease-out both,planner-loading-breathe 3.6s ease-in-out .28s infinite;isolation:isolate}.planner-loading-card:not(.is-animating),.planner-loading-card:not(.is-animating):before,.planner-loading-card:not(.is-animating) *,.planner-loading-card:not(.is-animating) *:before,.planner-loading-card:not(.is-animating) *:after{animation-play-state:paused!important}.planner-loading-card:before{position:absolute;z-index:-1;inset:0;border:1px solid transparent;border-radius:inherit;content:"";background:linear-gradient(115deg,transparent 20%,rgb(60 130 246 / 24%),transparent 48%,rgb(57 145 89 / 20%),transparent 78%) border-box;background-size:220% 100%;-webkit-mask:linear-gradient(#000 0 0) padding-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) padding-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;animation:planner-loading-border 4s linear infinite}.planner-loading-ambient{position:absolute;z-index:-1;width:90px;height:90px;border:1px solid rgb(28 78 121 / 9%);border-radius:42% 58% 63% 37%;pointer-events:none}.planner-loading-ambient-one{top:-54px;left:-35px;animation:planner-loading-drift 7s ease-in-out infinite alternate}.planner-loading-ambient-two{right:-44px;bottom:-57px;width:120px;height:120px;animation:planner-loading-drift 8s ease-in-out -2s infinite alternate-reverse}.planner-loading-route{display:grid;grid-template-columns:38px 1fr 38px;align-items:center;margin-bottom:18px}.planner-loading-pin{position:relative;z-index:2;display:grid;width:38px;height:38px;color:#fff;place-items:center;background:var(--planner-blue-dark);border:3px solid #fff;border-radius:50%;box-shadow:0 4px 14px #1c4e7940}.planner-loading-pin:after{position:absolute;z-index:-1;inset:-3px;border:2px solid rgb(35 100 187 / 30%);border-radius:50%;content:"";animation:planner-loading-ping 2.2s ease-out infinite}.planner-loading-pin-end:after{border-color:#39915959;animation-delay:1.1s}.planner-loading-pin-start i{animation:planner-loading-train 1.6s ease-in-out infinite}.planner-loading-pin-end{color:var(--planner-blue-dark);background:#dff4e8}.planner-loading-line{position:relative;height:3px;background:repeating-linear-gradient(90deg,var(--planner-blue) 0 9px,transparent 9px 15px);background-size:30px 3px;animation:planner-loading-route-flow .8s linear infinite}.planner-loading-line:after{position:absolute;inset:-3px 0;content:"";background:linear-gradient(90deg,transparent,rgb(255 255 255 / 90%),transparent);transform:translate(-100%);animation:planner-loading-shimmer 1.8s linear infinite}.planner-loading-traveller{position:absolute;z-index:3;top:50%;left:0;display:grid;width:28px;height:28px;color:#fff;font-size:13px;place-items:center;background:#e56b3f;border:2px solid #fff;border-radius:50%;box-shadow:0 4px 12px #0f172a38;transform:translate(-50%,-50%);animation:planner-loading-walk 3.2s ease-in-out infinite}.planner-loading-traveller i{animation:planner-loading-hiker .42s ease-in-out infinite alternate}.planner-loading-kicker{margin:0 0 4px;color:var(--planner-blue);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.planner-loading-title{margin:0;font-size:clamp(19px,4vw,23px);font-weight:800}.planner-loading-message{min-height:42px;margin:8px 0 14px;color:#536274;font-size:14px;line-height:1.45}.planner-loading-message.is-changing{animation:planner-loading-message .42s ease-out both}.planner-loading-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.planner-loading-steps span{padding:7px 4px;color:#7a8794;font-size:11px;font-weight:700;background:#f3f6f8;border-radius:999px;transition:color .18s ease,background-color .18s ease,transform .18s ease}.planner-loading-steps span.is-active{color:#fff;background:var(--planner-blue-dark);transform:translateY(-2px);box-shadow:0 6px 14px #1c4e7933}.planner-loading-steps span.is-done{color:#27613c;background:#dff4e8}.planner-loading-steps i{margin-right:3px}.planner-loading-steps span.is-active i{animation:planner-loading-icon .9s ease-in-out infinite alternate}.planner-loading-progress{height:4px;overflow:hidden;margin-top:14px;background:#e8eef3;border-radius:999px}.planner-loading-progress span{display:block;width:42%;height:100%;background:linear-gradient(90deg,var(--planner-blue),#56ad70,var(--planner-blue));background-size:200% 100%;border-radius:inherit;animation:planner-loading-progress 2s ease-in-out infinite,planner-loading-colors 2.8s linear infinite}.planner-loading-note{margin:12px 0 0;color:#84909b;font-size:11px}.planner-loading-dots{display:inline-flex;gap:2px;margin-left:2px}.planner-loading-dots i{width:3px;height:3px;background:currentColor;border-radius:50%;animation:planner-loading-dot 1.2s ease-in-out infinite}.planner-loading-dots i:nth-child(2){animation-delay:.14s}.planner-loading-dots i:nth-child(3){animation-delay:.28s}.planner-loading-card[data-loading-phase="1"] .planner-loading-progress span{width:58%}.planner-loading-card[data-loading-phase="2"] .planner-loading-progress span{width:76%}@keyframes planner-loading-walk{0%,8%{left:0;transform:translate(-50%,-50%) rotate(-4deg)}50%{transform:translate(-50%,calc(-50% - 4px)) rotate(4deg)}92%,to{left:100%;transform:translate(-50%,-50%) rotate(-4deg)}}@keyframes planner-loading-shimmer{to{transform:translate(100%)}}@keyframes planner-loading-arrive{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes planner-loading-breathe{50%{box-shadow:0 28px 72px #0f172a47}}@keyframes planner-loading-border{to{background-position:-220% 0}}@keyframes planner-loading-drift{to{transform:translate(18px,12px) rotate(35deg) scale(1.08)}}@keyframes planner-loading-ping{0%{opacity:.75;transform:scale(.85)}75%,to{opacity:0;transform:scale(1.55)}}@keyframes planner-loading-train{50%{transform:translate(2px)}}@keyframes planner-loading-route-flow{to{background-position:30px 0}}@keyframes planner-loading-hiker{to{transform:translateY(-2px) rotate(5deg)}}@keyframes planner-loading-message{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes planner-loading-icon{to{transform:scale(1.16) rotate(4deg)}}@keyframes planner-loading-progress{0%{transform:translate(-110%)}to{transform:translate(250%)}}@keyframes planner-loading-colors{to{background-position:200% 0}}@keyframes planner-loading-dot{0%,65%,to{opacity:.35;transform:translateY(0)}32%{opacity:1;transform:translateY(-3px)}}@media(prefers-reduced-motion:reduce){.planner-loading-card,.planner-loading-card:before,.planner-loading-ambient,.planner-loading-pin:after,.planner-loading-pin i,.planner-loading-line,.planner-loading-line:after,.planner-loading-traveller,.planner-loading-traveller i,.planner-loading-message,.planner-loading-steps span.is-active i,.planner-loading-progress span,.planner-loading-dots i{animation:none}.planner-loading-traveller{left:50%}.planner-loading-steps span{transition:none}}.planner-map-hint{width:max-content;max-width:calc(100% - 32px);color:var(--planner-ink);text-align:center;background:#fffffff0;border-color:var(--planner-line)!important;border-radius:8px;box-shadow:0 8px 24px #0f172a1f}.via-pick-status{position:absolute;top:16px;left:50%;z-index:1100;display:flex;align-items:center;gap:10px;width:max-content;max-width:calc(100% - 32px);padding:9px 10px 9px 14px;color:var(--planner-blue-dark);font-size:14px;font-weight:700;background:#fff;border:2px solid var(--planner-blue);border-radius:8px;box-shadow:0 8px 24px #0f172a2e;transform:translate(-50%)}.via-pick-status i{color:var(--planner-blue);font-size:16px}.via-pick-status .btn{min-height:36px;color:var(--planner-blue-dark);font-weight:700}.route-legend-item{display:flex;gap:9px;align-items:center;width:100%;min-height:44px;color:inherit;text-align:left;background:transparent;border:0;border-radius:8px}.route-legend-item[aria-pressed=true]{font-weight:700;background:#e8f0ff}.route-legend-swatch{width:30px;height:6px;flex:none;background:var(--route-color, var(--planner-blue))}.route-legend-swatch.is-invalid,.route-card-swatch.is-invalid{background:repeating-linear-gradient(90deg,#64748b 0 2px,transparent 2px 7px)}.route-cards{display:grid;gap:10px}.route-card{border:1px solid var(--planner-line);border-radius:8px;overflow:hidden}.route-card-invalid{background:#f8fafc}.route-card-select{display:grid;width:100%;min-height:44px;gap:5px;padding:12px;color:var(--planner-ink);text-align:left;background:#fff;border:0}.route-card-select[aria-pressed=true]{background:#e8f0ff;outline:2px solid var(--planner-blue);outline-offset:-2px}.route-card-heading{display:flex;align-items:center;gap:8px}.route-card-swatch{width:24px;height:6px;flex:none;background:var(--route-color, var(--planner-blue))}.route-pattern-1{background:repeating-linear-gradient(90deg,var(--route-color) 0 9px,transparent 9px 14px)}.route-pattern-2{background:repeating-linear-gradient(90deg,var(--route-color) 0 3px,transparent 3px 8px)}.route-pattern-3{background:linear-gradient(var(--route-color),var(--route-color)) top / 100% 2px no-repeat,linear-gradient(var(--route-color),var(--route-color)) bottom / 100% 2px no-repeat}.route-pattern-4{background:repeating-linear-gradient(90deg,var(--route-color) 0 2px,transparent 2px 5px,var(--route-color) 5px 14px,transparent 14px 18px)}.route-card-score{margin-left:auto;color:var(--planner-blue-dark);font-size:14px;font-weight:800}.route-card-summary,.route-card-explanation{font-size:14px}.route-card-summary{font-weight:700}.route-card-explanation{color:var(--planner-muted);line-height:1.45}.route-card-differentiator{color:var(--planner-green);font-size:14px;font-weight:700}.route-score-details summary{cursor:pointer}.route-score-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.route-score-highlight{display:flex;align-items:center;gap:9px;min-width:0;padding:10px;background:var(--planner-mist);border:1px solid var(--planner-line);border-radius:10px}.route-score-highlight dt{display:grid;flex:0 0 30px;width:30px;height:30px;place-items:center;margin:0;color:var(--planner-blue-dark);background:#fff;border-radius:999px}.route-score-highlight dd{overflow:hidden;margin:0;color:var(--planner-ink);font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}@media(max-width:575.98px){.route-score-breakdown{grid-template-columns:1fr}}.planner-pending #route-stats,.planner-pending #elevation-container,.planner-pending #route-alternatives-legend{opacity:.35;pointer-events:none}@media(max-width:991.98px){.ts-routeplanner-page{overscroll-behavior-y:none}.planner-map-col{position:fixed!important;inset:62px 0 0;z-index:500;height:auto!important;min-height:0}.planner-sidebar-outer{position:fixed!important;right:0;bottom:0;left:0;z-index:1050;display:flex;width:100%;max-width:100vw;box-sizing:border-box;flex-direction:column;max-height:calc(88dvh - env(safe-area-inset-top));padding-bottom:env(safe-area-inset-bottom);border:1px solid var(--planner-line);border-bottom:0;border-radius:16px 16px 0 0;transition:transform .25s ease}.planner-sidebar-inner{flex:1;min-height:0;padding:16px!important;overflow-y:auto!important;overflow-x:hidden}.sheet-toggle{display:block;flex:none}.planner-sidebar-outer.sheet-collapsed{transform:translateY(calc(100% - 64px))}.planner-sidebar-outer.sheet-expanded{transform:translateY(0)}.planner-map-col .leaflet-bottom{bottom:calc(68px + env(safe-area-inset-bottom))}#zoom-warning{bottom:calc(64px + env(safe-area-inset-bottom))!important}}#planner-form,#planner-form fieldset,#planner-form details,#planner-form .planner-left-section-content{min-width:0}.planner-left-section.planner-simple-section{margin:0;background:transparent;border:0;border-radius:0}.planner-left-section.planner-simple-section>.planner-left-section-content{padding:0!important}.planner-route-fields{position:relative;margin-bottom:20px;padding:16px;background:#f8fafc;border:1px solid var(--planner-line);border-radius:14px}.planner-station-field{position:relative;min-width:0}.planner-station-field>.d-flex:first-child{min-height:32px}.planner-search-panel .planner-station-wrapper{min-width:0}.planner-search-panel .planner-station-input{width:100%;min-height:50px;padding-right:12px;background:#fff;border-color:#c8d3e1;border-radius:10px}.planner-search-panel .planner-station-input:hover{border-color:#9aabc0}.planner-search-panel .planner-station-input:focus{border-color:var(--planner-blue);box-shadow:0 0 0 3px #1565f91f}.planner-search-panel .planner-map-pick{display:grid;flex:0 0 34px;width:34px;min-width:34px;min-height:34px;padding:0!important;place-items:center;color:var(--planner-blue-dark);background:#fff;border:1px solid var(--planner-line);border-radius:999px}.planner-search-panel .planner-map-pick:hover,.planner-search-panel .planner-map-pick:focus-visible{color:#fff;background:var(--planner-blue);border-color:var(--planner-blue);outline:3px solid rgb(21 101 249 / 15%)}.planner-input-hint{max-height:0;overflow:hidden;opacity:0;transition:max-height .16s ease,opacity .16s ease}.planner-station-field:focus-within .planner-input-hint,.planner-station-field .planner-station-wrapper.is-complete+.planner-input-hint{max-height:24px;opacity:1}.planner-swap-row{position:relative;display:grid;height:30px;place-items:center}.planner-swap-row:before{position:absolute;top:0;bottom:0;left:23px;width:1px;background:var(--planner-line);content:""}.planner-swap-button{position:relative;z-index:1;display:grid;width:34px;min-width:34px;min-height:34px;padding:0;place-items:center;color:var(--planner-blue-dark);background:#fff;border:1px solid #b7c6d8;border-radius:999px;box-shadow:0 2px 6px #0f172a1a}.planner-swap-button:hover,.planner-swap-button:focus-visible{color:#fff;background:var(--planner-blue-dark);border-color:var(--planner-blue-dark)}#planner-form .planner-mode-picker{width:100%;max-width:100%;margin-bottom:18px!important}#planner-form .planner-mode-option,#planner-form .planner-distance-preset{min-width:0;overflow-wrap:anywhere}#planner-form .planner-profile-picker{width:100%;max-width:100%;gap:8px;margin-bottom:18px}#planner-form .planner-profile-option{min-width:0;min-height:72px;padding:12px;background:#fff;border-color:#c8d3e1}#planner-form .planner-profile-option>.fw-semibold{min-width:0;line-height:1.25;overflow-wrap:anywhere}#planner-form .planner-profile-option.is-selected{background:#edf4ff;box-shadow:inset 0 0 0 1px var(--planner-blue),0 4px 12px #1565f914}#planner-form .planner-primary-submit{width:100%;min-width:0;min-height:52px!important;margin-bottom:0;border-radius:11px}#planner-form .planner-submit-promise{margin:12px 4px 18px}.planner-distance-options{min-width:0;padding-top:2px}#planner-form .planner-distance-presets{grid-template-columns:repeat(3,minmax(0,1fr))}.planner-custom-distance{margin-top:10px}.planner-custom-distance>label{display:block;margin-bottom:5px;color:var(--planner-muted);font-size:13px;font-weight:700}.planner-accessibility-section>summary,.planner-advanced-options>summary{border-radius:8px}.planner-accessibility-section>summary:hover,.planner-advanced-options>summary:hover{background:var(--planner-mist)}.planner-advanced-groups>.planner-left-section{overflow:hidden;border-radius:10px}.planner-advanced-groups .form-control,.planner-advanced-groups .form-select,.planner-advanced-groups .input-group-text{min-height:44px;border-color:#c8d3e1}#journey-controls>.row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-inline:0}#journey-controls>.row>[class*=col-]{width:100%;padding-inline:0}.planner-journey-schedule>[class*=col-]:first-child{grid-column:1 / -1}@media(max-width:575.98px){.planner-route-fields{padding:14px}#planner-form .planner-profile-option{min-height:68px;padding:10px}#journey-controls>.row{grid-template-columns:1fr}#journey-controls>.row>[class*=col-]{grid-column:auto}}@media(min-width:992px){.planner-sidebar-outer,.planner-map-col{height:calc(100vh - 62px);min-height:calc(100vh - 62px);transform:none!important}.planner-sidebar-inner{height:100%;overflow-y:auto}.planner-sidebar-outer.is-panel-collapsed{width:64px!important;max-width:64px!important;flex:0 0 64px!important}.planner-sidebar-outer.is-panel-collapsed+.planner-map-col{width:auto!important;max-width:none!important;flex:1 1 auto!important}}.planner-workspace{min-height:calc(100dvh - 62px);background:var(--planner-mist)}.planner-sidebar-outer{position:relative;z-index:2;border-radius:0}.planner-sidebar-inner{padding:clamp(20px,2.2vw,32px)}.planner-search-panel,.planner-search-summary,.route-results-intro,.route-options{max-width:620px;margin-inline:auto}.planner-beta-note{padding:10px 0;color:var(--planner-muted);border-block:1px solid var(--planner-line)}.planner-beta-note .btn-link{min-height:auto!important;font-size:inherit!important}.planner-search-kicker{color:var(--planner-blue);font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.planner-search-title{color:var(--planner-ink);font-size:clamp(1.65rem,3vw,2.1rem);font-weight:850;letter-spacing:-.035em}.planner-simple-section{margin:0;border:0;border-radius:0}.planner-simple-section>.planner-left-section-content{padding:0!important}.planner-simple-section #scoring-profile-control>legend{display:block}.planner-mode-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:4px;background:var(--planner-mist);border:1px solid var(--planner-line);border-radius:12px}.planner-mode-option{min-height:44px;padding:8px 12px;color:var(--planner-muted);font-weight:750;background:transparent;border:0;border-radius:9px}.planner-mode-option.is-selected{color:var(--planner-blue-dark);background:#fff;box-shadow:0 2px 8px #0f172a1a}.planner-distance-presets{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.planner-distance-preset{min-height:42px;padding:6px 4px;color:var(--planner-muted);font-size:13px;font-weight:750;background:#fff;border:1px solid var(--planner-line);border-radius:9px}.planner-distance-preset.is-selected{color:#fff;background:var(--planner-blue);border-color:var(--planner-blue)}.planner-submit-promise{display:flex;align-items:flex-start;gap:8px;margin:10px 4px 16px;color:var(--planner-muted);font-size:13px;line-height:1.45}.planner-submit-promise i{margin-top:3px;color:var(--planner-green)}.planner-accessibility-section{margin-bottom:10px;border-bottom:1px solid var(--planner-line)}.planner-accessibility-section>summary{padding:11px 2px;color:var(--planner-blue-dark);font-size:14px;font-weight:750;cursor:pointer;list-style:none}.planner-accessibility-section>summary i{width:22px}.planner-accessibility-content{margin-bottom:12px;padding:14px;background:var(--planner-mist);border-radius:10px}.planner-advanced-options{margin-bottom:12px;border-block:1px solid var(--planner-line)}.planner-advanced-options>summary{display:grid;min-height:52px;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px 2px;color:var(--planner-blue-dark);font-weight:800;cursor:pointer;list-style:none}#planner-advanced-summary{color:var(--planner-muted);font-size:12px;font-weight:600}.planner-advanced-groups{padding:10px 0 4px}.planner-inspiration-link{display:grid;grid-template-columns:36px minmax(0,1fr) 16px;align-items:center;gap:10px;padding:14px;color:var(--planner-ink);text-decoration:none;background:#f7faf8;border:1px solid #cde3d7;border-radius:12px}.planner-inspiration-link>i:first-child{color:var(--planner-green);font-size:22px}.planner-inspiration-link span{display:grid}.planner-inspiration-link small{color:var(--planner-muted)}.planner-inspiration-link:hover{color:var(--planner-blue-dark);border-color:var(--planner-green)}.planner-left-section{margin-bottom:10px;background:#fff;border:1px solid var(--planner-line);border-radius:10px;interpolate-size:allow-keywords}.planner-left-section>summary{display:grid!important;min-height:52px!important;grid-template-columns:auto minmax(0,1fr) 16px;align-items:center;gap:8px;padding:10px 12px;color:var(--planner-ink);list-style:none}.planner-left-section>summary::-webkit-details-marker{display:none}.planner-left-section>summary:after{color:var(--planner-blue-dark);font-size:18px;line-height:1;content:"+"}.planner-left-section[open]>summary:after{content:"−"}.planner-left-section[open]>summary{border-bottom:1px solid var(--planner-line)}.planner-left-section-title{font-weight:800}.planner-left-section-summary{min-width:0;overflow:hidden;color:var(--planner-muted);font-size:13px;font-weight:600;text-align:right;text-overflow:ellipsis;white-space:nowrap}.planner-left-section-content,.planner-left-section>.planner-advanced-content{padding:14px!important}.planner-left-section-accent{background:#f8fbff;border-color:#b8cdf8}.planner-left-section #scoring-profile-control>legend,.planner-left-section #journey-planning-fieldset>legend{display:none}.planner-left-section .planner-journey-fieldset{padding:0;background:transparent;border:0}.planner-advanced-content{padding-bottom:16px}.planner-profile-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.planner-profile-option{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:14px 10px;text-align:center;color:var(--planner-muted);border:1px solid var(--planner-line);border-radius:12px;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,color .15s ease}.planner-poi-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 12px}.planner-poi-categories .form-check{display:flex;align-items:center;margin:0}.planner-poi-results{max-height:280px;overflow-y:auto;border-top:1px solid var(--planner-line)}.planner-poi-result{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--planner-line)}.planner-poi-marker{display:grid!important;place-items:center;background:transparent;border:0}.planner-poi-marker-visual{width:10px;height:10px;background:var(--planner-green);border:1px solid #fff;border-radius:50% 50% 50% 0;box-shadow:0 0 0 1px #0f172a8c,0 1px 3px #0f172a4d;transform:rotate(-45deg)}.planner-map-layer-control{position:absolute;top:16px;left:56px;z-index:1000;width:min(220px,calc(100% - 128px));padding:0 10px;background:#fffffff5;border:1px solid var(--planner-line);border-radius:8px}.planner-map-layer-control>summary{min-height:42px!important}.planner-map-layer-control fieldset{padding-bottom:8px}.planner-map-layer-control .form-check{display:flex;align-items:center;min-height:36px;margin:0}.route-comparison-table caption{color:var(--planner-ink);font-weight:700;caption-side:top}.planner-recommended-route{padding:clamp(18px,3vw,28px);background:linear-gradient(145deg,#f3fbf6,#fff 62%);border:1px solid #bcdac9;border-radius:16px;box-shadow:0 14px 34px #0f172a14}.planner-recommended-eyebrow{margin:0 0 5px;color:var(--planner-green);font-size:12px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.planner-recommended-route h3{margin:0;color:var(--planner-ink);font-size:clamp(1.25rem,3vw,1.65rem);font-weight:850;letter-spacing:-.025em}.planner-recommended-meta{margin:5px 0 16px;color:var(--planner-muted);font-weight:650}.planner-recommended-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 18px}.planner-recommended-metrics>div{display:flex;flex-direction:column-reverse;padding:10px;background:#ffffffd9;border:1px solid var(--planner-line);border-radius:10px}.planner-recommended-metrics dt{color:var(--planner-muted);font-size:12px}.planner-recommended-metrics dt i{color:var(--planner-green)}.planner-recommended-metrics dd{margin:0;color:var(--planner-ink);font-size:20px;font-weight:850}.planner-recommended-route h4{margin:0 0 4px;font-size:14px;font-weight:800}.planner-recommended-reason{margin:0 0 16px;color:var(--planner-muted);font-size:14px;line-height:1.5}.planner-recommended-action{min-height:46px;padding-inline:20px}.planner-recommended-actions{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.planner-recommended-actions .btn-link{color:var(--planner-blue-dark);font-weight:700;text-decoration:none}.planner-share-feedback{margin:8px 0 0;color:var(--planner-muted);font-size:13px;font-weight:650}.planner-share-feedback[data-state=success]{color:var(--planner-green)}.planner-share-feedback[data-state=error]{color:#a62929}.planner-alternatives{margin-top:14px;border-top:1px solid var(--planner-line)}.planner-alternatives>summary{display:flex;align-items:center;justify-content:space-between;min-height:52px;color:var(--planner-blue-dark);font-weight:800;cursor:pointer;list-style:none}.planner-alternatives[open]>summary i{transform:rotate(90deg)}.planner-alternatives-content{padding-bottom:12px}.planner-comparison-details{margin-top:12px}.planner-comparison-details>summary{color:var(--planner-blue-dark);font-size:14px;font-weight:700;cursor:pointer}@media(max-width:575.98px){.planner-distance-presets,.planner-recommended-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.planner-recommended-metrics>div{padding:8px 6px}.planner-recommended-metrics dd{font-size:17px}}.route-comparison-table th,.route-comparison-table td{min-width:90px;vertical-align:middle}.route-comparison-table th:first-child,.route-comparison-table td:first-child{min-width:130px}.planner-profile-option:hover{border-color:var(--planner-blue)}.planner-profile-option:focus-within{outline:2px solid rgba(21,101,249,.35);outline-offset:1px}.planner-profile-option.is-selected{color:var(--planner-blue-dark);background:var(--planner-mist);border-color:var(--planner-blue);box-shadow:inset 0 0 0 1px var(--planner-blue)}.planner-profile-option-icon{margin-bottom:6px;color:var(--planner-muted);font-size:1.5rem}.planner-profile-option.is-selected .planner-profile-option-icon{color:var(--planner-blue)}.planner-profile-option-desc{line-height:1.3}.planner-journey-fieldset{padding:16px;background:#f8fbff;border:1px solid #b8cdf8;border-radius:10px}.planner-journey-fieldset>legend{padding-inline:6px;color:var(--planner-blue-dark)}.planner-facility-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.planner-recommendation,.escape-item{padding:12px 0;border-bottom:1px solid var(--planner-line)}.planner-recommendation:last-child,.escape-item:last-child{border-bottom:0}.journey-status{flex:none;padding:5px 10px;font-size:13px;font-weight:800;border:1px solid;border-radius:999px}.journey-status.is-feasible,.journey-overview-summary.is-feasible{color:#166534;background:#f0fdf4;border-color:#86efac}.journey-status.is-infeasible,.journey-overview-summary.is-infeasible{color:#991b1b;background:#fef2f2;border-color:#fca5a5}.journey-status.is-unknown,.journey-overview-summary.is-unknown{color:#854d0e;background:#fffbeb;border-color:#fcd34d}.journey-overview-summary{padding:9px 11px;border:1px solid;border-radius:8px;font-size:14px;font-weight:700}.journey-timeline{position:relative;margin:0;padding:0 0 0 28px;list-style:none}.journey-timeline:before{position:absolute;top:8px;bottom:8px;left:7px;width:2px;background:#b8cdf8;content:""}.journey-timeline li{position:relative;display:grid;gap:2px;padding:0 0 20px}.journey-timeline li:before{position:absolute;top:5px;left:-26px;width:12px;height:12px;background:#fff;border:3px solid var(--planner-blue);border-radius:50%;content:""}.journey-timeline small{color:var(--planner-muted)}.journey-reasons:empty{display:none}.planner-feedback-honeypot{position:absolute;left:-9999px;top:-9999px;width:1px;height:1px;overflow:hidden;opacity:0}.planner-search-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:22px;border-bottom:1px solid var(--planner-line)}.planner-has-results .planner-search-summary,.planner-has-results .route-results-intro,.planner-has-results .route-options:not(.d-none){animation:planner-arrive .45s cubic-bezier(.16,1,.3,1) both}.planner-has-results .route-results-intro{animation-delay:40ms}.planner-has-results .route-options:not(.d-none){animation-delay:90ms}.planner-search-summary-label,.route-results-count,.route-detail-label{color:var(--planner-blue-dark);font-size:14px;font-weight:700}.route-results-intro{padding:26px 0 18px}.route-results-milestone{display:flex;align-items:center;gap:8px;margin-top:12px;color:var(--planner-green);font-size:14px;font-weight:700}.route-results-milestone i{font-size:16px}.route-options{padding-bottom:24px}.route-cards{gap:0;border-top:1px solid var(--planner-line)}.route-card{overflow:visible;background:#fff;border:0;border-bottom:1px solid var(--planner-line);border-radius:0}.route-card.is-entering{animation:route-card-arrive .38s cubic-bezier(.16,1,.3,1) both;animation-delay:var(--route-card-delay, 0ms)}.route-card-select{gap:10px;min-height:132px;padding:18px 4px;border-radius:0}.route-card-select:hover{background:var(--planner-mist)}.route-card-select[aria-pressed=true]{position:relative;background:#e8f0ff;outline:0}.route-card-select[aria-pressed=true]:after{position:absolute;inset:0;border:2px solid var(--planner-blue);content:"";pointer-events:none}.route-card-select[aria-pressed=true] .route-card-swatch{animation:route-swatch-pulse .42s ease-out}.route-card-heading{align-items:flex-start}.route-card-swatch{margin-top:8px}.route-card-identity{display:flex;min-width:0;flex:1;flex-direction:column;gap:2px}.route-card-number{color:var(--planner-muted);font-size:14px;font-weight:600}.route-card-identity strong{font-size:18px;line-height:1.25}.route-card-score{color:var(--planner-blue-dark);font-size:20px;line-height:1.1}.route-card-explanation{color:var(--planner-ink);font-size:15px;line-height:1.5}.route-card-meta{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;color:var(--planner-muted);font-size:14px}.route-card-summary{color:var(--planner-ink)}.route-card-highlight{color:var(--planner-green);font-weight:700}.route-card-status{color:#92400e;font-weight:700}.route-card-status.is-invalid{color:#991b1b}.route-card-skeleton{height:132px;border-bottom:1px solid var(--planner-line);background:linear-gradient(100deg,var(--planner-mist) 20%,#fff 40%,var(--planner-mist) 60%);background-size:220% 100%;animation:route-skeleton 1.3s ease-in-out infinite}@keyframes route-skeleton{to{background-position-x:-220%}}.planner-map-col{display:flex;min-width:0;flex-direction:column;background:#fff}.planner-map-stage{position:relative;min-height:340px;flex:1 1 auto}#plannerMap{position:absolute;inset:0;width:100%;height:100%}.route-detail-panel{flex:0 0 auto;max-height:44%;overflow-y:auto;background:#fff;border-top:1px solid var(--planner-line)}.route-detail-panel.is-entering{animation:detail-panel-arrive .42s cubic-bezier(.16,1,.3,1) both}@keyframes planner-arrive{0%{clip-path:inset(0 0 12px 0);opacity:0;transform:translateY(10px)}to{clip-path:inset(0);opacity:1;transform:translateY(0)}}@keyframes route-card-arrive{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes route-swatch-pulse{0%{transform:scale(.8)}65%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes detail-panel-arrive{0%{box-shadow:0 -12px 28px #0f172a14;opacity:.2;transform:translateY(18px)}to{box-shadow:0 -2px 12px #0f172a0a;opacity:1;transform:translateY(0)}}.route-detail-heading{display:flex;align-items:center;justify-content:space-between;padding:18px 24px 12px}.route-selected-summary{margin-top:4px;color:var(--planner-muted);font-size:.9rem;font-weight:600}.route-detail-tabs{position:sticky;top:0;z-index:4;display:flex;overflow-x:auto;padding:0 24px;background:#fff;border-bottom:1px solid var(--planner-line)}.route-detail-tab{min-height:44px;padding:9px 14px;color:var(--planner-muted);font-weight:700;white-space:nowrap;background:transparent;border:0;border-bottom:2px solid transparent}.route-detail-tab:hover,.route-detail-tab:focus-visible{color:var(--planner-blue-dark)}.route-detail-tab.is-active{color:var(--planner-blue-dark);border-bottom-color:var(--planner-blue)}.route-detail-content{padding:20px 24px 28px}.route-overview-grid{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(280px,1.2fr);gap:16px;align-items:start}.route-compact-facts,.route-dna-card,.route-score-details{grid-column:1 / -1}.route-dna-card{border-left:3px solid var(--planner-blue)!important;background:linear-gradient(110deg,#f8fbff,#fff 58%)}.route-dna-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.route-dna-heading h3{margin:0;font-size:1.05rem;font-weight:800}.route-dna-eyebrow{margin:0 0 2px;color:var(--planner-blue);font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.route-dna-score{flex:0 0 auto;color:var(--planner-blue-dark);font-size:.9rem}.route-dna-summary,.route-dna-quality{margin:10px 0 0;color:var(--planner-muted);font-size:.8rem}.route-dna-traits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin-top:14px}.route-dna-traits>div>span{display:flex;justify-content:space-between;gap:8px;margin-bottom:4px;font-size:.76rem}.route-dna-traits small{color:var(--planner-muted)}.route-dna-traits progress{display:block;width:100%;height:6px;overflow:hidden;border:0;border-radius:999px;background:#dfe8f5}.route-dna-traits progress::-webkit-progress-bar{background:#dfe8f5}.route-dna-traits progress::-webkit-progress-value{background:var(--planner-blue);border-radius:999px}.route-dna-traits progress::-moz-progress-bar{background:var(--planner-blue);border-radius:999px}.route-dna-measurements{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0}.route-dna-measurements>div{display:inline-flex;gap:5px;padding:5px 8px;border:1px solid var(--planner-line);border-radius:999px;background:#fff;font-size:.75rem}.route-dna-measurements dt{color:var(--planner-muted)}.route-dna-measurements dd{margin:0;font-weight:800}@media(max-width:575px){.route-dna-traits{grid-template-columns:1fr}}.route-facts-inline{display:flex;flex-wrap:wrap;gap:0}.route-facts-inline>div{min-width:145px;padding:2px 20px;border-left:1px solid var(--planner-line)}.route-facts-inline>div:first-child{padding-left:0;border-left:0}.route-facts-inline dt{color:var(--planner-muted);font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.route-facts-inline dd{margin:2px 0 0;color:var(--planner-ink);font-size:1.1rem;font-weight:800}.route-facts-inline small{color:var(--planner-muted)}.route-characteristics{display:flex;flex-wrap:wrap;gap:8px}.route-characteristic{padding:5px 10px;color:var(--planner-blue-dark);font-size:.8rem;font-weight:750;background:var(--planner-mist);border:1px solid var(--planner-line);border-radius:999px}.route-inline-details summary,.route-score-details summary{color:var(--planner-blue-dark);cursor:pointer}.route-trains-card{border-left:3px solid var(--planner-blue)!important}.route-action-dock{position:sticky;bottom:0;z-index:5;display:flex;gap:10px;padding:12px 24px;background:#fffffff5;border-top:1px solid var(--planner-line);box-shadow:0 -8px 20px #0f172a0f;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.route-more-menu{margin-left:auto}.route-data-panel{margin:0}#elevation-container{min-height:0;overflow:hidden;background:#fff;border:1px solid var(--planner-line);border-radius:16px;box-shadow:0 12px 30px #0f172a0f}.route-profile-heading{padding:20px 20px 0}.route-profile-eyebrow{margin:0 0 4px;color:var(--planner-blue);font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.route-profile-heading h3{margin:0;color:var(--planner-ink);font-size:21px;font-weight:800;letter-spacing:-.02em}.profile-summary{margin:7px 0 0;color:var(--planner-muted);font-size:13px;line-height:1.5}.route-profile-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:18px 20px 0;padding:13px 0;background:var(--planner-mist);border:1px solid var(--planner-line);border-radius:12px}.route-profile-metrics>div{min-width:0;padding:0 12px;border-left:1px solid var(--planner-line)}.route-profile-metrics>div:first-child{border-left:0}.route-profile-metrics dt{overflow:hidden;margin-bottom:2px;color:var(--planner-muted);font-size:11px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.route-profile-metrics dd{margin:0;color:var(--planner-ink);font-size:17px;font-weight:800;font-variant-numeric:tabular-nums}.route-profile-visual,.route-profile-surface{padding:20px}.route-profile-surface{background:#fbfcfe;border-top:1px solid var(--planner-line)}.route-profile-subheading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.route-profile-subheading h4{margin:0;color:var(--planner-ink);font-size:14px;font-weight:800}.route-profile-subheading>span,.route-profile-subheading p{margin:0;color:var(--planner-muted);font-size:11px}.route-profile-chart{position:relative;height:220px}.route-profile-chart canvas{display:block;width:100%!important;height:100%!important}.surface-bar{display:flex;height:8px;margin-top:4px;overflow:hidden;background:var(--planner-mist);border-radius:999px}.surface-bar span,.surface-distribution span{min-width:2px}.surface-distribution{display:flex;height:24px;overflow:hidden;background:var(--planner-mist);border:1px solid var(--planner-line);border-radius:7px}.surface-legend{display:grid;gap:0;margin-top:12px}.surface-legend-item{display:grid;grid-template-columns:10px minmax(0,1fr) auto 38px;align-items:center;gap:9px;min-height:38px;border-bottom:1px solid var(--planner-line);color:var(--planner-muted);font-size:13px}.surface-legend-item:last-child{border-bottom:0}.surface-legend-swatch{width:10px;height:10px;border-radius:3px}.surface-legend-name{overflow:hidden;color:var(--planner-ink);font-weight:700;text-overflow:ellipsis;white-space:nowrap}.surface-legend-distance{font-variant-numeric:tabular-nums}.surface-legend-item strong{color:var(--planner-ink);font-variant-numeric:tabular-nums;text-align:right}.route-profile-empty{margin:0;padding:18px;color:var(--planner-muted);background:var(--planner-mist);border:1px dashed var(--planner-line);border-radius:10px;font-size:13px}.profile-segment-details{margin-top:14px;padding-top:12px;border-top:1px solid var(--planner-line)}.profile-segment-details summary{color:var(--planner-blue-dark);cursor:pointer;font-size:13px;font-weight:700}.profile-segment-details summary span{color:var(--planner-muted);font-weight:600}.profile-segments{max-height:220px;margin:12px 0 0;padding-left:24px;overflow:auto;color:var(--planner-muted);font-size:13px}.profile-segments li{padding:4px 0}.instructions-scroll{max-height:320px;overflow-y:auto}.planner-advanced-subsection{padding-top:12px;border-top:1px solid var(--planner-line)}.planner-advanced-subsection h3,#route-no-results{color:var(--planner-ink)}#route-no-results-list{padding-left:20px}@media(min-width:992px){.planner-workspace,.planner-sidebar-outer,.planner-map-col{height:calc(100dvh - 62px);min-height:calc(100dvh - 62px)}.planner-sidebar-inner{height:100%;overflow-y:auto}}@media(max-width:991.98px){.ts-routeplanner-page{overflow-x:clip;overscroll-behavior-y:auto}.planner-search-panel>.h4{margin-bottom:6px!important}.planner-search-panel>p.text-muted{margin-bottom:12px!important}.planner-beta-note{margin-bottom:18px!important;padding-block:8px}#planner-form>.mb-3{margin-bottom:12px!important}.planner-profile-option{padding-block:11px}#scoring-profile-help{margin-top:4px!important}.planner-advanced-options{margin-bottom:18px!important}.planner-primary-submit{position:sticky;bottom:calc(12px + env(safe-area-inset-bottom))}.planner-workspace{display:flex;min-height:0;flex-direction:column}.planner-sidebar-outer{position:relative!important;inset:auto;z-index:auto;order:1;display:block;width:100%;max-width:none;max-height:none;padding:0;border:0;border-radius:0;transform:none!important}.planner-sidebar-outer.is-panel-collapsed{min-height:56px}.planner-sidebar-inner{padding:20px 16px!important;overflow:visible!important}.planner-search-summary{align-items:flex-start;flex-direction:column}.planner-search-summary .btn{width:100%}.planner-map-col{position:relative!important;inset:auto;z-index:auto;order:2;height:auto!important;min-height:0}.planner-map-stage{height:min(58dvh,520px);min-height:360px;flex:none;scroll-margin-top:70px}.planner-map-col .leaflet-bottom,#zoom-warning{bottom:0!important}.route-detail-panel{max-height:none;overflow:visible}.route-detail-heading{padding:22px 16px 12px}.route-detail-tabs{padding:0 8px}.route-detail-content{padding:18px 16px 32px}.route-overview-grid{grid-template-columns:1fr}.route-facts-inline>div{min-width:50%;padding:8px 12px}.route-facts-inline>div:nth-child(odd){padding-left:0;border-left:0}.route-action-dock{gap:8px;padding:10px 12px max(10px,env(safe-area-inset-bottom))}.route-action-dock>.btn,.route-action-dock>#btn-save-route{flex:1 1 0}.route-action-dock>#btn-save-route .btn{width:100%}.route-action-dock .btn{min-height:44px;white-space:nowrap}}@media(max-width:575.98px){.route-profile-heading{padding:18px 16px 0}.route-profile-metrics{grid-template-columns:repeat(2,minmax(0,1fr));margin:16px 16px 0;padding:0}.route-profile-metrics>div{padding:11px 12px}.route-profile-metrics>div:nth-child(odd){border-left:0}.route-profile-metrics>div:nth-child(n+3){border-top:1px solid var(--planner-line)}.route-profile-visual,.route-profile-surface{padding:18px 16px}.route-profile-subheading>span{display:none}.route-profile-chart{height:180px}}@media(prefers-reduced-motion:reduce){.fade-in,.planner-sidebar-outer,#elevation-container,.planner-search-summary,.route-results-intro,.route-options,.route-card,.route-card-swatch,.route-detail-panel,.planner-station-icon,.planner-station-input,.planner-station-listbox,.planner-map-pick,.planner-primary-submit,#journey-controls,#btn-swap-stations i,#planner-form>.mb-3,#to-station-wrapper,.journey-timeline li,.planner-recommendation,.escape-item,.leaflet-fade-anim .leaflet-popup,.leaflet-zoom-animated{animation:none!important;transition:none!important}.planner-advanced-options::details-content,.planner-left-section::details-content,.route-inline-details::details-content,.route-score-details::details-content{transition:none!important}.route-card-skeleton{animation:none}}.planner-station-wrapper{position:relative}.planner-station-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--planner-muted);font-size:16px;pointer-events:none;z-index:1;transition:color .18s ease,transform .22s cubic-bezier(.16,1,.3,1)}.planner-station-combobox{position:relative}.planner-station-input{width:100%;padding-left:42px;transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease}.planner-station-wrapper.is-complete .planner-station-input{background:#f4fbf7;border-color:#72b89b;box-shadow:inset 3px 0 0 var(--planner-green)}.planner-station-wrapper.is-complete .planner-station-icon{color:var(--planner-green);transform:translateY(-50%) scale(1.12)}.planner-station-listbox{position:absolute;top:100%;left:0;right:0;z-index:100;max-height:280px;overflow-y:auto;margin:0;padding:0;list-style:none;background:#fff;border:1px solid var(--planner-line);border-top:0;border-radius:0 0 8px 8px;box-shadow:0 8px 24px #0f172a1f;transform-origin:top;transition:max-height .15s ease,opacity .15s ease,transform .18s cubic-bezier(.16,1,.3,1)}@starting-style{.planner-station-listbox:not([hidden]){opacity:0;transform:translateY(-5px) scaleY(.98)}}.planner-station-listbox [role=option]{min-height:44px;padding:8px 14px;color:var(--planner-ink);font-size:16px;font-weight:400;background:#fff;border:0;cursor:pointer;transition:background-color .1s ease,color .1s ease}.planner-station-listbox [role=option]:hover,.planner-station-listbox [role=option].is-active{background:var(--planner-mist);color:var(--planner-blue-dark)}.planner-station-listbox [role=option].is-selected{background:#e8f0ff;color:var(--planner-blue-dark);font-weight:700}.planner-station-listbox [role=option].is-highlighted{font-weight:700}.planner-station-listbox .planner-station-name{display:block;line-height:1.3}.planner-station-listbox .planner-station-name mark{background:#fef08a;color:inherit;font-weight:700;border-radius:2px;padding:0 1px}.planner-station-group,.planner-station-empty{padding:8px 14px;color:var(--planner-muted);font-size:13px;background:var(--planner-mist)}.planner-station-group{position:sticky;top:0;z-index:1;font-weight:800;letter-spacing:.03em;text-transform:uppercase;border-block:1px solid var(--planner-line)}.planner-station-empty{min-height:44px;background:#fff}.planner-map-pick{min-height:44px;padding:4px 0!important;white-space:nowrap;text-decoration:none;transition:color .16s ease,background-color .16s ease,transform .16s ease}.planner-map-pick[aria-pressed=true]{color:#fff!important;background:var(--planner-blue-dark);transform:translateY(-1px)}.planner-trip-type{display:block;min-height:44px;padding:0;border:0}.planner-trip-type>.form-check{margin:0!important}.planner-primary-submit{position:relative;z-index:20;min-height:50px!important;padding-block:10px;margin-bottom:14px;box-shadow:0 8px 22px #1565f933;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}.planner-primary-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 28px #1565f947}.planner-primary-submit:active:not(:disabled){transform:translateY(0) scale(.99);box-shadow:0 5px 14px #1565f933}.planner-profile-option{display:grid;min-height:64px;grid-template-columns:28px minmax(0,1fr);grid-template-areas:"icon title" "icon description";align-content:center;justify-items:start;padding:10px;text-align:left}.planner-profile-option-icon{grid-area:icon;align-self:start;margin:2px 0 0;font-size:1.2rem}.planner-profile-option>.fw-semibold{grid-area:title}.planner-profile-option-desc{grid-area:description;display:none}#journey-controls.is-revealing{animation:planner-disclosure-in .26s cubic-bezier(.16,1,.3,1) both}.planner-advanced-options,.planner-left-section,.route-inline-details,.route-score-details{interpolate-size:allow-keywords}.planner-advanced-options::details-content,.planner-left-section::details-content,.route-inline-details::details-content,.route-score-details::details-content{height:0;overflow:clip;opacity:0;transition:height .24s cubic-bezier(.16,1,.3,1),opacity .18s ease,content-visibility .24s allow-discrete}.planner-advanced-options[open]::details-content,.planner-left-section[open]::details-content,.route-inline-details[open]::details-content,.route-score-details[open]::details-content{height:auto;opacity:1}#btn-swap-stations.is-swapping i{animation:planner-swap .34s cubic-bezier(.16,1,.3,1)}#planner-form>.mb-3.is-swapping,#to-station-wrapper.is-swapping{animation:planner-swap-field .34s ease-out}.journey-timeline li,.planner-recommendation,.escape-item{animation:planner-item-in .28s cubic-bezier(.16,1,.3,1) both}@keyframes planner-disclosure-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes planner-swap{50%{transform:rotate(180deg) scale(1.15)}to{transform:rotate(360deg) scale(1)}}@keyframes planner-swap-field{0%,to{background:transparent}45%{background:#e8f0ff}}@keyframes planner-item-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@media(max-width:991.98px){.planner-beta-note{display:flex;align-items:center!important;min-height:44px}.planner-profile-option{min-height:64px}.planner-trip-type{margin-bottom:8px!important}}.planner-endpoint-actions{display:flex;flex-wrap:wrap;gap:8px}.planner-endpoint-actions .btn{flex:1 1 140px}.planner-endpoint-badge{padding:3px 8px;color:var(--planner-blue-dark);font-size:12px;font-weight:800;letter-spacing:.02em;background:#e8f0ff;border:1px solid #b8cdf8;border-radius:999px}.planner-place-attribution{padding-bottom:10px;border-bottom:1px solid var(--planner-line)}.planner-anchor-row,.route-editor-deltas>div{display:flex;justify-content:space-between;gap:16px;padding:6px 0;border-bottom:1px solid var(--planner-line)}#transport-anchors-card{grid-column:1 / -1;margin-top:0!important}.planner-anchor-row:last-child,.route-editor-deltas>div:last-child{border-bottom:0}.planner-anchor-row dt,.route-editor-deltas dt{color:var(--planner-muted);font-weight:600}.planner-anchor-row dd,.route-editor-deltas dd{margin:0;font-weight:700;text-align:right}.route-editor-deltas{margin:0 0 12px;padding:8px 10px;background:#fff;border:1px solid var(--planner-line);border-radius:8px}.route-editor-deltas dd.is-positive{color:#9a3412}.route-editor-deltas dd.is-negative{color:var(--planner-green)}.planner-editing #plannerMap{cursor:crosshair}.route-editor-panel{margin-top:20px;padding-top:18px;border-top:1px solid var(--planner-line)}.route-editor-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.route-editor-actions .btn{min-width:44px;min-height:44px}.route-editor-waypoints{display:flex;flex-direction:column;gap:6px;max-height:260px;overflow-y:auto;margin-bottom:12px}.planner-waypoint-item{display:flex;align-items:center;gap:6px;min-height:44px;padding:4px 8px;background:var(--planner-mist);border:1px solid var(--planner-line);border-radius:8px}.planner-waypoint-item.is-selected{background:#e8f0ff;border-color:var(--planner-blue);box-shadow:inset 0 0 0 1px var(--planner-blue)}.planner-waypoint-item.is-reorderable{cursor:grab}.planner-waypoint-select{flex:1 1 auto;min-height:36px;text-align:left;color:var(--planner-ink);font-weight:600;font-size:14px;background:transparent;border:0;border-radius:6px}.planner-waypoint-select:hover,.planner-waypoint-select:focus-visible{color:var(--planner-blue-dark);outline:2px solid rgba(21,101,249,.4);outline-offset:2px}.planner-waypoint-remove{flex:none;min-height:36px;min-width:44px;color:#c2410c;font-size:14px;font-weight:600;background:transparent;border:0;border-radius:6px}.planner-waypoint-remove:hover,.planner-waypoint-remove:focus-visible{color:#fff;background:#c2410c;outline:2px solid #c2410c;outline-offset:1px}.planner-editor-marker{display:grid;place-items:center;width:100%;height:100%;color:#fff;font-size:13px;font-weight:800}.planner-editor-marker-start{background:var(--planner-green);border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 1px var(--planner-ink)}.planner-editor-marker-end{background:var(--planner-ink);border:3px solid #fff;border-radius:8px;box-shadow:0 0 0 1px var(--planner-ink)}.planner-editor-marker-via{background:#fbbf24;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px var(--planner-ink)}.planner-editor-marker.is-selected{outline:3px solid var(--planner-blue);outline-offset:2px}.leaflet-marker-icon.planner-editor-marker{filter:drop-shadow(0 1px 3px rgb(15 23 42 / 45%))}.leaflet-tip{font-size:13px;font-weight:600}.route-editor-footer .btn{min-height:44px}@media(max-width:991.98px){.route-editor-footer .btn{flex:1 1 0}.planner-facility-options{grid-template-columns:1fr}.journey-heading{align-items:flex-start!important}}#planner-route-section{position:relative;z-index:100;overflow:visible}#planner-profile-section,#planner-submit,.planner-submit-promise,.planner-accessibility-section,#planner-advanced-options{position:relative;z-index:1}#planner-route-section::details-content,#planner-profile-section::details-content{overflow:visible}#planner-route-section>.planner-left-section-content,#planner-route-section .planner-route-fields,#planner-route-section .planner-station-field,#planner-route-section .planner-station-combobox{overflow:visible}#planner-route-section .planner-station-field:focus-within{z-index:200}#planner-route-section .planner-station-listbox{z-index:1000;border-top:1px solid var(--planner-line);border-radius:10px;box-shadow:0 16px 36px #0f172a33}
