:root{font-family:Arial,sans-serif;color:#f1eee5;background:#10141b;color-scheme:dark;--gold:#ffd58a;--orange:#fc6539}*{box-sizing:border-box}body{margin:0;overflow:hidden;overscroll-behavior:none}button,select{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation}button:disabled{opacity:.45;cursor:default}button:focus-visible,select:focus-visible{outline:2px solid var(--gold)}[hidden]{display:none!important}#world{position:fixed;inset:0;width:100%;height:100%;touch-action:none}#vignette,#hurt{position:fixed;inset:0;pointer-events:none}#vignette{background:radial-gradient(ellipse,transparent 40%,#0008)}#hurt{background:radial-gradient(ellipse,transparent 35%,#c32116cc);opacity:0;z-index:3}.screen{position:fixed;inset:0;padding:max(30px,env(safe-area-inset-top)) 7vw max(20px,env(safe-area-inset-bottom));overflow:auto;background:linear-gradient(90deg,#080d14f5,#080d14b0);z-index:5}.eyebrow{font-size:10px;letter-spacing:2.5px;color:var(--gold);line-height:1.6}h1{font-size:clamp(44px,12vw,88px);line-height:.91;letter-spacing:-3px;margin:28px 0 20px;font-weight:900}h1 em{color:var(--orange);font-style:normal}h2{font-size:clamp(32px,9vw,60px);line-height:1;margin:18px 0}.lead{color:#bdc4cd;line-height:1.6;font-size:14px}.career{padding:16px;border:1px solid #ffffff25;background:#131c24a8;margin:20px 0;max-width:440px}.career>span{font-size:12px}.career>b{float:right;color:var(--gold);font-size:13px}.career small{display:block;color:#aebdc8;font-size:11px;line-height:1.5}progress{display:block;width:100%;height:5px;border:0;border-radius:5px;overflow:hidden;background:#ffffff20;accent-color:var(--gold);margin:10px 0}progress::-webkit-progress-bar{background:#ffffff20}progress::-webkit-progress-value{background:var(--gold)}.field{display:block;font-size:9px;letter-spacing:2px;color:#aebdc8;margin:18px 0 14px;max-width:440px}select{display:block;width:100%;background:#111b25;border:1px solid #ffffff35;padding:14px;margin-top:8px;font-size:13px;letter-spacing:1px}.primary,.secondary,.boxButton{display:block;border:0;padding:17px 20px;text-align:left;font-size:12px;font-weight:bold;letter-spacing:1px;width:100%;max-width:440px;margin:10px 0}.primary{background:var(--orange);color:#0a0c10}.secondary{background:#17212c;border:1px solid #ffffff30}.boxButton{background:#352b1b;border:1px solid #b98843;color:var(--gold)}.instructions,footer{font-size:10px;line-height:1.8;color:#a2adb8;max-width:440px}footer{margin-top:20px;font-size:9px}.centered{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.centered .primary,.centered .secondary{text-align:center}.centered .career{width:100%}.centered .career>b{float:none}.centered p{font-size:13px;color:#b9c5d1}#resultStats{display:flex;gap:30px;margin:22px 0}#resultStats b{font-size:28px;display:block;color:var(--gold)}#resultStats small{font-size:9px;letter-spacing:1px}
#hud{position:fixed;inset:0;pointer-events:none;padding:max(18px,env(safe-area-inset-top)) 5vw max(18px,env(safe-area-inset-bottom));z-index:2}#hud button{pointer-events:auto}header{display:flex;align-items:center;gap:24px}header small{display:block;font-size:8px;letter-spacing:1.5px;color:#b5c5d1}header b{font-size:25px;line-height:1.2}#pause{margin-left:auto;border:1px solid #ffffff40;background:#0a131c99;padding:10px 14px;font-size:16px}.health{width:140px;margin-top:14px;font-size:11px}.health>div{height:4px;background:#ffffff25;margin:6px 0}.health i{display:block;height:100%;width:100%;background:#f2dcc2}.health small{font-size:8px;color:#91e7ca}#waveMessage{text-align:center;margin-top:26px;font-size:20px;font-weight:bold;letter-spacing:2px;text-shadow:0 2px 15px #000}#notice{text-align:center;color:var(--gold);font-size:12px;margin:12px auto;max-width:280px;text-shadow:0 2px 8px #000;min-height:28px}#reticle{position:absolute;left:50%;top:50%;width:24px;height:24px;transform:translate(-50%,-50%)}#reticle i{position:absolute;background:#fff9}#reticle i:nth-child(1){width:2px;height:5px;left:11px;top:0}#reticle i:nth-child(2){width:2px;height:5px;left:11px;bottom:0}#reticle i:nth-child(3){height:2px;width:5px;top:11px;left:0}#reticle i:nth-child(4){height:2px;width:5px;top:11px;right:0}#hit{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:35px;opacity:0}#damageArrow{position:absolute;left:50%;top:40%;color:#ff674f;font-size:25px;opacity:0}#reload{position:absolute;top:57%;left:50%;transform:translateX(-50%);text-align:center;font-size:10px;width:140px;color:var(--gold)}.weaponInfo{position:absolute;right:6vw;bottom:240px;text-align:right}.weaponInfo small{display:block;font-size:9px;letter-spacing:1px;color:#c0cbd3}.weaponInfo b{font-size:34px;display:block}.weaponInfo span{font-size:9px;color:#aebbc8}.headGoal{position:absolute;left:5vw;bottom:243px;width:160px;font-size:9px;color:var(--gold)}#buyHud{position:absolute;bottom:183px;left:5vw;width:90vw;max-width:none;padding:12px;font-size:10px;margin:0;text-align:center}#joystick{position:absolute;left:6vw;bottom:max(35px,env(safe-area-inset-bottom));width:112px;height:112px;border:1px solid #ffffff30;background:#0c172550;border-radius:50%;pointer-events:auto;touch-action:none}#joystick i{position:absolute;left:34px;top:34px;width:44px;height:44px;background:#ffffff30;border:1px solid #ffffff65;border-radius:50%}#joystick small{position:absolute;bottom:-20px;width:100%;text-align:center;font-size:9px;color:#b0bccc}#fire{position:absolute;right:6vw;bottom:max(43px,env(safe-area-inset-bottom));width:104px;height:104px;border-radius:50%;border:2px solid #ffb28a99;background:#4f2017aa;font-size:17px;font-weight:bold;letter-spacing:2px;touch-action:none;box-shadow:0 0 25px #ff5e2015}#fire:active{background:#b34827cc}#reloadButton{position:absolute;right:calc(6vw + 112px);bottom:65px;border:1px solid #ffffff35;background:#111b25bb;width:42px;height:42px;border-radius:50%;font-size:25px}#lookHint{position:absolute;right:8vw;top:37%;font-size:8px;letter-spacing:2px;color:#ffffff55}
#crate{position:relative;width:260px;height:190px;margin:20px auto;perspective:600px}.woodbox,.lid{position:absolute;left:0;width:260px;border:8px solid #352b20;background:repeating-linear-gradient(2deg,#56391f 0,#79532f 5px,#604025 9px,#855f37 13px);box-shadow:inset 0 0 18px #100b07}.woodbox{height:100px;bottom:0;border-top:3px solid #322415;display:grid;place-items:center;color:#d8bc84;font-size:22px;letter-spacing:5px;font-weight:bold}.woodbox:before,.woodbox:after{content:"";position:absolute;top:0;bottom:0;width:13px;background:#383938;border:2px solid #6e6b5d}.woodbox:before{left:30px}.woodbox:after{right:30px}.lid{height:50px;bottom:100px;transform-origin:50% 100%;z-index:2;transition:transform .8s cubic-bezier(.2,.7,.3,1)}.crateGlow{position:absolute;inset:-100px -40px -40px;background:radial-gradient(ellipse,#ffce5966,transparent 67%);opacity:0;transition:opacity .8s}.rewardIcon{position:absolute;left:105px;bottom:50px;font-size:60px;color:#fff0b8;text-shadow:0 0 30px #ffb600;opacity:0;transition:all .8s}.opened .lid{transform:rotateX(-115deg)}.opened .crateGlow{opacity:1}.opened .rewardIcon{bottom:108px;opacity:1}#rewardName{color:var(--gold)}
@media(min-width:800px){.screen{padding-left:10vw}#menu{background:linear-gradient(90deg,#080d14fa,#080d1470)}h1{font-size:80px}#joystick{opacity:.45}#fire{width:90px;height:90px}#buyHud{width:350px;left:50%;transform:translateX(-50%)}.headGoal{bottom:80px;left:210px}.weaponInfo{bottom:170px}}@media(max-height:650px){h1{font-size:42px;margin:12px 0}.career{margin:10px 0;padding:10px}.lead{font-size:12px;margin:8px 0}.screen{padding-top:18px}.primary,.secondary,.boxButton{padding:12px}.instructions{font-size:9px}.headGoal{bottom:195px}.weaponInfo{bottom:190px}#buyHud{bottom:145px}#joystick{width:90px;height:90px;bottom:25px}#joystick i{left:23px;top:23px}#fire{width:84px;height:84px;bottom:28px}#waveMessage{margin-top:10px;font-size:16px}#crate{transform:scale(.8);margin:0}#lookHint{display:none}}@media(prefers-reduced-motion:reduce){.lid,.crateGlow,.rewardIcon{transition:none}}

#monkey{position:absolute;right:18px;bottom:310px;min-height:44px;padding:10px;border:1px solid #cda46c;border-radius:8px;background:#201b17dd;color:#f4dbaf;font-size:11px;pointer-events:auto;}#monkey:disabled{opacity:.45;}
