*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--font-main:"Outfit", sans-serif;--font-mono:"Space Mono", monospace;--finland-blue:#003580;--finland-blue-light:#1a5fb4;--finland-white:#f0f4ff;--aurora-green:#00e5a0;--aurora-purple:#7c3aed;--aurora-pink:#ec4899;--gold:#f59e0b;--dark-bg:#0a1628;--card-bg:#ffffff0f;--card-border:#ffffff1f;--text-primary:#f0f4ff;--text-secondary:#f0f4ffa6;--glass:#0a16288c}html,body{width:100%;height:100%;overflow-x:hidden}body{font-family:var(--font-main);background:var(--dark-bg);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{min-height:100dvh}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff59}.glass{background:var(--card-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--card-border);border-radius:20px}.btn{cursor:pointer;font-family:var(--font-main);-webkit-tap-highlight-color:transparent;border:none;border-radius:12px;outline:none;align-items:center;gap:8px;padding:12px 24px;font-size:1rem;font-weight:600;transition:all .25s;display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{background:linear-gradient(135deg, var(--finland-blue), var(--finland-blue-light));color:#fff;box-shadow:0 4px 20px #00358080}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 28px #1a5fb4a6}.btn-aurora{background:linear-gradient(135deg, var(--aurora-green), var(--finland-blue-light));color:#fff;box-shadow:0 4px 20px #00e5a059}.btn-aurora:hover{transform:translateY(-1px);box-shadow:0 6px 28px #00e5a080}.btn-ghost{color:var(--text-primary);background:#ffffff14;border:1px solid #ffffff26}.btn-ghost:hover{background:#ffffff24}.btn-danger{color:#fff;background:linear-gradient(135deg,#dc2626,#ef4444);box-shadow:0 4px 20px #dc262659}@keyframes fadeIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px #00e5a04d}50%{box-shadow:0 0 40px #00e5a0b3}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes aurora{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes planeFly{0%{left:5%}to{left:calc(100% - 60px)}}@keyframes spin{to{transform:rotate(360deg)}}.fade-in{animation:.5s forwards fadeIn}.fade-in-scale{animation:.4s forwards fadeInScale}.login-wrapper[data-v-462619d6]{background:radial-gradient(at 20% 80%,#001f5b 0%,#0a1628 50%,#000d1a 100%);justify-content:center;align-items:center;min-height:100dvh;padding:20px;display:flex;position:relative;overflow:hidden}.aurora-bg[data-v-462619d6]{pointer-events:none;position:absolute;inset:0;overflow:hidden}.aurora[data-v-462619d6]{filter:blur(80px);opacity:.35;border-radius:50%;animation:8s ease-in-out infinite aurora;position:absolute}.aurora-1[data-v-462619d6]{background:linear-gradient(135deg,#00e5a0,#003580);width:600px;height:300px;animation-delay:0s;top:-100px;left:-100px}.aurora-2[data-v-462619d6]{background:linear-gradient(135deg,#7c3aed,#1a5fb4);width:500px;height:250px;animation-delay:-3s;bottom:-80px;right:-80px}.aurora-3[data-v-462619d6]{background:linear-gradient(135deg,#ec4899,#003580);width:400px;height:200px;animation-delay:-6s;top:30%;left:40%}.stars[data-v-462619d6]{pointer-events:none;position:absolute;inset:0}.star[data-v-462619d6]{animation:twinkle-462619d6 var(--dur,3s) ease-in-out infinite;opacity:.6;background:#fff;border-radius:50%;position:absolute}@keyframes twinkle-462619d6{0%,to{opacity:.2;transform:scale(.8)}50%{opacity:.9;transform:scale(1.3)}}.login-card[data-v-462619d6]{z-index:10;border:1px solid #ffffff26;width:100%;max-width:420px;padding:44px 36px;position:relative}.login-logo[data-v-462619d6]{text-align:center;margin-bottom:28px}.flag-icon[data-v-462619d6]{margin-bottom:8px;font-size:4rem;animation:4s ease-in-out infinite float;display:block}.login-title[data-v-462619d6]{letter-spacing:-.5px;background:linear-gradient(135deg,#fff,#a0c4ff,#00e5a0);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2.2rem;font-weight:800}.year[data-v-462619d6]{opacity:1.85;font-weight:300}.login-subtitle[data-v-462619d6]{color:#ffffff80;letter-spacing:.5px;margin-top:4px;font-size:.85rem}.snowflakes[data-v-462619d6]{opacity:.4;justify-content:center;gap:6px;margin-bottom:24px;font-size:.85rem;display:flex}.login-form[data-v-462619d6]{flex-direction:column;gap:16px;display:flex}.input-group[data-v-462619d6]{flex-direction:column;gap:8px;display:flex}.input-group label[data-v-462619d6]{color:#fff9;letter-spacing:.5px;font-size:.85rem;font-weight:500}.input-wrapper[data-v-462619d6]{background:#ffffff0f;border:1.5px solid #ffffff1f;border-radius:12px;align-items:center;transition:border-color .2s,box-shadow .2s;display:flex;overflow:hidden}.input-wrapper[data-v-462619d6]:focus-within{border-color:var(--finland-blue-light);box-shadow:0 0 0 3px #1a5fb440}.input-wrapper.error[data-v-462619d6]{border-color:#ef4444;box-shadow:0 0 0 3px #ef444433}.input-wrapper.shake[data-v-462619d6]{animation:.5s shakeAnim-462619d6}@keyframes shakeAnim-462619d6{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-6px)}80%{transform:translate(6px)}}.input-icon[data-v-462619d6]{border-right:1px solid #ffffff1a;padding:0 12px;font-size:1.1rem}.input-wrapper input[data-v-462619d6]{color:#fff;font-family:var(--font-mono);letter-spacing:1px;background:0 0;border:none;outline:none;flex:1;padding:14px 16px;font-size:1.1rem}.input-wrapper input[data-v-462619d6]::placeholder{color:#ffffff40;letter-spacing:0;font-size:.95rem}.error-msg[data-v-462619d6]{color:#fca5a5;padding-left:4px;font-size:.82rem}.err-enter-active[data-v-462619d6],.err-leave-active[data-v-462619d6]{transition:all .25s}.err-enter-from[data-v-462619d6],.err-leave-to[data-v-462619d6]{opacity:0;transform:translateY(-4px)}.btn-full[data-v-462619d6]{justify-content:center;width:100%;padding:15px;font-size:1.05rem}.spinner[data-v-462619d6]{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin;display:inline-block}.login-hint[data-v-462619d6]{text-align:center;color:#ffffff40;letter-spacing:1px;text-transform:uppercase;margin-top:20px;font-size:.75rem}@media (width<=480px){.login-card[data-v-462619d6]{padding:36px 24px}.login-title[data-v-462619d6]{font-size:1.9rem}.flag-icon[data-v-462619d6]{font-size:3.2rem}}.countdown-wrapper[data-v-33e716de]{text-align:center}.countdown-label[data-v-33e716de]{text-transform:uppercase;letter-spacing:2px;color:#ffffff80;margin-bottom:16px;font-size:.85rem}.countdown-display[data-v-33e716de]{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:4px;display:flex}.time-block[data-v-33e716de]{flex-direction:column;align-items:center;gap:4px;display:flex}.time-digit[data-v-33e716de]{font-family:var(--font-mono);background:linear-gradient(135deg,#fff 30%,#a0c4ff 70%,#00e5a0 100%);-webkit-text-fill-color:transparent;background-size:200%;-webkit-background-clip:text;background-clip:text;font-size:clamp(2.4rem,9vw,5rem);font-weight:700;line-height:1;animation:3s linear infinite shimmer}.time-digit.seconds[data-v-33e716de]{background:linear-gradient(135deg,#00e5a0,#1a5fb4);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.time-unit[data-v-33e716de]{text-transform:uppercase;letter-spacing:1.5px;color:#fff6;font-size:.65rem}.sep[data-v-33e716de]{font-family:var(--font-mono);color:#ffffff40;align-self:flex-end;padding-bottom:18px;font-size:clamp(2rem,8vw,4rem);font-weight:300}.departure-info[data-v-33e716de]{color:#ffffff80;letter-spacing:.5px;margin-top:20px;font-size:.9rem}@media (width<=400px){.sep[data-v-33e716de]{font-size:1.8rem}}.flight-card[data-v-88c3eab4]{flex-direction:column;gap:20px;display:flex}.flight-header[data-v-88c3eab4]{align-items:center;gap:12px;display:flex}.airport[data-v-88c3eab4]{flex-direction:column;align-items:center;gap:4px;min-width:60px;display:flex}.airport.dest[data-v-88c3eab4]{text-align:right}.iata[data-v-88c3eab4]{font-family:var(--font-mono);color:#fff;font-size:1.6rem;font-weight:700}.city[data-v-88c3eab4]{color:#ffffff80;text-align:center;max-width:80px;font-size:.7rem;line-height:1.2}.route-line[data-v-88c3eab4]{flex:1;align-items:center;gap:4px;display:flex}.route-dot[data-v-88c3eab4]{background:var(--aurora-green);border-radius:50%;flex-shrink:0;width:8px;height:8px}.route-track[data-v-88c3eab4]{background:linear-gradient(90deg, var(--aurora-green), #ffffff26, var(--finland-blue-light));border-radius:1px;flex:1;height:2px;position:relative}.plane-wrapper[data-v-88c3eab4]{z-index:2;transition:left 1s linear;position:absolute;top:50%;transform:translateY(-50%)}.plane-emoji[data-v-88c3eab4]{filter:drop-shadow(0 0 8px #00e5a0cc);font-size:1.4rem;line-height:1;display:block;transform:translateY(-50%)}.progress-bar-wrapper[data-v-88c3eab4]{background:#ffffff1a;border-radius:3px;height:6px;overflow:hidden}.progress-bar[data-v-88c3eab4]{background:linear-gradient(90deg, var(--finland-blue-light), var(--aurora-green));border-radius:3px;height:100%;transition:width 1s;box-shadow:0 0 10px #00e5a080}.flight-info-row[data-v-88c3eab4]{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.info-item[data-v-88c3eab4]{text-align:center;background:#ffffff0d;border-radius:10px;flex-direction:column;gap:4px;padding:10px 8px;display:flex}.info-label[data-v-88c3eab4]{color:#fff6;text-transform:uppercase;letter-spacing:.5px;font-size:.65rem}.info-val[data-v-88c3eab4]{color:#fff;font-size:.8rem;font-weight:600}.info-val.highlight[data-v-88c3eab4]{color:var(--aurora-green);font-family:var(--font-mono)}.times-row[data-v-88c3eab4]{justify-content:space-between;align-items:center;gap:12px;display:flex}.time-col[data-v-88c3eab4]{flex-direction:column;gap:2px;display:flex}.time-col.right[data-v-88c3eab4]{text-align:right;align-items:flex-end}.time-label[data-v-88c3eab4]{color:#fff6;text-transform:uppercase;letter-spacing:.8px;font-size:.7rem}.time-val[data-v-88c3eab4]{font-family:var(--font-mono);color:#fff;font-size:1.3rem;font-weight:700}.tz-label[data-v-88c3eab4]{color:#ffffff4d;font-size:.65rem}.elapsed-badge[data-v-88c3eab4]{background:#00e5a01f;border:1px solid #00e5a04d;border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:8px 14px;display:flex}.elapsed-badge span[data-v-88c3eab4]{font-family:var(--font-mono);color:var(--aurora-green);font-size:1rem;font-weight:700}.elapsed-badge small[data-v-88c3eab4]{color:#ffffff59;text-transform:uppercase;letter-spacing:.5px;font-size:.6rem}@media (width<=480px){.flight-info-row[data-v-88c3eab4]{grid-template-columns:repeat(2,1fr)}.iata[data-v-88c3eab4]{font-size:1.3rem}.plane-emoji[data-v-88c3eab4]{font-size:1.1rem}}.train-card[data-v-b00d34a7]{flex-direction:column;gap:20px;display:flex}.train-route[data-v-b00d34a7]{align-items:center;gap:12px;display:flex}.train-station[data-v-b00d34a7]{flex-direction:column;align-items:center;gap:6px;min-width:70px;display:flex}.station-icon[data-v-b00d34a7]{font-size:1.8rem}.station-name[data-v-b00d34a7]{color:#fff;text-align:center;font-size:.8rem;font-weight:600}.train-middle[data-v-b00d34a7]{flex-direction:column;flex:1;align-items:center;gap:8px;display:flex}.train-track[data-v-b00d34a7]{align-items:center;width:100%;height:32px;display:flex;position:relative}.track-rail[data-v-b00d34a7]{background:repeating-linear-gradient(90deg,#ffffff26 0 12px,#0000 12px 20px);border-radius:2px;width:100%;height:4px;position:absolute}.track-progress[data-v-b00d34a7]{background:linear-gradient(90deg, var(--aurora-green), var(--finland-blue-light));border-radius:2px;height:4px;transition:width 5s linear;position:absolute;left:0;box-shadow:0 0 8px #00e5a080}.train-icon-wrapper[data-v-b00d34a7]{z-index:2;filter:drop-shadow(0 0 6px #00e5a0b3);font-size:1.5rem;transition:left 5s linear;position:absolute;left:0}.train-icon-wrapper.moving[data-v-b00d34a7]{animation:.8s ease-in-out infinite trainBounce-b00d34a7}@keyframes trainBounce-b00d34a7{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.train-duration[data-v-b00d34a7]{color:#fff6;letter-spacing:.5px;font-size:.75rem}.train-status-row[data-v-b00d34a7]{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.status-badge[data-v-b00d34a7]{border-radius:20px;align-items:center;gap:8px;padding:6px 14px;font-size:.82rem;font-weight:600;display:inline-flex}.status-badge.waiting[data-v-b00d34a7]{color:#fff9;background:#ffffff14}.status-badge.moving[data-v-b00d34a7]{color:var(--aurora-green);background:#00e5a026;border:1px solid #00e5a04d;animation:2s ease-in-out infinite pulse-glow}.status-badge.finished[data-v-b00d34a7]{color:#4ade80;background:#22c55e26;border:1px solid #22c55e4d}.status-dot[data-v-b00d34a7]{background:currentColor;border-radius:50%;width:8px;height:8px}.status-badge.moving .status-dot[data-v-b00d34a7]{animation:1s ease-in-out infinite blink-b00d34a7}@keyframes blink-b00d34a7{0%,to{opacity:1}50%{opacity:.2}}.elapsed-info[data-v-b00d34a7]{color:#fff6;font-size:.8rem}.train-controls[data-v-b00d34a7]{justify-content:center;display:flex}.finished-badge[data-v-b00d34a7]{color:#4ade80;text-align:center;background:#22c55e1f;border:1px solid #22c55e4d;border-radius:12px;padding:12px 20px;font-size:.9rem}.weather-box[data-v-7dfc5bac]{background:#ffffff0f;border:1px solid #ffffff24;border-radius:14px;padding:14px}.weather-main[data-v-7dfc5bac]{align-items:center;gap:10px;display:flex}.weather-icon[data-v-7dfc5bac]{font-size:1.9rem}.weather-title[data-v-7dfc5bac]{color:#fff;margin:0;font-weight:700}.weather-desc[data-v-7dfc5bac]{color:#ffffffb8;margin:0;font-size:.82rem}.weather-temps[data-v-7dfc5bac]{color:#dbeafe;gap:14px;margin-top:8px;font-size:.86rem;font-weight:600;display:flex}.weather-loading[data-v-7dfc5bac],.weather-error[data-v-7dfc5bac]{color:#ffffffbf;font-size:.84rem}.step-card[data-v-9420750d]{flex-direction:column;gap:18px;padding:24px;display:flex}.step-type-row[data-v-9420750d]{justify-content:space-between;align-items:center;display:flex}.type-badge[data-v-9420750d]{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;align-items:center;gap:6px;padding:5px 14px;font-size:.78rem;font-weight:700;display:inline-flex}.badge-blue[data-v-9420750d]{color:#93c5fd;background:#1a5fb440;border:1px solid #1a5fb480}.badge-green[data-v-9420750d]{color:var(--aurora-green);background:#00e5a026;border:1px solid #00e5a066}.badge-orange[data-v-9420750d]{color:#fcd34d;background:#f59e0b26;border:1px solid #f59e0b66}.badge-purple[data-v-9420750d]{color:#c4b5fd;background:#7c3aed26;border:1px solid #7c3aed66}.badge-teal[data-v-9420750d]{color:#5eead4;background:#14b8a626;border:1px solid #14b8a666}.badge-pink[data-v-9420750d]{color:#f9a8d4;background:#ec489926;border:1px solid #ec489966}.step-letter[data-v-9420750d]{color:#ffffff4d;font-size:.72rem;font-family:var(--font-mono);text-transform:uppercase}.step-title[data-v-9420750d]{color:#fff;font-size:1.5rem;font-weight:800;line-height:1.2}.step-desc[data-v-9420750d]{color:#ffffff80;font-size:.88rem;line-height:1.5}.transfer-info[data-v-9420750d]{background:#f59e0b14;border:1px solid #f59e0b33;border-radius:14px;align-items:center;gap:16px;padding:16px;display:flex}.transfer-icon[data-v-9420750d]{font-size:2rem}.transfer-detail[data-v-9420750d]{flex-direction:column;flex:1;gap:6px;display:flex}.transfer-place[data-v-9420750d]{color:#fff;font-size:.95rem;font-weight:600}.transfer-dur[data-v-9420750d]{color:#fcd34d;font-size:.8rem}.transfer-progress[data-v-9420750d]{background:#ffffff1a;border-radius:2px;height:4px;overflow:hidden}.transfer-bar[data-v-9420750d]{background:linear-gradient(90deg,#f59e0b,#fcd34d);border-radius:2px;height:100%;transition:width 10s linear}.checkin-info[data-v-9420750d]{background:#7c3aed1a;border:1px solid #7c3aed40;border-radius:14px;align-items:center;gap:16px;padding:16px;display:flex}.checkin-icon[data-v-9420750d]{font-size:2rem}.checkin-detail[data-v-9420750d]{flex-direction:column;flex:1;gap:6px;display:flex}.checkin-place[data-v-9420750d]{color:#fff;font-size:.95rem;font-weight:600}.checkin-note[data-v-9420750d]{color:#fff6;font-size:.78rem}.checkin-maps-btn[data-v-9420750d]{color:#c4b5fd;background:#7c3aed33;border:1px solid #7c3aed66;border-radius:10px;align-items:center;gap:6px;width:fit-content;padding:8px 14px;font-size:.82rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.checkin-maps-btn[data-v-9420750d]:hover{background:#7c3aed59;transform:scale(1.02)}.event-info[data-v-9420750d]{background:#ec48991a;border:1px solid #ec489940;border-radius:14px;align-items:flex-start;gap:16px;padding:16px;display:flex}.event-icon[data-v-9420750d]{font-size:2rem}.event-detail[data-v-9420750d]{flex-direction:column;flex:1;gap:10px;display:flex}.event-place[data-v-9420750d]{color:#ffffff80;font-size:.82rem;line-height:1.4}.event-maps-btn[data-v-9420750d]{color:#f9a8d4;background:#ec489933;border:1px solid #ec489966;border-radius:10px;align-items:center;gap:6px;width:fit-content;padding:8px 14px;font-size:.82rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.event-maps-btn[data-v-9420750d]:hover{background:#ec489959;transform:scale(1.02)}.city-info[data-v-9420750d]{background:#14b8a614;border:1px solid #14b8a633;border-radius:14px;flex-direction:column;align-items:center;gap:14px;padding:16px;display:flex}.city-hint[data-v-9420750d]{color:#ffffff73;font-size:.88rem}.explore-btn[data-v-9420750d]{padding:12px 24px;font-size:.95rem}.step-times[data-v-9420750d]{border-top:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:8px;padding-top:12px;display:flex}.step-time-item[data-v-9420750d]{flex-direction:column;gap:2px;display:flex}.step-time-item.right[data-v-9420750d]{align-items:flex-end}.st-label[data-v-9420750d]{text-transform:uppercase;letter-spacing:1px;color:#ffffff59;font-size:.65rem}.st-val[data-v-9420750d]{font-family:var(--font-mono);color:#fff;font-size:1.1rem;font-weight:700}.st-zone[data-v-9420750d]{color:#ffffff4d;font-size:.62rem}.time-arrow[data-v-9420750d]{color:#ffffff40;font-size:1.2rem}.modal-backdrop[data-v-18b3d947]{-webkit-backdrop-filter:blur(12px);z-index:9999;isolation:isolate;background:#020814c7;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}@media (width>=600px){.modal-backdrop[data-v-18b3d947]{align-items:center}}.modal-box[data-v-18b3d947]{background:#060e1ceb;border:1px solid #ffffff24;border-radius:24px;flex-direction:column;width:100%;max-width:620px;max-height:88dvh;padding:24px;display:flex;overflow:hidden;box-shadow:0 18px 50px #00000073}.modal-header[data-v-18b3d947]{flex-shrink:0;justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex}.modal-title[data-v-18b3d947]{color:#fff;font-size:1.4rem;font-weight:800}.modal-subtitle[data-v-18b3d947]{color:#ffffffad;margin-top:3px;font-size:.8rem}.close-btn[data-v-18b3d947]{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff1f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.9rem;transition:background .2s;display:flex}.close-btn[data-v-18b3d947]:hover{background:#ffffff26}.timeline-wrapper[data-v-18b3d947]{flex:1;padding-right:4px;overflow-y:auto}.timeline-item[data-v-18b3d947]{opacity:.9;gap:14px;transition:opacity .3s;display:flex}.timeline-item.active[data-v-18b3d947]{opacity:1}.timeline-item.completed[data-v-18b3d947]{opacity:.95}.timeline-connector[data-v-18b3d947]{flex-direction:column;flex-shrink:0;align-items:center;display:flex}.timeline-dot[data-v-18b3d947]{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;display:flex}.timeline-line[data-v-18b3d947]{background:#ffffff1a;flex:1;width:2px;min-height:20px;margin:4px 0}.timeline-item.active .timeline-dot[data-v-18b3d947]{box-shadow:0 0 0 3px #fff3,0 0 15px #00e5a066}.color-blue[data-v-18b3d947]{background:#1a5fb459;border:1px solid #1a5fb499}.color-green[data-v-18b3d947]{background:#00e5a033;border:1px solid #00e5a080}.color-orange[data-v-18b3d947]{background:#f59e0b33;border:1px solid #f59e0b80}.color-purple[data-v-18b3d947]{background:#7c3aed33;border:1px solid #7c3aed80}.color-teal[data-v-18b3d947]{background:#14b8a633;border:1px solid #14b8a680}.color-pink[data-v-18b3d947]{background:#ec489933;border:1px solid #ec489980}.timeline-content[data-v-18b3d947]{flex:1;padding-bottom:24px}.step-meta[data-v-18b3d947]{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;display:flex}.step-date[data-v-18b3d947]{color:#ffffffb8;font-size:.72rem;font-family:var(--font-mono)}.step-badge[data-v-18b3d947]{text-transform:uppercase;letter-spacing:.5px;color:#fff;border-radius:10px;padding:2px 8px;font-size:.65rem;font-weight:700}.live-badge[data-v-18b3d947]{color:var(--aurora-green);letter-spacing:1px;font-size:.65rem;font-weight:700;animation:1.5s ease-in-out infinite blink-18b3d947}@keyframes blink-18b3d947{0%,to{opacity:1}50%{opacity:.3}}.step-title[data-v-18b3d947]{color:#fff;margin-bottom:3px;font-size:1rem;font-weight:700}.step-desc[data-v-18b3d947]{color:#ffffffc7;font-size:.8rem;line-height:1.4}.step-detail-row[data-v-18b3d947]{color:#ffffffbd;flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;font-size:.78rem;display:flex}.step-place[data-v-18b3d947]{margin-top:6px}.maps-link[data-v-18b3d947]{color:var(--aurora-green);align-items:center;gap:4px;font-size:.78rem;text-decoration:none;display:inline-flex}.maps-link[data-v-18b3d947]:hover{text-decoration:underline}.modal-enter-active[data-v-18b3d947],.modal-leave-active[data-v-18b3d947]{transition:all .35s}.modal-enter-from[data-v-18b3d947],.modal-leave-to[data-v-18b3d947]{opacity:0}.modal-enter-from .modal-box[data-v-18b3d947],.modal-leave-to .modal-box[data-v-18b3d947]{transform:translateY(30px)}.modal-backdrop[data-v-fb83ca77]{-webkit-backdrop-filter:blur(6px);z-index:1000;background:#000000bf;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}@media (width>=600px){.modal-backdrop[data-v-fb83ca77]{align-items:center}}.modal-box[data-v-fb83ca77]{border-radius:24px;flex-direction:column;gap:16px;width:100%;max-width:580px;max-height:85dvh;padding:24px;display:flex;overflow:hidden}@media (width<=600px){.modal-box[data-v-fb83ca77]{border-radius:24px 24px 20px 20px}}.modal-header[data-v-fb83ca77]{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.modal-title-row[data-v-fb83ca77]{align-items:center;gap:14px;display:flex}.modal-flag[data-v-fb83ca77]{font-size:2.4rem}.modal-title[data-v-fb83ca77]{color:#fff;font-size:1.5rem;font-weight:800}.modal-subtitle[data-v-fb83ca77]{color:#ffffff73;margin-top:2px;font-size:.8rem}.close-btn[data-v-fb83ca77]{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff1f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.9rem;transition:background .2s;display:flex}.close-btn[data-v-fb83ca77]:hover{background:#ffffff26}.search-wrapper[data-v-fb83ca77]{background:#ffffff0f;border:1px solid #ffffff1a;border-radius:12px;flex-shrink:0;align-items:center;display:flex;overflow:hidden}.search-icon[data-v-fb83ca77]{opacity:.5;padding:0 12px;font-size:1rem}.search-input[data-v-fb83ca77]{color:#fff;font-family:var(--font-main);background:0 0;border:none;outline:none;flex:1;padding:12px 12px 12px 0;font-size:.95rem}.search-input[data-v-fb83ca77]::placeholder{color:#ffffff40}.places-list[data-v-fb83ca77]{flex:1;padding-right:4px;overflow-y:auto}.places-grid[data-v-fb83ca77]{flex-direction:column;gap:10px;display:flex}.place-card[data-v-fb83ca77]{background:#ffffff0d;border:1px solid #ffffff14;border-radius:14px;align-items:center;gap:12px;padding:14px 16px;transition:background .2s,transform .2s;display:flex}.place-card[data-v-fb83ca77]:hover{background:#ffffff17;transform:translate(3px)}.place-info[data-v-fb83ca77]{flex:1}.place-name[data-v-fb83ca77]{color:#fff;margin-bottom:3px;font-size:.95rem;font-weight:700}.place-desc[data-v-fb83ca77]{color:#ffffff73;font-size:.78rem;line-height:1.4}.maps-btn[data-v-fb83ca77]{color:var(--aurora-green);text-align:center;background:linear-gradient(135deg,#1a5fb466,#00e5a033);border:1px solid #00e5a04d;border-radius:10px;flex-direction:column;flex-shrink:0;align-items:center;gap:2px;min-width:70px;padding:8px 12px;font-size:.72rem;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.maps-btn[data-v-fb83ca77]:hover{background:linear-gradient(135deg,#1a5fb499,#00e5a059);transform:scale(1.05)}.maps-icon[data-v-fb83ca77]{font-size:1.2rem}.no-results[data-v-fb83ca77]{text-align:center;color:#ffffff59;padding:32px;font-size:.9rem}.modal-footer-hint[data-v-fb83ca77]{text-align:center;color:#fff3;flex-shrink:0;font-size:.72rem}.modal-enter-active[data-v-fb83ca77],.modal-leave-active[data-v-fb83ca77]{transition:all .35s}.modal-enter-from[data-v-fb83ca77],.modal-leave-to[data-v-fb83ca77]{opacity:0}.modal-enter-from .modal-box[data-v-fb83ca77],.modal-leave-to .modal-box[data-v-fb83ca77]{transform:translateY(40px)scale(.95)}.list-enter-active[data-v-fb83ca77],.list-leave-active[data-v-fb83ca77]{transition:all .25s}.list-enter-from[data-v-fb83ca77]{opacity:0;transform:translate(-10px)}.list-leave-to[data-v-fb83ca77]{opacity:0;transform:translate(10px)}.modal-backdrop[data-v-8f5819ab]{-webkit-backdrop-filter:blur(12px);z-index:9999;background:#020814c7;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}@media (width>=600px){.modal-backdrop[data-v-8f5819ab]{align-items:center}}.modal-box[data-v-8f5819ab]{background:#060e1ceb;border:1px solid #ffffff24;border-radius:24px;flex-direction:column;width:100%;max-width:720px;max-height:88dvh;padding:24px;display:flex;overflow:hidden}.modal-header[data-v-8f5819ab]{justify-content:space-between;align-items:flex-start;margin-bottom:16px;display:flex}.modal-title[data-v-8f5819ab]{color:#fff;font-size:1.2rem;font-weight:800}.modal-subtitle[data-v-8f5819ab]{color:#ffffffb8;margin-top:4px;font-size:.82rem}.close-btn[data-v-8f5819ab]{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff1f;border-radius:50%;width:36px;height:36px}.checklist-wrapper[data-v-8f5819ab]{flex:1;padding-right:4px;overflow-y:auto}.accordion-item[data-v-8f5819ab]{background:#ffffff0a;border:1px solid #ffffff1f;border-radius:12px;margin-bottom:10px}.accordion-item summary[data-v-8f5819ab]{cursor:pointer;color:#fff;padding:12px 14px;font-weight:700;list-style:none}.accordion-item summary[data-v-8f5819ab]::-webkit-details-marker{display:none}.section-note[data-v-8f5819ab]{color:#ffffffbf;margin:0 14px 10px;font-size:.82rem}.check-row[data-v-8f5819ab]{color:#f4f7ff;align-items:flex-start;gap:10px;padding:8px 14px;font-size:.92rem;display:flex}.check-row input[data-v-8f5819ab]{accent-color:#00e5a0;width:16px;height:16px;margin-top:2px}.modal-overlay[data-v-fd4c2cad]{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:400;background:#040a12b3;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0}.modal-container[data-v-fd4c2cad]{border-radius:18px;flex-direction:column;width:min(920px,100%);max-height:86vh;display:flex;overflow:hidden}.modal-head[data-v-fd4c2cad]{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px;display:flex}.modal-head h2[data-v-fd4c2cad]{color:#fff;font-size:1.1rem}.modal-head p[data-v-fd4c2cad]{color:#ffffff73;margin-top:4px;font-size:.8rem}.close-btn[data-v-fd4c2cad]{color:#fffc;cursor:pointer;background:#ffffff14;border:none;border-radius:50%;width:32px;height:32px}.modal-body[data-v-fd4c2cad]{padding:16px;overflow:auto}.album-grid[data-v-fd4c2cad]{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;display:grid}.photo-card[data-v-fd4c2cad]{border:1px solid #ffffff14;border-radius:12px;display:block;overflow:hidden}.photo-card img[data-v-fd4c2cad]{object-fit:cover;width:100%;height:150px;display:block}.album-state[data-v-fd4c2cad]{color:#ffffffbf;text-align:center;padding:30px 0;font-size:.92rem}.album-state.error[data-v-fd4c2cad]{color:#fecaca}.album-state.error p[data-v-fd4c2cad]{margin:0 0 12px}.retry-btn[data-v-fd4c2cad]{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #fff3;border-radius:999px;padding:8px 16px;font-size:.88rem}.modal-fade-enter-active[data-v-fd4c2cad],.modal-fade-leave-active[data-v-fd4c2cad]{transition:opacity .2s}.modal-fade-enter-from[data-v-fd4c2cad],.modal-fade-leave-to[data-v-fd4c2cad]{opacity:0}.lightbox-overlay[data-v-fd4c2cad]{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:500;background:#000000e6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lightbox-img[data-v-fd4c2cad]{object-fit:contain;border-radius:8px;max-width:90vw;max-height:90vh;box-shadow:0 10px 40px #00000080}.lightbox-close[data-v-fd4c2cad]{color:#fff;cursor:pointer;z-index:510;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.2rem;transition:background .2s;display:flex;position:absolute;top:20px;right:20px}.lightbox-close[data-v-fd4c2cad]:hover{background:#fff3}.lightbox-nav[data-v-fd4c2cad]{color:#fff;cursor:pointer;z-index:510;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;font-size:2rem;transition:background .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-nav[data-v-fd4c2cad]:hover{background:#fff3}.lightbox-nav.prev[data-v-fd4c2cad]{left:20px}.lightbox-nav.next[data-v-fd4c2cad]{right:20px}.lightbox-info[data-v-fd4c2cad]{color:#fff;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:510;background:#040a12a6;border:1px solid #ffffff14;border-radius:16px;min-width:220px;padding:12px 24px;position:absolute;bottom:30px;left:50%;transform:translate(-50%)}.photo-author[data-v-fd4c2cad]{color:#fffffff2;margin:0;font-size:.95rem;font-weight:600}.photo-date[data-v-fd4c2cad]{color:#fff9;margin:4px 0 0;font-size:.8rem}.app-root[data-v-d497c969]{min-height:100dvh;position:relative;overflow-x:hidden}.bg-layer[data-v-d497c969]{z-index:0;background-position:50%;background-repeat:no-repeat;background-size:cover;transition:background-image 1.5s;position:fixed;inset:0}.bg-overlay[data-v-d497c969]{z-index:1;background:linear-gradient(#060e1ef2 30%,#060e1ecc 60%,#060e1ee6 100%);position:fixed;inset:0}.aurora-ambient[data-v-d497c969]{pointer-events:none;z-index:2;position:fixed;inset:0;overflow:hidden}.a-orb[data-v-d497c969]{filter:blur(100px);opacity:.12;border-radius:50%;animation:12s ease-in-out infinite aurora;position:absolute}.a1[data-v-d497c969]{background:linear-gradient(135deg,#003580,#00e5a0);width:700px;height:400px;top:-200px;left:-200px}.a2[data-v-d497c969]{background:linear-gradient(135deg,#7c3aed,#003580);width:500px;height:300px;animation-delay:-6s;bottom:-100px;right:-100px}.main-layout[data-v-d497c969]{z-index:3;flex-direction:column;min-height:100dvh;display:flex;position:relative}.bottom-nav[data-v-d497c969]{z-index:100;border-bottom:none;border-radius:16px 16px 0 0;flex-direction:column;gap:8px;padding:0;display:flex;position:fixed;bottom:0;left:0;right:0;overflow:hidden}.glass-bar[data-v-d497c969]{-webkit-backdrop-filter:blur(20px);background:#0a1628d1;border:1px solid #ffffff14}.top-bar-left[data-v-d497c969]{align-items:center;gap:10px;display:flex}.flag-mini[data-v-d497c969]{flex-shrink:0;align-items:center;display:flex}.user-info[data-v-d497c969]{flex-direction:column;gap:1px;display:flex}.user-greeting[data-v-d497c969]{color:#111827;font-size:1.05rem;font-weight:700}.user-rut[data-v-d497c969]{color:#11182799;font-size:.72rem;font-family:var(--font-mono)}.bottom-nav-user-row[data-v-d497c969]{background:#ffffffe6;width:100%;padding:10px 16px}.bottom-nav-actions-row[data-v-d497c969]{background:#ffffff40;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;width:100%;padding:2px 2px 0;display:grid}.btn-sm[data-v-d497c969]{padding:7px 14px;font-size:.82rem}.nav-action-btn[data-v-d497c969]{color:#eff6ffeb;background:linear-gradient(#0f2238fa,#0a1728fa);border:1px solid #ffffff17;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:76px;display:flex;position:relative;box-shadow:inset 0 1px #ffffff1a}.nav-action-btn[data-v-d497c969]:hover{color:#fff;background:linear-gradient(#142c48fa,#0c1e32fa)}.nav-action-btn span[data-v-d497c969]:last-child{text-transform:none;letter-spacing:.3px;font-size:.72rem;font-weight:700}.nav-action-icon[data-v-d497c969]{color:#bfdbfef2;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex}.nav-action-icon svg[data-v-d497c969]{width:20px;height:20px}.nav-action-logout[data-v-d497c969]{min-height:76px}.nav-action-logout .nav-action-icon[data-v-d497c969]{width:18px;height:18px}.main-content[data-v-d497c969]{flex-direction:column;flex:1;justify-content:center;gap:16px;width:100%;max-width:680px;min-height:calc(100dvh - 150px);margin:0 auto;padding:16px;display:flex}.section-countdown[data-v-d497c969]{flex-direction:column;gap:16px;padding-top:8px;display:flex}.welcome-block[data-v-d497c969]{text-align:center;padding:8px 0}.welcome-title[data-v-d497c969]{color:#fff;font-size:clamp(1.4rem,5vw,2rem);font-weight:800;line-height:1.2}.name-highlight[data-v-d497c969]{background:linear-gradient(135deg, var(--aurora-green), var(--finland-blue-light));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.welcome-sub[data-v-d497c969]{color:#ffffff73;margin-top:6px;font-size:.9rem}.countdown-card[data-v-d497c969]{padding:28px 20px}.pre-info-cards[data-v-d497c969]{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.info-card[data-v-d497c969]{text-align:center;flex-direction:column;align-items:center;gap:6px;padding:14px 10px;display:flex}.info-card-icon[data-v-d497c969]{font-size:1.4rem}.info-card-label[data-v-d497c969]{text-transform:uppercase;letter-spacing:.8px;color:#fff6;font-size:.65rem}.info-card-val[data-v-d497c969]{color:#fff;font-size:.78rem;font-weight:600}.checkin-card[data-v-d497c969]{text-align:center;background:linear-gradient(135deg,#1a5fb42e,#00e5a01a);border-color:#00e5a040;flex-direction:column;align-items:center;gap:8px;padding:14px 16px;display:flex}.checkin-card.available[data-v-d497c969]{border-color:#00e5a08c;box-shadow:0 0 28px #00e5a02e}.checkin-card-icon[data-v-d497c969]{font-size:1.25rem}.checkin-card-label[data-v-d497c969]{text-transform:uppercase;letter-spacing:1.6px;color:#ffffff85;font-size:.68rem;font-weight:800}.checkin-card-message[data-v-d497c969]{color:var(--aurora-green);font-size:clamp(1.15rem,4vw,1.8rem);font-weight:900;line-height:1.1}.checkin-countdown[data-v-d497c969]{justify-content:center;align-items:flex-end;gap:5px;display:flex}.checkin-time-block[data-v-d497c969]{flex-direction:column;align-items:center;gap:3px;min-width:54px;display:flex}.checkin-time-digit[data-v-d497c969]{font-family:var(--font-mono);color:#dbeafe;font-size:clamp(1.45rem,5.2vw,2.4rem);font-weight:800;line-height:1}.checkin-time-unit[data-v-d497c969]{text-transform:uppercase;letter-spacing:1.3px;color:#fff6;font-size:.56rem}.checkin-sep[data-v-d497c969]{font-family:var(--font-mono);color:#ffffff3d;padding-bottom:12px;font-size:clamp(1.25rem,4.6vw,2rem);line-height:1}.checkin-card-note[data-v-d497c969]{color:#ffffff7a;max-width:480px;font-size:.7rem;line-height:1.45}.section-active[data-v-d497c969]{flex-direction:column;gap:14px;display:flex}.itinerary-progress[data-v-d497c969]{flex-direction:column;gap:6px;display:flex}.prog-label[data-v-d497c969]{color:#ffffff73;justify-content:space-between;font-size:.75rem;display:flex}.prog-pct[data-v-d497c969]{font-family:var(--font-mono);color:var(--aurora-green);font-weight:700}.prog-bar-track[data-v-d497c969]{background:#ffffff14;border-radius:3px;height:5px;overflow:hidden}.prog-bar-fill[data-v-d497c969]{background:linear-gradient(90deg, var(--finland-blue-light), var(--aurora-green));border-radius:3px;height:100%;transition:width .8s;box-shadow:0 0 8px #00e5a066}.prog-steps[data-v-d497c969]{color:#ffffff4d;text-align:right;font-size:.68rem}.next-step-preview[data-v-d497c969]{align-items:center;gap:12px;padding:12px 16px;display:flex}.next-label[data-v-d497c969]{text-transform:uppercase;letter-spacing:1px;color:#ffffff4d;flex-shrink:0;font-size:.65rem}.next-info[data-v-d497c969]{flex:1;align-items:center;gap:10px;display:flex}.next-icon[data-v-d497c969]{font-size:1.2rem}.next-info>div[data-v-d497c969]{flex-direction:column;gap:2px;display:flex}.next-title[data-v-d497c969]{color:#fff;font-size:.88rem;font-weight:600}.next-time[data-v-d497c969]{color:#ffffff59;font-size:.72rem;font-family:var(--font-mono)}.trip-end[data-v-d497c969]{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:28px 20px;display:flex}.trip-end-emoji[data-v-d497c969]{font-size:3rem;animation:3s ease-in-out infinite float}.trip-end h2[data-v-d497c969]{color:#fff;font-size:1.4rem;font-weight:800}.trip-end p[data-v-d497c969]{color:#ffffff80;font-size:.9rem}.section-finished[data-v-d497c969]{flex-direction:column;gap:16px;padding-top:40px;display:flex}.finish-card[data-v-d497c969]{text-align:center;flex-direction:column;align-items:center;gap:16px;padding:40px 24px;display:flex}.finish-emoji[data-v-d497c969]{font-size:3.5rem;animation:3s ease-in-out infinite float}.finish-card h1[data-v-d497c969]{color:#fff;font-size:1.8rem;font-weight:800}.finish-card p[data-v-d497c969]{color:#ffffff8c;font-size:.95rem}.finish-sub[data-v-d497c969]{color:#ffffff4d!important;font-size:.8rem!important}.sim-fab-wrapper[data-v-d497c969]{bottom:calc(170px + env(safe-area-inset-bottom,0px));z-index:200;flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:fixed;right:16px}.sim-toggle-btn[data-v-d497c969]{color:#fff9;cursor:pointer;background:#1e1e32d9;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;padding:0;font-size:1.1rem;transition:all .2s;display:flex;box-shadow:0 4px 20px #0006}.sim-toggle-btn[data-v-d497c969]:hover{color:#fff;background:#282846f2}.sim-panel[data-v-d497c969]{flex-direction:column;gap:10px;min-width:260px;padding:16px;display:flex}.sim-title[data-v-d497c969]{color:#fff9;text-align:center;font-size:.8rem;font-weight:700}.sim-btns[data-v-d497c969]{justify-content:space-between;align-items:center;gap:8px;display:flex}.sim-index[data-v-d497c969]{color:#ffffff80;font-size:.78rem;font-family:var(--font-mono);text-align:center;flex:1}.sim-reset[data-v-d497c969]{justify-content:center;width:100%;font-size:.78rem}.sim-panel-enter-active[data-v-d497c969],.sim-panel-leave-active[data-v-d497c969]{transition:all .25s}.sim-panel-enter-from[data-v-d497c969],.sim-panel-leave-to[data-v-d497c969]{opacity:0;transform:translateY(10px)scale(.95)}.bottom-spacer[data-v-d497c969]{height:150px}.page-enter-active[data-v-d497c969],.page-leave-active[data-v-d497c969]{transition:all .45s}.page-enter-from[data-v-d497c969]{opacity:0;transform:translateY(20px)}.page-leave-to[data-v-d497c969]{opacity:0;transform:translateY(-10px)}.step-change-enter-active[data-v-d497c969],.step-change-leave-active[data-v-d497c969]{transition:all .4s}.step-change-enter-from[data-v-d497c969]{opacity:0;transform:translate(30px)}.step-change-leave-to[data-v-d497c969]{opacity:0;transform:translate(-30px)}@media (width<=400px){.pre-info-cards[data-v-d497c969]{grid-template-columns:1fr}.main-content[data-v-d497c969]{padding:12px}.checkin-time-block[data-v-d497c969]{min-width:58px}}
