:root{font-family:Inter,ui-rounded,Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;color:#f8f6ff;background:#070b24;font-synthesis:none;text-rendering:optimizeLegibility;--text-scale: 1;--glass: rgba(11, 15, 48, .72);--glass-strong: rgba(8, 12, 39, .9);--cyan: #72eeff;--violet: #a17dff;--gold: #ffe29a;--rose: #ff9bc8;--danger: #ffbc7b;--edge: rgba(167, 221, 255, .28)}*{box-sizing:border-box}.game-shell.reduced-motion *,.game-shell.reduced-motion *:before,.game-shell.reduced-motion *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.game-shell.reduced-motion .v2-hero{transform:none!important}html,body,#app{margin:0;width:100%;height:100%;min-height:100%;overflow:hidden;overscroll-behavior:none;background:#070b24}body{touch-action:none;-webkit-tap-highlight-color:transparent;user-select:none;font-size:calc(16px * var(--text-scale))}button,input{font:inherit}button{border:1px solid var(--edge);color:#fbfaff;background:linear-gradient(180deg,#5854ae7a,#1c1f52b8);border-radius:999px;min-height:48px;padding:.8rem 1.25rem;font-weight:700;letter-spacing:.01em;cursor:pointer;box-shadow:inset 0 1px #ffffff24,0 10px 28px #0000003b;transition:transform .16s ease,border-color .16s ease,filter .16s ease}button:hover,button:focus-visible{border-color:#85efffb8;filter:brightness(1.08)}button:focus-visible{outline:3px solid rgba(115,238,255,.52);outline-offset:3px}button:active{transform:translateY(1px) scale(.99)}button.primary{color:#09102e;background:linear-gradient(135deg,#8df0ff,#c5b0ff 50%,#ffe39c);border-color:#ffffffb3}button.soft{background:#0d1238ad}button:disabled{opacity:.42;cursor:default}.game-shell{position:fixed;inset:0;overflow:hidden;background:#070b24;isolation:isolate}#gameCanvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;background:#070b24}.overlay{position:absolute;inset:0;z-index:5;display:grid;place-items:center;padding:max(18px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));background:linear-gradient(180deg,#04071a33,#04071a7a);pointer-events:none}.overlay.hidden{display:none}.panel{width:min(720px,94vw);max-height:min(90vh,860px);overflow:auto;pointer-events:auto;padding:clamp(1.1rem,3vw,2rem);border:1px solid rgba(152,222,255,.28);border-radius:clamp(22px,4vw,34px);background:radial-gradient(circle at 20% 0%,rgba(124,97,255,.2),transparent 42%),linear-gradient(180deg,#0c1136db,#060a22ed);box-shadow:inset 0 1px #ffffff1f,0 30px 100px #00000075;backdrop-filter:blur(18px) saturate(1.16)}.hero{width:min(780px,94vw);text-align:center;padding:clamp(1.5rem,4.2vw,2.65rem) clamp(1.2rem,5vw,3.25rem);overflow:visible;transform-style:preserve-3d}.v2-hero{position:relative;transform:perspective(1000px) rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg));transition:transform .14s ease-out;border:1px solid rgba(175,230,255,.38);background:radial-gradient(ellipse at var(--glow-x, 50%) var(--glow-y, 0%),rgba(130,105,255,.28),transparent 65%),linear-gradient(180deg,#0d1238e6,#060920f2);box-shadow:inset 0 1px 2px #ffffff40,inset 0 -1px 2px #78b4ff1f,0 35px 120px #000000ad,0 0 70px #6482ff2e;backdrop-filter:blur(24px) saturate(1.28)}.hero-aurora-glow{position:absolute;inset:-14px;border-radius:inherit;background:linear-gradient(135deg,#72eeff33,#a17dff2e,#ffe29a29);filter:blur(28px);z-index:-1;pointer-events:none;animation:aura-pulse 4.8s ease-in-out infinite alternate}@keyframes aura-pulse{0%{opacity:.55;transform:scale(.98)}to{opacity:.95;transform:scale(1.025)}}.hero-corner{position:absolute;font-size:.95rem;color:#ffe29a;text-shadow:0 0 10px #ffe29a,0 0 20px #72eeff;pointer-events:none;opacity:.78;user-select:none;transition:transform .3s ease,opacity .3s ease}.hero-corner-tl{top:12px;left:16px}.hero-corner-tr{top:12px;right:16px}.hero-corner-bl{bottom:12px;left:16px}.hero-corner-br{bottom:12px;right:16px}.eyebrow{color:var(--cyan);font-weight:800;letter-spacing:.18em;text-transform:uppercase;font-size:.72rem}.title-eyebrow{margin-bottom:.55rem;text-shadow:0 0 18px rgba(114,238,255,.3);animation:eyebrow-arrive .9s cubic-bezier(.2,.8,.2,1) both}h1{margin:.25rem 0 .4rem;font-size:clamp(2.6rem,11vw,6.4rem);line-height:.92;letter-spacing:-.055em}.moonwake-title{position:relative;display:grid;place-items:center;min-height:1em;margin:.15rem auto .65rem;perspective:800px;transform-style:preserve-3d;filter:drop-shadow(0 18px 34px rgba(55,165,255,.18));animation:title-arrive 1.2s cubic-bezier(.16,.82,.2,1) both}.moonwake-title>span{grid-area:1 / 1;display:block;background:linear-gradient(112deg,#f9ffff,#7eeeff 27%,#89b9ff 50%,#b69cff 72%,#ffe1ad);-webkit-background-clip:text;background-clip:text;color:transparent}.title-depth{transform:translate3d(0,.075em,-26px) scale(1.015);opacity:.82;filter:blur(.3px);text-shadow:0 .055em 0 rgba(25,35,101,.96),0 .11em .18em rgba(0,0,0,.5),0 0 .26em rgba(75,212,255,.42)}.title-face{position:relative;z-index:2;transform:translateZ(20px);text-shadow:0 0 .08em rgba(255,255,255,.22),0 .03em .12em rgba(40,120,255,.25);animation:title-float 5.2s ease-in-out 1.2s infinite}.title-sheen{position:relative;z-index:3;transform:translateZ(27px);background:linear-gradient(105deg,transparent 0%,transparent 39%,rgba(255,255,255,.96) 48%,rgba(157,239,255,.92) 52%,transparent 61%,transparent 100%);background-size:240% 100%;-webkit-background-clip:text;background-clip:text;opacity:.8;animation:title-sheen 5.8s ease-in-out 1.6s infinite}.moonwake-title:before,.moonwake-title:after{content:"✦";position:absolute;z-index:4;color:#fff4bd;font-size:clamp(.8rem,2vw,1.35rem);text-shadow:0 0 8px #fff,0 0 20px #69eaff,0 0 34px #9d75ff;pointer-events:none}.moonwake-title:before{left:5%;top:5%;animation:title-spark 3.2s ease-in-out 1.4s infinite}.moonwake-title:after{right:2%;bottom:4%;animation:title-spark 3.2s ease-in-out 2.1s infinite}.title-lead{width:min(640px,100%);margin:0 auto;color:#f7f8ffe8;text-wrap:balance}.title-actions{width:min(520px,100%);grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1.5rem}.title-actions .primary,.title-actions #newFlightButton,.title-actions #memorialButton{grid-column:1 / -1}.title-actions button{min-height:54px}.v2-badge{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.32rem .95rem;border-radius:999px;background:#72eeff14;border:1px solid rgba(114,238,255,.28);box-shadow:0 0 16px #72eeff1f}.badge-icon{color:var(--gold);font-size:.75rem}.title-pill-tag{display:inline-block;margin:.2rem auto .65rem;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#ffd88a;text-shadow:0 0 12px rgba(255,216,138,.5)}button.primary.v2-start{position:relative;overflow:hidden;color:#060c2b;font-size:1.05rem;font-weight:800;letter-spacing:.03em;background:linear-gradient(135deg,#78f0ff,#caa6ff 52%,#ffe39a);border:1px solid rgba(255,255,255,.85);box-shadow:inset 0 1px 2px #ffffffd9,0 0 28px #73eeff61,0 10px 24px #00000059;min-height:56px;transition:transform .2s cubic-bezier(.2,.8,.2,1),box-shadow .2s ease,filter .2s ease}button.primary.v2-start:hover{transform:translateY(-2px) scale(1.02);filter:brightness(1.1);box-shadow:inset 0 1px 2px #fffffff2,0 0 42px #73eeff99,0 14px 30px #00000073}button.primary.v2-start:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.65) 50%,transparent 100%);background-size:200% 100%;opacity:.45;pointer-events:none;animation:btn-sweep 4.5s ease-in-out infinite}@keyframes btn-sweep{0%,25%{background-position:-200% 0}45%,to{background-position:200% 0}}.btn-sparkle{display:inline-block;font-size:.85rem;color:#060c2b;vertical-align:middle;animation:sparkle-bob 2.4s ease-in-out infinite alternate}@keyframes sparkle-bob{0%{transform:scale(.85) rotate(-10deg)}to{transform:scale(1.15) rotate(15deg)}}button.action-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:linear-gradient(180deg,#5250a873,#181b4bbf);border:1px solid rgba(160,220,255,.32);backdrop-filter:blur(8px)}button.action-btn:hover{border-color:#78eeffbf;background:linear-gradient(180deg,#6962d299,#23265fe0);box-shadow:0 0 20px #72eeff40;transform:translateY(-1px)}.btn-icon{font-size:.95rem;color:var(--cyan)}.title-footer-row{margin-top:1.25rem;display:flex;flex-direction:column;align-items:center;gap:.65rem}.quick-status-badges{display:flex;gap:.65rem;flex-wrap:wrap;justify-content:center}.status-pill{font-size:.72rem;font-weight:700;padding:.25rem .7rem;border-radius:999px;background:#0e163ca6;border:1px solid rgba(130,190,255,.24);color:#dcebffc7;letter-spacing:.02em}@keyframes title-arrive{0%{opacity:0;transform:translateY(24px) rotateX(18deg) scale(.92);filter:blur(10px)}55%{opacity:1;transform:translateY(-3px) rotateX(-2deg) scale(1.02);filter:blur(0)}to{transform:translateY(0) rotateX(0) scale(1);filter:blur(0)}}@keyframes title-float{0%,to{transform:translateZ(20px) rotateX(0)}50%{transform:translate3d(0,-4px,26px) rotateX(1.2deg)}}@keyframes title-sheen{0%,24%{background-position:130% 0;opacity:0}34%,48%{opacity:.88}60%,to{background-position:-120% 0;opacity:0}}@keyframes title-spark{0%,to{opacity:.2;transform:scale(.55) rotate(0)}44%{opacity:1;transform:scale(1.2) rotate(45deg)}62%{opacity:.32;transform:scale(.7) rotate(90deg)}}@keyframes eyebrow-arrive{0%{opacity:0;transform:translateY(-10px);letter-spacing:.32em}to{opacity:1;transform:translateY(0);letter-spacing:.18em}}h2{margin:.3rem 0 .8rem;font-size:clamp(1.6rem,5vw,2.5rem);color:#fff9e6}p{line-height:1.62;color:#f6f7ffe0}.lead{font-size:clamp(1rem,2.8vw,1.2rem);color:#f9f8ffe6}.button-stack{display:grid;gap:.7rem;width:min(410px,100%);margin:1.35rem auto 0}.button-row{display:flex;gap:.7rem;justify-content:center;flex-wrap:wrap;margin-top:1.2rem}.tiny{font-size:.78rem;color:#e0e6ff99}.constellation-mark{width:112px;height:112px;margin:0 auto 1rem;border-radius:50%;display:grid;place-items:center;font-size:2rem;color:#fff2b8;border:1px solid rgba(255,236,175,.34);box-shadow:inset 0 0 44px #7e67ff47,0 0 44px #5fe7ff1f}.quote{font-family:Georgia,Times New Roman,serif;font-size:clamp(1.2rem,4vw,1.65rem);color:#fff5d2;text-align:center}.hud{position:absolute;z-index:4;inset:0;pointer-events:none;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.hud.hidden{display:none}.hud-top{display:grid;grid-template-columns:1fr auto 1fr;gap:.5rem;align-items:start}.hud-card{justify-self:start;min-width:108px;padding:.55rem .78rem;border:1px solid rgba(151,221,255,.21);border-radius:16px;background:#080d2a9e;backdrop-filter:blur(12px);box-shadow:inset 0 1px #ffffff14}.hud-card.right{justify-self:end;text-align:right}.hud-label{display:block;text-transform:uppercase;font-size:.65rem;letter-spacing:.13em;color:#b8e6ffc7}.hud-value{font-weight:800;font-variant-numeric:tabular-nums}.hearts{color:#ffc2d9;letter-spacing:.08em}.meter{width:min(42vw,360px);align-self:center;padding:.45rem .6rem .52rem;border-radius:16px;background:#080d2a9e;border:1px solid rgba(151,221,255,.21);backdrop-filter:blur(12px)}.meter-head{display:flex;justify-content:space-between;font-size:.68rem;text-transform:uppercase;letter-spacing:.11em;color:#d1ecffc7}.meter-track{height:9px;margin-top:.32rem;border-radius:999px;overflow:hidden;background:#ffffff17}.meter-fill{height:100%;width:0%;border-radius:inherit;background:linear-gradient(90deg,#5ce9ff,#9e7dff 55%,#ffe39b);box-shadow:0 0 14px #63e8ff7a;transition:width .12s linear}.touch-controls{position:absolute;left:0;right:0;bottom:max(14px,env(safe-area-inset-bottom));display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;padding:0 max(14px,env(safe-area-inset-left)) 0 max(14px,env(safe-area-inset-right));pointer-events:none}.touch-controls button{pointer-events:auto}.moonwake-button{min-width:146px;min-height:58px;border-color:#ffe09b80;background:linear-gradient(135deg,#4ad9ecd1,#855edddb 56%,#f8be71e6);color:#080d2a;text-shadow:0 1px rgba(255,255,255,.25)}.pause-button{width:56px;min-width:56px;height:56px;padding:0;display:grid;place-items:center;background:#090e30b8}.flight-hint{position:absolute;left:50%;bottom:max(86px,calc(env(safe-area-inset-bottom) + 78px));transform:translate(-50%);padding:.55rem .8rem;border-radius:999px;color:#f5f8ffb8;background:#080c2a80;font-size:.76rem;letter-spacing:.02em;backdrop-filter:blur(8px);white-space:nowrap;opacity:.85}.toast{position:absolute;z-index:8;left:50%;top:max(88px,calc(env(safe-area-inset-top) + 74px));transform:translate(-50%) translateY(-12px);width:min(88vw,520px);padding:.72rem 1rem;border-radius:16px;text-align:center;color:#fff9dc;border:1px solid rgba(255,226,156,.28);background:#080d2bd1;box-shadow:0 14px 40px #0000004d;opacity:0;transition:opacity .22s ease,transform .22s ease;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%) translateY(0)}.settings-grid{display:grid;gap:.8rem;margin:1rem 0}.setting{display:grid;grid-template-columns:1fr auto;align-items:center;gap:1rem;padding:.82rem .9rem;border-radius:18px;background:#ffffff0b;border:1px solid rgba(255,255,255,.07)}.setting label{font-weight:700}.setting small{display:block;margin-top:.15rem;color:#dde2ff99;line-height:1.35}.setting input[type=checkbox]{width:24px;height:24px;accent-color:#7eeeff}.setting input[type=range]{width:min(42vw,220px);accent-color:#8ceeff}.stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:1rem 0}.stat{padding:.9rem;border-radius:18px;text-align:center;background:#ffffff0d;border:1px solid rgba(255,255,255,.08)}.stat strong{display:block;margin-top:.2rem;font-size:1.35rem;color:#fff1b9}.high-contrast .panel,.high-contrast .hud-card,.high-contrast .meter{border-color:#ffffff94;background:#020512eb}@media(max-width:700px){.hud-top{grid-template-columns:1fr 1fr}.meter{grid-column:1 / -1;grid-row:2;width:min(82vw,420px);justify-self:center}.hud-card{min-width:0}.flight-hint{display:none}}@media(max-height:520px)and (orientation:landscape){.panel{max-height:94vh;padding:1rem 1.2rem}h1{font-size:clamp(2.4rem,10vh,4rem)}.button-stack{grid-template-columns:repeat(2,minmax(0,1fr));width:min(620px,100%)}.button-stack .primary{grid-column:span 2}.moonwake-button{min-height:48px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media(max-width:620px){.hero{width:min(94vw,560px);padding:1.35rem 1rem 1.5rem}.title-actions{grid-template-columns:1fr;gap:.62rem}.title-actions .primary,.title-actions #newFlightButton,.title-actions #memorialButton{grid-column:auto}.title-lead{font-size:.98rem;line-height:1.5}}@media(prefers-reduced-motion:reduce){.title-eyebrow,.moonwake-title,.title-face,.title-sheen,.moonwake-title:before,.moonwake-title:after{animation:none!important;transform:none!important}.title-sheen{opacity:0}}
