#routeMapCard{position:fixed;z-index:13;left:20px;top:258px;width:360px;margin:0;padding:14px;border:1px solid #ffffff40;border-radius:16px;background:#292e2bf5;color:#fff;box-shadow:0 8px 28px #0003;max-height:calc(100dvh - 330px);overflow:auto}#routeMapCard .routeMapHeading{display:flex;align-items:center;gap:8px;margin-bottom:10px}#routeMapCard h2{font:700 18px/1.3 'DM Sans',sans-serif;margin:0;flex:1;color:#fff}#routeMapCard #routeMapCount{font:700 15px 'DM Sans',sans-serif;color:#ffacd5}#routeMapCard button{font:600 13px/1.3 'DM Sans',sans-serif;min-height:34px;padding:6px 9px;color:#fff;background:#ffffff12;border:1px solid #ffffff30;border-radius:8px;text-decoration:none}#routeMapFold{width:34px}#routeMapCard.folded .routeMapBody{display:none}.routeMapSearch{position:relative;margin:0 0 9px}#routeMapCard input{width:100%;height:38px;padding:9px 11px;font:14px 'DM Sans',sans-serif;color:#333;background:#fff;border:1px solid #bbb;border-radius:8px}#routeMapResults{position:absolute;top:41px;left:0;right:0;max-height:180px;overflow:auto;background:#fff;color:#333;padding:5px;z-index:3;box-shadow:0 4px 12px #0005;border-radius:8px}#routeMapCard #routeMapResults button{display:block;width:100%;background:#fff;color:#555;text-align:left;border:0;font-size:14px;min-height:40px}#routeMapCard #routeMapResults button.visited{color:#b90059}#routeMapCard #routeMapResults button:hover{background:#fceaf3}.routeMapViewport{position:relative;border-radius:10px;overflow:hidden;background:#e8eee8}#routeMapCard canvas{display:block;width:100%;height:clamp(180px,28vh,300px);object-fit:fill;margin:0;border-radius:0;touch-action:none;cursor:grab;image-rendering:auto}#routeMapCard canvas:active{cursor:grabbing}.routeMapZoom{position:absolute;right:7px;bottom:7px;display:grid;gap:4px}#routeMapCard .routeMapZoom button{background:#333e;width:34px;height:34px;font-size:21px}.routeMapNorth{position:absolute;right:10px;top:8px;padding:3px 5px;background:#fffe;border-radius:4px;color:#333;font-size:12px}.routeMapToolbar{display:flex;gap:7px;margin-top:9px}#routeMapCard [aria-pressed=true]{border-color:#D90068;background:#D9006830}#routeMapCard .routeMapLegend{margin:8px 0!important;font:13px/1.4 'DM Sans',sans-serif;color:#ddd!important}#routeMapCard .routeMapLegend span{color:#ffacd5}#routeMapCard #routeMapNotice{font-size:13px;line-height:1.4;margin:5px 0;color:#ffacd5}.routeMapFooter{display:flex;gap:7px;align-items:center;flex-wrap:wrap}#routeMapCard .routeMapFooter a{font-size:10px;color:#ddd}#routeMapCard #routeMapAlbum{padding:3px 0;background:none;border:0;margin-right:auto;font-size:13px}#hud:not(.expanded){width:360px;min-width:0;max-width:360px;max-height:101px;overflow:auto}#hud.expanded{z-index:16}body.playing #touchControls{left:398px}body.playing .miniwrap{display:none}@media(min-width:701px) and (max-height:760px){#routeMapCard{top:250px;max-height:calc(100dvh - 325px)}#routeMapCard canvas{height:180px}}@media(max-width:700px){#routeMapCard{left:12px;top:auto;bottom:calc(var(--signature-space) + 150px);width:calc(100vw - 86px);max-width:360px;max-height:260px;padding:10px}#routeMapCard canvas{height:155px}#routeMapCard h2{font-size:16px}#routeMapCard .routeMapHeading{margin-bottom:6px}#routeMapCard .routeMapBody{max-height:none}#routeMapCard .routeMapFooter{display:none}#routeMapCard .routeMapToolbar{margin-top:6px}#routeMapCard .routeMapLegend{margin:5px 0!important}#routeMapCard input{height:34px}#hud:not(.expanded){width:calc(100vw - 86px);max-width:360px;max-height:88px}body.playing #touchControls{left:12px;bottom:calc(var(--signature-space) + 30px)}#routeMapCard.folded{max-height:60px}}
@media(max-width:700px){#routeMapCard{max-height:230px}#routeMapCard canvas{height:135px}#hud:not(.expanded){width:150px;max-width:150px;max-height:78px;padding:8px 10px}#hud:not(.expanded) #hudMode{display:none}#hud:not(.expanded) #toggleFlightHud{position:static;float:none;display:block;padding:2px 6px;min-height:25px;margin:0 0 4px;font-size:12px}#hud:not(.expanded) #speed,#hud:not(.expanded) #altitude{font-size:18px!important}#hud:not(.expanded) #speed+small,#hud:not(.expanded) #altitude+small{font-size:10px!important}#hud:not(.expanded)>div{margin:0}#hud:not(.expanded) em{margin:0 4px}}
@media(max-width:700px){body.playing #hud:not(.expanded){width:150px!important;min-width:0!important;max-width:150px!important;max-height:78px!important;right:auto!important;overflow:auto}body.playing .focusPanel{display:none!important}}
.routeMapTargets{position:absolute;inset:0;pointer-events:none}#routeMapCard .routeMapTarget{position:absolute;pointer-events:auto;background:transparent;border:0;min-height:23px;padding:0;border-radius:2px;color:transparent}#routeMapCard .routeMapTarget:hover{outline:2px solid #D90068;filter:none;background:#D9006810}#routeMapCard .routeMapTarget:focus-visible{outline:3px solid #D90068;background:#D9006820}.routeMapZoom{z-index:3}
#routeMapDestination{position:absolute;z-index:2;left:6px;top:6px;max-width:calc(100% - 54px);padding:5px 7px;border:1px solid #D90068;border-radius:7px;background:#333e;color:#fff;font:600 12px/1.35 'DM Sans',sans-serif;pointer-events:none}
/* Flight starts with a small map; full controls are available on demand. */
#routeMapCard:not(.expandedMap){width:260px;top:248px;padding:10px;max-height:240px}#routeMapCard:not(.expandedMap) h2{font-size:15px}#routeMapCard:not(.expandedMap) #routeMapCount{font-size:13px}#routeMapCard:not(.expandedMap) .routeMapHeading{gap:5px;margin-bottom:8px}#routeMapCard #routeMapSize,#routeMapCard #routeMapFold{flex:0 0 30px;width:30px;min-height:32px;padding:3px;font-size:18px}#routeMapCard:not(.expandedMap) canvas{height:128px}#routeMapCard:not(.expandedMap) .routeMapSearch,#routeMapCard:not(.expandedMap) .routeMapToolbar,#routeMapCard:not(.expandedMap) .routeMapFooter{display:none}#routeMapCard:not(.expandedMap) .routeMapLegend{font-size:12px!important;margin:7px 0 0!important}#routeMapCard:not(.expandedMap) #routeMapNotice{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}#routeMapCard:not(.expandedMap) .routeMapZoom button{width:30px;height:30px;min-height:30px;font-size:19px}#routeMapCard.folded .routeMapHeading{margin-bottom:0}#hud:not(.expanded){width:260px;min-width:0;max-width:260px;max-height:90px}#hud:not(.expanded) #speed{font-size:24px!important}#hud:not(.expanded) #altitude{font-size:22px!important}body.playing #touchControls{left:24px}@media(max-width:700px){#routeMapCard:not(.expandedMap){left:12px;top:auto;bottom:calc(var(--signature-space) + 150px);width:230px;max-height:205px;padding:9px}#routeMapCard:not(.expandedMap) canvas{height:105px}#routeMapCard.expandedMap{max-height:300px}body.playing #touchControls{left:12px}}
@media(min-width:701px){body.playing #hud:not(.expanded){width:260px!important;min-width:0!important;max-width:260px!important;max-height:90px!important;height:auto!important;overflow:auto!important}}
@media(min-width:701px){body.playing #hud:not(.expanded){padding:12px 14px!important}#hud:not(.expanded) #toggleFlightHud{position:absolute;top:7px;right:8px;float:none;min-height:30px;margin:0;padding:4px 7px;font-size:12px}#hud:not(.expanded) #hudMode{display:block;max-width:125px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px!important;letter-spacing:0}#hud:not(.expanded)>div:first-of-type{margin:12px 0 0!important;line-height:1.1}#hud:not(.expanded) small{font-size:11px!important}}
