@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;500;600&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--cream:#f7f5df;--mint:#d0f7b5;--line:#ffffff30}*{box-sizing:border-box}body{margin:0;overflow:hidden;background:#438eba;color:var(--cream);font:13px 'DM Sans',sans-serif}canvas#world{position:fixed;inset:0;width:100%;height:100%;touch-action:none}button,select,input{font:inherit}button{cursor:pointer;color:inherit;background:#122b3b42;border:1px solid var(--line);border-radius:5px;padding:11px 16px;font-size:9px;letter-spacing:1.4px;transition:background .15s}button:hover{background:#d0f7b52b;border-color:var(--mint)}button:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--mint);outline-offset:4px}#vignette{position:fixed;inset:0;pointer-events:none;background:linear-gradient(0deg,#0a213c9c,transparent 24%,transparent 85%,#15314f55),linear-gradient(90deg,#0c284b55,transparent 65%)}#cloudveil{position:fixed;inset:0;background:#eef8ff;pointer-events:none;opacity:0}#wind{position:fixed;inset:0;width:100%;height:100%;pointer-events:none}header{position:absolute;inset:0 0 auto;padding:26px 34px;display:flex;align-items:center;justify-content:space-between;gap:15px}.brand{display:flex;align-items:center;gap:13px}.brand>span{font:600 28px/.8 'Barlow Condensed';letter-spacing:2px}.brand small{display:block;font:7px 'DM Sans';letter-spacing:2px;margin-top:9px}.worldlabel{font-size:8px;letter-spacing:2px;text-align:center;text-shadow:0 1px 10px #0008}.worldlabel span{display:block;opacity:.65;font-size:7px;margin-top:8px}.topbuttons{display:flex;gap:10px}.topbuttons #menu{font-size:16px;padding:8px 13px}.eyebrow{font-size:8px;letter-spacing:2.3px;color:var(--mint)}#welcome{position:absolute;top:24%;left:7%}h1{font:500 clamp(68px,7.2vw,110px)/.93 'Barlow Condensed';letter-spacing:-1.3px;margin:22px 0}h1 em{font-style:normal;color:var(--mint)}#welcome p{font-size:14px;line-height:1.8;color:#e0eaf0;text-shadow:0 1px 12px #102f52;margin:22px 0 30px}.primary{background:var(--mint);color:#18382f;border-color:var(--mint);font-size:11px;font-weight:700;padding:18px 25px;min-width:195px}.primary:hover{background:#e6ffcf}.primary span{margin-left:60px}.quickstart{display:flex;gap:20px;font-size:8px;letter-spacing:1px;margin-top:28px}.quickstart b{font-size:10px;margin-right:5px}.intro-note{display:block;margin-top:18px;font-size:9px;color:#c7dce5}footer{position:absolute;bottom:0;left:0;width:100%;padding:13px 34px;display:flex;justify-content:space-between;font-size:7px;letter-spacing:1.4px;pointer-events:none}footer i{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--mint);margin-right:8px}footer b{font-weight:400}#fps{opacity:.65}#challenge{position:absolute;top:130px;left:34px;text-shadow:0 2px 12px #153d5a}#challenge h2{font:400 25px 'Barlow Condensed';margin:10px 0 4px}#challenge p{font-size:10px;margin:8px 0;color:#e0eaf2}#challenge button{font-size:7px;padding:7px 9px;margin-top:4px;border-color:#ffffff20}#ringDots{display:flex;gap:5px;margin-top:13px}#ringDots i{display:block;width:17px;height:3px;background:#ffffff45}#ringDots i.done{background:#ffe9a0}#aim{position:absolute;width:30px;height:30px;margin:-15px;left:50%;top:50%;border:1px solid #eaf9ff90;border-radius:50%;pointer-events:none;opacity:.7}#aim i{position:absolute;width:4px;height:4px;border-radius:50%;background:white;left:12px;top:12px}#centerDot{position:absolute;left:50%;top:50%;width:3px;height:3px;border-radius:50%;background:#fff5;pointer-events:none}#journey{position:absolute;top:133px;right:34px;text-align:right;pointer-events:none;text-shadow:0 1px 10px #15405e}#journey>span{font:500 21px 'Barlow Condensed';letter-spacing:1px}#journey small{display:block;font-size:7px;letter-spacing:1.5px;margin-top:8px;opacity:.7}#instruments{position:absolute;bottom:90px;left:34px;right:34px;display:flex;justify-content:space-between;pointer-events:none}#instruments>div{display:flex;flex-direction:column;gap:5px}#instruments small{font-size:7px;letter-spacing:1.8px;color:#d1e2ec}#instruments strong{font:500 37px 'Barlow Condensed';letter-spacing:1px;text-shadow:0 2px 10px #153a58}#instruments span{font-size:8px;letter-spacing:1px;color:#dae9f2}#instruments em{font:11px 'DM Sans';font-style:normal}.altitude{text-align:right}.pacebar{height:2px;width:130px;background:#ffffff25;margin-top:8px}.pacebar i{display:block;height:100%;width:15%;background:var(--mint)}#helpbar{position:absolute;bottom:47px;left:0;width:100%;display:flex;gap:20px;justify-content:center;font-size:7px;letter-spacing:.8px;color:#dbebef}kbd{font:8px 'DM Sans';margin-right:4px;border:1px solid #ffffff35;padding:3px 5px;border-radius:3px}#toast{position:absolute;top:30%;left:50%;transform:translateX(-50%);font:500 27px 'Barlow Condensed';color:#fff5bf;text-align:center;text-shadow:0 1px 20px #6d561b;pointer-events:none}dialog{background:#102b3ef7;box-shadow:0 25px 100px #031c3b80;color:var(--cream);border:1px solid #d0f7b54a;border-radius:12px;width:430px;max-width:92vw;max-height:90vh;overflow-y:auto;padding:30px}dialog::backdrop{background:#0c223866;backdrop-filter:blur(8px)}dialog h2{font:500 42px/.96 'Barlow Condensed';margin:17px 0 22px}#close{position:absolute;right:15px;top:10px;border:0;background:none;font-size:26px;padding:5px 10px}.instructions p{display:flex;justify-content:space-between;gap:15px;font-size:10px;margin:11px 0;line-height:1.5}.instructions b{font-weight:500;color:var(--mint)}.instructions span{text-align:right;color:#c4d5de}dialog label{display:block;font-size:8px;letter-spacing:1.5px;margin-top:20px;color:#b9d2de}dialog select{display:block;width:100%;margin-top:8px;background:#234354;border:1px solid #ffffff2a;color:var(--cream);padding:10px;border-radius:3px;font-size:11px}dialog .check{display:flex;align-items:center;letter-spacing:0;font-size:10px}dialog .primary{margin-top:23px;width:100%;font-size:10px;padding:14px}dialog .secondary{width:100%;margin-top:8px;padding:11px}.note{font-size:9px;color:#9fb9c8;line-height:1.6;text-align:center;margin-bottom:0}#touch{display:none;position:absolute;bottom:190px;left:14px;right:14px;justify-content:space-between;gap:5px}#touch button{touch-action:none;padding:13px 10px;background:#10324a99;font-size:9px}#error{position:absolute;inset:35% 15%;background:#102b3e;padding:35px;z-index:100}[hidden]{display:none!important}body.flying header{padding-top:20px}body.flying .worldlabel{opacity:.6}body.flying #vignette{background:linear-gradient(0deg,#08253b9c,transparent 23%,transparent 88%,#14314c55)}body.flying #welcome{display:none}@media(pointer:coarse){body.flying #touch{display:flex}#helpbar{display:none}}@media(max-width:760px){header{padding:22px}.worldlabel{display:none}.brand>span{font-size:24px}.topbuttons button{font-size:7px;padding:9px}.brand svg{width:30px}#welcome{left:7%;top:23%}h1{font-size:80px}.eyebrow{font-size:7px;letter-spacing:1.4px}#welcome p{font-size:12px}.quickstart{gap:13px;font-size:7px}#challenge{top:110px;left:22px}#challenge h2{font-size:22px}#journey{right:22px;top:110px}#journey>span{font-size:17px}#instruments{left:22px;right:22px;bottom:70px}#helpbar{flex-wrap:wrap;gap:8px;bottom:37px;padding:0 10px;font-size:6px}#helpbar span:nth-child(6),#helpbar span:nth-child(7){display:none}footer{padding:12px 22px;font-size:6px}#instruments strong{font-size:30px}#instruments small{font-size:6px}#toast{font-size:22px;top:35%;width:70%}}@media(max-height:650px){#welcome{top:20%}h1{font-size:64px;margin:16px 0}#welcome p{margin:15px 0 20px}.quickstart{margin-top:18px}.intro-note{display:none}#challenge{top:100px}#journey{top:100px}#instruments{bottom:70px}#instruments strong{font-size:27px}}
@media(max-width:500px){#welcome{right:7%}h1{font-size:clamp(54px,17vw,72px)}#challenge{max-width:53%}#challenge h2{font-size:20px}#challenge p{font-size:9px}#journey>span{font-size:13px;max-width:130px}#journey small{font-size:6px;letter-spacing:.5px}#helpbar{font-size:6px;gap:5px}#helpbar kbd{font-size:7px;padding:2px 3px}.brand{gap:8px}.brand small{font-size:6px}header{padding:22px 19px}.topbuttons{gap:6px}}
body.flying #vignette{background:linear-gradient(180deg,#0b2b4c60,transparent 32%),linear-gradient(0deg,#08253ba6,transparent 25%)}#challenge h2,#challenge p,#journey{text-shadow:0 1px 3px #12344c,0 2px 15px #12344c66}
body.arriving #welcome{display:block;top:auto;bottom:125px;left:6%;z-index:3;padding:25px 28px;border:1px solid #d1eced25;border-radius:12px;background:linear-gradient(130deg,#0c294dc9,#153a5540);backdrop-filter:blur(7px)}body.arriving #welcome h1{font-size:58px;margin:14px 0 22px}body.arriving #welcome .quickstart{margin-top:18px}body.arriving #challenge,body.arriving #journey,body.arriving #helpbar,body.arriving #aim,body.arriving #centerDot{display:none}body.arriving #instruments{left:auto;right:34px;gap:35px}body.arriving #instruments .altitude{display:none}#crash{text-align:center;width:430px;padding:40px;background:#10283ee8;border-color:#ffdfc73d}#crash h2{font:600 78px/.9 'Barlow Condensed';letter-spacing:-1px;margin:25px 0 30px}#crash::backdrop{background:#07152688;backdrop-filter:blur(3px)}#crash .primary{width:100%}@media(max-width:500px){body.arriving #welcome{left:6%;right:6%;bottom:145px;padding:22px}body.arriving #welcome h1{font-size:48px}body.arriving #instruments{bottom:65px}#crash h2{font-size:65px}}

#places{position:absolute;top:100px;left:50%;transform:translateX(-50%);display:flex;gap:6px;pointer-events:auto}#places button{background:rgba(15,38,53,.65);border:1px solid #ffffff30;color:#e1f7f3;padding:9px 12px;font-size:10px;letter-spacing:1px;border-radius:5px}#places button:hover{background:#345b65}body.arriving #places{display:none}#area{color:#b5dedb;letter-spacing:2px}#closeCalls{color:#e7e9a4}@media(max-width:700px){#places{top:82px;white-space:nowrap}#places button{font-size:9px;padding:8px}#challenge{top:130px}}

#reentry{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at center,transparent 48%,rgba(255,148,62,.35) 85%,rgba(255,86,30,.6));opacity:0;z-index:2}body.arriving #welcome{max-width:235px;padding:23px}body.arriving #welcome h1{font-size:43px}body.arriving #welcome .intro-note{font-size:10px}
