.dynamic-splash{z-index:99999;background:#0f172a;flex-direction:column;justify-content:center;align-items:center;width:100vw;height:100vh;transition:opacity .8s cubic-bezier(.4,0,.2,1),transform .8s ease-in-out;display:flex;position:fixed;top:0;left:0}.dynamic-splash.fade-out{opacity:0;pointer-events:none;transform:scale(1.15)}.splash-content{flex-direction:column;align-items:center;gap:1.5rem;display:flex}.logo-container{filter:drop-shadow(0 0 30px #84cc164d)}.brand-text{letter-spacing:-.05em;align-items:center;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:2.8rem;font-weight:900;display:flex}.brand-vega{color:#f8fafc}.brand-go{color:#84cc16}.progress-container{flex-direction:column;align-items:center;gap:.8rem;width:200px;margin-top:1.5rem;display:flex}.progress-bar{background:#ffffff14;border-radius:10px;width:100%;height:3px;overflow:hidden}.progress-fill{background:#84cc16;border-radius:10px;width:40%;height:100%;animation:1.8s ease-in-out infinite loading-slide}.loading-text{color:#fff6;letter-spacing:.1em;text-transform:uppercase;font-size:.7rem;font-weight:700}.splash-footer{color:#fff3;letter-spacing:.05em;font-size:.65rem;font-weight:600;position:absolute;bottom:2.5rem}@keyframes loading-slide{0%{transform:translate(-110%)}to{transform:translate(260%)}}@keyframes bounce-slow{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}.animate-bounce-slow{animation:3s ease-in-out infinite bounce-slow}.animate-fade-in{animation:.5s ease-out forwards fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.hud-container{pointer-events:none;z-index:10000;width:100%;height:100%;transition:all .5s cubic-bezier(.32,.72,0,1);position:absolute;top:0;left:0}.true-glass{-webkit-backdrop-filter:blur(25px)saturate(200%)contrast(90%);pointer-events:auto;background:#fff6;border:1px solid #ffffff80;box-shadow:0 8px 32px #0000001a,inset 0 0 0 1px #fff3}:root.dark .true-glass{-webkit-backdrop-filter:blur(30px)saturate(180%)contrast(110%);background:#0f172a66;border:1px solid #ffffff1a;box-shadow:0 10px 40px #0006,inset 0 0 0 1px #ffffff0d}.hud-top-capsule{top:calc(5.5rem + var(--safe-area-top));opacity:0;pointer-events:auto;border-radius:2rem;align-items:center;gap:.8rem;width:92%;max-width:400px;padding:.75rem 1rem;transition:transform .6s cubic-bezier(.19,1,.22,1),opacity .3s;display:flex;position:absolute;left:50%;transform:translate(-50%)translateY(-100px)}.active .hud-top-capsule{opacity:1;transform:translate(-50%)translateY(0)}.hud-line-badge{color:#fff;text-align:center;border-radius:1.1rem;flex-shrink:0;justify-content:center;align-items:center;width:auto;min-width:44px;height:44px;padding:0 12px;font-size:.9rem;font-weight:900;display:flex;box-shadow:0 4px 12px #0003}.hud-title-area{flex:1;min-width:0}.hud-line-name{color:var(--text-color);letter-spacing:-.02em;margin:0;font-size:.95rem;font-weight:800;line-height:1.2}.hud-line-sub{color:var(--text-muted);opacity:.8;margin-top:2px;font-size:.7rem;font-weight:600}.hud-top-actions{align-self:center;gap:.4rem;display:flex}.hud-icon-btn{width:32px;height:32px;color:var(--text-color);cursor:pointer;background:#ffffff4d;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}:root.dark .hud-icon-btn{background:#ffffff0d}.hud-icon-btn.fav.active{color:#f59e0b}.hud-icon-btn.close{color:#ff3b30;background:#ff3b301a}.hud-bottom-wrapper{bottom:calc(8.7rem + var(--safe-area-bottom));opacity:0;pointer-events:none;width:100%;padding:0 1rem;transition:transform .6s cubic-bezier(.19,1,.22,1),opacity .4s;position:absolute;left:0;transform:translateY(150px)}.active .hud-bottom-wrapper{opacity:1;transform:translateY(0)}.hud-bottom-capsule{pointer-events:auto;border-radius:2.2rem;flex-direction:column;gap:1.1rem;width:100%;max-width:420px;margin:0 auto;padding:1.1rem;display:flex}.hud-info-row{justify-content:space-around;align-items:center;padding:0 .5rem;display:flex}.hud-info-item{flex:1;align-items:center;gap:.5rem;display:flex}.hud-info-divider{background:#0000000d;width:1px;height:24px;margin:0 .5rem}:root.dark .hud-info-divider{background:#ffffff0d}.hud-accent{color:var(--primary);opacity:.8}.hud-info-content{flex-direction:column;display:flex}.hud-info-label{text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em;font-size:.65rem;font-weight:800}.hud-info-value{color:var(--text-color);word-break:break-word;font-size:.8rem;font-weight:800;line-height:1.1}.hud-stops-row{background:#ffffff1a;border:1px solid #0000;border-radius:1.4rem;padding:.7rem .8rem;position:relative;overflow:hidden}.hud-stops-track{scrollbar-width:none;scroll-snap-type:x proximity;cursor:grab;-webkit-overflow-scrolling:touch;gap:1.5rem;padding:.2rem 2.5rem .2rem .5rem;display:flex;overflow-x:auto}.hud-stops-track:active{cursor:grabbing}.hud-stops-track::-webkit-scrollbar{display:none}.hud-scroll-hint{z-index:5;pointer-events:none;background:#fffc;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;animation:1.5s infinite bounceRight;display:flex;position:absolute;top:50%;right:6px;transform:translateY(-50%);box-shadow:0 2px 8px #0000001a}:root.dark .hud-scroll-hint{background:#1e293be6}@keyframes bounceRight{0%,to{transform:translateY(-50%)translate(0)}50%{transform:translateY(-50%)translate(3px)}}.hud-stop-node{cursor:pointer;scroll-snap-align:start;align-items:center;gap:.6rem;min-width:max-content;transition:opacity .2s;display:flex}.hud-stop-node:active{opacity:.6}.hud-node-dot{border:2px solid #fff;border-radius:50%;flex-shrink:0;width:8px;height:8px;box-shadow:0 2px 4px #0000001a}.hud-stop-name-mini{color:var(--text-color);opacity:.9;white-space:nowrap;font-size:.7rem;font-weight:700}.hud-stops-gradient{pointer-events:none;width:40px;height:100%;position:absolute;top:0;right:0}.hud-skeleton-line{background:#0000000d;border-radius:6px;width:100%;height:12px;animation:1.5s infinite pulse}@keyframes pulse{0%{opacity:.5}50%{opacity:.8}to{opacity:.5}}@media (width<=400px){.hud-bottom-capsule{padding:.8rem}.hud-info-row{padding:0}}.poi-details-sheet{bottom:calc(8.7rem + var(--safe-area-bottom));-webkit-backdrop-filter:blur(30px)saturate(200%)contrast(90%);z-index:10001;opacity:0;background:#ffffff73;border:1px solid #ffffff80;border-radius:2.5rem;flex-direction:column;width:94%;max-width:450px;max-height:calc(100dvh - 15rem);transition:transform .5s cubic-bezier(.32,.72,0,1),opacity .3s;display:flex;position:absolute;left:50%;overflow:hidden;transform:translate(-50%)translateY(110%);box-shadow:0 12px 40px #00000026,inset 0 0 0 1px #fff3}:root.dark .poi-details-sheet{background:#0f172a73;border-color:#ffffff1a;box-shadow:0 15px 50px #0006,inset 0 0 0 1px #ffffff0d}.poi-details-sheet.open{opacity:1;transform:translate(-50%)translateY(0)}.sheet-handle-container{cursor:pointer;flex-shrink:0;padding:.8rem 0}.sheet-handle{background:#0000001a;border-radius:10px;width:40px;height:4px;margin:0 auto}:root.dark .sheet-handle{background:#fff3}.poi-header-sticky{padding:0 1.5rem 1rem}.poi-title-row{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.poi-name{letter-spacing:-.03em;color:var(--text-color);flex:1;margin:0;font-size:1.35rem;font-weight:900;line-height:1.15}.close-btn{cursor:pointer;width:34px;height:34px;color:var(--text-color);background:#0000000d;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:transform .2s;display:flex}:root.dark .close-btn{background:#ffffff14}.close-btn:active{transform:scale(.9)}.poi-scroll-content{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex:1;padding:1.5rem;overflow-y:auto}.poi-scroll-content::-webkit-scrollbar{display:none}.poi-image-container{border:1px solid #ffffff4d;border-radius:1.4rem;width:100%;height:120px;margin-bottom:1rem;position:relative;overflow:hidden;box-shadow:0 4px 15px #0000001a}.poi-image{object-fit:cover;width:100%;height:100%}.poi-image-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;background:#00000080;border:1px solid #ffffff1a;border-radius:20px;align-items:center;gap:5px;padding:4px 10px;font-size:.6rem;font-weight:800;display:flex;position:absolute;bottom:10px;right:10px}.poi-info-card{background:#ffffff4d;border:1px solid #fff3;border-radius:1.2rem;flex-direction:column;gap:.8rem;margin-bottom:1rem;padding:1rem;display:flex}:root.dark .poi-info-card{background:#ffffff05;border-color:#ffffff0d}.info-item{align-items:flex-start;gap:.8rem;display:flex}.info-icon{color:var(--primary);flex-shrink:0;margin-top:2px}.info-label{display:none}.info-value{color:var(--text-color);margin:0;font-size:.9rem;font-weight:600;line-height:1.3}.poi-actions{flex-direction:column;gap:.75rem;margin-bottom:1.5rem;display:flex}.primary-action,.secondary-action{cursor:pointer;text-transform:uppercase;letter-spacing:.05em;border:none;border-radius:1.2rem;justify-content:center;align-items:center;gap:.6rem;width:100%;padding:.85rem;font-size:.85rem;font-weight:800;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.primary-action{background:var(--primary);color:#fff;box-shadow:0 8px 20px #84cc1640}.secondary-action{color:var(--text-color);background:#fff6;border:1px solid #0000000d}:root.dark .secondary-action{background:#ffffff0d;border-color:#ffffff1a}.primary-action:hover{transform:translateY(-2px);box-shadow:0 10px 25px #84cc1659}.primary-action:active,.secondary-action:active{transform:scale(.97)translateY(0)}.poi-legal-note{text-align:center;opacity:.5;padding:0 1rem 1rem;font-size:.7rem;font-weight:500;line-height:1.4}.cookie-banner-overlay{bottom:calc(9.2rem + var(--safe-area-bottom));z-index:9999;width:calc(100% - 2rem);max-width:500px;animation:.5s cubic-bezier(.175,.885,.32,1.275) slideUpCookie;position:fixed;left:50%;transform:translate(-50%)}.cookie-banner-glass{-webkit-backdrop-filter:blur(20px)saturate(180%);background:#0f172acc;border:1px solid #ffffff1a;border-radius:1.5rem;align-items:center;gap:1.5rem;padding:1rem 1.2rem;display:flex;box-shadow:0 10px 40px #0000004d}:root:not(.dark) .cookie-banner-glass{background:#ffffffd9;border-color:#0000000d;box-shadow:0 10px 40px #0000001a}.cookie-content p{color:var(--text-color);margin:0;font-size:.85rem;font-weight:500;line-height:1.4}.cookie-accept-btn{background:var(--primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:1rem;padding:.6rem 1.2rem;font-size:.85rem;font-weight:800;transition:transform .2s}.cookie-accept-btn:active{transform:scale(.95)}@keyframes slideUpCookie{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}@media (width<=480px){.cookie-banner-glass{text-align:center;flex-direction:column;gap:.8rem;padding:1.2rem}.cookie-accept-btn{width:100%}}
