.travelix-navigation-loading[hidden] {
    display: none !important;
}

.travelix-navigation-loading {
    position: fixed;
    inset: 0;
    z-index: 2147483647;
    display: grid;
    place-items: center;
    padding: 20px;
    background: rgba(204, 214, 228, .64);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
    pointer-events: auto;
}

.travelix-navigation-loading__frame { position:relative; box-sizing:border-box; width:min(78vw,370px); aspect-ratio:2.3/1; border-radius:999px; background:#fff; box-shadow:0 14px 34px rgba(5,18,40,.24),0 0 26px rgba(47,139,255,.3); animation:travelix-road-arrive .2s ease-out both; }
.travelix-navigation-loading__frame::before { content:""; position:absolute; z-index:0; inset:-3px; border-radius:inherit; background:linear-gradient(135deg,#00b8bd,#1689ff 28%,#7256db 48%,#e2b727 68%,#78c83e 84%,#00b873); }
.travelix-navigation-loading__frame::after { content:""; position:absolute; z-index:1; inset:3px; border-radius:inherit; background:#fff; }
.travelix-navigation-loading__frame img { position:absolute; z-index:2; inset:5px; display:block; width:calc(100% - 10px); height:calc(100% - 10px); object-fit:cover; border-radius:999px; }
.travelix-navigation-loading__ring { position:absolute; z-index:3; inset:-3px; width:calc(100% + 6px); height:calc(100% + 6px); overflow:visible; pointer-events:none; }
.travelix-navigation-loading__ring-dash { fill:none; stroke:url(#travelix-loader-ring-gradient); stroke-width:4; stroke-linecap:round; stroke-dasharray:120 880; animation:travelix-road-ring-dash 1.55s linear infinite; }
.travelix-navigation-loading__car { position:absolute; z-index:4; top:50%; left:50%; width:27px; height:16px; margin:-8px 0 0 -13px; filter:drop-shadow(0 2px 2px rgba(0,0,0,.45)); animation:travelix-road-car-fallback 2.6s ease-in-out infinite alternate; }
.travelix-navigation-loading__car svg { display:block; width:100%; height:100%; }
@supports (offset-path:path("M 0 0 L 1 1")) { .travelix-navigation-loading__car { offset-path:path("M -130,-12 L -95,-12 L -95,20 C -75,20 -70,-5 -50,-5 C -35,-5 -30,20 -15,20 L 5,20 C 15,-15 15,20 25,20 C 35,20 40,-25 50,-25 L 50,20 C 65,5 80,5 95,20 L 105,20 C 115,20 120,-10 130,-10 L 130,20"); offset-rotate:auto 0deg; animation:travelix-road-car-path 4.2s linear infinite; } }
.travelix-navigation-loading__wave { position:absolute; z-index:4; left:50%; bottom:-19px; display:flex; align-items:center; justify-content:center; gap:3px; width:54px; height:15px; padding:2px 7px; border-radius:999px; background:rgba(255,255,255,.92); box-shadow:0 3px 12px rgba(22,54,91,.2); transform:translateX(-50%); }
.travelix-navigation-loading__wave span { width:3px; height:8px; border-radius:999px; background:#178ee9; animation:travelix-road-wave .7s ease-in-out infinite alternate; }
.travelix-navigation-loading__wave span:nth-child(2n) { animation-delay:.14s; }
.travelix-navigation-loading__wave span:nth-child(3n) { animation-delay:.28s; }
@keyframes travelix-road-ring-dash { to { stroke-dashoffset:-1000; } }
@keyframes travelix-road-arrive { from { opacity:0; transform:scale(.94); } to { opacity:1; transform:scale(1); } }
@keyframes travelix-road-wave { from { transform:scaleY(.35); opacity:.55; } to { transform:scaleY(1.15); opacity:1; } }
@keyframes travelix-road-car-path { to { offset-distance:100%; } }
@keyframes travelix-road-car-fallback { from { transform:translateX(-115px); } to { transform:translateX(115px); } }
@media (prefers-reduced-motion:reduce) { .travelix-navigation-loading__ring-dash,.travelix-navigation-loading__car,.travelix-navigation-loading__wave span { animation:none!important; } }
