@font-face{font-family:m5x7;font-weight:400;font-style:normal;font-display:swap}:root{--color-primary: #ffffff;--color-secondary: #cccccc;--color-accent: #ffffff;--color-tertiary: #999999;--color-success: #ffffff;--color-warning: #ffffff;--color-danger: #ffffff;--color-milestone: #ffffff;--bg-primary: rgba(0, 0, 0, .95);--bg-secondary: rgba(0, 0, 0, .9);--bg-glass: rgba(0, 0, 0, .95);--bg-glass-light: rgba(0, 0, 0, .85);--bg-overlay: rgba(0, 0, 0, .98);--bg-rpg-box: rgba(0, 0, 0, .95);--gradient-primary: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, .1) 50%, transparent 100%);--gradient-secondary: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, .05) 50%, transparent 100%);--gradient-milestone: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, .15) 50%, transparent 100%);--gradient-glow: radial-gradient(circle, rgba(255, 255, 255, .05) 0%, transparent 70%);--shadow-sm: 0 0 2px rgba(255, 255, 255, .3), 0 0 4px rgba(255, 255, 255, .1);--shadow-md: 0 0 4px rgba(255, 255, 255, .4), 0 0 8px rgba(255, 255, 255, .15);--shadow-lg: 0 0 6px rgba(255, 255, 255, .5), 0 0 12px rgba(255, 255, 255, .2);--shadow-glow-primary: 0 0 0 1px rgba(255, 255, 255, .8), 0 0 8px rgba(255, 255, 255, .3);--shadow-glow-milestone: 0 0 0 1px rgba(255, 255, 255, 1), 0 0 12px rgba(255, 255, 255, .4);--shadow-inset: inset 0 0 4px rgba(255, 255, 255, .1);--border-width: 1px;--border-radius-sm: 0px;--border-radius-md: 0px;--border-radius-lg: 0px;--border-radius-xl: 0px;--border-rpg: 1px solid rgba(255, 255, 255, .9);--border-rpg-inset: 1px solid rgba(255, 255, 255, .3);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 24px;--font-family: "Courier New", "Courier", monospace;--font-size-xs: 11px;--font-size-sm: 12px;--font-size-md: 14px;--font-size-lg: 16px;--font-size-xl: 20px;--font-size-2xl: 24px;--font-size-3xl: 32px;--transition-fast: .05s linear;--transition-base: .1s linear;--transition-smooth: .15s linear;--transition-bounce: .15s linear;--backdrop-blur: none;--backdrop-blur-lg: none}@keyframes scanlines{0%{background-position:0 0}to{background-position:0 4px}}@keyframes matrixGlitch{0%,to{text-shadow:1px 0 0 rgba(255,255,255,.9),-1px 0 0 rgba(255,255,255,.9);transform:translate(0)}20%{text-shadow:2px 0 0 rgba(255,255,255,.7),-2px 0 0 rgba(255,255,255,.7);transform:translate(1px)}40%{text-shadow:-1px 0 0 rgba(255,255,255,.8),1px 0 0 rgba(255,255,255,.8);transform:translate(-1px)}60%{text-shadow:1px 0 0 rgba(255,255,255,.9),-1px 0 0 rgba(255,255,255,.9);transform:translate(0)}}@keyframes matrixType{0%{opacity:0}to{opacity:1}}@keyframes digitalRain{0%{background-position:0 0}to{background-position:0 100%}}*{margin:0;padding:0;box-sizing:border-box;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-drag:none;user-drag:none;-webkit-touch-callout:none}html{overflow:hidden;width:100%;height:100%;position:fixed}body{background:#000;color:#fff;font-family:var(--font-family);font-size:18px;overflow:hidden;width:100vw;height:100vh;position:fixed;-webkit-overflow-scrolling:touch;-webkit-user-drag:none;user-drag:none;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;position:relative}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:repeating-linear-gradient(0deg,rgba(0,0,0,.15),rgba(0,0,0,.15) 1px,transparent 1px,transparent 2px);pointer-events:none;z-index:9999;opacity:.3;animation:scanlines 8s linear infinite}img,svg{image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}#app{display:flex;width:100%;height:100%}#game-container{position:relative;flex:1;min-width:0;background:#000;background-size:auto;background-repeat:repeat;background-image:var(--bg-gif-url, none)}#game-container:before{content:"";position:absolute;inset:0;background:#0006;z-index:0;pointer-events:none}#game-canvas{display:block;width:100%;height:100%;cursor:pointer;touch-action:none;position:absolute;top:0;left:0;z-index:1;will-change:transform;transform:translateZ(0);backface-visibility:hidden}#webgl-overlay-canvas{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none;display:block}#hud{position:absolute;top:20px;left:20px;pointer-events:none;font-family:var(--font-family);display:flex;flex-direction:column;z-index:10;gap:var(--spacing-md);align-items:flex-start}#points-display{order:-1;font-size:56px;font-weight:400;font-family:m5x7,Courier New,monospace;color:#fff;text-shadow:0 0 2px rgba(255,255,255,.6),0 0 4px rgba(255,255,255,.3);margin-bottom:var(--spacing-md);letter-spacing:3px;transition:all var(--transition-fast);position:relative;display:flex;flex-direction:column;align-items:flex-start;white-space:nowrap;overflow:hidden;background:transparent;padding:0;border:none;box-shadow:none}@keyframes pointsDisplayPulse{0%,to{box-shadow:0 0 4px #fff6,0 0 8px #ffffff26,inset 0 0 4px #ffffff1a;border-color:#ffffffe6}50%{box-shadow:0 0 6px #fff9,0 0 12px #ffffff40,inset 0 0 6px #ffffff26;border-color:#fff}}.points-gain{position:absolute;pointer-events:none;font-size:20px;font-weight:700;color:#fff;text-shadow:0 0 4px rgba(255,255,255,.8),0 0 8px rgba(255,255,255,.6),0 0 12px rgba(255,255,255,.4);transform:translate(-50%);opacity:1;transition:transform .6s ease-out,opacity .6s ease-out;z-index:15}@keyframes incomeGradient{0%{background-position:0% 50%}to{background-position:200% 50%}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}#upgrades-display{display:flex;flex-wrap:wrap;gap:6px;max-width:400px;background:#0003;padding:10px;border:1px solid rgba(102,204,255,.2);border-radius:4px;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:var(--shadow-sm)}#upgrades-display:empty{display:none}.upgrade-icon{width:48px;height:48px;background:#0000004d;border:1px solid rgba(102,204,255,.3);border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:24px;cursor:help;transition:all var(--transition-base);position:relative;backdrop-filter:none;-webkit-backdrop-filter:none}.upgrade-icon svg{width:24px;height:24px;display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.upgrade-icon:hover{background:#0006;border-color:#66ccff80;transform:scale(1.1);z-index:10;box-shadow:0 4px 12px #0000004d}.upgrade-icon .tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:8px;background:#000000f2;color:#fff;padding:8px 12px;border-radius:4px;border:1px solid #fff;font-size:12px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .2s;z-index:1000}.upgrade-icon:hover .tooltip{opacity:1}#level-bar-container{position:absolute;bottom:0;left:0;right:0;padding:15px;background:transparent;border-top:none;pointer-events:none;box-shadow:none}#level-info{display:flex;justify-content:space-between;font-size:14px;font-weight:700;margin-bottom:5px;color:#fff;text-shadow:0 0 3px rgba(255,255,255,.8),0 0 6px rgba(255,255,255,.5);letter-spacing:2px;font-family:var(--font-family)}#level-bar-bg{width:100%;height:20px;background:#0009;border:var(--border-rpg);position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #00000080,0 2px 4px #0000004d}#level-bar-fill{height:100%;background:#fff;transition:width .5s ease-out;width:0%;position:relative;box-shadow:0 0 4px #fff9,inset 0 0 4px #ffffff4d}@keyframes levelGradient{0%{background-position:0% 50%}to{background-position:200% 50%}}#level-bar-fill:after{content:"";position:absolute;top:0;left:0;width:30%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%);animation:level-shine 2s ease-in-out infinite;pointer-events:none}@keyframes level-shine{0%{transform:translate(-150%)}to{transform:translate(250%)}}#shop-panel{width:320px;min-width:320px;background-size:auto;padding:20px;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;pointer-events:auto;user-select:none;-webkit-user-select:none;position:relative;z-index:10;box-shadow:inset 0 0 0 1px #00000080,-2px 0 8px #00000080;transition:all .3s ease;animation:shopSlideIn .4s ease-out}#shop-panel:after{content:"";position:absolute;inset:0;background:#0009;z-index:0;pointer-events:none}@keyframes shopSlideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}#shop-panel:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.03) 50%,transparent 100%);pointer-events:none;animation:shopShimmer 4s ease-in-out infinite;z-index:1}@keyframes shopShimmer{0%,to{opacity:.3;transform:translate(-100%)}50%{opacity:.6;transform:translate(100%)}}#shop-panel h2{font-size:18px;margin-bottom:15px;text-align:center;position:relative;z-index:1;letter-spacing:4px;color:#fff;text-shadow:0 0 4px rgba(255,255,255,.8),0 0 8px rgba(255,255,255,.5);font-family:var(--font-family);font-weight:700;text-transform:uppercase;animation:matrixGlitch 5s ease-in-out infinite}#shop-tabs{display:flex;gap:8px;margin-bottom:15px;position:relative;z-index:1;align-items:center;flex-wrap:wrap}.shop-tabs{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.buy-quantity-selector{display:flex;gap:6px;align-items:center;background:var(--bg-rpg-box);padding:8px;border:var(--border-rpg);margin-bottom:15px;flex-wrap:wrap;position:sticky;top:0;z-index:100;width:100%;box-sizing:border-box;min-width:0;box-shadow:inset 0 0 0 1px #00000080,0 2px 4px #0000004d}.buy-quantity-selector>span{color:#fff;font-size:12px;font-weight:700;margin-right:4px;text-shadow:0 0 2px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,.5);font-family:var(--font-family)}.buy-quantity-btn{padding:6px 12px;font-size:11px;background:#000000f2;color:#fff;border:1px solid rgba(255,255,255,.9);cursor:pointer;transition:all .1s linear;font-family:var(--font-family);font-weight:700;text-shadow:0 0 2px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,.5);position:relative;overflow:hidden;box-shadow:0 0 2px #ffffff4d,0 0 4px #ffffff1a}.buy-quantity-btn:before{content:"";position:absolute;inset:0;background:#ffffff1a;opacity:0;transition:opacity .2s ease;z-index:0}.buy-quantity-btn:hover:before{opacity:1}.buy-quantity-btn:hover{background:#000000f2;border-color:#fff;box-shadow:inset 0 0 0 1px #00000080,0 3px 6px #0006,inset 0 0 8px #ffffff1a}.buy-quantity-btn:active{background:#000;transform:scale(.95);transition:all .1s ease;box-shadow:inset 0 0 0 1px #00000080,inset 0 2px 4px #00000080}.buy-quantity-btn:focus-visible{outline:2px solid rgba(255,255,255,.8);outline-offset:2px}.buy-quantity-btn.active,.buy-quantity-btn[style*="rgba(255, 0, 255"]{background:#000!important;border-color:#fff!important;box-shadow:inset 0 0 0 1px #00000080,0 2px 6px #0006,inset 0 0 12px #ffffff26!important}.auto-buy-toggle.auto-buy-enabled{background:#000!important;border-color:#fff!important;border-width:2px!important;box-shadow:inset 0 0 0 1px #00000080,0 0 12px #fff6,0 0 20px #fff3,inset 0 0 15px #fff3!important;color:#fff!important;text-shadow:0 0 3px rgba(255,255,255,1),0 0 6px rgba(255,255,255,.8),0 0 9px rgba(255,255,255,.6)!important;position:relative}.auto-buy-toggle.auto-buy-enabled:after{content:"●";position:absolute;right:8px;top:50%;transform:translateY(-50%);color:#fff;font-size:12px;text-shadow:0 0 4px rgba(255,255,255,1),0 0 8px rgba(255,255,255,.8);animation:autoBuyPulse 1.5s ease-in-out infinite}@keyframes autoBuyPulse{0%,to{opacity:1;transform:translateY(-50%) scale(1)}50%{opacity:.6;transform:translateY(-50%) scale(.9)}}.auto-buy-toggle.auto-buy-disabled{background:#0009!important;border-color:#fff6!important;border-width:2px!important;box-shadow:inset 0 0 0 1px #00000080,0 2px 4px #0000004d!important;color:#fff9!important;text-shadow:none!important}.auto-buy-toggle.auto-buy-disabled:hover{background:#000c!important;border-color:#ffffffb3!important;color:#ffffffe6!important}.auto-buy-toggle.auto-buy-enabled:hover{box-shadow:inset 0 0 0 1px #00000080,0 0 16px #ffffff80,0 0 24px #ffffff4d,inset 0 0 18px #ffffff40!important}.shop-tab{flex:1;background:#000000f2;color:#fff;border:1px solid rgba(255,255,255,.9);padding:var(--spacing-md) var(--spacing-lg);font-family:var(--font-family);font-size:var(--font-size-md);font-weight:700;cursor:pointer;position:relative;overflow:hidden;transition:all .1s linear;text-transform:uppercase;text-shadow:0 0 2px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,.5);box-shadow:0 0 2px #ffffff4d,0 0 4px #ffffff1a}.shop-tab:before{content:"";position:absolute;inset:0;background:#ffffff1a;opacity:0;transition:opacity .2s ease;z-index:0}.shop-tab:hover:before{opacity:1}.shop-tab:hover{background:#000000e6;border-color:#fff;box-shadow:inset 0 0 0 1px #00000080,0 2px 6px #0006,inset 0 0 8px #ffffff1a}.shop-tab.active{background:#000;border-color:#fff;color:#fffae5;box-shadow:inset 0 0 0 1px #00000080,0 2px 6px #0006,inset 0 0 12px #ffffff26}#shop-content{flex:1;display:block;position:relative;z-index:1}.upgrade-item-container{display:block;margin-bottom:12px;position:relative;background:transparent;border:none;padding:0;float:left;width:100%;clear:both}.upgrade-item-container:last-child{margin-bottom:0}.upgrade-item{border:2px solid rgba(255,255,255,.3);padding:10px 12px;background:#0006;transition:all .2s ease;box-shadow:0 0 8px #0000004d;position:relative;overflow:visible;width:100%;box-sizing:border-box}.upgrade-item:before{display:none}.upgrade-item:hover:before{display:none}.upgrade-item:hover{background:#0009;border-color:#fff9;box-shadow:0 0 12px #fff3;transform:translateY(-2px)}.upgrade-item:active{transform:translateY(0);transition:all .1s ease;box-shadow:0 0 8px #0000004d}.upgrade-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;gap:8px;flex-wrap:wrap}.upgrade-name{font-size:14px;font-weight:600;color:#fff;text-shadow:0 0 2px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,.5);font-family:var(--font-family);flex:1;min-width:0;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;letter-spacing:1px}.upgrade-level{font-size:11px;color:#fffc;font-weight:700;font-family:var(--font-family);white-space:nowrap;flex-shrink:0;padding:2px 6px;background:transparent;border:none;transition:all .1s linear;position:relative;text-shadow:0 0 2px rgba(255,255,255,.6),0 0 4px rgba(255,255,255,.3);box-shadow:none}.upgrade-item:hover .upgrade-level{background:transparent;border:none;box-shadow:none;color:#fff}.upgrade-description{display:none}.upgrade-flavor{font-size:11px;color:#ffffffb3;font-style:italic;margin-bottom:8px;line-height:1.3;font-family:var(--font-family)}.special-upgrades-box{background:transparent;border:none;padding:0;margin-bottom:16px;box-shadow:none;position:relative;overflow:visible;z-index:101}.special-upgrades-effect-wrapper{display:none}.special-upgrades-box h3{margin:0 0 10px;font-size:14px;text-align:left;color:#ffffffe6;font-weight:600;font-family:var(--font-family);position:relative;z-index:1;text-transform:uppercase;letter-spacing:1px;text-shadow:0 0 3px rgba(255,255,255,.8),0 0 6px rgba(255,255,255,.5)}.special-upgrades-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px;position:relative;z-index:1;animation:gridFadeIn .5s ease-out;isolation:isolate;align-items:start}@keyframes gridFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.sub-upgrade{background:#00000080;border:2px solid rgba(255,255,255,.3);padding:8px;text-align:center;cursor:pointer;transition:all .2s ease;position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:70px;min-height:70px;max-height:70px;box-sizing:border-box;transform:translateY(0) scale(1);box-shadow:0 0 8px #0006;transform-origin:center center;isolation:isolate;contain:layout style;overflow:hidden;animation:subUpgradeFloat 3s ease-in-out infinite;animation-delay:calc(var(--sub-index, 0) * .05s)}.special-upgrades-grid:hover .sub-upgrade{animation-play-state:paused}.sub-upgrade:hover{animation:none!important}@keyframes subUpgradeFloat{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-2px) scale(1)}}.sub-upgrade:before{display:none}.sub-upgrade:hover:before{display:none}.sub-upgrade:not(.owned):hover{border-color:#ffffffb3;transform:translateY(-2px) scale(1.02)!important;background:#000000b3;z-index:10;box-shadow:0 0 12px #ffffff4d;animation:none!important;transform-origin:center center;overflow:hidden}.sub-upgrade.owned{background:#0006;border-color:#fff3;cursor:default;opacity:.7}.sub-upgrade.owned:hover{border-color:#fff6;transform:translateY(-2px) scale(1.02)!important;background:#0009;z-index:10;box-shadow:0 0 10px #fff3;animation:none!important;transform-origin:center center;overflow:hidden;opacity:.9}.sub-upgrade-icon{font-size:32px;margin-bottom:4px;display:flex;align-items:center;justify-content:center;width:100%;height:32px;filter:drop-shadow(0 0 4px rgba(255,255,255,.5))}.sub-upgrade-icon svg{width:100%;height:100%;display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.sub-upgrade-name,.sub-upgrade-cost{display:none}.sub-upgrade.owned .sub-upgrade-cost{color:#6cf;text-shadow:0 1px 2px rgba(0,0,0,.8)}.sub-upgrade-tooltip{position:fixed;background:var(--bg-rpg-box);border:var(--border-rpg);padding:10px 14px;font-size:13px;color:#fffae5;box-shadow:var(--shadow-md);font-family:var(--font-family);pointer-events:none;opacity:0;transition:opacity .2s;z-index:100000;min-width:220px;max-width:320px;white-space:normal;text-align:left;line-height:1.5;text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1)}.sub-upgrade-tooltip strong{display:block;font-size:14px;color:#fffae5;margin-bottom:6px;font-weight:600}.sub-upgrade-tooltip em{display:block;margin-top:6px;font-style:italic}.upgrade-footer{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-top:4px;padding-top:0;border-top:none;flex-wrap:wrap}.upgrade-cost{font-size:12px;font-weight:600;color:#ffffffb3;font-family:var(--font-family);margin-right:auto;transition:all .1s linear;position:relative;text-shadow:0 0 2px rgba(255,255,255,.5),0 0 4px rgba(255,255,255,.3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upgrade-item:hover .upgrade-cost{color:#ffffffe6}.shop-button{background:transparent;border:none;padding:0;cursor:pointer;transition:transform .2s ease;position:relative;overflow:visible;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;min-width:auto;box-shadow:none;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.shop-button:before{display:none}.shop-button:hover:not(:disabled){background:transparent;border:none;box-shadow:none;transform:scale(1.1)}.shop-button:active:not(:disabled){background:transparent;transform:scale(1.05);transition:transform .1s ease;box-shadow:none}.shop-button:disabled{background:transparent;border:none;cursor:not-allowed;pointer-events:none;box-shadow:none;opacity:.5}.shop-button img{display:block;height:auto;width:auto;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;position:relative;z-index:1}.shop-button:disabled img{opacity:.5}.buy-hover-text{position:absolute;top:50%;right:100%;transform:translateY(-50%);margin-right:10px;font-family:var(--font-family);font-size:16px;font-weight:700;color:#fff;text-shadow:0 0 4px rgba(255,255,255,.8),0 0 8px rgba(255,255,255,.5),0 0 12px rgba(255,255,255,.3);letter-spacing:2px;opacity:0;pointer-events:none;z-index:2;white-space:nowrap;transition:opacity .3s ease,transform .3s ease;text-transform:uppercase}.shop-button:hover:not(:disabled) .buy-hover-text{opacity:1;animation:buyTextPulse 1.5s ease-in-out infinite}@keyframes buyTextPulse{0%,to{transform:translateY(-50%) scale(1);text-shadow:0 0 4px rgba(255,255,255,.8),0 0 8px rgba(255,255,255,.5),0 0 12px rgba(255,255,255,.3)}50%{transform:translateY(-50%) scale(1.1);text-shadow:0 0 6px rgba(255,255,255,1),0 0 12px rgba(255,255,255,.7),0 0 18px rgba(255,255,255,.5)}}.shop-button:focus-visible{outline:2px solid #fff;outline-offset:2px}#reset-container{margin-top:20px;padding-top:20px;position:relative;z-index:1;border-top:2px solid rgba(255,255,255,.3)}#reset-btn{width:100%;background:#ffffff1a;color:#fff;border:2px solid rgba(255,255,255,.3);text-shadow:0 0 2px rgba(255,255,255,.8)}#reset-btn:hover{background:#fff3;border-color:#fff9;box-shadow:0 0 12px #fff6;transform:translateY(-1px)}#boss-dialog{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:100;animation:bossDialogEnter .6s cubic-bezier(.34,1.56,.64,1);pointer-events:auto}.boss-dialog-backdrop{position:absolute;inset:0;background:#000000f2;animation:backdropPulse 3s ease-in-out infinite}@keyframes backdropPulse{0%,to{background:#000000f2}50%{background:#000000f7}}@keyframes bossDialogEnter{0%{opacity:0}50%{opacity:1}to{opacity:1}}@keyframes bossContentEnter{0%{opacity:0;transform:scale(.8) translateY(30px)}60%{transform:scale(1.05) translateY(-5px)}to{opacity:1;transform:scale(1) translateY(0)}}#boss-progress-container{position:absolute;top:120px;left:50%;transform:translate(-50%);width:500px;max-width:90%;z-index:50;pointer-events:none;text-align:center}.boss-progress-label{font-size:20px;font-weight:700;color:#fffae5;font-family:var(--font-family);text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1);margin-bottom:10px;text-transform:uppercase}#boss-progress-bg{position:relative;width:100%;height:40px;background:#0009;border:var(--border-rpg);overflow:hidden;box-shadow:inset 0 0 0 1px #00000080,0 2px 4px #0000004d}#boss-progress-fill{position:absolute;left:0;top:0;height:100%;background:#fff;transition:width .1s ease;box-shadow:0 0 4px #fff9,inset 0 0 4px #ffffff4d}#boss-progress-text{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:18px;font-weight:700;color:#000;text-shadow:0 0 3px rgba(255,255,255,.8),0 0 6px rgba(255,255,255,.5);z-index:1;letter-spacing:1px}.boss-dialog-content{position:relative;background:var(--bg-rpg-box);border:var(--border-rpg);padding:0;max-width:550px;width:90%;text-align:center;box-shadow:var(--shadow-md);animation:bossContentEnter .6s cubic-bezier(.34,1.56,.64,1);overflow:hidden;z-index:101}.boss-dialog-content:before{display:none}.boss-dialog-header{padding:30px 40px 20px;background:#00000080;border-bottom:var(--border-rpg)}.boss-icon{font-size:64px;margin-bottom:10px;animation:bossIconFloat 2s ease-in-out infinite;filter:drop-shadow(0 0 8px rgba(255,68,68,.5))}@keyframes bossIconFloat{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(5deg)}}.boss-title{font-size:36px;font-weight:700;margin-bottom:8px;color:#fff;text-shadow:0 0 4px rgba(255,255,255,.8),0 0 8px rgba(255,255,255,.5);letter-spacing:4px;font-family:var(--font-family);text-transform:uppercase;animation:matrixGlitch 6s ease-in-out infinite}.boss-subtitle{font-size:14px;color:#fff;text-transform:uppercase;letter-spacing:5px;font-weight:600;font-family:var(--font-family);text-shadow:0 0 3px rgba(255,255,255,.8),0 0 6px rgba(255,255,255,.5)}.boss-dialog-body{padding:30px 40px}.boss-warning{font-size:18px;font-weight:700;margin-bottom:25px;color:#fff;display:flex;align-items:center;justify-content:center;gap:10px;text-shadow:0 0 4px rgba(255,255,255,.8),0 0 8px rgba(255,255,255,.5);font-family:var(--font-family);text-transform:uppercase;letter-spacing:2px}.warning-icon{font-size:24px;animation:warningPulse 1.5s ease-in-out infinite}@keyframes warningPulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.boss-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:25px 0;padding:20px;background:var(--bg-rpg-box);border:var(--border-rpg);box-shadow:inset 0 0 0 1px #00000080,0 2px 4px #0000004d}.boss-stat-item{display:flex;flex-direction:column;gap:8px}.stat-label{font-size:11px;color:#fff;text-transform:uppercase;letter-spacing:2px;font-family:var(--font-family);text-shadow:0 0 2px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,.5)}.stat-value{font-size:16px;font-weight:700;color:#fff;font-family:var(--font-family);text-shadow:0 0 3px rgba(255,255,255,.8),0 0 6px rgba(255,255,255,.5);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat-value.danger{color:#fff;text-shadow:0 0 4px rgba(255,255,255,1),0 0 8px rgba(255,255,255,.8),0 0 12px rgba(255,255,255,.6);animation:matrixGlitch 2s ease-in-out infinite}@keyframes dangerPulse{0%,to{opacity:1}50%{opacity:.7}}.timer-value{color:#fff;font-size:20px;font-family:var(--font-family);text-shadow:0 0 4px rgba(255,255,255,.8),0 0 8px rgba(255,255,255,.5);letter-spacing:2px}.timer-value span{display:inline-block}@keyframes timerPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes timerCount{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.boss-ready{font-size:16px;font-weight:700;margin-top:20px;color:#fff;display:flex;align-items:center;justify-content:center;gap:10px;font-family:var(--font-family);text-shadow:0 0 3px rgba(255,255,255,.8),0 0 6px rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:2px}.ready-icon{font-size:20px;animation:readyRotate 2s ease-in-out infinite}@keyframes readyRotate{0%,to{transform:rotate(0)}25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}.boss-dialog-buttons{display:flex;gap:10px;justify-content:center;padding:0 40px 40px}.boss-btn{position:relative;font-family:var(--font-family);font-size:18px;font-weight:700;padding:18px 50px;cursor:pointer;text-transform:uppercase;transition:all .2s ease;overflow:hidden;letter-spacing:2px}.boss-btn-start{background:var(--bg-rpg-box);border:var(--border-rpg);color:#fffae5;box-shadow:inset 0 0 0 1px #00000080,0 2px 4px #0000004d;text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1);font-family:var(--font-family)}.boss-btn-start:hover{background:#000000f2;border-color:#fff;box-shadow:inset 0 0 0 1px #00000080,0 3px 6px #0006,inset 0 0 8px #ffffff1a}.boss-btn-start .btn-text{position:relative;z-index:2}.boss-btn-start .btn-glow{position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.boss-btn-start:active{transform:scale(.95);transition:all .1s ease;box-shadow:inset 0 0 0 1px #00000080,inset 0 2px 4px #00000080}.boss-btn-close{background:#000000f2;color:#fff;border:1px solid rgba(255,255,255,.9);box-shadow:0 0 4px #fff6,0 0 8px #ffffff26;font-family:var(--font-family);text-shadow:0 0 3px rgba(255,255,255,.8),0 0 6px rgba(255,255,255,.5);letter-spacing:2px}.boss-btn-close:hover{background:#000000f2;border-color:#fff;box-shadow:inset 0 0 0 1px #00000080,0 3px 6px #0006,inset 0 0 8px #ffffff1a}#boss-timer-hud{position:absolute;top:20px;left:50%;transform:translate(-50%);width:450px;max-width:90%;z-index:110;pointer-events:none;animation:timerHudEnter .5s cubic-bezier(.34,1.56,.64,1)}@keyframes timerHudEnter{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.boss-timer-content{background:var(--bg-rpg-box);border:var(--border-rpg);padding:18px 25px;box-shadow:var(--shadow-md);position:relative;overflow:hidden}.boss-timer-content:before{content:"";position:absolute;inset:-2px;background:linear-gradient(45deg,#fff,#0ff,#fff);background-size:200% 200%;border-radius:15px;z-index:-1;animation:timerBorderFlow 2s linear infinite}@keyframes timerBorderFlow{0%{background-position:0% 50%}to{background-position:200% 50%}}.boss-timer-bar-bg{height:24px;background:#0009;border:none;overflow:hidden;margin-bottom:12px;position:relative;box-shadow:none}.boss-timer-bar-fill{height:100%;background:#fff;transition:width .1s linear,background-color .5s;box-shadow:0 0 4px #fff9,inset 0 0 4px #ffffff4d;position:relative}.boss-timer-bar-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%);animation:timerBarScan 1.5s ease-in-out infinite}@keyframes timerBarShimmer{0%{background-position:0% 50%}to{background-position:200% 50%}}@keyframes timerBarScan{0%{transform:translate(-100%)}to{transform:translate(100%)}}.boss-timer-bar-fill.warning{background:#fff;box-shadow:0 0 6px #fffc,inset 0 0 4px #fff6;animation:matrixGlitch 2s ease-in-out infinite}.boss-timer-bar-fill.critical{background:#fff;box-shadow:0 0 8px #fff,0 0 12px #fffc,inset 0 0 4px #ffffff80;animation:matrixGlitch 1s ease-in-out infinite}@keyframes criticalPulse{0%,to{opacity:1}50%{opacity:.8}}.boss-timer-text{text-align:center;font-size:26px;font-weight:700;color:#fff;text-shadow:0 0 4px rgba(255,255,255,.8),0 0 8px rgba(255,255,255,.5);letter-spacing:3px;font-family:var(--font-family);text-transform:uppercase}.boss-timer-text.warning{color:#fff;text-shadow:0 0 6px rgba(255,255,255,1),0 0 12px rgba(255,255,255,.8);animation:matrixGlitch 1.5s ease-in-out infinite,timerPulse 1s ease-in-out infinite}.boss-timer-text.critical{color:#fff;text-shadow:0 0 8px rgba(255,255,255,1),0 0 16px rgba(255,255,255,1),0 0 24px rgba(255,255,255,.8);animation:matrixGlitch .8s ease-in-out infinite,timerCount .5s ease-in-out infinite}@keyframes critical-flash{0%,to{transform:scale(1);text-shadow:0 0 20px rgba(255,0,68,1),0 0 40px rgba(255,0,68,.6),0 2px 4px rgba(0,0,0,.8)}50%{transform:scale(1.08);text-shadow:0 0 30px rgba(255,0,68,1),0 0 60px rgba(255,0,68,.8),0 2px 4px rgba(0,0,0,.8)}}#boss-timeout-modal{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:200;animation:timeoutModalEnter .5s cubic-bezier(.34,1.56,.64,1);pointer-events:auto}.boss-timeout-backdrop{position:absolute;inset:0;background:#000000f2}@keyframes timeoutModalEnter{0%{opacity:0}to{opacity:1}}.boss-timeout-content{position:relative;background:var(--bg-rpg-box);border:var(--border-rpg);padding:50px 60px;max-width:500px;width:90%;text-align:center;box-shadow:var(--shadow-md);animation:timeoutContentEnter .6s cubic-bezier(.34,1.56,.64,1);overflow:hidden;z-index:201}.boss-timeout-content:before{display:none}@keyframes timeoutContentEnter{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.timeout-icon{font-size:80px;margin-bottom:20px;animation:timeoutIconShake .5s ease-in-out infinite;filter:drop-shadow(0 0 8px rgba(255,68,68,.5))}@keyframes timeoutIconShake{0%,to{transform:rotate(0)}25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}.timeout-title{font-size:42px;font-weight:700;margin-bottom:15px;color:#fff;text-shadow:0 0 4px rgba(255,255,255,.8),0 0 8px rgba(255,255,255,.5);letter-spacing:5px;text-transform:uppercase;font-family:var(--font-family);animation:matrixGlitch 3s ease-in-out infinite}.timeout-message{font-size:24px;font-weight:700;color:#fff;margin-bottom:10px;text-shadow:0 0 3px rgba(255,255,255,.8),0 0 6px rgba(255,255,255,.5);font-family:var(--font-family);text-transform:uppercase;letter-spacing:2px}.timeout-submessage{font-size:16px;color:#fff;margin-bottom:30px;line-height:1.6;font-family:var(--font-family);text-shadow:0 0 2px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,.5);letter-spacing:1px}@media(max-width:768px){#app{flex-direction:column}#shop-panel{width:100%;border-left:none;border-top:2px solid #fff;max-height:40vh}#game-container{height:60vh}.boss-dialog-content{padding:20px;margin:20px;max-width:90%}.boss-title{font-size:28px}.boss-icon{font-size:48px}.boss-stats{grid-template-columns:1fr;gap:10px}.boss-btn-start{padding:15px 30px;font-size:16px}.boss-timeout-content{padding:30px 40px}.timeout-title{font-size:32px}.timeout-icon{font-size:60px}#boss-timer-hud{width:85%}}#hud-buttons-container{margin-top:15px;display:grid;grid-template-columns:repeat(2,48px);gap:10px;width:fit-content;max-width:320px;order:3;position:relative;padding-top:40px}.stat-item{margin-top:6px;color:#fff;font-family:var(--font-family);font-size:13px;font-weight:600;letter-spacing:1px;padding:6px 12px;background:#000000f2;border:1px solid rgba(255,255,255,.9);transition:all .1s linear;position:relative;box-shadow:0 0 2px #ffffff4d,0 0 4px #ffffff1a;text-shadow:0 0 2px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,.5)}.stat-item:hover{background:#000000e6;border-color:#fff;box-shadow:inset 0 0 0 1px #00000080,0 2px 6px #0006}.stat-dps,.stat-passive,.stat-crit{color:#fff}.hud-button{padding:0;background:transparent;border:none;cursor:pointer;pointer-events:auto;transition:transform .2s ease,opacity .2s ease;margin:0;display:inline-block;box-sizing:border-box;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;opacity:.7}.hud-button:hover{transform:scale(1.1);opacity:1}.hud-button img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.hud-button svg{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.hud-button-icon{display:block;width:100%;height:100%}.hud-button-text{display:none}@media(min-width:769px){.hud-button{width:48px;height:48px;min-width:48px;max-width:48px}}@media(max-width:768px){.hud-button{width:48px;height:48px}}.hud-button:active{transform:scale(.95)}@media(max-width:1400px){#hud-buttons-container{max-width:280px}}@media(max-width:1200px){#hud-buttons-container{grid-template-columns:1fr;max-width:200px}}@media(max-width:900px){#hud{font-size:12px}#hud-buttons-container{gap:6px}}.boss-retry-button{background:#f003!important;border:3px solid #ff0000!important;color:red!important;animation:boss-retry-pulse 2s ease-in-out infinite;box-shadow:0 0 20px #ff000080!important;position:relative;overflow:visible!important}.boss-retry-tooltip{position:absolute;top:50%;left:calc(100% + 8px);transform:translateY(-50%);background:#000000f2;border:2px solid rgba(255,0,0,.5);padding:8px 12px;border-radius:4px;font-size:11px;color:#fff;box-shadow:0 0 10px #ff00004d,inset 0 0 10px #ff00001a;font-family:var(--font-family);pointer-events:none;opacity:0;transition:opacity .2s;z-index:10000;min-width:200px;max-width:250px;white-space:normal;text-align:left;line-height:1.4}.boss-retry-button:hover .boss-retry-tooltip{opacity:1}@media(min-width:769px){.boss-retry-button{padding:0!important;width:48px!important;height:48px!important;min-width:48px!important;max-width:48px!important;overflow:visible!important}.boss-retry-button:hover{background:#f006!important;box-shadow:0 0 30px #f00c!important;transform:translateY(-3px) scale(1.05);z-index:100}.boss-retry-button:hover .boss-retry-tooltip{opacity:1;z-index:10001}}@media(max-width:768px){.boss-retry-button{width:48px;height:48px}.boss-retry-button:hover{transform:scale(1.1)}.boss-retry-button .boss-retry-tooltip{display:none!important}.boss-retry-button:hover .boss-retry-tooltip{display:none!important;opacity:0!important}}@keyframes boss-retry-pulse{0%,to{box-shadow:0 0 20px #ff000080}50%{box-shadow:0 0 40px red}}.achievement-snackbar{position:fixed;top:-200px;left:50%;transform:translate(-50%);background:var(--bg-rpg-box);border:var(--border-rpg);padding:15px 25px;display:flex;align-items:center;gap:15px;z-index:10000;box-shadow:var(--shadow-md);transition:top .3s ease-out;min-width:350px;max-width:500px;font-family:var(--font-family)}.achievement-snackbar.show{top:20px}.achievement-icon{font-size:48px;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:48px;height:48px}.achievement-icon svg{width:100%;height:100%;display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.achievement-content{flex:1}.achievement-title{font-size:12px;color:#fffae5;font-weight:700;text-transform:uppercase;margin-bottom:5px;text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1);font-family:var(--font-family)}.achievement-name{font-size:18px;font-weight:700;margin-bottom:3px;color:#fffae5;text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1);font-family:var(--font-family)}.achievement-desc{font-size:14px;color:#fffae5;font-family:var(--font-family)}.modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#0000;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px;opacity:0;pointer-events:none;transition:opacity .3s ease,background-color .3s ease;backdrop-filter:none}.modal.show{opacity:1;pointer-events:auto;background:#000000d9;animation:modalBackdropFadeIn .3s ease-out}.modal.show .modal-content{animation:modalSlideIn .4s cubic-bezier(.175,.885,.32,1.275)}@keyframes modalBackdropFadeIn{0%{background:#0000;backdrop-filter:none}to{background:#000000d9;backdrop-filter:none}}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes modalSlideOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-30px) scale(.95)}}.modal-content{background:var(--bg-rpg-box);border:var(--border-rpg);max-width:900px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;padding:20px;box-shadow:var(--shadow-md);font-family:var(--font-family);position:relative;transform-origin:center;transition:transform .2s ease,box-shadow .3s ease}.achievements-content{max-width:1000px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:var(--border-rpg)}.modal-header h2{font-size:32px;margin:0;color:#fffae5;text-shadow:2px 2px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,.8);font-family:var(--font-family);text-transform:uppercase;font-weight:400;letter-spacing:1px}.modal-close{background:transparent;border:none;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:transform .2s ease;box-shadow:none}.modal-close img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.modal-close:hover{transform:scale(1.1)}.modal-close:active{transform:scale(1.05)}.achievements-progress{padding:20px;border-bottom:var(--border-rpg)}.progress-text{display:flex;justify-content:space-between;margin-bottom:10px;font-size:18px;font-weight:700;color:#fff;font-family:var(--font-family)}.progress-bar-container{width:100%;height:20px;background:#0000004d;border:1px solid rgba(102,204,255,.2);border-radius:10px;overflow:hidden;position:relative}.progress-bar{height:100%;background:linear-gradient(90deg,#6cf,#00b3ff,#6fc);transition:width .5s ease;position:relative;border-radius:10px}.achievements-filters{display:flex;gap:10px;padding:15px 20px;border-bottom:var(--border-rpg);flex-wrap:wrap;overflow-x:auto}.filter-btn{padding:8px 15px;background:var(--bg-rpg-box);border:var(--border-rpg);color:#fffae5;font-family:var(--font-family);font-size:13px;font-weight:700;cursor:pointer;transition:all .2s ease;white-space:nowrap;text-transform:uppercase;text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1);box-shadow:inset 0 0 0 1px #00000080,0 2px 4px #0000004d}.filter-btn:hover{background:#000000f2;border-color:#fff;box-shadow:inset 0 0 0 1px #00000080,0 3px 6px #0006,inset 0 0 8px #ffffff1a}.filter-btn.active{background:#000;border-color:#fff;box-shadow:inset 0 0 0 1px #00000080,0 2px 6px #0006,inset 0 0 12px #ffffff26}.achievements-grid{padding:20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:15px;overflow-y:auto;max-height:calc(90vh - 300px)}.achievement-item{background:var(--bg-rpg-box);border:var(--border-rpg);padding:15px;display:flex;gap:12px;align-items:start;transition:all .2s ease;position:relative;box-shadow:inset 0 0 0 1px #00000080,0 2px 4px #0000004d}.achievement-item:hover{border-color:#fff;box-shadow:inset 0 0 0 1px #00000080,0 3px 6px #0006,inset 0 0 8px #ffffff1a}.achievement-item.unlocked{background:#000000e6;border-color:#fffc}.achievement-item.locked{opacity:.6;background:#00000080}.achievement-icon-large{font-size:40px;flex-shrink:0}.achievement-icon-large.grayscale{filter:grayscale(100%);opacity:.5}.achievement-details{flex:1}.achievement-item-name{font-size:16px;font-weight:700;margin-bottom:5px;color:#fffae5;text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1);font-family:var(--font-family)}.achievement-item-desc{font-size:13px;color:#fffae5;margin-bottom:8px;line-height:1.4;font-family:var(--font-family)}.achievement-category-badge{display:inline-block;padding:3px 8px;font-size:10px;font-weight:700;text-transform:uppercase;background:#000c;border:1px solid rgba(255,255,255,.6);color:#fffae5;font-family:var(--font-family);box-shadow:inset 0 0 0 1px #0000004d}.achievement-category-badge.combat{border-color:#f44c}.achievement-category-badge.progression,.achievement-category-badge.collection{border-color:#fffc}.achievement-category-badge.mastery{border-color:#fa0c}.achievement-category-badge.secret{border-color:#ffffff80}.achievement-lock{position:absolute;top:10px;right:10px;font-size:20px;opacity:.3}.achievement-checkmark{position:absolute;top:10px;right:10px;font-size:24px;color:#08f;font-weight:700}.stats-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#0006;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px;backdrop-filter:none;-webkit-backdrop-filter:none}.stats-modal .modal-header h2{color:#fff;text-shadow:0 0 3px rgba(255,255,255,.8),0 0 6px rgba(255,255,255,.5);font-size:32px;animation:none;letter-spacing:2px}.stats-content{background:#000000f2;border:2px solid rgba(255,255,255,.9);box-shadow:0 0 20px #fff3;border-radius:0;max-width:1000px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;backdrop-filter:none;-webkit-backdrop-filter:none}.stats-container{padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:20px}.stats-category{background:#0006;border:2px solid rgba(255,255,255,.3);box-shadow:0 0 8px #0000004d;border-radius:0;padding:15px;transition:all var(--transition-base);backdrop-filter:none;-webkit-backdrop-filter:none}.stats-category:hover{border-color:#ffffffb3;background:#000000b3;box-shadow:0 0 12px #ffffff4d;transform:translateY(-2px)}.stats-category-title{font-size:18px;margin:0 0 12px;color:#fff;text-transform:uppercase;letter-spacing:2px;font-weight:700;text-shadow:0 0 2px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,.5);border-bottom:2px solid rgba(255,255,255,.2);padding-bottom:8px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}.stat-item{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#00000080;border:2px solid rgba(255,255,255,.3);border-radius:0;box-shadow:0 0 8px #0000004d;transition:all var(--transition-base);backdrop-filter:none;-webkit-backdrop-filter:none}.stat-item:hover{background:#000000b3;border-color:#ffffffb3;box-shadow:0 0 12px #ffffff4d;transform:translate(3px)}.stats-modal .stat-label{color:#fffc;font-size:13px;font-family:var(--font-family);letter-spacing:1px}.stats-modal .stat-value{color:#fff;font-weight:700;font-size:15px;text-align:right;font-family:var(--font-family);text-shadow:0 0 2px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,.5)}@media(max-width:768px){.achievements-grid{grid-template-columns:1fr;max-height:calc(90vh - 350px)}.achievements-filters{justify-content:center}.filter-btn{font-size:11px;padding:6px 10px}.modal-header h2{font-size:22px}.achievement-snackbar{min-width:280px;max-width:90vw}.achievement-icon{font-size:36px}.achievement-name{font-size:16px}.achievement-desc{font-size:12px}.stats-grid{grid-template-columns:1fr}.stats-content{max-height:85vh}}.ascension-modal .modal-content{background:#000000f2;border:2px solid rgba(255,255,255,.9);box-shadow:0 0 20px #fff3;max-width:1000px}.ascension-modal .modal-header h2{color:#fff;text-shadow:0 0 3px rgba(255,255,255,.8),0 0 6px rgba(255,255,255,.5);font-size:32px;animation:none;letter-spacing:2px}.ascension-info{padding:20px;border-bottom:2px solid rgba(255,255,255,.2)}.ascension-description{background:transparent;padding:15px;border-radius:0;margin-bottom:15px;border:none;color:#fff}.ascension-info-box{margin-top:15px;padding:15px;background:#0006;border:2px solid rgba(255,255,255,.3);box-shadow:0 0 8px #0000004d}.ascension-info-title{margin:0 0 10px;font-weight:700;font-size:16px;color:#fff;text-shadow:0 0 2px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,.5);letter-spacing:1px}.ascension-description ul{margin:10px 0 10px 30px;line-height:1.8}.ascension-rewards{background:#0006;padding:15px;border-radius:0;border:2px solid rgba(255,255,255,.3);box-shadow:0 0 8px #0000004d}.prestige-points-display{display:flex;justify-content:space-around;font-size:18px;font-weight:700}.prestige-current,.prestige-gain{color:#fff;text-shadow:0 0 2px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,.5)}.ascension-upgrades{padding:20px;border-bottom:2px solid rgba(255,255,255,.2)}.ascension-upgrades h3{color:#fff;margin-bottom:15px;font-size:20px;text-shadow:0 0 2px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,.5);letter-spacing:1px}.prestige-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;max-height:400px;overflow-y:auto}.prestige-upgrade-card{background:#00000080;border:2px solid rgba(255,255,255,.3);border-radius:0;padding:12px;cursor:pointer;transition:all .2s ease;box-shadow:0 0 8px #0000004d}.prestige-upgrade-card:not(.maxed):not(.locked):hover{border-color:#ffffffb3;transform:translateY(-2px);box-shadow:0 0 12px #ffffff4d;background:#000000b3}.prestige-upgrade-card.locked{opacity:.5;cursor:not-allowed}.prestige-upgrade-card.maxed{background:#00000080;border-color:#ffffff80;cursor:default}.prestige-upgrade-name{font-size:14px;font-weight:700;color:#fff;margin-bottom:5px;text-shadow:0 0 2px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,.5)}.prestige-upgrade-level{font-size:11px;color:#ffffffb3;margin-bottom:8px}.prestige-upgrade-desc{font-size:12px;color:#fffc;margin-bottom:8px;line-height:1.3}.prestige-upgrade-effect{font-size:11px;color:#ffffffe6;font-style:italic;margin-bottom:8px}.prestige-upgrade-cost{font-size:12px;font-weight:700;color:#fff;text-align:center;padding-top:8px;border-top:1px solid rgba(255,255,255,.2);text-shadow:0 0 2px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,.5)}.ascension-actions{padding:20px;display:flex;justify-content:center}.ascension-btn{font-family:var(--font-family);font-size:20px;font-weight:700;padding:15px 50px;background:#000c;color:#fff;border:2px solid rgba(255,255,255,.9);border-radius:0;cursor:pointer;transition:all .2s ease;text-transform:uppercase;box-shadow:0 0 8px #fff3;text-shadow:0 0 2px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,.5);letter-spacing:2px}.ascension-btn:hover:not(:disabled){background:#000000f2;border-color:#fff;box-shadow:0 0 12px #fff6;transform:translateY(-2px)}.ascension-btn:active:not(:disabled){transform:translateY(0)}.ascension-btn:disabled{background:#00000080;color:#ffffff4d;border-color:#ffffff4d;cursor:not-allowed;box-shadow:none;font-size:14px;text-shadow:none}.ascension-hud-btn{background:transparent;border:none;color:inherit;font-weight:400;animation:none}.ascension-hud-btn:hover{background:transparent;box-shadow:none}.ascension-hud-btn:hover img{filter:drop-shadow(0 0 8px rgba(255,215,0,.6))}@keyframes ascension-pulse{0%,to{box-shadow:0 0 10px #ffd70080}50%{box-shadow:0 0 25px #ffd700cc}}.modal-button{background:var(--bg-rpg-box);color:#fffae5;border:var(--border-rpg);padding:10px 20px;font-family:var(--font-family);font-size:14px;font-weight:700;cursor:pointer;transition:all .2s ease;text-transform:uppercase;text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1);box-shadow:inset 0 0 0 1px #00000080,0 2px 4px #0000004d}.modal-button:hover{background:#000000f2;border-color:#fff;box-shadow:inset 0 0 0 1px #00000080,0 3px 6px #0006,inset 0 0 8px #ffffff1a}.modal-button:disabled{background:#00000080;color:#fffae54d;border-color:#ffffff4d;cursor:not-allowed;box-shadow:none}.modal select{background:#0000004d!important;color:#fff!important;border:1px solid rgba(102,204,255,.3)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;-webkit-appearance:none;-moz-appearance:none;appearance:none}.modal select option{background-color:#fff!important;color:#000!important;padding:8px 12px!important}.modal select option:not(:checked){background-color:#fff!important;color:#000!important}.modal select option:checked{background-color:#06c!important;color:#fff!important}.modal select option:hover{background-color:#e0e0e0!important;color:#000!important}#debug-panel{position:fixed;inset:0;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.debug-content{background:#0006;border:1px solid rgba(102,204,255,.3);border-radius:15px;padding:30px;max-width:800px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg);backdrop-filter:none;-webkit-backdrop-filter:none}.debug-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding-bottom:15px;border-bottom:2px solid #ffffff}.debug-header h2{font-size:28px;color:#fff;margin:0;text-shadow:0 0 10px rgba(102,204,255,.8)}.debug-btn-close{padding:0;width:32px;height:32px;background:transparent;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease}.debug-btn-close img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.debug-btn-close:hover{transform:scale(1.1)}.debug-section{margin-bottom:25px;padding:15px;background:#0000004d;border-radius:10px;border:1px solid rgba(255,255,255,.1)}.debug-section h3{font-size:18px;color:#6cf;margin:0 0 15px;text-shadow:0 1px 2px rgba(0,0,0,.8)}.debug-controls{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}.debug-controls:last-child{margin-bottom:0}.debug-btn{font-family:inherit;font-size:14px;font-weight:700;padding:10px 20px;background:#0000004d;border:1px solid rgba(102,204,255,.3);color:#fff;cursor:pointer;border-radius:5px;transition:all var(--transition-base);text-transform:uppercase;backdrop-filter:none;-webkit-backdrop-filter:none}.debug-btn:hover{background:#0006;border-color:#66ccff80;box-shadow:0 4px 12px #0000004d;transform:translateY(-2px)}.debug-btn:active{transform:translateY(0)}.debug-btn-special{border-color:#fa0;color:#fa0;background:#ffaa001a}.debug-btn-special:hover{background:#ffaa004d;box-shadow:0 0 15px #ffaa0080}.debug-btn-boss{border-color:red;color:red;background:#ff00001a}.debug-btn-boss:hover{background:#ff00004d;box-shadow:0 0 15px #ff000080}.debug-btn-danger{border-color:#f44;color:#f44;background:#ff44441a}.debug-btn-danger:hover{background:#ff44444d;box-shadow:0 0 15px #ff444480}#debug-points-input,#debug-level-input{font-family:inherit;font-size:14px;padding:10px 15px;background:#00000080;border:2px solid rgba(255,255,255,.3);color:#fff;border-radius:5px;flex:1;min-width:150px}#debug-points-input:focus,#debug-level-input:focus{outline:none;border-color:#66ccff80;box-shadow:0 0 8px #66ccff4d}.debug-info{margin-top:20px;padding:15px;background:#0003;border:1px solid #ffffff;border-radius:5px;text-align:center}.debug-info p{margin:0;color:#fff;font-size:14px}.debug-info kbd{display:inline-block;padding:3px 8px;background:#00000080;border:1px solid #ffffff;border-radius:3px;font-family:monospace;font-weight:700;color:#fff;margin:0 2px}.debug-notification{position:fixed;top:20px;right:20px;background:#0000004d;border:1px solid rgba(102,204,255,.3);border-radius:5px;padding:15px 25px;color:#fff;font-weight:700;font-size:16px;z-index:10001;box-shadow:var(--shadow-md);backdrop-filter:none;-webkit-backdrop-filter:none;opacity:0;transform:translate(400px);transition:all .3s ease}.debug-notification.show{opacity:1;transform:translate(0)}.version-splash{position:fixed;top:0;left:0;width:100vw;height:100vh;background:linear-gradient(135deg,#0a0a1a,#1a0a2a,#0a1a2a);display:flex;align-items:center;justify-content:center;z-index:20000;animation:splash-fade-in .5s ease}@keyframes splash-fade-in{0%{opacity:0}to{opacity:1}}.version-splash.fade-out{animation:splash-fade-out .5s ease forwards}@keyframes splash-fade-out{to{opacity:0}}.version-splash-content{max-width:900px;max-height:90vh;overflow-y:auto;padding:40px;background:#000c;border:3px solid #ffffff;border-radius:15px;box-shadow:0 0 50px #66ccff80,inset 0 0 30px #66ccff1a}.version-splash-header{text-align:center;margin-bottom:30px}.version-splash-header h1{font-size:48px;background:linear-gradient(135deg,#fff,#6cf,#6fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:15px;text-shadow:0 0 30px rgba(102,204,255,.5);animation:rainbow-pulse 3s ease-in-out infinite}@keyframes rainbow-pulse{0%,to{filter:hue-rotate(0deg) brightness(1)}50%{filter:hue-rotate(20deg) brightness(1.2)}}.version-badge{display:inline-block;padding:8px 20px;background:linear-gradient(135deg,#ff0080,#ff8c00);border-radius:20px;font-weight:700;font-size:14px;letter-spacing:2px;animation:badge-glow 2s ease-in-out infinite}@keyframes badge-glow{0%,to{box-shadow:0 0 10px #ff008080}50%{box-shadow:0 0 20px #ff8c00cc}}.version-splash-body h2{text-align:center;font-size:28px;color:#0ff;margin-bottom:30px;text-shadow:0 0 10px rgba(0,255,255,.5)}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.feature-item{background:#0003;border:1px solid rgba(102,204,255,.3);border-radius:10px;padding:20px;transition:all var(--transition-base);backdrop-filter:none;-webkit-backdrop-filter:none}.feature-item:hover{border-color:#66ccff80;background:#0000004d;transform:translateY(-5px);box-shadow:0 4px 12px #0000004d}.feature-icon{font-size:48px;text-align:center;margin-bottom:15px;animation:icon-float 3s ease-in-out infinite}@keyframes icon-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.feature-item h3{font-size:18px;color:#0ff;margin-bottom:10px;text-align:center}.feature-item p{font-size:14px;color:#fffc;text-align:center;line-height:1.5}.version-footer{text-align:center;padding:20px;background:#ffffff0d;border-radius:10px;margin-bottom:20px}.version-footer p{font-size:16px;color:#fa0;font-weight:700}.version-splash-close{display:block;width:100%;padding:15px;font-family:inherit;font-size:20px;font-weight:700;background:#0000004d;border:1px solid rgba(102,204,255,.3);border-radius:10px;backdrop-filter:none;-webkit-backdrop-filter:none;color:#000;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:2px}.version-splash-close:hover{transform:scale(1.05);box-shadow:0 4px 12px #0000004d;border-color:#66ccff80;background:#0006;color:#fff}.missions-modal-content{max-width:800px;width:90vw;max-height:80vh;background:#000000f2;border:2px solid rgba(255,255,255,.9);box-shadow:0 0 20px #fff3;border-radius:0}.missions-modal-content .modal-header h2{color:#fff;text-shadow:0 0 3px rgba(255,255,255,.8),0 0 6px rgba(255,255,255,.5);font-size:32px;animation:none;letter-spacing:2px}.missions-tabs{display:flex;gap:10px;margin-bottom:20px;border-bottom:2px solid rgba(255,255,255,.2);padding-bottom:10px}.mission-tab{padding:10px 20px;background:#00000080;border:2px solid rgba(255,255,255,.3);border-radius:0;box-shadow:0 0 8px #0000004d;color:#fff;cursor:pointer;font-family:inherit;font-size:16px;font-weight:700;letter-spacing:1px;transition:all .2s;text-transform:uppercase}.mission-tab:hover{background:#000000b3;border-color:#ffffffb3;box-shadow:0 0 12px #ffffff4d}.mission-tab.active{background:#000c;border-color:#ffffffe6;color:#fff;text-shadow:0 0 2px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,.5)}.missions-container{display:flex;flex-direction:column;gap:15px;max-height:500px;overflow-y:auto;padding-right:10px}.mission-card{display:flex;align-items:center;gap:15px;padding:15px;background:#00000080;border:2px solid rgba(255,255,255,.3);border-radius:0;box-shadow:0 0 8px #0000004d;transition:all .2s}.mission-card:hover{background:#000000b3;border-color:#ffffffb3;box-shadow:0 0 12px #ffffff4d}.mission-card.completed{border-color:#ffffffb3;background:#0009}.mission-card.claimed{opacity:.6;border-color:#fff3;background:#0006}.mission-icon{font-size:48px;min-width:60px;text-align:center;display:flex;align-items:center;justify-content:center}.mission-icon img{image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.mission-info{flex:1}.mission-title{font-size:18px;color:#fff;margin-bottom:5px;text-shadow:0 0 2px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,.5);letter-spacing:1px}.mission-description{font-size:14px;color:#fffc;margin-bottom:10px}.mission-progress-bar{width:100%;height:8px;background:#fff3;border-radius:4px;overflow:hidden;margin-bottom:5px}.mission-progress-fill{height:100%;background:#ffffffe6;transition:width .3s ease;border-radius:0;box-shadow:0 0 4px #ffffff80}.mission-progress-text{font-size:12px;color:#fffc;letter-spacing:1px}.mission-reward{display:flex;flex-direction:column;align-items:flex-end;gap:5px;min-width:150px}.reward-item{font-size:14px;font-weight:700;color:#fff;text-shadow:0 0 2px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,.5);letter-spacing:1px}.claim-btn{padding:10px 20px;background:#000c;border:2px solid rgba(255,255,255,.9);border-radius:0;box-shadow:0 0 8px #fff3;color:#fff;font-family:inherit;font-weight:700;font-size:14px;letter-spacing:2px;cursor:pointer;transition:all var(--transition-base);text-transform:uppercase;text-shadow:0 0 2px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,.5);backdrop-filter:none;-webkit-backdrop-filter:none}.claim-btn:hover{background:#000000f2;border-color:#fff;box-shadow:0 0 12px #fff6;transform:translateY(-2px)}.claimed-badge{color:#ffffffb3;font-weight:700;font-size:14px;letter-spacing:1px;text-transform:uppercase}.no-missions{text-align:center;padding:40px;color:#ffffff80;font-size:16px}.artifacts-modal-content{max-width:750px;width:85vw;max-height:80vh;background:#0000004d;border:1px solid rgba(102,204,255,.3);box-shadow:var(--shadow-md);backdrop-filter:none;-webkit-backdrop-filter:none}.artifacts-header{padding:15px 20px;border-bottom:var(--border-rpg);margin-bottom:15px}.artifacts-stats{display:flex;gap:25px;justify-content:center;font-size:15px;color:#fffae5;margin-bottom:15px;font-weight:600;font-family:var(--font-family)}.artifacts-stats .stat-item{font-family:var(--font-family);padding:6px 12px;background:var(--bg-rpg-box);border:var(--border-rpg);box-shadow:inset 0 0 0 1px #00000080,0 2px 4px #0000004d;text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1)}.artifacts-stats strong{color:#fffae5;font-weight:700;font-size:16px;text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1)}.artifacts-filters{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:12px}.artifacts-filters .filter-btn{padding:8px 16px;background:var(--bg-rpg-box);border:var(--border-rpg);color:#fffae5;font-family:var(--font-family);font-size:13px;font-weight:700;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.5px;position:relative;overflow:hidden;text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1);box-shadow:inset 0 0 0 1px #00000080,0 2px 4px #0000004d}.artifacts-filters .filter-btn:before{content:"";position:absolute;inset:0;background:#ffffff1a;opacity:0;transition:opacity .2s ease;z-index:0}.artifacts-filters .filter-btn:hover:before{opacity:1}.artifacts-filters .filter-btn:hover{border-color:#fff;color:#fffae5;background:#000000f2;box-shadow:inset 0 0 0 1px #00000080,0 3px 6px #0006,inset 0 0 8px #ffffff1a}.artifacts-filters .filter-btn.active{background:#000;border-color:#fff;color:#fffae5;box-shadow:inset 0 0 0 1px #00000080,0 2px 6px #0006,inset 0 0 12px #ffffff26}.artifacts-inventory{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;max-height:calc(80vh - 220px);overflow-y:auto;padding:10px 12px 10px 10px}.artifact-slot{position:relative;background:var(--bg-rpg-box);border:var(--border-rpg);padding:10px;transition:all .2s ease;cursor:pointer;display:flex;flex-direction:column;min-height:180px;overflow:hidden;box-shadow:inset 0 0 0 1px #00000080,0 2px 4px #0000004d}.artifact-slot-glow{position:absolute;top:50%;left:50%;width:120%;height:120%;transform:translate(-50%,-50%);border-radius:50%;opacity:0;transition:opacity .3s ease;pointer-events:none;z-index:0}.artifact-slot:hover .artifact-slot-glow{opacity:1}.artifact-slot:hover{transform:translateY(-2px) scale(1.01);box-shadow:inset 0 0 0 1px #00000080,0 3px 6px #0006,inset 0 0 8px #ffffff1a;border-color:#fff}.artifact-slot.equipped{background:#000000e6;border-color:#fffc;box-shadow:inset 0 0 0 1px #00000080,0 2px 6px #0006,inset 0 0 12px #ffffff26}.artifact-slot-icon{position:relative;width:100%;aspect-ratio:1;display:flex;align-items:center;justify-content:center;margin-bottom:10px;border:var(--border-rpg);overflow:hidden;z-index:1;background:#00000080;box-shadow:inset 0 0 0 1px #00000080,0 2px 4px #0000004d}.artifact-slot-icon:before{content:"";position:absolute;top:-100%;left:-100%;width:300%;height:300%;background:linear-gradient(135deg,transparent 0%,transparent 40%,rgba(255,255,255,.1) 45%,rgba(255,255,255,.2) 48%,rgba(255,255,255,.3) 50%,rgba(255,255,255,.2) 52%,rgba(255,255,255,.1) 55%,transparent 60%,transparent 100%);animation:shimmer 4s ease-in-out infinite;pointer-events:none;transform:translate(-100%) translateY(-100%)}.artifact-slot-icon.rarity-common:before{background:linear-gradient(135deg,transparent 0%,transparent 40%,rgba(255,255,255,.03) 45%,rgba(255,255,255,.05) 48%,rgba(255,255,255,.08) 50%,rgba(255,255,255,.05) 52%,rgba(255,255,255,.03) 55%,transparent 60%,transparent 100%)}.artifact-slot-icon.rarity-rare:before{background:linear-gradient(135deg,transparent 0%,transparent 40%,rgba(255,255,255,.06) 45%,rgba(255,255,255,.1) 48%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.1) 52%,rgba(255,255,255,.06) 55%,transparent 60%,transparent 100%)}.artifact-slot-icon.rarity-epic:before{background:linear-gradient(135deg,transparent 0%,transparent 40%,rgba(255,255,255,.1) 45%,rgba(255,255,255,.15) 48%,rgba(255,255,255,.22) 50%,rgba(255,255,255,.15) 52%,rgba(255,255,255,.1) 55%,transparent 60%,transparent 100%)}.artifact-slot-icon.rarity-legendary:before{background:linear-gradient(135deg,transparent 0%,transparent 40%,rgba(255,255,255,.15) 45%,rgba(255,255,255,.25) 48%,rgba(255,255,255,.35) 50%,rgba(255,255,255,.25) 52%,rgba(255,255,255,.15) 55%,transparent 60%,transparent 100%)}@keyframes shimmer{0%{transform:translate(-100%) translateY(-100%)}to{transform:translate(100%) translateY(100%)}}.artifact-icon-large{font-size:42px;filter:drop-shadow(0 0 12px currentColor);z-index:1;transition:transform .3s ease;width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative;padding:4px;box-sizing:border-box}.artifact-icon-large img{max-width:95%;scale:3.5;max-height:95%;object-fit:contain;display:block;position:relative;z-index:1}.artifact-slot:hover .artifact-icon-large{transform:scale(1.1)}.equipped-badge{position:absolute;top:6px;right:6px;width:24px;height:24px;background:#000000e6;border:2px solid rgba(255,255,255,.8);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:#fffae5;z-index:3;box-shadow:inset 0 0 0 1px #00000080,0 2px 4px #0000004d;font-family:var(--font-family);text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1)}@keyframes pulse-glow{0%,to{box-shadow:0 0 12px #0f0c,inset 0 0 6px #ffffff4d}50%{box-shadow:0 0 20px #0f0,inset 0 0 8px #ffffff80}}.artifact-rarity-badge{position:absolute;bottom:6px;left:6px;width:22px;height:22px;background:#000000e6;border:2px solid rgba(255,255,255,.8);display:flex;align-items:center;justify-content:center;z-index:3;box-shadow:inset 0 0 0 1px #00000080,0 2px 4px #0000004d}.rarity-letter{font-size:12px;font-weight:700;color:#fffae5;text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1);font-family:var(--font-family)}.artifact-slot-info{flex:1;display:flex;flex-direction:column;gap:6px;min-height:0;z-index:1;position:relative}.artifact-slot-name{font-size:14px;font-weight:700;line-height:1.3;color:#fffae5;font-family:var(--font-family);text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:36px;letter-spacing:.3px}.artifact-slot-desc{font-size:11px;color:#fffae5;line-height:1.4;font-family:var(--font-family);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1);min-height:30px}.artifact-slot-level{display:flex;align-items:center;gap:6px;margin-top:auto;padding-top:6px;border-top:var(--border-rpg)}.level-label{font-size:10px;color:#fffae5;font-family:var(--font-family);text-transform:uppercase;letter-spacing:1px;text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1)}.level-value{font-size:12px;color:#fffae5;font-family:var(--font-family);font-weight:700;text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1)}.artifact-slot-actions{display:flex;gap:6px;margin-top:8px;padding-top:8px;border-top:var(--border-rpg);z-index:1;position:relative}.artifact-action-btn{flex:1;min-width:0;padding:8px 6px;background:var(--bg-rpg-box);border:var(--border-rpg);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;font-family:var(--font-family);font-weight:700;color:#fffae5;text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1);box-shadow:inset 0 0 0 1px #00000080,0 2px 4px #0000004d}.artifact-action-btn:before{content:"";position:absolute;inset:0;background:#ffffff1a;opacity:0;transition:opacity .2s ease;z-index:0}.artifact-action-btn:hover:not(.disabled):before{opacity:1}.artifact-action-btn:hover:not(.disabled){background:#000000f2;border-color:#fff;box-shadow:inset 0 0 0 1px #00000080,0 3px 6px #0006,inset 0 0 8px #ffffff1a}.btn-icon{font-size:16px;line-height:1;z-index:1;position:relative;filter:drop-shadow(0 0 4px currentColor)}.artifact-action-btn.equip-btn{border-color:#fffc;color:#fffae5}.artifact-action-btn.equip-btn:hover{background:#000000f2;border-color:#fff;box-shadow:inset 0 0 0 1px #00000080,0 3px 6px #0006,inset 0 0 8px #ffffff1a}.artifact-action-btn.equip-btn.active{background:#000;border-color:#fff;color:#fffae5;box-shadow:inset 0 0 0 1px #00000080,0 2px 6px #0006,inset 0 0 12px #ffffff26}.artifact-action-btn.upgrade-btn{border-color:#fffc;color:#fffae5}.artifact-action-btn.upgrade-btn:hover:not(.disabled){background:#000000f2;border-color:#fff;box-shadow:inset 0 0 0 1px #00000080,0 3px 6px #0006,inset 0 0 8px #ffffff1a}.artifact-action-btn.upgrade-btn.disabled{opacity:.35;cursor:not-allowed;background:#00000080;border-color:#ffffff4d}.artifact-action-btn.sell-btn{border-color:#fffc;color:#fffae5}.artifact-action-btn.sell-btn:hover{background:#000000f2;border-color:#fff;box-shadow:inset 0 0 0 1px #00000080,0 3px 6px #0006,inset 0 0 8px #ffffff1a}.no-artifacts{grid-column:1 / -1;text-align:center;padding:50px 20px;color:#fffae5;font-size:16px;font-family:var(--font-family);text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1);background:var(--bg-rpg-box);border:2px dashed rgba(255,255,255,.6);box-shadow:inset 0 0 0 1px #00000080,0 2px 4px #0000004d}#missions-button,#artifacts-button{pointer-events:all}#missions-button.has-completed:after,#artifacts-button.has-new:after{content:"!";position:absolute;top:-8px;right:-8px;width:20px;height:20px;background:#f44;border:2px solid #fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;animation:notification-pulse 2s ease-in-out infinite}@keyframes notification-pulse{0%,to{transform:scale(1);box-shadow:0 0 #ff4444b3}50%{transform:scale(1.1);box-shadow:0 0 0 10px #f440}}.mobile-menu-toggle{position:absolute;top:80px;right:20px;width:50px;height:50px;background:#0000004d;border:1px solid rgba(102,204,255,.3);color:#fff;border-radius:12px;font-size:28px;cursor:pointer;pointer-events:all;z-index:1000;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm);backdrop-filter:none;-webkit-backdrop-filter:none;transition:all var(--transition-base)}.mobile-menu-toggle:active{transform:scale(.95);box-shadow:0 2px 8px #0000004d}.mobile-menu{position:fixed;top:0;right:-100%;width:280px;height:100vh;background:#141428fa;border-left:2px solid rgba(102,204,255,.5);z-index:2000;transition:right .3s ease;overflow-y:auto;pointer-events:all}.mobile-menu.open{right:0}.mobile-menu-close{position:absolute;top:15px;right:15px;width:40px;height:40px;background:transparent;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease;padding:0}.mobile-menu-close img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.mobile-menu-close:hover{transform:scale(1.1)}.mobile-menu-close:active{transform:scale(.95)}.mobile-menu-content{padding:70px 20px 20px;display:flex;flex-direction:column;gap:10px}.mobile-shop-toggle{position:fixed;bottom:100px;right:20px;padding:12px 20px;background:#6cf3;border-color:#fff;color:#fff;border-radius:25px;font-size:16px;font-weight:700;cursor:pointer;pointer-events:all;z-index:1000;box-shadow:0 4px 15px #00000080;transition:all .3s ease}.mobile-shop-toggle:active{transform:scale(.95);box-shadow:0 2px 8px #0000004d}.mobile-shop-close{position:absolute;top:15px;right:15px;width:32px;height:32px;min-width:32px;max-width:32px;background:transparent;border:none;cursor:pointer;display:none;align-items:center;justify-content:center;z-index:2000;transition:transform .2s ease;pointer-events:all;box-shadow:none;position:relative;overflow:visible;box-sizing:border-box;padding:0}.mobile-shop-close img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.mobile-shop-close:hover{transform:scale(1.1)}.mobile-shop-close:active{transform:scale(.95)}@media(max-width:768px){body{overflow:hidden;position:fixed;width:100vw;height:100vh}#app{flex-direction:column;height:100vh;width:100vw;overflow:hidden;position:fixed}#game-container{height:100vh;width:100vw;min-height:100vh;order:1;position:relative;overflow:hidden}#game-canvas{touch-action:manipulation;width:100vw!important;height:100vh!important}#hud{top:10px;left:10px;right:10px;z-index:100}#points-display{font-size:28px;margin-bottom:8px}#income-display{font-size:16px}#combat-stats-container{margin-top:6px;gap:3px}.combat-stat{font-size:18px}#dps-display{font-size:18px;padding:5px 10px;border-width:2px;border-left-width:4px}#level-bar-container{left:10px;right:10px;bottom:20px;z-index:100}#shop-panel{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;max-width:100vw!important;max-height:100vh!important;border-left:none!important;border-top:none!important;background:#0a0a19fa!important;transform:translateY(100%);transition:transform .3s ease;z-index:1500!important;overflow-y:auto!important;display:none;padding-bottom:env(safe-area-inset-bottom)}#shop-panel.mobile-open{transform:translateY(0)}#shop-panel h2{margin-top:60px}#mobile-shop-close{display:flex!important}#hud-buttons-container{display:none!important}.hud-button{font-size:14px;padding:8px 12px;margin-top:5px}#boss-dialog{padding:10px;display:flex;align-items:center;justify-content:center}.boss-dialog-content{padding:20px;max-width:85%;width:85%}.boss-dialog-content h2{font-size:22px}.boss-dialog-content p{font-size:13px}#boss-timer-hud{top:140px;left:50%;transform:translate(-50%);width:80%;max-width:250px;z-index:110}.modal-content,.stats-panel-content,.settings-modal-content,.achievements-modal-content,.ascension-modal-content,.missions-modal-content,.artifacts-filters{gap:6px}.filter-btn{padding:6px 12px;font-size:11px}.artifacts-stats{font-size:13px;gap:15px}.artifacts-stats strong{font-size:14px}.artifacts-inventory{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}.artifact-slot{min-height:170px;padding:8px}.artifact-icon-large{font-size:36px}.artifact-slot-name{font-size:13px;min-height:32px}.artifact-slot-desc{font-size:10px;min-height:28px}.level-value{font-size:11px}.artifact-action-btn{padding:7px 5px}.btn-icon{font-size:14px}.artifacts-modal-content,.customization-modal-content{width:90%;max-width:90%;max-height:85vh;margin:7.5vh auto;padding:20px;overflow-y:auto}.modal-content h2,.stats-panel-content h2,.settings-modal-content h2{font-size:20px}.shop-button{padding:0}.upgrade-item{padding:12px}.upgrade-name{font-size:16px}.upgrade-description{font-size:12px}.upgrade-cost{font-size:14px}#debug-panel{width:95%;max-width:95%;left:50%;transform:translate(-50%);max-height:80vh}.version-splash-content{width:95%;max-width:95%;padding:20px}.version-splash-content h1{font-size:32px}.version-splash-content h2{font-size:20px}button{min-height:44px;min-width:44px}}@media(max-width:480px){#game-container{height:100vh;width:100vw}#points-display{font-size:28px}#income-display{font-size:14px}#combat-stats-container{margin-top:4px;gap:2px}.combat-stat{font-size:16px}#dps-display{font-size:16px;padding:4px 8px;border-width:2px;border-left-width:3px}.mobile-menu{width:100%;right:-100%}.mobile-menu.open{right:0}#level-info{font-size:11px}.shop-tabs{flex-direction:row;gap:5px}.shop-tab{flex:1;font-size:14px;padding:10px}.mobile-shop-toggle{font-size:14px;padding:10px 18px;bottom:100px}}@media(max-width:768px)and (orientation:landscape){#game-container{height:100vh;width:100vw}#shop-panel{width:100vw!important;height:100vh!important;right:0!important;left:0!important;background:#000000fa!important;border-left:2px solid rgba(255,255,255,.3)!important;box-shadow:-4px 0 20px #00000080,inset 0 0 30px #ffffff0d!important}.mobile-menu{width:60%;max-width:400px}#shop-actions-container{margin-top:40px!important;border-top:2px solid rgba(255,255,255,.4)!important;padding-top:25px!important}.shop-action-button{font-size:14px!important;padding:14px!important;letter-spacing:2px!important}}@media(min-width:769px){.mobile-menu-toggle,.mobile-shop-toggle,.mobile-shop-close,.mobile-menu{display:none!important}#shop-panel{position:relative!important;transform:none!important;width:400px!important;height:100%!important;max-width:400px!important;display:block!important;transition:width .3s ease,min-width .3s ease}.desktop-shop-toggle{position:absolute;top:20px;left:10px;background:transparent;border:none;padding:0;color:#fffae5;font-size:18px;width:32px;height:32px;min-width:32px;cursor:pointer;opacity:1;pointer-events:auto}.desktop-shop-toggle:disabled{opacity:1;cursor:pointer;pointer-events:auto}.desktop-shop-toggle img{width:100%;height:100%;display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.desktop-shop-toggle:hover img{transform:scale(1.1)}.desktop-shop-toggle:active img{transform:scale(.95);max-width:32px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-base);z-index:100;pointer-events:auto;padding:0;line-height:1;text-align:center;box-shadow:var(--shadow-sm);font-family:var(--font-family);font-weight:700;text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1);position:relative;overflow:hidden;box-sizing:border-box}.desktop-shop-toggle:focus-visible{outline:2px solid #ffffff;outline-offset:2px}#shop-panel.desktop-collapsed{width:50px!important;min-width:50px!important;overflow:hidden}#shop-panel.desktop-collapsed h2,#shop-panel.desktop-collapsed #shop-tabs,#shop-panel.desktop-collapsed #shop-content,#shop-panel.desktop-collapsed #reset-container,#shop-panel.desktop-collapsed .buy-quantity-selector,#shop-panel.desktop-collapsed #credits-share-button,#shop-panel.desktop-collapsed #discord-button{display:none}#shop-panel.desktop-collapsed .desktop-shop-toggle{left:9px}}.game-info-modal .modal-content{max-width:1100px;background:var(--bg-rpg-box);border:var(--border-rpg);box-shadow:var(--shadow-md)}.info-tabs{display:flex;gap:10px;margin-bottom:20px;border-bottom:var(--border-rpg);padding-bottom:10px}.info-tab{padding:10px 20px;background:var(--bg-rpg-box);border:var(--border-rpg);color:#fffae5;cursor:pointer;transition:all .2s ease;font-family:var(--font-family);font-size:14px;font-weight:700;text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1);box-shadow:inset 0 0 0 1px #00000080,0 2px 4px #0000004d;text-transform:uppercase}.info-tab:hover{background:#000000f2;border-color:#fff;box-shadow:inset 0 0 0 1px #00000080,0 3px 6px #0006,inset 0 0 8px #ffffff1a}.info-tab.active{background:#000;border-color:#fff;color:#fffae5;box-shadow:inset 0 0 0 1px #00000080,0 2px 6px #0006,inset 0 0 12px #ffffff26}.info-content-area{max-height:60vh;overflow-y:auto;padding:10px}.info-section{background:var(--bg-rpg-box);border:var(--border-rpg);padding:15px;margin-bottom:15px;box-shadow:inset 0 0 0 1px #00000080,0 2px 4px #0000004d}.info-section h3{color:#fffae5;margin-bottom:12px;font-size:18px;border-bottom:var(--border-rpg);padding-bottom:8px;font-family:var(--font-family);font-weight:700;text-transform:uppercase;text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1)}.info-section p{margin:8px 0;line-height:1.6;color:#fffae5;font-family:var(--font-family);text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1)}.info-grid{display:grid;grid-template-columns:1fr;gap:10px;margin:10px 0}.info-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--bg-rpg-box);border:var(--border-rpg);box-shadow:inset 0 0 0 1px #00000080,0 2px 4px #0000004d}.info-label{color:#fffae5;font-size:14px;font-family:var(--font-family);text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1)}.info-value{color:#fffae5;font-weight:700;font-size:14px;text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1);font-family:var(--font-family)}.info-note{background:#0009;border:var(--border-rpg);border-left:3px solid #ffc800;padding:10px;margin:10px 0;color:#ffc800;font-size:13px;font-family:var(--font-family);box-shadow:inset 0 0 0 1px #00000080,0 2px 4px #0000004d;text-shadow:1px 1px 0 rgba(0,0,0,1),-1px -1px 0 rgba(0,0,0,1)}@media(max-width:768px){.info-tabs{flex-wrap:wrap;gap:5px}.info-tab{padding:8px 12px;font-size:12px;flex:1 1 auto}.info-content-area{max-height:50vh}.info-section h3{font-size:16px}}.performance-monitor{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#0000004d;border:1px solid rgba(102,204,255,.3);border-radius:8px;padding:0;z-index:10000;font-family:var(--font-family);box-shadow:var(--shadow-md);backdrop-filter:none;-webkit-backdrop-filter:none;min-width:320px;max-width:90vw}.perf-content{padding:15px}.perf-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid rgba(102,204,255,.2)}.perf-header h3{color:#6cf;font-size:18px;margin:0;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.8)}.perf-close-btn{background:transparent;border:none;cursor:pointer;padding:0;width:28px;height:28px;transition:transform .2s ease;display:flex;align-items:center;justify-content:center}.perf-close-btn img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.perf-close-btn:hover{transform:scale(1.1)}.perf-section{margin-bottom:15px;padding:12px;background:#0003;border:1px solid rgba(102,204,255,.2);border-radius:4px;backdrop-filter:none;-webkit-backdrop-filter:none}.perf-section h4{color:#6cf;font-size:14px;margin-bottom:8px;font-weight:700;text-transform:uppercase;text-shadow:0 1px 2px rgba(0,0,0,.8)}.perf-metric{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid rgba(102,204,255,.1)}.perf-metric:last-child{border-bottom:none}.perf-metric-fps{font-size:16px;font-weight:700;padding:8px 0}.perf-label{color:#ffffffb3;font-size:13px}.perf-value{color:#6cf;font-size:14px;font-weight:700;font-family:var(--font-family)}.perf-metric-fps .perf-value{font-size:20px}.perf-chart-container{margin:15px 0;background:#0003;border-radius:4px;padding:5px;border:1px solid rgba(102,204,255,.2);backdrop-filter:none;-webkit-backdrop-filter:none}#perf-chart{display:block;width:100%;height:80px}.perf-entities{display:flex;flex-direction:column;gap:5px}.perf-entity-row{display:flex;justify-content:space-between;padding:3px 0}.perf-memory{display:flex;flex-direction:column;gap:5px}.perf-info{margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.2);text-align:center}.perf-info p{color:#888;font-size:11px;margin:0}.perf-info kbd{background:#ffffff1a;padding:2px 6px;border-radius:3px;border:1px solid rgba(255,255,255,.3);font-family:var(--font-family);font-size:11px;color:#fff}.discord-button{position:relative;overflow:hidden;transition:all .3s ease;font-weight:700}.discord-button:hover{transform:translateY(-2px);box-shadow:0 5px 15px #5865f266;border-color:#7289da!important}.discord-button:active{transform:translateY(0)}@media(max-width:768px){.performance-monitor{min-width:280px;font-size:12px}.perf-header h3{font-size:16px}.perf-metric-fps .perf-value{font-size:18px}}#powerup-buffs-container{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:flex-start;position:absolute;z-index:100;pointer-events:none}.powerup-buff-card{position:relative;width:80px;min-width:80px;padding:10px 8px;background:linear-gradient(135deg,#000000f2,#14141ef2);border:2px solid;border-radius:10px;box-shadow:0 4px 16px #0009,0 0 20px currentColor,inset 0 0 12px #ffffff0d;font-family:var(--font-family);overflow:hidden;opacity:1;visibility:visible;transition:transform .3s ease,box-shadow .3s ease}.powerup-buff-card.powerup-buff-new{animation:powerupBuffEnter .4s cubic-bezier(.175,.885,.32,1.275);animation-fill-mode:forwards}.powerup-buff-card:hover{transform:translateY(-2px) scale(1.05)}.powerup-buff-card.powerup-buff-low{animation:powerupBuffPulse 1s ease-in-out infinite}.powerup-buff-glow{position:absolute;top:50%;left:50%;width:120%;height:120%;transform:translate(-50%,-50%);border-radius:50%;opacity:.6;animation:powerupBuffGlow 2s ease-in-out infinite;pointer-events:none;z-index:0}.powerup-buff-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:4px}.powerup-buff-icon{font-size:28px;line-height:1;filter:drop-shadow(0 0 8px currentColor);animation:powerupBuffIconFloat 2s ease-in-out infinite;transform-origin:center;display:flex;align-items:center;justify-content:center;width:28px;height:28px}.powerup-buff-icon svg{width:100%;height:100%;display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.powerup-buff-name{font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;opacity:.9}.powerup-buff-timer{font-size:16px;font-weight:700;line-height:1;display:flex;align-items:baseline;gap:2px}.powerup-buff-time-value{font-size:18px;font-weight:900}.powerup-buff-time-unit{font-size:11px;opacity:.7;font-weight:400}.powerup-buff-bar-container{position:relative;width:100%;height:4px;margin-top:4px;border-radius:2px;overflow:hidden;background:#00000080}.powerup-buff-bar-bg{position:absolute;top:0;left:0;width:100%;height:100%;background:#ffffff1a;border-radius:2px}.powerup-buff-bar-fill{position:absolute;top:0;left:0;height:100%;border-radius:2px;transition:width .15s linear;z-index:1}.powerup-buff-bar-shimmer{position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:powerupBuffShimmer 2s ease-in-out infinite;z-index:2;pointer-events:none}.powerup-buff-card.powerup-buff-low .powerup-buff-bar-fill{animation:powerupBuffBarCritical .5s ease-in-out infinite}@keyframes powerupBuffEnter{0%{opacity:0;transform:scale(.5) translateY(20px)}0.1%{opacity:1}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes powerupBuffPulse{0%,to{transform:scale(1);box-shadow:0 4px 16px #0009,0 0 20px currentColor,inset 0 0 12px #ffffff0d}50%{transform:scale(1.05);box-shadow:0 4px 20px #000c,0 0 30px currentColor,inset 0 0 16px #ffffff1a}}@keyframes powerupBuffGlow{0%,to{opacity:.4;transform:translate(-50%,-50%) scale(1)}50%{opacity:.8;transform:translate(-50%,-50%) scale(1.1)}}@keyframes powerupBuffIconFloat{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-3px) rotate(5deg)}}@keyframes powerupBuffShimmer{0%{left:-100%}to{left:150%}}@keyframes powerupBuffBarCritical{0%,to{opacity:1}50%{opacity:.5}}@media(max-width:768px){.powerup-buff-card{width:70px;min-width:70px;padding:8px 6px}.powerup-buff-icon{font-size:24px;width:24px;height:24px}.powerup-buff-name{font-size:9px}.powerup-buff-time-value{font-size:16px}.powerup-buff-time-unit{font-size:10px}}.customization-modal{position:fixed;top:0;left:0;width:100%;height:100%;display:none;align-items:center;justify-content:center;z-index:10000}.customization-modal .modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000d9;backdrop-filter:none}.customization-modal-content{position:relative;max-width:1000px;width:90%;max-height:90vh;background:#0000004d;border:1px solid rgba(102,204,255,.3);border-radius:8px;padding:20px;box-shadow:var(--shadow-md);backdrop-filter:none;-webkit-backdrop-filter:none;overflow-y:auto}.customization-body{display:flex;flex-direction:column;gap:20px}.customization-tabs{display:flex;gap:10px;border-bottom:1px solid rgba(102,204,255,.2);padding-bottom:10px;overflow-x:auto}.customization-tab{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#0000004d;border:1px solid rgba(102,204,255,.3);border-radius:4px;color:#fff;cursor:pointer;transition:all var(--transition-base);font-family:var(--font-family);font-size:14px;font-weight:700;white-space:nowrap;text-shadow:0 1px 2px rgba(0,0,0,.8);backdrop-filter:none;-webkit-backdrop-filter:none}.customization-tab:hover{background:#0006;border-color:#66ccff80;transform:translateY(-2px)}.customization-tab.active{background:#66ccff26;border-color:#66ccff80;color:#6cf}.tab-icon{font-size:18px}.tab-label{font-size:14px}.customization-themes{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px;padding:10px 0}.theme-card{background:#000000b3;border:2px solid rgba(102,204,255,.3);border-radius:8px;overflow:hidden;transition:all .2s ease;opacity:.6}.theme-card.unlocked{opacity:1;cursor:pointer}.theme-card.unlocked:hover{border-color:#66ccffb3;transform:translateY(-3px);box-shadow:0 5px 15px #6cf6}.theme-card.selected{border-color:#fff;box-shadow:0 0 15px #6cf9}.theme-card.active{border-color:#fff;box-shadow:0 0 20px #6cfc}.theme-preview{position:relative;width:100%;height:120px;display:flex;align-items:center;justify-content:center;border-bottom:2px solid rgba(102,204,255,.3)}.theme-icon{font-size:48px;filter:drop-shadow(0 0 10px rgba(0,0,0,.5))}.theme-lock{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:32px;opacity:.7;filter:drop-shadow(0 0 5px rgba(0,0,0,.8))}.theme-check{position:absolute;top:8px;right:8px;background:#66ccffe6;color:#000;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;box-shadow:var(--shadow-sm)}.theme-info{padding:12px}.theme-name{font-size:16px;font-weight:700;color:#fff;margin-bottom:6px;text-shadow:0 1px 2px rgba(0,0,0,.8);font-family:var(--font-family)}.theme-description{font-size:12px;color:#fffc;margin-bottom:8px;font-family:var(--font-family);line-height:1.4}.theme-unlock-progress{margin-top:8px}.progress-bar{width:100%;height:6px;background:#6cf3;border-radius:3px;overflow:hidden;margin-bottom:4px}.progress-fill{height:100%;background:linear-gradient(90deg,#6cf,#00b3ff,#6fc);transition:width .3s ease;box-shadow:0 0 8px #6cf9}.progress-text{font-size:11px;color:#fff9;font-family:var(--font-family)}.no-themes{text-align:center;color:#fff9;padding:40px;font-family:var(--font-family)}@media(max-width:768px){.customization-modal-content{padding:15px;width:95%;max-width:95%}.customization-body{gap:15px}.customization-themes{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.theme-preview{height:90px}.theme-icon{font-size:32px}.theme-name{font-size:14px}.theme-description{font-size:11px}.customization-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;gap:8px;padding-bottom:8px}.customization-tab{padding:8px 12px;font-size:12px;min-width:fit-content;flex-shrink:0}.tab-icon{font-size:16px}.tab-label{font-size:12px}.theme-card{padding:10px}.theme-info{margin-top:8px}}@media(max-width:480px){.customization-modal-content{padding:12px;width:98%;max-width:98%;max-height:90vh}.customization-themes{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.theme-preview{height:80px}.theme-icon{font-size:28px}.customization-tab{padding:6px 10px;font-size:11px}.tab-icon{font-size:14px}.tab-label{font-size:11px}}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:#0000004d;border:1px solid rgba(102,204,255,.2);border-radius:6px}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#6cf6,#66ffcc4d);border:1px solid rgba(102,204,255,.3);border-radius:6px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#6cf9,#66ffcc80)}::-webkit-scrollbar-thumb:active{background:linear-gradient(180deg,#6cfc,#66ffccb3)}::-webkit-scrollbar-corner{background:#0000004d;border:1px solid rgba(102,204,255,.2)}#skills-container{position:absolute;top:20px;right:20px;z-index:100;display:flex;flex-direction:column;gap:12px;pointer-events:none}.skill-button{position:relative;width:64px;height:64px;border-radius:50%;border:3px solid;background:linear-gradient(135deg,#000000e6,#141428e6);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.175,.885,.32,1.275);overflow:hidden;box-shadow:0 4px 16px #0009,0 0 20px #0af6,inset 0 0 12px #ffffff0d;pointer-events:auto}.skill-button:before{content:"";position:absolute;inset:-2px;border-radius:50%;background:linear-gradient(135deg,#0af,#08f,#06f);z-index:-1;opacity:0;transition:opacity .3s ease}.skill-button:hover:before{opacity:1}.skill-button.skill-ready{border-color:#0af;box-shadow:0 4px 16px #0009,0 0 20px #0af9,inset 0 0 12px #0af3}.skill-button.skill-ready:hover{transform:scale(1.1);box-shadow:0 6px 20px #000c,0 0 30px #0afc,inset 0 0 15px #00aaff4d}.skill-button.skill-active{border-color:#0f8;box-shadow:0 4px 16px #0009,0 0 20px #0f89,inset 0 0 12px #0f83;animation:skillPulse 2s ease-in-out infinite}.skill-button.skill-cooldown{border-color:#666;box-shadow:0 4px 16px #0009,0 0 20px #6464644d,inset 0 0 12px #6464641a;opacity:.6}.skill-icon{font-size:32px;line-height:1;z-index:2;filter:drop-shadow(0 0 8px currentColor);transition:transform .2s ease}.skill-button:hover .skill-icon{transform:scale(1.1)}.skill-cooldown-ring{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;z-index:1;pointer-events:none;mask:radial-gradient(circle,transparent 60%,black 61%);-webkit-mask:radial-gradient(circle,transparent 60%,black 61%)}.skill-timer{position:absolute;bottom:-20px;left:50%;transform:translate(-50%);font-size:11px;font-weight:700;color:#fff;text-shadow:0 0 4px rgba(0,0,0,.8),0 0 6px currentColor;font-family:var(--font-family);white-space:nowrap;z-index:3;display:none}.skill-tooltip{position:absolute;right:calc(100% + 12px);top:50%;transform:translateY(-50%);background:linear-gradient(135deg,#000000f2,#141428f2);border:2px solid #00aaff;border-radius:8px;padding:12px;min-width:200px;opacity:0;pointer-events:none;transition:opacity .3s ease,transform .3s ease;transform:translateY(-50%) translate(-10px);box-shadow:0 4px 16px #000c,0 0 20px #0af6;z-index:1000}.skill-button:hover .skill-tooltip{opacity:1;transform:translateY(-50%) translate(0)}.skill-tooltip-title{font-size:14px;font-weight:700;color:#0af;margin-bottom:6px;text-shadow:0 0 8px rgba(0,170,255,.6)}.skill-tooltip-desc{font-size:12px;color:#fff;margin-bottom:4px;line-height:1.4}.skill-tooltip-cooldown{font-size:11px;color:#aaa;margin-top:6px;padding-top:6px;border-top:1px solid rgba(255,255,255,.1)}@keyframes skillPulse{0%,to{box-shadow:0 4px 16px #0009,0 0 20px #0f89,inset 0 0 12px #0f83}50%{box-shadow:0 4px 16px #0009,0 0 30px #00ff88e6,inset 0 0 15px #0f86}}@media(max-width:768px){#skills-container{top:10px;right:10px}.skill-button{width:56px;height:56px}.skill-icon{font-size:28px}.skill-tooltip{right:auto;left:calc(100% + 12px);transform:translateY(-50%)}.skill-button:hover .skill-tooltip{transform:translateY(-50%)}}*{scrollbar-width:thin;scrollbar-color:rgba(102,204,255,.4) rgba(0,0,0,.3)}.milestone-hud-container{margin-top:10px;padding:10px 12px;background:#0003;border:1px solid rgba(255,255,102,.3);border-radius:6px;box-shadow:var(--shadow-sm);position:relative;overflow:hidden;backdrop-filter:none;-webkit-backdrop-filter:none}.milestone-hud-text{color:#ff6;font-size:13px;font-weight:700;margin-bottom:6px;text-shadow:0 1px 2px rgba(0,0,0,.8);letter-spacing:1px;position:relative;z-index:1}.milestone-hud-progress-bar{width:100%;height:6px;background:#0000004d;border-radius:3px;overflow:hidden;position:relative;border:1px solid rgba(255,255,102,.2)}.milestone-hud-progress-fill{height:100%;width:0%;background:linear-gradient(90deg,#ff6,#fc6);border-radius:3px;transition:width .4s cubic-bezier(.4,0,.2,1);position:relative}.milestone-progress-wrapper{margin-top:8px;padding:8px;background:#00000026;border-radius:4px;border:1px solid rgba(255,255,102,.2);backdrop-filter:none;-webkit-backdrop-filter:none}.milestone-info{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#ff6;margin-bottom:5px;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.8);letter-spacing:.5px}.milestone-progress-bar{width:100%;height:4px;background:#0000004d;border-radius:2px;overflow:hidden;position:relative}.milestone-progress-fill{height:100%;width:0%;background:linear-gradient(90deg,#ff6,#fc6);border-radius:2px;transition:width .4s cubic-bezier(.4,0,.2,1);position:relative}.upgrade-item-ship{position:relative}.upgrade-item-ship:after{content:"";position:absolute;inset:-2px;background:#ffff660d;border-radius:8px;opacity:0;transition:opacity .3s ease;pointer-events:none;z-index:-1}.upgrade-item-ship:hover:after{opacity:.3}@keyframes borderPulse{0%,to{opacity:.6;filter:brightness(1)}50%{opacity:1;filter:brightness(1.3)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes glowPulse{0%,to{box-shadow:var(--shadow-glow-primary)}50%{box-shadow:0 0 30px #6cfc,0 0 60px #08f9,0 0 90px #0ff6}}.glass-effect{background:#0006;backdrop-filter:none;-webkit-backdrop-filter:none;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0006,inset 0 1px #ffffff1a}#income-display{cursor:pointer;transition:opacity .2s ease;position:relative;margin-top:8px;padding:0;background:transparent;border:none;font-size:20px;font-weight:600;color:#fff;text-shadow:0 0 2px rgba(255,255,255,.5),0 0 4px rgba(255,255,255,.3);box-shadow:none;font-family:m5x7,Courier New,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:2px;display:inline-block}#income-display:hover{opacity:.8}#combat-stats-container{margin-top:8px;display:flex;flex-direction:column;gap:4px}.combat-stat{font-size:20px;font-weight:600;color:#fff;text-shadow:0 0 2px rgba(255,255,255,.5),0 0 4px rgba(255,255,255,.3);font-family:m5x7,Courier New,monospace;letter-spacing:1.5px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#dps-display{cursor:default;position:relative;margin-top:8px;padding:6px 14px;background:#000000b3;border:2px solid rgba(255,255,255,.95);border-left:5px solid rgba(255,255,255,1);font-size:22px;font-weight:700;color:#fff;text-shadow:0 0 3px rgba(255,255,255,.8),0 0 6px rgba(255,255,255,.5);box-shadow:0 0 5px #ffffff4d,inset 0 0 5px #ffffff0d;font-family:m5x7,Courier New,monospace;letter-spacing:3px;display:inline-block}#income-breakdown{display:none;margin-top:8px;font-size:12px;color:#ccc;font-family:var(--font-family);padding:6px 8px;background:#0006;border-radius:4px;border-left:2px solid rgba(102,204,255,.5);animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.start-screen{position:fixed;top:0;left:0;width:100%;height:100%;background:#000;display:flex;justify-content:center;align-items:center;z-index:10000;transition:opacity .5s ease-out}.start-screen-content{text-align:center;color:#fff;font-family:m5x7,monospace}.game-title{font-size:80px;line-height:1;margin-bottom:20px;text-shadow:0 0 10px #fff,0 0 20px #fff,0 0 30px #00ffff;animation:titleGlitch 3s infinite}.game-subtitle{font-size:24px;color:#888;margin-bottom:60px;letter-spacing:4px;text-transform:uppercase}.start-btn{background:transparent;border:2px solid #fff;color:#fff;padding:15px 40px;font-size:32px;font-family:m5x7,monospace;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:2px;box-shadow:0 0 10px #fff3}.start-btn:hover{background:#fff;color:#000;box-shadow:0 0 20px #fffc;transform:scale(1.05)}.version-tag{position:absolute;bottom:20px;right:20px;color:#444;font-size:14px}@keyframes titleGlitch{0%{transform:translate(0)}20%{transform:translate(-2px,2px)}40%{transform:translate(-2px,-2px)}60%{transform:translate(2px,2px)}80%{transform:translate(2px,-2px)}to{transform:translate(0)}}.blink{animation:blink 1s infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.tutorial-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:9990;pointer-events:none;display:none}.tutorial-tooltip{position:fixed;background:#001428f2;border:2px solid #00ffff;color:#fff;padding:15px 20px;border-radius:8px;font-family:m5x7,monospace;font-size:20px;z-index:9995;box-shadow:0 0 20px #00ffff4d;pointer-events:none;display:none;max-width:300px;text-align:center}.tutorial-tooltip:after{content:"";position:absolute;border:10px solid transparent}.tutorial-tooltip.arrow-top:after{bottom:-20px;left:50%;transform:translate(-50%);border-top-color:#0ff}.tutorial-tooltip.arrow-bottom:after{top:-20px;left:50%;transform:translate(-50%);border-bottom-color:#0ff}.tutorial-tooltip.arrow-left:after{right:-20px;top:50%;transform:translateY(-50%);border-left-color:#0ff}.tutorial-tooltip.arrow-right:after{left:-20px;top:50%;transform:translateY(-50%);border-right-color:#0ff}.tutorial-tooltip.bounce{animation:tutorialBounce 1s infinite alternate ease-in-out}@keyframes tutorialBounce{0%{transform:translateY(0)}to{transform:translateY(-10px)}}
