/* Results only, desktop only. Phone/tablet DOM is restored by desktop-results.js. */
@media(min-width:1100px){
 body.route-page.is-desktop-plan{background:#f4f8fc;color:#17324f;}
 body.is-desktop-plan .site-header{border-radius:0;box-shadow:none;border-bottom:1px solid #dce5f0;}

 body.is-desktop-plan #routePlanner{--ink:#17324f;--muted:#596d83;--blue:#1c67c9;--blue-soft:#edf3fc;--line:#dce5f0;}
 body.is-desktop-plan #routePlanner main{max-width:none;padding:0 26px 20px;}
 body.is-desktop-plan #routePlanner .journey-progress{display:none;}
 body.is-desktop-plan #routePlanner .results{margin:0;padding:0;}
 body.is-desktop-plan #routePlanner .results-heading{height:122px;display:flex;align-items:center;gap:24px;margin:0;padding:12px 10px;}
 body.is-desktop-plan #routePlanner .results-heading>div{flex:1;min-width:260px;}
 body.is-desktop-plan #routePlanner .results-heading .eyebrow{display:block;color:#596d83;margin:0 0 5px;}
 body.is-desktop-plan #routePlanner .results-heading h2{margin:0 0 7px;color:#17324f;}
 body.is-desktop-plan #routePlanner .trip-via-summary{color:#596d83;margin:0;}
 body.is-desktop-plan #routePlanner #resultsSummary{margin:5px 0 0;color:#596d83;}
 body.is-desktop-plan #routePlanner .journey-route-line{flex:none;border:0;margin:0;padding:0;gap:12px;display:flex;align-items:center;max-width:350px;}
 body.is-desktop-plan #routePlanner .route-metadata{position:relative;}
 body.is-desktop-plan #routePlanner .route-metadata summary{white-space:nowrap;color:#596d83;}
 body.is-desktop-plan #routePlanner .route-metadata[open]{background:white;position:absolute;z-index:30;right:175px;top:100px;padding:15px;max-width:400px;border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 20px #17324f15;}
 body.is-desktop-plan #routePlanner #editTrip{flex:none;border:1px solid #d8e2e8;border-radius:8px;padding:10px 15px;min-height:40px;}
 body.is-desktop-plan #routePlanner #changeRoute{white-space:nowrap;}
 body.is-desktop-plan #routePlanner .priority-sentinel,body.is-desktop-plan #routePlanner .view-back,body.is-desktop-plan #routePlanner .mobile-results-nav{display:none;}
 body.is-desktop-plan #routePlanner .results-primary{display:grid!important;grid-template-columns:428px minmax(0,1fr);gap:18px;padding:0;align-items:stretch;height:calc(100dvh - var(--desktop-plan-top,210px) - 20px);min-height:360px;}
 body.is-desktop-plan .desktop-plan-panel{display:flex;flex-direction:column;min-height:0;min-width:0;background:#fff;border:1px solid #e1e8ec;border-radius:13px;box-shadow:0 3px 16px #27445206;overflow:hidden;}
 body.is-desktop-plan .desktop-plan-scroll{min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#d5e2e9 transparent;padding:22px 22px 16px;}
 body.is-desktop-plan #routePlanner .desktop-plan-heading{margin:0 0 17px;}
 body.is-desktop-plan #routePlanner .result-priority{display:block;position:static;top:auto;z-index:auto;margin:0 0 16px;padding:0;border:0;background:transparent;box-shadow:none;}
 body.is-desktop-plan #routePlanner .priority-heading{display:none;}
 body.is-desktop-plan #routePlanner #resultPriority{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:4px;background:#f1f5f7;border:0;border-radius:8px;}
 body.is-desktop-plan #routePlanner #resultPriority button{display:flex;flex-direction:column;gap:2px;align-items:center;justify-content:center;min-height:50px;padding:6px 3px;border:0;border-radius:5px;background:transparent;color:#596d83;box-shadow:none;text-align:center;}
 body.is-desktop-plan #routePlanner #resultPriority button[aria-pressed=true]{background:#fff;box-shadow:0 1px 5px #23495718;color:#1c67c9;}
 body.is-desktop-plan #routePlanner #resultPriority button::after{display:none;}
 body.is-desktop-plan #routePlanner .priority-mode{white-space:nowrap;}
 body.is-desktop-plan #routePlanner .priority-cost{}
 body.is-desktop-plan #routePlanner .priority-detail{display:block;color:var(--muted);font-size:11px;white-space:normal;line-height:1.2;}
body.is-desktop-plan #routePlanner .priority-detail > span{display:block;margin-top:1px;}
 body.is-desktop-plan #routePlanner .skeleton-price{width:55px;height:10px;}
 body.is-desktop-plan #routePlanner #priorityStatus:empty{display:none;}
 body.is-desktop-plan #routePlanner #priorityStatus{margin:7px 0 0;}
 body.is-desktop-plan #routePlanner .best-station{padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;}
 body.is-desktop-plan #routePlanner .plan-budget{padding:0 0 18px;border-bottom:1px solid var(--line);margin:0 0 19px;}
 body.is-desktop-plan #routePlanner .plan-budget-top{display:flex;flex-direction:column;align-items:flex-start;gap:8px;position:relative;}
 body.is-desktop-plan #routePlanner .plan-budget-top>span{color:#596d83;max-width:none;}
 body.is-desktop-plan #routePlanner .plan-budget-top>span small{color:#596d83;position:absolute;left:0;top:81px;}
 body.is-desktop-plan #routePlanner .plan-budget-top>strong{color:#17324f;}
 body.is-desktop-plan #routePlanner #planDifference{color:#596d83;margin:37px 0 0;}
 body.is-desktop-plan #routePlanner .stops-heading{margin:0 0 12px;}
 body.is-desktop-plan #routePlanner .plan-stop{border:1px solid transparent;border-bottom:1px solid #e7edf0;margin:0;padding:0;background:transparent;border-radius:0;}
 body.is-desktop-plan #routePlanner .plan-stop[open]{border:1px solid #c5d8ef;border-radius:9px;background:#edf3fc;margin:3px 0 7px;}
 body.is-desktop-plan #routePlanner .plan-stop.is-selected{box-shadow:none;}
 body.is-desktop-plan #routePlanner .stop-row{display:grid;grid-template-columns:25px minmax(0,1fr) auto 10px;gap:10px;padding:13px 10px;min-height:76px;align-items:center;}
 body.is-desktop-plan #routePlanner .stop-row>.station-logo{display:none;}
 body.is-desktop-plan #routePlanner .stop-number{grid-column:1;grid-row:1;width:24px;height:24px;border:1px solid #c7dce7;border-radius:50%;background:white;color:#596d83;transform:none;display:flex;align-items:center;justify-content:center;}
 body.is-desktop-plan #routePlanner .plan-stop[open] .stop-number{background:#1c67c9;color:#fff;border-color:#1c67c9;box-shadow:0 0 0 4px #edf3fc;}
 body.is-desktop-plan #routePlanner .stop-row-place{grid-column:2;grid-row:1;padding:0;min-width:0;}
 body.is-desktop-plan #routePlanner .stop-row-place>strong{}
 body.is-desktop-plan #routePlanner .stop-row-place>small{color:#596d83;margin-top:4px;}
 body.is-desktop-plan #routePlanner .stop-row-purchase{grid-column:3;grid-row:1;display:flex;flex-direction:column;gap:3px;text-align:right;}
 body.is-desktop-plan #routePlanner .stop-row-purchase>small{order:0;color:#17324f;}
 body.is-desktop-plan #routePlanner .stop-row-purchase>strong{order:1;color:#596d83;}
 body.is-desktop-plan #routePlanner .stop-row-chevron{grid-column:4;grid-row:1;}
 body.is-desktop-plan #routePlanner .stop-details{padding:0 14px 14px 46px;margin:0;border:0;}
 body.is-desktop-plan #routePlanner .stop-purchase{display:none;}
 body.is-desktop-plan #routePlanner .stop-opening,body.is-desktop-plan #routePlanner .stop-leg,body.is-desktop-plan #routePlanner .stop-price,body.is-desktop-plan #routePlanner .stop-address{margin:0 0 7px;}
 body.is-desktop-plan #routePlanner .stop-address{color:#596d83;}
 body.is-desktop-plan #routePlanner .stop-map-link{min-height:28px;padding:0;}
 body.is-desktop-plan #routePlanner .cost-explanation,body.is-desktop-plan #routePlanner .navigation-details{color:#596d83;margin:14px 0;padding:0;border:0;background:transparent;}
 body.is-desktop-plan #routePlanner .cost-explanation summary,body.is-desktop-plan #routePlanner .navigation-details summary{}
 body.is-desktop-plan #routePlanner .arrival-calculation{padding:12px 0;margin:10px 0 0;border:0;background:transparent;}
 body.is-desktop-plan #routePlanner .arrival-summary{}
 body.is-desktop-plan #routePlanner .arrival-summary strong{}
 body.is-desktop-plan #routePlanner .desktop-vehicle{border:1px solid var(--line);border-radius:8px;margin-top:16px;padding:12px;background:#fcfdfd;}
 body.is-desktop-plan #routePlanner .desktop-vehicle>summary{display:flex;justify-content:space-between;align-items:center;list-style:none;cursor:pointer;gap:10px;padding-right:2px;}
 body.is-desktop-plan #routePlanner .desktop-vehicle>summary::-webkit-details-marker{display:none;}
 body.is-desktop-plan #routePlanner .desktop-vehicle small{display:block;color:#596d83;margin-top:4px;max-width:calc(100% - 12px);}
 body.is-desktop-plan #routePlanner .calculation-settings{margin-top:12px;}
 body.is-desktop-plan #routePlanner .calculation-setting{padding:10px 12px;min-height:60px;border-color:#e0e8f2;background:#f8fbff;gap:4px;}
 body.is-desktop-plan #routePlanner .calculation-setting>span{display:flex;flex-direction:column;line-height:1.25;gap:3px;}
 body.is-desktop-plan #routePlanner .calculation-setting strong{display:block;font-size:14px;line-height:1.15;color:#17324f;order:2;}
 body.is-desktop-plan #routePlanner .calculation-setting small{display:block;margin:0;color:#7187a2;font-size:11px;line-height:1.2;order:1;}
 body.is-desktop-plan #routePlanner .calculation-setting strong .ui-icon{width:14px;height:14px;}
 body.is-desktop-plan #routePlanner .desktop-alternatives{border-top:1px solid var(--line);padding-top:15px;margin-top:18px;}
 body.is-desktop-plan #routePlanner .desktop-alternatives>summary{display:flex;justify-content:space-between;cursor:pointer;list-style:none;}
 body.is-desktop-plan #routePlanner .desktop-alternatives>summary::-webkit-details-marker{display:none;}
 body.is-desktop-plan #routePlanner .desktop-alternatives[open]>summary{margin-bottom:15px;}
 body.is-desktop-plan #routePlanner .results-workspace{border:0;padding:0;margin:0;display:block;}
 body.is-desktop-plan #routePlanner .alternative-heading h3{display:none;}
 body.is-desktop-plan #routePlanner .alternative-heading p{}
 body.is-desktop-plan #routePlanner .station-results{display:block;}
 body.is-desktop-plan #routePlanner .station-card{padding:13px;margin:0 0 12px;}
 body.is-desktop-plan .desktop-plan-footer{background:white;border-top:1px solid #dce5f0;padding:13px 22px 10px;flex:none;}
 body.is-desktop-plan #routePlanner .desktop-plan-footer .navigation-dock{position:static;inset:auto;margin:0;padding:0;background:transparent;border:0;box-shadow:none;}
 body.is-desktop-plan #routePlanner .desktop-plan-footer .navigation-app{min-height:46px;padding:11px 13px;border-radius:8px;background:#1c67c9;border-color:#1c67c9;box-shadow:none;}
 body.is-desktop-plan #routePlanner .desktop-plan-footer .navigation-app img{width:22px;height:22px;}
 body.is-desktop-plan #routePlanner .desktop-plan-footer .navigation-app strong{}
 body.is-desktop-plan #routePlanner .desktop-plan-footer .navigation-app small{}
 body.is-desktop-plan #routePlanner .desktop-plan-footer .maps-compatibility{display:none;}
 body.is-desktop-plan #routePlanner .desktop-plan-footer .maps-fallback{min-height:25px;padding:6px 0 0;}
 body.is-desktop-plan #routePlanner .desktop-plan-footer .maps-fallback small{}
 body.is-desktop-plan #routePlanner .results-map-mount{display:block!important;position:relative;top:auto;height:100%;min-height:0;border:1px solid #dce5e7;border-radius:13px;overflow:hidden;}
 body.is-desktop-plan #routePlanner .results-map-mount .map-panel{height:100%;min-height:0;border:0;border-radius:0;}
 body.is-desktop-plan #routePlanner .results-map-mount .map{height:100%;min-height:0;}
 body.is-desktop-plan #routePlanner .route-base-map{filter:none;}
 body.is-desktop-plan #routePlanner .map-overlay--top{left:18px;top:18px;border-radius:7px;background:#ffffffef;box-shadow:0 2px 10px #16394410;padding:9px 11px;}
 body.is-desktop-plan #routePlanner .map-station-mode{top:63px;right:18px;left:auto;border-radius:8px;box-shadow:0 2px 10px #16394410;}
 body.is-desktop-plan #routePlanner .map-station-mode button{padding:10px;}
 body.is-desktop-plan #routePlanner .fit-route{border-radius:8px;bottom:24px;left:18px;padding:10px 13px;}
 body.is-desktop-plan #routePlanner .ol-zoom{border-radius:8px;overflow:hidden;right:18px;bottom:24px;}
 body.is-desktop-plan #routePlanner .ol-attribution{}
}
@media(min-width:1100px) and (max-width:1250px){body.is-desktop-plan #routePlanner .results-primary{grid-template-columns:385px minmax(0,1fr);gap:14px;}body.is-desktop-plan .desktop-plan-scroll{padding:19px;}body.is-desktop-plan #routePlanner .results-heading{gap:12px;}body.is-desktop-plan #routePlanner .journey-route-line{max-width:260px;}body.is-desktop-plan #routePlanner #changeRoute{display:none;}}
@media(min-width:1600px){body.is-desktop-plan #routePlanner main{padding-inline:32px;}body.is-desktop-plan #routePlanner .results-primary{grid-template-columns:460px minmax(0,1fr);gap:22px;}body.is-desktop-plan .desktop-plan-scroll{padding:26px;}}

@media(min-width:1100px){
 body.is-desktop-plan .site-header__shell{border-radius:0;box-shadow:none;}
 body.is-desktop-plan #routePlanner .plan-stop.is-selected{border:1px solid #c5d8ef;border-radius:9px;background:#edf3fc;margin:3px 0 7px;}
 body.is-desktop-plan #routePlanner .plan-stop.is-selected .stop-number{background:#1c67c9;color:#fff;border-color:#1c67c9;}
 body.is-desktop-plan #routePlanner #resultsSummary{}
}

/* Same map presentation across desktop phases. No mobile rules. */
@media(min-width:1100px){
 body.route-page #routePlanner .route-base-map{filter:none;}
 body.route-page #routePlanner .map-overlay--top{left:18px;top:18px;border-radius:7px;background:#ffffffef;box-shadow:0 2px 10px #16394410;padding:9px 11px;}
 body.route-page #routePlanner .map-station-mode{top:63px;right:18px;left:auto;border-radius:8px;box-shadow:0 2px 10px #16394410;}
 body.route-page #routePlanner .map-station-mode button{padding:10px;}
 body.route-page #routePlanner .fit-route{border-radius:8px;bottom:24px;left:18px;padding:10px 13px;}
 body.route-page #routePlanner .ol-zoom{border-radius:8px;overflow:hidden;right:18px;bottom:24px;}
 body.route-page #routePlanner .ol-attribution{}
 body.route-page #routePlanner .planner-shell>.map-panel,body.route-page #routePlanner .review-map-mount,body.route-page #routePlanner .results-map-mount{border:1px solid #dce5e7;border-radius:13px;overflow:hidden;}
}
@media(min-width:1100px){
 body.route-page #routePlanner main{max-width:none;padding-inline:26px;--desktop-columns:428px minmax(0,1fr);}
 body.route-page #routePlanner .planner-shell,body.route-page #routePlanner .route-review{column-gap:18px;}
}
@media(min-width:1100px) and (max-width:1250px){
 body.route-page #routePlanner main{--desktop-columns:385px minmax(0,1fr);}
 body.route-page #routePlanner .planner-shell,body.route-page #routePlanner .route-review{column-gap:14px;}
}
@media(min-width:1600px){
 body.route-page #routePlanner main{padding-inline:32px;--desktop-columns:460px minmax(0,1fr);}
 body.route-page #routePlanner .planner-shell,body.route-page #routePlanner .route-review{column-gap:22px;}
}

/* Keep the original typography and palette within the desktop layout. */
@media(min-width:1100px){
 body.route-page #routePlanner .review-heading{grid-column:1;grid-row:1;}
 body.route-page #routePlanner .route-tabs{grid-column:1;grid-row:2;grid-template-columns:1fr;}
 body.route-page #routePlanner .review-map-mount{grid-column:2;grid-row:1/6;height:clamp(400px,calc(100dvh - 340px),760px);}
 body.is-desktop-plan #routePlanner .stop-row{grid-template-columns:24px 32px minmax(0,1fr) auto 10px;gap:8px;padding-inline:3px;}
 body.is-desktop-plan #routePlanner .stop-row>.station-logo{display:inline-flex;grid-column:2;grid-row:1;width:32px;height:32px;}
 body.is-desktop-plan #routePlanner .stop-row-place{grid-column:3;}
 body.is-desktop-plan #routePlanner .stop-row-purchase{grid-column:4;}
 body.is-desktop-plan #routePlanner .stop-row-chevron{grid-column:5;}
 body.is-desktop-plan #routePlanner .priority-cost{font-size:17px;}
 body.is-desktop-plan #routePlanner .desktop-plan-heading{font-size:20px;}
 body.is-desktop-plan #routePlanner .desktop-vehicle>summary{font-size:14px;}
 body.is-desktop-plan #routePlanner .desktop-vehicle small{font-size:12px;}
 body.is-desktop-plan #routePlanner .plan-budget-top>span small{position:static;display:block;margin-top:4px;}
 body.is-desktop-plan #routePlanner #planDifference{margin-top:12px;}
 body.is-desktop-plan #routePlanner .stop-row-purchase>small{font-size:17px;font-weight:650;}
 body.is-desktop-plan #routePlanner .stop-row-purchase>strong{font-size:12px;font-weight:400;}
}

/* Give editable inputs and the plan room beside the map. */
@media(min-width:1100px){
 body.is-desktop-plan .desktop-plan-scroll {padding:18px 22px;}
 body.is-desktop-plan #routePlanner .desktop-plan-heading {margin-bottom:12px;}
 body.is-desktop-plan #routePlanner .plan-budget {padding-bottom:12px;margin-bottom:14px;}
 body.is-desktop-plan #routePlanner .plan-budget-top {flex-direction:row;align-items:center;justify-content:space-between;gap:12px;}
 body.is-desktop-plan #routePlanner .plan-budget-top>span {flex:1;max-width:none;}
 body.is-desktop-plan #routePlanner .plan-budget-top>strong {flex:none;margin-left:auto;font-size:30px;text-align:right;}
 body.is-desktop-plan #routePlanner #planDifference {margin-top:8px;}
 body.is-desktop-plan #routePlanner .arrival-calculation {padding:8px 0;margin-top:8px;}
}
