﻿:root{font-family:'Arial Black','Microsoft YaHei',Arial,sans-serif;color:#252135;background:#151b30;font-synthesis:none;-webkit-tap-highlight-color:transparent;--ink:#252135;--yellow:#ffdc39;--cream:#fff4cd;--mint:#9ce25d;--cyan:#5bd1ea}*{box-sizing:border-box}html,body{margin:0;width:100%;min-height:100%;overflow:hidden}body{min-height:100dvh;display:grid;place-items:center;background-color:#151b30;background-image:radial-gradient(#ffffff0a 1px,transparent 1px),radial-gradient(ellipse at 50% 50%,#354666 0,#151b30 72%);background-size:8px 8px,100% 100%}button{font:inherit;cursor:pointer;touch-action:manipulation;color:inherit;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:4px solid var(--cyan);outline-offset:5px}button:disabled{cursor:default}button,svg,img{-webkit-user-drag:none}svg{width:24px;height:24px;flex-shrink:0}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.game{position:relative;height:94dvh;max-height:853px;aspect-ratio:9/16;width:auto;max-width:480px;overflow:hidden;isolation:isolate;background:#f5b644;border:4px solid var(--ink);border-radius:18px;box-shadow:12px 14px 0 #090e1b,0 0 0 1px #526275;user-select:none;container-type:inline-size}.arena,.menu{position:absolute;inset:0}.arena{overflow:hidden;transform-origin:50% 50%}.game.on-menu .arena{visibility:hidden}.field-art{position:absolute;inset:0;background:#f5b644 url('assets/field-comic.webp') center/100% 100% no-repeat;z-index:-1}.game-top{position:absolute;top:max(23px,env(safe-area-inset-top));left:23px;right:23px;display:flex;align-items:flex-start;justify-content:space-between;z-index:30;pointer-events:none}.game-top>*{pointer-events:auto}.square-button{width:43px;height:43px;border:3px solid var(--ink);border-radius:9px;background:var(--cream);box-shadow:3px 4px 0 var(--ink);display:grid;place-items:center;padding:8px;transition:transform .08s}.square-button svg{width:22px;height:22px}.square-button:active{transform:translate(2px,3px);box-shadow:1px 1px 0 var(--ink)}.wallet{min-width:118px;max-width:205px;height:53px;display:flex;align-items:center;gap:5px;border:3px solid var(--ink);border-radius:10px;background:var(--yellow);padding:7px 12px 7px 7px;box-shadow:4px 5px 0 var(--ink);transform:rotate(2deg);font-weight:900}.wallet>svg{width:32px;height:32px}.wallet>span{font-size:10px;align-self:flex-start;position:absolute;left:48px;top:5px}.wallet strong{font-size:24px;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-.8px;padding-top:10px;min-width:34px}.wallet.bump{animation:wallet-pop .26s cubic-bezier(.16,1.6,.5,1)}.playfield{position:absolute;inset:111px 8% 118px;touch-action:manipulation;z-index:2}.mole{position:absolute;width:88px;height:96px;transform:translate(-50%,-100%);background:none;border:0;padding:0;overflow:visible;cursor:pointer;touch-action:manipulation;isolation:isolate}.mole-mask{position:absolute;inset:9px 5px 1px;overflow:hidden;border-radius:0 0 38% 38% / 0 0 10% 10%;z-index:2}.mole-sprite{display:block;width:100%;height:100%;object-fit:contain;transform-origin:50% 92%;pointer-events:none;animation:mole-emerge .28s cubic-bezier(.2,1.4,.4,1) both,mole-taunt 1.7s ease-in-out .3s infinite;filter:drop-shadow(1px 2px 0 #53301b33)}.mole:after{content:'';position:absolute;left:22%;bottom:1px;width:56%;height:7px;background:#82511f33;border-radius:50%;filter:blur(1px);z-index:0;animation:shadow-pop .28s both}.mole.golden .mole-sprite{filter:sepia(.8) saturate(3) hue-rotate(356deg) brightness(1.12) drop-shadow(0 0 3px #ffff91)}.gold-crown{position:absolute;top:-6px;left:50%;transform:translateX(-50%) rotate(-10deg);color:#ffef5e;font-size:23px;line-height:1;z-index:4;filter:drop-shadow(1px 2px 0 var(--ink));pointer-events:none}.gold-crown svg{width:25px;height:25px}.mole.hit{pointer-events:none}.mole.hit .mole-sprite{animation:mole-bonk .58s linear forwards}.mole.leaving .mole-sprite{animation:mole-leave .27s ease-in forwards}.mole.hit:after,.mole.leaving:after{animation:shadow-pop .25s .3s reverse forwards}.mole.hit .gold-crown{animation:star-fly .45s ease-out forwards;--dx:12px;--dy:-55px;--spin:80deg}.impact-layer,.reward-layer{position:absolute;inset:0;pointer-events:none;overflow:visible}.impact-layer{z-index:17}.reward-layer{z-index:22}.impact{position:absolute;width:118px;height:110px;transform:translate(-50%,-50%);pointer-events:none}.impact-burst{position:absolute;inset:3px;background:#ffdf2c;clip-path:polygon(49% 0,58% 25%,81% 8%,78% 31%,100% 30%,84% 49%,100% 65%,76% 65%,84% 95%,59% 79%,48% 100%,40% 77%,13% 94%,23% 67%,0 66%,19% 49%,0 30%,28% 32%,24% 7%,43% 27%);filter:drop-shadow(2px 3px 0 var(--ink));animation:burst-hit .32s cubic-bezier(.1,.9,.25,1) forwards}.impact-burst:after{content:'';position:absolute;inset:11px;background:#fff9d7;clip-path:inherit}.impact-ring{position:absolute;width:66px;height:35px;left:26px;top:39px;border:5px solid var(--ink);border-radius:50%;animation:ring-hit .34s ease-out forwards}.impact-flash{position:absolute;inset:23px;background:#fffbdc;border-radius:50%;opacity:0;animation:flash-hit .11s linear forwards}.strike-hammer{position:absolute!important;width:108px!important;height:130px!important;right:-19px;top:-66px;overflow:visible;transform-origin:74% 94%;animation:hammer-smash .32s cubic-bezier(.15,.85,.25,1) forwards;filter:drop-shadow(3px 3px 0 #25213555);z-index:8}.impact-line{position:absolute;left:50%;top:50%;height:5px;width:28px;background:var(--ink);transform-origin:0 50%;animation:impact-streak .31s ease-out forwards}.hit-star{position:absolute;left:50%;top:35%;color:#fff5a9;font-size:24px;font-weight:900;line-height:1;text-shadow:2px 0 var(--ink),-2px 0 var(--ink),0 2px var(--ink),0 -2px var(--ink);animation:star-fly .51s ease-out forwards}.hit-star svg{width:22px;height:22px}.dirt{position:absolute;left:50%;top:66%;width:7px;height:7px;background:#b46b28;border:2px solid #503221;transform:rotate(25deg);animation:debris-fly .47s ease-out forwards}.arena.shaking{animation:arena-shake .21s linear}.reward{position:absolute;display:flex;align-items:center;gap:2px;white-space:nowrap;font-size:30px;line-height:1;font-weight:900;color:#fff5ba;text-shadow:2px 2px 0 var(--ink),-2px 2px 0 var(--ink),2px -2px 0 var(--ink),-2px -2px 0 var(--ink),0 4px 0 var(--ink);animation:reward-pop .72s cubic-bezier(.12,.9,.22,1) forwards;z-index:3;transform-origin:center}.reward>svg{width:29px;height:29px;filter:drop-shadow(1px 2px 0 var(--ink));animation:coin-spin .34s linear infinite}.reward.rich{font-size:35px}.reward.gold{font-size:40px;color:#ffdf2c}.reward.gold>svg{width:35px;height:35px}.flying-coin{position:absolute;display:block;width:22px;height:22px;animation:coin-collect .65s cubic-bezier(.35,0,.7,.25) var(--delay,0s) both;filter:drop-shadow(1px 2px 0 #25213570)}.flying-coin svg{width:100%;height:100%;animation:coin-spin .27s linear infinite}.game-controls{position:absolute;bottom:max(28px,env(safe-area-inset-bottom));left:23px;right:23px;display:flex;justify-content:space-between;align-items:flex-end;z-index:30;gap:20px;pointer-events:none}.game-controls>*{pointer-events:auto}.shop-button{position:relative;display:flex;align-items:center;gap:10px;background:var(--yellow);border:3px solid var(--ink);box-shadow:5px 6px 0 var(--ink);border-radius:11px;padding:13px 22px 13px 17px;font-size:22px;font-weight:900;transform:rotate(-3deg);letter-spacing:2px}.shop-button>svg{width:32px;height:32px}.shop-button:active{transform:rotate(-3deg) translate(3px,4px);box-shadow:2px 2px 0 var(--ink)}.shop-dot{position:absolute;right:-7px;top:-8px;width:16px;height:16px;border:3px solid var(--ink);background:#ff583f;border-radius:50%;box-shadow:0 0 0 2px #fff5b7}.utility-controls{display:flex;gap:12px;padding-bottom:2px}.square-button[aria-pressed="false"]{background:#dfdfcf;position:relative}.square-button[aria-pressed="false"]:after{content:'';position:absolute;width:29px;height:3px;background:var(--ink);transform:rotate(-45deg);border:1px solid #dfdfcf}.pause-veil{position:absolute;inset:0;background:#25213570;backdrop-filter:blur(3px);display:grid;place-items:center;z-index:40}.pause-veil[hidden]{display:none}.comic-button{border:3px solid var(--ink);background:var(--yellow);box-shadow:5px 6px 0 var(--ink);padding:17px 25px;border-radius:12px;font-size:22px;font-weight:900;display:flex;align-items:center;gap:13px;transform:rotate(-3deg)}.comic-button:active{transform:rotate(-3deg) translate(3px,4px);box-shadow:2px 2px 0 var(--ink)}
.menu{z-index:50;overflow:hidden;background:#0ca8ee}.menu[hidden]{display:none}.menu-art{position:absolute;inset:0;background:url('assets/menu-comic.webp') center/cover no-repeat}.menu-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#183a1750,transparent 25%)}.menu-title{position:absolute;top:4.5%;left:7%;right:7%;margin:0;color:var(--yellow);font-family:'Arial Black','Microsoft YaHei',sans-serif;font-weight:1000;line-height:.98;letter-spacing:-3px;text-align:center;font-size:clamp(45px,16cqw,78px);transform:rotate(-6deg);-webkit-text-stroke:2px var(--ink);paint-order:stroke fill;text-shadow:3px 0 var(--ink),-3px 0 var(--ink),0 3px var(--ink),0 -3px var(--ink),5px 7px 0 var(--ink),-3px 8px 0 var(--ink),5px 10px 0 #fff5bd;filter:drop-shadow(0 3px 0 #252135)}.menu-title span{display:block}.menu-title span:first-child{color:#fff1a1;font-size:.67em;letter-spacing:8px;margin-bottom:9px}.menu-title span:last-child{color:#ffde36}.start-button{position:absolute;bottom:10%;left:10%;width:80%;height:80px;border:4px solid var(--ink);border-radius:16px;background:var(--yellow);box-shadow:7px 9px 0 var(--ink),inset 0 5px 0 #fff5a3;display:flex;align-items:center;justify-content:center;gap:15px;font-size:clamp(25px,8cqw,38px);font-weight:1000;letter-spacing:1px;transform:rotate(-3deg);text-shadow:1px 1px #fff3aa;z-index:3;transition:transform .1s}.start-button:before{content:'';position:absolute;inset:6px;border:1px solid #fff8b7;border-radius:8px;pointer-events:none}.start-button>svg{width:31px;height:31px}.start-button:active{transform:rotate(-3deg) translate(4px,6px);box-shadow:3px 3px 0 var(--ink)}.menu.exiting{animation:menu-exit .3s cubic-bezier(.4,0,.6,1) forwards;pointer-events:none}.menu.exiting .start-button{animation:start-punch .24s ease-in forwards}
.shop-modal{width:min(470px,calc(100vw - 20px));height:min(94dvh,920px);max-height:94dvh;margin:auto;padding:0;border:4px solid var(--ink);border-radius:18px;background:#fff3cf;color:var(--ink);box-shadow:8px 10px 0 #10132670;overflow:hidden}.shop-modal[open]{display:flex;flex-direction:column;animation:shop-open .22s cubic-bezier(.1,1.1,.4,1)}.shop-modal::backdrop{background:#14192cc9;backdrop-filter:blur(4px)}.shop-header{display:flex;align-items:center;gap:12px;flex-shrink:0;padding:18px 19px 17px;background:var(--yellow);border-bottom:4px solid var(--ink);position:relative;z-index:2}.shop-header:after{content:'';position:absolute;left:0;right:0;bottom:0;height:5px;background:radial-gradient(#25213524 1px,transparent 1.2px) 0 0/5px 5px;pointer-events:none}.shop-header h2{font-size:28px;font-weight:1000;letter-spacing:2px;line-height:1;margin:0;transform:rotate(-4deg);text-shadow:2px 2px #fff8bb}.shop-wallet{display:flex;gap:5px;align-items:center;font-size:19px;font-weight:900;margin-left:auto;font-variant-numeric:tabular-nums;min-width:50px}.shop-wallet svg{width:27px;height:27px}.shop-header .square-button{width:33px;height:33px;padding:5px;box-shadow:2px 3px 0 var(--ink);border-radius:7px;background:#fff6d8}.shop-header .square-button svg{width:18px;height:18px}.tree-scroll{overflow:auto;overscroll-behavior:contain;padding:24px 12px 26px;flex:1;scrollbar-color:#b7aa88 transparent;scrollbar-width:thin;background-image:radial-gradient(#8d78501c .8px,transparent 1px);background-size:6px 6px}.upgrade-tree{position:relative;min-height:745px;height:745px;width:100%;max-width:410px;margin:auto;isolation:isolate}.tree-lines{position:absolute;inset:0;width:100%;height:100%;z-index:-1;overflow:visible}.tree-edge{fill:none;stroke:#beb5a1;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:6 7;transition:stroke .2s}.tree-edge.unlocked{stroke:var(--ink);stroke-width:4;stroke-dasharray:none}.tree-edge.owned{stroke:#549640;stroke-width:6;stroke-dasharray:none}.tree-node{position:absolute;left:var(--left);top:var(--top);width:35.7%;min-height:145px;background:var(--cream);border:3px solid var(--ink);border-radius:13px;box-shadow:4px 5px 0 var(--ink);padding:12px 10px 10px;display:flex;flex-direction:column;gap:7px;transition:background .2s,border-color .2s;z-index:1}.tree-node.locked{background:#e7e3d8;border-color:#8f8b89;box-shadow:3px 4px 0 #96918a;color:#908a7f}.tree-node.available{background:#fff0a1;border-color:var(--ink);box-shadow:4px 5px 0 var(--ink),0 0 0 4px #ffda3c40}.tree-node.owned{background:#d9f3b5;border-color:#304b2a;box-shadow:4px 5px 0 #304b2a}.tree-node.owned.available{background:#e2f2a4;box-shadow:4px 5px 0 #304b2a,0 0 0 4px #ffda3c55}.node-head{display:flex;flex-direction:column;align-items:center;gap:5px;text-align:center}.node-head>svg,.node-icon>svg{width:31px;height:31px}.node-icon{display:grid;place-items:center;min-height:31px}.node-title{font-size:14px;line-height:1.25;font-weight:900;white-space:nowrap}.node-level{position:absolute;top:-10px;right:-8px;min-width:28px;padding:3px 6px;border:2px solid var(--ink);border-radius:5px;background:#fff8e0;box-shadow:1px 2px 0 var(--ink);font:bold 9px/1.1 Arial,sans-serif;white-space:nowrap;transform:rotate(7deg)}.tree-node.locked .node-level{background:#d9d6cc;border-color:#99958a;box-shadow:1px 2px #99958a}.tree-node.owned .node-level{background:#b4e57d}.node-effect{text-align:center;min-height:19px;font-size:11px;font-weight:800;line-height:1.3;white-space:nowrap}.node-buy{display:flex;align-items:center;justify-content:center;gap:4px;min-height:31px;width:100%;padding:5px 4px;margin-top:auto;border:2px solid var(--ink);border-radius:7px;background:#ffcf35;color:var(--ink);font-size:11px;font-weight:900;box-shadow:1px 2px 0 var(--ink);white-space:nowrap}.node-buy svg{width:17px;height:17px}.node-buy:not(:disabled):active{transform:translate(1px,2px);box-shadow:none}.node-buy:disabled{background:#ded8c9;color:#969080;border-color:#aaa391;box-shadow:1px 2px 0 #aaa391}.node-buy:disabled svg{opacity:.6;filter:grayscale(1)}.node-buy.maxed{background:#aad879;color:#365528;border-color:#466a37;box-shadow:none}.node-buy.maxed svg{opacity:1;filter:none}.tree-node.purchased{animation:node-purchase .45s cubic-bezier(.1,1,.35,1)}.shop-notice{position:absolute;left:50%;bottom:15px;transform:translate(-50%,12px);opacity:0;pointer-events:none;padding:9px 15px;border:2px solid var(--ink);border-radius:7px;background:#ffda3c;color:var(--ink);font-size:12px;font-weight:900;white-space:nowrap;box-shadow:3px 3px var(--ink);z-index:5;transition:transform .2s,opacity .2s}.shop-notice.visible{opacity:1;transform:translate(-50%,0)}
@keyframes mole-emerge{0%{transform:translateY(105%) scale(.6,.8)}65%{transform:translateY(-8%) scale(1.04,1.08)}100%{transform:translateY(0) scale(1)}}@keyframes mole-taunt{0%,45%,100%{transform:rotate(0) translateY(0)}55%{transform:rotate(-5deg) translateY(-2px)}68%{transform:rotate(5deg) translateY(-1px)}80%{transform:rotate(-2deg)}}@keyframes mole-bonk{0%{transform:scale(1)}8%{transform:translateY(12%) scale(1.28,.5) rotate(-12deg);filter:brightness(1.6)}23%{transform:translateY(12%) scale(1.28,.5) rotate(-12deg);filter:brightness(1.6)}42%{transform:translateY(-15%) scale(.82,1.14) rotate(11deg);filter:brightness(1)}57%{transform:translateY(3%) scale(1.08,.83) rotate(-8deg)}70%{transform:translateY(12%) scale(1,.86) rotate(4deg)}100%{transform:translateY(115%) scale(.7,.55) rotate(-9deg)}}@keyframes mole-leave{to{transform:translateY(115%) scale(.75)}}@keyframes shadow-pop{from{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}@keyframes burst-hit{0%{opacity:0;transform:scale(.2) rotate(-12deg)}10%{opacity:1;transform:scale(1.15) rotate(-5deg)}40%{opacity:1;transform:scale(.95) rotate(3deg)}100%{opacity:0;transform:scale(1.25) rotate(9deg)}}@keyframes ring-hit{0%{opacity:1;transform:scale(.3)}100%{opacity:0;transform:scale(2.2)}}@keyframes flash-hit{0%,75%{opacity:.92;transform:scale(.85)}100%{opacity:0;transform:scale(1.1)}}@keyframes hammer-smash{0%{opacity:0;transform:translate(20px,-25px) rotate(65deg) scale(1.18)}18%{opacity:1;transform:translate(2px,6px) rotate(-24deg) scale(1.05)}38%{opacity:1;transform:translate(2px,6px) rotate(-24deg) scale(1.05)}72%{opacity:1;transform:translate(10px,-14px) rotate(15deg) scale(.95)}100%{opacity:0;transform:translate(30px,-40px) rotate(45deg) scale(.8)}}@keyframes impact-streak{0%{opacity:1;transform:rotate(var(--angle,0deg)) translateX(19px) scaleX(.3)}35%{opacity:1;transform:rotate(var(--angle,0deg)) translateX(47px) scaleX(1)}100%{opacity:0;transform:rotate(var(--angle,0deg)) translateX(72px) scaleX(.25)}}@keyframes star-fly{0%{opacity:1;transform:translate(-50%,-50%) scale(.6) rotate(0)}30%{opacity:1;transform:translate(calc(var(--dx,30px) * .5),calc(var(--dy,-50px) * .6)) scale(1.2) rotate(40deg)}100%{opacity:0;transform:translate(var(--dx,30px),var(--dy,-50px)) scale(.55) rotate(var(--spin,100deg))}}@keyframes debris-fly{0%{opacity:1;transform:translate(0,0) rotate(0)}100%{opacity:0;transform:translate(var(--dx,35px),var(--dy,-40px)) rotate(var(--spin,150deg)) scale(.4)}}@keyframes arena-shake{0%,100%{transform:translate(0,0)}15%{transform:translate(-4px,3px) rotate(-.25deg)}30%{transform:translate(4px,-3px) rotate(.2deg)}50%{transform:translate(-3px,-2px)}70%{transform:translate(2px,2px)}85%{transform:translate(-1px,1px)}}@keyframes reward-pop{0%{opacity:0;transform:translate(-50%,4px) scale(.45) rotate(-9deg)}15%{opacity:1;transform:translate(-50%,-19px) scale(1.3) rotate(3deg)}35%{opacity:1;transform:translate(-50%,-34px) scale(1) rotate(-2deg)}75%{opacity:1;transform:translate(-50%,-60px) scale(1)}100%{opacity:0;transform:translate(-50%,-83px) scale(.8)}}@keyframes coin-spin{to{transform:rotateY(360deg)}}@keyframes coin-collect{0%{opacity:0;transform:translate(-50%,-50%) scale(.6)}12%{opacity:1}30%{opacity:1;transform:translate(var(--spread,25px),-42px) scale(1.1)}90%{opacity:1}100%{opacity:0;transform:translate(var(--tx,0px),var(--ty,-300px)) scale(.45)}}@keyframes wallet-pop{0%,100%{transform:rotate(2deg) scale(1)}35%{transform:rotate(-3deg) scale(1.13)}65%{transform:rotate(4deg) scale(.97)}}@keyframes menu-exit{to{opacity:0;transform:scale(1.08)}}@keyframes start-punch{30%{transform:rotate(-3deg) scale(.94)}100%{transform:rotate(-3deg) scale(1.15);opacity:0}}@keyframes shop-open{from{opacity:.4;transform:translateY(35px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes node-purchase{0%,100%{transform:scale(1)}24%{transform:scale(1.14) rotate(-4deg)}54%{transform:scale(.97) rotate(3deg)}78%{transform:scale(1.04)}}
@media(max-width:600px){body{display:block;background:#252135}.game{width:100%;height:100dvh;max-height:none;max-width:500px;aspect-ratio:auto;margin:auto;border:0;border-radius:0;box-shadow:none}.menu-title{top:5%;font-size:clamp(51px,17cqw,82px)}.shop-modal{width:calc(100vw - 16px);height:94dvh;max-height:94dvh;border-radius:15px}.shop-header{padding:16px}.tree-scroll{padding:24px 9px 25px}.start-button{height:78px;bottom:10%}.game-top{top:max(24px,env(safe-area-inset-top))}.game-controls{bottom:max(29px,env(safe-area-inset-bottom))}}@media(max-height:720px){.game-top{top:max(17px,env(safe-area-inset-top));left:19px;right:19px}.wallet{height:47px}.wallet strong{font-size:22px}.square-button{width:39px;height:39px}.game-controls{left:19px;right:19px;bottom:max(22px,env(safe-area-inset-bottom))}.shop-button{padding:10px 18px 10px 13px;font-size:20px}.shop-button>svg{width:28px;height:28px}.playfield{top:98px;bottom:106px}.menu-title{font-size:clamp(42px,15cqw,66px);top:4%}.start-button{height:67px;font-size:28px;bottom:10%}.shop-header{padding-top:13px;padding-bottom:13px}.shop-header h2{font-size:25px}}@media(max-width:360px){.game-top{left:18px;right:18px}.game-controls{left:18px;right:18px}.utility-controls{gap:9px}.shop-button{padding-left:12px;padding-right:16px;gap:7px}.tree-scroll{padding-left:5px;padding-right:5px}.tree-node{padding:10px 7px 9px;min-height:145px}.node-title{font-size:12px}.node-effect{font-size:10px}.node-buy{font-size:10px;gap:2px}.node-level{right:-5px}.shop-header{gap:9px}.start-button{width:84%;left:8%;font-size:27px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important}.arena.shaking{animation:none}.mole-sprite{animation:mole-emerge .1s both}.mole.hit .mole-sprite{animation:mole-leave .18s forwards}.impact-flash,.impact-line,.strike-hammer,.flying-coin,.dirt,.hit-star{display:none}.impact-burst{animation:burst-hit .15s forwards}.reward{animation-duration:.4s}.reward>svg{animation:none}.wallet.bump{animation:none}.menu.exiting{animation-duration:.1s}.tree-node.purchased{animation:none}}

@media(max-height:700px){.mole{width:80px;height:88px}}

/* V3: persistent health, independent hammer paths, and visible area progression. */
.field-art{filter:hue-rotate(var(--land-hue,0deg));transition:filter .5s}
#equipped-name,#equipped-stat,.level-track{display:block}
.hammer-tab .tab-lock svg{width:11px;height:11px}
.global-card>b{font-size:11px;font-weight:900}
.global-card>small{line-height:1.5;min-height:24px}
.tier-jump{font-style:normal;font-size:9px;line-height:1.3;text-align:center;color:#b74820}
.loot-odds span{display:flex;justify-content:space-between;gap:12px;width:100%}
.weapon-edges{height:330px!important}
.game-top{left:17px;right:17px;gap:8px;align-items:flex-start}
.game-top>.square-button{width:35px;height:35px;padding:6px;border-radius:7px;flex-shrink:0}
.game-top>.square-button svg{width:19px;height:19px}
.equipment-hud{display:grid;grid-template-columns:29px minmax(0,1fr);column-gap:5px;align-items:center;min-width:0;max-width:151px;flex:1;background:var(--cream);border:2.5px solid var(--ink);border-radius:7px;box-shadow:3px 4px 0 var(--ink);padding:5px 6px;transform:rotate(-2deg);font-weight:900}
#equipped-icon{grid-column:1;grid-row:1/3;display:grid;place-items:center;width:29px;height:34px}
#equipped-icon svg{width:29px;height:34px}
#equipped-name{font-size:12px;line-height:1.3;white-space:nowrap}
#equipped-stat{font-size:8px;line-height:1.4;letter-spacing:-.25px;white-space:nowrap;color:#706242;font-weight:800}
.game-top .wallet{min-width:103px;height:48px;max-width:160px;padding:5px 8px 5px 5px;gap:4px;flex-shrink:0;border-radius:8px}
.game-top .wallet>svg{width:27px;height:27px}
.game-top .wallet>span{left:40px;top:4px;font-size:8px}
.game-top .wallet strong{font-size:22px;padding-top:10px}
.plot-label{position:absolute;top:87px;left:50%;transform:translateX(-50%) rotate(-1deg);z-index:7;background:#fff3c8ed;border:2px solid var(--ink);border-radius:5px;box-shadow:2px 2px 0 var(--ink);padding:5px 10px;font-size:10px;font-weight:900;white-space:nowrap;max-width:90%;text-align:center}
.playfield{inset:131px 7% 122px;cursor:crosshair}
.mole{width:64px;height:76px;cursor:crosshair}
.mole-mask{inset:7px 5px 9px;border-radius:0 0 38% 38% / 0 0 8% 8%}
.mole:after{bottom:8px;height:4px}
.mole-health{position:absolute;left:6px;right:6px;bottom:-1px;height:9px;background:#382c2b;border:1.5px solid #252135;border-radius:3px;z-index:7;overflow:visible;box-shadow:0 1px 0 #fff0ae80;pointer-events:none}
.mole-health>i{display:block;height:100%;width:100%;border-radius:1px;background:#81da51;box-shadow:inset 0 2px 0 #d5ff89;transition:width .13s ease-out}
.mole-health>span{position:absolute;inset:-2px 0 auto;text-align:center;font:bold 8px/10px Arial,sans-serif;color:#fffde7;text-shadow:1px 1px 0 #252135,-1px 1px 0 #252135,1px -1px 0 #252135,-1px -1px 0 #252135;letter-spacing:.2px;white-space:nowrap}
.mole.golden .mole-health>i{background:#ffd323;box-shadow:inset 0 2px #fff7a7}
.mole-health.low>i,.mole.low-health .mole-health>i{background:#ff6650;box-shadow:inset 0 2px #ffb774}
.mole .gold-crown{top:-4px;font-size:18px}
.mole.hurt .mole-sprite{animation:mole-hurt .17s ease-out both}
.mole.hit .mole-sprite{animation:mole-bonk .58s linear forwards}
.mole.hit .mole-health,.mole.leaving .mole-health{opacity:0;transition:opacity .12s}
.damage-number{position:absolute;z-index:12;pointer-events:none;white-space:nowrap;font:900 18px/1 'Arial Black','Microsoft YaHei',sans-serif;color:#fff8d7;text-shadow:2px 2px 0 #792d2b,-1px -1px 0 #792d2b,1px -1px 0 #792d2b,-1px 1px 0 #792d2b;animation:damage-rise .48s ease-out forwards;transform-origin:50% 50%}
.damage-number.critical{color:#ff6550;font-size:23px;text-shadow:2px 2px 0 var(--ink),-1px -1px 0 var(--ink),1px -1px 0 var(--ink),-1px 1px 0 var(--ink);animation:critical-rise .65s cubic-bezier(.15,.85,.25,1) forwards}
.attack-radius{position:absolute;pointer-events:none;border:2px solid #fff7c4;background:#fff6a324;box-shadow:0 0 0 1.5px #33282a70,inset 0 0 0 1px #fffbe650;border-radius:50%;transform:translate(-50%,-50%);animation:area-pulse .32s ease-out forwards;z-index:3}
.attack-radius.tier-1{border-color:#d9e6ef;background:#bfd1e827}
.attack-radius.tier-2{border-color:#ffe44c;background:#ffcc252e;box-shadow:0 0 0 2px #6d431d99,inset 0 0 0 2px #fff7b544}
.attack-radius.tier-3{border-color:#a7ffff;background:#53dff735;box-shadow:0 0 0 2px #24445499,inset 0 0 0 2px #ecffff66}
.hammer-wood{--hammer-main:#d7893e;--hammer-light:#ffd882;--hammer-dark:#89502a;--hammer-band:#53536a;--hammer-shine:#ada9b1;--hammer-handle:#b36835}
.hammer-iron{--hammer-main:#a3afbf;--hammer-light:#effaff;--hammer-dark:#4a5368;--hammer-band:#424b60;--hammer-shine:#d7e7f1;--hammer-handle:#9d613c}
.hammer-gold{--hammer-main:#ffc226;--hammer-light:#fff4a5;--hammer-dark:#b56c17;--hammer-band:#c48826;--hammer-shine:#fff3b3;--hammer-handle:#a96328}
.hammer-diamond{--hammer-main:#50d6e9;--hammer-light:#e1ffff;--hammer-dark:#2587b0;--hammer-band:#326a91;--hammer-shine:#f1ffff;--hammer-handle:#4e67a0}
.hammer-diamond .hammer-facet{fill:#d4ffff}
.impact.soft .impact-burst{opacity:.55;inset:24px;animation-duration:.2s}
.impact.soft .impact-burst:after{inset:9px}
.impact.soft .impact-ring{width:38px;height:25px;left:40px;top:44px;border-width:3px;animation-duration:.23s}
.impact.soft .impact-flash{display:none}
.impact.soft .impact-line{width:16px;height:3px;animation-duration:.22s}
.impact.soft .strike-hammer{width:70px!important;height:85px!important;right:3px;top:-29px;animation-duration:.24s;filter:drop-shadow(2px 2px 0 #25213545)}
.impact.soft.tier-1 .strike-hammer{width:82px!important;height:99px!important;top:-40px}
.impact.soft.tier-2 .strike-hammer{width:94px!important;height:113px!important;top:-52px}
.impact.soft.tier-3 .strike-hammer{width:108px!important;height:130px!important;top:-66px}
.impact.finisher .impact-burst{background:#ffe02d}
.impact.tier-1 .impact-burst{background:#d9edf7}
.impact.tier-2 .impact-burst{background:#ffce25}
.impact.tier-3 .impact-burst{background:#7ef6ff;filter:drop-shadow(2px 3px 0 var(--ink)) drop-shadow(0 0 7px #9bf9ff)}
.impact.tier-3 .hit-star{color:#beffff}
.impact.stage-1 .impact-ring{border-width:6px}
.impact.stage-2 .impact-ring{border-width:7px}
.impact.stage-3 .impact-ring{border-width:8px;border-style:double}
.loot-burst{position:absolute;z-index:29;pointer-events:none;color:#ffed32;font-size:29px;font-weight:1000;line-height:1;white-space:nowrap;text-shadow:2px 3px 0 #3e294b,-2px 0 #3e294b,2px 0 #3e294b,0 -2px #3e294b;animation:loot-rise .95s cubic-bezier(.14,.85,.3,1) forwards}
.loot-burst.rare,.loot-burst.jackpot{color:#ff8bf0;font-size:36px;filter:drop-shadow(0 0 5px #ffe1ff);animation-duration:1.2s}
.game-controls{left:17px;right:17px;gap:10px;align-items:flex-end}
.shop-button{padding:10px 12px 10px 10px;gap:5px;letter-spacing:0;font-size:19px;border-radius:8px;box-shadow:4px 5px 0 var(--ink);flex-shrink:0}
.shop-button>svg{width:24px;height:24px}
.utility-controls{gap:7px;align-self:flex-end;padding-bottom:3px}
.utility-controls .square-button{width:31px;height:31px;padding:5px;border-width:2px;border-radius:6px;box-shadow:2px 3px 0 var(--ink)}
.utility-controls .square-button svg{width:17px;height:17px}
.level-panel{width:144px;min-width:118px;max-width:164px;flex:1;border:3px solid var(--ink);border-radius:9px;padding:8px 9px;background:#f9f0cc;box-shadow:4px 5px 0 var(--ink);transform:rotate(2deg);text-align:left}
.level-panel:active{transform:rotate(2deg) translate(2px,3px);box-shadow:2px 2px 0 var(--ink)}
.level-title{display:flex;align-items:baseline;justify-content:space-between;gap:4px;margin-bottom:6px;white-space:nowrap;font-weight:900}
#level-name{font-size:13px}
#kill-count{font:900 10px/1 Arial,sans-serif;color:#6b634d}
.level-track{height:10px;overflow:hidden;border:2px solid var(--ink);border-radius:3px;background:#c4c4a1}
.level-track>i{display:block;height:100%;width:0;background:#8de04c;box-shadow:inset 0 2px 0 #ceff87;transition:width .25s ease-out}
.level-panel.ready{background:#fff0a0;animation:level-ready .8s ease-in-out infinite alternate}
.shop-modal{height:min(94dvh,940px)}
.tree-scroll{padding:14px 13px 23px;min-height:0}
.hammer-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:0 0 17px}
.hammer-tab{position:relative;min-height:74px;padding:6px 3px 5px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:2.5px solid var(--ink);border-radius:9px;background:#ece4ce;box-shadow:2px 3px 0 var(--ink);font-size:12px;font-weight:900;line-height:1.25}
.hammer-tab>svg{width:35px;height:38px}
.hammer-tab.selected{background:#ffdf46;box-shadow:3px 4px 0 var(--ink),0 0 0 3px #ffdc3935;transform:translateY(-2px)}
.hammer-tab.locked{background:#d5d5cc;color:#7e7b70;border-color:#797970;box-shadow:2px 3px 0 #797970}
.hammer-tab.locked>svg{filter:grayscale(.8);opacity:.6}
.hammer-tab small{font-size:8px;white-space:nowrap;line-height:1.15}
.hammer-tab .tab-lock{position:absolute;top:4px;right:4px;width:11px;height:11px}
.weapon-summary{position:relative;display:grid;grid-template-columns:74px minmax(0,1fr);gap:6px 11px;align-items:center;background:#fff9e5;border:3px solid var(--ink);border-radius:12px;padding:12px;box-shadow:4px 5px 0 var(--ink);margin:0 2px 20px}
#weapon-preview{width:70px;height:83px;grid-column:1;grid-row:1/4;display:grid;place-items:center;filter:drop-shadow(3px 3px 0 #25213525);transform:rotate(-9deg)}
#weapon-preview>svg{width:70px;height:83px}
.weapon-copy{grid-column:2;min-width:0}
#weapon-name{font-size:21px;line-height:1.1;font-weight:1000;margin:0 0 6px;display:inline-block}
#weapon-stage{font-size:9px;line-height:1;padding:3px 6px;border:1.5px solid var(--ink);border-radius:4px;background:var(--yellow);font-weight:900;white-space:nowrap;display:inline-block;margin:0 0 5px 4px;vertical-align:middle}
#weapon-stats{display:block;font-size:10px;font-weight:800;line-height:1.8;color:#6d5c3e;margin:0}
#weapon-stats b{color:var(--ink);font-weight:1000}
#weapon-action{grid-column:2;justify-self:stretch;min-height:31px;display:flex;align-items:center;justify-content:center;gap:5px;border:2px solid var(--ink);border-radius:6px;padding:6px 7px;background:var(--yellow);box-shadow:2px 2px 0 var(--ink);font-size:11px;font-weight:900;white-space:nowrap}
#weapon-action svg{width:17px;height:17px}
#weapon-action:disabled{background:#d6dbbe;border-color:#81916b;color:#738461;box-shadow:none}
.milestones{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 2px 12px;padding:0 4px;z-index:1}
.milestones:before{content:'';position:absolute;left:14%;right:14%;top:16px;height:4px;background:#a59c7f;z-index:-1}
.stage-mark{min-height:42px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:#e4e0cf;border:2px solid #aaa28a;border-radius:7px;color:#9e9478;font-size:13px;font-weight:900;line-height:1.1;text-align:center;box-shadow:1px 2px 0 #aaa28a;white-space:nowrap}
.stage-mark.active{background:#ffdc39;border-color:var(--ink);color:var(--ink);box-shadow:2px 3px 0 var(--ink)}
.stage-mark small{font-size:8px;line-height:1.1}
.weapon-tree{position:relative;height:360px;width:100%;max-width:410px;margin:0 auto 18px;isolation:isolate}
.weapon-edges{position:absolute;inset:0;width:100%;height:100%;z-index:-1;overflow:visible}
.weapon-edges path,.weapon-edges line{fill:none;stroke:#9c946f;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
.weapon-edges .active,.weapon-edges .unlocked{stroke:#333334;stroke-dasharray:none}
.weapon-edges .owned{stroke:#63994b;stroke-width:5}
.upgrade-node{position:absolute;left:var(--left);top:var(--top);width:42%;min-height:128px;padding:10px 8px 8px;background:#fff9e2;border:2.5px solid var(--ink);border-radius:10px;box-shadow:3px 4px 0 var(--ink);display:flex;flex-direction:column;gap:6px;z-index:1}
.upgrade-node>header{display:flex;align-items:center;gap:5px;min-width:0;font-size:12px;font-weight:900}
.upgrade-node>header svg,.upgrade-node .icon svg{width:22px;height:22px}
.upgrade-node .icon{display:grid;place-items:center}
.upgrade-node .level,.upgrade-node b.level{margin-left:auto;font:bold 9px/1 Arial,sans-serif;background:#e7deb9;border-radius:3px;padding:3px 4px;white-space:nowrap}
.upgrade-node .effect,.upgrade-node p{font-size:10px;font-weight:900;text-align:center;line-height:1.5;margin:0;min-height:30px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap}
.buy-weapon,.global-card button{width:100%;min-height:31px;margin-top:auto;padding:6px 4px;display:flex;align-items:center;justify-content:center;gap:4px;background:var(--yellow);color:var(--ink);border:2px solid var(--ink);border-radius:6px;box-shadow:1px 2px 0 var(--ink);font-size:11px;font-weight:900;white-space:nowrap}
.buy-weapon svg,.global-card button svg{width:15px;height:15px}
.buy-weapon:not(:disabled):active,.global-card button:not(:disabled):active{transform:translate(1px,2px);box-shadow:none}
.buy-weapon:disabled,.global-card button:disabled{background:#d9d5c7;color:#99907c;border-color:#b1a995;box-shadow:1px 2px 0 #b1a995}
.upgrade-node.available{background:#fff0a5;box-shadow:3px 4px 0 var(--ink),0 0 0 3px #ffe04433}
.upgrade-node.locked{background:#e5e3d9;color:#949082;border-color:#aaa392;box-shadow:3px 4px 0 #aaa392}
.upgrade-node.maxed{background:#dff2bf;border-color:#48673b;box-shadow:3px 4px 0 #48673b}
.upgrade-node.maxed .buy-weapon{background:#a9d27d;border-color:#5e7c46;color:#476536;box-shadow:none}
.upgrade-node.purchased{animation:node-purchase .4s ease-out}
.global-upgrades{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0 3px 21px;padding-top:17px;border-top:3px solid #bcb18d}
.global-card{display:flex;flex-direction:column;align-items:center;gap:6px;border:2px solid var(--ink);border-radius:9px;background:#e5edca;box-shadow:2px 3px 0 var(--ink);padding:9px 5px 7px;text-align:center;min-width:0}
.global-card>svg{width:25px;height:25px}
.global-card h3,.global-card strong{font-size:11px;line-height:1.1;margin:0;font-weight:900}
.global-card p,.global-card .effect{font-size:9px;line-height:1.5;font-weight:800;min-height:27px;margin:0}
.global-card small{font-size:8px;color:#7c805d;line-height:1}
.global-card button{font-size:10px;gap:2px;min-height:29px;padding:5px 2px}
.loot-odds{margin:0 3px;background:#ede6ce;border:2px solid #b1a37a;border-radius:8px;font-size:10px;font-weight:800;color:#776747;padding:9px 10px}
.loot-odds summary{font-size:11px;font-weight:900;cursor:pointer;line-height:1.5;color:#63583e}
.loot-odds>div{display:flex;justify-content:space-between;gap:5px;flex-wrap:wrap;margin-top:8px;line-height:1.8}
.loot-odds table{width:100%;font-size:10px;text-align:left;margin-top:8px;border-collapse:collapse}
.loot-odds td{padding:3px;border-bottom:1px solid #d3c7a5}
.plot-dialog{width:min(400px,calc(100vw - 32px));padding:0;border:4px solid var(--ink);border-radius:13px;background:var(--cream);box-shadow:7px 9px 0 #151a2d90;color:var(--ink)}
.plot-dialog::backdrop{background:#121b2cc9;backdrop-filter:blur(4px)}
.plot-dialog>header{display:flex;align-items:center;justify-content:space-between;padding:15px 16px;background:var(--yellow);border-bottom:3px solid var(--ink);font-size:20px;font-weight:1000}
.plot-dialog>header h2{font-size:20px;margin:0}
.plot-dialog #plot-close{width:31px;height:31px;border:2px solid var(--ink);border-radius:6px;background:var(--cream);display:grid;place-items:center;padding:5px;box-shadow:2px 2px 0 var(--ink)}
#plot-close svg{width:17px;height:17px}
#plot-details{padding:18px 17px;font-size:12px;line-height:1.8;font-weight:800}
#plot-details h3{font-size:17px;margin:0 0 8px}
#plot-details p{margin:7px 0}
#plot-details .plot-row{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #d4c6a3;padding:7px 0}
#plot-details .next-plot{margin-top:15px;padding:12px;background:#e5edc8;border:2px solid #adb98a;border-radius:8px}
.plot-transition{position:absolute;inset:0;z-index:45;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:30px 24px;background:#17233cdb;backdrop-filter:blur(6px);color:#fff4c5}
.plot-transition[hidden]{display:none}
.plot-transition:before{content:'';position:absolute;left:50%;top:46%;width:280px;height:280px;border:3px dashed #ffe35a45;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}
.plot-transition h2{position:relative;font-size:34px;line-height:1.2;margin:0 0 18px;color:#ffde37;font-weight:1000;transform:rotate(-4deg);text-shadow:3px 4px var(--ink),-2px -2px var(--ink)}
.plot-transition p{position:relative;font-size:15px;font-weight:900;line-height:1.9;margin:2px 0}
#plot-continue{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;margin-top:27px;padding:15px 24px;border:3px solid var(--ink);border-radius:9px;background:var(--yellow);color:var(--ink);box-shadow:5px 6px 0 var(--ink);font-size:20px;font-weight:1000;transform:rotate(-3deg)}
.plot-transition .unlock-hammer{position:relative;display:grid;place-items:center;width:90px;height:100px;margin:10px 0 13px;background:#fff2b713;border:2px solid #ffdf4177;border-radius:14px;transform:rotate(8deg)}
.plot-transition .unlock-hammer svg{width:68px;height:85px}
@keyframes mole-hurt{0%{transform:scale(1)}26%,50%{transform:translateY(8%) scale(1.16,.75) rotate(-5deg);filter:brightness(1.5)}76%{transform:translateY(-3%) scale(.95,1.07) rotate(3deg)}100%{transform:scale(1)}}
@keyframes damage-rise{0%{opacity:0;transform:translate(-50%,2px) scale(.5)}18%{opacity:1;transform:translate(-50%,-8px) scale(1.1)}70%{opacity:1}100%{opacity:0;transform:translate(-50%,-42px) scale(.8)}}
@keyframes critical-rise{0%{opacity:0;transform:translate(-50%,0) scale(.3) rotate(-10deg)}20%{opacity:1;transform:translate(-50%,-17px) scale(1.3) rotate(4deg)}65%{opacity:1}100%{opacity:0;transform:translate(-50%,-69px) scale(.9) rotate(-3deg)}}
@keyframes area-pulse{0%{opacity:.9;transform:translate(-50%,-50%) scale(.9)}28%{opacity:.75;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.08)}}
@keyframes loot-rise{0%{opacity:0;transform:translate(-50%,0) scale(.25) rotate(-12deg)}18%{opacity:1;transform:translate(-50%,-18px) scale(1.35) rotate(5deg)}38%{transform:translate(-50%,-25px) scale(1) rotate(-3deg)}75%{opacity:1}100%{opacity:0;transform:translate(-50%,-85px) scale(.85)}}
@keyframes level-ready{from{box-shadow:4px 5px 0 var(--ink),0 0 0 1px #ffde4380}to{box-shadow:4px 5px 0 var(--ink),0 0 0 4px #ffde4330}}
@media(max-width:600px){.game-top{left:17px;right:17px}.game-controls{left:17px;right:17px;gap:9px}.tree-scroll{padding:14px 10px 23px}.plot-label{top:87px}.mole{width:64px;height:76px}.shop-header{padding:14px 16px}.shop-header h2{font-size:24px}}
@media(max-height:720px){.game-top{top:max(17px,env(safe-area-inset-top))}.plot-label{top:77px}.playfield{top:119px;bottom:110px}.game-controls{bottom:max(22px,env(safe-area-inset-bottom))}.mole{width:64px;height:76px}.shop-button{padding:10px 12px 10px 10px;font-size:19px}.equipment-hud{padding-top:4px;padding-bottom:4px}.game-top .wallet{height:45px}.game-top .wallet strong{font-size:21px}}
@media(max-width:360px){.game-top{left:14px;right:14px;gap:6px}.game-top>.square-button{width:32px;height:34px;padding:5px}.equipment-hud{grid-template-columns:23px minmax(0,1fr);gap:3px;max-width:125px;padding:5px 4px}.equipment-hud #equipped-icon,.equipment-hud #equipped-icon svg{width:23px;height:30px}#equipped-name{font-size:11px}#equipped-stat{font-size:7px;letter-spacing:-.3px}.game-top .wallet{min-width:94px;padding-right:6px}.game-top .wallet>svg{width:24px;height:24px}.game-top .wallet>span{left:36px}.game-top .wallet strong{font-size:20px}.game-controls{left:14px;right:14px;gap:7px}.shop-button{gap:3px;font-size:17px;padding:9px 9px 9px 7px}.shop-button>svg{width:23px;height:23px}.utility-controls{gap:5px}.utility-controls .square-button{width:28px;height:29px;padding:4px}.utility-controls .square-button svg{width:15px;height:15px}.level-panel{min-width:111px;padding:7px 7px;width:118px}#level-name{font-size:12px}#kill-count{font-size:9px}.level-track{height:9px}.hammer-tabs{gap:5px}.hammer-tab{font-size:10px;min-height:68px}.hammer-tab>svg{width:30px;height:35px}.hammer-tab small{font-size:7px}.weapon-summary{padding:10px 8px;gap:6px 7px;grid-template-columns:62px minmax(0,1fr)}#weapon-preview,#weapon-preview>svg{width:60px;height:76px}#weapon-name{font-size:18px}#weapon-stage{font-size:8px;padding:3px 4px;margin-left:2px}#weapon-stats{font-size:9px}#weapon-action{font-size:10px}.upgrade-node{padding:10px 6px 8px}.upgrade-node>header{font-size:11px;gap:4px}.upgrade-node>header svg{width:18px;height:18px}.upgrade-node .effect,.upgrade-node p{font-size:9px}.buy-weapon{font-size:10px}.global-upgrades{gap:6px}.global-card{padding-left:3px;padding-right:3px}.global-card h3,.global-card strong{font-size:10px}.global-card p,.global-card .effect{font-size:8px}.global-card button{font-size:9px}.stage-mark{font-size:12px}.stage-mark small{font-size:7px}}
@media(prefers-reduced-motion:reduce){.mole.hurt .mole-sprite{animation:none;filter:brightness(1.2)}.damage-number,.damage-number.critical{animation-duration:.25s}.attack-radius{animation-duration:.15s}.loot-burst,.loot-burst.rare,.loot-burst.jackpot{animation-duration:.4s}.level-panel.ready{animation:none}.upgrade-node.purchased{animation:none}.level-track>i,.mole-health>i{transition:none}}
