@font-face{font-family:DM Sans;src:url(/fonts/dm-sans.ttf) format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Space Grotesk;src:url(/fonts/space-grotesk.ttf) format("truetype");font-weight:300 700;font-display:swap}:root{font-family:DM Sans,sans-serif;color:#e8eddd;background:#d7dfcf;font-synthesis:none;--lime:#c8dc8a;--display:"Space Grotesk",sans-serif}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;overscroll-behavior:none}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible,a:focus-visible{outline:3px solid #719747;outline-offset:4px}button:disabled{opacity:.4;cursor:default}a{color:var(--lime)}[hidden]{display:none!important}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.arena{position:fixed;inset:0;width:100%;height:100vh;height:100dvh;overflow:hidden;background:#d7dfcf;isolation:isolate}.arena canvas{display:block;position:absolute;inset:0;width:100%;height:100%;touch-action:none;cursor:crosshair;outline-offset:-4px}.hud-top{position:absolute;top:max(22px,env(safe-area-inset-top));left:max(24px,env(safe-area-inset-left));right:max(24px,env(safe-area-inset-right));display:flex;align-items:center;justify-content:space-between;pointer-events:none}.hud-top>button,.hud-counts{pointer-events:auto}.hud-counts{display:flex;gap:10px}.round-button{display:grid;place-items:center;width:48px;height:48px;border:1px solid #667b4859;border-radius:50%;background:#eef3d9de;color:#425a32;box-shadow:0 3px #74845b35,0 4px 15px #40522b14;backdrop-filter:blur(6px)}.round-button:hover{background:#f8fbe9}.round-button:active{transform:translateY(2px);box-shadow:0 1px #74845b35}.round-button svg{width:22px;height:22px}.zoom-controls{position:absolute;right:max(24px,env(safe-area-inset-right));bottom:max(28px,calc(env(safe-area-inset-bottom) + 16px));display:flex;flex-direction:column;gap:10px}.zoom-controls .round-button{width:44px;height:44px}.counter{height:46px;padding:8px 13px;display:flex;align-items:center;gap:9px;border:1px solid #667b4845;border-radius:25px;background:#eef3d9ce;color:#425a32;box-shadow:0 2px #74845b25;backdrop-filter:blur(6px)}.counter strong{font-family:var(--display);font-size:23px;font-weight:600;min-width:14px}.counter svg{width:23px;height:23px}.ammo-dock{position:absolute;left:50%;bottom:max(28px,calc(env(safe-area-inset-bottom) + 16px));transform:translate(-50%);display:flex;gap:15px}.weapon{width:64px;height:64px;display:grid;place-items:center;padding:0;border:2px solid #75885b85;border-radius:50%;background:#edf2d6d9;box-shadow:0 4px #68794b40,0 7px 20px #34432220;backdrop-filter:blur(5px);transition:transform .12s,background .12s,border-color .12s}.weapon:hover{background:#f6f9e2}.weapon:active{transform:translateY(3px)}.weapon.selected{border:3px solid #536e37;background:#d1e49a;transform:translateY(-5px);box-shadow:0 4px #536e3755,0 8px 22px #34432228}.ammo-art{width:40px;height:42px;display:grid;place-items:center;position:relative;pointer-events:none}.ammo-art i{display:block;width:30px;height:30px;box-shadow:3px 5px 6px #0004}.iron-art i{border-radius:50%;background:radial-gradient(circle at 30% 25%,#899584,#414a3e 50%,#222b22 90%);border:1px solid #7f8b6d55}.bomb-art i{border-radius:50%;background:radial-gradient(circle at 28% 24%,#7d8064,#3f4335 55%,#292e26);width:27px;height:27px;position:relative;top:3px}.bomb-art i:before{content:"";position:absolute;left:16px;top:-4px;background:#6c7357;width:8px;height:7px;transform:rotate(25deg);border-radius:1px}.bomb-art i:after{content:"";position:absolute;left:20px;top:-10px;border:1px solid #a7925b;border-left:0;border-bottom:0;width:7px;height:6px;border-radius:0 8px 0 0}.boulder-art i{width:34px;height:33px;clip-path:polygon(26% 0,70% 5%,98% 36%,91% 79%,60% 100%,17% 85%,0 48%);background:conic-gradient(from 38deg at 40% 40%,#85866c 0deg 68deg,#666d56 70deg 160deg,#575f4b 160deg 220deg,#94957b 220deg 285deg,#b2b29a 285deg)}.shot-hint{position:absolute;bottom:max(118px,calc(env(safe-area-inset-bottom) + 106px));left:50%;transform:translate(-50%);font-size:13px;font-weight:500;color:#496137;text-shadow:0 1px 5px #f5f8df;pointer-events:none;white-space:nowrap}.aim-marker{position:absolute;width:32px;height:32px;left:50%;top:53%;transform:translate(-50%,-50%);color:#f3f9cd;pointer-events:none;filter:drop-shadow(0 1px 2px #2a351b80);opacity:0;transition:opacity .2s}.aim-marker.visible{opacity:1}.aim-marker span{position:absolute;inset:8px;border:1px solid currentColor;border-radius:50%}.aim-marker i{position:absolute;background:currentColor}.aim-marker i:nth-of-type(1){height:7px;width:1px;left:50%;top:0}.aim-marker i:nth-of-type(2){height:7px;width:1px;left:50%;bottom:0}.aim-marker i:nth-of-type(3){height:1px;width:7px;top:50%;left:0}.aim-marker i:nth-of-type(4){height:1px;width:7px;top:50%;right:0}.hit-score{position:absolute;left:50%;top:36%;transform:translate(-50%,10px);font-family:var(--display);font-size:32px;font-weight:700;color:#4a6c2e;text-shadow:0 2px #eaf3c3,0 0 10px #edf5d1;pointer-events:none;opacity:0;transition:opacity .2s,transform .6s}.hit-score.show{opacity:1;transform:translate(-50%,-14px)}.loading-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;background:#d7dfcf;color:#5b7343;z-index:20}.loading-overlay>svg{width:44px;height:44px}.loading-line{display:block;width:88px;height:3px;position:relative;overflow:hidden;background:#a8ba94;border-radius:2px}.loading-line:after{content:"";position:absolute;inset:0 auto 0 0;width:40%;background:#647e46;animation:loading 1.2s infinite ease-in-out}@keyframes loading{0%{left:-40%}to{left:100%}}.icon-button{display:grid;place-items:center;width:38px;height:38px;border:0;background:transparent;color:#a3b28f;border-radius:50%}.icon-button:hover{color:#d4e6ad;background:#c8dc8a0a}.icon-button svg{width:20px;height:20px}dialog{color:#e8eddd;background:#222e20;border:1px solid #5e7245;border-radius:22px;padding:26px;max-width:440px;width:calc(100% - 40px);max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 15px 75px #1e301f45}dialog::backdrop{background:#20331d66;backdrop-filter:blur(7px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px}dialog h2{font-family:var(--display);font-size:28px;letter-spacing:-.7px;font-weight:500;margin:0}dialog p{font-size:13px;line-height:1.75;color:#a8b89b}dialog a{text-underline-offset:3px}.primary-button{display:flex;align-items:center;justify-content:center;gap:12px;min-height:52px;width:100%;background:var(--lime);border:0;border-radius:12px;color:#2d4220;font-weight:650;font-size:15px;box-shadow:0 3px #879e52}.primary-button:hover{background:#d7e9a4}.primary-button:active{transform:translateY(2px);box-shadow:0 1px #879e52}.primary-button svg{width:20px;height:20px}.pause-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:22px 0}.pause-grid button{min-height:85px;border:1px solid #4c6038;border-radius:13px;background:#2b3925;display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:center;color:#bdcfa6;font-size:12px}.pause-grid button:hover{background:#34482a;border-color:#88a35e}.pause-grid svg{width:25px;height:25px}.menu-links{display:flex;justify-content:center;gap:28px}.menu-links button{padding:5px;border:0;background:none;color:#95a886;font-size:11px}.menu-links button:hover{color:var(--lime)}.result-card{text-align:center;max-width:370px;padding:30px}.result-card h2{font-size:29px}.result-stars{font-size:42px;color:#dfc472;letter-spacing:7px;margin:18px -7px 20px 0;text-shadow:0 3px #7b633b}.result-score{margin:20px 0}.result-score span{font-size:11px;color:#9daf8c;display:block}.result-score strong{font-family:var(--display);font-size:37px;font-weight:500;display:block;margin-top:5px;color:#d8e8bc}.result-card p:empty{display:none}.result-card>.primary-button{margin-top:24px}.result-actions{display:flex;gap:18px;justify-content:center;margin-top:23px}.result-actions .round-button{background:#34462b;color:#cee3ad;border-color:#627b45;box-shadow:0 3px #17291380}.level-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.level-tile{position:relative;border:1px solid #50653c;border-radius:13px;background:#2c3a26;padding:13px 6px 11px;display:flex;flex-direction:column;align-items:center;gap:11px}.level-tile:hover,.level-tile.current{border-color:#bdce85;background:#3a4d2d}.tile-number{font-family:var(--display);font-size:24px;color:#d5e5b9}.level-tile>svg{width:100%;height:58px;fill:#adb897;stroke:#bcc7a9;stroke-width:1}.tile-stars{color:#d8bf78;letter-spacing:2px;font-size:18px;white-space:nowrap}.controls-list{display:grid;grid-template-columns:1fr 1.3fr;gap:15px 18px;margin:22px 0 0;font-size:12px}.controls-list dt{color:#d1e2b8}.controls-list dd{color:#99ae89;margin:0}.license-link{display:inline-block;font-size:12px;margin-top:8px}@media(max-width:600px){.hud-top{top:max(16px,env(safe-area-inset-top));left:max(16px,env(safe-area-inset-left));right:max(16px,env(safe-area-inset-right))}.round-button{width:44px;height:44px}.round-button svg{width:20px;height:20px}.hud-counts{gap:8px}.counter{height:42px;padding:7px 9px;gap:6px}.counter strong{font-size:20px}.counter svg{width:20px;height:20px}.ammo-dock{gap:13px;bottom:max(25px,calc(env(safe-area-inset-bottom) + 14px))}.weapon{width:58px;height:58px}.ammo-art{transform:scale(.92)}.shot-hint{bottom:max(108px,calc(env(safe-area-inset-bottom) + 97px));font-size:12px}.hit-score{font-size:27px}dialog{padding:23px;border-radius:19px;width:calc(100% - 32px)}.level-options{gap:9px}.tile-stars{font-size:16px;letter-spacing:1px}.level-tile>svg{height:50px}.controls-list{font-size:11px;gap:14px}}@media(max-height:500px){.hud-top{top:max(12px,env(safe-area-inset-top));left:max(16px,env(safe-area-inset-left));right:max(16px,env(safe-area-inset-right))}.ammo-dock{bottom:max(15px,env(safe-area-inset-bottom));gap:12px}.weapon{width:51px;height:51px}.ammo-art{transform:scale(.84)}.shot-hint{bottom:83px;font-size:11px}dialog{max-width:390px;padding:20px;max-height:calc(100dvh - 24px)}.dialog-top{margin-bottom:15px}.pause-grid{grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0}.pause-grid button{min-height:73px;font-size:10px;gap:8px}.pause-grid svg{width:21px;height:21px}.menu-links{gap:20px}.result-stars{font-size:32px;margin:12px 0}.result-score{margin:12px 0}.result-score strong{font-size:29px}.result-actions{margin-top:17px}.result-card>.primary-button{margin-top:16px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}@media(max-width:600px){.zoom-controls{right:max(16px,env(safe-area-inset-right));bottom:max(25px,calc(env(safe-area-inset-bottom) + 14px))}}@media(max-width:360px){.ammo-dock{gap:10px}.weapon{width:54px;height:54px}}@media(max-height:500px){.zoom-controls{right:max(16px,env(safe-area-inset-right));bottom:max(15px,env(safe-area-inset-bottom));gap:8px}}
