:root{--background:#ffffff;--foreground:#171717}@media (prefers-color-scheme:dark){:root{--background:#0a0a0a;--foreground:#ededed}}html{height:100%}body,html{max-width:100vw;overflow-x:hidden}body{min-height:100%;display:flex;flex-direction:column;color:var(--foreground);background:var(--background);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box;padding:0;margin:0}a{color:inherit;text-decoration:none}@media (prefers-color-scheme:dark){html{color-scheme:dark}}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_246ccd{font-family:Geist,Geist Fallback;font-style:normal}.__variable_246ccd{--font-geist-sans:"Geist","Geist Fallback"}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/013b72fa676f92e0-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b9408752a0c24fb9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/65f03d54ccadf4a8-s.woff2) format("woff2");unicode-range:u+2000-2001,u+2004-2008,u+200a,u+23b8-23bd,u+2500-259f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e038a29029a234f2-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/2b5b02fc7e511755-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7d4881bb7e1bf84d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Mono Fallback;src:local("Arial");ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.00%;size-adjust:134.59%}.__className_c29908{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.__variable_c29908{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}:root{--bg:#071827;--panel:#0d2236;--panel2:#112b43;--text:#ffffff;--text2:#b8cad9;--primary:#00d8ff;--secondary:#ffcb45;--border:#24445c;--shadow:0 15px 50px rgba(0,0,0,.35);--radius:18px;--header-height:clamp(60px,8vh,80px);--panel-width:clamp(170px,18vw,260px);--card-width:clamp(240px,26vw,420px);--page-padding:clamp(12px,2vw,35px);--radius:clamp(14px,2vw,22px);--title-size:clamp(20px,2vw,28px);--subtitle-size:clamp(11px,.9vw,14px);--text-size:clamp(12px,1vw,15px);--button-size:clamp(13px,1vw,15px)}body{overflow:hidden;background:var(--bg);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif}#app{width:100vw;height:100vh;display:flex;flex-direction:column}button{cursor:pointer;border:none;outline:none;transition:.25s}#btnStart{padding:clamp(10px,1vw,14px) clamp(18px,2vw,28px);font-size:var(--button-size);background:var(--primary);color:#00131d;font-weight:700;border-radius:50px}#btnStart:hover{transform:translateY(-2px);box-shadow:0 0 25px rgba(0,216,255,.35)}#viewport{flex:1 1;width:100%;height:100%}#map-stage{position:absolute;inset:0}#map-stage svg{width:100%;height:100%}#overlay{inset:0;z-index:100;pointer-events:none}#marker,#overlay{position:absolute}#marker{display:none;font-size:42px;animation:pulse 1.5s infinite}@keyframes pulse{0%{transform:translate(-50%,-100%) scale(.9)}50%{transform:translate(-50%,-100%) scale(1.15)}to{transform:translate(-50%,-100%) scale(.9)}}#journey-status{position:absolute;bottom:35px;left:50%;transform:translateX(-50%);background:rgba(10,25,40,.92);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:1px solid rgba(255,255,255,.06);padding:18px 28px;border-radius:18px;text-align:center;box-shadow:var(--shadow)}#status-title{font-size:22px;font-weight:700}#status-subtitle{margin-top:8px;color:var(--text2);font-size:15px}#destination-card{position:absolute;right:var(--page-padding);top:105px;width:var(--card-width);max-height:calc(100dvh - 140px);display:flex;flex-direction:column;overflow:hidden;background:rgba(12,30,45,.96);border-radius:var(--radius)}.hidden{opacity:0;pointer-events:none;transform:translateX(30px)}.card-header{justify-content:space-between;padding:22px;background:#14324c}.card-header,.country{display:flex;align-items:center}.country{gap:12px;font-size:20px;font-weight:700}#btnClose{background:none;color:white;font-size:22px}.card-body{flex:1 1;overflow-y:auto;min-height:0;padding:5px 10px}.category{display:inline-block;background:rgba(0,216,255,.15);color:var(--primary);padding:8px 16px;border-radius:30px;font-size:13px}.card-body h2{font-size:clamp(22px,2vw,24px);margin-bottom:10px}.card-body p{color:var(--text2);line-height:1.6}.details{gap:clamp(12px,2vw,35px)}.details,.tags{display:flex;margin-top:25px}.tags{flex-wrap:wrap;gap:10px}.tags span{background:#20384d;padding:8px 15px;border-radius:50px;font-size:13px}.card-footer{display:flex;gap:15px;padding:24px;flex-shrink:0;background:#10263b}#btnVisit{background:var(--secondary);color:#222;font-weight:700;padding:14px}#btnNext,#btnVisit{flex:1 1;border-radius:14px}#btnNext{background:#1f3d57;color:white}#loading{position:absolute;inset:0;background:rgba(7,24,39,.7);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:25px;z-index:999}.spinner{width:70px;height:70px;border-radius:50%;border:6px solid rgba(255,255,255,.15);border-top:6px solid var(--primary);animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}#routes{position:absolute;inset:0;width:100%;height:100%}#flightPath{stroke:var(--primary);stroke-dasharray:12 12}#airplane{position:absolute;width:40px;height:40px;display:none;transform-origin:center center;z-index:500}.airplane-image{position:absolute;inset:0;width:100%;height:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;filter:drop-shadow(0 0 8px rgba(255,210,0,.35)) drop-shadow(0 4px 10px rgba(0,0,0,.4))}#loading.hidden{display:none!important}#marker{animation:markerDrop .6s ease-out}@keyframes markerDrop{0%{opacity:0;transform:translate(-50%,-180%) scale(.3)}60%{opacity:1;transform:translate(-50%,-120%) scale(1.3)}to{transform:translate(-50%,-100%) scale(1)}}#flightPath{fill:none;stroke:#00d8ff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 8px rgba(0,216,255,.6))}#expedition-panel{display:none}.expedition-panel{position:fixed;left:24px;bottom:24px;display:flex;align-items:center;gap:20px;padding:2px 18px;border-radius:999px;background:rgba(12,25,42,.72);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.08);color:#fff;font-size:15px;font-weight:600;z-index:50}.expedition-title{font-size:20px;font-weight:700;margin-bottom:18px}#expedition-countries,#expedition-flights,#expedition-location{display:flex;align-items:center;gap:10px;padding:10px 0;font-size:15px}.map-marker{width:12px;height:12px;margin-left:-6px;margin-top:-6px;border-radius:50%;background:#FFD54A;border:2px solid #ffffff;box-shadow:0 0 10px rgba(255,213,74,.8);z-index:20}.airplane-radar,.map-marker{position:absolute;pointer-events:none}.airplane-radar{width:14px;height:14px;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;background:#00d8ff55}.airplane-radar:after{content:"";position:absolute;inset:0;border:2px solid #00d8ff;border-radius:50%;animation:radarPulse 2s infinite}@keyframes radarPulse{0%{transform:scale(.2);opacity:.9}to{transform:scale(4);opacity:0}}#airplane img{animation:airplaneGlow 2s ease-in-out infinite}@keyframes airplaneGlow{0%,to{filter:drop-shadow(0 0 6px #00d8ff)}50%{filter:drop-shadow(0 0 16px #00d8ff) drop-shadow(0 0 28px #00d8ff)}}.airplane-flag{position:absolute;width:20px;height:14px;top:30px;right:10px;-o-object-fit:cover;object-fit:cover;border-radius:1px;box-shadow:0 0 3px rgba(0,0,0,.35);pointer-events:none;z-index:20}.floating-action{position:fixed;right:24px;bottom:24px;z-index:1000;border:none;border-radius:999px;padding:16px 24px;background:#00d8ff;color:#00131d;font-weight:700;box-shadow:0 10px 30px rgba(0,216,255,.35);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:.25s}.floating-action:hover{transform:translateY(-2px)}.country-flag{width:22px;height:16px;border-radius:2px;-o-object-fit:cover;object-fit:cover;box-shadow:0 2px 6px rgba(0,0,0,.25);flex-shrink:0}.remote-airplane{position:absolute;display:none;transform-origin:center;z-index:18;pointer-events:none}.remote-airplane-body{font-size:26px;filter:drop-shadow(0 0 6px rgba(255,255,255,.35))}.remote-airplane-flag{position:absolute;width:10px;height:7px;top:-5px;right:-2px;-o-object-fit:cover;object-fit:cover;border-radius:2px}.explorer{position:absolute;width:40px;height:40px;transform-origin:center center;pointer-events:none;z-index:450}.explorer-aircraft{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;font-size:24px}.explorer-flag{position:absolute;width:20px;height:14px;top:28px;right:8px;-o-object-fit:cover;object-fit:cover;border-radius:2px;box-shadow:0 0 3px rgba(0,0,0,.35)}#viewport{overflow:hidden;position:relative}#camera-layer{position:absolute;inset:0;transform-origin:center center;will-change:transform}#top-controls{position:fixed;top:20px;right:20px;display:flex;align-items:center;gap:8px;z-index:9999}#about-button,#audio-button,#passport-button{width:44px;height:44px;display:flex;justify-content:center;align-items:center;background:rgba(20,35,50,.82);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.08);border-radius:22px;color:#fff;font-size:19px;transition:.25s}#about-button:hover,#audio-button:hover,#language-button:hover,#passport-button:hover{background:rgba(28,46,64,.95);border-color:rgba(255,255,255,.18);transform:translateY(-1px)}#passport-button{position:relative}#passport-total{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 4px;display:flex;justify-content:center;align-items:center;border-radius:50px;background:var(--secondary);color:#222;font-size:10px;font-weight:700}#language-button{height:44px;display:flex;align-items:center;gap:8px;padding:0 16px;background:rgba(20,35,50,.82);border:1px solid rgba(255,255,255,.08);border-radius:22px;color:white;font-size:14px;font-weight:600;transition:.25s}#language-button,#language-menu{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}#language-menu{position:absolute;top:52px;right:0;min-width:170px;background:rgba(18,30,45,.96);border:1px solid rgba(255,255,255,.08);border-radius:16px;overflow:hidden;box-shadow:0 15px 35px rgba(0,0,0,.35)}#language-menu.hidden{display:none}#language-menu button{display:flex;align-items:center;gap:10px;width:100%;padding:12px 14px;background:none;border:0;color:white;font-size:14px;text-align:left}#language-menu button:hover{background:rgba(255,255,255,.06)}#intro-overlay{position:fixed;inset:0;display:flex;justify-content:center;align-items:center;padding:24px;background:rgba(5,15,25,.55);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:9999}#intro-card{width:min(560px,100%);background:rgba(20,35,50,.88);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border:1px solid rgba(255,255,255,.08);border-radius:24px;box-shadow:0 20px 60px rgba(0,0,0,.45),inset 0 1px rgba(255,255,255,.04);padding:36px;color:#fff;text-align:center}.intro-icon{width:82px;height:82px;margin:0 auto 22px;display:flex;justify-content:center;align-items:center;border-radius:50%;font-size:40px;background:rgba(0,216,255,.12);border:1px solid rgba(0,216,255,.25);box-shadow:0 0 25px rgba(0,216,255,.18)}#intro-title{font-size:30px;font-weight:700;margin-bottom:18px}#intro-description{max-width:430px;margin:0 auto 30px;line-height:1.7;color:var(--text2);font-size:15px}.intro-features{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;margin-bottom:30px}.intro-features div{display:flex;align-items:center;gap:10px;padding:14px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.05);text-align:left;font-size:14px}#intro-start{width:100%;height:54px;border-radius:16px;background:var(--primary);color:#00131d;font-weight:700;font-size:16px;box-shadow:0 10px 30px rgba(0,216,255,.25)}#intro-start:hover{transform:translateY(-2px);box-shadow:0 15px 35px rgba(0,216,255,.35)}@media (max-width:700px){#intro-card{padding:26px 22px;border-radius:20px}.intro-icon{width:68px;height:68px;font-size:34px}#intro-title{font-size:24px}#intro-description{font-size:14px}.intro-features{grid-template-columns:1fr}.intro-features div{font-size:13px;padding:12px}#intro-start{height:50px}}#passport-list{display:flex;flex-direction:column;gap:10px;margin-top:20px;max-height:420px;overflow-y:auto}.passport-country{display:flex;align-items:center;gap:12px;padding:10px;border-radius:10px;background:rgba(255,255,255,.03)}.passport-country img{width:20px;height:14px;-o-object-fit:cover;object-fit:cover}#about-close,#passport-close{background:none;color:white;font-size:22px}#passport-modal{position:fixed;inset:0;display:flex;justify-content:center;align-items:center;background:rgba(5,15,25,.55);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:9999}#passport-modal.hidden{display:none}#passport-card{width:min(520px,95vw);max-height:80vh;display:flex;flex-direction:column;overflow:hidden;background:rgba(20,35,50,.92);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border:1px solid rgba(255,255,255,.08);border-radius:22px;box-shadow:0 20px 60px rgba(0,0,0,.45)}#passport-progress{padding:18px 22px;font-size:15px;font-weight:600;color:var(--text2);border-bottom:1px solid rgba(255,255,255,.05)}.cookie-banner{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);width:min(620px,calc(100vw - 32px));z-index:99999;animation:cookieFade .35s ease}.cookie-panel{background:rgba(20,35,50,.92);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border:1px solid rgba(255,255,255,.08);border-radius:22px;box-shadow:0 20px 60px rgba(0,0,0,.45);padding:22px}.cookie-title{font-size:18px;font-weight:700;margin-bottom:12px}.cookie-text{color:var(--text2);line-height:1.6;font-size:14px}.cookie-button{margin-top:18px;width:100%;height:50px;border-radius:14px;background:var(--primary);color:#00131d;font-size:15px;font-weight:700}.cookie-button:hover{transform:translateY(-2px);box-shadow:0 0 20px rgba(0,216,255,.35)}@keyframes cookieFade{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}@media (max-width:700px){.cookie-banner{bottom:16px}.cookie-panel{padding:18px;border-radius:18px}.cookie-title{font-size:16px}.cookie-text{font-size:13px}.cookie-button{height:46px}}.cookie-text a{color:var(--primary);text-decoration:none;font-weight:600}.cookie-text a:hover{text-decoration:underline}#about-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.75);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:5000}#about-card{width:min(600px,92vw);background:#1b2430;border-radius:18px;overflow:hidden;color:#fff;animation:popup .25s ease}#about-card .card-body{padding:28px}.about-highlight{margin:22px 0;padding:18px;border-radius:12px;background:rgba(255,255,255,.06);border-left:4px solid #4fa3ff}.about-footer{text-align:center;opacity:.8;margin-top:20px}.footer-links{left:0;right:0;bottom:14px;justify-content:center;gap:12px;font-size:.82rem;opacity:.7;z-index:40}.footer-links a{color:#8db8d8;text-decoration:none}.footer-links a:hover{color:#fff}.footer-links span{color:#4c6477}.footer-links{position:fixed;left:20px;bottom:20px;display:flex;gap:10px;justify-content:flex-start}