html,body{width:100%;height:100%;margin:0;overflow:hidden;background:#f4f7fb;color:#12202f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}#app{width:100%;height:100%}canvas{display:block}.loading-screen{position:fixed;inset:0;z-index:50;display:grid;place-content:center;gap:18px;padding:24px;background:#f4f7fb;color:#12202f;pointer-events:auto}.loading-screen.is-hidden{display:none}.loading-title{font-size:22px;font-weight:850;letter-spacing:0;text-align:center}.loading-bar{width:min(320px,calc(100vw - 64px));height:8px;overflow:hidden;border:1px solid rgba(18,32,47,.26);border-radius:8px;background:#fff}.loading-bar span{display:block;width:42%;height:100%;border-radius:8px;background:#3d8a7a;animation:loading-bar-slide 1.05s ease-in-out infinite}@keyframes loading-bar-slide{0%{transform:translate(-105%)}to{transform:translate(245%)}}.stage-banner{position:fixed;top:42%;left:50%;z-index:35;display:grid;gap:8px;justify-items:center;width:min(680px,calc(100vw - 32px));pointer-events:none;opacity:0;transform:translate(-50%,-50%);color:#fff;text-align:center;-webkit-text-stroke:4px #000000;paint-order:stroke fill;text-shadow:0 3px 0 rgba(0,0,0,.6)}.stage-banner.is-visible{animation:stage-banner-reveal 6.2s ease forwards}.stage-banner-title{font-size:64px;line-height:.95;font-weight:950}.stage-banner-subtitle{font-size:34px;line-height:1;font-weight:900}@keyframes stage-banner-reveal{0%{opacity:0}10%,90%{opacity:1}to{opacity:0}}.hud-shell{position:fixed;top:10px;left:8px;display:grid;gap:2px;align-items:start;pointer-events:none}.logo-crop{width:min(270px,calc(100vw - 16px));aspect-ratio:1139 / 191;overflow:hidden}.game-logo{display:block;width:calc(min(270px,calc(100vw - 16px)) * 1536 / 1139);height:auto;transform:translate(calc(min(270px,calc(100vw - 16px)) * -182 / 1139),calc(min(270px,calc(100vw - 16px)) * -378 / 1139))}.hud{display:grid;gap:5px;color:#fff;font-size:18px;font-weight:700;line-height:1.25;letter-spacing:0;-webkit-text-stroke:2px #000000;paint-order:stroke fill;text-shadow:0 0 5px rgba(255,255,255,.95),0 0 12px rgba(91,185,255,.85),0 2px 2px rgba(0,0,0,.88)}.hud strong{font-weight:850}.restart-button{position:fixed;top:16px;right:16px;min-width:92px;min-height:38px;border:1px solid rgba(18,32,47,.22);border-radius:8px;background:#fff;color:#12202f;font:inherit;cursor:pointer}.restart-button:hover{background:#edf7f2}.audio-toggle{position:fixed;bottom:18px;right:18px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:#ffffff26;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer;transition:all .2s ease;pointer-events:auto}.audio-toggle:hover{background:#ffffff40;transform:scale(1.05)}.audio-toggle.muted .audio-icon:after{content:"";position:absolute;top:50%;left:50%;width:20px;height:2px;background:#ff4747;transform:translate(-50%,-50%) rotate(45deg);box-shadow:0 0 5px #ff4747cc}.audio-icon{filter:drop-shadow(0 0 2px rgba(0,0,0,.2))}.ability-button{position:fixed;bottom:72px;right:18px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:#fff3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer;transition:all .2s ease;pointer-events:auto;z-index:10}.ability-button.is-hidden{display:none}.sweeper-button{bottom:126px;border-color:#ffe04766}.ability-button:disabled{filter:grayscale(1) opacity(.5);cursor:not-allowed;transform:none!important}.ability-button:hover:not(:disabled){background:#ffffff59;transform:scale(1.1);box-shadow:0 0 15px #fff6}.ability-button img{width:28px;height:28px;object-fit:contain;z-index:1}.ability-charges{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 4px;display:flex;align-items:center;justify-content:center;background:#ff4747;color:#fff;border-radius:9px;font-size:11px;font-weight:900;box-shadow:0 2px 4px #0000004d}.ability-cooldown-timer{position:absolute;left:-38px;top:50%;min-width:30px;height:22px;padding:0 5px;display:none;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.42);border-radius:8px;background:#12202fb8;color:#fff;font-size:11px;font-weight:900;line-height:1;letter-spacing:0;transform:translateY(-50%);box-shadow:0 2px 6px #00000052;pointer-events:none}.ability-button.is-cooling-down .ability-cooldown-timer{display:flex}.ability-feedback{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:1000;display:flex;flex-direction:column;align-items:center;gap:10px}.ability-text{color:#fff;font-size:32px;font-weight:900;text-transform:uppercase;-webkit-text-stroke:2px #000000;paint-order:stroke fill;animation:ability-pop .8s ease-out forwards}@keyframes ability-pop{0%{transform:scale(.5) translateY(20px);opacity:0}25%{transform:scale(1.1) translateY(0);opacity:1}75%{transform:scale(1) translateY(0);opacity:1}to{transform:scale(1) translateY(-40px);opacity:0}}.debug-toggle{position:fixed;bottom:18px;right:77px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:#ffffff26;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer;transition:all .2s ease;pointer-events:auto;z-index:10}.debug-toggle:hover{background:#ffffff40;transform:scale(1.05)}.debug-icon{font-size:20px;filter:drop-shadow(0 0 2px rgba(0,0,0,.2))}.debug-panel{width:min(340px,calc(100vw - 48px));max-height:calc(100vh - 32px);display:grid;gap:8px;padding:16px;overflow-y:auto;border:1px solid rgba(255,255,255,.25);border-radius:8px;background:#0a0f19f2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#fff;box-shadow:0 12px 32px #000000a6}.debug-panel h2{margin:0 0 2px;font-size:20px;font-weight:850;color:#ffe047}.debug-option{display:flex;flex-direction:column;gap:4px}.debug-button{width:100%;min-height:32px;padding:5px 10px;border:1px solid #ffffff;border-radius:8px;background:transparent;color:#fff;font-size:13px;font-weight:700;cursor:pointer;transition:all .2s}.debug-button:hover{background:#ffffff1a}.debug-button.is-active{background:#ffe047;color:#000;border-color:#ffe047}.menu-overlay{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:16px;background:#0000005c;pointer-events:auto}.menu-overlay.is-hidden{display:none}.game-over-panel{width:min(430px,calc(100vw - 48px));display:grid;gap:28px;justify-items:center;padding:36px 34px;border:3px solid #ffffff;border-radius:8px;background:#000;color:#fff;box-shadow:0 18px 42px #00000080}.game-over-panel h1,.shop-inner h1,.shop-item h2,.shop-kicker,.shop-currency{margin:0;letter-spacing:0}.game-over-panel h1{font-size:42px;line-height:1;font-weight:900}.game-over-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:14px}.menu-button,.purchase-button,.shop-nav-button,.shop-tab{border-radius:8px;font:inherit;font-weight:850;cursor:pointer;letter-spacing:0}.menu-button{min-width:132px;min-height:48px;border:2px solid #ffffff;background:#000;color:#ffe047;font-size:20px}.menu-button:hover,.menu-button:focus-visible,.purchase-button:hover:not(:disabled),.purchase-button:focus-visible,.shop-nav-button:hover,.shop-nav-button:focus-visible,.shop-tab:focus-visible{outline:2px solid #ffe047;outline-offset:2px}.shop-overlay{background:#00000085}.shop-frame{width:min(760px,calc(100vw - 24px));max-height:min(620px,calc(100vh - 24px));padding:14px;border-radius:8px;background:linear-gradient(#0000002e,#0000002e),url(/assets/wood-BtpVYmb-.png) center / 170px auto repeat;box-shadow:inset 0 0 0 2px #ffffff40,0 22px 46px #0000008c}.shop-inner{max-height:calc(min(620px,calc(100vh - 24px)) - 28px);display:grid;grid-template-rows:auto auto 1fr auto;gap:10px;padding:14px;border:2px solid rgba(255,255,255,.85);border-radius:8px;background:#000000b3;color:#fff;overflow:hidden}.shop-header,.shop-footer,.shop-item,.shop-item-meta{display:flex;align-items:center}.shop-header,.shop-footer,.shop-item{justify-content:space-between;gap:16px}.shop-kicker{color:#ffe047;font-size:13px;font-weight:850;text-transform:uppercase}.shop-inner h1{font-size:26px;line-height:1}.shop-title-row{display:flex;align-items:end;gap:12px}.shop-unlock-note{padding-bottom:1px;color:#ffe047;font-size:13px;font-weight:850;line-height:1;letter-spacing:0;text-transform:uppercase}.shop-currency{flex:0 0 auto;font-size:16px;font-weight:850}.shop-overlay[data-theme=attributes] .shop-kicker,.shop-overlay[data-theme=items] .shop-kicker,.shop-overlay[data-theme=attributes] .shop-tab.is-active,.shop-overlay[data-theme=items] .shop-tab.is-active,.shop-overlay[data-theme=attributes] .purchase-button:not(:disabled){color:#000;background:#ffe047;border-color:#ffe047}.shop-overlay[data-theme=attributes] .shop-tab.is-active,.shop-overlay[data-theme=items] .shop-tab.is-active,.shop-overlay[data-theme=ammo] .shop-tab.is-active,.shop-overlay[data-theme=attributes] .shop-kicker,.shop-overlay[data-theme=items] .shop-kicker,.shop-overlay[data-theme=ammo] .shop-kicker{background:transparent}.shop-overlay[data-theme=attributes] .shop-tab.is-active,.shop-overlay[data-theme=attributes] .shop-kicker,.shop-overlay[data-theme=attributes] .shop-unlock-note{color:#ffe047}.shop-overlay[data-theme=ammo] .shop-tab.is-active,.shop-overlay[data-theme=ammo] .shop-kicker,.shop-overlay[data-theme=ammo] .shop-unlock-note{color:#74d9ff;border-color:#74d9ff}.shop-overlay[data-theme=items] .shop-tab.is-active,.shop-overlay[data-theme=items] .shop-kicker,.shop-overlay[data-theme=items] .shop-unlock-note{color:#63d47b;border-color:#63d47b}.shop-overlay[data-theme=attributes] .purchase-button:not(:disabled),.shop-overlay[data-theme=items] .purchase-button:not(:disabled),.shop-overlay[data-theme=ammo] .purchase-button:not(:disabled),.shop-overlay[data-theme=ammo] .purchase-button.is-selected{background:#74d9ff;color:#000;border-color:#74d9ff}.shop-overlay[data-theme=attributes] .purchase-button:not(:disabled){background:#ffe047;border-color:#ffe047}.shop-overlay[data-theme=items] .purchase-button:not(:disabled){background:#63d47b;border-color:#63d47b}.shop-overlay[data-theme=launchers] .shop-kicker,.shop-overlay[data-theme=launchers] .shop-tab.is-active,.shop-overlay[data-theme=launchers] .purchase-button:not(:disabled),.shop-overlay[data-theme=launchers] .purchase-button.is-selected{color:#000;background:#ff4747;border-color:#ff4747}.shop-overlay[data-theme=launchers] .shop-tab.is-active,.shop-overlay[data-theme=launchers] .shop-kicker,.shop-overlay[data-theme=launchers] .shop-unlock-note{background:transparent;color:#ff4747}.shop-overlay[data-theme=launchers] .purchase-button:not(:disabled){background:#ff4747;color:#fff}.shop-overlay[data-theme=launchers] .purchase-button.is-selected{background:#8e1b1b;color:#fff;border-color:#ff4747}.shop-tabs{display:flex;gap:10px}.shop-tab-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.shop-tab,.shop-nav-button,.coin-upgrade-button{min-height:32px;border:1px solid #ffffff;background:#111;color:#fff}.shop-tab{padding:0 14px}.shop-tab.is-active,.shop-tab.active-yellow.is-active{color:#ffe047;border-color:#ffe047}.shop-tab.active-red.is-active{color:#ff4747;border-color:#ff4747}.shop-tab.active-blue.is-active{color:#74d9ff;border-color:#74d9ff}.shop-tab.active-green.is-active{color:#63d47b;border-color:#63d47b}.coin-upgrade-panel{flex:0 0 auto;display:grid;grid-template-columns:auto auto;gap:8px;align-items:center;color:#ffe047}.coin-upgrade-copy{display:grid;gap:2px;justify-items:end;line-height:1.05}.coin-upgrade-title{font-size:12px;font-weight:900}.coin-upgrade-value{color:#fff;font-size:11px;font-weight:850;white-space:nowrap}.coin-upgrade-button{min-width:92px;padding:0 8px;border-radius:8px;border-color:#ffe047;background:#ffe047;color:#000;font:inherit;font-size:12px;font-weight:900;cursor:pointer}.coin-upgrade-button:disabled{border-color:#5f5f5f;background:#242424;color:#8a8a8a;cursor:not-allowed}.shop-items{min-height:0;display:grid;gap:5px;overflow:auto;padding-right:4px}.shop-item{position:relative;min-height:54px;display:flex;align-items:center;gap:14px;padding:8px 12px;border:1px solid rgba(255,255,255,.45);border-radius:8px;background:#10101099}.shop-tooltip{position:fixed;z-index:40;width:min(250px,calc(100vw - 48px));padding:10px 12px;border:1px solid rgba(255,71,71,.36);border-radius:8px;background:#000c;color:#ff4747;pointer-events:none;box-shadow:0 8px 22px #00000061}.shop-tooltip.is-ammo{border-color:#74d9ff6b;color:#74d9ff}.shop-tooltip.is-attributes{border-color:#ffe0476b;color:#ffe047}.shop-tooltip.is-hidden{display:none}.shop-tooltip ul{margin:0;padding-left:16px}.shop-tooltip li{margin:3px 0;font-size:12px;line-height:1.25;font-weight:800}.launcher-preview{flex:0 0 72px;height:72px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border:1px solid rgba(255,255,255,.15);border-radius:8px;overflow:hidden}.launcher-preview img{width:100%;height:auto}.shop-item-copy{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}.shop-item h2{font-size:18px;line-height:1.1;font-weight:850}.shop-item p{margin:4px 0 0;color:#ddd;font-size:13px;line-height:1.3}.attribute-stat-summary{margin-top:4px;display:grid;gap:2px;color:#ffe047;font-size:12px;font-weight:850;line-height:1.25}.prestige-boxes-container{display:inline-flex;gap:4px}.prestige-box{background:#ffe047;color:#000;font-size:11px;font-weight:900;border-radius:4px;padding:1px 6px;cursor:pointer}.item-spawn-summary{margin-top:4px;color:#63d47b;font-size:12px;font-weight:850;line-height:1.25}.ammo-name{color:var(--ammo-text-color);opacity:var(--ammo-text-opacity)}.shop-item-meta{flex:0 0 auto;justify-content:flex-end;gap:9px;font-size:14px;color:#fff;font-weight:800;white-space:nowrap}.purchase-button{min-width:68px;min-height:32px;border:1px solid #ffe047;background:#ffe047;color:#000}.purchase-button:disabled{border-color:#5f5f5f;background:#242424;color:#8a8a8a;cursor:not-allowed}.shop-footer{justify-content:flex-end}.shop-nav-button{min-width:86px;padding:0 12px}@media(max-width:720px){.game-over-panel h1{font-size:34px}.shop-frame{padding:14px}.shop-inner{padding:16px}.shop-header,.shop-tab-row,.shop-item,.shop-item-meta{align-items:stretch;flex-direction:column}.shop-tabs{flex-wrap:wrap}.shop-title-row{align-items:start;flex-direction:column;gap:4px}.coin-upgrade-panel{justify-content:stretch}.coin-upgrade-copy{justify-items:start}.shop-item-meta{gap:8px}.purchase-button{width:100%}}
