*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none}html,body{width:100%;height:100%;overflow:hidden;background:#9fdcff;font-family:Trebuchet MS,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#fff;touch-action:none;overscroll-behavior:none}#game{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;touch-action:none}#vignette{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:3;opacity:0;background:radial-gradient(ellipse at center,transparent 45%,rgba(220,20,20,.75) 100%);transition:opacity .25s}#fx,#markers{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:4;overflow:hidden}#markers{z-index:5}button{font-family:inherit;color:#fff;border:none;cursor:pointer}.hidden{display:none!important}#hud{position:fixed;left:0;right:0;top:0;z-index:6;padding:calc(env(safe-area-inset-top) + 8px) 10px 0;pointer-events:none}#toprow{display:flex;align-items:center;gap:8px}#lvl{width:56px;height:56px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff3a0,#ffb80a 55%,#d06a00);border:3px solid #fff;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;color:#5a2a00;box-shadow:0 4px #9a4a00,0 0 18px #ffc82899;flex:none}#lvl span{font-size:10px;font-weight:900}#lvl b{font-size:24px;font-weight:900}#lvl.pop{animation:pop .5s}#bars{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}#xpbar{position:relative;height:22px;border-radius:12px;background:#203060;border:3px solid #fff;overflow:hidden;box-shadow:0 3px #00000059}#xpfill{position:absolute;left:0;top:0;bottom:0;width:0%;background:linear-gradient(90deg,#2ad4ff,#6dff7a,#ffe24a);transition:width .45s cubic-bezier(.2,1.4,.4,1)}#xpshine{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.65) 45%,transparent 60%);background-size:250% 100%;animation:shine 2.2s linear infinite;mix-blend-mode:overlay}#xpbar.pulse{animation:barpulse .35s}#xptext,#hptext{position:absolute;top:0;right:0;bottom:0;left:0;text-align:center;font-size:12px;font-weight:900;line-height:16px;text-shadow:0 1px 2px #000,0 0 3px #000}#hpwrap{position:relative;height:20px;border-radius:12px;background:#4a1020;border:3px solid #fff;overflow:hidden;box-shadow:0 3px #00000059}#hptext{line-height:14px}#hpfill{position:absolute;left:0;top:0;bottom:0;width:100%;background:linear-gradient(90deg,#ff2d55,#ff7a3c);transition:width .2s}#menubtn{pointer-events:auto;width:46px;height:46px;border-radius:14px;background:#3a6aff;border:3px solid #fff;font-size:24px;flex:none;box-shadow:0 3px #1a3aa0}#chips{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}.chip{display:flex;align-items:center;gap:4px;padding:3px 10px 3px 7px;border-radius:14px;font-size:16px;background:#141e46b8;border:2px solid rgba(255,255,255,.85);box-shadow:0 2px #0000004d}.chip b{font-size:16px;font-weight:900;min-width:14px}.chip span{font-size:10px;font-weight:900;opacity:.85}.c-coin b{color:#ffd23a}.c-wood b{color:#ffb878}.c-stone b{color:#dfe6ee}.c-wave b{color:#ff8a8a}.chip.pulse{animation:pop .35s}#minimap{position:absolute;right:10px;top:calc(env(safe-area-inset-top) + 108px);width:96px;height:96px;border-radius:50%;border:3px solid #fff;box-shadow:0 3px #00000059;background:#5fbf3a}#objective{margin:8px 112px 0 0;max-width:270px;text-align:center;font-size:13px;font-weight:900;background:#ffffffe0;color:#203060;border-radius:14px;padding:6px 10px;box-shadow:0 3px #00000040}#combo{position:absolute;right:12px;top:calc(env(safe-area-inset-top) + 212px);font-size:22px;font-weight:900;color:#ffdf3b;text-shadow:0 0 10px #ff8a00,0 2px 0 #7a3a00;opacity:0;transform:scale(.5);transition:opacity .2s}#combo.on{opacity:1;animation:pop .35s}#bottom{position:fixed;left:0;right:0;bottom:0;z-index:6;padding:0 8px calc(env(safe-area-inset-bottom) + 10px);pointer-events:none}#weapons{display:flex;gap:7px;justify-content:center}.wbtn{pointer-events:auto;position:relative;width:82px;height:78px;border-radius:20px;background:linear-gradient(#5b7cff,#3a4fd0);border:3px solid #fff;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;transition:transform .12s;box-shadow:0 4px #1f2a80}.wbtn i{font-style:normal;font-size:32px;line-height:1}.wbtn span{font-size:12px;font-weight:900;margin-top:2px;text-shadow:0 1px 0 rgba(0,0,0,.4)}.wbtn em{position:absolute;top:3px;right:6px;font-style:normal;font-size:11px;font-weight:900;color:#ffe24a}.wbtn.active{background:linear-gradient(#ffd23a,#ff9a1a);box-shadow:0 4px #a04a00,0 0 16px #ffe24acc;transform:translateY(-5px)}.wbtn.active span{color:#5a2a00;text-shadow:none}.wbtn .lock{position:absolute;top:0;right:0;bottom:0;left:0;background:#0a0f28bf;display:none;align-items:center;justify-content:center;font-weight:900;font-size:14px}.wbtn.locked .lock{display:flex}.wbtn .lock:before{content:"🔒";margin-right:4px}.wbtn .cd{position:absolute;left:0;right:0;bottom:0;height:0%;background:#0000008c;pointer-events:none}.wbtn.gren{background:linear-gradient(#5ad06a,#2a9a3a);box-shadow:0 4px #13601d}body.driving #weapons{opacity:.35;pointer-events:none}body.driving .wbtn{pointer-events:none}#ctx{position:fixed;right:12px;bottom:calc(env(safe-area-inset-bottom) + 104px);z-index:7;pointer-events:auto;min-width:132px;max-width:200px;padding:10px 14px;border-radius:22px;background:linear-gradient(#6dff7a,#22b84a);border:3px solid #fff;box-shadow:0 5px #0f6a2a,0 0 20px #50ff7899;display:flex;flex-direction:column;align-items:center;gap:2px;animation:ctxin .3s cubic-bezier(.2,1.6,.4,1)}#ctx i{font-style:normal;font-size:30px;line-height:1}#ctx span{font-size:14px;font-weight:900;color:#063a14;text-align:center;line-height:1.1}#ctx em{font-style:normal;font-size:13px;font-weight:900}#ctx.car{background:linear-gradient(#5ad8ff,#2a7aff);box-shadow:0 5px #13408a,0 0 20px #50b4ff99}#ctx.car span{color:#fff}#ctx.no{background:linear-gradient(#c8c8d8,#8a8aa0);box-shadow:0 5px #50506a}#ctx.no span{color:#2a2a3a}.cost .ok,#ctx .ok{color:#fff6a0}.cost .no,#ctx .no{color:#ff7a7a}#ctx em .ok{color:#063a14}#ctx.no em .ok{color:#2a2a3a}#ctx em .no{color:#b00020}.wlabel{position:absolute;left:0;top:0;transform:translate(-50%,-100%);background:#141e46d1;border:2px solid #fff;border-radius:12px;padding:4px 9px;font-size:12px;font-weight:800;text-align:center;white-space:nowrap;box-shadow:0 3px #0000004d}.wlabel b{font-weight:900}.wlabel small{display:block;font-size:10px;opacity:.85}.wlabel .cost{display:block;font-size:13px;font-weight:900;margin-top:1px}.wlabel.plot{border-color:#ffe066}.wlabel.haul{background:#145a8cd9}.wlabel.dim{opacity:.55}.wlabel.hot{animation:pop 1s infinite;background:#ff8a1a}@keyframes ctxin{0%{transform:scale(.4)}to{transform:scale(1)}}#banner{position:fixed;left:0;right:0;top:38%;z-index:7;text-align:center;pointer-events:none;font-size:48px;font-weight:900;letter-spacing:2px;color:#fff;text-shadow:0 0 20px #39d7ff,0 4px 0 #13305a;opacity:0}#banner.show{animation:banner 2.2s forwards}#banner small{display:block;font-size:18px;color:#ffe24a;text-shadow:0 2px 0 #000}#title{position:fixed;top:0;right:0;bottom:0;left:0;z-index:8;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;text-align:center;background:radial-gradient(ellipse at center,#00000026,#0000008c)}#title h1{font-size:56px;line-height:.95;font-weight:900;color:#9cff6a;text-shadow:0 0 24px #3cff3c,0 5px 0 #1d4a10}#title h1 span{color:#fff;text-shadow:0 0 24px #ff3c3c,0 5px 0 #5a1010}#title p{margin-top:22px;font-size:20px;font-weight:800}#title .small{font-size:12px;opacity:.8;margin-top:10px;padding:0 30px}#title.out{animation:fadeout .5s forwards}#levelup,#gameover{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:center;justify-content:center;flex-direction:column;background:radial-gradient(circle,#281450d9,#000000eb);overflow:hidden}#levelup .rays{position:absolute;width:220vmax;height:220vmax;left:50%;top:50%;margin:-110vmax 0 0 -110vmax;background:repeating-conic-gradient(rgba(255,220,80,.18) 0 10deg,transparent 10deg 20deg);animation:spin 12s linear infinite}.lu-inner{position:relative;text-align:center;animation:zoomin .5s cubic-bezier(.2,1.6,.4,1)}.lu-title{font-size:54px;font-weight:900;color:#ffe24a;text-shadow:0 0 30px #ff9d00,0 5px 0 #7a4400}.lu-level{font-size:30px;font-weight:900;margin-top:4px}.lu-level b{font-size:44px;color:#9cff6a}.lu-card{margin:22px auto 0;display:flex;align-items:center;gap:14px;text-align:left;background:linear-gradient(#2c3a6a,#1a2142);border:3px solid #ffe24a;border-radius:18px;padding:14px 18px;max-width:320px;box-shadow:0 0 30px #ffe24a80}.lu-icon{font-size:46px}.lu-name{font-size:20px;font-weight:900;color:#ffe24a}.lu-desc{font-size:14px;opacity:.9;margin-top:2px}.lu-tap{margin-top:28px;font-size:16px;font-weight:800;opacity:.85}.confetti{position:absolute;width:10px;height:14px;top:-20px;animation:fall linear forwards}.go-title{font-size:56px;font-weight:900;color:#ff5a5a;text-shadow:0 0 30px #f00,0 5px 0 #5a0000}.go-stats{margin-top:16px;font-size:18px;font-weight:800;line-height:1.6;text-align:center}.go-stats b{color:#ffe24a}#menu,#credits{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#000000b3;display:flex;align-items:center;justify-content:center}.panel{background:linear-gradient(#232c4e,#141a30);border:2px solid rgba(255,255,255,.25);border-radius:18px;padding:20px;width:min(320px,90vw);max-height:86vh;overflow:auto;display:flex;flex-direction:column;gap:10px;text-align:center}.mstatus{text-align:left;font-size:12px;line-height:1.35;background:#00000047;border-radius:12px;padding:8px 10px;max-height:48vh;overflow:auto}.mstatus h3{font-size:12px;margin:6px 0 2px;color:#ffe24a;text-align:center}.mstatus .row{display:flex;justify-content:space-between;gap:6px;align-items:center;margin:3px 0}.mstatus button{padding:4px 8px;border-radius:8px;background:#2f8a45;font-size:11px}.mstatus button:disabled{background:#555;opacity:.75}.panel.wide{width:min(440px,94vw);max-height:86vh}.panel h2{font-size:24px;margin-bottom:4px}.panel button{padding:12px;border-radius:12px;background:#36427a;font-size:16px;font-weight:800}.panel button.danger{background:#8a2430}.panel .tiny{font-size:11px;opacity:.7}#credits-body{overflow:auto;text-align:left;font-size:12.5px;line-height:1.45;max-height:62vh;padding-right:4px}#credits-body h3{font-size:14px;margin:10px 0 4px;color:#ffe24a}#credits-body a{color:#8fd7ff}#credits-body li{margin-left:16px}.fnum{position:absolute;left:0;top:0;font-weight:900;white-space:nowrap;transform:translate(-50%,-50%);will-change:transform,opacity;pointer-events:none}.fnum.xp{font-size:34px;color:#ffe24a;-webkit-text-stroke:2px #6b3b00;text-shadow:0 0 14px #ffb300,0 3px 0 #6b3b00;animation:floatup 1.25s cubic-bezier(.2,1.6,.4,1) forwards}.fnum.xp.big{font-size:46px;color:#9cff6a;-webkit-text-stroke:2px #1d4a10;text-shadow:0 0 18px #3cff3c,0 3px 0 #1d4a10}.fnum.dmg{font-size:20px;color:#fff;-webkit-text-stroke:1px #222;animation:floatsmall .7s ease-out forwards}.fnum.crit{font-size:28px;color:#ff6a3c;-webkit-text-stroke:1.5px #4a0e00;animation:floatsmall .9s ease-out forwards}.fnum.tag{font-size:22px;color:#fff;text-shadow:0 0 10px #f0f,0 2px 0 #400040;animation:floatsmall 1.1s ease-out forwards}.orb{position:absolute;left:0;top:0;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:radial-gradient(circle,#fff,#ffe24a 40%,#ff9d00 70%,transparent 72%);box-shadow:0 0 12px #ffd000,0 0 24px #ff9d00;pointer-events:none;transition:transform .6s cubic-bezier(.6,-.3,.7,1),opacity .6s}.pulse{animation:pulse 1.2s ease-in-out infinite}@keyframes pop{0%{transform:scale(1)}40%{transform:scale(1.35)}to{transform:scale(1)}}@keyframes shine{0%{background-position:150% 0}to{background-position:-100% 0}}@keyframes barpulse{0%{box-shadow:0 0 #fff}50%{box-shadow:0 0 18px 4px #ffe24a}to{box-shadow:0 0 #fff}}@keyframes floatup{0%{transform:translate(-50%,-50%) scale(.2);opacity:0}15%{transform:translate(-50%,-90%) scale(1.25);opacity:1}70%{opacity:1}to{transform:translate(-50%,-260%) scale(1);opacity:0}}@keyframes floatsmall{0%{transform:translate(-50%,-50%) scale(.6);opacity:1}25%{transform:translate(-50%,-110%) scale(1.15)}to{transform:translate(-50%,-220%) scale(1);opacity:0}}@keyframes banner{0%{opacity:0;transform:scale(2.4)}15%{opacity:1;transform:scale(1)}75%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8) translateY(-30px)}}@keyframes fadeout{to{opacity:0;visibility:hidden}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes zoomin{0%{transform:scale(.2);opacity:0}to{transform:scale(1);opacity:1}}@keyframes fall{to{transform:translateY(115vh) rotate(720deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.45}}@keyframes readyglow{0%,to{box-shadow:0 0 #78ff7800}50%{box-shadow:0 0 16px #78ff78e6}}@media(min-aspect-ratio:1/1){.wbtn{width:96px}#hud{max-width:620px;margin:0 auto}#minimap{width:120px;height:120px}}#joy{position:fixed;z-index:5;width:120px;height:120px;margin:-60px 0 0 -60px;border-radius:50%;border:3px solid rgba(255,255,255,.35);background:radial-gradient(circle,#ffffff14,#ffffff05);pointer-events:none;display:none}#joy.on{display:block}#joyknob{position:absolute;left:50%;top:50%;width:56px;height:56px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#fff,#9fdcff 60%,#3a7ab0);box-shadow:0 0 18px #78c8ffcc;transform:translate(-50%,-50%)}#joyhint{position:fixed;left:24px;bottom:calc(env(safe-area-inset-bottom) + 150px);z-index:5;pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:4px;opacity:.55;transition:opacity .3s}#joyhint .ring{width:84px;height:84px;border-radius:50%;border:2px dashed rgba(255,255,255,.6);display:flex;align-items:center;justify-content:center}#joyhint .dot{width:36px;height:36px;border-radius:50%;background:#9fdcff99}#joyhint span{font-size:10px;font-weight:800;text-transform:uppercase}body.moving #joyhint{opacity:0}.wbtn.gren.ready:not(.locked){animation:readyglow 1.2s infinite}.fnum.coin{font-size:26px;color:#ffd23a;-webkit-text-stroke:1.5px #6b3b00;text-shadow:0 0 10px #ffb300;animation:floatsmall 1s ease-out forwards}.fnum.res{font-size:22px;color:#fff;-webkit-text-stroke:1.5px #4a2a10;animation:floatsmall 1s ease-out forwards}.fnum.res.big{font-size:32px;color:#ffb878}.wk{position:absolute;left:0;top:0;pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:15px;filter:drop-shadow(0 1px 1px #0008)}.wk .bp{width:34px;height:6px;border-radius:3px;background:#0007;border:1px solid #fff9;overflow:hidden}.wk .bp b{display:block;height:100%;width:0;background:var(--wc,#ffd23a);transition:width .2s}.wk.sel i{transform:scale(1.35)}.wk.boost .bp{box-shadow:0 0 6px #6fe0ff}.wk.idle i{animation:wkidle 1s ease-in-out infinite}.wk.idle .bp{border-color:#ff4a4a}@keyframes wkidle{50%{transform:translateY(-4px) scale(1.2)}}.chip.c-crew.warn{background:#c62828;animation:wkidle 1s infinite}.idlew{color:#ff6a6a;font-weight:800}#dailybtn{position:absolute;right:10px;top:250px;width:54px;height:54px;border-radius:16px;border:2px solid #fff;background:linear-gradient(#ffcf3a,#ff8a1a);font-size:24px;pointer-events:auto;box-shadow:0 3px #a0500a;animation:wkidle 1.6s infinite;color:#fff;line-height:1}#healbtn{position:absolute;left:10px;top:250px;min-width:54px;height:54px;border-radius:16px;border:2px solid #fff;background:linear-gradient(#ff5a7a,#c2183a);font-size:20px;pointer-events:auto;box-shadow:0 3px #6a1020;color:#fff;line-height:1;z-index:7}#healbtn b{display:block;font-size:12px}#dailybtn small{display:block;font-size:9px;font-weight:900}#tip{position:fixed;left:50%;top:118px;pointer-events:none;transform:translate(-50%);width:min(330px,88vw);background:#fffdf3;color:#333;border-radius:16px;padding:10px 12px;box-shadow:0 6px 20px #0006;z-index:40;font:600 14px/1.35 system-ui,sans-serif;border:3px solid #ffd23a}#tip p{margin:0 0 8px}#tip div{display:flex;gap:8px;align-items:center}#tip button{pointer-events:auto;border:0;border-radius:10px;padding:6px 14px;font-weight:800;background:#3aa0ff;color:#fff}#tip .skip{background:#ddd;color:#555}#tip em{margin-left:auto;font-size:12px;color:#999}.name{display:block;margin:6px 0;font-size:13px}.name input{display:block;width:100%;margin-top:4px;padding:7px;border-radius:8px;border:1px solid #ccc;font-size:15px}#crewchip,#dailybtn{pointer-events:auto}
