/* CamperPilot Navigation V2 — consolidated quality pass */
body.cp-route-active,body.cp-navigation-active{--cp-panel:rgba(7,12,18,.95);--cp-blue:#086dff;--cp-light:#79dcff;--cp-white:#fff}
body.cp-route-active .top,body.cp-navigation-active .top{left:18px!important;right:auto!important;top:calc(14px + env(safe-area-inset-top))!important;bottom:auto!important;width:auto!important;max-width:min(430px,calc(100vw - 116px))!important;height:70px!important;padding:8px 14px!important;border-radius:24px!important;background:rgba(8,13,20,.92)!important;border:1px solid rgba(255,255,255,.18)!important;box-shadow:0 14px 38px rgba(0,0,0,.4)!important;opacity:1!important;pointer-events:auto!important;transform:none!important;backdrop-filter:blur(20px)!important}
body.cp-route-active .top .searchWrap,body.cp-route-active .top .hamb,body.cp-route-active .top .brand,body.cp-navigation-active .top .searchWrap,body.cp-navigation-active .top .hamb,body.cp-navigation-active .top .brand{display:none!important}
body.cp-route-active .topMetrics,body.cp-navigation-active .topMetrics{display:flex!important;align-items:center!important;gap:0!important;color:#fff!important}
body.cp-route-active .topMetrics>*,body.cp-navigation-active .topMetrics>*{display:flex!important;min-width:104px!important;height:52px!important;padding:4px 15px!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;background:transparent!important;border:0!important;border-radius:0!important;color:#fff!important;box-shadow:none!important}
body.cp-route-active .topMetrics>*+*,body.cp-navigation-active .topMetrics>*+*{border-left:1px solid rgba(255,255,255,.25)!important}
body.cp-route-active .topMetrics span,body.cp-navigation-active .topMetrics span{font-size:12px!important;color:rgba(255,255,255,.72)!important;letter-spacing:.01em!important}
body.cp-route-active .topMetrics b,body.cp-navigation-active .topMetrics b{font-size:22px!important;line-height:1.05!important;color:#fff!important;font-weight:800!important;white-space:nowrap!important}
body.cp-route-active #maneuverToast,body.cp-navigation-active #maneuverToast{left:18px!important;right:auto!important;top:calc(98px + env(safe-area-inset-top))!important;width:min(360px,calc(100vw - 100px))!important;max-width:360px!important;min-height:146px!important;padding:18px 20px 20px!important;border-radius:25px!important;background:linear-gradient(145deg,rgba(8,14,22,.99),rgba(19,24,30,.97))!important;border:1px solid rgba(255,255,255,.22)!important;box-shadow:0 22px 48px rgba(0,0,0,.46)!important;align-items:center!important;gap:18px!important;overflow:hidden!important}
body.cp-route-active #maneuverToast::before,body.cp-navigation-active #maneuverToast::before{content:'';position:absolute;left:0;top:0;bottom:0;width:8px;background:#0878ff}
body.cp-route-active #maneuverToast .toastArrow,body.cp-navigation-active #maneuverToast .toastArrow{width:88px!important;height:90px!important;flex:0 0 88px!important;font-size:0!important;filter:drop-shadow(0 3px 3px rgba(0,0,0,.4))!important}
body.cp-route-active #maneuverToast .toastArrow svg,body.cp-navigation-active #maneuverToast .toastArrow svg{width:84px!important;height:84px!important;display:block!important;overflow:visible!important}
body.cp-route-active #maneuverToast .toastArrow path,body.cp-navigation-active #maneuverToast .toastArrow path{stroke:#fff!important;stroke-width:12!important;stroke-linecap:round!important;stroke-linejoin:round!important;fill:none!important}
body.cp-route-active #maneuverToast .cpExitNo,body.cp-navigation-active #maneuverToast .cpExitNo{right:-5px!important;top:-5px!important;min-width:30px!important;height:30px!important;font-size:17px!important;background:#0878ff!important;color:#fff!important;border:2px solid #fff!important}
body.cp-route-active #toastDistance,body.cp-navigation-active #toastDistance{font-size:29px!important;color:#fff!important;line-height:1!important;font-weight:900!important}
body.cp-route-active #toastText,body.cp-navigation-active #toastText{margin-top:9px!important;font-size:20px!important;line-height:1.18!important;font-weight:800!important;color:#fff!important;max-width:205px!important}
body.cp-route-active .rightCtl,body.cp-navigation-active .rightCtl{right:18px!important;top:calc(18px + env(safe-area-inset-top))!important;background:transparent!important;border:0!important;box-shadow:none!important;gap:12px!important;overflow:visible!important}
body.cp-route-active .rightCtl .round,body.cp-navigation-active .rightCtl .round{width:58px!important;height:58px!important;border-radius:50%!important;background:rgba(12,17,23,.92)!important;border:1px solid rgba(255,255,255,.28)!important;color:#fff!important;box-shadow:0 10px 26px rgba(0,0,0,.38)!important;font-size:18px!important}
body.cp-route-active .speed,body.cp-navigation-active .speed{left:18px!important;top:auto!important;bottom:calc(88px + env(safe-area-inset-bottom))!important;width:70px!important;height:70px!important;background:#fff!important;border:7px solid #e3262f!important;color:#111!important;font-size:25px!important;z-index:250!important}
body.cp-route-active .bottomnav,body.cp-navigation-active .bottomnav{left:auto!important;right:18px!important;bottom:calc(28px + env(safe-area-inset-bottom))!important;display:block!important;opacity:1!important;pointer-events:auto!important;transform:none!important}
body.cp-route-active .bottomnav .bottomitem,body.cp-navigation-active .bottomnav .bottomitem{display:none!important}
body.cp-route-active .bottomnav .bottomitem:nth-child(3),body.cp-navigation-active .bottomnav .bottomitem:nth-child(3){display:flex!important;width:70px!important;height:70px!important;min-width:70px!important;border-radius:50%!important;background:#f51e28!important;border:3px solid #fff!important;color:#fff!important;font-size:0!important;box-shadow:0 13px 32px rgba(0,0,0,.4)!important}
body.cp-route-active .bottomnav .bottomitem:nth-child(3) .ico,body.cp-navigation-active .bottomnav .bottomitem:nth-child(3) .ico{font-size:38px!important;font-weight:300!important;line-height:1!important}
body.cp-route-active .simBtn,body.cp-navigation-active .simBtn{display:none!important}
.cp-manual-return-toast{position:absolute;right:20px;bottom:calc(112px + env(safe-area-inset-bottom));z-index:270;padding:11px 17px;border-radius:999px;background:rgba(7,12,18,.92);color:#fff;font:800 14px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-shadow:0 11px 30px rgba(0,0,0,.38);opacity:0;transform:translateY(8px);transition:.25s ease;pointer-events:none}
.cp-manual-return-toast.show{opacity:1;transform:translateY(0)}
.cp-nav-vehicle{width:58px;height:58px;pointer-events:none;filter:drop-shadow(0 5px 8px rgba(0,0,0,.38))}
.cp-nav-vehicle-disc{width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.96);border:3px solid rgba(8,109,255,.95);box-shadow:inset 0 0 0 2px rgba(255,255,255,.8)}
.cp-nav-vehicle svg{width:42px;height:42px;display:block}
.cp-nav-vehicle path{fill:#086dff;stroke:#fff;stroke-width:2;stroke-linejoin:round}
@media(max-width:600px){body.cp-route-active .top,body.cp-navigation-active .top{max-width:calc(100vw - 98px)!important;height:62px!important;padding:6px 10px!important}body.cp-route-active .topMetrics>*,body.cp-navigation-active .topMetrics>*{min-width:82px!important;padding:3px 9px!important}body.cp-route-active .topMetrics b,body.cp-navigation-active .topMetrics b{font-size:18px!important}body.cp-route-active #maneuverToast,body.cp-navigation-active #maneuverToast{top:calc(88px + env(safe-area-inset-top))!important;width:min(330px,calc(100vw - 88px))!important;min-height:132px!important;padding:15px 16px 17px!important}body.cp-route-active #maneuverToast .toastArrow,body.cp-navigation-active #maneuverToast .toastArrow{width:76px!important;height:78px!important;flex-basis:76px!important}body.cp-route-active #maneuverToast .toastArrow svg,body.cp-navigation-active #maneuverToast .toastArrow svg{width:72px!important;height:72px!important}body.cp-route-active #toastDistance,body.cp-navigation-active #toastDistance{font-size:24px!important}body.cp-route-active #toastText,body.cp-navigation-active #toastText{font-size:17px!important}}
