/* Preparation, an active route and arrival share one map, with different controls. */
.sk-map-section[data-map-viewer].is-navigation-active{--skmv-nav-gap:12px;--skmv-navigation-top:76px}
.sk-map-section[data-map-viewer].is-navigation-active .skmv-toolbar,
.sk-map-section[data-map-viewer].is-navigation-active .skmv-bottom,
.sk-map-section[data-map-viewer].is-navigation-active .skmv-legend,
.sk-map-section[data-map-viewer].is-navigation-active .skmv-map-legend{display:none}
.sk-map-section[data-map-viewer].is-navigation-active .skmv-map-identity{display:flex;z-index:6;left:12px;top:12px;max-width:44px}
.sk-map-section[data-map-viewer].is-navigation-active .skmv-map-logo{display:block;width:40px;height:40px}
.sk-map-section[data-map-viewer].is-navigation-active .skmv-frame{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:min-content min-content minmax(0,1fr);align-content:start;row-gap:10px;padding:10px 68px 0}
.skmv-guidance[hidden],.skmv-preparation-bar[hidden],.skmv-session-bar[hidden],.skmv-view-switch[hidden],.skmv-maneuver[hidden],[data-navigation-voice][hidden],.skmv-guidance [hidden]{display:none!important}

/* Feedback belongs to the map while the route card can be below the viewport.
   This compact status never intercepts panning, origin choices or cancellation. */
.sk-map-section[data-map-viewer] .skmv-route-progress{position:absolute;z-index:13;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:9px;box-sizing:border-box;width:max-content;max-width:calc(100% - 136px);margin:0;padding:13px 16px;border:1px solid #d2ddd6;border-radius:12px;background:#fffffff5;color:#234c3d;box-shadow:0 3px 18px #183e3321;pointer-events:none;text-align:center;font-family:inherit;font-size:1rem;font-weight:600;line-height:1.4;overflow-wrap:anywhere}
.sk-map-section[data-map-viewer] .skmv-route-progress[hidden]{display:none!important}
.skmv-route-progress-icon{display:block;box-sizing:border-box;flex:none;width:26px;height:26px;border:3px solid #d3ded7;border-top-color:#234c3d;border-radius:50%;animation:skmv-route-progress-spin .8s linear infinite}
@keyframes skmv-route-progress-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.skmv-route-progress-icon{animation:none}}
@media(forced-colors:active){.sk-map-section[data-map-viewer] .skmv-route-progress{border-color:CanvasText;background:Canvas;color:CanvasText}.skmv-route-progress-icon{border-color:GrayText;border-top-color:CanvasText}}

/* Before Start, returning to the selected place sits beside the main action. */
.skmv-preparation-bar{position:absolute;z-index:6;left:64px;right:68px;top:10px;display:flex;justify-content:flex-start;pointer-events:none}
.sk-map-section[data-map-viewer] [data-navigation-back],#sk-home .sk-map-section[data-map-viewer] [data-navigation-back]{pointer-events:auto;min-width:44px;min-height:44px;max-width:100%;padding:10px 14px;border:1px solid #c2d0cb;border-radius:9px;background:#fffffff5;color:#234c3d;font-family:inherit;font-size:1rem;font-weight:600;line-height:1.3;white-space:normal;box-shadow:0 2px 9px #183e3320}
.sk-map-section[data-map-viewer] [data-navigation-back]:hover{background:#e6eee8;border-color:#839a8c}

/* The view switch is a state control; ending a session is a separate action. */
.skmv-session-bar{position:absolute;left:0;right:0;bottom:0;z-index:6;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;width:100%;max-width:none;min-width:0;margin:0;padding:6px max(12px,env(safe-area-inset-right,0px)) calc(6px + env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px));border:0;border-top:1px solid #c2d0cb;border-radius:0;background:#fffffff5;box-shadow:0 -2px 12px #183e3318}
.skmv-view-switch{display:flex;flex:1 1 190px;gap:3px;min-width:0;max-width:320px}
.sk-map-section[data-map-viewer] .skmv-session-bar button,#sk-home .sk-map-section[data-map-viewer] .skmv-session-bar button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;margin:0;padding:9px 12px;border:0;border-radius:7px;background:transparent;color:#294c3e;font-family:inherit;font-size:1rem;line-height:1.3;font-weight:600;white-space:normal;overflow-wrap:anywhere}
.sk-map-section[data-map-viewer] .skmv-view-switch button,#sk-home .sk-map-section[data-map-viewer] .skmv-view-switch button{flex:1 1 auto}
.sk-map-section[data-map-viewer] .skmv-session-bar [data-navigation-stop],#sk-home .sk-map-section[data-map-viewer] .skmv-session-bar [data-navigation-stop]{flex:0 0 auto;border:1px solid #873f3a;background:#873f3a;color:#fff}
.sk-map-section[data-map-viewer] .skmv-view-switch button[aria-pressed="true"],#sk-home .sk-map-section[data-map-viewer] .skmv-view-switch button[aria-pressed="true"]{background:#234c3d;color:#fff}
.sk-map-section[data-map-viewer] .skmv-session-bar button:hover,#sk-home .sk-map-section[data-map-viewer] .skmv-session-bar button:hover{background:#e6eee8;color:#234c3d}
.sk-map-section[data-map-viewer] .skmv-view-switch button[aria-pressed="true"]:hover,#sk-home .sk-map-section[data-map-viewer] .skmv-view-switch button[aria-pressed="true"]:hover{background:#315e4c;color:#fff}
.sk-map-section[data-map-viewer] .skmv-session-bar [data-navigation-stop]:hover,#sk-home .sk-map-section[data-map-viewer] .skmv-session-bar [data-navigation-stop]:hover{background:#71332f;border-color:#71332f;color:#fff}
.sk-map-section[data-map-viewer] .skmv-session-bar [data-navigation-stop]:focus-visible,#sk-home .sk-map-section[data-map-viewer] .skmv-session-bar [data-navigation-stop]:focus-visible{color:#fff;outline:3px solid #a66500;outline-offset:3px}
.sk-map-section[data-map-viewer] .skmv-session-bar [data-navigation-stop]:disabled,#sk-home .sk-map-section[data-map-viewer] .skmv-session-bar [data-navigation-stop]:disabled{background:#765f5c;border-color:#765f5c;color:#fff;opacity:1;cursor:not-allowed}
.skmv-session-bar button:focus-visible,.skmv-guidance button:focus-visible,[data-navigation-back]:focus-visible,[data-navigation-voice]:focus-visible{outline:3px solid #a66500;outline-offset:3px}

/* A single compact preparation card leaves the center and the control rail free. */
.sk-map-section[data-map-viewer].is-navigation-active .skmv-guidance{position:absolute;z-index:4;top:auto;left:68px;right:auto;bottom:58px;display:flex;flex-direction:column;align-items:stretch;gap:12px;width:360px;max-width:calc(100% - 136px);max-height:calc(100% - 140px);min-height:0;margin:0;padding:16px;border:1px solid #ccd8d0;border-radius:12px;background:#fffffff7;color:#193c35;box-shadow:0 3px 18px #183e3321;overflow:auto;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin}
.skmv-guidance-copy{display:flex;flex-direction:column;align-items:stretch;gap:7px;min-width:0;flex:none}
.skmv-guidance-title{display:block;font-size:1.125rem;line-height:1.35;font-weight:700;overflow-wrap:anywhere}
.sk-map-section[data-map-viewer] .skmv-guidance-instruction{margin:0;font-size:.9375rem;line-height:1.45;color:#526258;overflow-wrap:anywhere}
.sk-map-section[data-map-viewer] [data-navigation-mode]{display:block;margin:0;font-size:.875rem;line-height:1.4;font-weight:600;color:#526258;overflow-wrap:anywhere}
.sk-map-section[data-map-viewer] [data-navigation-reason]{margin:0;font-size:.9375rem;line-height:1.45;color:#526258;overflow-wrap:anywhere}
.skmv-guidance-actions{display:flex;align-items:stretch;flex-wrap:wrap;gap:8px;min-width:0}
.sk-map-section[data-map-viewer][data-navigation-phase="preparation"] .skmv-guidance-actions{display:grid;grid-template-columns:minmax(0,1fr) auto}
.sk-map-section[data-map-viewer][data-navigation-phase="preparation"] .skmv-guidance-actions [data-navigation-back]{box-shadow:none;min-width:60px}
.sk-map-section[data-map-viewer] .skmv-guidance button,#sk-home .sk-map-section[data-map-viewer] .skmv-guidance button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:44px;margin:0;padding:10px 12px;border:1px solid #bdcec3;border-radius:8px;background:#fff;color:#234c3d;font-family:inherit;font-size:.9375rem;font-weight:600;line-height:1.35;white-space:normal;overflow-wrap:anywhere}
.sk-map-section[data-map-viewer] .skmv-guidance button:hover,#sk-home .sk-map-section[data-map-viewer] .skmv-guidance button:hover{background:#e7efe9;border-color:#7f9a88}
.sk-map-section[data-map-viewer] .skmv-guidance [data-navigation-origin],#sk-home .sk-map-section[data-map-viewer] .skmv-guidance [data-navigation-origin]{justify-content:flex-start;text-align:left;background:#f1f5f2;border-color:#d4dfd7}
.sk-map-section[data-map-viewer] .skmv-guidance [data-navigation-begin],#sk-home .sk-map-section[data-map-viewer] .skmv-guidance [data-navigation-begin]{flex:1 1 150px;background:#234c3d;border-color:#234c3d;color:#fff}
.sk-map-section[data-map-viewer] .skmv-guidance [data-navigation-begin]:hover,#sk-home .sk-map-section[data-map-viewer] .skmv-guidance [data-navigation-begin]:hover{background:#315e4c;border-color:#315e4c;color:#fff}
.sk-map-section[data-map-viewer] .skmv-guidance button:disabled,#sk-home .sk-map-section[data-map-viewer] .skmv-guidance button:disabled{cursor:not-allowed;opacity:.55}
.skmv-guidance-actions [data-map-share]>span{display:none}
.sk-map-section[data-map-viewer] .skmv-guidance [data-map-share],#sk-home .sk-map-section[data-map-viewer] .skmv-guidance [data-map-share]{flex:0 0 44px;width:44px;height:44px;padding:10px;align-self:flex-end}

/* After Start, Plan has a summary. Guidance leaves only the maneuver on the map. */
.sk-map-section[data-map-viewer].is-guidance-started .skmv-guidance{position:relative;grid-row:2;justify-self:center;top:auto;left:auto;right:auto;bottom:auto;flex-direction:row;align-items:center;gap:12px;width:min(100%,520px);max-width:100%;max-height:36dvh;padding:12px 14px}
.is-guidance-started .skmv-guidance-copy{flex:1;min-width:0}
.sk-map-section[data-map-viewer].is-guidance-started [data-navigation-origin],.sk-map-section[data-map-viewer].is-guidance-started [data-navigation-mode],.sk-map-section[data-map-viewer].is-guidance-started [data-navigation-reason],.sk-map-section[data-map-viewer].is-guidance-started [data-navigation-begin]{display:none!important}
.sk-map-section[data-map-viewer].is-guidance-started.is-guidance-view .skmv-guidance{position:absolute;top:auto;left:auto;right:64px;bottom:46px;width:44px;max-width:none;max-height:none;min-height:0;display:block;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.is-guidance-started.is-guidance-view .skmv-guidance-copy{display:none}
.is-guidance-started.is-guidance-view .skmv-guidance-actions{display:block;width:44px;margin:0}
.sk-map-section[data-map-viewer].is-guidance-started.is-guidance-view .skmv-guidance [data-map-share]{box-shadow:0 2px 8px #183e3326}
.sk-map-section[data-map-viewer].is-guidance-view .skmv-minimap,
.sk-map-section[data-map-viewer].is-guidance-view .skmv-control-group:has(> [data-map-action="fit"]){display:none}

/* Distance and the maneuver use the same readable size. The grid accommodates wrapping. */
.skmv-maneuver{position:relative;grid-row:2;justify-self:center;z-index:4;display:flex;align-items:center;gap:14px;width:min(100%,480px);max-width:100%;max-height:40dvh;min-width:0;margin:0;padding:15px 17px;border:1px solid #173f32;border-radius:12px;background:#234c3df5;color:#fff;box-shadow:0 5px 20px #14372b30;overflow:auto;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin}
.skmv-maneuver>svg{width:40px;height:40px;flex:0 0 40px;fill:none;stroke:currentColor;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round}
.skmv-maneuver-copy{min-width:0}
.skmv-maneuver-distance,.skmv-maneuver-title{display:block;font-size:1.375rem;line-height:1.3;overflow-wrap:anywhere}
.skmv-maneuver-distance{margin-bottom:3px;color:#eef5ef;font-weight:500}
.skmv-maneuver-title{font-weight:700}
.sk-map-section[data-map-viewer] .skmv-maneuver-alley{margin:5px 0 0;font-size:.9375rem;line-height:1.4;color:#eef5ef;overflow-wrap:anywhere}
.skmv-maneuver[data-maneuver="waiting"]>svg{width:28px;height:28px;flex-basis:28px;stroke-width:3}
.skmv-maneuver[data-maneuver="waiting"] .skmv-maneuver-title{font-size:1.0625rem;line-height:1.35}

/* Movement controls stay left; information and scale retain their bottom corners. */
.sk-map-section[data-map-viewer].is-navigation-active .skmv-navigation{left:12px;bottom:12px;max-height:calc(100% - var(--skmv-navigation-top,76px) - 12px);gap:9px}
.sk-map-section[data-map-viewer].is-navigation-active .skmv-control-stack{gap:9px}
.sk-map-section[data-map-viewer].is-navigation-active .skmv-location-accuracy{top:50%!important;bottom:auto!important;transform:translateY(-50%)!important;max-width:calc(100vw - 190px);overflow:hidden;text-overflow:ellipsis}
.sk-map-section[data-map-viewer].is-navigation-active .skmv-minimap{bottom:100px}
.sk-map-section[data-map-viewer][data-navigation-phase="preparation"] .skmv-minimap{display:none}
.sk-map-section[data-map-viewer].is-navigation-active .skmv-scale{right:12px;bottom:12px}
.sk-map-section[data-map-viewer] [data-navigation-voice],#sk-home .sk-map-section[data-map-viewer] [data-navigation-voice]{position:absolute;z-index:4;right:12px;bottom:46px;display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;min-height:44px;margin:0;padding:10px;border:1px solid #c1cec6;border-radius:8px;background:#fff;color:#234c3d;box-shadow:0 2px 8px #183e3326}
.sk-map-section[data-map-viewer] [data-navigation-voice]:hover{background:#edf3ed;border-color:#72927f}
.sk-map-section[data-map-viewer] [data-navigation-voice] svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
[data-navigation-voice][aria-pressed="false"] [data-voice-waves]{display:none}
.sk-map-section[data-map-viewer] .skmv-navigation-close{display:none;position:absolute;z-index:6;right:12px;top:12px;width:44px;min-width:44px;height:44px;min-height:44px;padding:10px;background:#fffffff5;border:1px solid #c2d0cb;border-radius:8px;color:#234c3d;box-shadow:0 2px 8px #183e3326}
.sk-map-section[data-map-viewer].is-navigation-active .skmv-navigation-close{display:inline-flex}
.sk-map-section[data-map-viewer].is-navigation-active .skmv-orientation{top:72px;right:12px}

.skmv-route-casing{stroke:#fff;stroke-width:8;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:.95}
.skmv-route-line{stroke:#176dc0;stroke-width:4.5;stroke-linecap:round;stroke-linejoin:round}
.skmv-route-destination{fill:#176dc0;stroke:#fff;stroke-width:2.5}
.skmv-route-destination-dot{fill:#fff}
.skmv-route-start{fill:#fff;stroke:#176dc0;stroke-width:2}

@media(max-width:700px){
 .sk-map-section[data-map-viewer].is-navigation-active{--skmv-nav-gap:8px}
 .sk-map-section[data-map-viewer].is-navigation-active .skmv-map-identity{left:8px;top:8px}
 .sk-map-section[data-map-viewer].is-navigation-active .skmv-frame{padding:8px 60px 0}
 .skmv-preparation-bar{top:8px;left:56px;right:60px}
 .sk-map-section[data-map-viewer].is-navigation-active .skmv-guidance{left:60px;right:8px;bottom:52px;width:auto;max-width:none;max-height:min(50%,calc(100% - 128px));padding:13px;gap:10px}
 .sk-map-section[data-map-viewer].is-guidance-started .skmv-guidance{position:relative;top:auto;left:auto;right:auto;bottom:auto;width:100%;max-width:100%;max-height:36dvh;padding:11px 13px}
 .sk-map-section[data-map-viewer].is-guidance-started.is-guidance-view .skmv-guidance{position:absolute;top:auto;left:auto;right:60px;bottom:44px;width:44px;max-width:none;max-height:none;padding:0}
 .sk-map-section[data-map-viewer].is-navigation-active .skmv-navigation{left:8px;bottom:8px;max-height:calc(100% - var(--skmv-navigation-top,76px) - 8px);gap:8px}
 .sk-map-section[data-map-viewer].is-navigation-active .skmv-control-stack{gap:8px}
 .sk-map-section[data-map-viewer].is-navigation-active .skmv-navigation-close{right:8px;top:8px}
 .sk-map-section[data-map-viewer].is-navigation-active .skmv-orientation{top:64px;right:8px}
 .sk-map-section[data-map-viewer].is-navigation-active .skmv-scale{right:8px;bottom:8px}
 .sk-map-section[data-map-viewer] [data-navigation-voice],#sk-home .sk-map-section[data-map-viewer] [data-navigation-voice]{right:8px;bottom:44px}
 .sk-map-section[data-map-viewer].is-navigation-active .skmv-minimap{bottom:96px}
 .skmv-maneuver{padding:13px;gap:10px}
 .skmv-maneuver>svg{width:32px;height:32px;flex-basis:32px}
 .skmv-maneuver-title,.skmv-maneuver-distance{font-size:1.25rem}
}

/* Narrow layouts retain readable controls in the bottom session bar. */
@media(max-width:560px) and (min-height:521px){
 .skmv-session-bar{width:100%;gap:6px}
 .skmv-view-switch{flex-basis:170px}
 .sk-map-section[data-map-viewer] .skmv-session-bar button,#sk-home .sk-map-section[data-map-viewer] .skmv-session-bar button{padding-inline:10px}
 .sk-map-section[data-map-viewer].is-guidance-started .skmv-orientation{top:12px;right:68px}
 .sk-map-section[data-map-viewer].is-guidance-started .skmv-guidance{max-width:100%}
 .skmv-maneuver{width:100%}
}

/* In landscape, preserve a map area beside a scrollable preparation card. */
@media(max-height:520px){
 .sk-map-section[data-map-viewer].is-navigation-active .skmv-frame{padding-top:6px}
 .skmv-preparation-bar{top:6px}
 .sk-map-section[data-map-viewer].is-navigation-active .skmv-guidance{left:68px;right:auto;bottom:52px;width:min(350px,48%);max-width:calc(100% - 136px);max-height:calc(100% - 116px);padding:12px;gap:9px}
 .sk-map-section[data-map-viewer].is-guidance-started .skmv-guidance{position:relative;left:auto;right:auto;bottom:auto;width:min(100%,480px);max-width:100%;max-height:34dvh;padding:9px 12px}
 .sk-map-section[data-map-viewer].is-guidance-started.is-guidance-view .skmv-guidance{position:absolute;left:auto;right:64px;bottom:46px;width:44px;max-width:none;max-height:none;padding:0}
 .skmv-maneuver{width:min(100%,460px);max-height:38dvh;padding:10px 13px;gap:10px}
 .skmv-maneuver>svg{width:32px;height:32px;flex-basis:32px}
 .skmv-maneuver-title,.skmv-maneuver-distance{font-size:1.25rem}
 .sk-map-section[data-map-viewer].is-navigation-active .skmv-navigation{gap:5px}
 .sk-map-section[data-map-viewer].is-navigation-active .skmv-control-stack{gap:5px}
}
@media(max-width:700px) and (max-height:520px){
 .sk-map-section[data-map-viewer].is-guidance-started.is-guidance-view .skmv-guidance{right:60px;bottom:44px}
}

/* A started session has a compact, explicitly expandable control rail. Hidden
   groups also leave the tab order and map hit testing, instead of just fading. */
.sk-map-section[data-map-viewer] .skmv-navigation [hidden]{display:none!important}
.sk-map-section[data-map-viewer] .skmv-navigation [data-map-tools-toggle],#sk-home .sk-map-section[data-map-viewer] .skmv-navigation [data-map-tools-toggle]{flex:none;background:#24372ef2;border-radius:7px;box-shadow:0 2px 7px #16231c24}
.sk-map-section[data-map-viewer] .skmv-navigation [data-map-tools-toggle]:hover{background:#536d5e}
.sk-map-section[data-map-viewer].is-map-tools-collapsed .skmv-navigation{overflow:visible}
.sk-map-section[data-map-viewer].is-guidance-started.is-guidance-view .skmv-guidance{display:none!important}
.sk-map-section[data-map-viewer].is-navigation-active [data-map-share]{display:none!important}
.sk-map-section[data-map-viewer] [data-navigation-origin] svg{width:20px;height:20px;flex:0 0 20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.sk-map-section[data-map-viewer] [data-navigation-origin] span:last-child{margin-left:auto;white-space:nowrap}
.skmv-arrival-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid #ffffff40}
.skmv-arrival-actions[hidden]{display:none!important}
.skmv-arrival-actions [data-navigation-countdown]{font-size:.9375rem;line-height:1.4}
.sk-map-section[data-map-viewer] [data-navigation-stay]{min-height:44px;margin:0;padding:9px 12px;border:1px solid #ffffff90;border-radius:8px;background:#fff;color:#234c3d;font-family:inherit;font-size:.9375rem;font-weight:600;line-height:1.35;white-space:normal}
.sk-map-section[data-map-viewer] [data-navigation-stay]:hover{background:#e6eee8}
.sk-map-section[data-map-viewer] [data-navigation-stay]:focus-visible{outline:3px solid #e6b85a;outline-offset:3px}
@media(max-height:520px){
 .sk-map-section[data-map-viewer].is-navigation-active .skmv-navigation{bottom:8px;gap:2px;max-height:calc(100% - var(--skmv-navigation-top,60px) - 8px)}
 .sk-map-section[data-map-viewer].is-navigation-active .skmv-control-stack{gap:2px}
}

/* Started navigation keeps the journey actions at the bottom. Their measured
   height includes wrapping, text enlargement and the device safe area. */
.sk-map-section[data-map-viewer].is-guidance-started .skmv-frame{padding:8px 8px 0;grid-template-rows:min-content minmax(0,1fr);row-gap:0}
.sk-map-section[data-map-viewer].is-guidance-started .skmv-map-identity,
.sk-map-section[data-map-viewer].is-guidance-started .skmv-navigation-close{display:none!important}
.sk-map-section[data-map-viewer].is-guidance-started .skmv-guidance,
.sk-map-section[data-map-viewer].is-guidance-started .skmv-maneuver{grid-row:1}
.sk-map-section[data-map-viewer].is-guidance-started .skmv-guidance{width:min(100%,520px)}
.sk-map-section[data-map-viewer].is-guidance-started .skmv-maneuver{width:min(100%,520px);align-items:flex-start}
.sk-map-section[data-map-viewer].is-guidance-started .skmv-maneuver-copy{flex:1 1 auto}
.sk-map-section[data-map-viewer].is-guidance-started .skmv-maneuver>.skmv-map-logo,
.sk-map-section[data-map-viewer].is-guidance-started .skmv-guidance>.skmv-map-logo{display:block;position:static;flex:0 0 32px;width:32px;height:32px;margin:2px 0 0 auto;align-self:flex-start;object-fit:contain;pointer-events:none}
.sk-map-section[data-map-viewer].is-guidance-started .skmv-maneuver>.skmv-map-logo{filter:brightness(0) invert(1)}
.sk-map-section[data-map-viewer].is-guidance-started .skmv-guidance>.skmv-map-logo{filter:none}
.sk-map-section[data-map-viewer].is-guidance-started .skmv-navigation{bottom:var(--skmv-session-bottom,72px);max-height:calc(100% - var(--skmv-navigation-top,12px) - var(--skmv-session-bottom,72px))}
.sk-map-section[data-map-viewer].is-guidance-started .skmv-scale{bottom:var(--skmv-session-bottom,72px)}
.sk-map-section[data-map-viewer].is-guidance-started [data-navigation-voice],
#sk-home .sk-map-section[data-map-viewer].is-guidance-started [data-navigation-voice]{bottom:calc(var(--skmv-session-bottom,72px) + 36px)}
.sk-map-section[data-map-viewer].is-guidance-started .skmv-minimap{bottom:calc(var(--skmv-session-bottom,72px) + 88px)}
.sk-map-section[data-map-viewer].is-guidance-started .skmv-orientation{top:var(--skmv-maneuver-bottom,12px);right:12px}
.sk-map-section[data-map-viewer].is-guidance-started .skmv-location-info-panel{bottom:var(--skmv-session-bottom,72px);max-height:calc(100% - var(--skmv-session-bottom,72px) - 16px)}
@media(max-width:700px){
 .sk-map-section[data-map-viewer].is-guidance-started .skmv-orientation{right:8px}
 .sk-map-section[data-map-viewer].is-guidance-started .skmv-session-bar{gap:6px}
 .sk-map-section[data-map-viewer].is-guidance-started .skmv-view-switch{flex-basis:160px}
}
@media(max-height:520px){
 .sk-map-section[data-map-viewer].is-guidance-started .skmv-frame{padding-top:6px}
 .sk-map-section[data-map-viewer].is-guidance-started .skmv-maneuver{max-height:38dvh;padding:10px 12px}
 .sk-map-section[data-map-viewer].is-guidance-started .skmv-navigation{bottom:var(--skmv-session-bottom,72px)}
}
.skmv-location-info-actions .skmv-screen-status{grid-column:1/-1;flex:1 0 100%;margin:6px 0 0;font-size:.9375rem;line-height:1.45;color:#526258}
.skmv-location-info-actions [data-navigation-screen-retry]{grid-column:1/-1;justify-self:start}
/* Let enlarged labels wrap as whole controls rather than breaking their words. */
.sk-map-section[data-map-viewer].is-guidance-started .skmv-view-switch{flex:1 1 13rem;flex-wrap:wrap;max-width:20rem}
.sk-map-section[data-map-viewer].is-guidance-started .skmv-view-switch button,
#sk-home .sk-map-section[data-map-viewer].is-guidance-started .skmv-view-switch button{flex:1 0 auto;white-space:nowrap;overflow-wrap:normal}

/* A short, wide visible viewport uses side actions instead of consuming a
   second horizontal row. JS sets this class from the actual map viewport and
   measures --skmv-session-right from the rendered action bar, including text
   enlargement and safe-area padding. Portrait and normal map browsing retain
   their existing layout. */
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-frame{display:block;padding:0}
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-session-bar{top:8px;right:max(8px,env(safe-area-inset-right,0px));bottom:auto;left:auto;display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start;width:max-content;min-width:7rem;max-width:35%;max-height:calc(100% - 16px);padding:5px;gap:6px;border:1px solid #c2d0cb;border-radius:10px;box-shadow:0 2px 10px #183e3326;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin}
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-view-switch{display:flex;flex-direction:column;flex-wrap:nowrap;flex:none;align-items:stretch;width:100%;max-width:none;min-width:0;gap:4px}
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-session-bar button,
#sk-home .sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-session-bar button{flex:none;width:100%;min-width:44px;min-height:44px;padding:9px 10px;font-size:1rem;line-height:1.35;white-space:normal;overflow-wrap:normal}
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-session-bar [data-navigation-stop]{margin-top:2px}

/* Distance and action read as one sentence. The logo remains on the right of
   the message, with no branding or toolbar running across the map center. */
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-maneuver,
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-guidance{position:absolute;top:8px;left:max(64px,calc(env(safe-area-inset-left,0px) + 56px));right:auto;bottom:auto;width:clamp(240px,44%,360px);max-width:calc(100% - var(--skmv-session-right,136px) - 120px);max-height:calc(100% - 16px);margin:0;padding:10px;gap:8px;align-items:flex-start;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin}
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-maneuver>svg{width:28px;height:28px;flex:0 0 28px;margin-top:2px}
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-maneuver-copy{display:block;min-width:0;flex:1 1 auto}
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-maneuver-distance,
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-maneuver-title{display:inline;font-size:1.125rem;line-height:1.35}
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-maneuver-distance{margin:0 .4em 0 0}
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-maneuver-alley{display:block;margin:4px 0 0;font-size:1rem;line-height:1.35}
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-maneuver>.skmv-map-logo,
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-guidance>.skmv-map-logo{width:26px;height:26px;flex:0 0 26px;margin-top:2px}
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-arrival-actions{margin-top:8px;padding-top:8px;gap:8px}

/* The whole expanded rail scrolls if needed, so its fixed-size buttons never
   spill over the maneuver. Compact mode keeps just the route/toggle controls. */
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-navigation{left:max(8px,env(safe-area-inset-left,0px));bottom:8px;max-height:calc(100% - var(--skmv-navigation-top,12px) - 8px);gap:4px}
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation:not(.is-map-tools-collapsed) .skmv-navigation{width:52px;padding-right:8px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin}
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-control-stack{flex:none;gap:4px;overflow:visible}
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-minimap{display:none}
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-scale{right:var(--skmv-session-right,136px);bottom:8px}
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation [data-navigation-voice],
#sk-home .sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation [data-navigation-voice]{right:var(--skmv-session-right,136px);bottom:44px}
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-orientation{top:8px;right:var(--skmv-session-right,136px)}
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-location-info-panel{top:auto;bottom:8px;left:68px;width:min(360px,calc(100% - var(--skmv-session-right,136px) - 84px));max-height:calc(100% - 16px)}

/* A labeled, connected view switch makes its selected state explicit, while
   the separately colored End button remains a distinct session action. */
.sk-map-section[data-map-viewer].is-guidance-started .skmv-view-switch{flex:1 1 11.5rem;max-width:22rem;align-items:center;gap:4px;padding:3px;border:1px solid #c5d2c9;border-radius:9px;background:#edf2ee}
.sk-map-section[data-map-viewer].is-guidance-started .skmv-view-label{display:block;flex:none;margin:0;padding:0 5px;font-size:.875rem;line-height:1.35;font-weight:600;color:#4b6054;white-space:nowrap}
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-view-switch{flex:none;width:100%;max-width:none;align-items:stretch;gap:4px;padding:3px}
.sk-map-section[data-map-viewer].is-guidance-started.is-compact-navigation .skmv-view-label{align-self:flex-start;padding:3px 7px 1px}
