:root{color-scheme:dark;font-family:ui-rounded,'Arial Rounded MT Bold',system-ui,sans-serif;color:#f9f3ff;background:#101823;--ad-slot-height:50px;--scene:url('themes/moonlit-cemetery.png')}
.arena.background-change{animation:background-flash .55s ease-out}@keyframes background-flash{0%{filter:brightness(.65)}100%{filter:brightness(1)}}
*{box-sizing:border-box}body{margin:0}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible,canvas:focus-visible{outline:3px solid #d7f594;outline-offset:3px}button:active{transform:translateY(2px)}button{border:0}button:disabled{cursor:default} [hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.game-app{position:relative;isolation:isolate;display:flex;flex-direction:column;gap:6px;max-width:480px;height:100svh;height:100dvh;min-height:640px;margin:auto;padding:calc(10px + env(safe-area-inset-top)) 14px 0;overflow:hidden;background:linear-gradient(#19263822,#15233144),var(--scene) center/cover,#182638;box-shadow:0 0 90px #0008}.hud{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;min-height:74px;gap:6px}.utility-group{display:flex;gap:7px;align-self:start;margin-top:7px}.icon-button{width:42px;height:43px;border-radius:14px;border:2px solid #fff6;box-shadow:0 4px 0 #141c35, inset 0 2px 0 #fff6;font-size:26px;color:#2d2842}.lavender{background:#c9a5f4}.coral{background:#ffad9f}.ad-icon{font-size:13px;font-weight:950;position:relative}.ad-icon:after{content:'';position:absolute;height:3px;background:#9b343e;width:29px;left:-4px;top:7px;transform:rotate(-50deg)}.score-board{text-align:center;align-self:start;border-radius:15px 15px 25px 25px;background:#fff0bd;border:2px solid #fff8;box-shadow:0 5px 0 #5c4962;color:#945336;padding:5px 8px;min-width:105px}.best{font-size:10px;font-weight:800}.score-board strong{display:block;font-size:29px;line-height:1.1;font-weight:950}.score-caption{font-size:10px;font-weight:800;letter-spacing:2px}.next-card{justify-self:end;display:flex;align-items:center;gap:4px;border-radius:12px;background:#fff0cf;color:#98593a;padding:4px 6px;font-size:10px;font-weight:950;box-shadow:0 4px 0 #56425e}.head{background-repeat:no-repeat;background-size:contain;background-position:center;flex-shrink:0}.next-card .head{width:36px;height:36px}.skill-row{display:grid;grid-template-columns:48px 48px 1fr 48px 48px;gap:7px;align-items:center}.skill-button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px solid #fff6;border-radius:15px;height:52px;box-shadow:0 4px 0 #172238;color:#302b43;font-size:10px;font-weight:850}.skill-button>span:first-child{font-size:24px;line-height:1.1}.skill-button .plus{position:absolute;right:-4px;top:-5px;background:#d6f69f;border:2px solid #536947;border-radius:7px;padding:0 3px;font-size:13px}.mint{background:#a8e5cb}.pink{background:#f2b6ce}.violet{background:#c1b4f3}.peach{background:#ffd19b}.level-tag{text-align:center;text-shadow:0 2px 2px #15202b;font-size:10px;color:#e5d6ee}.level-tag strong{display:block;color:#f5eac0;font-size:13px}.mission-line{display:flex;justify-content:space-between;font-size:10px;color:#ded9e7;margin:6px 5px 0}.mission-line strong{color:#d5f3a8}.progress{height:4px;border-radius:4px;background:#0b172866;margin:0 5px}.progress i{height:100%;display:block;background:#cef297;border-radius:4px;transition:width .25s}.play-stage{flex:1;min-height:240px;position:relative;display:flex;align-items:center;justify-content:center}.crate-wrap{position:relative;width:min(100%,440px);padding:14px 7px 16px;background:linear-gradient(90deg,#786182,#b197a9 5%,#716080 10%,#564d6b 90%,#b197a9 95%,#786182);border:2px solid #b4a0b8;border-radius:16px 16px 24px 24px;box-shadow:0 5px 0 #1a192b,0 12px 22px #080e2355,inset 0 0 0 3px #554b68}.crate-top{position:absolute;top:-11px;left:0;right:0;display:flex;justify-content:space-around;align-items:center;height:26px;font-size:22px;text-shadow:0 2px 1px #473850}.crate-top span:nth-child(2){background:#b4a0b8;color:#4a365c;width:36px;border-radius:40%;text-align:center}.arena{position:relative;border-radius:8px 8px 14px 14px;overflow:hidden;background:#192536;box-shadow:inset 0 0 20px #080e2390}canvas{width:100%;height:auto;display:block;touch-action:none;aspect-ratio:440/620}.crate-foot{position:absolute;bottom:1px;left:0;right:0;text-align:center;font-size:7px;font-weight:900;letter-spacing:2px;color:#e7d4de}.play-hint{text-align:center;font-size:11px;color:#e1dce8;height:16px;margin:0;text-shadow:0 1px 4px #000}.evolution-preview{background:#192339c9;border:1px solid #a2a0bc44;border-radius:15px;padding:6px 9px;backdrop-filter:blur(12px)}.text-button{background:none;color:#d6c0fa;font-size:10px;padding:5px}.strip-button{display:flex;width:100%;align-items:end;justify-content:space-between;background:none;padding:2px 0;color:#c7c4d8}.strip-item{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:8px}.strip-item .head{width:clamp(20px,6vw,30px);height:clamp(20px,6vw,30px)}.strip-item:last-child{color:#e7f5a8}.ad-slot{height:calc(var(--ad-slot-height) + env(safe-area-inset-bottom));min-height:calc(var(--ad-slot-height) + env(safe-area-inset-bottom));margin:0 -14px;padding:0 14px env(safe-area-inset-bottom);display:flex;justify-content:space-between;align-items:center;background:#111a29;border-top:1px solid #a5adc329;color:#8090a6;font-size:10px}.ad-label,.ad-mode{font-size:8px;padding:3px 5px;border:1px solid #8090a644;border-radius:4px}#toast{position:absolute;bottom:calc(var(--ad-slot-height) + 130px);left:20px;right:20px;z-index:30;padding:12px;background:#ede6fa;color:#392d4a;border-radius:13px;text-align:center;font-size:13px;opacity:0;pointer-events:none;transition:opacity .2s}#toast.visible{opacity:1}
.sheet{width:calc(100% - 28px);max-width:440px;max-height:85dvh;overflow:auto;background:#24273d;color:#f6effd;border:1px solid #9b8bb766;border-radius:25px;padding:22px;box-shadow:0 18px 80px #0008}.sheet::backdrop{background:#080f24bd;backdrop-filter:blur(5px)}.sheet-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:22px}.eyebrow{font-size:10px;font-weight:900;color:#c4abe6;letter-spacing:2px}.sheet h2{font-size:22px;margin:5px 0}.close-button{background:#49425d;border-radius:50%;min-width:40px;height:40px;font-size:23px}.sheet p{color:#c8c5d8;font-size:14px;line-height:1.7}.sheet-note{font-size:12px!important}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 0;border-bottom:1px solid #fff1}.setting-row strong,.setting-row small{display:block}.setting-row small{font-size:11px;color:#aaa9bd;line-height:1.5;margin-top:4px}.setting-button,.status-pill{background:#cdeba7;color:#334730;border-radius:10px;padding:9px 12px;font-size:12px;white-space:nowrap}.wide-button,.primary-button{width:100%;padding:14px;border-radius:13px;background:#4a405f;margin-top:12px;font-weight:800}.primary-button{background:#d0ecab;color:#324631}.feature-symbol{width:80px;height:80px;margin:20px auto;border-radius:25px;display:grid;place-items:center;font-size:40px;background:#baaddc;color:#583e62}.chain{display:grid;grid-template-columns:1fr 1fr;gap:9px}.creature{display:flex;flex-direction:column;align-items:center;text-align:center;border:1px solid #78728c66;border-radius:15px;background:#30334a;padding:12px 5px;gap:5px}.creature.unlocked{border-color:#cbe8a577}.creature .head{width:60px;height:60px}.creature strong{font-size:12px}.creature small{display:block;font-size:9px;color:#afaac4;margin-top:4px}.lv{font-size:11px;color:#cab0ed}.theme-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.theme-choice{background:#32364e;border:2px solid transparent;border-radius:14px;padding:8px;font-size:12px}.theme-choice.selected{border-color:#cfeda9}.theme-thumb{display:grid;height:110px;border-radius:9px;margin-bottom:10px;place-items:center;font-size:40px}.cemetery{background:url('themes/moonlit-cemetery.png') center/cover}.night{background:#172436;color:#eddbb4}.level-choice{display:flex;align-items:center;gap:12px;width:100%;padding:15px;background:#3c3c51;border:1px solid #cce9a7;border-radius:15px;text-align:left}.level-choice .head{width:56px;height:56px}.level-choice strong,.level-choice small{display:block}.level-choice small{font-size:10px;color:#c9c2d9;margin-top:5px}.level-choice>span:last-child{font-size:10px;color:#d8f4ae;margin-left:auto}.overlay,#loading{position:absolute;z-index:3;background:#20263deb;inset:10px;border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px}.overlay h2{font-size:23px}.overlay p{font-size:13px;white-space:pre-line;line-height:1.7}.overlay button{background:#d0ecab;border-radius:12px;padding:13px 30px;color:#344830;font-weight:850}#result-icon,.loading-icon{font-size:46px;color:#d4efad}.loading-bar{width:70px;height:4px;background:#d2edaa;margin-top:20px;border-radius:10px;animation:pulse 1s infinite alternate}@keyframes pulse{to{opacity:.3}}@media(min-width:600px){.game-app{border-left:1px solid #72728b55;border-right:1px solid #72728b55}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
@media(max-height:740px){.game-app{gap:4px}.hud{min-height:68px}.play-stage{min-height:180px}.evolution-preview{padding-top:4px;padding-bottom:4px}}
/* Full-width play surface: compact controls, no ornamental frame. */
.game-app{gap:3px;padding:calc(5px + env(safe-area-inset-top)) 10px 0;min-height:600px}
.hud{min-height:48px;height:48px;flex-shrink:0;grid-template-columns:1fr 104px 1fr}
.utility-group{margin-top:2px;gap:6px}.icon-button{width:36px;height:36px;border-radius:11px;font-size:23px}
.score-board{min-width:0;padding:2px 6px;border-radius:12px 12px 18px 18px;box-shadow:0 3px 0 #5c4962}.score-board strong{font-size:22px}.score-caption{display:none}.best{font-size:10px}
.next-card{padding:3px 5px}.next-card .head{width:30px;height:30px}
.skill-row{grid-template-columns:42px 42px 1fr 42px 42px;height:42px;flex-shrink:0;gap:6px}
.skill-button{height:39px;border-radius:11px;font-size:9px;gap:0;box-shadow:0 2px 0 #172238}.skill-button>span:first-child{font-size:21px;line-height:1}.skill-button .plus{font-size:11px;right:-3px;top:-3px}.level-tag strong{font-size:12px}
.mission-line{margin:1px 1px 0;font-size:10px;line-height:14px;flex-shrink:0}.progress{height:3px;flex-shrink:0;margin:0}
.play-stage{align-self:stretch;min-height:300px;margin:3px -10px 0;flex:1;align-items:stretch}
.crate-wrap{width:100%;height:100%;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
.arena{height:100%;border:0;border-radius:0;box-shadow:none;background:linear-gradient(90deg,#dde8cb18,transparent 6%,transparent 94%,#dde8cb18)}
.arena::after{content:'';position:absolute;inset:0;pointer-events:none;border-left:1px solid #e3eed744;border-right:1px solid #e3eed744;border-bottom:2px solid #e3eed777}
canvas{width:100%;height:100%;aspect-ratio:auto}
.play-hint{font-size:10px;height:13px;line-height:13px;flex-shrink:0}
.evolution-preview{position:relative;background:#19233988;padding:4px 3px 2px;border:0;border-radius:9px;flex-shrink:0}
.strip-button{padding:0}.strip-item{font-size:8px;gap:0}.strip-item .head{width:clamp(21px,5.8vw,27px);height:clamp(21px,5.8vw,27px)}.ad-slot{margin:0 -10px}
@media(min-width:600px){.game-app{max-width:480px}}
.play-stage{min-height:max(300px,calc(min(100vw,480px) * .82))}
.game-app{min-height:max(600px,calc(min(100vw,480px) * .82 + 230px + env(safe-area-inset-top) + env(safe-area-inset-bottom)))}

.skill-row{height:36px;grid-template-columns:36px 36px 1fr 36px 36px}.skill-button{height:34px;padding:0}.skill-button>span:first-child{font-size:22px}.evolution-preview{margin-bottom:3px}

.mission-line{justify-content:flex-end}
/* Skill inventory and compact wallet. */
.coin-wallet{display:flex;align-items:center;justify-content:center;gap:4px;color:#ffe49d;font-size:14px;text-shadow:0 2px 3px #14182e}.coin-wallet span{font-size:18px}.coin-wallet strong{font-variant-numeric:tabular-nums}.skill-button .plus{font-style:normal;min-width:17px;text-align:center}
.target-bar{position:absolute;z-index:5;top:5px;left:10px;right:10px;display:flex;justify-content:space-between;align-items:center;gap:8px;background:#25263eea;border:1px solid #efdba373;border-radius:12px;padding:3px 5px 3px 10px;pointer-events:none;box-shadow:0 4px 15px #0004}.target-bar span{font-size:12px;color:#fff0c1}.target-bar button{pointer-events:auto;background:#66526a;border-radius:9px;min-height:38px;min-width:48px;font-size:12px}
.power-sheet{border:0;background:transparent;box-shadow:none;padding:6px 5px 14px;max-width:390px;overflow:auto}.power-top{display:flex;align-items:center;justify-content:space-between;margin:0 5px 24px;color:#e6d8f2;font-size:12px;font-weight:800}.gem-wallet{display:flex;align-items:center;gap:8px;padding:5px 10px;background:#212c43;border:1px solid #a2b4ce;border-radius:10px;color:#fff;font-size:15px}.gem-wallet>span{font-size:24px}.gem-wallet i{font-style:normal;color:#bcf68c;font-size:19px}
.power-card{position:relative;padding:25px 18px 16px;background:#fff8df;border:4px solid #74cad6;border-radius:24px;box-shadow:0 6px 0 #246980,0 14px 25px #10132166;color:#633d36;text-align:center}.power-heading{position:relative;display:flex;justify-content:center;align-items:center;margin:-46px 0 10px}.power-heading h2{padding:9px 24px;background:#ffb459;border:3px solid #f5d496;border-radius:13px;color:#783e28;box-shadow:0 4px 0 #b87a46;font-size:22px}.power-heading .close-button{position:absolute;right:-24px;top:17px;background:#ee7779;color:#fff;box-shadow:0 3px 0 #a84b5a;border:2px solid #ffc8af;min-width:36px;width:36px;height:36px}
.power-symbol{font-size:74px;line-height:1.4;min-height:100px;display:grid;place-items:center;margin:8px auto;filter:drop-shadow(0 5px 0 #e8d7b9)}.power-card #skill-description{color:#774938;font-size:15px;font-weight:750;line-height:1.6;margin:10px 0;min-height:48px}.skill-stock{font-size:13px;color:#946844}.skill-stock strong{font-size:20px;color:#644c42}.power-card .use-power{margin:9px 0 13px;background:#c9eb95;color:#37532c;border:2px solid #82ab62;box-shadow:0 3px 0 #6e954c;padding:12px}.power-card .use-power:disabled{background:#e7dfcb;border-color:#b8ae9c;box-shadow:none;color:#918675;opacity:.8}.refill-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.refill-actions button{font-size:13px;font-weight:850;min-height:44px;border:2px solid #bc943e;border-radius:11px;background:#ffd15f;box-shadow:0 3px 0 #997539;color:#65472d;padding:6px}.refill-actions button:last-child{background:#a6e477;border-color:#649955;box-shadow:0 3px 0 #527e48;color:#34552e}.refill-actions span{font-size:19px;vertical-align:middle}.power-card .power-note{font-size:12px;color:#897150;margin:14px 0 0;line-height:1.5}.sheet button:disabled{opacity:.6}
@media(max-height:650px){.power-symbol{font-size:54px;min-height:70px;margin:0 auto}.power-card{padding-bottom:10px}.power-card #skill-description{margin:4px 0}}
/* Supplied zombie artwork: transparent buttons keep the playfield spacious. */
.ui-art{display:block;object-fit:contain;pointer-events:none;user-select:none;width:100%;height:100%;filter:drop-shadow(0 2px 2px #060d23a6)}
.hud{grid-template-columns:1fr 104px 1fr}.utility-group{justify-content:flex-end;padding-right:12px;margin-top:0}.right-tools{display:flex;align-items:center;justify-content:space-between;gap:5px;padding-left:6px}.hud .icon-button{background:none;box-shadow:none;border:0;border-radius:10px;width:43px;height:43px;padding:0;flex-shrink:0}.next-card{font-size:9px;padding:3px}.next-card .head{width:27px;height:27px}
.skill-row{grid-template-columns:42px 42px 1fr 42px 42px;height:40px;gap:6px}.skill-button{background:none;border:0;box-shadow:none;padding:0;width:42px;height:40px;border-radius:8px}.skill-button .plus{right:-1px;top:-2px;background:#cef39b;border:1px solid #688c4e;color:#304b25;box-shadow:0 1px 3px #0008;z-index:1}.skill-button .ui-art{width:40px;height:40px}
.coin-wallet{justify-self:center;min-width:91px;background:#385d9fc4;border:1px solid #8fa9de77;border-radius:8px;padding:1px 9px 1px 3px;color:#fff0b4;gap:4px;height:29px}.coin-wallet .ui-art{width:28px;height:28px}.coin-wallet strong{font-size:16px;min-width:25px;text-align:center}
.power-symbol{height:136px;font-size:0;margin:5px auto;filter:none}.power-symbol img{display:block;width:136px;height:136px;object-fit:contain;filter:drop-shadow(0 5px 3px #8d684544)}.adfree-art{background:none!important;width:130px;height:130px}.settings-heading{display:flex;align-items:center;gap:8px}.settings-heading .ui-art{width:31px;height:31px}.arena::after{border-left:0;border-right:0}
@media(max-width:360px){.right-tools{gap:2px;padding-left:3px}.hud .icon-button{width:37px;height:40px}.next-card{font-size:8px}.next-card .head{width:24px;height:24px}.utility-group{padding-right:8px}}
@media(max-height:650px){.power-symbol,.power-symbol img{height:100px;width:100px}}

/* Reserve camera space even when a mobile browser reports a zero safe-area inset. */
.game-app{--hud-top-gap:max(44px,calc(env(safe-area-inset-top) + 10px));padding-top:var(--hud-top-gap);min-height:max(640px,calc(min(100vw,480px) * .82 + 225px + var(--hud-top-gap) + env(safe-area-inset-bottom)))}
.coin-earned{animation:coin-credit .65s ease-out}@keyframes coin-credit{0%{transform:scale(1)}35%{transform:scale(1.35);color:#fff}100%{transform:scale(1)}}
@media(min-width:600px) and (pointer:fine){.game-app{--hud-top-gap:max(18px,calc(env(safe-area-inset-top) + 10px))}}
/* Larger touch targets on translucent square plates. */
.hud{height:56px;min-height:56px;grid-template-columns:minmax(0,1fr) 96px minmax(0,1fr);gap:5px}
.utility-group{padding-right:8px}.right-tools{height:56px;padding-left:0;gap:4px;align-items:center}
.hud .icon-button,.skill-button{background:linear-gradient(145deg,#6680984d,#18273da6);border:1px solid #c9e5f075;box-shadow:inset 0 1px 0 #efffff24,0 3px 7px #08102066;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);border-radius:10px}
.hud .icon-button{width:56px;height:56px;padding:2px}.hud .icon-button .ui-art{width:50px;height:50px}
.next-card{align-self:flex-start;margin-top:0;flex-shrink:0}.next-card .head{width:27px;height:27px}
.skill-row{grid-template-columns:52px 52px minmax(0,1fr) 52px 52px;height:52px;gap:5px;margin-top:3px}
.skill-button{width:52px;height:52px;padding:1px}.skill-button .ui-art{width:48px;height:48px}.skill-button .plus{top:-4px;right:-3px;min-width:19px;font-size:12px;line-height:17px;border-radius:7px}
.coin-wallet{min-width:86px;padding-right:5px}.coin-wallet .ui-art{width:26px;height:26px}
@media(max-width:340px){.hud{grid-template-columns:minmax(0,1fr) 88px minmax(0,1fr);gap:3px}.hud .icon-button{width:48px;height:48px}.hud .icon-button .ui-art{width:42px;height:42px}.utility-group{padding-right:4px}.right-tools{gap:2px}.next-card .head{width:24px;height:24px}.skill-row{grid-template-columns:46px 46px minmax(0,1fr) 46px 46px;gap:4px}.skill-button{width:46px;height:48px}.skill-button .ui-art{width:42px;height:44px}}
.hud{grid-template-columns:minmax(0,1fr) 96px minmax(120px,1fr)}
@media(max-width:340px){.hud{grid-template-columns:minmax(0,1fr) 88px minmax(106px,1fr)}}
.hud .icon-button[data-dialog="settings-dialog"]{isolation:isolate;background:#c5d9c6bd;border-color:#dcebbb9c}
.hud .icon-button[data-dialog="settings-dialog"] .ui-art,.settings-art-wrap .ui-art{mix-blend-mode:multiply;filter:none;border-radius:7px}
.settings-art-wrap{display:inline-flex;isolation:isolate;background:#c5d9c6bd;border-radius:7px;width:31px;height:31px}
/* Keep the two balance panels together and align all control backgrounds. */
.hud .score-board,.skill-row .coin-wallet{position:relative;top:8px}
.hud .icon-button[data-dialog="settings-dialog"]{background:linear-gradient(145deg,#6680984d,#18273da6);border-color:#c9e5f075}
.settings-art-wrap{background:linear-gradient(145deg,#6680984d,#18273da6)}
/* Supplied settings artwork is the actual interactive page, with aligned hit areas. */
.settings-page{color:#f9edd6;background:#142f36;border:1px solid #547b73;border-radius:18px;padding:0;width:calc(100% - 20px);max-width:420px;max-height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 20px);overflow:auto;box-shadow:0 12px 70px #000a;scrollbar-width:thin}
.settings-page::backdrop{background:#07101be6;backdrop-filter:blur(5px)}.settings-artboard{position:relative;width:100%;line-height:0}.settings-background{display:block;width:100%;height:auto;user-select:none;pointer-events:none}
.settings-hotspot{position:absolute;display:block;margin:0;padding:0;border:0;background:transparent;cursor:pointer;min-width:0;min-height:0;line-height:normal;border-radius:14%;-webkit-tap-highlight-color:#d0f5a530}
.settings-hotspot:hover{box-shadow:inset 0 0 0 2px #edffb588}.settings-hotspot:focus-visible{outline:3px solid #f1ffc3;outline-offset:2px;background-color:#d9f7ac12}.settings-hotspot:active{transform:none;background-color:#dcffbd1f}
.setting-sound{left:13.1%;top:25.6%;width:22.6%;height:15.1%}.setting-music{left:39.3%;top:25.6%;width:21.8%;height:15.1%}.setting-vibrate{left:65%;top:25.6%;width:22.6%;height:15.1%}
.setting-sound.is-off,.setting-music.is-off,.setting-vibrate.is-off{background-image:url('settings/toggles-off.jpg');background-size:419.67% 121.67%;background-repeat:no-repeat;border-radius:16% 16% 13% 13%}
.setting-sound.is-off{background-position:9.87% 73.84%}.setting-music.is-off{background-position:52.7% 73.84%}.setting-vibrate.is-off{background-position:94% 73.84%}
.setting-home{left:13.1%;top:42.8%;width:17.1%;height:9.3%}.setting-restart{left:32.5%;top:42.8%;width:17.1%;height:9.3%}.setting-continue{left:51.5%;top:42.8%;width:36%;height:9.3%;border-radius:10%}
.setting-theme{left:25%;top:54.1%;width:50%;height:8.5%;border-radius:12%}.setting-help{left:15.3%;top:64%;width:70%;height:8.2%;border-radius:10%}.setting-privacy{left:12%;top:73.8%;width:37.5%;height:8.8%}.setting-terms{left:51%;top:73.8%;width:37.1%;height:8.8%}
.settings-extras{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:16px;background:#12292ded}.settings-extras button{min-height:44px;border:1px solid #77987770;border-radius:10px;background:#2d4942;color:#f0eccd;font-size:13px}.settings-extras p{grid-column:1/-1;text-align:center;color:#b7c8b6;font-size:12px;margin:5px}.settings-feedback{position:absolute;z-index:2;left:10%;right:10%;top:21.1%;margin:0;background:#182c28ed;border:1px solid #bad77977;border-radius:8px;color:#f2facf;font-size:12px;line-height:1.4;padding:7px;text-align:center;pointer-events:none}
.ad-art-dialog{padding:0;border:1px solid #8a6b46;border-radius:18px;background:#1b2824;width:calc(100% - 24px);max-width:400px;max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow:auto;box-shadow:0 12px 70px #000b}
.ad-art-dialog::backdrop,.trial-ad::backdrop{background:#071017df;backdrop-filter:blur(5px)}.ad-artboard{position:relative;line-height:0}.ad-artboard>img{display:block;width:100%;height:auto;pointer-events:none}.art-count{position:absolute;transform:translate(-50%,-50%);font-size:clamp(42px,17vw,76px);line-height:1;color:#fff4bb;text-shadow:0 4px 0 #a95314,0 7px 9px #7b301855;font-weight:950}.break-count{left:50%;top:59%}.continue-count{left:50.8%;top:53%}.continue-hit{position:absolute;left:26%;top:74.5%;width:50%;height:12.8%;background:transparent;border:0;border-radius:16%;padding:0;min-height:44px}.continue-hit:hover,.continue-hit:focus-visible{box-shadow:inset 0 0 0 3px #fff3ac}.continue-hit:active{transform:none;background:#fff5ab18}.decline-continue{position:absolute;left:35%;bottom:3%;width:30%;min-height:36px;background:#17221dd9;border:1px solid #cad0a94d;border-radius:9px;font-size:12px;color:#f1edcb}.revive-description{position:absolute;left:17%;right:17%;top:66.5%;font-size:12px;line-height:1.5;color:#75402a;text-align:center;font-weight:800;margin:0}
.trial-ad{text-align:center;max-width:360px;border-color:#a6a062}.ad-test-label{display:inline-block;padding:6px 10px;border-radius:8px;background:#4b455a;color:#efe8b7;font-size:12px}.trial-ad-symbol{font-size:60px;color:#c9e991;margin-top:18px}.trial-ad-count{display:block;font-size:64px;line-height:1.2;color:#f3d689}.trial-ad-progress{height:6px;border-radius:8px;background:#111a27;overflow:hidden;margin:20px 0}.trial-ad-progress i{display:block;width:0;height:100%;background:#cdeb98;transition:width .1s linear}#banner-trial-ad{background:none;color:#c9d8a8;font-size:11px;min-height:40px;padding:0 8px}
/* Compact reference layout: equal gaps, left skills, central balances, right navigation. */
.hud.compact-hud{--control:clamp(40px,11.5vw,56px);--hud-gap:clamp(4px,1.4vw,7px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) minmax(68px,1.65fr) repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,var(--control));gap:var(--hud-gap);height:auto;min-height:0;align-items:center;margin-bottom:0}
.compact-hud .skill-row{display:contents}
.compact-hud .skill-button,.compact-hud .icon-button{width:100%;max-width:var(--control);height:var(--control);padding:1px;justify-self:center}
.compact-hud .skill-button .ui-art,.compact-hud .icon-button .ui-art{width:100%;height:100%}
.compact-hud [data-skill="upgrade"]{grid-area:1/1}.compact-hud [data-skill="bomb"]{grid-area:1/2}.compact-hud [data-skill="shake"]{grid-area:2/1}.compact-hud [data-skill="iron"]{grid-area:2/2}
.compact-hud .balance-stack{grid-area:1/3/3/4;display:flex;flex-direction:column;justify-content:flex-end;align-self:stretch;gap:var(--hud-gap);min-width:0}
.compact-hud .score-board{position:static;min-width:0;width:100%;padding:4px 2px;border-radius:14px;box-shadow:0 3px 0 #5c4962;overflow:hidden}
.compact-hud .score-board strong{font-size:clamp(19px,5.1vw,26px);font-variant-numeric:tabular-nums;line-height:1.1}.compact-hud .best{font-size:10px;white-space:nowrap}
.compact-hud .coin-wallet{position:static;min-width:0;width:100%;height:29px;padding:1px 2px;gap:2px}.compact-hud .coin-wallet strong{font-size:15px;min-width:0}.compact-hud .coin-wallet .ui-art{width:24px;height:24px}
.compact-hud .home-button{grid-area:1/4;background:none;border:0;box-shadow:none;backdrop-filter:none;overflow:hidden}.compact-hud .home-button .ui-art{transform:scale(1.35)}
.compact-hud [data-dialog="adfree-dialog"]{grid-area:2/4}.compact-hud [data-dialog="settings-dialog"]{grid-area:2/5}
.compact-hud .next-card{grid-area:1/5/2/6;align-self:center;justify-self:end;margin:0;max-width:100%;min-height:36px;padding:3px 5px}

/* Symmetric columns place the wallet exactly on the playfield centerline. */
.compact-hud .icon-button[data-dialog="settings-dialog"]{background:transparent;border:2px solid #e86168;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;isolation:auto}
.compact-hud .icon-button[data-dialog="settings-dialog"] .ui-art{mix-blend-mode:normal;filter:none}
.compact-hud .next-card{width:100%;justify-content:center;font-size:8px;padding:3px 2px;gap:2px}.compact-hud .next-card .head{width:24px;height:24px}
/* Supplied theme menu with proportional card hit areas and an enlarged image preview. */
.theme-art-page{padding:0;border:1px solid #7b9378;border-radius:20px;width:calc(100% - 16px);max-width:460px;max-height:calc(100dvh - 20px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow:auto;background:#172c32;color:#f9ebc8;box-shadow:0 18px 70px #000b;scrollbar-width:thin}.theme-art-page::backdrop{background:#060d19dc;backdrop-filter:blur(5px)}
.theme-artboard{position:relative;line-height:0}.theme-artboard>img{display:block;width:100%;height:auto;pointer-events:none;user-select:none}.theme-art-hotspot{position:absolute;z-index:1;left:5%;width:90%;padding:0;background:transparent;border:0;border-radius:16px;cursor:pointer;touch-action:manipulation;transition:box-shadow .18s,transform .18s;transform-origin:center}.theme-art-hotspot:hover,.theme-art-hotspot:focus-visible{box-shadow:0 0 0 3px #ffffffb0,0 0 16px var(--theme-neon),0 0 28px color-mix(in srgb,var(--theme-neon) 72%,transparent)}.theme-art-hotspot.selected{outline:3px solid #fff;outline-offset:-3px;box-shadow:0 0 0 4px var(--theme-neon),0 0 15px var(--theme-neon),0 0 30px color-mix(in srgb,var(--theme-neon) 80%,transparent);animation:theme-neon-pulse 1.25s ease-in-out infinite alternate}.theme-art-hotspot:active{transform:scale(1.012);background:#d0ff9b12}.theme-art-action{position:absolute;z-index:3;right:5%;padding:0;border:0;background:transparent;cursor:pointer;touch-action:manipulation;filter:drop-shadow(0 2px 3px #000b);transition:filter .16s,transform .16s}.theme-art-action.ad{width:18%;aspect-ratio:1}.theme-art-action.buy{width:27%;height:4.2%}.theme-art-action img{width:100%;height:100%;object-fit:contain}.theme-art-action:hover,.theme-art-action:focus-visible{transform:scale(1.08);filter:drop-shadow(0 0 6px #d7ff75) drop-shadow(0 2px 3px #000b)}.theme-art-action:active{transform:scale(.96)}.theme-art-close{position:absolute;z-index:4;left:83.5%;top:2.5%;width:14%;height:9%;border-radius:50%;background:transparent;padding:0}.theme-page-footer{display:none}.theme-page-footer p{font-size:14px;text-align:center}.theme-page-footer .theme-choice{padding:10px;font-size:14px;min-height:44px}
@keyframes theme-neon-pulse{from{filter:brightness(1);opacity:.9}to{filter:brightness(1.35);opacity:1}}
.theme-preview-dialog{max-width:580px;padding:18px;border:2px solid #b4d995;background:#192d32}.theme-preview-dialog[open]{animation:theme-pop .32s cubic-bezier(.2,1.4,.4,1)}.theme-preview-dialog .sheet-header{margin-bottom:14px}.theme-preview-dialog h2{font-size:20px}.theme-preview-art{width:100%;background-image:url('themes/menu.png');background-repeat:no-repeat;border-radius:16px;box-shadow:0 0 0 2px #9cd98070,0 8px 22px #0005}.theme-preview-dialog::backdrop{background:#050b16b8;backdrop-filter:blur(4px)}
@keyframes theme-pop{from{opacity:0;transform:translateY(18px) scale(.78)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.theme-preview-dialog[open]{animation:none}.theme-art-hotspot{transition:none}}
.theme-access-badge{position:absolute;right:2%;bottom:8%;width:26%;height:39%;display:flex;align-items:center;justify-content:center;gap:3px;background:linear-gradient(#75ec55,#20b536);border:2px solid #235b29;border-radius:13px;box-shadow:0 3px 0 #12451e;color:#fff9da;text-shadow:0 1px 2px #173a1a;font-size:clamp(10px,3vw,14px);line-height:1.1;font-weight:850;pointer-events:none}.theme-access-badge img{width:26%;height:85%;object-fit:contain}.theme-access-badge small{font-size:inherit}.theme-access-action{display:flex;align-items:center;justify-content:center;gap:8px}.theme-access-action img{width:38px;height:38px;object-fit:contain}.theme-access-action:disabled{background:#535b56;color:#d3d9cb;cursor:default}
.theme-access-badge.default-access{width:33%;height:32%;bottom:8%}
.theme-size-preview>p{font-size:13px;margin:0 0 16px;text-align:center;color:#d7ecc2}
#theme-size-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 8px;align-items:end}
.theme-size-item{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:7px;min-width:0;padding:8px 0}
.theme-size-item img{display:block;flex:none;max-width:none;object-fit:contain;border-radius:0;filter:drop-shadow(0 3px 4px #0005)}
.theme-size-item strong{font-size:14px;text-align:center}.theme-size-item small{font-size:11px;color:#b8cabc;text-align:center}
.theme-size-item:last-child{grid-column:1/-1}.theme-size-preview{padding-bottom:16px}
.dynamic-theme-list{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:10px 0 16px}.dynamic-theme-button{position:relative;min-height:62px;padding:10px 9px;border:1px solid #76957b;border-radius:13px;background:#203c38;color:#fff4d4;text-align:left}.dynamic-theme-button strong,.dynamic-theme-button small{display:block}.dynamic-theme-button small{margin-top:5px;color:#bcd6bd}.dynamic-theme-button.using{border-color:#9dec66;box-shadow:0 0 0 2px #9dec6640}.dynamic-theme-button.incomplete{opacity:.7}.dynamic-theme-button .theme-access-badge{position:static;width:auto;height:auto;min-height:25px;margin-top:7px;padding:3px 7px;border-radius:8px;font-size:11px;justify-content:flex-start}.dynamic-theme-button .theme-access-badge img{width:22px;height:22px}@media(max-width:380px){.dynamic-theme-list{grid-template-columns:1fr}}

/* Supplied backdrop is confined to the playfield beneath transparent sprites. */
.arena{background:#182638 url('themes/zombie-gate.jpg') center center/cover no-repeat}
.strip-item{flex:1;min-width:0;align-items:center}
.strip-reward{display:flex;align-items:center;justify-content:center;gap:1px;height:16px;font-size:12px;line-height:16px;font-weight:800;color:#ffe49c;white-space:nowrap}
.strip-reward img{display:block;width:12px;height:12px;object-fit:contain}

/* Uploaded button artwork, displayed intact with its original white backdrop. */
.skill-button .ui-art,.compact-hud [data-dialog="adfree-dialog"] .ui-art,.compact-hud [data-dialog="settings-dialog"] .ui-art{object-fit:contain;border-radius:8px;mix-blend-mode:normal;filter:none}
.power-symbol img,.adfree-art img{border-radius:14px;object-fit:contain}

/* Moss-tinted plates blend the supplied white-backed artwork into the cemetery. */
.compact-hud .skill-button,
.compact-hud .icon-button[data-dialog="adfree-dialog"],
.compact-hud .icon-button[data-dialog="settings-dialog"]{isolation:isolate;background:#a1ac91;border:1px solid #737e69;box-shadow:inset 0 1px 0 #d6d9b84d,0 3px 6px #07101e88;backdrop-filter:none;-webkit-backdrop-filter:none}

/* Full-screen level and base map. */
.levels-page{width:min(100%,480px);height:100dvh;max-height:none;margin:auto;padding:0;border:0;background:#0b1723;color:#fff;overflow:hidden}.levels-page::backdrop{background:#050a11}.levels-shell{height:100%;overflow:auto;overscroll-behavior:contain;background:radial-gradient(circle at 50% 0,#264757 0,#0f2530 34%,#07131d 100%);scrollbar-width:thin}.levels-topbar{position:sticky;z-index:5;top:0;display:grid;grid-template-columns:138px 1fr 1fr;gap:8px;align-items:center;padding:calc(8px + env(safe-area-inset-top)) 12px 8px;background:#10222deb;border-bottom:1px solid #9ee75d45;backdrop-filter:blur(12px)}.levels-play{height:64px;padding:0;background:transparent}.levels-play img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 4px #0008)}.levels-balance{height:48px;min-width:0;display:flex;align-items:center;gap:5px;padding:4px 8px;border:2px solid #d8efff99;border-radius:15px;background:linear-gradient(#9cc6e9,#6f9fd1);box-shadow:inset 0 2px #fff7,0 4px 0 #203c65;color:#fff;text-shadow:0 2px 2px #24466d;font-size:18px}.levels-balance img{width:34px;height:34px;object-fit:contain}.levels-diamond{width:100%;font:inherit}.levels-actions{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;padding:10px 10px 12px;background:linear-gradient(#ffc58a,#ff9b68);border-bottom:3px solid #5b332b;box-shadow:0 7px 18px #0006}.levels-actions button{min-width:0;padding:4px 2px 6px;border:1px solid #7f4d32;border-radius:18px;background:#ffd39e;color:#64331f;box-shadow:inset 0 2px #fff8,0 3px 0 #8d5133;font-weight:900;font-size:10px}.levels-actions img{display:block;width:48px;height:48px;margin:auto;object-fit:contain;border-radius:12px}.levels-actions span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.level-map{padding:20px 12px 80px;background:linear-gradient(#08131a55,#08131acc),url('themes/moonlit-cemetery.png') center top/cover fixed}.level-map-heading{display:flex;align-items:end;justify-content:space-between}.level-map-heading span{color:#a8ee6f;font-size:10px;font-weight:900;letter-spacing:2px}.level-map-heading h2{margin:3px 0;font-size:26px}.level-map-heading b{padding:8px 13px;border-radius:12px;background:#93e942;color:#173114;box-shadow:0 3px 0 #376425}.level-map>p{margin:6px 0 16px;color:#d6e6d1;font-size:13px}.building-card{position:relative;overflow:hidden;border:2px solid #637785;border-radius:22px;background:#152631;box-shadow:0 10px 25px #0008;transition:.2s}.building-card.next{border-color:#aaf463;box-shadow:0 0 0 3px #82e64433,0 12px 30px #0009}.building-card.complete{border-color:#65c550}.building-card.locked{filter:saturate(.45) brightness(.7)}.building-card>img{display:block;width:100%;aspect-ratio:3/1;object-fit:cover}.building-info{display:grid;grid-template-columns:1fr auto;gap:3px 10px;align-items:center;padding:10px 12px}.building-info>span{font-size:11px;color:#a9ef76;font-weight:900}.building-info>strong{font-size:15px}.building-info>button{grid-area:1/2/3/3;min-width:100px;padding:9px;border-radius:10px;background:#8fe347;color:#1d3518;font-size:11px;font-weight:950;box-shadow:0 3px 0 #3f762e}.building-info>button:disabled{background:#526069;color:#c8d1d0;box-shadow:none}.building-info>button img{width:18px;height:18px;object-fit:contain;vertical-align:middle}.map-connector{width:6px;height:22px;margin:auto;background:repeating-linear-gradient(#b3f176 0 5px,#426f40 5px 10px);box-shadow:0 0 10px #7cff5d}.future-levels{display:grid;gap:8px;margin-top:18px}.future-level{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px dashed #799083;border-radius:14px;background:#101f28d9;color:#b9c5c1}.future-level span{display:grid;place-items:center;min-width:48px;height:34px;border-radius:9px;background:#273a42;font-weight:900}.future-level strong{font-size:12px}.future-level.next{border-style:solid;border-color:#9be75f;color:#eaffda}.future-level.complete{border-style:solid;border-color:#53974a;color:#b9eea7}@media(max-width:380px){.levels-topbar{grid-template-columns:112px 1fr 1fr}.levels-actions{gap:3px}.levels-actions img{width:40px;height:40px}.levels-actions button{font-size:9px}.levels-balance{padding:3px;font-size:14px}.levels-balance img{width:28px;height:28px}}
.compact-hud .skill-button .ui-art,
.compact-hud .icon-button[data-dialog="adfree-dialog"] .ui-art,
.compact-hud .icon-button[data-dialog="settings-dialog"] .ui-art{mix-blend-mode:multiply;filter:none}
.power-symbol,.feature-symbol.adfree-art{isolation:isolate;background:#a1ac91!important;border-radius:14px;width:136px;height:136px;display:grid;place-items:center;overflow:hidden}
.power-symbol img,.feature-symbol.adfree-art img{mix-blend-mode:multiply;filter:none}
.levels-notice{position:sticky;z-index:4;top:79px;margin:8px 12px -2px;padding:9px 12px;border:1px solid #b4ec7999;border-radius:10px;background:#182d25eb;color:#e9ffd8;font-size:12px;text-align:center}
.future-level strong{flex:1}.future-level button{display:flex;align-items:center;gap:3px;padding:7px 9px;border-radius:9px;background:#8fe347;color:#183215;font-size:11px;font-weight:950;box-shadow:0 3px 0 #3f762e}.future-level button img{width:20px;height:20px;object-fit:contain}
.levels-actions{position:sticky;z-index:5;top:calc(80px + env(safe-area-inset-top));border-radius:18px;overflow:hidden}
.levels-notice{top:calc(170px + env(safe-area-inset-top))}
.map-summary{position:sticky;z-index:4;top:calc(169px + env(safe-area-inset-top));margin:-20px -12px 16px;padding:15px 12px 10px;background:#102432f2;border-bottom:1px solid #8ddf5b55;box-shadow:0 8px 18px #0005;backdrop-filter:blur(10px)}
.map-summary>p{margin:5px 0 0;color:#d6e6d1;font-size:12px}
.map-summary .level-map-heading h2{font-size:20px;letter-spacing:.04em}
.level-map>.map-summary+p{display:none}
.levels-notice{position:relative;top:auto}
.base-map-list{display:grid;gap:22px}.base-entry{display:block;width:100%;padding:0;text-align:left;cursor:pointer}.base-entry>img{aspect-ratio:3/1.25}.base-entry .banner-copy{position:absolute;left:10px;bottom:10px;max-width:78%;padding:7px 10px;border:1px solid #90b8d7;border-radius:8px;background:#102735df;box-shadow:0 3px 12px #0008}.banner-copy small,.banner-copy strong{display:block}.banner-copy small{color:#9bee70;font-size:10px;font-style:normal}.banner-copy strong{margin-top:2px;color:#fff;font-size:14px}.base-entry.locked{filter:none}.base-entry.is-locked{cursor:not-allowed;filter:grayscale(1) brightness(.48);opacity:.82;border-color:#697177}.base-entry.is-locked .banner-copy{border-color:#92999d;background:#20272bd9}.base-entry.is-locked .banner-copy small{color:#c0c5c7}.base-lock{position:absolute;inset:50% auto auto 50%;display:grid;place-items:center;width:62px;height:62px;transform:translate(-50%,-50%);border:2px solid #d9dfe2;border-radius:50%;background:#1d2429dd;color:#eef2f3;font-size:31px;box-shadow:0 6px 20px #000b}
.base-upgrade-page{width:min(100% - 18px,430px);max-height:calc(100dvh - 18px);padding:0;border:2px solid #54769b;border-radius:25px;background:#0d1d2a;color:#fff;overflow:auto;box-shadow:0 20px 80px #000c}.base-upgrade-page::backdrop{background:#050b12e8;backdrop-filter:blur(6px)}.base-upgrade-shell>header{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:44px 1fr auto;gap:10px;align-items:center;padding:13px;background:#142c3beb;border-bottom:1px solid #53738a;backdrop-filter:blur(8px)}.base-upgrade-shell>header button{width:42px;height:42px;border-radius:50%;background:#304a59;color:#fff;font-size:30px}.base-upgrade-shell>header span{color:#9ce96d;font-size:9px;letter-spacing:2px;font-weight:900}.base-upgrade-shell>header h2{margin:2px 0 0;font-size:17px}.base-upgrade-shell>header b{padding:8px 11px;border-radius:10px;background:#8ee347;color:#173514}.upgrade-art{display:grid;place-items:center;min-height:330px;padding:24px;background:radial-gradient(circle,#29485a,#0a1721 70%)}.upgrade-art img{display:block;width:100%;max-height:390px;object-fit:contain;filter:drop-shadow(0 16px 14px #0009)}.upgrade-copy{padding:18px;text-align:center}.upgrade-copy>strong{font-size:22px}.upgrade-copy p{color:#b9cbd4;font-size:13px;line-height:1.6}.upgrade-copy button{width:100%;min-height:52px;border-radius:14px;background:#8fe347;color:#173714;font-weight:950;box-shadow:0 4px 0 #3f762e}.upgrade-copy button:disabled{background:#52626c;color:#d5dddf;box-shadow:none}.upgrade-copy button img{width:24px;height:24px;object-fit:contain;vertical-align:middle}.upgrade-track{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;padding:0 18px 22px}.upgrade-track span{padding:8px 4px;border:1px solid #405968;border-radius:8px;text-align:center;color:#82949f;font-size:11px}.upgrade-track .done{border-color:#4c9343;background:#214326;color:#bff0a1}.upgrade-track .next{border-color:#9de960;color:#eaffdb}
.daily-page{width:min(100%,480px);height:100dvh;max-height:none;margin:auto;padding:0 0 54px;border:0;background:#101b28;color:#fff;overflow:auto}.daily-page::backdrop{background:#050a11}.daily-artboard{position:relative;width:100%;aspect-ratio:941/1672}.daily-artboard>img{display:block;width:100%;height:100%;object-fit:cover}.daily-close,.daily-claim-hit,.daily-double-hit{position:absolute;border:0;background:transparent}.daily-close{top:14.4%;right:3.2%;width:15%;height:9%}.daily-claim-hit{left:10.5%;bottom:9.3%;width:36.5%;height:9.5%;border-radius:18px}.daily-double-hit{right:10.2%;bottom:9.3%;width:39%;height:9.5%;border-radius:18px}.daily-claim-hit:disabled,.daily-double-hit:disabled{background:#17202abd;cursor:not-allowed}.daily-values span{position:absolute;display:grid;place-items:center;width:23%;height:4%;border-radius:8px;background:#fff0c9;color:#311a18;font-size:clamp(12px,3.4vw,17px);font-weight:950;text-shadow:none}.daily-values span:nth-child(1){left:10.5%;top:39.2%}.daily-values span:nth-child(2){left:38.5%;top:39.2%}.daily-values span:nth-child(3){left:66.5%;top:39.2%}.daily-values span:nth-child(4){left:10.5%;top:56.2%}.daily-values span:nth-child(5){left:38.5%;top:56.2%}.daily-values span:nth-child(6){left:66.5%;top:56.2%}.daily-values span:nth-child(7){left:28%;top:75.4%;width:45%;height:3.7%}.daily-states span{position:absolute;display:grid;place-items:center;border-radius:18px;pointer-events:none;font-size:clamp(24px,8vw,44px);font-weight:950}.daily-states span:nth-child(1){left:9.5%;top:27.7%;width:25%;height:16%}.daily-states span:nth-child(2){left:37.5%;top:27.7%;width:25%;height:16%}.daily-states span:nth-child(3){left:65.5%;top:27.7%;width:25%;height:16%}.daily-states span:nth-child(4){left:9.5%;top:44.8%;width:25%;height:16%}.daily-states span:nth-child(5){left:37.5%;top:44.8%;width:25%;height:16%}.daily-states span:nth-child(6){left:65.5%;top:44.8%;width:25%;height:16%}.daily-states span:nth-child(7){left:9.5%;top:62%;width:81%;height:18%}.daily-states .current{border:4px solid #b8ff63;box-shadow:0 0 20px #7dff54,inset 0 0 20px #6cff4238}.daily-states .done,.daily-states .claimed{background:#10251db8;color:#aaff6b}.daily-states .locked{background:#12141a99;color:#ddd;filter:grayscale(1)}.daily-feedback{position:absolute;left:11%;right:11%;bottom:4.7%;margin:0;padding:5px 8px;border-radius:8px;background:#142418dc;color:#efffdc;font-size:clamp(10px,2.7vw,13px);text-align:center}.page-banner-slot{z-index:8;display:flex;align-items:center;justify-content:center;gap:10px;height:54px;border-top:1px solid #547063;background:#10231ff5;color:#93a9a0;font-size:11px;letter-spacing:.12em;box-shadow:0 -6px 18px #0005}.page-banner-slot small{padding:3px 6px;border:1px solid #49655a;border-radius:4px;font-size:9px;letter-spacing:0}.daily-page>.page-banner-slot,.levels-shell>.page-banner-slot{position:fixed;left:50%;bottom:0;width:min(100%,480px);transform:translateX(-50%)}

.shop-page{width:min(100%,480px);height:100dvh;max-height:none;margin:auto;padding:0 0 54px;border:0;background:#101b28;color:#fff;overflow:auto}.shop-page::backdrop{background:#050a11}.shop-artboard{position:relative;width:100%;aspect-ratio:841/1870}.shop-artboard>img{display:block;width:100%;height:100%;object-fit:cover}.shop-close,.shop-price{position:absolute;border:0;background:transparent}.shop-close{top:5.2%;right:3.3%;width:15%;height:7.5%}.shop-wallet{position:absolute;left:14.5%;top:5.3%;display:grid;place-items:center;width:15%;height:3.4%;color:#3a2119;font-size:clamp(18px,5vw,27px);font-weight:950}.shop-price{display:grid;place-items:center;color:#fff;font-size:clamp(17px,4.8vw,26px);font-weight:950;text-shadow:0 2px 2px #633000}.shop-price.combo{left:62%;top:25.2%;width:30%;height:5.5%}.shop-price.starter{left:65%;top:42.3%;width:27%;height:5.3%}.shop-price.gems50{left:8.5%;top:68.8%;width:35%;height:5.3%}.shop-price.gems125{left:56.5%;top:68.8%;width:35%;height:5.3%}.shop-price.gems375{left:8.5%;top:87.4%;width:35%;height:5.3%}.shop-price.gems750{left:56.5%;top:87.4%;width:35%;height:5.3%}.shop-feedback{position:absolute;left:8%;right:8%;bottom:1%;margin:0;padding:7px 9px;border-radius:9px;background:#15271fe8;color:#efffdc;font-size:clamp(10px,2.7vw,13px);text-align:center}.shop-adfree-product{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;width:calc(100% - 24px);min-height:64px;margin:12px;padding:10px 14px;border:2px solid #75617d;border-radius:16px;background:linear-gradient(#3b3148,#211c2b);color:#fff}.shop-adfree-product img{width:86px;height:86px;object-fit:contain}.shop-adfree-product b{padding:9px 12px;border-radius:10px;background:#ff970c;color:#fff}.shop-page>.page-banner-slot{position:fixed;left:50%;bottom:0;width:min(100%,480px);transform:translateX(-50%)}
.shop-purchase-banner{position:relative;display:block;width:calc(100% - 16px);margin:10px 8px 14px;padding:0;border:0;border-radius:18px;background:#261c35;overflow:hidden}.shop-purchase-banner img{display:block;width:100%;height:auto}.shop-purchase-banner b{position:absolute;right:7%;top:39%;display:grid;place-items:center;width:15%;height:25%;color:#fff;font-size:clamp(18px,5.2vw,28px);font-weight:900;line-height:1;text-shadow:0 2px 2px #a34400}
.shop-price{line-height:1;white-space:nowrap;padding:0 0 3px}.shop-purchase-banner b{right:4.5%;width:20%;white-space:nowrap;text-align:center}

/* Server-backed player ranking. */
.rank-page{background:#211525!important}.rank-shell{background:radial-gradient(circle at 50% -5%,#8d3b28 0,#3b1d2e 34%,#160f1d 100%)!important}.rank-shell>header{background:linear-gradient(#7a281e,#3d1720)!important;border-bottom:4px solid #e58a2f!important;box-shadow:inset 0 -7px 0 #31101a,0 5px 16px #0009}.rank-shell>header::after{content:"";position:absolute;left:13%;right:13%;bottom:-8px;height:9px;background:radial-gradient(circle,#ffd96a 0 3px,transparent 4px) 0 0/22px 9px}.rank-shell>header button{border:2px solid #f0a643!important;background:linear-gradient(#5a2b32,#271722)!important;box-shadow:0 3px 0 #11080c;color:#ffe4a0!important}.rank-shell>header span{color:#ffd36c!important}.rank-shell>header h2{color:#fff1d1;text-shadow:0 2px #43100e}.rank-profile>div{border:2px solid #d58b38!important;background:linear-gradient(#f3d18f,#c98242)!important;color:#3e1d21!important;box-shadow:0 5px 0 #54212a!important}.rank-profile small{color:#5a2825!important;font-weight:900}.rank-profile strong{color:#561b30!important;text-shadow:0 1px #fff0ba}.rank-leaders{border:2px solid #ca702f!important;background:linear-gradient(#25141f,#160f18)!important;box-shadow:inset 0 0 25px #0008}.rank-list-heading{position:relative;background:linear-gradient(#773022,#49202b)!important;border-bottom:2px solid #e19538!important}.rank-list-heading::after{content:"";position:absolute;left:8px;right:8px;bottom:-6px;height:7px;background:radial-gradient(circle,#ffcb52 0 2px,transparent 3px) 0/18px 7px}.rank-list-heading span{color:#ffd875!important}.rank-list-heading small{color:#f5cba0!important}.rank-list li{grid-template-columns:36px 48px minmax(0,1fr) auto!important;min-height:62px!important;border:1px solid #825044!important;background:linear-gradient(90deg,#3a2028,#211721)!important;box-shadow:inset 0 1px #ffffff12}.rank-list li.is-me{border:2px solid #ff9c32!important;background:linear-gradient(90deg,#9f4128,#4d2030)!important;box-shadow:0 0 0 2px #ffb24033,inset 0 1px #ffd99255!important}.rank-list li b{background:#f4a63d!important;color:#3d1c20!important}.rank-list li:nth-child(1) b{background:#ffd85c!important}.rank-list li span{color:#fff0d4!important}.rank-list li strong{color:#ffd45f!important;text-shadow:0 1px #4b1713}.rank-portrait{position:relative!important;display:block!important;width:48px;height:48px;overflow:visible!important}.rank-portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.rank-portrait .rank-avatar{z-index:1;padding:19%}.rank-portrait .rank-frame{z-index:2}.rank-current{border:2px solid #f6a33a!important;background:linear-gradient(#6d2d29,#321a27)!important;box-shadow:0 -7px 18px #0009,inset 0 1px #ffd77866!important}.rank-current>small{color:#ffd36a!important}.rank-current>div{grid-template-columns:38px minmax(0,1fr) auto!important}.rank-current b{background:#ffb33e!important;color:#421c23!important}.rank-current span{display:flex!important;align-items:center;gap:8px}.rank-current span .rank-portrait{flex:0 0 43px;width:43px;height:43px}.rank-current span i{overflow:hidden;color:#fff2d8;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.rank-current strong{color:#ffd55e!important}.rank-shell>.page-banner-slot{border-color:#6b3431!important;background:#25151ff5!important}.rank-feedback{color:#ffd37a!important}
.rank-shell{display:grid!important;grid-template-rows:auto auto auto minmax(0,1fr) auto 54px;overflow:hidden!important;padding-bottom:0!important}.rank-shell>header{position:relative!important}.rank-feedback{margin:0 16px 5px!important;min-height:17px!important}.rank-leaders{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);margin:0 12px;border:1px solid #365a4e;border-radius:17px 17px 0 0;background:#091c19;overflow:hidden}.rank-list-heading{display:flex;align-items:center;justify-content:space-between;padding:9px 13px;border-bottom:1px solid #35584e;background:#132c27}.rank-list-heading span{color:#a8ec71;font-size:11px;font-weight:950;letter-spacing:.08em}.rank-list-heading small{color:#90aea5;font-size:10px}.rank-leaders .rank-list{align-content:start;overflow-y:auto;overscroll-behavior:contain;padding:9px 10px 14px;scrollbar-width:thin;scrollbar-color:#6a9b76 #132821}.rank-current{z-index:2;margin:0 12px;padding:8px 10px 10px;border:2px solid #9ce763;border-radius:0 0 15px 15px;background:#17372d;box-shadow:0 -7px 18px #0009}.rank-current>small{display:block;margin-bottom:5px;color:#a9ed77;font-size:9px;font-weight:950;letter-spacing:.12em}.rank-current>div{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:9px}.rank-current b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#a8ea61;color:#173416}.rank-current span{overflow:hidden;color:#fff;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.rank-current strong{color:#c8ff7d;font-size:17px}.rank-shell>.page-banner-slot{position:relative!important;left:auto!important;bottom:auto!important;width:100%!important;transform:none!important}.rank-profile{margin:12px 14px 8px!important}.rank-profile>div{padding:10px!important}.rank-profile strong{font-size:19px!important}
.rank-page{width:min(100%,480px);height:100dvh;max-height:none;margin:auto;padding:0;border:0;background:#08151d;color:#fff;overflow:hidden}.rank-page::backdrop{background:#050a11}.rank-shell{position:relative;height:100%;overflow:auto;padding-bottom:70px;background:radial-gradient(circle at 50% 0,#3c5b43 0,#10262b 36%,#071219 100%)}.rank-shell>header{position:sticky;z-index:3;top:0;display:grid;grid-template-columns:46px 1fr 46px;align-items:center;gap:10px;padding:calc(12px + env(safe-area-inset-top)) 14px 12px;background:#10251feb;border-bottom:1px solid #a7f06b55;backdrop-filter:blur(10px)}.rank-shell>header button{width:44px;height:44px;border:1px solid #80a875;border-radius:50%;background:#263f37;color:#efffe8;font-size:28px}.rank-shell>header div{text-align:center}.rank-shell>header span{color:#a6ec71;font-size:10px;font-weight:900;letter-spacing:2px}.rank-shell>header h2{margin:2px 0 0;font-size:22px}.rank-profile{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 14px 12px}.rank-profile>div{display:grid;gap:5px;padding:14px;border:1px solid #7dab6d;border-radius:16px;background:linear-gradient(#29483d,#172f29);text-align:center;box-shadow:0 6px 16px #0005}.rank-profile small{color:#b9d8b1;font-size:12px}.rank-profile strong{color:#d9ff8b;font-size:22px}.rank-name-form{margin:0 14px 14px;padding:13px;border:1px solid #52756a;border-radius:15px;background:#0c1d1b}.rank-name-form label{display:block;margin-bottom:7px;color:#cce8c4;font-size:13px;font-weight:800}.rank-name-form>div{display:grid;grid-template-columns:1fr 78px;gap:8px}.rank-name-form input{min-width:0;height:44px;padding:0 12px;border:1px solid #6d9185;border-radius:10px;background:#eaffdf;color:#17301f;font-size:16px}.rank-name-form button{border-radius:10px;background:#97e95d;color:#173615;font-weight:900;box-shadow:0 3px 0 #477b31}.rank-feedback{min-height:20px;margin:0 16px 7px;color:#e8ffb6;font-size:12px;text-align:center}.rank-list{display:grid;gap:8px;margin:0;padding:0 14px;list-style:none}.rank-list li{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:8px;min-height:54px;padding:8px 13px;border:1px solid #3e5c55;border-radius:14px;background:#122723}.rank-list li b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#314d43;color:#d9eddf}.rank-list li:nth-child(1) b{background:#ffd85c;color:#543b0b}.rank-list li:nth-child(2) b{background:#d9e1e4;color:#344047}.rank-list li:nth-child(3) b{background:#d79a60;color:#4b2810}.rank-list li span{overflow:hidden;color:#f1fff1;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.rank-list li strong{color:#bff27d;font-size:17px}.rank-list li.is-me{border-color:#a2ee62;background:#24432f;box-shadow:0 0 0 2px #8ce84f33}.rank-list .rank-empty{display:block;padding:28px;text-align:center;color:#b9c9c3}.rank-shell>.page-banner-slot{position:fixed;left:50%;bottom:0;width:min(100%,480px);transform:translateX(-50%)}

/* Five evenly distributed base-map actions after removing Items. */
.levels-actions{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.levels-actions button{width:100%}

/* Player profile: warm game-card styling with transparent avatar and frame artwork. */
.profile-shell{height:100%;min-height:0!important;display:grid;grid-template-rows:auto auto auto auto minmax(0,1fr) 54px;overflow:hidden!important;padding-bottom:0!important}.profile-shell>header{position:relative!important}.profile-grid{min-height:0;align-content:start;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#d79549 #291923;-webkit-overflow-scrolling:touch}.profile-shell>.page-banner-slot{position:relative!important;left:auto!important;bottom:auto!important;width:100%!important;transform:none!important}.profile-summary,.profile-tabs,.profile-shell #profile-feedback{flex:none}
.profile-background .theme-swatch{aspect-ratio:1.35;border:2px solid #ffffff66;box-shadow:inset 0 0 16px #0003}.theme-red{background:#e53935!important}.theme-orange{background:#fb8c00!important}.theme-yellow{background:#fdd835!important}.theme-green{background:#43a047!important}.theme-blue{background:#1e88e5!important}.theme-indigo{background:#3949ab!important}.theme-purple{background:#8e24aa!important}.theme-white{background:#fff!important}.theme-rainbow{background:linear-gradient(135deg,#ef3340 0 14%,#ff8c1a 14% 28%,#ffd43b 28% 42%,#35b84b 42% 56%,#2388df 56% 70%,#4338a8 70% 84%,#a52eb5 84%)!important}.profile-page[data-profile-theme="red"] .profile-shell{background:linear-gradient(#ad2929,#3a1014)}.profile-page[data-profile-theme="orange"] .profile-shell{background:linear-gradient(#c66b10,#4a2510)}.profile-page[data-profile-theme="yellow"] .profile-shell{background:linear-gradient(#b99615,#44370d)}.profile-page[data-profile-theme="green"] .profile-shell{background:linear-gradient(#315d39,#0b241b)}.profile-page[data-profile-theme="blue"] .profile-shell{background:linear-gradient(#24629b,#0a2038)}.profile-page[data-profile-theme="indigo"] .profile-shell{background:linear-gradient(#343f91,#151839)}.profile-page[data-profile-theme="purple"] .profile-shell{background:linear-gradient(#76358d,#2b1235)}.profile-page[data-profile-theme="white"] .profile-shell{background:linear-gradient(#f5f3ed,#b9c4c8)}.profile-page[data-profile-theme="white"] .profile-shell #profile-feedback{color:#153326}.profile-page[data-profile-theme="rainbow"] .profile-shell{background:linear-gradient(145deg,#8e2230,#bb641e 20%,#a58c20 38%,#26764a 56%,#245f99 73%,#693178 90%)}
.profile-page{width:min(100%,480px);height:100dvh;max-height:none;margin:auto;padding:0;border:0;background:#101923;color:#fff;overflow:hidden}.profile-page::backdrop{background:#050a11}.profile-shell{min-height:100%;overflow:auto;padding-bottom:72px;background:radial-gradient(circle at 50% 0,#31534b 0,#122832 34%,#08141d 100%)}.profile-shell>header{position:sticky;z-index:4;top:0;display:grid;grid-template-columns:38px 1fr 46px;align-items:center;padding:calc(10px + env(safe-area-inset-top)) 14px 10px;background:linear-gradient(#f3a85d,#c87934);border-bottom:4px solid #794324;box-shadow:0 5px 16px #0008}.profile-shell>header>span{font-size:25px}.profile-shell>header h2{margin:0;text-align:center;font-size:23px;letter-spacing:.04em;text-shadow:0 2px #743c1d}.profile-close{width:42px;height:42px;border:3px solid #fff3cf;border-radius:50%;background:#dc504c;color:#fff;font-size:25px;font-weight:950;box-shadow:0 3px 0 #842e2b}.profile-summary{display:grid;grid-template-columns:128px 1fr;align-items:center;gap:12px;margin:16px 14px 10px;padding:12px;border:2px solid #d9a966;border-radius:18px;background:#f9e4b8;color:#563319;box-shadow:0 6px 0 #71482f}.profile-preview{position:relative;width:118px;aspect-ratio:1}.profile-preview img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.profile-preview [data-profile-avatar]{z-index:1;padding:19%;}.profile-preview [data-profile-frame]{z-index:2}.profile-summary label>span{display:block;margin:0 0 7px;font-size:11px;font-weight:950;letter-spacing:.08em}.profile-summary label>div{display:grid;grid-template-columns:1fr 40px;gap:6px}.profile-summary input{min-width:0;height:43px;padding:0 10px;border:2px solid #a36e3c;border-radius:9px;background:#b77b45;color:#fff7d9;font-size:16px;font-weight:900;text-shadow:0 1px #6c351e}.profile-summary label button{border:2px solid #447834;border-radius:9px;background:#84d858;color:#17370f;font-size:20px;font-weight:950}.profile-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 14px 8px}.profile-tabs button{padding:11px 3px;border:2px solid #9b6338;border-radius:12px;background:linear-gradient(#f8d799,#d9a462);color:#684021;font-weight:950;box-shadow:0 3px 0 #6f4228}.profile-tabs button.active{background:linear-gradient(#a8ec62,#6db83d);color:#183711;border-color:#427229}.profile-shell #profile-feedback{min-height:20px;margin:5px 14px;color:#ccf69a;font-size:12px;text-align:center}.profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;padding:4px 14px 20px}.profile-grid button{min-width:0;padding:6px;border:2px solid transparent;border-radius:15px;background:#203943;color:#e9f5e4}.profile-grid button.selected{border-color:#a8ed58;background:#355d36;box-shadow:0 0 0 3px #92df4b35}.profile-grid button>span{display:grid;place-items:center;aspect-ratio:1;border-radius:11px;background:radial-gradient(circle,#49645b,#17272c);overflow:hidden}.profile-grid img{width:100%;height:100%;object-fit:contain}.profile-grid small{display:block;overflow:hidden;margin-top:4px;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.profile-background button>span{aspect-ratio:1.35}.profile-background img{object-fit:cover}.profile-empty{grid-column:1/-1;padding:30px;text-align:center;color:#b9c9c3}.profile-shell>.page-banner-slot{position:fixed;left:50%;bottom:0;width:min(100%,480px);transform:translateX(-50%)}@media(max-width:370px){.profile-summary{grid-template-columns:104px 1fr}.profile-preview{width:100px}.profile-grid{gap:7px;padding-inline:10px}}

/* Supplied zombie laboratory ranking header, with live rank data and working controls. */
.rank-shell{grid-template-rows:auto auto minmax(0,1fr) auto 54px!important}.rank-lab-hero{position:relative;z-index:3;width:100%;aspect-ratio:634/326;overflow:hidden;background:#06110d;box-shadow:0 5px 18px #000b}.rank-lab-hero>img{display:block;width:100%;height:100%;object-fit:cover}.rank-lab-hero>button{position:absolute;top:17%;width:13%;height:30%;padding:0;border:0!important;border-radius:12px;background:transparent!important;box-shadow:none!important;cursor:pointer}.rank-lab-back{left:5.2%}.rank-lab-refresh{right:5.2%}.rank-lab-hero .rank-profile{position:absolute;left:4.5%;right:4.5%;bottom:3.5%;display:grid;grid-template-columns:1fr 1fr;gap:5.5%;margin:0!important}.rank-lab-hero .rank-profile>div{display:grid;align-content:center;gap:2px;min-width:0;aspect-ratio:2.15;padding:3% 5%!important;border:2px solid #7cff62!important;border-radius:13px!important;background:linear-gradient(180deg,#178f27f2,#0c641df5)!important;box-shadow:inset 0 0 12px #94ff73aa,0 0 8px #31ff4d88!important;text-align:center}.rank-lab-hero .rank-profile small{color:#d2ffd0!important;font-size:clamp(10px,3vw,15px)!important;font-weight:950;text-shadow:0 2px 3px #063d10}.rank-lab-hero .rank-profile strong{overflow:hidden;color:#d4ff4f!important;font-size:clamp(18px,6vw,29px)!important;line-height:1;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 2px 4px #083c0e!important}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.rank-lab-hero .rank-profile>div{border:0!important;background:transparent!important;box-shadow:none!important}.rank-lab-hero .rank-profile small{display:none}.rank-lab-hero .rank-profile strong{font-size:clamp(22px,7vw,34px)!important;color:#eaff58!important;-webkit-text-stroke:1.5px #162611;text-shadow:0 3px 3px #071d08!important}
.rank-lab-hero .rank-profile strong{position:relative;top:34%;font-size:clamp(17px,5.2vw,25px)!important;-webkit-text-stroke:1px #162611}

/* Compact glass controls using the supplied skill, no-ad, and settings artwork. */
.hud.compact-hud{--control:clamp(44px,12.2vw,59px);--hud-gap:clamp(4px,1.25vw,6px)}.compact-hud .skill-button,.compact-hud .icon-button[data-dialog="adfree-dialog"],.compact-hud .icon-button[data-dialog="settings-dialog"]{overflow:visible;padding:3px;background:linear-gradient(145deg,#4c78936b,#101d31b8)!important;border:1.5px solid #a7dff08f!important;border-radius:12px!important;box-shadow:inset 0 1px 0 #efffff47,0 0 8px #55cfff32,0 3px 6px #050b16a8!important;backdrop-filter:blur(7px)!important;-webkit-backdrop-filter:blur(7px)!important}.compact-hud .skill-button .ui-art,.compact-hud .icon-button[data-dialog="adfree-dialog"] .ui-art,.compact-hud .icon-button[data-dialog="settings-dialog"] .ui-art{width:100%;height:100%;object-fit:contain;border-radius:8px;mix-blend-mode:normal!important;filter:drop-shadow(0 2px 2px #0008)!important}.compact-hud [data-skill="shake"] .ui-art{mix-blend-mode:multiply!important}.compact-hud .skill-button .plus{z-index:2;right:-4px;top:-5px;display:grid;place-items:center;min-width:20px;height:20px;padding:0 4px;border:1.5px solid #294d28;border-radius:8px;background:linear-gradient(#dfff93,#91d34d);color:#24431f;font-size:12px;font-style:normal;font-weight:950;box-shadow:0 2px 3px #0008}.compact-hud .icon-button[data-dialog="adfree-dialog"]{border-color:#fc77749c!important;box-shadow:inset 0 1px 0 #fff6,0 0 9px #ff42443b,0 3px 6px #050b16a8!important}.compact-hud .icon-button[data-dialog="settings-dialog"]{border-color:#7bddb89c!important;box-shadow:inset 0 1px 0 #fff6,0 0 9px #4cffad35,0 3px 6px #050b16a8!important}.compact-hud .next-card{min-height:42px;padding:4px 5px;font-size:9px}.compact-hud .next-card .head{width:29px;height:29px}@media(max-width:350px){.hud.compact-hud{--control:45px}.compact-hud .next-card{padding:3px 2px}.compact-hud .next-card .head{width:25px;height:25px}}

/* Mobile Rank containment: prevent Android text inflation and keep the frozen current-rank row visible. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}.rank-page[open]{position:fixed;inset:0;width:min(100%,480px);height:100dvh;max-width:480px;max-height:100dvh;box-sizing:border-box}.rank-shell{height:100dvh;min-height:0;box-sizing:border-box}.rank-leaders,.rank-leaders .rank-list{min-height:0}.rank-leaders .rank-list{height:100%;overflow-y:auto}.rank-lab-hero .rank-profile strong{font-family:Arial,"Noto Sans TC",sans-serif;font-weight:900;-webkit-text-stroke:0!important;text-shadow:0 2px 2px #09220b!important}@media(max-width:500px){.rank-list{gap:6px!important;padding:7px 8px 10px!important}.rank-list li{min-height:54px!important;padding:5px 9px!important;border-radius:12px!important}.rank-list li span{font-size:14px!important}.rank-list li strong{font-size:15px!important}.rank-list li b{width:32px;height:32px}.rank-portrait{width:43px;height:43px}.rank-list-heading{padding:7px 11px!important}.rank-current{padding:6px 9px 8px!important}.rank-current>small{margin-bottom:3px}.rank-current>div{gap:7px}.rank-current strong{font-size:15px!important}.rank-shell>.page-banner-slot{height:46px;min-height:46px}}
.reward-flying-coin{position:fixed;z-index:9999;display:block;pointer-events:none;object-fit:contain;filter:drop-shadow(0 2px 2px #0009) drop-shadow(0 0 5px #ffd43b);will-change:transform,opacity}.coin-catch{animation:coin-catch .16s ease-out}@keyframes coin-catch{50%{transform:scale(1.22);filter:brightness(1.45) drop-shadow(0 0 7px #ffe76a)}}@media(prefers-reduced-motion:reduce){.reward-flying-coin{display:none!important}.coin-catch{animation:none}}

/* Permanently reserve the bottom banner area above the device navigation bar. */
:root{--ad-slot-height:60px}.game-app{min-height:0}.ad-slot,.ad-slot[hidden]{position:relative;z-index:8;display:flex!important;flex:0 0 calc(var(--ad-slot-height) + env(safe-area-inset-bottom));height:calc(var(--ad-slot-height) + env(safe-area-inset-bottom));min-height:calc(var(--ad-slot-height) + env(safe-area-inset-bottom));box-sizing:border-box;margin-top:0;background:#101a2af2;border-top:1px solid #a8c2d34d;box-shadow:0 -5px 14px #050a1370}

/* Full-screen launch artwork with a real asset-loading progress indicator. */
#loading.loading-screen{position:fixed;z-index:1000;inset:0 auto 0 50%;width:min(100vw,480px);height:100dvh;box-sizing:border-box;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:0 9% max(14dvh,calc(env(safe-area-inset-bottom) + 16px));border-radius:0;background:#061a35 url('loading/zombie-merge-loading.png') center/cover no-repeat;transition:opacity .35s ease,visibility .35s ease;overflow:hidden;text-align:left}
#loading.loading-screen.is-complete{opacity:0;visibility:hidden;pointer-events:none}.loading-status{width:min(82%,340px);display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px 12px;color:#fff7b5;text-shadow:0 2px 4px #00152e,0 0 8px #29ff7a}.loading-status strong{font-size:clamp(16px,4.8vw,22px);letter-spacing:.12em}.loading-status>span{font-size:14px;font-weight:900;font-variant-numeric:tabular-nums}.loading-track{grid-column:1/-1;height:14px;padding:3px;border:2px solid #baff64;border-radius:999px;background:#07192bd9;box-shadow:0 0 0 2px #102b45,0 0 14px #38ff65aa,inset 0 2px 4px #000a;overflow:hidden}.loading-track i{display:block;width:0;height:100%;border-radius:999px;background:linear-gradient(90deg,#61db25,#c9ff36 55%,#faff9b);box-shadow:0 0 10px #8aff37;transition:width .22s ease-out}#loading.loading-screen.has-error .loading-status{color:#fff}#loading.loading-screen.has-error .loading-track i{background:#ff9e46}@media(min-width:600px){#loading.loading-screen{box-shadow:0 0 70px #000}}@media(prefers-reduced-motion:reduce){#loading.loading-screen,.loading-track i{transition:none!important}}

/* Base Upgrade: generated acid-lab frame with all game data placed in its reserved zones. */
.base-upgrade-page{width:min(100% - 14px,430px);height:auto;aspect-ratio:2/3;max-height:calc(100dvh - 14px);border:0;border-radius:0;background:transparent;overflow:visible;box-shadow:none}.base-upgrade-shell{position:relative;width:100%;height:100%;aspect-ratio:2/3;isolation:isolate}.base-upgrade-frame{position:absolute;inset:0;z-index:-1;width:100%;height:100%;object-fit:fill;pointer-events:none;user-select:none}.base-upgrade-shell>header{position:absolute;z-index:2;top:3.1%;left:8%;right:8%;height:7.2%;display:grid;grid-template-columns:13% 1fr auto;gap:2%;align-items:center;padding:0;border:0;background:transparent;backdrop-filter:none}.base-upgrade-shell>header button{width:100%;aspect-ratio:1;height:auto;border:2px solid #baff64;border-radius:50%;background:#17364c;color:#fff;font-size:clamp(24px,7vw,32px);line-height:1;box-shadow:0 2px 8px #000a}.base-upgrade-shell>header span{color:#c2ff77;font-size:clamp(7px,2vw,10px);letter-spacing:.15em;text-shadow:0 1px 3px #000}.base-upgrade-shell>header h2{margin:1px 0 0;color:#fff;font-size:clamp(13px,3.7vw,18px);line-height:1.12;text-shadow:0 2px 3px #000;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.base-upgrade-shell>header b{padding:7px 9px;border:2px solid #1f5127;border-radius:9px;background:#8ee347;color:#173514;font-size:clamp(11px,3.2vw,15px);box-shadow:0 2px 4px #0008}.base-upgrade-shell .upgrade-art{position:absolute;top:15.8%;left:14.5%;right:14.5%;height:34.3%;min-height:0;padding:0;background:none;display:grid;place-items:center}.base-upgrade-shell .upgrade-art img{width:94%;height:94%;max-height:none;object-fit:contain;filter:drop-shadow(0 13px 11px #000a)}.base-upgrade-shell .upgrade-copy{position:absolute;top:51.8%;left:14.5%;right:14.5%;height:20.2%;display:grid;grid-template-rows:auto 1fr auto;align-items:center;padding:0;text-align:center}.base-upgrade-shell .upgrade-copy>strong{font-size:clamp(14px,4.2vw,21px);line-height:1.15;color:#fff;text-shadow:0 2px 3px #000}.base-upgrade-shell .upgrade-copy p{margin:2px 7px;color:#c7d9df;font-size:clamp(8px,2.5vw,12px);line-height:1.25}.base-upgrade-shell .upgrade-copy button{width:100%;min-height:0;height:30%;border:2px solid #c9ff82;border-radius:15px;background:#8fe347;color:#173714;font-size:clamp(11px,3.1vw,15px);font-weight:950;box-shadow:0 4px 0 #3f762e}.base-upgrade-shell .upgrade-copy button:disabled{background:#52626c;color:#d5dddf;box-shadow:none;border-color:#6d7a7e}.base-upgrade-shell .upgrade-copy button img{width:20px;height:20px;object-fit:contain;vertical-align:middle}.base-upgrade-shell .upgrade-track{position:absolute;top:73.5%;left:14.5%;right:14.5%;height:14.7%;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,1fr);gap:5%;padding:0}.base-upgrade-shell .upgrade-track span{display:grid;place-items:center;padding:0;border:1.5px solid #7edb38;border-radius:9px;background:#061d2e55;color:#bce9c0;font-size:clamp(8px,2.4vw,11px);text-align:center}.base-upgrade-shell .upgrade-track .done{border-color:#4c9343;background:#214326;color:#d7ffba}.base-upgrade-shell .upgrade-track .next{border-color:#d5ff71;background:#14352a;color:#f0ffd7;box-shadow:0 0 9px #8cff57}

/* Long-frame Base Upgrade content panel, populated entirely by live game data. */
.base-upgrade-page{width:min(calc(100% - 14px),430px,calc((100dvh - 14px)*.4734));aspect-ratio:863/1823;max-height:calc(100dvh - 14px)}.base-upgrade-shell{aspect-ratio:863/1823}.base-upgrade-shell::after{content:'';position:absolute;z-index:0;top:9.2%;bottom:10.1%;left:11.5%;right:11.5%;border:1px solid #34556a;border-radius:18px;background:linear-gradient(180deg,#123044 0%,#081d2c 48%,#071824 100%);box-shadow:inset 0 1px 0 #77afc833,0 9px 16px #0009;pointer-events:none}.base-upgrade-shell>header{z-index:2;top:10.6%;left:13.4%;right:13.4%;height:6.4%;grid-template-columns:13% 1fr auto}.base-upgrade-shell>header button{border-color:#c9ff84;background:#183b52;font-size:clamp(21px,6.2vw,30px)}.base-upgrade-shell>header h2{font-size:clamp(11px,3.25vw,16px)}.base-upgrade-shell>header span{font-size:clamp(6px,1.75vw,9px)}.base-upgrade-shell>header b{padding:6px 8px;font-size:clamp(10px,2.8vw,14px)}.base-upgrade-shell .upgrade-art{z-index:1;top:18.6%;left:16%;right:16%;height:35.4%}.base-upgrade-shell .upgrade-art img{width:100%;height:100%;filter:drop-shadow(0 12px 10px #000b)}.base-upgrade-shell .upgrade-copy{z-index:1;top:55.2%;left:15%;right:15%;height:17.4%;grid-template-rows:auto 1fr auto}.base-upgrade-shell .upgrade-copy>strong{font-size:clamp(13px,3.8vw,19px)}.base-upgrade-shell .upgrade-copy p{font-size:clamp(7px,2.2vw,11px);line-height:1.25}.base-upgrade-shell .upgrade-copy button{height:34%;border-radius:11px;font-size:clamp(10px,2.8vw,14px)}.base-upgrade-shell .upgrade-track{z-index:1;top:74.3%;left:15%;right:15%;height:10.9%;gap:6%}.base-upgrade-shell .upgrade-track span{border-color:#436a7c;background:#0d293aaa;color:#a3bbc6;font-size:clamp(7px,2vw,10px)}.base-upgrade-shell .upgrade-track .done{border-color:#4c9343;background:#214326;color:#d7ffba}.base-upgrade-shell .upgrade-track .next{border-color:#c9ff84;background:#173d2e;color:#f0ffd7}

/* Keep all live base details clear of the backend-provided building artwork. */
.base-upgrade-shell .upgrade-art{top:17.8%;height:42.4%;left:15%;right:15%}.base-upgrade-shell .upgrade-art img{object-fit:contain}.base-upgrade-shell .upgrade-copy{top:62.2%;height:14.1%;grid-template-rows:auto 1fr auto}.base-upgrade-shell .upgrade-copy p{margin:2px 5px;font-size:clamp(7px,2.15vw,10px)}.base-upgrade-shell .upgrade-copy button{height:33%;min-height:28px}.base-upgrade-shell .upgrade-track{top:78.3%;height:10.4%}

/* Keep the explanatory copy compact and just above its fixed upgrade button. */
.base-upgrade-shell .upgrade-copy{display:block}.base-upgrade-shell .upgrade-copy>strong{position:absolute;left:0;right:0;bottom:calc(33% + 21px);line-height:1.05}.base-upgrade-shell .upgrade-copy p{position:absolute;left:0;right:0;bottom:calc(33% + 5px);margin:0;line-height:1.1}.base-upgrade-shell .upgrade-copy button{position:absolute;left:0;right:0;bottom:0}

/* Base-upgrade feedback: coins are pulled into the building, then supplied arrows rise. */
.base-upgrade-effects{position:absolute;inset:0;z-index:4;overflow:hidden;pointer-events:none}.base-upgrade-shell.is-coin-upgrading .upgrade-art{animation:base-building-rumble .11s linear infinite}.base-upgrade-coin{position:absolute;width:clamp(18px,6vw,31px);height:auto;z-index:2;filter:drop-shadow(0 2px 3px #000b);animation:base-coin-suck var(--coin-duration) cubic-bezier(.18,.72,.24,1) var(--coin-delay) both}.base-upgrade-arrow{position:absolute;z-index:3;width:var(--arrow-size);height:calc(var(--arrow-size)*1.35);display:block;object-fit:contain;filter:drop-shadow(0 0 5px #a8ff44) drop-shadow(0 3px 2px #001900);animation:base-arrow-rise var(--arrow-duration) cubic-bezier(.2,.76,.25,1) var(--arrow-delay) both}@keyframes base-building-rumble{0%,100%{transform:translate(0) rotate(0)}25%{transform:translate(-2px,1px) rotate(-.35deg)}50%{transform:translate(2px,-1px) rotate(.35deg)}75%{transform:translate(-1px,-1px) rotate(-.15deg)}}@keyframes base-coin-suck{0%{opacity:0;transform:scale(.65) rotate(-20deg)}12%{opacity:1}85%{opacity:1;transform:translate(var(--coin-x),var(--coin-y)) scale(.4) rotate(330deg)}100%{opacity:0;transform:translate(var(--coin-x),var(--coin-y)) scale(.12) rotate(400deg)}}@keyframes base-arrow-rise{0%{opacity:0;transform:translateY(38px) scale(.65) rotate(var(--arrow-turn))}16%{opacity:1}75%{opacity:1}100%{opacity:0;transform:translateY(-170px) scale(1.2) rotate(var(--arrow-turn))}}@media (prefers-reduced-motion:reduce){.base-upgrade-shell.is-coin-upgrading .upgrade-art{animation-duration:.35s}.base-upgrade-coin,.base-upgrade-arrow{animation-duration:.3s!important;animation-delay:0ms!important}}

/* Slightly enlarge the illustrated frame around its fixed center point. */
.base-upgrade-shell .base-upgrade-frame{inset:50% auto auto 50%;width:105%;height:104%;transform:translate(-50%,-50%);object-fit:fill;filter:saturate(1.08) contrast(1.04) drop-shadow(0 0 7px #7dff2f55)}

/* Reveal the next backend-provided base while the final arrows are still fading. */
.base-upgrade-shell .upgrade-art img.is-base-revealing{animation:base-level-reveal .65s cubic-bezier(.16,.84,.28,1) both}@keyframes base-level-reveal{0%{opacity:.12;transform:scale(.78);filter:brightness(2.1) saturate(1.5) drop-shadow(0 0 24px #9dff51)}55%{opacity:1;transform:scale(1.06);filter:brightness(1.4) saturate(1.25) drop-shadow(0 0 18px #79ff36)}100%{opacity:1;transform:scale(1);filter:drop-shadow(0 12px 10px #000b)}}@media(prefers-reduced-motion:reduce){.base-upgrade-shell .upgrade-art img.is-base-revealing{animation-duration:.2s}}

/* Unclaimed Daily reward reminder on the Base menu and in-game home button. */
.levels-actions button.has-daily-reward,.compact-hud .home-button.has-daily-reward{position:relative}.levels-actions button.has-daily-reward::after,.compact-hud .home-button.has-daily-reward::after{content:'';position:absolute;z-index:8;top:4px;right:6px;width:14px;height:14px;box-sizing:border-box;border:2px solid #fff3ef;border-radius:50%;background:#f02d34;box-shadow:0 0 0 2px #80161c,0 2px 5px #0008;animation:daily-reminder-pulse 1.45s ease-in-out infinite}.compact-hud .home-button.has-daily-reward::after{top:2px;right:2px;width:13px;height:13px}@keyframes daily-reminder-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.16);box-shadow:0 0 0 2px #80161c,0 0 9px #ff545b}}@media(prefers-reduced-motion:reduce){.levels-actions button.has-daily-reward::after,.compact-hud .home-button.has-daily-reward::after{animation:none}}
