:root{font-family:Inter,system-ui,sans-serif;color:#ecebdc;background:#111711;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button{font:inherit}.game-shell{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;height:100dvh;padding:0;overflow:hidden;overscroll-behavior:none}.game-world{width:100%;height:100%}.inventory-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#070a07b8;z-index:35}.inventory{width:min(420px,100%);padding:20px;border:1px solid #52614e;border-radius:10px;background:#182018;box-shadow:0 18px 60px #050705}.inventory header{display:flex;align-items:center;justify-content:space-between}.inventory h2{margin:0}.inventory-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:20px 0}.inventory-slot{position:relative;min-height:110px;padding:14px;border:1px solid #3c493a;border-radius:8px;background:#222d21}.inventory-slot span{font-size:28px;color:#d2a455}.inventory-slot .inventory-water-bottle{position:relative;display:block;width:16px;height:28px;margin:2px 0 3px 5px;transform:scale(1.18);transform-origin:left top;filter:drop-shadow(2px 3px 2px rgba(19,39,48,.45))}.inventory-slot p{margin:8px 0 0;color:#aeb7a8}.inventory-slot strong{position:absolute;right:12px;bottom:10px;font-size:22px}.inventory-slot .use-item{position:absolute;right:9px;top:9px;padding:5px 8px;font-size:12px}.weapon-item{position:relative;display:block;image-rendering:pixelated;filter:drop-shadow(2px 3px 1px rgba(0,0,0,.55))}.weapon-item--spear{width:5px;height:38px;margin:0 0 0 12px;border:1px solid #422818;background:linear-gradient(90deg,#59341f,#b57a42 52%,#704326);transform:rotate(24deg)}.weapon-item--spear i{position:absolute;left:-4px;top:-11px;width:11px;height:14px;border:1px solid #263238;background:linear-gradient(135deg,#dce7e5,#78898d 58%,#b7c4c3);clip-path:polygon(50% 0,100% 64%,50% 100%,0 64%)}.weapon-item--axe{width:6px;height:30px;margin:0 0 0 12px;border:1px solid #422818;background:linear-gradient(90deg,#59341f,#bd8248 52%,#704326);transform:rotate(-30deg)}.weapon-item--axe i{position:absolute;left:-7px;top:-5px;width:18px;height:12px;border:2px solid #293437;background:linear-gradient(135deg,#aab5b3,#596669 70%);clip-path:polygon(0 8%,72% 0,100% 24%,90% 78%,67% 100%,0 82%,18% 50%)}.weapon-item--sword{width:5px;height:20px;margin:10px 0 0 12px;border:1px solid #422818;background:linear-gradient(90deg,#59341f,#b57a42 52%,#704326);transform:rotate(32deg)}.weapon-item--sword i{position:absolute;left:-3px;top:-18px;width:9px;height:21px;border:1px solid #354044;background:linear-gradient(90deg,#69777a,#aeb9b7 52%,#7f8d8e);clip-path:polygon(50% 0,100% 25%,82% 100%,18% 100%,0 25%)}.weapon-item--wrench{width:8px;height:31px;margin:0 0 0 12px;border:2px solid #171d1f;border-radius:2px 2px 5px 5px;background:linear-gradient(90deg,#303a3d 0,#303a3d 25%,#879293 26%,#879293 55%,#4b575a 56%);transform:rotate(32deg)}.weapon-item--wrench:after{content:"";position:absolute;left:1px;bottom:2px;width:4px;height:4px;border:1px solid #171d1f;border-radius:50%;background:#222a2d}.weapon-item--wrench i{position:absolute;left:-6px;top:-15px;width:18px;height:17px;border:2px solid #171d1f;background:linear-gradient(100deg,#2d383b 0,#2d383b 25%,#8b9696 26%,#8b9696 55%,#455154 56%);clip-path:polygon(0 0,34% 27%,60% 27%,90% 5%,100% 24%,72% 65%,63% 100%,28% 100%,20% 67%)}.weapon-item--wrench i:after{content:"";position:absolute;left:5px;top:0;width:7px;height:7px;background:#171d1f;clip-path:polygon(0 0,100% 0,68% 100%,30% 100%)}.map-weapon-drop{position:absolute;z-index:4;animation:shared-drop-land .28s ease-out}.shared-drop .weapon-item{margin:0}.shared-drop{position:absolute;z-index:4;font-size:20px;filter:drop-shadow(0 3px 2px #172017);animation:shared-drop-land .28s ease-out}.shared-drop__water{position:relative;display:block;width:16px;height:28px}@keyframes shared-drop-land{0%{translate:0 -18px;scale:.7}to{translate:0;scale:1}}.inventory-help{margin:0;color:#7f8d7b;font-size:12px}.map-viewport{position:relative;width:100vw;max-width:none;height:100%;margin:0;overflow:hidden;border-radius:0;background:#263b2b}.camera-world{width:max-content;height:max-content;transform-origin:0 0;transition:transform 60ms linear;will-change:transform}.forest-map{position:relative;overflow:hidden;background-color:#49643e;background-image:radial-gradient(ellipse at 20% 25%,rgba(119,146,76,.28) 0 2px,transparent 3px),radial-gradient(ellipse at 72% 68%,rgba(34,70,37,.25) 0 3px,transparent 4px),linear-gradient(115deg,transparent 48%,rgba(216,224,146,.1) 49% 51%,transparent 52%);background-size:37px 31px,53px 47px,19px 23px;transition:background-color .4s}.forest-map:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.45;background-image:repeating-linear-gradient(78deg,transparent 0 24px,rgba(31,75,35,.35) 25px 26px,transparent 27px 42px);mix-blend-mode:multiply}.forest-map:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.25;box-shadow:inset 0 0 70px #14251661}.forest-map--night{background-color:#49643e}.forest-map--paused,.forest-map--paused *{animation-play-state:paused!important}.forest-map--night:after{opacity:1}.night-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;pointer-events:none;background:#080e188f}.map-tree{position:absolute;width:56px;height:65px;z-index:1;filter:drop-shadow(0 3px 2px rgba(14,30,15,.45))}.tree-shadow{position:absolute;left:5px;bottom:-5px;width:49px;height:13px;border-radius:50%;background:#162c177a;transform:skew(-18deg)}.tree-trunk{position:absolute;left:23px;bottom:3px;width:12px;height:35px;border:3px solid #503723;border-radius:4px;background:linear-gradient(90deg,#765033,#a27547 55%,#604128)}.tree-crown{position:absolute;border:3px solid #173b22;border-radius:48% 52% 45% 55%;background:#285f34;box-shadow:inset -5px -5px #204b2a}.tree-crown--left{left:1px;top:17px;width:34px;height:34px}.tree-crown--right{right:0;top:15px;width:35px;height:36px}.tree-crown--top{left:12px;top:0;width:38px;height:39px;background:#347441}.tree-highlight{position:absolute;left:19px;top:8px;width:12px;height:7px;border-radius:50%;background:#709b4b8c;transform:rotate(-18deg)}.map-tree--hit{animation:tree-hit .26s ease-in-out}.map-tree--fall{z-index:2;transform-origin:50% 100%;animation:tree-fall .6s ease-in forwards}.abandoned-tent{position:absolute;width:170px;height:100px;z-index:1;filter:drop-shadow(8px 9px 4px rgba(20,30,17,.35))}.tent-ground-shadow{position:absolute;left:4px;right:-10px;bottom:-2px;height:25px;border-radius:50%;background:#111f116b;transform:skew(-15deg)}.tent-side{position:absolute;bottom:8px;width:84px;height:72px;z-index:1}.tent-side--left{left:5px;clip-path:polygon(100% 0,100% 100%,0 100%);background:linear-gradient(115deg,#697255,#414a38 72%)}.tent-side--right{right:5px;clip-path:polygon(0 0,100% 100%,0 100%);background:linear-gradient(65deg,#343d30 12%,#555f48 76%)}.tent-roof{position:absolute;top:4px;right:6px;bottom:0;left:6px;z-index:2;clip-path:polygon(50% 0,100% 88%,94% 92%,50% 14%,6% 92%,0 88%);background:repeating-linear-gradient(105deg,#727b5c 0,#727b5c 18px,#515b44 19px,#515b44 22px);filter:drop-shadow(0 5px 2px rgba(19,27,17,.38))}.tent-ridge{position:absolute;left:82px;top:1px;width:6px;height:90px;z-index:3;border-radius:4px;background:linear-gradient(90deg,#8a916f,#414835);transform:rotate(-.5deg);transform-origin:top}.tent-door{position:absolute;left:63px;bottom:11px;width:44px;height:59px;clip-path:polygon(50% 0,100% 100%,0 100%);background:#252b22;z-index:2}.tent-door:after{content:"";position:absolute;left:21px;top:5px;width:2px;height:50px;background:#77806b;transform:rotate(-19deg);transform-origin:top}.tent-web{position:absolute;left:22px;top:29px;width:40px;height:35px;z-index:3;overflow:hidden;border-left:1px solid rgba(221,226,207,.72);border-top:1px solid rgba(221,226,207,.72);border-radius:2px 0 0;transform:rotate(-7deg)}.tent-web:before,.tent-web:after{content:"";position:absolute;left:-10px;top:-8px;border:1px solid rgba(221,226,207,.62);border-radius:50%}.tent-web:before{width:34px;height:30px}.tent-web:after{width:51px;height:45px}.tent-web i{position:absolute;left:-3px;top:0;width:48px;height:1px;background:#dde2cfab;transform-origin:left}.tent-web i:nth-child(1){transform:rotate(20deg)}.tent-web i:nth-child(2){transform:rotate(40deg)}.tent-web i:nth-child(3){transform:rotate(61deg)}.abandoned-warehouse{position:absolute;width:190px;height:120px;z-index:1;border:5px solid #454a43;background:repeating-linear-gradient(90deg,#656a61 0,#656a61 28px,#565c53 29px,#565c53 32px);box-shadow:inset 0 -16px #4a4e47;filter:drop-shadow(8px 10px 5px rgba(20,30,17,.42))}.warehouse-roof{position:absolute;left:-12px;right:-12px;top:-20px;height:27px;clip-path:polygon(7% 0,93% 0,100% 100%,0 100%);background:repeating-linear-gradient(90deg,#4b504c 0,#4b504c 15px,#363b38 16px,#363b38 19px)}.warehouse-door{position:absolute;left:67px;bottom:0;width:54px;height:72px;border:4px solid #343833;background:repeating-linear-gradient(90deg,#494f49 0,#494f49 11px,#383e39 12px,#383e39 15px)}.warehouse-window{position:absolute;left:16px;top:28px;width:34px;height:28px;border:4px solid #3b403b;background:linear-gradient(45deg,transparent 47%,#798078 48% 53%,transparent 54%),#26342f}.warehouse-sign{position:absolute;right:10px;top:14px;padding:3px 6px;color:#cabf91;background:#514735;font-size:9px;transform:rotate(4deg)}.warehouse-web{width:33px;height:29px;z-index:4;opacity:.82}.warehouse-web--left{left:3px;top:2px;transform:rotate(-3deg)}.warehouse-web--right{left:auto;right:2px;top:64px;transform:scaleX(-1) rotate(-7deg)}.loot-crate{position:absolute;width:29px;height:25px;z-index:2;border:3px solid #49321f;background:repeating-linear-gradient(0deg,#8a6038 0,#8a6038 9px,#654529 10px,#654529 12px);filter:drop-shadow(3px 4px 2px rgba(30,28,18,.4))}.chicken-leg{position:relative;display:block;width:27px;height:25px;transform:rotate(-28deg);filter:drop-shadow(2px 3px 2px rgba(51,36,22,.55))}.chicken-leg__meat{position:absolute;left:0;top:1px;width:18px;height:17px;border:2px solid #63351f;border-radius:55% 45% 48% 52%;background:radial-gradient(circle at 35% 28%,#f3a05e 0 3px,transparent 4px),linear-gradient(135deg,#d8753c,#9f4529);box-shadow:inset -3px -3px #833720}.chicken-leg__meat i{position:absolute;left:4px;bottom:2px;width:7px;height:2px;border-radius:50%;background:#ffbe708c;transform:rotate(-18deg)}.chicken-leg__bone{position:absolute;left:15px;top:12px;width:10px;height:5px;border:1px solid #806b51;border-radius:3px;background:#ead9b7;transform:rotate(18deg)}.chicken-leg__bone i,.chicken-leg__bone b{position:absolute;right:-4px;width:6px;height:6px;border:1px solid #806b51;border-radius:50%;background:#f1dfbc}.chicken-leg__bone i{top:-3px}.chicken-leg__bone b{bottom:-3px}.inventory-chicken{top:5px;margin:5px 0 7px 5px;transform:rotate(-28deg) scale(1.05);transform-origin:left top}.map-food-drop{position:absolute;z-index:2;animation:food-drop .45s ease-out}.map-water-bottle{position:absolute;width:16px;height:28px;z-index:2;filter:drop-shadow(2px 3px 2px rgba(19,39,48,.55));animation:food-drop .45s ease-out}.water-bottle__cap{position:absolute;left:5px;top:0;width:7px;height:5px;border:1px solid #24485e;border-radius:2px 2px 0 0;background:#63a9cc}.water-bottle__body{position:absolute;left:2px;top:5px;width:13px;height:22px;overflow:hidden;border:2px solid #315d72;border-radius:4px 4px 5px 5px;background:linear-gradient(90deg,#cbeef4e6,#5bb4d3d9 55%,#2e78a0e6)}.water-bottle__body:after{content:"";position:absolute;left:2px;top:2px;width:3px;height:13px;border-radius:3px;background:#ffffff8c}.water-bottle__body i{position:absolute;left:1px;right:1px;bottom:5px;height:6px;border-top:1px solid #b9e7ef;border-bottom:1px solid #5b9eb7;background:#e3f5ebd9}@keyframes food-drop{0%{transform:translateY(-15px) scale(.5) rotate(-20deg);opacity:0}70%{transform:translateY(3px) scale(1.12)}}.loot-crate__lid{position:absolute;left:-5px;top:-6px;width:33px;height:8px;border:2px solid #49321f;background:#987047}.loot-crate__plank{position:absolute;left:11px;top:-1px;width:6px;height:21px;background:#4e3927}.loot-crate--hit{animation:crate-hit .24s ease-out}.loot-crate--break{transform-origin:bottom;animation:crate-break .5s ease-in forwards}@keyframes crate-hit{25%{transform:translate(-5px) rotate(-4deg);filter:brightness(1.45)}65%{transform:translate(4px) rotate(3deg)}}@keyframes crate-break{20%{transform:scale(1.08) rotate(-5deg)}65%{transform:scaleY(.55) rotate(8deg);opacity:.8}to{transform:scaleY(.15) translateY(22px);opacity:0}}@keyframes tree-hit{25%{transform:rotate(-8deg)}60%{transform:rotate(7deg)}}@keyframes tree-fall{20%{transform:rotate(-10deg)}to{transform:rotate(82deg) translate(18px);opacity:.25}}.base{position:absolute;left:50%;top:50%;width:160px;height:126px;transform:translate(-50%,-50%) scale(.84);z-index:1;filter:drop-shadow(0 9px 5px rgba(28,19,11,.55))}.base__wall,.base__tower{position:absolute;border:4px solid #49301d;background-color:#8b5c34;background-image:radial-gradient(circle at 8px 8px,#bb8550 0 2px,#5b3a22 3px 4px,transparent 5px),repeating-linear-gradient(0deg,#96663b 0,#96663b 12px,#674225 13px,#674225 16px);background-size:28px 16px,auto;box-shadow:inset 5px 0 #d59d5b2e,inset -6px 0 #351f1140}.base__wall{left:27px;right:27px;bottom:12px;height:73px}.base__tower{bottom:10px;width:39px;height:99px;z-index:2}.base__tower:before{content:"";position:absolute;left:-5px;right:-5px;top:-12px;height:18px;background:repeating-linear-gradient(90deg,#9a6739 0 9px,transparent 10px 15px);border-bottom:4px solid #49301d;filter:drop-shadow(0 2px #342014)}.base__tower:after{content:"";position:absolute;left:11px;top:31px;width:9px;height:14px;border:3px solid #49301d;border-bottom-width:2px;background:linear-gradient(#26322d,#131a17);box-shadow:inset 2px 0 #71947b47}.base__tower--left{left:5px}.base__tower--right{right:5px}.base__battlements{position:absolute;left:36px;top:31px;width:88px;height:18px;border-bottom:4px solid #49301d;background:repeating-linear-gradient(90deg,#a9703d 0 12px,transparent 13px 21px);filter:drop-shadow(0 2px #382315);z-index:3}.base__door{position:absolute;left:62px;bottom:9px;width:36px;height:49px;border:4px solid #3e2818;border-radius:16px 16px 2px 2px;background:repeating-linear-gradient(90deg,#704726 0,#704726 8px,#a16d3b 9px,#a16d3b 11px,#4f321d 12px,#4f321d 14px);box-shadow:inset 0 4px #d3975333;z-index:5}.base__door:after{content:"";position:absolute;right:5px;top:28px;width:4px;height:4px;border-radius:50%;background:#d2a455}.base__door-print{position:absolute;left:12px;top:13px;color:#c49a61;font-size:8px;font-style:normal}.base__step{position:absolute;left:55px;bottom:1px;width:50px;height:11px;border:2px solid #3d2717;background:repeating-linear-gradient(90deg,#78502e 0,#78502e 15px,#a16f42 16px,#a16f42 18px);box-shadow:0 3px #2d1d12;z-index:6}.base__plank{display:none;position:absolute;width:48px;height:9px;border:2px solid #49301f;background:#a77545;z-index:7}.base__plank--one{left:18px;bottom:40px;transform:rotate(13deg)}.base__plank--two{right:16px;bottom:48px;transform:rotate(-11deg)}.base--damaged .base__plank--one,.base--critical .base__plank,.base--repairing .base__plank{display:block}.base__crack{display:none;position:absolute;z-index:6;width:3px;height:32px;background:#292b28;transform:rotate(24deg)}.base__crack:after{content:"";position:absolute;left:3px;top:13px;width:13px;height:3px;background:#292b28;transform:rotate(-40deg)}.base__crack--one{left:42px;bottom:25px}.base__crack--two{right:41px;bottom:31px;transform:rotate(-16deg)}.base--damaged .base__crack--one,.base--critical .base__crack{display:block}.base--critical .base__wall,.base--critical .base__tower{filter:brightness(.64) saturate(.75)}.base__dust,.base__repair-tool,.base__repair-spark{display:none;position:absolute;z-index:9;pointer-events:none}.base--hit{animation:base-hit .43s ease-out}.base--hit .base__dust{display:block;left:62px;top:20px;color:#c28a51;font-size:22px;letter-spacing:5px;animation:stone-dust .43s ease-out}.base--repairing{animation:base-repair .65s ease-out}.base--repairing .base__repair-tool{display:block;font-size:24px;transform-origin:80% 80%;animation:repair-tool-hit .22s ease-in-out 3}.base--repair-right .base__repair-tool{right:2px;top:58px}.base--repair-left .base__repair-tool{left:0;top:58px;transform:scaleX(-1)}.base--repair-top .base__repair-tool{right:60px;top:-12px}.base--repairing .base__repair-spark{display:block;left:71px;top:62px;color:#f1cf75;font-size:20px;animation:repair-spark .65s ease-out}@keyframes base-hit{20%{transform:translate(-53%,-50%) scale(.84);filter:brightness(1.7) sepia(1) saturate(5) hue-rotate(320deg)}55%{transform:translate(-47%,-50%) scale(.84)}}@keyframes stone-dust{0%{opacity:1}to{translate:0 -20px;scale:1.5;opacity:0}}@keyframes base-repair{20%{filter:brightness(1.25)}45%{transform:translate(-50%,-50%) scale(.87) rotate(-1deg)}}@keyframes repair-tool-hit{0%{rotate:-45deg}70%{rotate:18deg}to{rotate:-45deg}}@keyframes repair-spark{0%{transform:scale(.3);opacity:0}35%{transform:scale(1.4) rotate(30deg);opacity:1}to{transform:translate(12px,-16px) scale(.4);opacity:0}}.player{position:absolute;left:0;top:0;width:30px;height:30px;z-index:3;image-rendering:pixelated;filter:drop-shadow(0 2px 1px #0a0d09)}.player__nickname{position:absolute;left:50%;bottom:39px;z-index:5;max-width:120px;padding:3px 9px 4px;overflow:hidden;transform:translate(-50%);border:1px solid rgba(231,205,121,.55);border-radius:12px;color:#fff1a8;background:linear-gradient(180deg,#26311ff0,#0c130ce6);font:700 11px/1.3 Inter,sans-serif;letter-spacing:.045em;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 2px #000,0 0 6px rgba(255,222,112,.7);box-shadow:0 2px 6px #0000008c,inset 0 1px #ffffff1a;image-rendering:auto}.player__nickname:after{content:"";position:absolute;left:50%;bottom:-4px;width:7px;height:7px;border-right:1px solid rgba(231,205,121,.55);border-bottom:1px solid rgba(231,205,121,.55);background:#111a10;transform:translate(-50%) rotate(45deg)}.player__sprite{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:center}.player--mirrored .player__sprite{transform:scaleX(-1)}.player__head{position:absolute;left:8px;top:3px;width:15px;height:12px;border:2px solid #513621;border-radius:2px;background:#dba872}.player__head i{position:absolute;right:2px;top:4px;width:2px;height:2px;background:#20251d;box-shadow:-7px 0 #20251d}.player__hair{position:absolute;left:7px;top:0;width:17px;height:7px;border:2px solid #38291d;border-radius:3px 3px 0 0;background:#6b4729;z-index:2}.player__body{position:absolute;left:8px;top:14px;width:15px;height:10px;border:2px solid #402d24;border-radius:2px;background:linear-gradient(90deg,#754632,#9a6041);z-index:2}.player__arm{position:absolute;top:15px;width:5px;height:12px;border:2px solid #513621;border-radius:2px;background:#dba872;transform-origin:top;z-index:1}.player__arm--left{left:4px;transform:rotate(8deg)}.player__arm--right{right:3px;transform:rotate(-28deg)}.player__legs{position:absolute;left:8px;bottom:-1px;width:15px;height:8px;border-left:5px solid #34475a;border-right:5px solid #34475a;z-index:1}.player__weapon{position:absolute;right:-5px;top:7px;width:4px;height:19px;background:#7a5232;transform:rotate(-40deg);transform-origin:bottom;z-index:3}.player__weapon--hammer,.player__weapon--axe,.player__weapon--sword,.player__weapon--wrench{right:auto;left:4px;transform:rotate(-43deg)}.player__weapon--hammer{border:1px solid #422818;background:linear-gradient(90deg,#59341f,#b57a42 52%,#704326)}.player__weapon--hammer i{position:absolute;left:-5px;top:-3px;width:13px;height:7px;border:2px solid #354044;background:#8e9a98;z-index:2}.player__weapon--hammer:after{content:"";position:absolute;left:-2px;top:8px;width:6px;height:7px;background:repeating-linear-gradient(0deg,#39251a 0,#39251a 2px,#d0a35d 2px,#d0a35d 3px)}.player__weapon--axe{width:5px;height:22px;border:1px solid #422818;border-radius:1px 1px 3px 3px;background:linear-gradient(90deg,#59341f,#bd8248 52%,#704326)}.player__weapon--axe i{position:absolute;left:-6px;top:-5px;width:15px;height:10px;border:2px solid #293437;background:linear-gradient(135deg,#aab5b3,#596669 70%);clip-path:polygon(0 8%,72% 0,100% 24%,90% 78%,67% 100%,0 82%,18% 50%);filter:drop-shadow(0 1px #1e292c) drop-shadow(1px 0 #1e292c)}.player__weapon--axe:after{content:"";position:absolute;left:-2px;top:8px;width:7px;height:8px;background:repeating-linear-gradient(0deg,#39251a 0,#39251a 2px,#d0a35d 2px,#d0a35d 3px)}.player__weapon--sword{top:9px;width:5px;height:15px;border:1px solid #422818;border-radius:1px 1px 3px 3px;background:linear-gradient(90deg,#59341f,#b57a42 52%,#704326)}.player__weapon--sword i{position:absolute;left:-3px;top:-13px;width:9px;height:16px;border:1px solid #354044;background:linear-gradient(90deg,#69777a,#aeb9b7 52%,#7f8d8e);clip-path:polygon(50% 0,100% 25%,82% 100%,18% 100%,0 25%);filter:drop-shadow(0 1px #263033) drop-shadow(1px 0 #263033)}.player__weapon--sword:before{content:"";position:absolute;left:-4px;top:0;width:11px;height:4px;border:1px solid #3a271a;background:#bd8749;z-index:2}.player__weapon--sword:after{content:"";position:absolute;left:-2px;top:6px;width:7px;height:7px;background:repeating-linear-gradient(0deg,#39251a 0,#39251a 2px,#d0a35d 2px,#d0a35d 3px)}.player__weapon--spear{right:-10px;top:8px;width:4px;height:31px;border:1px solid #422818;background:linear-gradient(90deg,#59341f,#b57a42 52%,#704326);transform:rotate(-20deg)}.player__weapon--spear i{position:absolute;left:-4px;top:-10px;width:10px;height:14px;border:1px solid #263238;background:linear-gradient(135deg,#dce7e5,#78898d 58%,#b7c4c3);clip-path:polygon(50% 0,100% 64%,50% 100%,0 64%);filter:drop-shadow(0 1px #1e292c)}.player__weapon--spear:after{content:"";position:absolute;left:-2px;top:5px;width:6px;height:8px;background:repeating-linear-gradient(0deg,#39251a 0,#39251a 2px,#d0a35d 2px,#d0a35d 3px)}.player__weapon--wrench{width:6px;height:22px;border:1px solid #171d1f;border-radius:1px 1px 4px 4px;background:linear-gradient(90deg,#303a3d 0,#303a3d 25%,#879293 26%,#879293 55%,#4b575a 56%);box-shadow:inset -1px 0 #252e31}.player__weapon--wrench:before{content:"";position:absolute;left:-2px;top:-4px;width:10px;height:7px;z-index:3;border:1px solid #171d1f;background:repeating-linear-gradient(0deg,#374245 0,#374245 2px,#737f80 2px,#737f80 3px);clip-path:polygon(0 18%,100% 0,100% 82%,0 100%)}.player__weapon--wrench:after{content:"";position:absolute;left:1px;bottom:2px;width:3px;height:3px;border:1px solid #273033;border-radius:50%;background:#263033}.player__weapon--wrench i{position:absolute;left:-5px;top:-13px;width:16px;height:14px;border:1px solid #171d1f;background:linear-gradient(100deg,#2d383b 0,#2d383b 25%,#8b9696 26%,#8b9696 55%,#455154 56%);clip-path:polygon(0 0,34% 27%,60% 27%,90% 5%,100% 24%,72% 65%,63% 100%,28% 100%,20% 67%);filter:drop-shadow(0 1px #171d1f)}.player__weapon--wrench i:after{content:"";position:absolute;left:4px;top:0;width:6px;height:6px;background:#273033;clip-path:polygon(0 0,100% 0,68% 100%,30% 100%)}.player__weapon--wrench i:before{content:"";position:absolute;right:0;top:1px;width:5px;height:9px;background:#394548;clip-path:polygon(30% 0,100% 0,100% 82%,0 100%)}.player--attacking .player__weapon{animation:axe-swing .26s ease-out}.player--spear .player__arm--right{visibility:hidden}.player--spear.player--attacking .player__weapon{animation:spear-thrust .26s ease-out}@keyframes spear-thrust{0%{translate:-2px 4px}55%{translate:5px -7px}to{translate:0}}.player--attacking .player__arm--right{animation:attack-arm .26s ease-out}@keyframes axe-swing{0%{transform:rotate(-88deg)}55%{transform:rotate(28deg)}to{transform:rotate(-43deg)}}@keyframes attack-arm{0%{transform:rotate(-52deg)}55%{transform:rotate(18deg)}to{transform:rotate(-28deg)}}.player--walking .player__head,.player--walking .player__hair{animation:walk-bob .32s steps(2) infinite}.player--walking .player__body{animation:walk-body .32s steps(2) infinite}.player--walking .player__legs{animation:walk-legs .32s steps(2) infinite}.player--walking .player__arm--left{animation:walk-arm-left .32s steps(2) infinite}.player--walking .player__arm--right{animation:walk-arm-right .32s steps(2) infinite}@keyframes walk-bob{50%{translate:0 -1px}}@keyframes walk-body{50%{translate:0 1px}}@keyframes walk-legs{50%{border-left-width:3px;border-right-width:7px;transform:skew(-8deg)}}@keyframes walk-arm-left{50%{transform:rotate(-16deg)}}@keyframes walk-arm-right{50%{transform:rotate(12deg)}}.footprint{position:absolute;width:5px;height:8px;border-radius:50%;background:#25391f7a;transform:rotate(18deg);animation:footprint-fade 1s linear forwards}.footprint:after{content:"";position:absolute;left:7px;top:-4px;width:5px;height:8px;border-radius:50%;background:inherit;transform:rotate(-32deg)}@keyframes footprint-fade{70%{opacity:.65}to{opacity:0}}.player__collider{position:absolute;top:0;right:0;bottom:0;left:0;border:1px dashed rgba(234,221,180,.28);border-radius:50%}.player--downed .player__sprite{transform:translate(5px,13px) rotate(90deg);filter:grayscale(.7) brightness(.7)}.player--downed .player__nickname{bottom:25px;color:#e4aaa3;border-color:#ca6358b3}.player--downed .player__weapon,.player--downed .player__collider{display:none}.player--remote{transition:transform 90ms linear;will-change:transform}.party-game-badge{position:fixed!important;left:auto!important;right:12px!important;top:12px!important;bottom:auto!important;z-index:34;display:grid!important;visibility:visible!important;min-width:136px;padding:7px 10px;border:1px solid #76633c;border-radius:8px;color:#cbd1bd;background:#0d150df0;box-shadow:0 5px 16px #00000073}.party-game-badge span,.party-game-badge small{font-size:10px;letter-spacing:.06em}.party-game-badge strong{color:#f1d77f;font-size:18px;letter-spacing:.14em}.controls{margin:8px 2px 0;color:#8e9c89;font-size:13px}.merchant{position:absolute;width:30px;height:34px;z-index:4;image-rendering:pixelated;filter:drop-shadow(0 2px 1px #0a0d09)}.merchant__sprite{position:absolute;top:0;right:0;bottom:0;left:0}.merchant__name{position:absolute;left:50%;transform:translate(-50%);white-space:nowrap;border-radius:8px;background:#131c11eb}.merchant__name{bottom:48px;padding:2px 7px;color:#f0d887;font-size:10px}.merchant__head{position:absolute;left:8px;top:3px;width:15px;height:12px;border:2px solid #513621;border-radius:2px;background:#dba872}.merchant__head i{position:absolute;right:2px;top:4px;width:2px;height:2px;background:#20251d;box-shadow:-7px 0 #20251d}.merchant__hair{position:absolute;left:7px;top:0;width:17px;height:7px;border:2px solid #38291d;border-radius:3px 3px 0 0;background:#594026;z-index:2}.merchant__body{position:absolute;left:8px;top:14px;box-sizing:border-box;width:15px;height:13px;border:2px solid #38301f;border-radius:2px 2px 0 0;background:#6f7444;z-index:2}.merchant__arm{position:absolute;top:15px;width:5px;height:13px;border:2px solid #513621;border-radius:2px;background:linear-gradient(#6f7444 0,#6f7444 45%,#dba872 46%);transform-origin:top;z-index:3}.merchant__arm--left{left:2px;transform:rotate(8deg)}.merchant__arm--right{right:1px;transform:rotate(-8deg)}.merchant__legs{position:absolute;left:8px;top:27px;width:15px;height:8px;border-top:2px solid #302b21;z-index:1}.merchant__legs:before,.merchant__legs:after{content:"";position:absolute;top:0;width:5px;height:8px;background:#4a4130}.merchant__legs:before{left:0}.merchant__legs:after{right:0}button{border:1px solid #536550;border-radius:7px;padding:10px 13px;cursor:pointer;color:#edf0e5;background:#2c3a2a}button:hover{background:#3c5039}button.danger{border-color:#82544b;background:#653e37}.game-shell--mobile{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;padding:0;overflow:hidden;overscroll-behavior:none}.game-shell--mobile .party-game-badge{left:auto!important;right:12px!important;top:max(10px,env(safe-area-inset-top))!important;bottom:auto!important;display:flex!important;align-items:center;gap:7px;min-width:0;padding:5px 8px;border-radius:6px}.game-shell--mobile .party-game-badge span{display:none}.game-shell--mobile .party-game-badge strong{font-size:12px;letter-spacing:.1em}.game-shell--mobile .party-game-badge small{font-size:9px}.game-shell--mobile .map-viewport{position:relative;width:100vw;max-width:none;height:100%;margin:0;border-radius:0;box-shadow:inset 0 0 0 3px #241a12,inset 0 0 0 5px #85613d,inset 0 0 14px #04080480}.game-shell--mobile .camera-world{transition:transform 40ms linear;will-change:transform}.survival-hud{position:absolute;top:0;right:0;bottom:0;left:0;z-index:14;pointer-events:none;font-family:Inter,system-ui,sans-serif}.survival-hud__vitals{position:absolute;left:max(12px,env(safe-area-inset-left));top:max(10px,env(safe-area-inset-top));padding:6px 8px;border-radius:7px;background:#0a0f0a9e;filter:drop-shadow(0 3px 3px rgba(0,0,0,.55))}.hud-hearts,.hud-armor{display:flex;gap:3px;height:16px}.hud-hearts{align-items:center;margin-top:1px}.hud-hearts span{width:14px;height:13px;background:#d94a43;clip-path:polygon(0 15%,14% 15%,14% 0,43% 0,50% 15%,57% 0,86% 0,86% 15%,100% 15%,100% 54%,86% 54%,86% 69%,71% 69%,71% 85%,57% 85%,57% 100%,43% 100%,43% 85%,29% 85%,29% 69%,14% 69%,14% 54%,0 54%);filter:drop-shadow(1px 0 #5d211f) drop-shadow(-1px 0 #5d211f) drop-shadow(0 1px #5d211f) drop-shadow(0 -1px #5d211f)}.hud-hearts span.half{background:linear-gradient(90deg,#d94a43 50%,#302b29 50%)}.hud-hearts span.empty{background:#302b29}.hud-armor{align-items:center;height:16px;gap:3px}.hud-armor span{position:relative;width:14px;height:13px;background:#252c2c;clip-path:polygon(0 0,29% 0,29% 15%,43% 15%,43% 31%,57% 31%,57% 15%,71% 15%,71% 0,100% 0,100% 46%,86% 46%,86% 100%,14% 100%,14% 46%,0 46%);filter:drop-shadow(1px 0 #050706) drop-shadow(-1px 0 #050706) drop-shadow(0 1px #050706) drop-shadow(0 -1px #050706)}.hud-armor span.full{background:linear-gradient(90deg,#dce9e7 0,#dce9e7 29%,#9fb8bc 29%,#9fb8bc 71%,#526d76 71%)}.hud-armor span.half{background:linear-gradient(90deg,#a9c1c4 50%,#252c2c 50%)}.hud-armor i{position:absolute;left:3px;top:3px;width:3px;height:2px;background:#ffffff8c;box-shadow:2px 2px #fff3}.hud-armor span.empty i{opacity:.12}.day-announcement{position:absolute;left:50%;top:45%;display:grid;place-items:center;gap:10px;transform:translate(-50%,-50%);animation:day-announcement 1.8s ease-in-out forwards}.day-announcement strong{padding:7px 15px;border:1px solid rgba(126,125,93,.35);border-radius:8px;color:#c8c9a9;background:#0c110edb;font:700 24px/1 Georgia,serif;letter-spacing:.08em;text-shadow:0 2px 4px #020403;box-shadow:0 5px 22px #000000a6}.day-announcement__sun{position:relative;isolation:isolate;width:44px;height:44px;border:3px solid #8a5a12;border-radius:50%;background:radial-gradient(circle at 36% 30%,#fff59a 0,#fff59a 5px,#ffd83d 17px,#e8a914);box-shadow:inset -5px -5px #a6680847,0 0 18px #ffcf2a85;image-rendering:pixelated;animation:day-sun-rise 1.8s steps(8,end) forwards}.day-announcement__sun i{position:absolute;left:15px;top:-17px;z-index:-1;width:8px;height:11px;background:#f4bd24;clip-path:polygon(50% 0,100% 100%,0 100%);transform-origin:4px 36px;filter:drop-shadow(0 1px #8a5a12) drop-shadow(0 -1px #8a5a12) drop-shadow(1px 0 #8a5a12) drop-shadow(-1px 0 #8a5a12)}.day-announcement__sun i:nth-child(2){transform:rotate(45deg)}.day-announcement__sun i:nth-child(3){transform:rotate(90deg)}.day-announcement__sun i:nth-child(4){transform:rotate(135deg)}.day-announcement__sun i:nth-child(5){transform:rotate(180deg)}.day-announcement__sun i:nth-child(6){transform:rotate(225deg)}.day-announcement__sun i:nth-child(7){transform:rotate(270deg)}.day-announcement__sun i:nth-child(8){transform:rotate(315deg)}@keyframes day-announcement{0%{opacity:0;transform:translate(-50%,25px) scale(.75)}20%,72%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-90px) scale(1.08)}}@keyframes day-sun-rise{0%{transform:translateY(55px) scale(.5)}25%,70%{transform:translateY(0) scale(1)}to{transform:translateY(-18px) scale(1.12)}}.mobile-controls{position:fixed;left:0;right:0;bottom:10px;z-index:18;display:flex;align-items:end;justify-content:space-between;padding:0 10px;pointer-events:none;touch-action:none}.mobile-controls button{pointer-events:auto;user-select:none;-webkit-user-select:none;touch-action:none}.mobile-pause{position:fixed;right:12px;top:62px;width:38px;height:38px;padding:8px;border-radius:50%}.mobile-pause svg{width:100%;height:100%;fill:#e2ecd9;stroke:none}.mobile-controls button:not(.mobile-attack){border-color:#64785f!important;background:#394c35f0!important}.mobile-actions .mobile-interact,.mobile-actions .mobile-inventory,.mobile-actions .mobile-repair,.mobile-actions .mobile-revive,.mobile-actions .mobile-night,.mobile-actions .mobile-attack{border-color:#303a31!important;background:linear-gradient(145deg,#87a07b,#293d2f 75%)!important;box-shadow:inset 0 0 0 2px #b4c5a959,0 5px 14px #0006}.mobile-actions svg{width:20px;height:20px;fill:none;stroke:#e2ecd9;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.mobile-joystick{width:96px;height:96px;display:grid;grid-template:repeat(3,30px) / repeat(3,30px);gap:3px;padding:0;border-radius:50%;background:#0c130c9e}.mobile-direction{padding:0;border-radius:50%;font-size:16px;background:#41543ce6}.mobile-direction--up{grid-area:1 / 2}.mobile-direction--left{grid-area:2 / 1}.mobile-direction--right{grid-area:2 / 3}.mobile-direction--down{grid-area:3 / 2}.mobile-joystick__center{grid-area:2 / 2;border-radius:50%;background:#74876973}.mobile-actions{width:146px;display:grid;grid-template-columns:repeat(3,44px);align-items:end;justify-content:end;gap:7px}.mobile-actions button{width:44px;height:44px;padding:0;border-radius:50%;font-size:17px;font-weight:800;box-shadow:0 5px 14px #0006}@media (max-width: 640px){.device-grid{grid-template-columns:1fr}.device-card{min-height:145px}}.start-menu,.difficulty-screen,.device-screen,.setup-screen,.party-screen,.pause-menu,.trade-window,.victory-screen,.defeat-screen{font-family:Trebuchet MS,Inter,system-ui,sans-serif}.start-menu h1,.difficulty-screen h1,.device-screen h1,.setup-screen h1,.party-screen h1,.pause-menu h2,.trade-window h2,.victory-screen h2,.defeat-screen h2{font-family:Palatino Linotype,Book Antiqua,Georgia,serif;font-weight:700;letter-spacing:.035em}.setup-card strong,.difficulty-card strong,.device-card strong,.party-options button,.party-code strong,.auth-tabs button,.auth-form button,.trade-buy{font-family:Trebuchet MS,Inter,system-ui,sans-serif;font-weight:700;letter-spacing:.045em}.difficulty-screen{width:min(900px,100%);min-height:100vh;margin:auto;display:flex;flex-direction:column;justify-content:center;padding:36px 20px;text-align:center}.difficulty-screen>p{margin:0;color:#91a08b;text-transform:uppercase;letter-spacing:.18em;font-size:12px}.difficulty-screen h1{margin:5px 0 32px;color:#e7d7a1;font-size:clamp(44px,8vw,76px);font-style:italic;text-shadow:0 3px #3b2c20,0 8px 22px rgba(0,0,0,.48)}.difficulty-screen h2{margin:0 0 18px;color:#b9c3b3;font-size:18px;font-weight:500}.difficulty-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.difficulty-card{min-height:175px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-color:#425540;background:#1a251a}.difficulty-card:hover{transform:translateY(-3px);border-color:#809477;background:#253525}.difficulty-card strong{color:#e3c66f;font-size:22px;letter-spacing:.08em}.difficulty-card span{margin:7px 0 15px;color:#eef0e7}.difficulty-card small{max-width:190px;color:#95a190;line-height:1.4}.device-screen{width:min(760px,100%);min-height:100vh;margin:auto;display:flex;flex-direction:column;justify-content:center;padding:36px 20px;text-align:center}.device-screen>p{margin:0;color:#91a08b;text-transform:uppercase;letter-spacing:.18em;font-size:12px}.device-screen h1{margin:7px 0 28px;color:#e7d7a1;font-size:clamp(34px,6vw,54px)}.device-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.device-card{min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-color:#425540;background:#1a251a}.device-card:hover{transform:translateY(-3px);border-color:#809477;background:#253525}.device-card strong{margin:14px 0 7px;color:#e3c66f;font-size:20px;letter-spacing:.055em}.device-card small{color:#95a190}.device-phone{position:relative;display:block;width:38px;height:62px;border:4px solid #303a31;border-radius:8px;background:linear-gradient(145deg,#78906d,#263a2c 72%);box-shadow:inset 0 0 0 2px #b4c5a9,5px 7px 5px #0000004d}.device-phone i{position:absolute;left:11px;top:3px;width:10px;height:2px;border-radius:2px;background:#202920}.device-phone b{position:absolute;left:13px;bottom:3px;width:7px;height:7px;border:1px solid #a9b9a0;border-radius:50%}.device-monitor{position:relative;display:block;width:78px;height:51px;border:5px solid #303a31;border-radius:5px;background:linear-gradient(145deg,#87a07b,#293d2f 75%);box-shadow:inset 0 0 0 2px #b4c5a9,6px 8px 6px #0000004d}.device-monitor i{position:absolute;left:31px;bottom:-16px;width:8px;height:13px;background:#485449}.device-monitor b{position:absolute;left:19px;bottom:-20px;width:33px;height:5px;border-radius:4px;background:#303a31}.device-back{align-self:center;margin-top:18px;color:#aeb9aa;background:transparent}.setup-screen,.party-screen{width:min(760px,100%);min-height:100vh;margin:auto;display:flex;flex-direction:column;justify-content:center;padding:36px 20px;text-align:center}.setup-screen>p,.party-screen>p{margin:0;color:#91a08b;text-transform:uppercase;letter-spacing:.18em;font-size:12px}.setup-screen h1,.party-screen h1{margin:7px 0 28px;color:#e7d7a1;font-size:clamp(34px,6vw,54px)}.setup-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.setup-card{min-height:175px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-color:#425540;background:#1a251a}.setup-card:hover{transform:translateY(-3px);border-color:#809477;background:#253525}.setup-card>span{margin-bottom:14px;color:#d8bd67;font-size:25px}.setup-card strong{color:#e3c66f;font-size:20px}.setup-card small{max-width:240px;margin-top:9px;color:#95a190;line-height:1.4}.mode-people{height:48px;display:flex;align-items:end;justify-content:center;gap:3px}.mode-people i{position:relative;display:block;width:27px;height:25px;border:2px solid #594a2b;border-radius:13px 13px 5px 5px;background:linear-gradient(#ddc16c,#9e7f3d);box-shadow:0 3px 4px #0b100b}.mode-people i:before{content:"";position:absolute;left:5px;top:-18px;width:14px;height:14px;border:2px solid #594a2b;border-radius:50%;background:#d8b86a}.mode-people--two i:first-child{scale:.88;translate:3px 2px}.mode-people--two i:last-child{translate:-3px 0}.party-screen{width:min(620px,100%)}.party-screen>label{display:grid;gap:9px;margin-bottom:18px;color:#b9c3b3;text-align:left}.party-options{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.party-options button{color:#9ca997;background:#172117}.party-options button.active{border-color:#d0b35d;color:#ffe99c;background:#34452f}.party-code{margin:4px 0 18px;padding:16px;border:1px solid #52634e;border-radius:9px;background:#111a11}.party-code small{display:block;color:#8f9b8b}.party-code strong{display:block;margin-top:5px;color:#ebcf72;font-size:30px;letter-spacing:.18em}.party-screen>input{margin-bottom:10px;padding:14px;border:1px solid #52634e;border-radius:8px;outline:none;color:#f1ead4;background:#101710;text-align:center;text-transform:uppercase;font:700 21px/1 Inter,sans-serif;letter-spacing:.15em}.party-note{color:#9eaa99}.party-error{margin:-2px 0 10px;color:#df746a}.victory-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#070e08d1;z-index:30}.victory-screen{width:min(430px,100%);padding:34px;border:1px solid #718369;border-radius:14px;text-align:center;background:#1b291b;box-shadow:0 24px 80px #050805}.victory-jumper{position:relative;width:30px;height:30px;margin:4px auto 12px;image-rendering:pixelated;filter:drop-shadow(0 3px 2px rgba(4,8,4,.65));animation:victory-double-jump 2s ease-in-out 1}.victory-jumper:after{content:"";position:absolute;left:2px;bottom:-7px;width:27px;height:7px;border-radius:50%;background:#04090480;animation:victory-jump-shadow 2s ease-in-out 1}@keyframes victory-double-jump{0%,50%,to{transform:translateY(0) scaleY(1)}5%,45%,55%,95%{transform:translateY(2px) scaleY(.92)}25%,75%{transform:translateY(-25px) rotate(3deg)}}@keyframes victory-jump-shadow{0%,50%,to{transform:scale(1);opacity:.65}25%,75%{transform:scale(.55);opacity:.2}}.victory-screen__sun{display:block;margin-bottom:8px;color:#e6c66d;font-size:42px}.victory-screen p{margin:0 0 5px;color:#9eae98;text-transform:uppercase;letter-spacing:.12em;font-size:12px}.victory-screen h2{margin:0 0 24px;font-size:28px}.victory-time{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;padding:14px;border:1px solid #3b4d38;border-radius:8px;background:#121b12}.victory-time span{color:#9eae98;font-size:13px}.victory-time strong{color:#e6c66d;font-size:24px;font-variant-numeric:tabular-nums}.defeat-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#140405e0;z-index:30}.defeat-screen{width:min(430px,100%);padding:36px;border:1px solid #9e3737;border-radius:14px;text-align:center;background:#261213;box-shadow:0 0 70px #aa1e1e40}.defeat-screen>span{color:#d74747;font-size:48px}.defeat-screen p{margin:8px 0 3px;color:#b98c8c;text-transform:uppercase;letter-spacing:.12em;font-size:12px}.defeat-screen h2{margin:0 0 18px;color:#ef4545;font-size:34px;letter-spacing:.08em}.defeat-screen strong{display:block;margin-bottom:24px;color:#d8b7b7;font-size:14px;font-weight:500}.defeat-screen button{border-color:#9e3737;background:#8d2929}.defeat-screen button:hover{background:#ad3434}@media (max-width: 640px){.start-menu{grid-template-columns:1fr;gap:26px;padding-top:28px}.start-menu__intro{text-align:center}.start-menu__intro h1{font-size:50px}.start-menu__intro h2{margin-inline:auto;font-size:19px}.start-menu__intro ul{display:none}.difficulty-grid{grid-template-columns:1fr}.difficulty-card{min-height:130px}.setup-grid{grid-template-columns:1fr}}.session-loading{min-height:100vh;display:grid;place-items:center;color:#aab5a5}.start-menu{width:min(980px,100%);min-height:100vh;margin:auto;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:60px;padding:40px 24px}.start-menu__intro>p{margin:0;color:#91a08b;text-transform:uppercase;letter-spacing:.18em;font-size:12px}.start-menu__intro h1{margin:6px 0 20px;color:#e7d7a1;font-size:clamp(50px,8vw,82px);font-style:italic;text-shadow:0 3px #3b2c20,0 8px 24px #050805}.start-menu__intro h2{max-width:430px;margin:0 0 28px;color:#d7ddd2;font-size:24px}.start-menu__intro ul{margin:0;padding:0;list-style:none;color:#98a593;line-height:2}.start-menu__intro li:before{content:"◆";margin-right:10px;color:#d0ac59;font-size:9px}.auth-card{padding:24px;border:1px solid #465844;border-radius:14px;background:#182218;box-shadow:0 20px 60px #080c08}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:22px;padding:4px;border-radius:9px;background:#101810}.auth-tabs button{padding:9px;color:#83907f;background:transparent}.auth-tabs button.active{color:#f0ead5;background:#2d3d2b}.auth-form{display:flex;flex-direction:column;gap:15px}.auth-form label{display:flex;flex-direction:column;gap:7px;color:#abb5a6;font-size:13px;text-align:left}.auth-form input{width:100%;padding:12px 13px;border:1px solid #3c4b3a;border-radius:8px;outline:none;color:#eef1e8;background:#101710;font:inherit}.auth-form input:focus{border-color:#84977b;box-shadow:0 0 0 3px #84977b1f}.auth-form button[type=submit]{margin-top:5px;background:#745037}.auth-form button[type=submit]:hover{background:#8b6042}.auth-message{margin:14px 0 0;color:#d6a66c;font-size:13px;line-height:1.45}.auth-divider{display:flex;align-items:center;gap:10px;margin:17px 0 12px;color:#73806f;font-size:12px}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:#344132}.google-button,.guest-button{width:100%}.google-button{display:flex;align-items:center;justify-content:center;gap:9px;margin-bottom:9px;border:1px solid #52634e;color:#d9dfd4;background:transparent}.google-button:hover{color:#d9dfd4;background:#263324}.google-button span{display:grid;width:20px;height:20px;place-items:center;border-radius:50%;color:transparent;background:conic-gradient(from -38deg,#4285f4 0,#4285f4 25%,#34a853 25%,#34a853 43%,#fbbc05 43%,#fbbc05 67%,#ea4335 67%,#ea4335 82%,#4285f4 82%);background-clip:text;-webkit-background-clip:text;font-family:Arial,sans-serif;font-size:17px;font-weight:800;line-height:1;filter:drop-shadow(0 1px 1px rgba(0,0,0,.2))}.guest-button{border:1px solid #52634e;color:#d9dfd4;background:transparent}.guest-button:hover{background:#263324}.pause-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#060a07d1;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:40}.pause-menu{width:min(330px,100%);display:flex;flex-direction:column;gap:10px;padding:28px;border:1px solid #687861;border-radius:14px;text-align:center;background:#172117;box-shadow:0 24px 80px #040704}.pause-menu h2{margin:0 0 12px;color:#ede6cd;font-size:27px;letter-spacing:.12em}.pause-menu button{width:100%}.pause-menu .pause-menu__end{border-color:#7d4b45;color:#e7c6c1;background:#4f302d}.game-settings{width:min(620px,calc(100vw - 24px));max-height:calc(100vh - 24px);overflow:auto;padding:22px;border:1px solid #687861;border-radius:14px;background:#172117;box-shadow:0 24px 80px #040704}.game-settings h2{margin:0 0 14px;text-align:center;color:#ede6cd}.game-settings .lobby-settings{margin-bottom:14px}.controls-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;margin:14px 0}.controls-settings label{display:grid;grid-template-columns:1fr minmax(90px,1.25fr);align-items:center;gap:8px;color:#cbd2c6;font-size:13px}.controls-settings button{min-height:38px;padding:7px}.controls-settings button.active{color:#f1dfa0;border-color:#c5a85c}@media (max-width: 560px){.controls-settings{grid-template-columns:1fr}}.trade-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;display:grid;place-items:center;padding:20px;background:#070b07c7;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.trade-window{width:min(440px,100%);max-height:calc(100dvh - 24px);padding:22px;overflow-y:auto;border:1px solid #8e7544;border-radius:13px;background:#1b2518;box-shadow:0 24px 80px #050805}.trade-window header{display:flex;align-items:start;justify-content:space-between}.trade-window small{color:#9eaa98;text-transform:uppercase;letter-spacing:.12em}.trade-window h2{margin:4px 0 0;color:#e7cf82;font-size:28px}.trade-window header button{padding:4px 10px;font-size:21px}.trade-offer{display:flex;align-items:center;gap:24px;margin:20px 0;padding:20px;border:1px solid #3e5039;border-radius:9px;background:#121a11}.trade-list{display:grid;gap:12px;margin-top:18px}.trade-list .trade-offer{margin:0}.trade-offer--owned{opacity:.6}.trade-offer>div{flex:1}.trade-offer h3{margin:0 0 7px;color:#dfcc8b}.trade-offer p{margin:0;color:#b8c1b2;font-size:14px;line-height:1.5}.trade-offer .trade-buff{color:#73c982}.trade-offer .trade-penalty{margin-top:8px;color:#df6861;font-size:13px}.trade-spear{position:relative;flex:0 0 5px;width:5px;height:55px;margin-left:10px;border:1px solid #422818;background:linear-gradient(90deg,#59341f,#b57a42 52%,#704326);transform:rotate(35deg)}.trade-spear i{position:absolute;left:-6px;top:-16px;width:15px;height:19px;border:1px solid #263238;background:linear-gradient(135deg,#dce7e5,#78898d 58%,#b7c4c3);clip-path:polygon(50% 0,100% 64%,50% 100%,0 64%)}.trade-spear:after{content:"";position:absolute;left:-2px;top:8px;width:7px;height:12px;background:repeating-linear-gradient(0deg,#39251a 0,#39251a 3px,#d0a35d 3px,#d0a35d 4px)}.trade-axe{position:relative;flex:0 0 8px;width:8px;height:48px;margin-left:12px;border:1px solid #422818;border-radius:2px;background:linear-gradient(90deg,#59341f,#c18a4d 52%,#704326);transform:rotate(-35deg)}.trade-axe i{position:absolute;left:-10px;top:-6px;width:24px;height:15px;border:2px solid #293437;background:linear-gradient(135deg,#aab5b3,#596669 70%);clip-path:polygon(0 9%,72% 0,100% 25%,91% 78%,68% 100%,0 82%,17% 50%)}.trade-axe:after{content:"";position:absolute;left:-2px;bottom:5px;width:10px;height:17px;border-bottom:2px solid #2f1e14;background:repeating-linear-gradient(0deg,#39251a 0,#39251a 3px,#d0a35d 3px,#d0a35d 4px)}.trade-sword{position:relative;flex:0 0 7px;width:7px;height:23px;margin:20px 0 0 12px;border:1px solid #422818;border-radius:2px;background:linear-gradient(90deg,#59341f,#c18a4d 52%,#704326);transform:rotate(35deg)}.trade-sword i{position:absolute;left:-4px;top:-24px;width:13px;height:28px;border:1px solid #354044;background:linear-gradient(90deg,#69777a,#aeb9b7 52%,#7f8d8e);clip-path:polygon(50% 0,100% 25%,82% 100%,18% 100%,0 25%);filter:drop-shadow(0 2px #263033) drop-shadow(1px 0 #263033)}.trade-sword:before{content:"";position:absolute;left:-7px;top:-2px;width:19px;height:5px;border:1px solid #3a271a;background:#bd8749;z-index:2}.trade-sword:after{content:"";position:absolute;left:-2px;top:7px;width:9px;height:13px;background:repeating-linear-gradient(0deg,#39251a 0,#39251a 3px,#d0a35d 3px,#d0a35d 4px)}.trade-buy{width:100%;margin-top:12px;border-color:#8d733c;background:#6d582c}.trade-buy:disabled{cursor:not-allowed;opacity:.45}.lobby-settings{width:min(340px,100%);display:grid;gap:8px;margin-top:18px;padding:10px 12px;border:1px solid #384735;border-radius:9px;background:#121b11b8}.lobby-settings>label{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#aeb7a8;font-size:13px}.language-buttons{display:flex;gap:4px}.language-buttons button{padding:4px 7px;color:#879482;background:#111a11;font-size:11px}.language-buttons button.active{border-color:#c5a85c;color:#fff0af;background:#354430}.volume-control{display:grid;grid-template-columns:15px minmax(90px,140px) 38px;align-items:center;gap:7px}.volume-control input{width:100%;accent-color:#c5a85c}.volume-control strong{color:#e6d392;font-size:12px;text-align:right}.map-water{position:absolute;z-index:2;font-size:25px;filter:drop-shadow(0 3px 2px #244457);animation:water-float 1.4s ease-in-out infinite}@keyframes water-float{50%{translate:0 -3px}}.map-zombie{position:absolute;left:0;top:0;width:30px;height:36px;z-index:3;filter:drop-shadow(0 3px 2px #111a12);animation:zombie-walk .42s steps(2) infinite;transition:transform .11s linear;will-change:transform}.zombie-sprite{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:center}.map-zombie--left .zombie-sprite{transform:scaleX(-1)}.zombie-head{position:absolute;left:7px;top:5px;width:17px;height:14px;border:2px solid #263326;border-radius:3px;background:#75915c}.zombie-head i,.zombie-head b{position:absolute;top:5px;width:3px;height:3px;background:#d8d56e}.zombie-head i{left:2px}.zombie-head b{right:2px}.zombie-driver-cap{position:absolute;left:-4px;top:-9px;width:21px;height:8px;z-index:4;border:2px solid #242925;border-radius:8px 8px 2px 2px;background:linear-gradient(#62685e 0,#62685e 45%,#373d38 46%);box-shadow:inset 0 2px #7e8477}.zombie-driver-cap:after{content:"";position:absolute;left:8px;bottom:-5px;width:15px;height:5px;border:2px solid #242925;border-radius:0 5px 5px 0;background:#343a36;transform:skew(-18deg)}.zombie-body{position:absolute;left:5px;bottom:0;width:21px;height:19px;border:2px solid #29342d;background:#4d5f58}.zombie-arm{position:absolute;left:20px;width:16px;height:5px;border:1px solid #334333;border-radius:0 3px 3px 0;background:#75915c;z-index:2;transform-origin:left}.zombie-arm--top{top:17px}.zombie-arm--bottom{top:23px}.zombie-leg{position:absolute;bottom:-5px;width:7px;height:10px;border:2px solid #29342d;background:#3e4a49}.zombie-leg--one{left:6px}.zombie-leg--two{right:4px}.zombie-health{position:absolute;left:-1px;top:-7px;width:32px;height:6px;overflow:hidden;border:2px solid #171b17;border-radius:1px;background:repeating-linear-gradient(90deg,#372b29 0,#372b29 4px,#221c1b 4px,#221c1b 5px);box-shadow:0 2px #101310,inset 0 1px #55413d}.zombie-health i{display:block;height:100%;background:repeating-linear-gradient(90deg,#7fb05d 0,#7fb05d 4px,#5d8b43 4px,#5d8b43 5px);box-shadow:inset 0 1px #b4d47b;transition:width .12s steps(2)}.map-zombie--hit .zombie-sprite{filter:brightness(2) sepia(1) saturate(4)}.map-zombie.map-zombie--dying{pointer-events:none;animation:zombie-death .55s ease-out forwards}.map-zombie.map-zombie--dying .zombie-sprite{animation:zombie-fall .55s ease-out forwards;transform-origin:center bottom}@keyframes zombie-death{70%{opacity:1}to{opacity:0}}@keyframes zombie-fall{to{transform:rotate(82deg) translate(8px,5px);filter:grayscale(1) brightness(.55)}}.map-zombie--spawning .zombie-sprite{animation:zombie-rise 1s ease-out both}.map-zombie--spawning:after{content:"";position:absolute;left:-9px;bottom:-8px;width:48px;height:13px;border-radius:50%;background:radial-gradient(ellipse,#8b7656 0 18%,#675943 20% 42%,transparent 45%);animation:zombie-dirt 1s ease-out both;z-index:-1}.map-zombie--boss.map-zombie--spawning .zombie-sprite{animation-duration:1.5s}.map-zombie--boss.map-zombie--spawning:after{animation-duration:1.5s}.map-zombie strong{position:absolute;left:50%;top:-17px;transform:translate(-50%);color:#ff3d32;font-size:8px;font-weight:900;letter-spacing:.1em;text-shadow:0 1px 2px #300}.zombie-hammer{position:absolute;left:7px;top:-8px;width:4px;height:19px;border:1px solid #422818;background:linear-gradient(90deg,#59341f,#b57a42 52%,#704326);transform:rotate(25deg);transform-origin:bottom;z-index:3}.zombie-hammer i{position:absolute;left:-5px;top:-3px;width:13px;height:7px;border:2px solid #354044;background:#8e9a98;z-index:2}.zombie-hammer:after{content:"";position:absolute;left:-2px;top:8px;width:6px;height:7px;background:repeating-linear-gradient(0deg,#39251a 0,#39251a 2px,#d0a35d 2px,#d0a35d 3px)}.zombie-tnt{position:absolute;left:10px;top:-4px;width:13px;height:17px;border:2px solid #48201c;border-radius:2px;background:#c74736;color:#fff4dc;font:900 5px/17px sans-serif;text-align:center;z-index:4;transform:rotate(8deg);box-shadow:inset 3px 0 #e76b50}.zombie-tnt:before{content:"";position:absolute;left:5px;top:-7px;width:5px;height:7px;border-left:2px solid #352a21;transform:rotate(25deg)}.zombie-staff{position:absolute;left:12px;top:-18px;width:4px;height:35px;border:1px solid #3b2517;background:linear-gradient(90deg,#5f3820,#b0763d 55%,#704225);transform:rotate(12deg);transform-origin:bottom;z-index:4}.zombie-staff:before{content:"";position:absolute;left:-6px;top:-10px;width:14px;height:14px;border:2px solid #33231b;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffb071 0,#ffb071 16%,#d34b3f 20%,#d34b3f 58%,#7d292d 62%);filter:drop-shadow(0 0 3px #e96b43)}.zombie-staff i{position:absolute;left:-4px;top:-3px;width:10px;height:5px;border:2px solid #6c541e;border-radius:50%;background:#c9a948}.zombie-headband{position:absolute;left:6px;top:8px;width:19px;height:4px;border:1px solid #4d1f1b;background:#cf5546;z-index:4}.zombie-headband:after{content:"";position:absolute;right:-7px;top:1px;width:8px;height:3px;background:#cf5546;transform:rotate(18deg)}.zombie-helmet{position:absolute;left:-3px;top:-7px;width:19px;height:10px;border:2px solid #303a3d;border-radius:7px 7px 1px 1px;background:linear-gradient(90deg,#667276,#b0b9b8 48%,#596569);box-shadow:inset 0 2px #d5dcda;z-index:3}.zombie-helmet:after{content:"";position:absolute;left:-3px;bottom:-4px;width:23px;height:4px;border:1px solid #303a3d;background:#778387}.zombie-chestplate{position:absolute;top:-1px;right:1px;bottom:0;left:1px;border:2px solid #303a3d;border-radius:4px 4px 1px 1px;background:linear-gradient(135deg,#aeb7b6 0,#aeb7b6 38%,#687579 40%,#687579 63%,#919c9e 65%);box-shadow:inset 0 2px #d8dfdd}.zombie-chestplate:after{content:"";position:absolute;left:7px;top:1px;width:2px;height:12px;background:#4c575a}.zombie-explosion{position:absolute;width:1px;height:1px;z-index:8;pointer-events:none}.zombie-explosion__flash,.zombie-explosion__smoke{position:absolute;left:0;top:0;border-radius:50%;transform:translate(-50%,-50%)}.zombie-explosion__flash{width:70px;height:70px;background:radial-gradient(circle,#fff8b5 0 12%,#ffc52f 13% 34%,#ed5b25 35% 55%,transparent 57%);animation:zombie-blast .5s ease-out forwards}.zombie-explosion__smoke{width:54px;height:54px;border:9px dotted #4b4740;animation:zombie-smoke .52s ease-out forwards}@keyframes zombie-blast{0%{scale:.15;opacity:1}55%{scale:1;opacity:1}to{scale:1.35;opacity:0}}@keyframes zombie-smoke{0%{scale:.25;opacity:.9;rotate:0deg}to{scale:1.65;opacity:0;rotate:35deg}}@keyframes zombie-walk{50%{translate:0 2px}}.map-zombie .zombie-arm--top{animation:zombie-arms .42s steps(2) infinite}.map-zombie--sprinter,.map-zombie--sprinter .zombie-arm--top{animation-duration:.21s}.map-zombie--armored,.map-zombie--armored .zombie-arm--top{animation-duration:.84s}@keyframes zombie-arms{50%{transform:rotate(7deg)}}@keyframes zombie-rise{0%{translate:0 30px;clip-path:inset(0 0 82% 0);filter:brightness(.65)}45%{clip-path:inset(0 0 42% 0)}to{translate:0;clip-path:inset(0);filter:none}}@keyframes zombie-dirt{0%{scale:.3;opacity:0}35%{scale:1.1;opacity:.9}to{scale:1.45;opacity:0}}.abandoned-car{position:absolute;width:154px;height:78px;z-index:1;filter:drop-shadow(7px 8px 4px rgba(18,25,17,.45))}.car-ground-shadow{position:absolute;left:2px;right:-8px;bottom:1px;height:20px;border-radius:50%;background:#121f127a;transform:skew(-14deg)}.car-body{position:absolute;left:4px;right:3px;bottom:14px;height:40px;border:4px solid #34352f;border-radius:9px 15px 6px 7px;background:radial-gradient(ellipse at 80% 38%,#713f2b 0 5px,transparent 6px),radial-gradient(ellipse at 56% 72%,#5d3528 0 7px,transparent 8px),repeating-linear-gradient(0deg,#585b4d 0,#585b4d 11px,#41453c 12px,#41453c 14px);box-shadow:inset 0 -8px #353a33,inset 6px 0 #6b6d59}.car-body:before{content:"";position:absolute;right:17px;top:7px;width:20px;height:10px;border-top:3px solid #30332e;border-radius:50%;transform:rotate(-8deg)}.car-body:after{content:"";position:absolute;left:55px;bottom:3px;width:12px;height:6px;background:#8a4c2f;clip-path:polygon(0 28%,32% 0,100% 20%,73% 100%,15% 82%);opacity:.8}.car-trunk{position:absolute;left:5px;top:34px;width:47px;height:31px;z-index:2;border:4px solid #34352f;border-radius:4px 2px 4px 8px;background:#202722;box-shadow:inset 0 5px #151b17}.car-trunk i{position:absolute;left:-5px;top:-20px;width:49px;height:19px;border:4px solid #34352f;border-radius:5px 4px 1px 1px;background:linear-gradient(#707161,#4b4e43);transform:rotate(-9deg);transform-origin:left bottom;box-shadow:inset 0 3px #898a73}.car-roof{position:absolute;left:38px;top:7px;width:83px;height:31px;border:4px solid #34352f;border-bottom:0;border-radius:17px 22px 0 0;background:radial-gradient(ellipse at 42% 5%,#3c4038 0 13px,transparent 14px),linear-gradient(90deg,#505347,#5b594a);transform:skew(-8deg) rotate(-1deg)}.car-window{position:absolute;top:14px;height:20px;border:3px solid #30332f;background:linear-gradient(42deg,transparent 46%,#9ba8a2 48% 51%,transparent 53%),linear-gradient(112deg,transparent 53%,#83918d 55% 57%,transparent 59%),linear-gradient(145deg,#46595d,#202d2f 70%);box-shadow:inset 3px 2px #99aea629}.car-window--front{left:78px;width:38px;transform:skew(9deg)}.car-window--back{left:43px;width:31px;transform:skew(-8deg)}.car-door{position:absolute;left:74px;top:36px;width:47px;height:27px;border:2px solid #34352f;border-radius:2px 2px 8px;background:radial-gradient(ellipse at 36% 60%,#4b4e43 0 9px,transparent 10px);box-shadow:inset 0 -5px #41443b;transform:rotate(2deg);transform-origin:left top}.car-door:after{content:"";position:absolute;right:6px;top:5px;width:8px;height:2px;background:#292b28}.car-bumper{position:absolute;right:-5px;bottom:13px;width:17px;height:6px;border:2px solid #30312d;background:#666961;transform:rotate(12deg);transform-origin:left center}.car-wheel{position:absolute;bottom:4px;width:25px;height:25px;border:5px solid #252724;border-radius:50%;background:#555850}.car-wheel i{position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:50%;background:#92958a}.car-wheel--front{right:21px;bottom:1px;transform:scaleY(.72) rotate(-4deg)}.car-wheel--back{left:20px}.car-web{left:101px;top:9px;width:31px;height:27px;z-index:5;opacity:.8;transform:scaleX(-1) rotate(-4deg)}.wrench-found{position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;display:grid;place-items:center;padding:20px;background:#070a08c2}.wrench-found__card{width:min(430px,100%);padding:24px;border:2px solid #70776e;border-radius:10px;color:#e8eadf;background:#1c241e;box-shadow:0 18px 65px #030503;text-align:center}.wrench-found__icon{position:relative;display:block;width:34px;height:72px;margin:0 auto 13px;transform:rotate(32deg)}.wrench-found__icon:before{content:"";position:absolute;left:12px;top:23px;width:10px;height:46px;border:3px solid #171d1f;border-radius:2px 2px 8px 8px;background:radial-gradient(circle at 50% 88%,#1c241e 0 3px,#758081 4px 6px,transparent 7px),linear-gradient(90deg,#303a3d 0,#303a3d 25%,#929d9c 26%,#929d9c 56%,#465255 57%);box-shadow:inset -2px 0 #252e31}.wrench-found__icon:after{content:"";position:absolute;left:3px;top:0;width:29px;height:32px;border:3px solid #171d1f;background:linear-gradient(100deg,#2d383b 0,#2d383b 26%,#929d9c 27%,#929d9c 55%,#424e51 56%);clip-path:polygon(0 0,34% 27%,60% 27%,90% 5%,100% 24%,73% 65%,63% 100%,28% 100%,19% 68%);filter:drop-shadow(0 2px #0d1112)}.wrench-found__icon i{position:absolute;left:10px;top:20px;width:15px;height:11px;z-index:3;border:2px solid #171d1f;background:repeating-linear-gradient(0deg,#354043 0,#354043 3px,#778283 3px,#778283 5px);clip-path:polygon(0 17%,100% 0,100% 83%,0 100%)}.wrench-found__icon i:after{content:"";position:absolute;right:-10px;top:-11px;width:11px;height:15px;background:#384447;clip-path:polygon(30% 0,100% 0,100% 82%,0 100%)}.wrench-found h2{margin:0 0 8px;color:#d6ddd8}.wrench-found p{margin:7px 0;color:#aeb9ae}.wrench-found button{margin-top:12px}
