/* Shared route figures in the explorer and route guides. */
.route-context-map{margin:0;position:relative;background:var(--lime-sunken)}
.route-context-map img{display:block;width:100%;height:auto;aspect-ratio:1.333333;object-fit:contain}
.route-context-map .g-button,.route-context-map>a{display:block;width:100%;padding:0;border:0;border-radius:var(--radius);background:var(--clear);text-align:inherit;cursor:pointer;color:var(--ink);font:600 var(--t-dense)/var(--lh-dense) var(--sans)}
.route-context-map .route-map-action{display:flex;justify-content:space-between;padding:var(--s-2) var(--s-4);background:var(--lime-raised);color:var(--celeste);min-height:var(--hit);align-items:center;border-bottom:1px solid var(--rule)}
.route-context-map figcaption{padding:var(--s-1) var(--s-4);font:var(--t-micro)/var(--lh-dense) var(--sans);color:var(--ink-3)}
.route-context-map :is(button,a):focus-visible,.route-profile input:focus-visible{outline:3px solid var(--celeste);outline-offset:4px}
.route-profile{margin:var(--s-4) 0;padding:var(--s-3) 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.route-profile-heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:var(--s-2);margin-bottom:var(--s-3)}
.route-profile-heading h3{margin:0;font:700 var(--t-dense)/var(--lh-dense) var(--sans);color:var(--ink)}
.route-profile-heading>span{font:var(--t-dense)/var(--lh-dense) var(--sans);color:var(--ink-2)}
.route-profile-plot{position:relative;padding-left:var(--s-8);height:144px}
.route-profile-plot svg{display:block;width:100%;height:100%;overflow:visible}
.route-profile-levels{position:absolute;inset:0 auto 0 0;display:flex;flex-direction:column;justify-content:space-between;font:var(--t-dense)/var(--lh-dense) var(--sans);color:var(--ink-2)}
.route-profile-area{fill:var(--celeste-pale);opacity:.35}
.route-profile-line{fill:none;stroke:var(--celeste);stroke-width:2;vector-effect:non-scaling-stroke}
.route-profile-grid{fill:none;stroke:var(--rule);stroke-width:1;vector-effect:non-scaling-stroke}
.route-profile-gap{stroke:var(--ink-2);stroke-width:1;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}
.route-profile-cursor{stroke:var(--ink);stroke-width:2;vector-effect:non-scaling-stroke}
.route-profile-distance{display:flex;justify-content:space-between;margin:var(--s-2) 0 var(--s-2) var(--s-8);font:var(--t-dense)/var(--lh-dense) var(--sans);color:var(--ink-2)}
.route-profile-scrub{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--s-1);font:var(--t-dense)/var(--lh-dense) var(--sans)}
.route-profile-scrub output{font-weight:600;color:var(--ink)}
.route-profile-scrub input{display:block;flex-basis:100%;width:100%;min-height:var(--hit);margin:0;accent-color:var(--celeste)}
.route-profile .route-profile-note{margin:var(--s-1) 0 0;font:var(--t-dense)/var(--lh-dense) var(--sans);color:var(--ink-2)}
.route-elevation-totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-3);margin:0 0 var(--s-2)}
.route-elevation-totals dt{font:var(--t-dense)/var(--lh-dense) var(--sans);color:var(--ink-2)}
.route-elevation-totals dd{margin:0;font:700 var(--t-sub)/var(--lh-dense) var(--sans);color:var(--ink)}
.route-profile .route-profile-direction{margin:0 0 var(--s-3);font:var(--t-dense)/var(--lh-dense) var(--sans);color:var(--ink-2)}
.route-return{margin-top:var(--s-3);padding-top:var(--s-3);border-top:1px solid var(--rule)}
.route-return h3{margin:0;font:700 var(--t-dense)/var(--lh-dense) var(--sans)}
.route-profile .route-return p{margin:var(--s-2) 0 0;font:var(--t-dense)/var(--lh-dense) var(--sans);color:var(--ink-2)}
.route-profile .route-return-totals{color:var(--ink)}
