.energy-controls{padding:26px;display:grid;grid-template-columns:1fr 1.05fr;gap:38px;border-bottom:1px solid #40535f;background:#15232d}.energy-controls label{display:flex;justify-content:space-between;gap:20px;font-size:13px;color:#d8e7ed;font-weight:600}.energy-controls output{font:600 24px/1 Archivo,Arial,sans-serif;color:#6fe3ea}.energy-controls input[type=range]{width:100%;accent-color:#6fe3ea;margin:22px 0 16px;cursor:pointer;min-height:26px}.charge-presets{display:flex;gap:8px;flex-wrap:wrap}.charge-presets button{background:transparent;border:1px solid #52717f;color:#c6d9e2;padding:9px 12px;font-size:12px;min-height:42px;border-radius:7px}.charge-presets button[aria-pressed=true]{background:#6fe3ea;color:#10212a;border-color:#6fe3ea}.energy-explanation>p{font-size:15px;line-height:1.65;color:#e0ecf1;max-width:540px}.energy-explanation details{margin-top:14px;font-size:12px;line-height:1.65;color:#b4c9d4}.energy-explanation summary{cursor:pointer;min-height:36px}.energy-explanation details p{padding-top:8px;max-width:570px}
.direct-option{display:flex;align-items:center;justify-content:space-between;gap:16px;background:transparent;border:1px solid #536c79;border-radius:10px;color:#e5f0f5;padding:17px;width:100%;text-align:left;margin-bottom:16px;min-height:76px}.direct-option strong{display:block;font-size:16px}.direct-option small{display:block;margin-top:6px;font-size:13px;color:#c2d4dd}.direct-option[aria-pressed=true]{background:#1a4149;border-color:#6fe3ea;box-shadow:inset 0 0 0 1px #6fe3ea}.direct-option:disabled{opacity:.5;cursor:not-allowed}.incident-toggle{display:flex;align-items:center;gap:10px;font-size:12px;color:#bdcfd8;padding-block:9px 20px;cursor:pointer;min-height:44px}.incident-toggle input{width:17px;height:17px;accent-color:#6fe3ea}.incident-message{padding:14px;background:#48382a;color:#ffdbb0;border-left:3px solid #f5b65a;margin-bottom:17px;font-size:13px;line-height:1.65}.station:disabled{opacity:.48;cursor:not-allowed}.station-panel{padding:25px}.panel-heading h3{font-size:23px}.panel-heading p{font-size:13px}.station{padding:16px}.station-name{font-size:16px}.station-state{font-size:12px}.station-stats small{font-size:11px}.station-stats b{font-size:23px}.trip-summary{scroll-margin-top:100px}.trip-summary:focus{outline:2px solid #6fe3ea;outline-offset:7px}.trip-summary dl{display:grid;grid-template-columns:1fr 1fr;gap:15px}.trip-summary dl>div{display:block;border:0!important;padding:0!important}.trip-summary dl>div:first-child{grid-column:1/-1}.trip-summary dt{font-size:12px;margin-bottom:7px}.trip-summary dd{font:550 28px/1.15 Archivo,Arial,sans-serif;color:#edf5f8}.trip-summary dl>div:first-child dd{font-size:42px}.trip-summary dl>div:last-child dd{color:#6fe3ea}.trip-tradeoff{font-size:13px;line-height:1.6;color:#d5edf0;border-left:2px solid #6fe3ea;padding-left:12px;margin-top:20px}.time-breakdown{font-size:12px;line-height:1.6}.confirmed-energy{color:#6fe3ea;font-size:14px;line-height:1.6;margin-top:15px}.confirm-button:disabled{opacity:.4;cursor:not-allowed}.hmi-body{align-items:stretch}.map-area{align-self:stretch;display:flex;flex-direction:column}.route-map{flex:1;min-height:430px;max-height:660px}.hmi-controls legend{font-size:13px}.route-option{font-size:14px}.route-option>span{font-size:12px}.reset-button{font-size:12px;min-height:44px}.sim-intro>p,.section-head>p,.context-copy>p{font-size:16px}.decision small{font-size:13px}.decision-copy>p{font-size:15px;line-height:1.7}.context-detail p{font-size:14px}.context-detail>span{font-size:13px}.mobile-tripbar{display:none}
@media(max-width:1050px){.energy-controls{gap:24px;padding:22px}.hmi-body{grid-template-columns:1fr 1fr}.station-panel{padding:20px}.station-stats{gap:8px}.station-stats b{font-size:21px}.map-area .route-map{min-height:380px}.trip-summary dl{grid-template-columns:1fr}.trip-summary dl>div:first-child{grid-column:auto}.trip-summary dl>div:first-child dd{font-size:36px}}
@media(max-width:650px){.energy-controls{display:block;padding:22px 17px}.energy-explanation{margin-top:24px}.energy-explanation>p{font-size:14px}.energy-explanation details{font-size:12px}.charge-presets{gap:7px}.charge-presets button{font-size:12px;padding:9px 10px}.hmi-body{display:block}.route-map,.map-area .route-map{min-height:0;height:250px;flex:none;max-height:250px}.map-trip{font-size:12px}.map-trip>span:last-child{font-size:11px}.station-panel{padding:22px 17px}.station-options{gap:12px}.station{min-height:0}.station-stats{margin-top:14px}.station-stats small{font-size:12px}.station-stats b{font-size:24px}.incident-toggle{font-size:12px;line-height:1.5}.trip-summary dl{grid-template-columns:1fr 1fr}.trip-summary dl>div:first-child{grid-column:1/-1}.trip-summary dd{font-size:26px}.trip-summary dl>div:first-child dd{font-size:38px}.trip-tradeoff{font-size:14px}.time-breakdown{font-size:12px}.sim-intro>p,.section-head>p,.context-copy>p{font-size:15px}.decision small,.decision-copy>p{font-size:14px}.decision-copy>span{font-size:11px}.context-detail p{font-size:14px}.route-option{font-size:13px}.route-option>span{font-size:12px}.hmi-controls legend{font-size:12px;line-height:1.5}.sim-section{padding-bottom:110px}.mobile-tripbar:not([hidden]){position:fixed;z-index:50;left:16px;right:16px;bottom:12px;background:#e4f8f9;color:#102b34;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 15px;border:1px solid #93d5db;border-radius:12px;box-shadow:0 8px 30px #0005}.mobile-tripbar>div>span,.mobile-tripbar strong{display:block;font-size:12px;line-height:1.6}.mobile-tripbar strong{font-size:15px}.mobile-tripbar button{font-size:13px;border:0;background:#143640;color:white;padding:12px;border-radius:6px;min-height:44px}.confirmation-note,.hmi-foot{font-size:11px}.hmi-foot{line-height:1.6}.sim-caption{font-size:10px}.closing{padding-block:65px}.closing h2{font-size:44px}}

/* A route screen, with destinations and energy kept in the same frame. */
.hmi{scroll-margin-top:90px}.route-search{display:grid;grid-template-columns:minmax(130px,1fr) 22px minmax(130px,1fr) auto;align-items:end;gap:12px;flex:1}.route-search>div{min-width:0}.route-search label{font-size:11px;color:#b4cad5;display:block;margin-bottom:7px}.route-search input{width:100%;min-width:0;min-height:43px;background:#1b303c;border:1px solid #4e6b7b;color:#e5f0f5;border-radius:7px;padding:10px 12px;font:500 15px Inter,sans-serif}.route-search input:focus{outline:2px solid #6fe3ea;outline-offset:2px}.route-direction{padding-bottom:13px;color:#6fe3ea}.calculate-route{min-height:43px;border:0;border-radius:7px;background:#6fe3ea;color:#10212a;font:600 13px Inter,sans-serif;padding:10px 19px;white-space:nowrap}.hmi-controls{flex-wrap:wrap;align-items:center;padding:16px 24px;gap:12px}.reset-button{align-self:center;min-width:44px;font-size:23px}.route-search-help{width:100%;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.route-search-help p{font-size:11px;color:#acbfca;line-height:1.6}.route-search-help #route-error{color:#ffc98f;width:100%}.quick-routes{display:flex;gap:8px}.quick-routes button{background:none;color:#b9d1dd;border:1px solid #44606e;border-radius:20px;min-height:30px;padding:6px 10px;font-size:10px}.quick-routes button[aria-pressed=true]{color:#6fe3ea;border-color:#6fe3ea;background:#1a3641}.route-itinerary{font-size:11px;line-height:1.6;color:#b4cbd5;margin-top:12px}.route-itinerary:empty{display:none}#corridor-roads path{fill:none;stroke:#466070;stroke-width:2;opacity:.6}#corridor-labels text{fill:#a2bdcb;font:12px Inter,sans-serif;paint-order:stroke;stroke:#17242e;stroke-width:5px;stroke-linejoin:round}#corridor-labels circle{fill:#8caebc}.route-map .origin text{paint-order:stroke;stroke:#17242e;stroke-width:5px;stroke-linejoin:round}.route-map #destination-marker text{paint-order:stroke;stroke:#17242e;stroke-width:5px;stroke-linejoin:round}.route-map .selected-label{display:none}
@media(min-width:1000px){.hmi-top{height:42px;padding-inline:24px}.hmi-wordmark{font-size:20px}.energy-controls{padding:13px 24px;gap:25px;grid-template-columns:1fr 1.1fr}.energy-controls label{font-size:12px}.energy-controls output{font-size:20px}.energy-controls input[type=range]{margin:8px 0 5px;min-height:20px}.charge-presets{gap:7px}.charge-presets button{padding:5px 10px;min-height:30px;font-size:10px}.energy-explanation>p{font-size:12px;line-height:1.5}.energy-explanation details{margin-top:6px;font-size:10px}.energy-explanation summary{min-height:20px}.hmi-body{grid-template-columns:minmax(0,1.3fr) minmax(440px,1fr)}.route-map,.map-area .route-map{height:460px;min-height:390px;max-height:480px}.station-panel{padding:19px 21px}.panel-heading{margin-bottom:12px}.panel-heading h3{font-size:20px}.panel-heading p{font-size:11px}.direct-option{padding:12px;min-height:56px;margin-bottom:7px}.direct-option strong{font-size:14px}.direct-option small{font-size:11px;margin-top:4px}.incident-toggle{padding:5px 0 10px;min-height:34px;font-size:11px}.incident-toggle input{width:15px;height:15px}.incident-message{padding:9px;font-size:11px;margin-bottom:10px}.station-options{grid-template-columns:1fr 1fr;gap:10px}.station{padding:12px;min-height:135px}.station-name{font-size:12px;line-height:1.4}.station-check{font-size:12px;width:20px;height:20px}.station-state{font-size:10px;margin-top:8px}.station-stats{gap:5px;margin-top:10px;font-size:9px}.station-stats>span+span{padding-left:7px}.station-stats b{font-size:20px}.station-stats small{font-size:9px}.trip-summary{padding:15px 0 12px}.summary-title{display:none}.trip-summary dl{grid-template-columns:1.1fr 1fr 1fr;gap:14px}.trip-summary dl>div:first-child{grid-column:auto}.trip-summary dt{font-size:10px;margin-bottom:5px}.trip-summary dd,.trip-summary dl>div:first-child dd{font-size:23px}.trip-tradeoff{font-size:11px;margin-top:12px;line-height:1.5}.time-breakdown{font-size:10px;margin-top:8px}.confirm-button{min-height:43px;padding:12px 15px;font-size:13px}.map-topline,.map-bottom,.map-trip{padding:12px 20px}.map-trip{flex-wrap:wrap;gap:8px}.map-trip>span:first-child{font-size:15px}.hmi-foot{padding-block:9px}.confirmation{min-height:470px;display:flex;flex-direction:column;justify-content:center}.confirmation[hidden]{display:none}.confirmation h3{font-size:43px}.confirmation-mark{width:45px;height:45px;margin-bottom:15px}}
@media(max-width:999px){.route-search-help{display:block}.quick-routes{margin-top:12px;flex-wrap:wrap}.hmi-body{display:block}.route-map,.map-area .route-map{height:330px;min-height:0;max-height:330px}.station-options{grid-template-columns:1fr 1fr}.trip-summary dl{grid-template-columns:1fr 1fr 1fr}.trip-summary dl>div:first-child{grid-column:auto}.trip-summary dl>div:first-child dd{font-size:28px}}
@media(max-width:650px){.route-search{grid-template-columns:minmax(0,1fr) 14px minmax(0,1fr);gap:8px}.route-search label{font-size:12px}.route-search input{font-size:14px;padding-inline:9px}.calculate-route{grid-column:1/-1}.hmi-controls{padding:17px;gap:10px}.reset-button{align-self:start;padding:0;min-width:30px;margin-top:20px}.route-search-help p{font-size:11px}.quick-routes button{font-size:10px;min-height:36px}.route-map,.map-area .route-map{height:270px;max-height:270px}.station-options{grid-template-columns:1fr}.route-itinerary{font-size:12px}.trip-summary dl{grid-template-columns:1fr 1fr}.trip-summary dl>div:first-child{grid-column:1/-1}.trip-summary dl>div:first-child dd{font-size:38px}.hmi-mode{display:none}}
@media(min-width:1000px){.hmi-controls{padding:12px 20px;gap:8px}.route-search label{font-size:10px;margin-bottom:4px;line-height:1.2}.route-search input{min-height:40px;padding:8px 10px;font-size:14px;line-height:1.5}.calculate-route{min-height:40px;padding:9px 15px}.route-search-help{gap:7px}.quick-routes button{min-height:26px;padding:4px 9px}.reset-button{height:40px;min-height:40px;line-height:1;padding:8px}.energy-controls{padding:11px 20px}.energy-controls>div:first-child{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 16px;align-items:center}.energy-controls label{grid-column:1/-1;line-height:1.2}.energy-controls input[type=range]{margin:0}.charge-presets{grid-column:2;grid-row:2}.energy-explanation>p{line-height:1.4}.panel-heading p{display:none}.panel-heading h3{margin:0}.panel-heading{align-items:center;min-height:24px;margin-bottom:10px}.direct-option{padding:8px 12px}.station{min-height:116px;padding:10px}.station-state{margin-top:5px}.station-stats{margin-top:8px}.station-stats small{line-height:1.4}.route-itinerary{margin:8px 0 0;font-size:10px}.trip-summary{padding:13px 0 12px}.trip-summary .trip-tradeoff,.trip-summary .time-breakdown{display:none}.map-context{padding:12px 20px;border-top:1px solid #304451}.map-context p:first-child{font-size:12px;color:#c4e5e8;line-height:1.5}.map-context p:last-child{font-size:10px;line-height:1.5;color:#9ebac8;margin-top:5px}.map-area .route-map{height:300px;min-height:250px;max-height:320px;flex:1}.map-bottom{display:none}.map-trip{padding-block:11px}.station-panel{padding:17px 20px}.hmi-foot{padding-block:8px}}
@media(max-width:999px){.map-context{display:none}}
@media(min-width:1000px){.map-area{min-height:0;padding:0}.map-context{margin-top:auto}.confirmation{min-height:425px}}
#pantalla-ruta{scroll-margin-top:0}
