/* The arrow remains in view; paused/hall navigation rests at the right edge. */
#navigationHud{top:20px;right:18px;display:block;width:236px;padding:0;border:0;background:transparent;box-shadow:none;pointer-events:auto;transition:width .2s ease,right .2s ease}
#navigationToggle{width:100%;display:flex;align-items:center;gap:10px;text-align:left;padding:10px 12px;border:1px solid #d5c3a8;border-radius:14px;background:#fffaf3f5;box-shadow:0 4px 18px #35291c1c;min-height:72px}
#navigationToggle:hover{background:#fffcf7}
#navigationToggle .navigation-dial{width:46px;height:46px;border-width:2px;box-shadow:none}
#navigationToggle .navigation-dial svg{width:34px;height:34px}
#navigationToggle .navigation-copy{gap:4px}
#navigationToggle .navigation-copy strong{font-size:13px}
#navigationToggle .navigation-label{font-size:9px;letter-spacing:0}
#navigationToggle .navigation-instruction{font-size:11px}
#navigationHud[data-compact=true][data-expanded=false]{right:0;width:44px}
#navigationHud[data-compact=true][data-expanded=false] #navigationToggle{height:80px;min-height:80px;padding:0 0 0 8px;gap:0;border-radius:44px 0 0 44px;border-right:0;background:#927043ed}
#navigationHud[data-compact=true][data-expanded=false] .navigation-dial{width:32px;height:42px;border:0;border-radius:0;background:none}
#navigationHud[data-compact=true][data-expanded=false] .navigation-dial svg{width:28px;height:28px}
#navigationHud[data-compact=true][data-expanded=false] .navigation-copy{display:none}
#navigationHud[data-expanded=true]{right:18px;width:320px}
#navigationDetails{position:absolute;top:100%;right:0;width:320px;max-width:calc(100vw - 24px);padding-top:8px}
.navigation-panel{background:#fffaf5f7;border:1px solid #ddcfbd;border-radius:16px;box-shadow:0 8px 30px #35291c26;backdrop-filter:blur(14px);overflow:auto;max-height:calc(100dvh - 310px);overscroll-behavior:contain}
#navigationHud .minimap{position:static;width:100%;border:0;border-radius:0;box-shadow:none;background:transparent}
#navigationHud .minimap>div{padding:16px 16px 0;display:flex}
#navigationHud .minimap strong{font-size:12px;color:#54432d}
#navigationHud .minimap span{display:none}
#navigationHud #miniCanvas{height:auto;aspect-ratio:460/330;width:100%}
.map-legend{display:flex;align-items:center;justify-content:center;gap:12px;font-size:10px;color:#8b7d69;padding:0 12px 14px;white-space:nowrap}
.map-legend span{display:flex;align-items:center;gap:4px}
.map-legend i{width:14px;height:2px;background:#bcc3b8}.map-legend i.remaining{background:#278266}
.route-preview{border-top:1px solid #e9e0d2;margin:0 16px;padding:14px 0 12px}
.route-preview>strong{font-size:12px;font-weight:600;color:#645037}
#upcomingRoute{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 6px;font-size:11px;line-height:1.5;color:#766853}
#upcomingRoute li:not(:last-child):after{content:'→';margin-left:6px;color:#bba98e}
#upcomingRoute li:first-child{color:#327b61;font-weight:600}
#routeHint{font-size:10px;line-height:1.65;color:#9b8b77;margin:12px 0 0}
@media(max-width:760px){#navigationHud{top:62px;right:12px;width:207px}#navigationHud[data-expanded=true]{right:12px;width:min(320px,calc(100vw - 24px))}#navigationToggle{min-height:64px;padding:8px 10px}#navigationToggle .navigation-dial{width:40px;height:40px}#navigationHud[data-compact=true][data-expanded=false] #navigationToggle{height:72px;min-height:72px}.navigation-panel{max-height:calc(100dvh - 340px)}}
@media(prefers-reduced-motion:reduce){#navigationHud{transition:none}}
