html,body{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#0c1730;height:100%;margin:0;overflow:hidden}#view{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}#overlay{pointer-events:none;color:#fff;font-family:ui-rounded,SF Pro Rounded,Nunito,system-ui,-apple-system,Segoe UI,sans-serif;font-weight:800;position:fixed;inset:0;overflow:hidden}#overlay img,#overlay svg{display:block}.hud{padding:max(14px, env(safe-area-inset-top)) 12px 0;flex-direction:column;gap:8px;display:flex;position:absolute;top:0;left:0;right:0}.hud-row{align-items:center;gap:6px;display:flex}.meter,.chip,.sky{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(#223454b8,#0e182cc7);border:1.5px solid #ffffff38;box-shadow:0 4px 14px #08102259,inset 0 1px #ffffff2e}.meter.warmth{border-radius:17px;flex:1;align-items:center;height:34px;padding:0 9px 0 40px;display:flex;position:relative}.warmth .badge{background:radial-gradient(circle at 35% 30%,#ffc56b,#ff7a1f 62%,#d9480f);border:2.5px solid #fff;border-radius:50%;place-items:center;width:44px;height:44px;transition:background .4s;display:grid;position:absolute;top:-5px;left:-3px;box-shadow:0 3px 10px #ff7a1f8c}.warmth .badge svg{width:26px;height:26px}.warmth .track{background:#0000006b;border-radius:8px;flex:1;height:16px;position:relative;overflow:hidden;box-shadow:inset 0 2px 4px #0000008c}.warmth .fill{--ratio:1;width:calc(var(--ratio) * 100%);background:linear-gradient(90deg,#ffb74d,#ff6d3a);border-radius:8px;transition:background .4s;position:absolute;top:0;bottom:0;left:0}.warmth .fill.mid{background:linear-gradient(90deg,#ffe082,#ffb300)}.warmth .fill.low{background:linear-gradient(90deg,#81d4fa,#29b6f6)}.warmth .gloss{background:linear-gradient(#ffffff8c,#fff0);border-radius:4px;height:5px;position:absolute;top:2px;left:3px;right:3px}.warmth.cold .badge{background:radial-gradient(circle at 35% 30%,#b3e5fc,#4fc3f7 62%,#0288d1);animation:.35s infinite shiver;box-shadow:0 3px 12px #4fc3f7cc}@keyframes shiver{0%,to{transform:translate(0)rotate(0)}25%{transform:translate(-1.5px)rotate(-4deg)}75%{transform:translate(1.5px)rotate(4deg)}}.sky{background:linear-gradient(#6fb8f2,#bfe3ff);border-radius:16px;width:78px;height:44px;transition:background 2s;position:relative;overflow:hidden}.sky.night{background:linear-gradient(#0b1533,#263a6e)}.sky .arc{border:2px dotted #ffffff8c;border-radius:50%;height:124%;position:absolute;top:22%;left:12%;right:12%}.sky .horizon{background:linear-gradient(#f4f8fc,#d5e1ee);border-top:1.5px solid #ffffffe6;height:18%;position:absolute;bottom:0;left:0;right:0}.sky.night .horizon{background:linear-gradient(#7f93b8,#55688e);border-top-color:#becdebcc}.sky .orb{background:radial-gradient(circle at 35% 35%,#fff7c2,#ffd54f 60%,#ffb300);border-radius:50%;width:18px;height:18px;margin:-9px 0 0 -9px;position:absolute;box-shadow:0 0 10px 3px #ffd54fbf}.sky.night .orb{background:#eef4ff;box-shadow:inset -6px -2px #a9bbdc,0 0 10px 2px #c8dcff99}.meter.hearts{box-sizing:border-box;text-shadow:0 1px 2px #00000080;border-radius:18px;flex:none;align-items:center;gap:3px;height:36px;padding:0 9px 0 7px;font-size:15px;display:flex}.hearts svg{filter:drop-shadow(0 1px 2px #0006);width:19px;height:19px}.hearts.wounded b{color:#ffb3b3}.hearts.low{border-color:#ff6b6b;animation:.6s infinite alternate low-pulse}@keyframes low-pulse{0%{box-shadow:0 0 #ff4d5e33}to{box-shadow:0 0 0 5px #ff4d5e80}}.pack{--fill:0;background:conic-gradient(#ffb02e calc(var(--fill) * 360deg), #080e1cbf 0);box-sizing:border-box;border:1.5px solid #ffffff4d;border-radius:50%;flex:none;place-items:center;width:40px;height:40px;display:grid;box-shadow:0 4px 14px #08102259}.pack-icon{background:linear-gradient(#2a3d60,#111c33);border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.pack-icon svg{width:22px;height:22px}.pack.full{border-color:#ffd27a;animation:.7s infinite alternate full-glow}@keyframes full-glow{0%{box-shadow:0 0 #ffa7264d}to{box-shadow:0 0 0 6px #ffa72699}}.spacer{flex:1}.chip{text-shadow:0 1px 2px #00000080;box-sizing:border-box;border-radius:18px;flex:none;align-items:center;gap:2px;height:36px;padding:0 8px 0 4px;font-size:14px;display:flex}.chip img{width:21px;height:auto}.chip.hidden{display:none}.chip.fuel img{width:15px}.chip img{filter:brightness(1.2)drop-shadow(0 2px 2px #00000059)}.chip.bump{animation:.3s bump}@keyframes bump{40%{transform:scale(1.22)}}.frost{opacity:0;background:radial-gradient(#d2ebff00 48%,#d7eeff8c 78%,#f5fcfff2 100%);position:absolute;inset:0;box-shadow:inset 0 0 60px 20px #ebf7ffcc}.hurt{opacity:0;background:radial-gradient(#c8001400 40%,#c80014bf 100%);position:absolute;inset:0}.hurt.flash{animation:.5s ease-out hurt-flash}@keyframes hurt-flash{0%{opacity:1}to{opacity:0}}.pop-anchor,.hp-bar,.pad-label{will-change:transform;position:absolute;top:0;left:0}.pop{white-space:nowrap;-webkit-text-stroke:5px #0b1a2e;paint-order:stroke fill;align-items:center;gap:3px;font-size:22px;animation:.95s ease-out forwards pop;display:flex;position:absolute;transform:translate(-50%,-100%)}.pop img{object-fit:contain;filter:drop-shadow(0 0 2px #fff)drop-shadow(0 0 2px #fff);width:38px;height:auto;max-height:34px}.pop svg{width:26px;height:26px}.pop.good{color:#b9f6ca}.pop.warn{color:#ffab91}.pop.cold{color:#b3e5fc}.pop.danger{color:#ff5a5a;font-size:30px}.pop.danger svg{width:24px;height:24px}@keyframes pop{0%{opacity:0;margin-top:8px;scale:.6}15%{opacity:1;scale:1.15}30%{scale:1}75%{opacity:1}to{opacity:0;margin-top:-46px}}.hp-bar{display:none}.hp-bar.shown{display:block}.hp-bar div{background:#0b1a2e99;border:1.5px solid #fffc;border-radius:4px;width:46px;height:8px;position:absolute;overflow:hidden;transform:translate(-50%,-50%)}.hp-bar i{background:linear-gradient(#ff8a80,#e53935);height:100%;display:block}.pad-label>div.pin{white-space:nowrap;background:#141e32cc;border:2px solid #fff6;border-radius:24px;align-items:center;gap:7px;padding:5px;font-size:16px;display:flex;position:absolute;transform:translate(-50%,-100%)translateY(-10px);box-shadow:0 4px 10px #08102259}.pin:after{content:"";border-top:9px solid #fff6;border-left:7px solid #0000;border-right:7px solid #0000;margin-left:-7px;position:absolute;bottom:-9px;left:50%}.pin .ico{background:#ffffff1f;border-radius:50%;place-items:center;width:30px;height:30px;display:grid;position:relative}.pin .ico svg{width:23px;height:23px}.pin .dots{background:#0b1424e6;border-radius:5px;gap:2px;padding:2px 3px;display:flex;position:absolute;bottom:-5px;left:50%;transform:translate(-50%)}.pin .dots i{background:#ffffff4d;border-radius:50%;width:4px;height:4px}.pin .dots i.on{background:#ffd54f}.pad-label>div.pin.far{opacity:.85}.pin.far .need{display:none}.pin .need{color:#fff;align-items:center;gap:2px;padding-right:4px;display:flex}.pin .need img{object-fit:contain;width:25px;height:auto;max-height:23px}.pin .need svg{width:22px;height:22px}.pin .need.ok img,.pin .need.ok>svg{opacity:.5}.pin .tick{background:#43c463;border-radius:50%;place-items:center;width:17px;height:17px;margin-top:10px;margin-left:-8px;display:grid}.pin .tick svg{width:11px;height:11px}.pad-label>div.pin.ready{opacity:1;background:#2fae52;border-color:#d6ffe0;animation:.7s ease-in-out infinite alternate pin-ready;box-shadow:0 0 0 6px #43c46359,0 4px 10px #08102259}.pin.ready:after{border-top-color:#d6ffe0}.pin.ready .ico{background:#ffffff47}@keyframes pin-ready{0%{transform:translate(-50%,-100%)translateY(-10px)scale(1.12)}to{transform:translate(-50%,-100%)translateY(-18px)scale(1.22)}}.home-pointer{will-change:transform;display:none;position:absolute;top:0;left:0}.home-pointer.shown{display:block}.home-pointer>div{background:#0e182cb8;border:2px solid #ffffff8c;border-radius:50%;place-items:center;width:44px;height:44px;margin:-22px 0 0 -22px;display:grid;position:absolute;box-shadow:0 3px 10px #08102266}.home-pointer span svg{width:26px;height:26px}.home-pointer i{transform:rotate(var(--angle));position:absolute;inset:-9px}.home-pointer i:after{content:"";filter:drop-shadow(0 1px 2px #08102299);border-top:7px solid #0000;border-bottom:7px solid #0000;border-left:15px solid #fff;margin-top:-7px;position:absolute;top:50%;right:-10px}#loading{background:linear-gradient(#284f86,#9fc3e6);place-items:center;transition:opacity .4s;display:grid;position:fixed;inset:0}#loading.done{opacity:0;pointer-events:none}#loading div{border:6px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:64px;height:64px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.mute{right:12px;bottom:calc(14px + env(safe-area-inset-bottom));pointer-events:auto;background:#0e182c99;border:1.5px solid #ffffff4d;border-radius:50%;place-items:center;width:40px;height:40px;display:grid;position:absolute}.mute svg{width:22px;height:22px}.joystick{left:50%;top:calc(100% - 120px - env(safe-area-inset-bottom));opacity:.45;background:#ffffff29;border:2px solid #ffffff80;border-radius:50%;place-items:center;width:112px;height:112px;margin:-56px 0 0 -56px;transition:opacity .15s;display:grid;position:absolute}.joystick.active{opacity:1}.joystick .knob{background:radial-gradient(circle at 35% 30%,#fff,#dfe8f2);border-radius:50%;width:46px;height:46px;box-shadow:0 3px 8px #08102266}.chip.crystal img{width:19px}.chip.key,.chip.star{padding:0 7px}.chip.key svg,.chip.star svg{width:21px;height:21px}.chip.key{border-color:#ffd54f}.chip.star{border-color:#ffd54f;box-shadow:0 0 12px 2px #ffd54f99}.sky .cloud{opacity:0;background:#96a5b9d9;place-items:center;display:grid;position:absolute;inset:0}.sky .cloud svg{width:30px;height:30px}.pad-label .cost svg{width:24px;height:24px}.key-marker{will-change:transform;display:none;position:absolute;top:0;left:0}.key-marker.shown{display:block}.key-marker svg{filter:drop-shadow(0 0 6px #ffd54fe6)drop-shadow(0 2px 2px #00000080);width:30px;height:30px;margin:-15px 0 0 -15px;animation:.9s ease-in-out infinite alternate key-bob;position:absolute}@keyframes key-bob{0%{transform:translateY(-4px)}to{transform:translateY(4px)}}.hud-row{flex-wrap:wrap;row-gap:6px}.chips{gap:5px;margin-left:auto;display:flex}.chips .chip{padding:0 7px 0 3px}.home-pointer.goal>div{border-color:#ffd54f;animation:1.1s ease-in-out infinite alternate goal-pulse;box-shadow:0 0 12px 2px #ffd54f8c}.home-pointer.goal i:after{border-left-color:#ffd54f}.home-pointer.goal span{place-items:center;display:grid}.home-pointer.goal span svg.moon{filter:drop-shadow(0 1px 2px #0009);width:20px;height:20px;position:absolute;top:-7px;right:-7px}@keyframes goal-pulse{0%{transform:scale(1)}to{transform:scale(1.12)}}.pop svg+svg{width:18px;height:18px;margin-left:-5px}.home-pointer.deliver>div{border-color:#ffd54f;box-shadow:0 0 12px 2px #ffd54f8c}.home-pointer.deliver i:after{border-left-color:#ffd54f}.home-pointer.urgent>div{background:#e0403a;border-color:#fff;animation:.5s ease-in-out infinite alternate urgent-pulse;box-shadow:0 0 0 7px #e0403a59}.home-pointer.urgent i:after{border-left-color:#ff6a60}@keyframes urgent-pulse{0%{transform:scale(1.1)}to{transform:scale(1.3)}}.sky.warn{box-shadow:0 0 0 4px #e0403ad9,0 4px 14px #08102259}.home-pointer.goal span img{object-fit:contain;width:30px;height:auto;max-height:28px}.home-pointer.goal span.pair{align-items:center;display:flex}.home-pointer.goal span.pair svg,.home-pointer.goal span.pair svg.moon{width:19px;height:19px;position:static}.pop.warn{background:#0e182cd1;border:2px solid #ffab91;border-radius:18px;padding:4px 9px}.pop.warn svg{width:30px;height:30px}.pop.warn svg+svg{width:20px;height:20px;margin-left:-3px}.intro{text-align:center;padding-top:max(11vh, calc(env(safe-area-inset-top) + 28px));background:linear-gradient(#0c17308c,#0c173000 46%);flex-direction:column;align-items:center;display:flex;position:absolute;inset:0}.intro h1{letter-spacing:.02em;background:linear-gradient(#fff 20%,#bfe3ff 55%,#6fb8f2);color:#0000;filter:drop-shadow(0 4px #0c244e8c)drop-shadow(0 0 22px #96d2ff8c);-webkit-background-clip:text;background-clip:text;margin:0;font-size:min(27vw,26vh,150px);font-weight:900;line-height:1}.intro p{letter-spacing:.08em;color:#ffe2a6;text-shadow:0 2px #0c244e99,0 0 14px #ffaa4680;margin:.5em 0 0;font-size:min(7.4vw,7vh,40px);font-weight:800}.intro .play{left:50%;bottom:max(7vh, calc(env(safe-area-inset-bottom) + 26px));background:#2fae52;border:3px solid #d6ffe0;border-radius:50%;place-items:center;width:76px;height:76px;margin-left:-38px;animation:.8s ease-in-out infinite alternate play-pulse;display:grid;position:absolute;box-shadow:0 0 0 8px #43c4634d,0 6px 16px #08102273}.intro .play svg{width:40px;height:40px;margin-left:4px}@keyframes play-pulse{0%{transform:scale(1)}to{transform:scale(1.12)}}@media (orientation:landscape){.intro{padding-top:5vh}.intro h1{font-size:min(22vh,150px)}.intro .play{left:auto;right:max(7vw, calc(env(safe-area-inset-right) + 20px));margin-left:0}}.quest{text-shadow:0 1px 2px #00000080;background:linear-gradient(#223454e6,#0e182ceb);border:2px solid #ffd54f;border-radius:20px;align-items:center;gap:10px;padding:7px 12px 7px 8px;font-size:16px;display:flex;box-shadow:0 5px 16px #08102266}.quest.hidden{display:none}.quest .goal{background:#ffd54f2e;border:2px solid #ffd54fb3;border-radius:15px;flex:none;place-items:center;width:50px;height:50px;display:grid}.quest .goal svg{width:36px;height:36px}.quest .parts{flex-direction:column;flex:1;gap:5px;display:flex}.quest .part{align-items:center;gap:6px;display:flex}.quest .part img{object-fit:contain;width:25px;height:auto;max-height:21px}.quest .part svg{width:23px;height:23px}.quest .bar{background:#ffffff29;border-radius:6px;flex:1;height:11px;overflow:hidden}.quest .bar i{background:linear-gradient(90deg,#ffb02e,#ffd54f);border-radius:6px;height:100%;transition:width .25s;display:block}.quest .bar i.full{background:#43c463}.quest .part b{text-align:right;min-width:44px}.quest.ready{background:linear-gradient(#35b85c,#23893f);border-color:#d6ffe0}.quest.ready .goal{background:#ffffff38;border-color:#fffc}.quest .go{flex:1;place-items:center;animation:.6s ease-in-out infinite alternate go-nudge;display:grid}.quest .go svg{width:40px;height:40px}@keyframes go-nudge{0%{transform:translate(-7px)}to{transform:translate(7px)}}.trail{justify-content:space-between;align-items:center;padding:0 4px;display:flex;position:relative}.trail:before{content:"";background:#0e182c80;border-radius:2px;height:4px;margin-top:-2px;position:absolute;top:50%;left:18px;right:18px}.trail .stop{opacity:.8;background:#141e32d9;border:2px solid #ffffff59;border-radius:50%;place-items:center;width:28px;height:28px;display:grid;position:relative}.trail .stop svg{width:18px;height:18px}.trail .stop.done{opacity:1;background:#2fae52;border-color:#d6ffe0}.trail .stop.now{opacity:1;border-color:#ffd54f;animation:.8s ease-in-out infinite alternate play-pulse;box-shadow:0 0 0 4px #ffd54f59}.reward{background:radial-gradient(circle,#ffd54f4d,#0c1730bf 70%);place-items:center;display:grid;position:absolute;inset:0}.reward.hidden{display:none}.reward .card{text-align:center;background:linear-gradient(#2c456f,#14213b);border:3px solid #ffd54f;border-radius:28px;width:250px;padding:22px 16px 16px;animation:.35s ease-out reward-in;box-shadow:0 0 0 9px #ffd54f40,0 12px 30px #00000080}.reward .big{background:#2fae52;border:4px solid #d6ffe0;border-radius:50%;place-items:center;width:104px;height:104px;margin:0 auto 12px;display:grid}.reward .big svg{width:68px;height:68px}.reward .stars{justify-content:center;gap:4px;display:flex}.reward .stars svg{width:36px;height:36px}.reward .new{border-top:2px solid #ffffff26;justify-content:center;align-items:center;gap:10px;margin-top:14px;padding-top:14px;display:flex}.reward .new img{object-fit:contain;width:44px;height:auto;max-height:40px}.reward .new svg{width:42px;height:42px}@keyframes reward-in{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}#overlay.cinematic .hud,#overlay.cinematic .joystick,#overlay.cinematic .pad-label,#overlay.cinematic .home-pointer,#overlay.cinematic .mute,#overlay.cinematic .frost{display:none!important}.bubble{will-change:transform;position:absolute;top:0;left:0}.bubble.hidden{display:none}.bubble>div{background:#20304f;border:3px solid #fff;border-radius:26px;align-items:center;gap:6px;padding:10px 14px;animation:.3s ease-out reward-in;display:flex;position:absolute;transform:translate(-50%,-100%);box-shadow:0 6px 16px #08102273}.bubble>div:after{content:"";border-top:14px solid #fff;border-left:11px solid #0000;border-right:11px solid #0000;margin-left:-11px;position:absolute;bottom:-15px;left:50%}.bubble svg{width:46px;height:46px}.pad-label>div.pin.far:not(.ready):not(.aim){opacity:.6;transform:translate(-50%,-100%)translateY(-10px)scale(.82)}.pad-label>div.pin.aim{border-color:#ffd54f}.pad-label>div.pin.aim:after{border-top-color:#ffd54f}
