:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ui-scale:2;--panel-border-radius:calc(var(--ui-scale) * 12px);--panel-padding-block:calc(var(--ui-scale) * 8px);--panel-padding-inline:calc(var(--ui-scale) * 12px);--panel-border-width:clamp(1px, var(--ui-scale) * 2px, 4px);--resource-offset:calc(var(--ui-scale) * 16px);--playback-offset:calc(var(--ui-scale) * 16px);--build-offset:var(--resource-offset);--enemy-offset:calc(var(--ui-scale) * 32px);--safe-area-top:0px;--quest-stack-top-offset:calc(var(--ui-scale) * 10px);--quest-stack-top-offset-mobile:calc(var(--ui-scale) * 106px);--upgrade-offset:calc(var(--ui-scale) * 220px);--build-controls-gap:calc(var(--ui-scale) * 12px);--action-button-size:calc(var(--ui-scale) * 48px);--action-button-font:calc(var(--ui-scale) * 24px);--action-button-radius:calc(var(--ui-scale) * 8px);--action-button-spacing:calc(var(--ui-scale) * 8px);--button-icon-size:calc(var(--ui-scale) * 24px);--purchase-icon-size:calc(var(--ui-scale) * 22px);--playback-button-size:calc(var(--ui-scale) * 44px);--playback-button-font:calc(var(--ui-scale) * 22px);--resource-font-size:calc(var(--ui-scale) * 18px);--resource-icon-size:calc(var(--resource-font-size) * 1.9);--resource-gain-offset:calc(var(--ui-scale) * 24px);--menu-width:clamp(calc(var(--ui-scale) * 180px), 28vw, calc(var(--ui-scale) * 260px));--menu-gap:calc(var(--ui-scale) * 12px);--menu-title-font:calc(var(--ui-scale) * 18px);--menu-font:calc(var(--ui-scale) * 16px);--enemy-slider-min-width:calc(var(--ui-scale) * 140px);--enemy-count-width:calc(var(--ui-scale) * 24px);--panel-button-padding-block:calc(var(--ui-scale) * 6px);--panel-button-padding-inline:calc(var(--ui-scale) * 10px);--panel-button-radius:calc(var(--ui-scale) * 8px);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}body,html{color:#f3f4f6;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#1c1f24;width:100%;height:100%;margin:0;padding:0}body.boot-splash-visible #app{visibility:hidden}@supports (top:env(safe-area-inset-top)){:root{--safe-area-top:env(safe-area-inset-top)}}@supports (top:constant(safe-area-inset-top)){:root{--safe-area-top:constant(safe-area-inset-top)}}#boot-splash{color:#f8fafc;z-index:9998;pointer-events:auto;background:radial-gradient(circle at top,#241732 0%,#0b0616 65%);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.boot-splash__content{text-align:center;background:#07030ed1;border-radius:20px;flex-direction:column;align-items:center;gap:18px;padding:36px 52px;animation:2.6s ease-in-out infinite bootSplashPulse;display:flex;box-shadow:0 14px 60px #00000080}.boot-splash__title{letter-spacing:6px;text-transform:uppercase;color:#ede9fe;text-shadow:0 0 36px #924effe6;font-family:Cinzel,serif;font-size:38px}.boot-splash__spinner{border:4px solid #8b5cf6;border-color:#8b5cf6 #34d399 #ffffff26 #ffffff26;border-radius:50%;width:54px;height:54px;animation:1.1s linear infinite bootSplashSpin}.boot-splash__subtitle{letter-spacing:2px;text-transform:uppercase;color:#cbd5f5;font-family:Inter,sans-serif;font-size:16px}@keyframes bootSplashSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bootSplashPulse{0%,to{transform:scale(1);box-shadow:0 14px 60px #00000080}50%{transform:scale(1.02);box-shadow:0 18px 68px #0000008c}}#app{width:100%;height:100%;position:relative;overflow:visible}#scene-container{width:100%;height:100%}.panel{border:var(--panel-border-width) solid #3b3f4c;border-radius:var(--panel-border-radius);padding:var(--panel-padding-block) var(--panel-padding-inline);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);-webkit-user-select:none;user-select:none;touch-action:manipulation;z-index:20;background:#14161ed9;position:absolute}#resource-display{top:var(--resource-offset);left:var(--resource-offset);font-size:var(--resource-font-size);font-weight:700;overflow:visible}.resource-row{justify-content:space-between;align-items:center;gap:calc(var(--ui-scale) * 12px);display:flex;position:relative}.resource-label{font-weight:600}.resource-label--icon{min-width:var(--resource-icon-size);cursor:default;justify-content:center;align-items:center;display:flex;position:relative}.resource-label--icon img{height:var(--resource-icon-size);width:auto;display:block}.resource-label--icon:after{content:attr(data-label);bottom:calc(100% + calc(var(--ui-scale) * 6px));transform:translate(-50%, calc(var(--ui-scale) * 4px));color:#f9fafb;padding:calc(var(--ui-scale) * 4px) calc(var(--ui-scale) * 8px);border-radius:calc(var(--ui-scale) * 6px);font-size:calc(var(--resource-font-size) * .75);white-space:nowrap;box-shadow:0 calc(var(--ui-scale) * 4px) calc(var(--ui-scale) * 14px) #00000059;opacity:0;pointer-events:none;background:#0f1117eb;font-weight:600;transition:opacity .15s,transform .15s;position:absolute;left:50%}.resource-label--icon:hover:after,.resource-label--icon:focus-visible:after{opacity:1;transform:translate(-50%)}.resource-row--hidden{display:none}.resource-value{font-variant-numeric:tabular-nums}.resource-gain{top:50%;left:calc(100% + var(--resource-gain-offset));font-size:calc(var(--resource-font-size) * .85);text-shadow:0 0 calc(var(--ui-scale) * 10px) #000000a6;pointer-events:none;white-space:nowrap;font-weight:600;display:none;position:absolute;transform:translateY(-50%)}.resource-gain.show{animation:1.4s ease-out forwards resourceGainBounce;display:block}.resource-gain--soul-coins{color:#9bfca5}.resource-gain--bones{color:#f7c46c}.resource-gain--ectoplasm{color:#8deefc}@keyframes resourceGainBounce{0%{opacity:0;transform:translateY(-50%) translateX(calc(var(--ui-scale) * 14px)) scale(.85)}18%{opacity:1;transform:translateY(-50%)translate(0)scale(1.25)}38%{transform:translateY(-50%) translateX(calc(var(--ui-scale) * 6px)) scale(.95)}58%{transform:translateY(-50%) translateX(calc(var(--ui-scale) * 2px)) scale(1.08)}78%{transform:translateY(-50%) translateX(calc(var(--ui-scale) * 4px)) scale(1)}to{opacity:0;transform:translateY(-50%) translateX(calc(var(--ui-scale) * 18px)) scale(.92)}}.debug-wave-loader{bottom:calc(var(--ui-scale) * 28px);right:calc(var(--ui-scale) * 28px);align-items:center;gap:calc(var(--ui-scale) * 12px);padding:calc(var(--ui-scale) * 12px) calc(var(--ui-scale) * 16px);border-radius:calc(var(--ui-scale) * 12px);box-shadow:0 calc(var(--ui-scale) * 12px) calc(var(--ui-scale) * 28px) #0f172a66;color:#f8fafc;pointer-events:none;z-index:120;opacity:0;transform:translateY(calc(var(--ui-scale) * 12px));background:#0a0d18e0;border:1px solid #94a3b859;transition:opacity .18s ease-out,transform .24s ease-out,box-shadow .32s;display:flex;position:fixed}.debug-wave-loader--active{opacity:1;transform:translateY(0)}.debug-wave-loader--ready{box-shadow:0 0 calc(var(--ui-scale) * 20px) #5eead473, 0 calc(var(--ui-scale) * 16px) calc(var(--ui-scale) * 32px) #0f172a80}.debug-wave-loader__content{gap:calc(var(--ui-scale) * 5px);flex-direction:column;display:flex}.debug-wave-loader__label{font-size:calc(var(--ui-scale) * 13px);letter-spacing:.08em;text-transform:uppercase;color:#e2e8f0;font-weight:600}.debug-wave-loader__eta{font-size:calc(var(--ui-scale) * 12px);letter-spacing:.03em;color:#cbd5f5}#playback-controls{top:var(--playback-offset);right:var(--playback-offset);align-items:center;gap:calc(var(--ui-scale) * 10px);z-index:12;flex-direction:column;padding:0;display:flex;position:absolute}#playback-controls button{width:var(--playback-button-size);height:var(--playback-button-size);font-size:var(--playback-button-font);cursor:pointer;color:inherit;border:clamp(1px, var(--ui-scale) * 1.5px, 3px) solid #4b5563;border-radius:var(--panel-button-radius);box-shadow:0 calc(var(--ui-scale) * 2px) calc(var(--ui-scale) * 8px) #0f172a73;background:#374151;justify-content:center;align-items:center;padding:0;line-height:1;display:flex}#playback-controls button:hover{background:#4b5563}#open-settings-menu{font-size:calc(var(--ui-scale) * 20px)}#settings-menu-container{min-width:calc(var(--ui-scale) * 200px);transform-origin:50%;top:auto;right:auto}#settings-menu-container .menu{gap:calc(var(--ui-scale) * 16px);min-width:calc(var(--ui-scale) * 200px);flex-direction:column;display:flex}#settings-menu-container .menu-section{gap:calc(var(--ui-scale) * 12px);flex-direction:column;display:flex}#settings-menu-container .slider-row{gap:calc(var(--ui-scale) * 12px);font-size:var(--menu-font);grid-template-columns:auto 1fr auto;align-items:center;display:grid}#goal-container{top:calc(var(--playback-offset) + var(--playback-button-size) + calc(var(--menu-gap) * 2));right:var(--resource-offset);pointer-events:auto;z-index:12;grid-auto-rows:min-content;justify-items:end;gap:8px 0;width:-moz-fit-content;width:fit-content;display:grid;position:absolute}#quest-panel-root{pointer-events:auto;z-index:14;min-width:clamp(260px,38vw,520px);max-width:clamp(300px,42vw,560px);position:absolute;inset:0 auto auto 0}.quest-panel-toggle{width:var(--action-button-size);height:var(--action-button-size);border-radius:var(--action-button-radius);box-shadow:0 calc(var(--ui-scale) * 6px) calc(var(--ui-scale) * 18px) #0206178c;cursor:pointer;background:#0f172ab8;border:1px solid #94a3b859;justify-content:center;align-items:center;transition:background .2s,transform .2s,border-color .2s;display:flex;position:relative}.quest-panel-toggle:focus-visible,.quest-panel-toggle:hover{transform:translateY(calc(var(--ui-scale) * -1px));background:#172137eb;border-color:#5eead499}.quest-panel-toggle__badge,.hud-button-badge{top:calc(var(--ui-scale) * 4px);right:calc(var(--ui-scale) * 4px);width:calc(var(--ui-scale) * 10px);height:calc(var(--ui-scale) * 10px);box-shadow:0 0 calc(var(--ui-scale) * 8px) #fbbf24cc;background:radial-gradient(circle,#fbbf24 0%,#f97316 60%);border-radius:999px;display:none;position:absolute}.quest-panel-toggle[data-highlight=true] .quest-panel-toggle__badge{display:inline-block}.quest-panel-toggle[data-highlight=true]{box-shadow:0 0 calc(var(--ui-scale) * 12px) #5bff9b73, 0 calc(var(--ui-scale) * 8px) calc(var(--ui-scale) * 18px) #0206178c;border-color:#5bff9bd9;animation:2.2s ease-in-out infinite questTogglePulse}.quest-panel-toggle[data-highlight=true] .quest-panel-toggle__icon{color:#5bff9b}.quest-panel-toggle__icon{width:var(--button-icon-size);height:var(--button-icon-size);pointer-events:none;object-fit:contain}#open-build-menu,#open-upgrade-menu,#open-summon-menu,#land-mode-button{outline:none;position:relative}#open-build-menu[data-highlight=true] .hud-button-badge,#open-upgrade-menu[data-highlight=true] .hud-button-badge,#open-summon-menu[data-highlight=true] .hud-button-badge,#land-mode-button[data-highlight=true] .hud-button-badge{display:inline-block}#open-build-menu[data-highlight=true],#open-upgrade-menu[data-highlight=true],#open-summon-menu[data-highlight=true],#land-mode-button[data-highlight=true]{box-shadow:0 0 calc(var(--ui-scale) * 12px) #5bff9b73, 0 calc(var(--ui-scale) * 8px) calc(var(--ui-scale) * 18px) #0206178c;outline:1px solid #5bff9bd9}.quest-panel{opacity:0;pointer-events:none;transform:translateY(calc(var(--ui-scale) * -4px));transition:opacity .2s,transform .2s}.quest-panel[aria-hidden=false]{opacity:1;pointer-events:auto;transform:translateY(0)}.quest-menu__list{gap:var(--menu-gap);flex-direction:column;display:flex}.quest-option{text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;font-weight:600}.quest-option--active{border-color:#eab30899;box-shadow:inset 0 0 0 1px #eab30866}.quest-option--cooldown,.quest-option--blocked,.quest-option--disabled{opacity:.45;cursor:not-allowed;background:linear-gradient(#2c313bcc,#1f232ce6);border-color:#94a3b859;box-shadow:inset 0 0 0 1px #0f172a66}.quest-option__label{flex:auto;font-weight:600}.quest-option__timer{font-size:calc(var(--ui-scale) * 11px);letter-spacing:.08em;text-transform:uppercase;color:#f8fafcbf;flex:none}.quest-option--cooldown .quest-option__timer{color:#facc15}.quest-option--blocked .quest-option__timer{color:#94a3b8d9}.quest-option--active .quest-option__timer{color:#34d399}.quest-hud-stack{top:calc(var(--safe-area-top) + var(--resource-offset) + var(--quest-stack-top-offset,calc(var(--ui-scale) * 10px)));align-items:center;gap:calc(var(--ui-scale) * 12px);width:clamp(200px, calc(var(--ui-scale) * 320px), 360px);pointer-events:none;z-index:30;flex-direction:column;display:flex;position:fixed;left:50%;transform:translate(-50%)}.quest-banner{gap:calc(var(--ui-scale) * 8px);flex-direction:column;align-items:center;width:100%;display:flex}.quest-banner[hidden]{display:none}.quest-banner__label{font-size:calc(var(--ui-scale) * 14px);letter-spacing:.05em;text-transform:uppercase;color:#f8fafcd9;text-shadow:0 1px 3px #020617a6;font-weight:600}.quest-banner__gauge{width:100%;min-height:calc(var(--ui-scale) * 34px);border-radius:calc(var(--ui-scale) * 16px);box-shadow:0 calc(var(--ui-scale) * 8px) calc(var(--ui-scale) * 20px) #0206178c;background:#0d1321e6;border:1px solid #fbbf2459;position:relative;overflow:hidden}.quest-banner__gauge-fill{width:var(--quest-banner-progress,0%);box-shadow:inset 0 0 calc(var(--ui-scale) * 16px) #fbbf2440, 0 0 calc(var(--ui-scale) * 18px) #facc1559;opacity:.95;background:linear-gradient(90deg,#fef3c7,#fcd34d,#f59e0b);transition:width .25s;position:absolute;top:0;bottom:0;left:0}.quest-banner__gauge-content{justify-content:center;align-items:center;gap:calc(var(--ui-scale) * 8px);padding:calc(var(--ui-scale) * 4px) calc(var(--ui-scale) * 12px);z-index:1;width:100%;display:flex;position:relative}.quest-banner__icon{width:calc(var(--ui-scale) * 24px);height:calc(var(--ui-scale) * 24px);box-shadow:0 0 calc(var(--ui-scale) * 6px) #0f172a73;filter:drop-shadow(0 2px 4px #0f172a66);background-image:url(./enemy-furball-128px-Csf0Nfij.png);background-position:50%;background-size:cover;border-radius:50%}.quest-banner__remaining{font-size:calc(var(--ui-scale) * 20px);letter-spacing:.04em;color:#0f172af2;text-shadow:0 1px 2px #fbf8f1a6;font-weight:700}.quest-banner[data-phase=failed] .quest-banner__label{color:#fee2e2d9}.quest-banner[data-phase=failed] .quest-banner__gauge{background:#3e0707eb;border-color:#f8717199}.quest-banner[data-phase=failed] .quest-banner__gauge-fill{background:linear-gradient(90deg,#f87171,#dc2626)}.quest-banner[data-phase=failed] .quest-banner__remaining{color:#fee2e2f2}.upgrade-unlock-panel{align-items:center;gap:calc(var(--ui-scale) * 12px);width:100%;padding:calc(var(--ui-scale) * 10px) calc(var(--ui-scale) * 14px);border-radius:calc(var(--ui-scale) * 14px);box-shadow:0 calc(var(--ui-scale) * 10px) calc(var(--ui-scale) * 24px) #0206178c;opacity:0;pointer-events:none;background:#090c16eb;border:1px solid #3b82f673;transition:opacity .25s,transform .25s;display:flex;transform:translateY(-8px)}.upgrade-unlock-panel--visible{opacity:1;transform:translateY(0)}.upgrade-unlock-panel__texture{width:calc(var(--ui-scale) * 48px);height:calc(var(--ui-scale) * 48px);border-radius:calc(var(--ui-scale) * 10px);box-shadow:inset 0 0 calc(var(--ui-scale) * 8px) #0f172aa6, 0 0 calc(var(--ui-scale) * 12px) #3b82f666;background-color:#0f172aa6;background-position:50%;background-size:cover}.upgrade-unlock-panel__copy{flex-direction:column;line-height:1.2;display:flex}.upgrade-unlock-panel__label{font-size:calc(var(--ui-scale) * 12px);letter-spacing:.12em;text-transform:uppercase;color:#bfdbfee6}.upgrade-unlock-panel__name{font-size:calc(var(--ui-scale) * 16px);color:#f8fafc;font-weight:600}@media (max-width:720px){.quest-hud-stack{top:calc(var(--safe-area-top) + var(--resource-offset) + var(--quest-stack-top-offset-mobile,calc(var(--ui-scale) * 24px)));width:min(360px, calc(100vw - var(--ui-scale) * 18px));align-items:center;max-width:none;left:50%;right:auto;transform:translate(-50%)}.upgrade-unlock-panel{width:min(50vw, calc(var(--ui-scale) * 200px));min-width:calc(var(--ui-scale) * 140px);max-width:calc(var(--ui-scale) * 220px);align-self:center}.quest-banner{width:100%}}.goal-item{width:-moz-fit-content;width:fit-content;max-width:clamp(240px, calc(var(--ui-scale) * 320px), 420px);box-shadow:none;background:0 0;border:none;min-height:auto;margin-left:auto;padding:0}.goal-item:focus-visible{box-shadow:0 0 0 2px #bfdbfe8c, 0 calc(var(--ui-scale) * 14px) calc(var(--ui-scale) * 36px) #090d1ca6}.goal-item--active{box-shadow:0 0 calc(var(--ui-scale) * 26px) #3b82f666, 0 calc(var(--ui-scale) * 14px) calc(var(--ui-scale) * 36px) #090d1ca6;border-color:#60a5fa99}.goal-item__content{width:100%;margin:0;display:block}.goal-item__preview{width:calc(var(--ui-scale) * 26px);height:calc(var(--ui-scale) * 26px);border-radius:calc(var(--ui-scale) * 6px);box-shadow:none;background:0 0;flex:none;justify-content:center;align-items:center;display:none;overflow:hidden}.goal-item__preview--active{display:inline-flex}.goal-item--entering{opacity:0;filter:blur(10px)}.goal-item--fading{opacity:0;filter:blur(8px);max-height:0;padding-top:0;padding-bottom:0}.goal-item.goal-item--popping .goal-item__content{animation:.58s ease-out goalCompletePop}.goal-item__body{width:100%;display:block}.goal-item__header,.goal-item--quest-reward-active .goal-item__header{display:none}.goal-description{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.goal-reward-label{padding:calc(var(--ui-scale) * 2px) calc(var(--ui-scale) * 10px);border-radius:calc(var(--ui-scale) * 999px);color:#99f6e4;font-size:calc(var(--ui-scale) * 11px);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;background:#5eead41f;border:1px solid #5eead44d;flex:none}.goal-item--quest-reward-active .goal-description{display:none}.goal-item--quest-reward-active .goal-reward-label{text-align:center;justify-content:center;width:100%;display:inline-flex}.goal-item__progress-row{align-items:stretch;width:100%;display:flex}.goal-item__progress{border-radius:calc(var(--ui-scale) * 16px);width:100%;min-height:calc(var(--ui-scale) * 32px);background:#0d1321b8;border:1px solid #94a3b866;flex:auto;align-items:center;display:flex;position:relative;overflow:hidden}.goal-item__progress-content{justify-content:space-between;align-items:center;gap:calc(var(--ui-scale) * 4px);padding:calc(var(--ui-scale) * 2px) calc(var(--ui-scale) * 8px);z-index:1;width:100%;display:flex;position:relative}.goal-status-block{align-items:center;gap:calc(var(--ui-scale) * 3px);color:#f8fafc;display:inline-flex}.goal-status-label{font-size:calc(var(--ui-scale) * 12px);letter-spacing:.02em;color:#f8fafcd9;white-space:nowrap;text-overflow:ellipsis;text-align:center;font-weight:600;overflow:hidden}.goal-inline-texture{width:calc(var(--ui-scale) * 22px);height:calc(var(--ui-scale) * 22px);margin:0 calc(var(--ui-scale) * 6px);box-shadow:none;vertical-align:middle;pointer-events:none;background-color:#0000;background-position:50%;background-repeat:no-repeat;background-size:contain;border-radius:0;display:inline-block}.goal-description--completed{text-decoration:line-through;text-decoration-thickness:clamp(1px, var(--ui-scale) * 1.4px, 2px);color:#bfdbfead;text-decoration-color:#94a3b88c}.goal-item__counters,.goal-item__counter-pill{display:none}.goal-item--reset{animation:.5s goalResetFlash}.goal-preview-image{object-fit:cover;width:100%;height:100%;display:block}.goal-preview-image--icon{object-fit:contain;padding:calc(var(--ui-scale) * 12px)}.goal-item .goal-reward-float{top:50%;right:calc(100% + var(--resource-gain-offset));align-items:center;gap:calc(var(--ui-scale) * 6px);padding:calc(var(--ui-scale) * 4px) calc(var(--ui-scale) * 10px);border-radius:calc(var(--ui-scale) * 999px);box-shadow:0 calc(var(--ui-scale) * 8px) calc(var(--ui-scale) * 18px) #1e40af47;font-size:calc(var(--ui-scale) * 13px);letter-spacing:.04em;text-transform:uppercase;color:#f8fafc;opacity:0;pointer-events:none;background:#0c0e18db;border:1px solid #6366f161;font-weight:700;display:inline-flex;position:absolute;transform:translate(12px,-50%)scale(.9)}.goal-reward-float--type-soulCoins{box-shadow:0 calc(var(--ui-scale) * 10px) calc(var(--ui-scale) * 24px) #10b98152;background:#0c201ce0;border-color:#2dd4bf80}.goal-reward-float--type-bones{box-shadow:0 calc(var(--ui-scale) * 10px) calc(var(--ui-scale) * 24px) #fbbf2442;background:#221a0ae0;border-color:#fbbf247a}.goal-reward-float--type-ectoplasm{box-shadow:0 calc(var(--ui-scale) * 10px) calc(var(--ui-scale) * 24px) #60a5fa47;background:#12182ae6;border-color:#818cf873}.goal-reward-float--active{animation:2.4s ease-out forwards goalRewardFloat}.goal-reward-float__icon{width:calc(var(--ui-scale) * 22px);height:calc(var(--ui-scale) * 22px);box-shadow:0 0 calc(var(--ui-scale) * 6px) #ffffff47;object-fit:contain;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.goal-reward-float__label{line-height:1}@keyframes goalCompleteGlow{0%{box-shadow:0 calc(var(--ui-scale) * 12px) calc(var(--ui-scale) * 30px) #0c4a6e73;filter:saturate();border-color:#2dd4bf52}40%{box-shadow:0 0 calc(var(--ui-scale) * 26px) #10b9817a, 0 calc(var(--ui-scale) * 18px) calc(var(--ui-scale) * 40px) #10b98159;filter:saturate(1.15);border-color:#2dd4bfb3}to{box-shadow:0 calc(var(--ui-scale) * 16px) calc(var(--ui-scale) * 42px) #0c4a6e61;filter:saturate();border-color:#2dd4bf6b}}.goal-item--completed{box-shadow:none;background:0 0;border-color:#0000;animation:none}@keyframes goalCompletePop{0%{transform:scale(1)}45%{transform:scale(1.08)}70%{transform:scale(1.02)}to{transform:scale(1)}}@keyframes goalRewardFloat{0%{opacity:0;transform:translate(12px,-50%)scale(.88)}18%{opacity:1;transform:translateY(-52%)scale(1.02)}65%{opacity:1;transform:translate(-4px,-56%)scale(1)}to{opacity:0;transform:translate(-20px,-60%)scale(.94)}}.goal-detail{gap:calc(var(--ui-scale) * 14px);z-index:30;pointer-events:auto;grid-template-columns:1fr;align-items:start;width:clamp(260px,48vw,420px);max-height:min(80vh,520px);display:grid;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.goal-detail__close{top:calc(var(--ui-scale) * 10px);right:calc(var(--ui-scale) * 10px);width:calc(var(--ui-scale) * 32px);height:calc(var(--ui-scale) * 32px);color:#e2e8f0;font-size:calc(var(--ui-scale) * 18px);cursor:pointer;background:#0f172a99;border:1px solid #94a3b866;border-radius:999px;line-height:1;transition:background .2s,border-color .2s,transform .2s;position:absolute}.goal-detail__close:hover,.goal-detail__close:focus-visible{transform:translateY(calc(var(--ui-scale) * -1px));background:#1e293be6;border-color:#5eead466}.goal-detail__preview{aspect-ratio:16/9;border-radius:calc(var(--ui-scale) * 16px);width:100%;box-shadow:none;background:0 0;display:none;overflow:hidden}.goal-detail__preview--active{display:block}.goal-detail__preview-image{object-fit:cover;width:100%;height:100%;display:block}.goal-detail__body{gap:calc(var(--ui-scale) * 10px);flex-direction:column;display:flex}.goal-detail__status{font-size:calc(var(--ui-scale) * 13px);letter-spacing:.08em;text-transform:uppercase;color:#99f6e4}.goal-detail__title{font-size:calc(var(--ui-scale) * 20px);color:#f8fafc;margin:0}.goal-detail__description{color:#e2e8f0e6;margin:0;line-height:1.5}.goal-detail__reward{gap:calc(var(--ui-scale) * 10px);min-height:calc(var(--ui-scale) * 32px);flex-wrap:wrap;align-items:center;display:flex}.goal-detail__reward--empty{color:#94a3b8cc;font-weight:500}.goal-detail__reward-badge{align-items:center;gap:calc(var(--ui-scale) * 8px);padding:calc(var(--ui-scale) * 6px) calc(var(--ui-scale) * 12px);border-radius:calc(var(--ui-scale) * 999px);background:#0f172acc;border:1px solid #3b82f652;display:inline-flex}.goal-detail__reward-icon{width:calc(var(--ui-scale) * 22px);height:calc(var(--ui-scale) * 22px)}.goal-detail__reward-text{font-size:calc(var(--ui-scale) * 13px);color:#f1f5f9}@media (max-width:840px){:root{--ui-scale:1}#goal-container{justify-items:end;gap:8px 0;width:-moz-fit-content;width:fit-content;left:auto;right:clamp(8px,4vw,24px);transform:none}}@keyframes goalResetFlash{0%{box-shadow:0 calc(var(--ui-scale) * 4px) calc(var(--ui-scale) * 14px) #0f172a66;outline:0 solid #f8717100}40%{box-shadow:0 0 calc(var(--ui-scale) * 20px) #f871718c;outline:calc(var(--ui-scale) * 3px) solid #f87171b3}to{box-shadow:0 calc(var(--ui-scale) * 4px) calc(var(--ui-scale) * 14px) #0f172a66;outline:0 solid #f8717100}}@keyframes goalCompleteFlash{0%{box-shadow:0 0 calc(var(--ui-scale) * 6px) #10b98100;background:#111827cc}18%{box-shadow:0 0 calc(var(--ui-scale) * 22px) #10b98173;background:#1e40af52}36%{box-shadow:0 0 calc(var(--ui-scale) * 16px) #10b98159;background:#0e749073}to{box-shadow:0 calc(var(--ui-scale) * 4px) calc(var(--ui-scale) * 14px) #0f172a66;background:#111827cc}}@keyframes enemyAutoBonusRise{0%{opacity:0;transform:translate(50%,-50%)scale(.8)}25%{opacity:1;transform:translate(50%,-68%)scale(1)}65%{opacity:1;transform:translate(50%,-110%)scale(1.05)}to{opacity:0;transform:translate(50%,-140%)scale(.95)}}#settings-menu-container .slider-label{font-weight:600}#settings-menu-container input[type=range]{width:100%}#settings-menu-container .slider-value{font-variant-numeric:tabular-nums;min-width:calc(var(--ui-scale) * 48px);text-align:right}#settings-menu-container .menu-action-button{justify-content:center;width:100%;font-weight:600}#settings-menu-container .menu-danger-button{color:#fef2f2;background:#7f1d1d;border-color:#b91c1c}#settings-menu-container .menu-danger-button:hover{background:#991b1b;border-color:#f87171}#settings-menu-container .select-row{gap:calc(var(--ui-scale) * 12px);font-size:var(--menu-font);grid-template-columns:auto 1fr;align-items:center;display:grid}#settings-menu-container .select-label{font-weight:600}#settings-menu-container .select-row select{appearance:none;border:clamp(1px, var(--ui-scale) * 1.5px, 3px) solid #3f4452;border-radius:var(--panel-button-radius);color:inherit;padding:calc(var(--ui-scale) * 6px) calc(var(--ui-scale) * 10px);font-size:calc(var(--ui-scale) * 14px);cursor:pointer;background:#2b303a;transition:border-color .15s,box-shadow .15s}#settings-menu-container .select-row select:focus{box-shadow:0 0 0 clamp(1px, var(--ui-scale) * 2px, 3px) #7c3aed59;border-color:#7c3aed;outline:none}#settings-menu-container .quality-status{font-size:calc(var(--ui-scale) * 12px);opacity:.7}#build-controls{bottom:var(--build-offset);left:var(--build-offset);align-items:flex-start;gap:var(--build-controls-gap);flex-direction:column;display:flex}#build-menu-container,#upgrade-menu-container,#enemy-menu-container{transform-origin:50%;top:auto;bottom:auto;left:auto}#quick-summon-panel{--quick-summon-panel-padding:calc(var(--ui-scale) * 12px);--quick-summon-button-size:calc(var(--ui-scale) * 60px);--quick-summon-panel-gap:calc(var(--ui-scale) * 8px);--quick-summon-scroll-height:calc(var(--quick-summon-button-size) * 2.35 + var(--quick-summon-panel-gap) * 3);bottom:var(--build-offset);right:var(--enemy-offset);align-items:stretch;gap:var(--quick-summon-panel-gap);text-align:center;padding:var(--quick-summon-panel-padding);border-radius:calc(var(--ui-scale) * 16px);border:1px solid #1a1e3499;flex-direction:column;display:flex;position:absolute;top:auto;overflow:hidden;transform:none}.quick-summon-panel__buttons{--quick-summon-buttons-padding:calc(var(--ui-scale) * 4px);z-index:1;align-items:center;gap:var(--quick-summon-panel-gap,calc(var(--ui-scale) * 8px));width:100%;max-height:calc(var(--quick-summon-scroll-height) + var(--quick-summon-buttons-padding) * 2);padding-block:var(--quick-summon-buttons-padding);padding-inline:calc(var(--ui-scale) * 2px);scroll-padding-top:var(--quick-summon-buttons-padding);scroll-padding-bottom:var(--quick-summon-buttons-padding);scrollbar-width:thin;scrollbar-gutter:stable both-edges;overscroll-behavior:contain;flex-direction:column;margin-inline:auto;display:flex;position:relative;overflow:hidden auto}.quick-summon-panel__buttons::-webkit-scrollbar{width:calc(var(--ui-scale) * 4px)}.quick-summon-panel__buttons::-webkit-scrollbar-thumb{border-radius:calc(var(--ui-scale) * 12px);background:#bacdff8c}.quick-summon-panel__buttons::-webkit-scrollbar-track{background:0 0}.wave-cooldown-indicator{border-radius:calc(var(--ui-scale) * 16px);pointer-events:none;z-index:0;background:linear-gradient(#47386633,#473866a6);flex-shrink:0;width:100%;min-height:100%;transition:opacity .16s ease-out;position:relative;overflow:visible;box-shadow:inset 0 0 0 1px #eee8ff2e}#quick-summon-panel .wave-cooldown-indicator{position:absolute;inset:0}.auto-wave-best-label{gap:calc(var(--ui-scale) * 4px);min-width:calc(var(--ui-scale) * 60px);max-width:calc(var(--ui-scale) * 96px);padding:calc(var(--ui-scale) * 2px) calc(var(--ui-scale) * 10px);border-radius:calc(var(--ui-scale) * 10px);font-family:var(--ui-font,"Outfit", system-ui, sans-serif);font-size:calc(var(--ui-scale) * 9px);letter-spacing:.06em;color:#bacdffe6;text-transform:uppercase;text-shadow:none;pointer-events:none;white-space:normal;text-align:center;z-index:2;background:#151c34eb;border:1px solid #7dccff80;flex-direction:column;justify-content:center;align-items:center;font-weight:600;display:flex;position:fixed;transform:translate(-50%,-100%)}.auto-wave-best-label__entry{justify-content:center;align-items:center;gap:calc(var(--ui-scale) * 4px);white-space:nowrap;display:inline-flex}.auto-wave-best-label__entry[hidden]{display:none}.auto-wave-best-label__icon{width:calc(var(--ui-scale) * 12px);height:calc(var(--ui-scale) * 12px);object-fit:contain;filter:drop-shadow(0 1px 2px #00000059)}.auto-wave-best-label__value{font-size:calc(var(--ui-scale) * 11px);letter-spacing:.08em}.auto-wave-best-label__suffix{font-size:calc(var(--ui-scale) * 8px);letter-spacing:.18em;text-transform:uppercase;color:#bacdffbf}.wave-cooldown-indicator[data-validated=true] .auto-wave-best-label{color:#0b2437;text-shadow:0 0 6px #ffffff73;background:linear-gradient(135deg,#3a81d2f2,#5ff4fff2);border-color:#85efffe6;box-shadow:0 2px 8px #071d4180,inset 0 0 10px #ffffff59}.wave-cooldown-indicator[data-validated=true] .auto-wave-best-label__suffix{color:#0b2437a6}.auto-wave-best-label[hidden]{display:none}.wave-cooldown-indicator__fill{background:linear-gradient(#cbbeffd9,#a281fff2);height:100%;transition:height .14s linear,opacity .14s linear;position:absolute;bottom:0;left:0;right:0;box-shadow:0 0 8px #a98bff66}.wave-cooldown-indicator[data-validated=true],.wave-cooldown-indicator--validated{background:linear-gradient(#188ab88c,#1c4e84d9);box-shadow:inset 0 0 0 1px #7eefff99,0 0 12px #5bdbff59}.wave-cooldown-indicator[data-validated=true] .wave-cooldown-indicator__fill,.wave-cooldown-indicator--validated .wave-cooldown-indicator__fill{background:linear-gradient(190deg,#4ae2ffcc 0%,#26afffc7 40%,#a7f3ffd9 100%) 0 0/100% 100%;animation:none;box-shadow:0 0 14px #78efff73}.wave-cooldown-indicator[data-validated=true]:before,.wave-cooldown-indicator--validated:before,.wave-cooldown-indicator[data-validated=true]:after,.wave-cooldown-indicator--validated:after{display:none}.wave-cooldown-indicator--breach,.wave-cooldown-indicator--breach.wave-cooldown-indicator--validated{background:linear-gradient(#740e29eb,#3e071ce6);animation:.95s ease-in-out infinite waveCooldownPenaltyShell;box-shadow:inset 0 0 0 1px #ff8a9ab3,0 0 18px #ff526659}.wave-cooldown-indicator--breach .wave-cooldown-indicator__fill,.wave-cooldown-indicator--breach.wave-cooldown-indicator--validated .wave-cooldown-indicator__fill{opacity:0;box-shadow:none;animation:none}.wave-cooldown-indicator.wave-cooldown-indicator--breach:after{content:"";border-radius:inherit;opacity:.65;pointer-events:none;background:radial-gradient(circle,#ff81908c,#6f103033);animation:.8s ease-in-out infinite waveCooldownPenaltyPulse;display:block;position:absolute;inset:0}.wave-cooldown-indicator[data-phase=idle] .wave-cooldown-indicator__fill{opacity:.35}.wave-cooldown-indicator[data-phase=cooldown] .wave-cooldown-indicator__fill,.wave-cooldown-indicator[data-phase=combat] .wave-cooldown-indicator__fill{opacity:1}.wave-cooldown-indicator[data-phase=locked] .wave-cooldown-indicator__fill{opacity:.2}.wave-cooldown-indicator--debug{width:calc(var(--ui-scale) * 7px);min-height:calc(var(--ui-scale) * 64px)}.debug-wave-loader .wave-cooldown-indicator__fill{transition:height .12s linear,opacity .12s linear}@keyframes waveCooldownGlow{0%{opacity:.35}50%{opacity:.7}to{opacity:.35}}@keyframes waveCooldownPenaltyShell{0%{box-shadow:inset 0 0 0 1px #ff7a8a66,0 0 12px #ff426033}50%{box-shadow:inset 0 0 0 1px #ffaab8cc,0 0 22px #ff627a8c}to{box-shadow:inset 0 0 0 1px #ff7a8a66,0 0 12px #ff426033}}@keyframes waveCooldownPenaltyPulse{0%{opacity:.25}50%{opacity:.85}to{opacity:.25}}.quick-summon-button{width:var(--quick-summon-button-size,calc(var(--ui-scale) * 60px));height:var(--quick-summon-button-size,calc(var(--ui-scale) * 60px));justify-content:center;align-items:center;margin-inline:auto;display:flex;position:relative}#quick-summon-panel.locked{opacity:.65}#quick-summon-panel button:disabled{opacity:.5;cursor:not-allowed;filter:grayscale(.2)}.goal-highlight--furball,.goal-highlight--summon-menu,.goal-highlight--build-menu,.goal-highlight--upgrade-menu{transform-origin:50%;will-change:transform, box-shadow;border-color:#5bff9b;animation:2.5s ease-in-out infinite goalFurballGlow,2.5s ease-in-out infinite goalFurballWiggle;box-shadow:0 0 #5bff9b00}@keyframes goalFurballGlow{0%{box-shadow:0 0 #5bff9b00}12%{box-shadow:0 0 #5bff9b00}20%{box-shadow:0 0 0 3px #5bff9ba6,0 0 24px 10px #5bff9b4d}50%{box-shadow:0 0 0 2px #5bff9b66,0 0 14px 6px #5bff9b2e}72%{box-shadow:0 0 0 1px #5bff9b2e,0 0 8px 3px #5bff9b14}82%{box-shadow:0 0 #5bff9b00}to{box-shadow:0 0 #5bff9b00}}@keyframes goalFurballWiggle{0%{transform:rotate(0)}8%{transform:rotate(-1.6deg)}16%{transform:rotate(1.6deg)}20%{transform:rotate(0)}to{transform:rotate(0)}}.quick-summon-button-label{height:calc(var(--ui-scale) * 18px);padding-inline:calc(var(--ui-scale) * 6px);font-size:calc(var(--ui-scale) * 12px);color:#f3f4f6;pointer-events:none;text-shadow:0 1px 2px #000000a6;z-index:1;background:linear-gradient(#0c0a1226 0%,#0c0a12ad 35%,#0c0a12d9 100%);justify-content:center;align-items:center;font-weight:600;display:flex;position:absolute;bottom:0;left:0;right:0}.quick-summon-button:disabled .quick-summon-button-label{opacity:.7}.button-stack{gap:var(--action-button-spacing);padding-bottom:var(--action-button-spacing);flex-direction:column;display:flex}.button-stack button{width:var(--action-button-size);height:var(--action-button-size);font-size:var(--action-button-font);border-radius:var(--action-button-radius);justify-content:center;align-items:center;display:flex}#open-build-menu svg{width:var(--button-icon-size);height:var(--button-icon-size)}.button-stack button img{width:var(--button-icon-size);height:var(--button-icon-size);object-fit:contain;display:block}#land-mode-button[hidden]{display:none}#land-mode-button{width:auto;min-width:var(--action-button-size);max-width:calc(var(--ui-scale) * 128px);padding-inline:calc(var(--ui-scale) * 8px);gap:calc(var(--ui-scale) * 6px);justify-content:flex-start}#land-mode-button .land-mode-button__icon{width:var(--button-icon-size);height:var(--button-icon-size);flex:none}#land-mode-button .land-mode-button__cost{min-width:0;font-size:calc(var(--ui-scale) * 12px);white-space:nowrap;font-weight:700}#land-mode-button .coin-amount__icon{width:calc(var(--ui-scale) * 13px);height:calc(var(--ui-scale) * 13px)}#land-mode-button.active{box-shadow:0 0 0 clamp(1px, var(--ui-scale) * 2px, 3px) #22c55e73 inset, 0 0 calc(var(--ui-scale) * 12px) #22c55e59;background:#166534;border-color:#22c55e}#land-mode-button:disabled,#land-mode-button.disabled{opacity:.5;cursor:not-allowed;filter:grayscale(.3)}.menu{gap:var(--menu-gap);min-width:var(--menu-width);flex-direction:column;display:flex}.menu-header{justify-content:space-between;align-items:center;gap:calc(var(--ui-scale) * 12px);padding-bottom:calc(var(--ui-scale) * 4px);border-bottom:1px solid #3b3f4c;flex-wrap:wrap;display:flex}.menu-header .menu-title{border-bottom:none;padding-bottom:0}.hidden{display:none!important}.menu-title{font-weight:700;font-size:var(--menu-title-font);padding-bottom:calc(var(--ui-scale) * 4px);border-bottom:1px solid #3b3f4c}.tower-capacity-button{align-items:center;gap:calc(var(--ui-scale) * 10px);padding:calc(var(--ui-scale) * 6px) calc(var(--ui-scale) * 10px);border:clamp(1px, var(--ui-scale) * 1.4px, 2px) solid #4b5563;border-radius:calc(var(--panel-button-radius) * .85);color:inherit;font-size:calc(var(--ui-scale) * 14px);background:#272c38d9;flex-shrink:0;font-weight:600;transition:filter .15s,opacity .15s;display:inline-flex}.tower-capacity-button:hover:not(:disabled){filter:brightness(1.1)}.tower-capacity-button:disabled,.tower-capacity-button.disabled{opacity:.55;cursor:not-allowed;filter:grayscale(.25)}.tower-capacity-count{font-variant-numeric:tabular-nums;line-height:1}.build-option{justify-content:flex-start;align-items:center;gap:calc(var(--ui-scale) * 10px);border:clamp(1px, var(--ui-scale) * 1.5px, 3px) solid #3f4452;border-radius:var(--action-button-radius);padding:var(--panel-padding-block) var(--panel-padding-inline);color:inherit;font-size:var(--menu-font);background:#2b303a;display:flex;position:relative}.build-option:disabled,.build-option.disabled{cursor:not-allowed}.upgrade-option{justify-content:flex-start;align-items:center;gap:calc(var(--ui-scale) * 10px);border:clamp(1px, var(--ui-scale) * 1.5px, 3px) solid #3f4452;border-radius:var(--action-button-radius);padding:var(--panel-padding-block) var(--panel-padding-inline);color:inherit;font-size:var(--menu-font);background:#2b303a;transition:filter .15s,opacity .15s;display:flex;position:relative}.purchase-button{transition:box-shadow .15s,filter .15s;position:relative}.purchase-button .cost{margin-left:auto}.purchase-button--affordable:not(.purchase-button--disabled){box-shadow:inset 0 0 0 clamp(1px, var(--ui-scale) * 2px, 3px) #22c55e52}.purchase-button--affordable:not(.purchase-button--disabled) .coin-amount__value,.purchase-button--affordable:not(.purchase-button--disabled) .cost{color:#86efac}.purchase-button--unaffordable:not(.purchase-button--disabled){box-shadow:inset 0 0 0 clamp(1px, var(--ui-scale) * 2px, 3px) #ef444452}.purchase-button--unaffordable:not(.purchase-button--disabled) .coin-amount__value,.purchase-button--unaffordable:not(.purchase-button--disabled) .cost{color:#fca5a5}.purchase-button--unaffordable:not(.purchase-button--disabled) .coin-amount__icon{filter:saturate(.45);opacity:.85}.purchase-button--disabled{cursor:not-allowed}.purchase-button[data-purchase-icon]:before{content:"";width:var(--purchase-icon-size);height:var(--purchase-icon-size);margin-right:calc(var(--ui-scale) * 8px);box-shadow:0 0 0 clamp(1px, var(--ui-scale) * 1.4px, 2px) #0a0c12a6 inset;background-color:#0c0e14c7;background-position:50%;background-repeat:no-repeat;background-size:82%;border-radius:999px;flex:none;display:inline-flex}.purchase-button[data-purchase-icon=challenge]:before{background-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%3E%3Cpath%20fill%3D%27%23FACC15%27%20stroke%3D%27%23F97316%27%20stroke-width%3D%271.5%27%20stroke-linejoin%3D%27round%27%20d%3D%27M12%203.2l2.21%204.48%204.95.72-3.58%203.5.85%204.94L12%2014.9l-4.43%201.94.85-4.94-3.58-3.5%204.95-.72z%27/%3E%3C/svg%3E);background-size:92%}.purchase-button[data-purchase-icon=quest]:before{background-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%3E%3Crect%20x%3D%277%27%20y%3D%274.6%27%20width%3D%2711%27%20height%3D%2713.2%27%20rx%3D%272.2%27%20fill%3D%27%23FDE68A%27%20stroke%3D%27%23B45309%27%20stroke-width%3D%271.2%27/%3E%3Cpath%20stroke%3D%27%23B45309%27%20stroke-width%3D%271.1%27%20stroke-linecap%3D%27round%27%20d%3D%27M9.5%209.4h6m-6%204h4.2%27/%3E%3Ccircle%20cx%3D%276%27%20cy%3D%2717.2%27%20r%3D%272%27%20fill%3D%27%23FCD34D%27%20stroke%3D%27%23B45309%27%20stroke-width%3D%271.1%27/%3E%3C/svg%3E);background-size:88%}.upgrade-option.disabled,.upgrade-option:disabled:not(.completed){opacity:.45;cursor:default;filter:grayscale(.35)}.upgrade-option.active{box-shadow:0 0 0 clamp(1px, var(--ui-scale) * 2px, 3px) #1fbf5f80 inset;border-color:#1fbf5f}.upgrade-option.completed{box-shadow:none;opacity:.55;filter:grayscale(.65);color:#e9e9f0b3;text-decoration:line-through;text-decoration-thickness:clamp(1px, var(--ui-scale) * 1px, 2px);border-color:#3f4452}.upgrade-option.completed .cost{-webkit-text-decoration:inherit;text-decoration:inherit}.upgrade-option:not(.disabled):not(:disabled):hover{filter:brightness(1.1)}.build-option[data-news=true]:after,.upgrade-option[data-news=true]:after{content:"";top:calc(var(--ui-scale) * 6px);right:calc(var(--ui-scale) * 8px);width:calc(var(--ui-scale) * 12px);height:calc(var(--ui-scale) * 12px);box-shadow:0 0 calc(var(--ui-scale) * 6px) #be123c8c, 0 0 0 calc(var(--ui-scale) * 1px) #ffffff59;background:radial-gradient(circle at 30% 30%,#ffe4e6,#fb7185 45%,#be123c 100%);border-radius:999px;position:absolute}#enemy-menu-container{gap:var(--menu-gap);flex-direction:column;align-items:stretch;display:flex;bottom:auto;right:auto}#structure-upgrade-panel{width:min(var(--menu-width), calc(100% - var(--build-offset) * 2));max-width:calc(var(--ui-scale) * 360px);gap:calc(var(--ui-scale) * 10px);flex-direction:column;display:flex;top:50%;left:50%;transform:translate(-50%,-50%)}.structure-upgrade-title{font-weight:700;font-size:var(--menu-title-font)}.structure-upgrade-details{gap:calc(var(--ui-scale) * 6px);font-size:var(--menu-font);line-height:1.35;display:grid}.structure-upgrade-actions{align-items:center;gap:var(--menu-gap);display:flex}.structure-upgrade-actions .primary-action{flex:auto}.enemy-slider-label{font-weight:700;font-size:var(--menu-title-font)}.enemy-slider-row{align-items:center;gap:var(--menu-gap);display:flex}.enemy-slider-row.locked{display:none}.enemy-slider-row{border:clamp(1px, var(--ui-scale) * 1.5px, 3px) solid #3f4452;border-radius:var(--action-button-radius);padding:var(--panel-padding-block) var(--panel-padding-inline);background:#2b303a}.enemy-slider-row input[type=range]{min-width:var(--enemy-slider-min-width);accent-color:#7c3aed;flex:1}.enemy-clicker-button{width:calc(var(--ui-scale) * 72px);height:calc(var(--ui-scale) * 72px);border:clamp(2px, var(--ui-scale) * 3px, 4px) solid #4c2c1e;box-shadow:0 calc(var(--ui-scale) * 4px) calc(var(--ui-scale) * 10px) #00000073, inset 0 calc(var(--ui-scale) * 3px) calc(var(--ui-scale) * 6px) #ffffff2e, inset 0 calc(var(--ui-scale) * -4px) calc(var(--ui-scale) * 8px) #00000040;cursor:pointer;background:radial-gradient(circle at 35% 30%,#f0c3b0 0%,#dba283 55%,#a1634a 100%);border-radius:50%;flex:none;transition:transform .1s,box-shadow .1s,filter .12s;position:relative;overflow:hidden}.enemy-clicker-button__preview{inset:calc(var(--ui-scale) * 6px);border-radius:inherit;opacity:0;pointer-events:none;z-index:0;will-change:opacity;background-position:50%;background-repeat:no-repeat;background-size:cover;transition:opacity .18s;position:absolute}.enemy-clicker-button--with-preview .enemy-clicker-button__preview{opacity:1}.quick-summon-button .enemy-clicker-button__preview{inset:calc(var(--ui-scale) * 5px)}.enemy-clicker-button__total{left:calc(var(--ui-scale) * 6px);top:calc(var(--ui-scale) * 6px);padding:calc(var(--ui-scale) * 2px) calc(var(--ui-scale) * 6px);border-radius:calc(var(--ui-scale) * 6px);color:#f8fafc;font-family:inherit;font-size:calc(var(--ui-scale) * 14px);letter-spacing:.02em;pointer-events:none;z-index:1;background:#0f172ac7;font-weight:600;line-height:1.1;position:absolute}.enemy-clicker-button__total--empty{opacity:.6}.quest-bonus-badge{top:calc(var(--ui-scale) * 6px);right:calc(var(--ui-scale) * 6px);padding:calc(var(--ui-scale) * 2px) calc(var(--ui-scale) * 6px);border-radius:calc(var(--ui-scale) * 8px);color:#1a1405;font-size:calc(var(--ui-scale) * 12px);letter-spacing:.06em;text-transform:uppercase;opacity:0;transform:translateY(calc(var(--ui-scale) * -6px)) scale(.95);pointer-events:none;box-shadow:0 calc(var(--ui-scale) * 8px) calc(var(--ui-scale) * 20px) #fbbf2440;z-index:1;background:#fbbf24e6;font-weight:700;transition:opacity .18s,transform .18s;position:absolute}.quest-bonus-badge--visible{opacity:1;transform:translateY(0)scale(1)}.quick-summon-button .quest-bonus-badge{top:calc(var(--ui-scale) * 4px);right:calc(var(--ui-scale) * 4px)}.enemy-auto-bonus{top:calc(var(--ui-scale) * -6px);right:calc(var(--ui-scale) * -6px);padding:calc(var(--ui-scale) * 2px) calc(var(--ui-scale) * 6px);border-radius:calc(var(--ui-scale) * 10px);color:#052e24;font-size:calc(var(--ui-scale) * 12px);letter-spacing:.06em;pointer-events:none;box-shadow:0 calc(var(--ui-scale) * 6px) calc(var(--ui-scale) * 16px) #0f766e59;z-index:1;background:linear-gradient(135deg,#38bdf8eb,#10b981eb);font-weight:700;animation:.9s ease-out forwards enemyAutoBonusRise;position:absolute;transform:translate(50%,-50%)}.enemy-clicker-button:before,.enemy-clicker-button:after{content:"";width:calc(var(--ui-scale) * 14px);height:calc(var(--ui-scale) * 14px);top:calc(var(--ui-scale) * 26px);box-shadow:0 0 0 calc(var(--ui-scale) * 1.5px) #0000003d;background:radial-gradient(circle at 50% 58%,#1f2937 0% 55%,#fff 56% 100%);border-radius:50%;position:absolute}.enemy-clicker-button:before{left:calc(var(--ui-scale) * 20px)}.enemy-clicker-button:after{right:calc(var(--ui-scale) * 20px)}.enemy-clicker-button.enemy-clicker-button--with-preview{background-color:#181421}.enemy-clicker-button.enemy-clicker-button--with-preview:before,.enemy-clicker-button.enemy-clicker-button--with-preview:after{display:none}.enemy-clicker-button:hover{filter:brightness(1.08)}.enemy-clicker-button:active,.enemy-clicker-button.clicked{box-shadow:inset 0 calc(var(--ui-scale) * 4px) calc(var(--ui-scale) * 8px) #00000059, 0 calc(var(--ui-scale) * 2px) calc(var(--ui-scale) * 6px) #00000059;transform:scale(.94)}.enemy-clicker-button.clicked{animation:.22s ease-out enemy-clicker-pulse}@keyframes enemy-clicker-pulse{0%{transform:scale(.94)}70%{transform:scale(1.02)}to{transform:scale(1)}}.enemy-clicker-details{gap:calc(var(--ui-scale) * 8px);flex-direction:column;flex:1;display:flex}.enemy-clicker-header{justify-content:space-between;align-items:baseline;gap:calc(var(--ui-scale) * 12px);display:flex}.enemy-clicker-slider{align-items:center;gap:calc(var(--ui-scale) * 12px);margin-top:calc(var(--ui-scale) * 6px);display:flex}.enemy-clicker-slider label{font-size:calc(var(--ui-scale) * 13px);color:#d1d5db;min-width:calc(var(--ui-scale) * 90px)}.enemy-clicker-slider input[type=range]{accent-color:#7c3aed;flex:1}.enemy-clicker-meta{justify-content:space-between;align-items:center;gap:calc(var(--ui-scale) * 12px);flex-wrap:wrap;display:flex}.enemy-auto-upgrade{align-items:center;gap:calc(var(--ui-scale) * 6px);display:inline-flex;position:relative}.enemy-auto-upgrade-label{font-weight:600}.enemy-auto-upgrade.auto-maxed .enemy-auto-cost{display:none}.enemy-auto-upgrade[disabled]{opacity:.5;cursor:not-allowed}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.enemy-count{min-width:var(--enemy-count-width);text-align:center}.panel button{cursor:pointer;color:inherit;border:clamp(1px, var(--ui-scale) * 1.5px, 3px) solid #4b5563;border-radius:var(--panel-button-radius);padding:var(--panel-button-padding-block) var(--panel-button-padding-inline);background:#374151}.cost,.enemy-auto-cost{align-items:center;gap:calc(var(--ui-scale) * 4px);display:inline-flex}.enemy-auto-cost{gap:0}.coin-amount{align-items:center;gap:calc(var(--ui-scale) * 4px);vertical-align:middle;display:inline-flex}.coin-amount__icon{width:calc(var(--ui-scale) * 16px);height:calc(var(--ui-scale) * 16px);display:block}.coin-amount--compact .coin-amount__icon{width:calc(var(--ui-scale) * 14px);height:calc(var(--ui-scale) * 14px)}.coin-amount--wrapped{margin-inline:calc(var(--ui-scale) * 2px)}.coin-amount__value{font-variant-numeric:tabular-nums;line-height:1}.panel button:hover{background:#4b5563}.panel button.active{background:#7c3aed;border-color:#a855f7}.panel button.enemy-clicker-button{border:clamp(2px, var(--ui-scale) * 3px, 4px) solid #4c2c1e;color:#0000;background:radial-gradient(circle at 35% 30%,#f0c3b0 0%,#dba283 55%,#a1634a 100%)}.panel button.enemy-clicker-button:hover{background:radial-gradient(circle at 35% 30%,#f6d3c3 0%,#e2b293 55%,#b37355 100%)}@media (max-width:900px){:root{--resource-offset:calc(var(--ui-scale) * 12px);--playback-offset:calc(var(--ui-scale) * 12px);--build-offset:calc(var(--ui-scale) * 16px);--enemy-offset:calc(var(--ui-scale) * 16px);--build-controls-gap:calc(var(--ui-scale) * 8px);--action-button-size:calc(var(--ui-scale) * 44px);--playback-button-size:calc(var(--ui-scale) * 40px);--playback-button-font:calc(var(--ui-scale) * 20px)}#quick-summon-panel{top:auto;bottom:var(--build-offset);right:var(--enemy-offset);transform:none}}@media (max-width:640px){:root{--resource-offset:calc(var(--ui-scale) * 10px);--build-offset:calc(var(--ui-scale) * 12px);--enemy-offset:calc(var(--ui-scale) * 12px)}#scene-container{touch-action:none}#structure-upgrade-panel{left:var(--build-offset);right:var(--build-offset);width:auto;max-width:none;top:auto;bottom:calc(var(--enemy-offset) + var(--menu-gap) + var(--action-button-size));transform:none}#quick-summon-panel{left:auto;right:var(--build-offset);bottom:var(--build-offset);justify-content:center;align-items:stretch;gap:calc(var(--ui-scale) * 12px);padding-inline:var(--quick-summon-panel-padding);flex-direction:row}}.goal-item__progress{border-radius:calc(var(--ui-scale) * 16px);width:-moz-fit-content;width:fit-content;min-height:calc(var(--ui-scale) * 32px);background:#0d1321b8;border:1px solid #94a3b866;flex:auto;justify-content:center;align-items:center;margin-left:auto;display:flex;position:relative;overflow:hidden}.goal-item__progress-bar{background:linear-gradient(90deg,#38bdf847,#10b98166);width:0%;transition:width .3s;position:absolute;top:0;bottom:0;left:0}.goal-item__progress-content{justify-content:center;align-items:center;gap:calc(var(--ui-scale) * 4px);padding:calc(var(--ui-scale) * 2px) calc(var(--ui-scale) * 6px);width:-moz-fit-content;width:fit-content;min-width:calc(var(--ui-scale) * 120px);max-width:clamp(240px, calc(var(--ui-scale) * 320px), 420px);text-align:center;z-index:1;display:flex;position:relative}.goal-countdown{align-items:center;gap:calc(var(--ui-scale) * 4px);font-size:calc(var(--ui-scale) * 12px);letter-spacing:.02em;text-transform:none;color:#f8fafcd9;font-variant-numeric:tabular-nums;font-weight:600;display:inline-flex}.goal-countdown__icon{width:calc(var(--ui-scale) * 14px);height:calc(var(--ui-scale) * 14px);fill:currentColor}.analytics-consent-toast{z-index:9999;color:#e2e8f0;background:#0f172aeb;border:1px solid #94a3b866;border-radius:.75rem;flex-direction:column;gap:.5rem;max-width:min(360px,94vw);padding:.85rem 1rem;font-size:.9rem;line-height:1.3;display:inline-flex;position:fixed;bottom:1rem;left:50%;transform:translate(-50%);box-shadow:0 12px 30px #00000059}.analytics-consent-toast__message{margin:0;font-weight:600}.analytics-consent-toast__buttons{flex-wrap:wrap;gap:.5rem;display:flex}.analytics-consent-toast__button{cursor:pointer;border:1px solid #0000;border-radius:999px;flex:auto;padding:.45rem .6rem;font-size:.85rem;font-weight:600;transition:background .2s,color .2s,border-color .2s}.analytics-consent-toast__button--primary{color:#0f172a;background:linear-gradient(120deg,#38bdf8,#16a34a);border-color:#3b82f666}.analytics-consent-toast__button--primary:hover{filter:brightness(1.05)}.analytics-consent-toast__button--secondary{color:#e2e8f0d9;background:#0f172acc;border-color:#94a3b866}.analytics-consent-toast__button--secondary:hover{background:#47556959}
