html,body{margin:0;padding:0;width:100%;height:100%;background:#111;font-family:Arial,sans-serif;overflow:hidden}#gameWrap{position:fixed;width:100%;height:100%;display:flex;justify-content:center;align-items:center}canvas{display:block;border:1px solid #0ff;max-width:100%;max-height:100%;object-fit:contain;touch-action:none}#menu,.ddz-panel,#powerupShop,#extraLifeModal,#foundersGiftModal,#runChallengeModal,#rewardBurst,#shareModal,.ad-stub-overlay{zoom:var(--ui-zoom, 1)}:root{--ddz-cyan: #2be8ff;--ddz-cyan-dark: #0a7f96;--ddz-pink: #ff4fc3;--ddz-pink-dark: #a3126f;--ddz-gold: #ffd84d;--ddz-gold-dark: #a37b00;--ddz-green: #35d17a;--ddz-green-dark: #1c7a45;--ddz-purple: #c04df0;--ddz-purple-dark: #7a1ea3;--ddz-ink: #04262b;--ddz-bg: #07070c;--ddz-surface: #10101a;--ddz-muted: #9fb4c4;--ddz-radius: 20px;--ddz-common: #8a969c;--ddz-rare: #3aa0ff;--ddz-epic: #a06ef0;--ddz-card: #151b21;--ddz-panel-2: #161c22;--ddz-line: #2a3a3f;--ddz-text-soft: #b9c8cd}.ddz-panel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:none;flex-direction:column;align-items:center;background:var(--ddz-bg);color:var(--ddz-cyan);padding:14px 16px;box-sizing:border-box;overflow:hidden;text-align:center}.ddz-panel-head,.ddz-panel-foot{flex:0 0 auto;width:100%;display:flex;flex-direction:column;align-items:center;gap:4px}.ddz-panel-head h1,.ddz-panel-head h2{margin:0;font-size:clamp(20px,4.5vw,32px);font-weight:900;color:var(--ddz-cyan);text-shadow:0 0 14px rgba(43,232,255,.6)}.ddz-panel-sub{margin:0;font-size:14px;color:var(--ddz-muted)}.ddz-panel-body{flex:1 1 auto;min-height:0;width:100%;overflow-y:auto;overflow-x:hidden;touch-action:pan-y;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px 0}.ddz-panel-foot{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:10px;padding-top:10px}.ddz-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:12px 26px;border:none;border-radius:var(--ddz-radius);font-size:17px;font-weight:800;font-family:inherit;cursor:pointer;color:var(--ddz-ink);background:var(--ddz-cyan);box-shadow:0 6px 0 var(--ddz-cyan-dark);transition:transform .08s ease,box-shadow .08s ease,filter .08s ease}.ddz-btn:hover{filter:brightness(1.08)}.ddz-btn:active{transform:translateY(6px);box-shadow:none}.ddz-btn-pink{background:var(--ddz-pink);box-shadow:0 6px 0 var(--ddz-pink-dark);color:#fff}.ddz-btn-gold{background:var(--ddz-gold);box-shadow:0 6px 0 var(--ddz-gold-dark);color:#2b1d00}.ddz-btn-green{background:var(--ddz-green);box-shadow:0 6px 0 var(--ddz-green-dark);color:#052b17}.ddz-btn-purple{background:var(--ddz-purple);box-shadow:0 6px 0 var(--ddz-purple-dark);color:#fff}.ddz-btn-quiet{background:#262636;color:#cfd8e3;box-shadow:0 6px #14141d}@keyframes ddzBtnFlash{0%,to{box-shadow:0 6px 0 var(--ddz-green-dark),0 0 #3cff8c8c}50%{box-shadow:0 6px 0 var(--ddz-green-dark),0 0 22px 6px #3cff8ca6}}.ddz-btn-flash{animation:ddzBtnFlash 1.15s ease-in-out infinite}.ddz-btn-flash:active{animation:none}@media (prefers-reduced-motion: reduce){.ddz-btn-flash{animation:none}}.ddz-btn:disabled,.ddz-btn.is-disabled{background:#3a3a48;color:#8a8a9a;box-shadow:0 6px #22222c;cursor:not-allowed;filter:none}.ddz-btn:disabled:active,.ddz-btn.is-disabled:active{transform:none;box-shadow:0 6px #22222c}.ddz-btn-stack{flex-direction:column;gap:1px;line-height:1.2}.ddz-btn-sub{display:block;font-size:12px;font-weight:600;opacity:.75}.play-hook{position:relative;display:inline-block;width:38px;height:38px;flex:0 0 auto;border-radius:50%;background:#ffffff38;box-shadow:inset 0 0 0 3px #ffffff8c;animation:playHookPulse 1.8s ease-in-out infinite}.play-hook:after{content:"";position:absolute;top:50%;left:54%;width:15px;height:17px;transform:translate(-50%,-50%);background:#fff;clip-path:polygon(0 0,100% 50%,0 100%)}@keyframes playHookPulse{0%,to{transform:scale(1);box-shadow:inset 0 0 0 3px #ffffff8c,0 0 #ffffff59}50%{transform:scale(1.08);box-shadow:inset 0 0 0 3px #ffffffd9,0 0 0 9px #fff0}}@media (prefers-reduced-motion: reduce){.play-hook{animation:none}}.ddz-input{width:min(320px,88%);padding:12px 14px;min-height:48px;font-size:16px;font-family:inherit;color:var(--ddz-cyan);background:#1a1a26;border:2px solid var(--ddz-cyan);border-radius:14px;box-sizing:border-box;text-align:center}.ddz-input::placeholder{color:#6d8494}.run-score{display:flex;align-items:baseline;gap:8px}.run-score-value{font-size:clamp(38px,9vw,62px);font-weight:900;color:var(--ddz-gold);line-height:1;text-shadow:0 0 18px rgba(255,216,77,.55)}.run-score-label{font-size:16px;color:var(--ddz-muted);font-weight:700}.gameover-section{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:6px}.run-summary{width:min(460px,96%);margin-top:4px}.run-summary-title{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ddz-muted);margin-bottom:6px}.run-summary-list{display:flex;flex-wrap:wrap;justify-content:center;gap:6px}.run-summary-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;background:#2be8ff1f;border:1px solid rgba(43,232,255,.45);font-size:13px;font-weight:700;color:var(--ddz-cyan)}.run-summary-chip svg{width:16px;height:16px}.run-summary-chip .run-summary-count{color:var(--ddz-gold)}.character-grid{display:flex;flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:14px;width:100%;padding:6px 46px;box-sizing:border-box;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;touch-action:pan-x;-webkit-overflow-scrolling:touch;scrollbar-width:none}.character-grid::-webkit-scrollbar{display:none}.character-grid:before,.character-grid:after{content:"";margin:auto}.character-grid .character-option{flex:0 0 auto;scroll-snap-align:center;width:130px;min-width:0}#characterSelectPanel .ddz-panel-body{overflow:visible;justify-content:center;padding:4px 0;touch-action:pan-x}.skin-row-track{position:relative;width:100%}.skin-tabs{display:flex;justify-content:center;gap:8px;margin-top:6px}.skin-tab{min-height:38px;padding:6px 22px;border:2px solid rgba(0,255,255,.35);border-radius:999px;background:#00ffff0f;color:#9fe9f5;font-weight:800;font-size:14px;letter-spacing:.02em;cursor:pointer;transition:all .15s ease}.skin-tab.active{background:var(--ddz-cyan);border-color:var(--ddz-cyan);color:var(--ddz-ink);box-shadow:0 0 14px #2be8ff80}.season-banner{width:100%;max-width:420px;margin:6px auto 2px;padding:8px 14px 10px;border:2px solid rgba(43,232,255,.35);border-radius:14px;background:linear-gradient(180deg,#2be8ff1a,#2be8ff05)}.season-banner-top{display:flex;align-items:baseline;justify-content:center;gap:8px;margin-bottom:4px}.season-name{font-size:14px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--ddz-cyan)}.season-ends{font-size:11px;font-weight:700;letter-spacing:.04em;color:#7fb9c4;text-transform:uppercase}.season-clock{display:flex;align-items:flex-start;justify-content:center;gap:2px}.season-unit{display:flex;flex-direction:column;align-items:center;min-width:44px}.season-num{font-size:26px;font-weight:900;line-height:1;color:#dffaff;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";text-shadow:0 0 12px rgba(43,232,255,.55)}.season-lbl{font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#7fb9c4;margin-top:2px}.season-sep{font-size:22px;font-weight:900;line-height:1;color:#2be8ff73;padding-top:1px}.season-progress{margin-top:8px;height:5px;border-radius:999px;background:#ffffff1a;overflow:hidden}.season-progress-fill{height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,var(--ddz-cyan),#7ef0ff);transition:width .6s linear}.season-banner.urgent{border-color:#ffc83c8c;background:linear-gradient(180deg,#ffc83c1f,#ffc83c05)}.season-banner.urgent .season-name{color:#ffcf3f}.season-banner.urgent .season-num{color:#fff3d0;text-shadow:0 0 12px rgba(255,207,63,.6)}.season-banner.urgent .season-sep{color:#ffcf3f80}.season-banner.urgent .season-progress-fill{background:linear-gradient(90deg,#ffcf3f,#ffe89a)}.season-banner.urgent .season-unit:last-of-type .season-num{animation:seasonTick 1s steps(2,end) infinite}.season-banner.final{border-color:#ff5a5a99;background:linear-gradient(180deg,#ff5a5a24,#ff5a5a08)}.season-banner.final .season-name{color:#ff7a7a}.season-banner.final .season-num{color:#ffe2e2;text-shadow:0 0 14px rgba(255,90,90,.7)}.season-banner.final .season-sep{color:#ff7a7a8c}.season-banner.final .season-progress-fill{background:linear-gradient(90deg,#ff5a5a,#ff9a9a)}.season-banner.final .season-unit:last-of-type .season-num{animation:seasonTick .5s steps(2,end) infinite}@keyframes seasonTick{0%,to{opacity:1}50%{opacity:.35}}@media (max-height: 560px){.season-banner{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px 8px;padding:4px 10px;margin:2px auto 0;border-radius:999px}.season-banner-top{margin-bottom:0;gap:5px}.season-name{font-size:12px}.season-ends{font-size:10px}.season-clock{gap:1px}.season-unit{min-width:0;flex-direction:row;align-items:baseline}.season-num{font-size:15px;text-shadow:none}.season-lbl{font-size:9px;margin-top:0;margin-left:1px;letter-spacing:0}.season-sep{font-size:13px;padding-top:0;margin:0 2px}.season-progress{display:none}.score-tabs{margin-top:4px}#highScoresPanel .score-tabs .skin-tab{min-height:30px;padding:4px 14px;font-size:12px}}@media (max-height: 480px){#highScoresPanel .ddz-panel-head h1{display:none}}@media (max-height: 430px){.season-banner{padding:3px 8px;border-width:1px}.season-lbl{display:none}.season-num{font-size:14px}.season-name{font-size:11px}.season-ends{display:none}}@media (prefers-reduced-motion: reduce){.season-banner .season-num{animation:none!important}.season-progress-fill{transition:none}}.score-tabs{display:flex;justify-content:center;gap:8px;margin-top:8px}.season-empty{padding:26px 18px;text-align:center}.season-empty-icon{font-size:40px;line-height:1;margin-bottom:10px}.season-empty-title{font-size:16px;font-weight:800;color:#dffaff}.season-empty-sub{font-size:13px;color:#7fb9c4;margin-top:4px}.legend-mark{display:inline-block;margin-left:5px;font-size:11px;font-weight:900;letter-spacing:.06em;padding:1px 6px;border-radius:999px;color:#2a1c00;background:linear-gradient(180deg,#ffd84d,#e0a800);box-shadow:0 0 10px #ffd84d73;vertical-align:middle}.hat-target-toggle{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:8px}.hat-target-label{color:#7fb9c4;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-right:2px}.hat-target-btn{min-height:30px;padding:4px 16px;border:2px solid rgba(0,255,255,.25);border-radius:999px;background:transparent;color:#9fe9f5;font-weight:800;font-size:13px;cursor:pointer;transition:all .15s ease}.hat-target-btn.active{background:#2be8ff38;border-color:var(--ddz-cyan);color:#dffaff}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:42px;height:42px;padding:0;border:none;border-radius:50%;background:#2be8ff29;box-shadow:inset 0 0 0 2px var(--ddz-cyan);cursor:pointer;transition:opacity .18s ease,transform .08s ease}.carousel-arrow:after{content:"";position:absolute;top:50%;left:50%;width:12px;height:12px;border-right:4px solid var(--ddz-cyan);border-bottom:4px solid var(--ddz-cyan);border-radius:2px}.carousel-arrow-left{left:2px}.carousel-arrow-right{right:2px}.carousel-arrow-left:after{transform:translate(-35%,-50%) rotate(135deg)}.carousel-arrow-right:after{transform:translate(-65%,-50%) rotate(-45deg)}.carousel-arrow:active{transform:translateY(-50%) scale(.92)}.carousel-arrow[disabled]{opacity:0;pointer-events:none}@media (max-height: 430px){.ddz-panel{padding:8px 12px}.ddz-panel-head h1,.ddz-panel-head h2{font-size:clamp(17px,4vw,24px)}.ddz-panel-sub{font-size:12px}.ddz-btn{min-height:46px;padding:9px 20px;font-size:15px}.ddz-panel-body{padding:6px 0;gap:6px}.ddz-panel-foot{padding-top:6px;gap:8px}}#menu{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;gap:8px;justify-content:flex-start;align-items:center;background:#000000e6;color:#0ff;border:1px solid #0ff;border-radius:10px;padding:20px;text-align:center;z-index:1000;box-sizing:border-box;overflow-y:auto;overflow-x:hidden;touch-action:pan-y;-webkit-overflow-scrolling:touch}@media (min-height: 600px){#menu{justify-content:center}}@media (max-height: 600px),(max-width: 768px){#menu{padding:20px 10px 10px;gap:6px;justify-content:flex-start}#menu h1{font-size:1.8em;margin:0 0 15px}#menu button{padding:10px 15px;font-size:14px;margin:3px 0}.character-option{min-width:100px;padding:10px}.character-preview{width:60px;height:60px}.character-name{font-size:12px}}#menu h1{font-size:2.5em;margin:0 0 20px;text-shadow:0 0 10px #0ff}#menu input{width:80%;max-width:300px;padding:10px;background:#222;color:#0ff;border:1px solid #0ff;border-radius:4px;font-size:16px;margin:5px 0}#menu button{width:80%;max-width:300px;padding:12px 20px;background:#0ff;color:#000;border:none;border-radius:5px;cursor:pointer;font-size:16px;margin:5px 0;transition:background .2s}#menu button:hover{background:#0cc}#menu{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;row-gap:4px;padding:0;background:#07070c;overflow:hidden}#menu .menu-grid-floor{position:absolute;left:-20%;right:-20%;bottom:-10%;height:55%;background:repeating-linear-gradient(90deg,rgba(43,232,255,.14) 0 1px,transparent 1px 44px),repeating-linear-gradient(0deg,rgba(43,232,255,.09) 0 1px,transparent 1px 30px);transform:perspective(260px) rotateX(58deg);transform-origin:bottom;-webkit-mask-image:linear-gradient(to top,black 35%,transparent 100%);mask-image:linear-gradient(to top,black 35%,transparent 100%);pointer-events:none;z-index:0}#menu .menu-vignette{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 38%,transparent 35%,rgba(0,0,0,.75) 100%);pointer-events:none;z-index:0}#menu .menu-scanlines{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.04) 0px,rgba(255,255,255,.04) 1px,transparent 1px,transparent 3px);mix-blend-mode:overlay;opacity:.5;pointer-events:none;z-index:0}#menu .menu-attract-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}#menu .menu-hud{position:relative;z-index:2;grid-column:1 / -1;grid-row:1;width:100%;display:flex;align-items:center;justify-content:space-between}#menu .menu-hud-left{display:flex;align-items:center;gap:8px;min-width:0}#menu .menu-name-chip{font-family:inherit;cursor:pointer;max-width:190px;transition:border-color .15s ease,box-shadow .15s ease}#menu .menu-name-chip:hover{border-color:#2be8ff;box-shadow:0 0 18px #2be8ffa6}#menu .menu-name-chip .menu-chip-value{max-width:118px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#menu .menu-name-chip.is-suggested .menu-chip-value{opacity:.5;font-style:italic;font-weight:600}#menu .menu-name-pencil{font-size:12px;color:#6f8a94;flex-shrink:0}#menu .menu-name-chip:hover .menu-name-pencil{color:#2be8ff}#menu .menu-name-input{width:110px;min-width:0;padding:0;margin:0;font-size:16px;font-family:inherit;font-weight:800;color:#2be8ff;background:none;border:none;border-bottom:1.5px solid #2be8ff;border-radius:0;outline:none;box-sizing:border-box}#menu .menu-name-input::placeholder{color:#4d6570;font-style:italic;font-weight:600}@media (max-width: 560px){#menu .menu-name-input{width:84px}}#menu .menu-chip{display:flex;align-items:center;gap:8px;background:#0d1116;border:1.5px solid #0a7f96;border-radius:999px;box-shadow:0 0 14px #2be8ff66;padding:6px 16px 6px 10px}#menu .menu-chip-icon{font-size:16px;line-height:1}#menu .menu-chip-text{display:flex;flex-direction:column;line-height:1.15;text-align:left}#menu .menu-chip-label{font-size:9px;color:#8fa6ac;font-weight:600;text-transform:uppercase;letter-spacing:.05em}#menu .menu-chip-value{font-size:14px;color:#2be8ff;font-weight:700;text-shadow:0 0 8px rgba(43,232,255,.55)}#menu .menu-icon-btn{width:44px;height:44px;min-width:44px;min-height:44px;max-width:none;border-radius:50%!important;background:#0d1116!important;border:1.5px solid #0a7f96!important;box-shadow:0 0 10px #2be8ff66;color:#2be8ff;font-size:16px;padding:0!important;margin:0!important;display:flex;align-items:center;justify-content:center}#menu .menu-stage{position:relative;z-index:2;grid-row:2;align-self:stretch;display:flex;align-items:flex-start;justify-content:center;padding:0 clamp(12px,3vw,40px);min-height:0;pointer-events:none}#menuLogo{max-width:min(34vw,190px);max-height:64px;height:auto;object-fit:contain;flex-shrink:1;filter:drop-shadow(0 0 14px rgba(43,232,255,.5));animation:logoBounce 2.4s ease-in-out infinite}@keyframes logoBounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-7px) scale(1.02)}}#menu .menu-tagline{margin:6px 0 0;font-size:13px;color:#8fa6ac;font-weight:700}#menu .menu-topbar{position:relative;z-index:2;grid-row:1;display:flex;align-items:center;gap:12px;padding:10px clamp(12px,3vw,40px) 14px;background:linear-gradient(180deg,#05070af2,#05070a00)}#menu .menu-topbar-right{margin-left:auto;display:flex;align-items:center;gap:10px;min-width:0}#menu .menu-season-badge{display:flex;align-items:center;gap:9px;height:44px;box-sizing:border-box;width:auto;max-width:none;margin:0;padding:0 14px 0 5px;border-radius:999px;border:1px solid rgba(255,216,74,.7);background:#282208d9;box-shadow:0 0 16px #ffd84a40;font-family:inherit;cursor:pointer;flex-shrink:0}#menu .menu-season-badge{position:relative}#menu .menu-season-dot{position:absolute;top:-3px;right:-3px;width:14px;height:14px;border-radius:50%;background:#ff4f5a;border:2px solid #07070c;animation:newPulse 1.6s ease-in-out infinite}#menu .menu-season-ring{width:34px;height:34px;flex-shrink:0}#menu .menu-season-text{display:flex;flex-direction:column;line-height:1.1;text-align:left}#menu .menu-season-label{font-size:9px;font-weight:700;letter-spacing:.08em;color:#d8c77a;text-transform:uppercase}#menu .menu-season-value{font-size:14px;font-weight:800;color:#ffd84a;white-space:nowrap}#menu .menu-id-pill{display:flex;align-items:center;gap:10px;height:44px;box-sizing:border-box;padding:0 14px;border:1px solid rgba(56,224,255,.5);border-radius:999px;background:#080e12cc;box-shadow:0 0 14px #33e1f033;min-width:0}#menu .menu-id-name{display:flex;flex-direction:column;align-items:flex-start;position:relative;border:none;background:none;padding:0;font-family:inherit;line-height:1.1;cursor:pointer;min-width:0;width:auto;max-width:none;margin:0}#menu .menu-id-label{font-size:9px;font-weight:700;letter-spacing:.08em;color:#9fb4bb;text-transform:uppercase}#menu .menu-id-value{font-size:14px;font-weight:800;color:#eaf6f8;max-width:108px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#menu .menu-id-value-best{color:#2be8ff;text-shadow:0 0 8px rgba(43,232,255,.55)}#menu .menu-id-divider{width:1px;height:26px;background:#1d3a40;flex-shrink:0}#menu .menu-id-best{display:flex;flex-direction:column;align-items:flex-start;line-height:1.1}#menu .menu-id-name.is-suggested .menu-id-value{opacity:.5;font-style:italic;font-weight:600}#menu .menu-id-name .menu-name-pencil{position:absolute;top:-2px;right:-14px;font-size:11px;color:#7fd8e3}#menu .menu-id-name:hover .menu-id-value{color:#2be8ff}#menu .menu-coin-chip{display:flex;align-items:center;gap:6px;height:44px;box-sizing:border-box;padding:0 14px;border-radius:999px;border:1px solid rgba(255,207,63,.6);background:#282208d9;color:#ffd84a;font-weight:800;font-size:15px;flex-shrink:0}#menu .menu-coin-icon{width:18px;height:18px;image-rendering:pixelated}#menu .menu-dock{position:relative;z-index:2;grid-row:3;display:flex;align-items:flex-end;justify-content:center;gap:clamp(8px,2vw,20px);padding:0 clamp(12px,3vw,40px) clamp(14px,3vh,32px);background:linear-gradient(0deg,#05070af2,#05070a00)}#menu .menu-dock-tile{width:clamp(84px,13vw,124px);max-width:none;margin:0;height:clamp(72px,11vh,100px);border-radius:22px;border:2px solid rgba(255,255,255,.2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-family:inherit;font-weight:800;cursor:pointer;transition:transform .08s ease,box-shadow .08s ease;flex-shrink:0}#menu .menu-dock-ico{font-size:clamp(20px,3.4vw,28px);line-height:1}#menu .menu-dock-name{font-size:clamp(13px,1.8vw,17px)}#menu .menu-dock-skins{background:linear-gradient(180deg,#ff4fa8,#d9207e);color:#fff;box-shadow:0 5px #a3126f,0 0 18px #ff4fa84d}#menu .menu-dock-scores{background:linear-gradient(180deg,#ffca4a,#e69a12);color:#3a2400;box-shadow:0 5px #a97a08,0 0 18px #ffca4a4d}#menu .menu-dock-play{width:clamp(160px,42vw,440px);max-width:none;margin:0;height:clamp(84px,13vh,112px);border-radius:30px;border:2px solid rgba(255,255,255,.25);background:linear-gradient(180deg,#45e9f6,#1cb9c9);color:#05282c;display:flex;align-items:center;justify-content:center;gap:clamp(8px,1.6vw,18px);font-family:inherit;cursor:pointer;animation:menuPulseCyan 2s ease-in-out infinite;transition:transform .08s ease;flex-shrink:1;min-width:0}#menu .menu-dock-play-text{font-size:clamp(26px,5vw,44px);font-weight:800;letter-spacing:.04em}#menu .menu-dock-play-ico{width:clamp(30px,4.4vw,40px);height:clamp(30px,4.4vw,40px);flex-shrink:0}#menu .menu-dock-tile:hover,#menu .menu-dock-play:hover{transform:translateY(-2px)}#menu .menu-dock-tile:active,#menu .menu-dock-play:active{transform:translateY(5px);box-shadow:none}#menu .menu-install-btn{position:absolute;left:50%;bottom:4px;transform:translate(-50%);z-index:3;display:flex;align-items:center;gap:6px;width:auto;max-width:none;margin:0;padding:6px 14px;border:1px solid rgba(43,232,255,.4);border-radius:999px;background:#080e12d9;color:#9fb4c4;font-family:inherit;font-size:12px;font-weight:800;cursor:pointer}#menu .menu-install-btn .menu-dock-ico{font-size:14px}#menu .menu-btn{width:100%;max-width:380px;display:flex;align-items:center;gap:14px;text-align:left;border-radius:20px!important;padding:12px 20px!important;font-family:inherit;font-weight:800;font-size:15px;cursor:pointer;margin:0!important;border:none!important;transition:transform .08s ease,box-shadow .08s ease}#menu .menu-btn-ico{font-size:24px;flex-shrink:0;line-height:1}#menu .menu-btn-text{display:flex;flex-direction:column}#menu .menu-btn-sub{font-size:11px;font-weight:700;opacity:.75;margin-top:1px}#menu .menu-btn-start{background:#2be8ff!important;color:#04262b!important;box-shadow:0 6px #0a7f96,0 0 22px #2be8ff99;font-size:19px;padding:18px 22px!important;animation:menuPulseCyan 2s ease-in-out infinite}#menu .menu-btn-start .menu-btn-ico{font-size:26px;background:#04262b26;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center}@keyframes menuPulseCyan{0%,to{box-shadow:0 6px #0a7f96,0 0 16px #2be8ff8c}50%{box-shadow:0 6px #0a7f96,0 0 30px #2be8ffe6}}#menu .menu-btn-character{background:#ff4fd8!important;color:#3a0a30!important;box-shadow:0 6px #a3208f,0 0 14px #ff4fd880}#menu .menu-btn-scores{background:#ffcf3f!important;color:#402c00!important;box-shadow:0 6px #a97a08,0 0 14px #ffcf3f80}#menu .menu-btn:not(.menu-btn-coop):hover{transform:translateY(-2px)}#menu .menu-btn:not(.menu-btn-coop):active{transform:translateY(6px);box-shadow:none!important}#menu .menu-btn-coop{background:#1c2026!important;color:#5c6570!important;box-shadow:0 6px #111318;cursor:not-allowed;opacity:1!important}#menu .menu-btn-soon{margin-left:auto;font-size:9px;font-weight:700;letter-spacing:.04em;background:#0d1116;color:#6b7480;border-radius:999px;padding:3px 8px;text-transform:uppercase}#menu .menu-loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;background:#040508eb;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;opacity:0;pointer-events:none;transition:opacity .2s ease}#menu .menu-loading.show{opacity:1;pointer-events:auto}#menu .menu-loading-label{color:#2be8ff;font-weight:700;letter-spacing:.03em;text-shadow:0 0 10px rgba(43,232,255,.55)}#menu .menu-bar{width:220px;height:12px;border-radius:999px;background:#0d1116;border:1.5px solid #0a7f96;overflow:hidden}#menu .menu-bar-fill{height:100%;width:0%;background:#2be8ff;box-shadow:0 0 10px #2be8ff8c;border-radius:999px;transition:width 1.1s cubic-bezier(.3,.8,.3,1)}#menu.menu-shake{animation:menuShake .38s}@keyframes menuShake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(3px)}30%,50%,70%{transform:translate(-5px)}40%,60%{transform:translate(5px)}}@media (max-height: 480px){#menu .menu-topbar{padding-top:6px;padding-bottom:8px}#menuLogo{max-height:44px}#menu .menu-tagline{display:none}#menu .menu-dock{padding-bottom:10px}}@media (max-width: 560px){#menu .menu-topbar{gap:6px;padding-left:10px;padding-right:10px}#menu .menu-topbar-right{gap:6px}#menuLogo{max-height:40px;max-width:84px}#menu .menu-season-badge{padding:0 6px}#menu .menu-season-text{display:none}#menu .menu-id-pill{padding:0 10px;gap:7px;min-width:0;flex-shrink:1}#menu .menu-id-value{max-width:74px;font-size:13px}#menu .menu-id-name .menu-name-pencil{right:-12px;font-size:10px}}@media (max-width: 400px){#menu .menu-id-divider,#menu .menu-id-best{display:none}#menu .menu-id-value{max-width:88px}}#submitScoreBtn{background:#0f0!important;color:#000!important}#submitScoreBtn:hover{background:#0c0!important}#submitScoreBtn:disabled{background:#666!important;color:#999!important;cursor:not-allowed!important}.character-option{display:flex;flex-direction:column;align-items:center;padding:15px;border:2px solid #0ff;border-radius:10px;background:#00ffff1a;cursor:pointer;transition:all .3s ease;position:relative;min-width:120px}.character-option:hover{background:#0ff3;transform:scale(1.05)}.character-option.selected{background:#0f03;border-color:#0f0;box-shadow:0 0 15px #00ff0080}.character-option.selected:after{content:"✓";position:absolute;top:5px;right:5px;color:#0f0;font-size:20px;font-weight:700;text-shadow:0 0 5px #0f0}#highScoresPanel{background:var(--ddz-bg)}.character-wallet{font-size:15px;color:#cfefff;margin-bottom:4px}.character-wallet span{color:#ffd84d;font-weight:800}.crystal-icon{display:inline-block;width:18px;height:18px;background-image:url(./purple-927eCYXt.png);background-size:300% 300%;background-position:0 0;background-repeat:no-repeat;image-rendering:pixelated;vertical-align:middle;flex:0 0 auto}.extra-life-btn .crystal-icon{width:24px;height:24px}.character-price .crystal-icon{width:15px;height:15px}.character-hint{min-height:20px;font-size:14px;color:#ffd84d;opacity:0;transition:opacity .2s ease;padding:0 12px}.character-hint.visible{opacity:1}.character-option.locked{border-color:#45455a;background:#ffffff08;box-shadow:none}.character-option.locked .character-preview{filter:grayscale(1) brightness(.5)}.character-option.locked .character-name{color:#7f7f95}.character-price{position:absolute;top:6px;right:6px;font-size:13px;font-weight:800;color:#d8d8e8;background:#000000b8;border-radius:999px;padding:4px 10px;white-space:nowrap}.character-price.affordable{color:#1c1200;background:#ffd84d;box-shadow:0 0 14px #ffd84d8c}.rarity-badge{position:absolute;top:6px;left:6px;font-size:9px;font-weight:900;letter-spacing:.09em;line-height:1;padding:3px 7px;border-radius:999px;border:1px solid currentColor;background:#060a12d1;text-transform:uppercase;pointer-events:none;z-index:2}.character-option.rarity-rare:not(.selected):not(.locked){border-color:#4fc3ff8c}.character-option.rarity-ultra:not(.selected):not(.locked){border-color:#c77dff99}.character-option.rarity-epic:not(.selected):not(.locked){border-color:#ffd84da6}.character-option.rarity-epic:not(.selected):not(.locked){animation:epicPulse 2.6s ease-in-out infinite}@keyframes epicPulse{0%,to{box-shadow:0 4px #00ffff40,0 0 10px #ffd84d33}50%{box-shadow:0 4px #00ffff40,0 0 20px #ffd84d6b}}.character-option.locked .rarity-badge{opacity:.45}@media (prefers-reduced-motion: reduce){.character-option.rarity-epic:not(.selected):not(.locked){animation:none}}.new-badge{position:absolute;top:6px;left:6px;font-size:9px;font-weight:900;letter-spacing:.08em;line-height:1;padding:3px 6px;border-radius:999px;color:#10190f;background:#3ce07a;box-shadow:0 0 10px #3ce07a8c;pointer-events:none;z-index:3;animation:newPulse 1.8s ease-in-out infinite}#characterGrid .character-option>.new-badge,#zombieSkinGrid .character-option>.new-badge{top:27px}.skin-tab>.new-badge,#menu .menu-dock-tile>.new-badge{top:-7px;left:auto;right:-7px;border:2px solid #0b1116}#menu .menu-dock-tile>.new-badge{font-size:11px;padding:4px 9px;top:-8px}@keyframes newPulse{0%,to{opacity:1}50%{opacity:.45}}.skin-tab,#menu .menu-dock-tile{position:relative}@media (prefers-reduced-motion: reduce){.new-badge{animation:none}}@keyframes characterShake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.character-option.shake{animation:characterShake .35s ease}.character-scroll{justify-content:center}#highScoresPanel button{background:var(--ddz-cyan);color:var(--ddz-ink);border:none;border-radius:var(--ddz-radius);font-weight:800;min-height:52px;box-shadow:0 6px 0 var(--ddz-cyan-dark);transition:transform .08s ease,box-shadow .08s ease}#highScoresPanel button:active{transform:translateY(6px);box-shadow:none}.character-option{border-radius:16px;box-shadow:0 4px #00ffff40}.character-option.selected{box-shadow:0 4px #00ff0059,0 0 15px #00ff0080}.character-preview{width:68px;height:68px;margin-bottom:6px;border:1px solid rgba(0,255,255,.3);border-radius:5px;background:#0000004d;display:flex;align-items:center;justify-content:center;overflow:hidden}.character-preview canvas{width:100%;height:100%}.character-name{color:#0ff;font-size:14px;font-weight:700;text-shadow:0 0 3px #0ff}.character-trait{display:flex;flex-direction:column;align-items:center;line-height:1.15;margin-top:2px}.character-trait-name{color:#ffd23c;font-size:10px;font-weight:800;letter-spacing:.2px}.character-trait-blurb{color:#9fb6c4;font-size:9px;font-weight:600}.character-option.locked .character-trait-name{color:#c9a53a}.character-option.locked .character-trait-blurb{color:#7d8f9b}#menu a.menu-button{display:block;width:80%;max-width:300px;padding:12px 20px;background:#0ff;color:#000;border:none;border-radius:5px;cursor:pointer;font-size:16px;margin:5px auto;text-decoration:none;text-align:center;transition:background .2s;box-sizing:border-box}#menu a.menu-button:hover{background:#0cc}#pauseBtn,#resumeBtn{position:absolute;z-index:20;display:none;background:#222;color:#0ff;border:1px solid #0ff;border-radius:8px;font-size:20px;padding:10px 16px;min-width:48px;min-height:48px;text-align:center;cursor:pointer}#pauseBtn,#resumeBtn{top:10px;right:10px}#boostBtn,#boostBtnRight{display:none}#skipTutorialBtn{position:absolute;bottom:118px;left:50%;transform:translate(-50%) translateY(6px);display:none;align-items:center;gap:7px;padding:9px 18px;min-height:40px;border:1px solid rgba(0,255,255,.45);border-radius:999px;background:#060e14b8;color:#9fdbe8;font-family:inherit;font-size:13px;font-weight:700;letter-spacing:.3px;cursor:pointer;z-index:21;opacity:0;transition:opacity .45s ease,transform .45s ease,color .15s ease,border-color .15s ease;-webkit-tap-highlight-color:transparent}#skipTutorialBtn.is-visible{display:flex;opacity:1;transform:translate(-50%) translateY(0)}#skipTutorialBtn:active{color:#eafcff;border-color:#00ffffe6}#skipTutorialBtn .skip-chevrons{font-size:15px;line-height:1;animation:skipNudge 1.6s ease-in-out infinite}@keyframes skipNudge{0%,to{transform:translate(0);opacity:.65}50%{transform:translate(3px);opacity:1}}@media (prefers-reduced-motion: reduce){#skipTutorialBtn .skip-chevrons{animation:none}}.tutorial-highlight{animation:tutorialPulse 1s ease-in-out infinite!important}@keyframes tutorialPulse{0%,to{box-shadow:0 0 10px #00ffff4d,0 0 #0ff9!important}50%{box-shadow:0 0 25px #00ffffe6,0 0 0 8px #00ffff26!important}}#highScoresPanel{z-index:100}#highScoresPanel button{flex-shrink:0}.rank-display{font-size:24px;color:#0ff;margin:10px 0;text-shadow:0 0 10px #0ff}.new-highscore{color:#0f0;font-size:28px;margin:10px 0;animation:pulse 1s infinite}.best-score-message{font-size:16px;color:#0ff;margin:4px 0}.best-score-message.new-best{color:#0f0;font-size:20px;text-shadow:0 0 8px #0f0;animation:pulse 1s infinite}#restartBtn{font-size:19px}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000e6;display:none;justify-content:center;align-items:center;flex-direction:column;z-index:1001}.loading-text{color:#0ff;font-size:24px;text-shadow:0 0 10px #0ff;margin-bottom:20px}.loading-dots{color:#0ff;font-size:36px;animation:loadingDots 1.5s infinite}@keyframes loadingDots{0%{content:"."}33%{content:".."}66%{content:"..."}to{content:"."}}.loading-spinner{width:50px;height:50px;border:3px solid #0ff;border-top:3px solid transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.highScoresTableWrap{width:100%;max-width:560px;margin:0 auto}.table-header{color:#0ff;font-size:18px;font-weight:700;text-shadow:0 0 10px #0ff;margin-bottom:10px;text-align:center;flex-shrink:0}.table-container{width:100%;border:2px solid #0ff;border-radius:8px;background:#000c}.table-container::-webkit-scrollbar{width:8px}.table-container::-webkit-scrollbar-track{background:#00ffff1a;border-radius:4px}.table-container::-webkit-scrollbar-thumb{background:#0ff;border-radius:4px}.table-container::-webkit-scrollbar-thumb:hover{background:#0cc}.table-container{scrollbar-width:thin;scrollbar-color:#0ff rgba(0,255,255,.1)}#highScoresList{width:100%;border-collapse:collapse;color:#fff;font-family:Arial,sans-serif}#highScoresList thead{position:sticky;top:0;background:#000000f2;z-index:10}#highScoresList th{padding:12px 8px;text-align:center;color:#0ff;border-bottom:2px solid #0ff;font-weight:700;text-shadow:0 0 5px #0ff}#highScoresList td{padding:8px;text-align:center;border-bottom:1px solid rgba(0,255,255,.2)}#highScoresList{table-layout:fixed}#highScoresList .col-rank{width:3.5rem}#highScoresList .col-score{width:5rem}#highScoresList .col-player{width:auto}#highScoresList td:nth-child(1){color:var(--ddz-gold);font-weight:800}#highScoresList td:nth-child(2){text-align:left;padding-left:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#highScoresList td:nth-child(3){color:var(--ddz-cyan);font-weight:800}#highScoresList tbody tr:nth-child(1) td:nth-child(1){color:gold}#highScoresList tbody tr:nth-child(2) td:nth-child(1){color:#c8d2dc}#highScoresList tbody tr:nth-child(3) td:nth-child(1){color:#d98c4a}@media (max-width: 768px),(max-height: 500px){#highScoresList th,#highScoresList td{padding:7px 4px;font-size:14px}#highScoresList .col-rank{width:2.6rem}#highScoresList .col-score{width:4rem}}#highScoresList tr:nth-child(2n){background:#00ffff0d}#highScoresList tr:hover{background:#00ffff1a}.coming-soon-btn{background:#666!important;color:#999!important;cursor:not-allowed!important;opacity:.6;position:relative}.coming-soon-btn:hover{background:#666!important;color:#999!important;transform:none!important}.coming-soon-btn:disabled{background:#666!important;color:#999!important}.your-score-section{background:#00ffff1a;border:2px solid #0ff;border-radius:8px;padding:15px;margin:20px 0;text-align:center;max-width:500px;width:100%}.your-score-info{color:#fff;font-size:16px;margin-top:10px}.your-score-info .rank{color:#0ff;font-weight:700;font-size:18px;text-shadow:0 0 5px #0ff}.your-score-info .score{color:#0f0;font-weight:700;font-size:18px;text-shadow:0 0 5px #0f0}#highScoresList tr.your-score{background:#00ffff4d!important;animation:glow 2s infinite alternate;border:2px solid #0ff}@keyframes glow{0%{box-shadow:0 0 5px #0ff}to{box-shadow:0 0 15px #0ff}}@media (max-width: 600px){#highScoresList th,#highScoresList td{padding:6px 4px;font-size:14px}.your-score-section{margin:15px 5px;padding:12px}}#highScoresPanel{padding:12px max(16px,env(safe-area-inset-right)) 12px max(16px,env(safe-area-inset-left))}#highScoresPanel .ddz-panel-head,#highScoresPanel .ddz-panel-body,#highScoresPanel .ddz-panel-foot{max-width:720px}#highScoresPanel .ddz-panel-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 16px;text-align:left}#highScoresPanel .ddz-panel-head h1{display:block;font-size:24px;line-height:1.15;text-shadow:none}#highScoresPanel .season-banner{width:auto;max-width:none;margin:0;padding:0;border:0;border-radius:0;background:none}#highScoresPanel .season-banner-top{justify-content:flex-end;margin-bottom:4px;gap:6px}#highScoresPanel .season-name{font-size:11px;letter-spacing:.02em}#highScoresPanel .season-ends{display:inline;font-size:10px}#highScoresPanel .season-clock{justify-content:flex-end;gap:4px}#highScoresPanel .season-unit{min-width:0;flex-direction:row;align-items:baseline;gap:2px}#highScoresPanel .season-num{font-size:16px;text-shadow:none}#highScoresPanel .season-lbl{display:inline;margin:0;font-size:9px;letter-spacing:0;text-transform:none}#highScoresPanel .season-sep,#highScoresPanel .season-progress{display:none}#highScoresPanel .score-tabs{grid-column:1 / -1;display:flex;gap:4px;margin:0;padding:3px;border:1px solid var(--ddz-line);border-radius:12px;background:var(--ddz-surface)}#highScoresPanel .score-tabs .skin-tab{flex:1;min-height:38px;padding:6px 12px;border:0;border-radius:8px;background:transparent;color:var(--ddz-muted);font-size:14px;box-shadow:none;transform:none}#highScoresPanel .score-tabs .skin-tab.active{color:var(--ddz-ink);background:var(--ddz-cyan)}#highScoresPanel .skin-tab:focus-visible,#highScoresPanel .ddz-btn:focus-visible{outline:2px solid white;outline-offset:2px}#highScoresPanel .ddz-panel-body{display:block;padding:0;margin-top:8px;border-top:1px solid var(--ddz-line);border-bottom:1px solid var(--ddz-line);scrollbar-width:thin;scrollbar-color:var(--ddz-cyan-dark) var(--ddz-surface)}#highScoresPanel .highScoresTableWrap{max-width:none}#highScoresPanel #highScoresList{font-variant-numeric:tabular-nums}#highScoresPanel #highScoresList thead{background:var(--ddz-surface)}#highScoresPanel #highScoresList th{padding:7px 12px;font-size:11px;line-height:16px;color:var(--ddz-muted);text-shadow:none;border-bottom:1px solid var(--ddz-line)}#highScoresPanel #highScoresList td{padding:7px 12px;font-size:14px;line-height:18px;border-bottom:1px solid rgba(159,180,196,.1)}#highScoresPanel #highScoresList .col-rank{width:36px}#highScoresPanel #highScoresList .col-score{width:88px}#highScoresPanel #highScoresList th:nth-child(2){text-align:left}#highScoresPanel #highScoresList th:last-child,#highScoresPanel #highScoresList td:last-child{text-align:right}#highScoresPanel #highScoresList tbody tr:first-child{background:#ffd84d12}#highScoresPanel #highScoresList tbody tr:first-child td:last-child{color:var(--ddz-gold)}#highScoresPanel #highScoresList td:first-child{color:var(--ddz-muted)}#highScoresPanel #highScoresList tbody tr:nth-child(1) td:first-child{color:var(--ddz-gold)}#highScoresPanel #highScoresList tbody tr:nth-child(2) td:first-child{color:#c8d2dc}#highScoresPanel #highScoresList tbody tr:nth-child(3) td:first-child{color:#d98c4a}#highScoresPanel #yourScoreDisplay{grid-column:1 / -1}#highScoresPanel .your-score-section{box-sizing:border-box;max-width:none;margin:0;padding:6px 12px;border-width:1px}#highScoresPanel .your-score-info{margin:0;font-size:13px}#highScoresPanel .ddz-panel-foot{padding-top:8px}#highScoresPanel .ddz-panel-foot .ddz-btn{min-height:40px;padding:8px 24px;border-radius:12px;font-size:14px;box-shadow:0 4px 0 var(--ddz-cyan-dark)}@media (max-width: 480px){#highScoresPanel .ddz-panel-head{gap:8px}#highScoresPanel .ddz-panel-head h1{font-size:20px}#highScoresPanel .season-clock{gap:3px}#highScoresPanel .season-num{font-size:13px}#highScoresPanel #highScoresList .col-score{width:66px}}#portraitOverlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000f2;z-index:2001;display:none;flex-direction:column;justify-content:flex-start;align-items:center}#portraitOverlay .turn-message{color:#0ff;font-size:1.5em;margin-top:40px;margin-bottom:10px;text-align:center;letter-spacing:1px}#portraitOverlay .arrow-anim{font-size:60px;color:#0ff;margin-bottom:10px;animation:rotateArrow 1.2s infinite linear;display:block;text-align:center}@keyframes rotateArrow{0%{transform:rotate(0)}20%{transform:rotate(-20deg)}40%{transform:rotate(0)}60%{transform:rotate(20deg)}80%{transform:rotate(0)}to{transform:rotate(0)}}#pauseMenu{position:fixed;top:0;left:0;right:0;bottom:0;display:none;flex-direction:column;gap:15px;justify-content:flex-start;align-items:center;background:#000000e6;color:#0ff;border:1px solid #0ff;border-radius:10px;padding:20px;text-align:center;z-index:1000;box-sizing:border-box;overflow-y:auto;overflow-x:hidden;touch-action:pan-y;-webkit-overflow-scrolling:touch}@media (min-height: 500px){#pauseMenu{justify-content:center}}@media (max-height: 500px),(max-width: 768px){#pauseMenu{padding:20px 10px 10px;gap:10px}#pauseMenu h2{font-size:1.6em;margin:0 0 15px}#pauseMenu button{padding:10px 15px;font-size:14px;margin:3px 0}#pauseMenu .score-display{font-size:20px;margin:15px 0}}#pauseMenu h2{font-size:2em;margin:0 0 20px;text-shadow:0 0 10px #0ff}#pauseMenu button{width:80%;max-width:300px;padding:12px 20px;background:#0ff;color:#000;border:none;border-radius:5px;cursor:pointer;font-size:16px;margin:5px 0;transition:background .2s}#pauseMenu button:hover{background:#0cc}#pauseMenu .score-display{font-size:24px;margin:20px 0;color:#0ff;text-shadow:0 0 5px #0ff}#pauseMenu .mute-btn{background:#222;color:#0ff;border:1px solid #0ff;width:auto;padding:8px 16px;font-size:14px}.coop-container{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000e6;color:#0ff;display:none;flex-direction:column;gap:8px;justify-content:center;align-items:center;z-index:1000;padding:20px;text-align:center;border:1px solid #0ff;border-radius:10px;box-sizing:border-box}.coop-container h1,.coop-container h2{font-size:2.5em;margin:0 0 20px;text-shadow:0 0 10px #0ff}.coop-container input{width:80%;max-width:350px;padding:10px;margin:8px 0;background:#222;color:#0ff;border:1px solid #0ff;border-radius:4px;font-size:1em}.coop-container .menu-button,.coop-container button{width:80%;max-width:350px;padding:12px 20px;margin:8px 0;background:#0ff;color:#000;border:none;border-radius:5px;cursor:pointer;font-size:1em;text-decoration:none;text-align:center;transition:background .2s;box-sizing:border-box}.coop-container .menu-button:hover,.coop-container button:hover{background:#0cc}.coop-container button.small-btn{width:auto;max-width:none;padding:8px 12px;font-size:.9em;margin-left:10px}#lobbyCodeDisplay{font-size:2em;font-weight:700;padding:10px;border:1px dashed #0ff;margin:15px 0;display:inline-block;letter-spacing:2px;background-color:#001e1e33}#playerListArea .player-entry,#activePlayerListArea .player-entry{border:1px solid #077;padding:10px;margin:5px 0;border-radius:4px;background-color:#00323266;text-align:left;width:100%;box-sizing:border-box}#playerListArea .player-entry.ready,#activePlayerListArea .player-entry.ready{border-left:5px solid #0f0;background-color:#00500080}#shareModal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000f2;display:flex;justify-content:center;align-items:center;z-index:2000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.share-modal-content{background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);border:2px solid #0ff;border-radius:15px;padding:25px;max-width:90vw;max-height:90vh;overflow-y:auto;box-shadow:0 10px 30px #00ffff4d;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.8) translateY(-50px)}to{opacity:1;transform:scale(1) translateY(0)}}.share-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;border-bottom:1px solid rgba(0,255,255,.3);padding-bottom:15px}#seasonPanel .season-head{display:flex;flex-direction:row;align-items:center;gap:12px;text-align:left}.season-head-title{display:flex;flex-direction:column;line-height:1.05;min-width:0}.season-head-kicker{font-size:10px;font-weight:800;letter-spacing:.12em;color:var(--ddz-muted);text-transform:uppercase}.season-head h1{margin:0;font-size:clamp(20px,3.4vw,32px);color:#ffd84a;text-shadow:0 0 18px rgba(255,216,74,.45)}.season-head-tagline{margin-top:2px;font-size:12px;font-weight:700;font-style:italic;color:var(--ddz-text-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.season-head-clock{margin-left:auto;flex-shrink:0;display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;background:#ff4f5024;border:1px solid rgba(255,110,110,.6);color:#ffd0d0;font-size:clamp(12px,1.6vw,15px);font-weight:800;white-space:nowrap}.season-back-btn{flex-shrink:0;width:44px;height:44px;border-radius:50%;border:1px solid rgba(56,224,255,.5);background:#080e12cc;color:#eaf6f8;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.season-back-btn:active{transform:translateY(1px)}#seasonPanel .season-body{display:flex;flex-direction:row;gap:clamp(10px,2vw,22px);align-items:stretch;overflow:hidden;padding-bottom:clamp(10px,2vh,24px)}.season-reward{width:clamp(190px,28vw,320px);flex-shrink:0;box-sizing:border-box;padding:clamp(10px,2vh,20px) 14px;border-radius:20px;background:#0a1016e6;border:1px solid rgba(255,216,74,.45);box-shadow:0 0 30px #ffd84a1f;display:flex;flex-direction:column;align-items:center;gap:8px}.season-reward-kicker{font-size:10px;font-weight:800;letter-spacing:.12em;color:#ffd84a}.season-reward-art{position:relative;width:clamp(80px,30vh,170px);height:clamp(80px,30vh,170px);border-radius:50%;background:radial-gradient(circle,#ffd84a40,#ffd84a00 70%);display:flex;align-items:center;justify-content:center}.season-reward-hat{image-rendering:pixelated}.season-reward-lock{position:absolute;right:8px;bottom:8px;width:34px;height:34px;border-radius:50%;background:#0b0f13;border:2px solid #ffd84a;display:flex;align-items:center;justify-content:center;font-size:15px}.season-reward.is-unlocked .season-reward-lock{display:none}.season-reward.is-unlocked .season-reward-art{background:radial-gradient(circle,#6fd94f59,#6fd94f00 70%)}.season-reward-name{font-size:18px;font-weight:900;color:#fff;text-align:center}.season-reward-note{margin:0;font-size:12px;color:var(--ddz-text-soft);text-align:center}.season-overall{width:100%;margin-top:auto;display:flex;flex-direction:column;gap:6px}.season-overall-row{display:flex;justify-content:space-between;font-size:12px;font-weight:800;color:#eaf6f8}.season-overall-count{color:#ffd84a}.season-bar{display:block;position:relative;height:12px;border-radius:999px;background:#1a2226;overflow:hidden}.season-bar-marker{position:absolute;top:-2px;bottom:-2px;width:3px;margin-left:-1.5px;border-radius:2px;background:#ff4f5a;box-shadow:0 0 6px #ff4f5acc;transition:left 1.1s cubic-bezier(.2,.8,.3,1)}.season-bar-fill{display:block;height:100%;width:0%;background:#ffd84a;border-radius:999px;transition:width .4s ease}.season-challenges{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:clamp(6px,1.4vh,12px)}.season-challenges-kicker{font-size:10px;font-weight:800;letter-spacing:.12em;color:var(--ddz-muted);text-align:left}#seasonChallengeList{flex:1 1 auto;display:flex;flex-direction:column;gap:clamp(6px,1.4vh,12px)}.season-card{flex:1 1 0;min-height:0;box-sizing:border-box;padding:clamp(6px,1.6vh,14px) 16px;border-radius:18px;background:#0a1016e6;border:2px solid var(--ddz-line);display:flex;align-items:center;gap:14px;text-align:left}.season-card-dot{width:40px;height:40px;flex-shrink:0;border-radius:50%;box-shadow:0 0 10px #00000080}.season-card-dot-green{background:#4fae45;box-shadow:0 0 12px #5adc4680}.season-card-dot-yellow{background:#e8c93a;box-shadow:0 0 12px #e8c93a80}.season-card-dot-wave{background:linear-gradient(180deg,#45e9f6,#1cb9c9);box-shadow:0 0 12px #33e1f080;display:flex;align-items:center;justify-content:center;width:36px;height:36px;font-size:14px;font-weight:900;color:#05282c}.season-card-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:40px}.season-card-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:6px}.season-card-name{font-size:15px;font-weight:900;color:#fff}.season-card-status{font-size:12px;font-weight:800;color:var(--ddz-muted)}.season-card.is-todo{opacity:.55}.season-card.is-done{border-color:var(--ddz-cyan);box-shadow:0 0 22px #2be8ff40}.season-card.is-done .season-card-status{color:var(--ddz-cyan)}.season-card.is-claimed{border-color:#35d17a}.season-card.is-claimed .season-card-status{color:#35d17a}.season-card .season-bar-fill{background:var(--ddz-cyan)}.season-card.is-claimed .season-bar-fill{background:#35d17a}.season-card-reward{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:92px}.season-card-reward-label{font-size:11px;font-weight:900;color:#ffd84a;white-space:nowrap}.season-claim-btn{padding:8px 16px;min-height:40px;border:none;border-radius:12px;background:#ffd84a;color:#2a1f00;font-family:inherit;font-size:14px;font-weight:900;cursor:pointer;box-shadow:0 4px #a97a08;white-space:nowrap}.season-claim-btn:active{transform:translateY(3px);box-shadow:none}.season-claim-btn[disabled]{background:#2a3238;color:#6b7a80;box-shadow:none;cursor:default}@media (max-height: 430px){#seasonPanel .ddz-panel-head{padding-top:8px;padding-bottom:6px}.season-back-btn{width:40px;height:40px}.season-head h1{font-size:20px}.season-reward{gap:4px}.season-reward-note{display:none}.season-reward-name{font-size:15px}.season-card-dot{width:30px;height:30px}.season-card-main{gap:3px}.season-card-name{font-size:13px}.season-card .season-bar{height:8px}.season-card-status{font-size:11px}.season-claim-btn{min-height:34px;padding:5px 12px;font-size:13px;box-shadow:0 3px #a97a08}.season-card-reward{min-width:80px;gap:3px}}.hat-anim-2x2{animation-name:hatAnim2x2;animation-timing-function:step-end;animation-iteration-count:infinite}@keyframes hatAnim2x2{0%{background-position:0% 0%}25%{background-position:100% 0%}50%{background-position:0% 100%}75%{background-position:100% 100%}to{background-position:0% 0%}}.reward-chip{display:inline-flex;align-items:center;gap:4px;font-weight:900;color:#ffd84a;white-space:nowrap}.reward-chip .crystal-icon{width:18px;height:18px}.reward-coin-icon{width:18px;height:18px;image-rendering:pixelated}.reward-burst-big{width:56px;height:56px;display:inline-block;image-rendering:pixelated}.season-last-run{color:#ff8a8a;font-weight:800}.run-challenge-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2050;display:flex;align-items:center;justify-content:center;padding:12px;box-sizing:border-box;background:#040609e0;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:runModalIn .25s ease-out}.run-challenge-modal.is-leaving{animation:runModalOut .22s ease-in forwards}@keyframes runModalIn{0%{opacity:0}to{opacity:1}}@keyframes runModalOut{0%{opacity:1}to{opacity:0}}.run-challenge-sheet{width:min(640px,100%);max-height:100%;box-sizing:border-box;padding:16px 20px;border-radius:24px;background:linear-gradient(180deg,#121821,#0b0f15);border:2px solid rgba(255,216,74,.55);box-shadow:0 0 40px #ffd84a2e;display:flex;flex-direction:column;gap:10px;animation:runSheetIn .45s cubic-bezier(.2,1.3,.4,1)}@keyframes runSheetIn{0%{transform:translateY(24px) scale(.96);opacity:0}to{transform:none;opacity:1}}.run-challenge-sheet-head{display:flex;flex-direction:column;line-height:1.1;text-align:left}.run-challenge-sheet-head h2{margin:0;font-size:22px;font-weight:900;color:#ffd84a;text-shadow:0 0 16px rgba(255,216,74,.45)}.run-challenge-cards{display:flex;flex-direction:column;gap:8px;min-height:0}.run-challenge-cards .season-card{flex:none}.run-challenge-next{align-self:flex-end;display:inline-flex;align-items:center;gap:8px;min-width:150px;justify-content:center}.run-card-num{color:#ffd84a}.run-card-done{display:block;max-height:0;overflow:hidden;opacity:0;font-size:12px;font-weight:900;color:#35d17a;transition:max-height .3s ease,opacity .3s ease}.season-card.is-complete{position:relative;border-color:#35d17a;box-shadow:0 0 22px #35d17a80;animation:runChallengePop .6s ease}.season-card.is-complete .season-bar-fill{background:#35d17a}.season-card.is-complete .run-card-done{max-height:20px;opacity:1}.season-card.is-complete:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);background-size:250% 100%;animation:runChallengeShine 1s ease forwards;pointer-events:none}.run-card-fill{transition:width 1.1s cubic-bezier(.2,.8,.3,1)}.run-challenge-gain.is-miss{background:#ff4f5a2e;color:#ff8a8a}@media (max-height: 430px){.run-challenge-sheet{padding:10px 16px;gap:6px}.run-challenge-sheet-head h2{font-size:18px}.run-challenge-cards{gap:6px}.run-challenge-cards .season-card{padding:6px 12px}.run-challenge-next{min-height:40px}}@media (prefers-reduced-motion: reduce){.run-challenge-modal,.run-challenge-sheet,.run-card-fill,.season-card.is-complete,.season-card.is-complete:after{animation:none;transition:none}}.run-challenges{margin-top:12px}.run-challenges-list{display:flex;flex-direction:column;gap:8px;margin-top:6px}.run-challenge{position:relative;padding:8px 12px;border-radius:12px;background:#0a1016e6;border:1px solid var(--ddz-line);text-align:left;transition:border-color .3s ease,box-shadow .3s ease}.run-challenge-top{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:5px;font-size:13px;font-weight:800;color:#eaf6f8}.run-challenge-count{color:var(--ddz-muted);white-space:nowrap}.run-challenge-count b{color:#ffd84a}.run-challenge-gain{display:inline-block;margin-right:8px;padding:1px 7px;border-radius:999px;background:#6fd94f2e;color:#6fd94f;font-size:12px;animation:runGainIn .4s ease .3s both}@keyframes runGainIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.run-challenge.is-still{opacity:.6}.run-challenge.is-ready{border-color:#35d17a}.run-challenge.is-ready .run-challenge-fill{background:#35d17a}.run-challenge.is-ready .run-challenge-done{max-height:20px;opacity:1;margin-top:5px}.run-challenge.is-claimed{opacity:.55}.run-challenge.is-claimed .run-challenge-fill{background:#35d17a}.run-challenge.is-claimed .run-challenge-done{max-height:20px;opacity:1;margin-top:5px;color:var(--ddz-muted)}.run-challenge .run-challenge-fill{background:var(--ddz-cyan);transition:width 1.1s cubic-bezier(.2,.8,.3,1)}.run-challenge-done{max-height:0;overflow:hidden;opacity:0;font-size:12px;font-weight:900;color:#35d17a;transition:max-height .3s ease,opacity .3s ease,margin .3s ease}.run-challenge.is-complete{border-color:#35d17a;box-shadow:0 0 18px #35d17a73;animation:runChallengePop .6s ease}.run-challenge.is-complete .run-challenge-fill{background:#35d17a}.run-challenge.is-complete .run-challenge-done{max-height:20px;opacity:1;margin-top:5px}.run-challenge.is-complete:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);background-size:250% 100%;animation:runChallengeShine 1s ease forwards;pointer-events:none}@keyframes runChallengePop{0%{transform:scale(1)}40%{transform:scale(1.04)}to{transform:scale(1)}}@keyframes runChallengeShine{0%{background-position:150% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion: reduce){.run-challenge .run-challenge-fill{transition:none}.run-challenge.is-complete,.run-challenge.is-complete:after{animation:none}}.reward-burst{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2200;display:flex;align-items:center;justify-content:center;background:#040609bf;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);pointer-events:none}.reward-burst-card{text-align:center;padding:28px 40px;border-radius:24px;background:linear-gradient(135deg,#1a1a2e,#16213e);border:2px solid #ffd84a;box-shadow:0 0 50px #ffd84a80;animation:rewardPop .5s cubic-bezier(.2,1.4,.4,1)}.reward-burst-icon{font-size:44px;line-height:1;animation:rewardSpin .7s ease-out}.reward-burst-amount{margin-top:8px;font-size:30px;font-weight:900;color:#ffd84a;text-shadow:0 0 18px rgba(255,216,74,.7)}.reward-burst-label{margin-top:4px;font-size:14px;font-weight:800;color:#dfe7ff}@keyframes rewardPop{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.08);opacity:1}to{transform:scale(1);opacity:1}}@keyframes rewardSpin{0%{transform:rotate(-25deg) scale(.5)}to{transform:rotate(0) scale(1)}}@media (prefers-reduced-motion: reduce){.reward-burst-card,.reward-burst-icon{animation:none}}.founders-gift-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000f2;justify-content:center;align-items:center;z-index:2100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);padding:16px}.founders-gift-card{background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);border:2px solid #ffd166;border-radius:15px;padding:28px 24px;max-width:360px;width:100%;max-height:90vh;overflow-y:auto;text-align:center;box-shadow:0 10px 30px #ffd16659;animation:modalSlideIn .3s ease-out}.founders-gift-title{font-size:22px;font-weight:800;color:#ffd166;text-shadow:0 0 12px rgba(255,209,102,.6);margin-bottom:14px}.founders-gift-preview{margin:0 auto 16px;width:96px;height:96px;filter:drop-shadow(0 0 10px rgba(255,209,102,.5))}.founders-gift-body{color:#dfe7ff;font-size:14px;line-height:1.5;margin-bottom:20px}.founders-gift-actions{display:flex;flex-direction:column;gap:10px}@media (max-width: 480px){.founders-gift-card{max-width:280px;padding:20px 16px;border-radius:12px}.founders-gift-title{font-size:18px;margin-bottom:10px}.founders-gift-preview{width:72px;height:72px;margin-bottom:12px}.founders-gift-body{font-size:12.5px;line-height:1.4;margin-bottom:16px}.founders-gift-actions .ddz-btn{padding:10px;font-size:14px}}.share-modal-header h2{color:#0ff;margin:0;font-size:1.8em;text-shadow:0 0 10px #0ff;background:linear-gradient(45deg,#0ff,#ff6b6b,#4ecdc4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.close-btn{background:none;border:none;color:#0ff;font-size:2em;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.close-btn:hover{background:#f003;color:#f44;transform:rotate(90deg)}.score-card{background:linear-gradient(135deg,#0a0a0a,#1a1a2e,#16213e);border:3px solid #0ff;border-radius:20px;padding:30px;margin:20px 0;text-align:center;position:relative;overflow:hidden;box-shadow:0 0 20px #0ff6,inset 0 0 20px #00ffff1a}.score-card:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent,rgba(0,255,255,.1),transparent);animation:shimmer 3s infinite;pointer-events:none}@keyframes shimmer{0%{transform:translate(-100%) translateY(-100%) rotate(45deg)}to{transform:translate(100%) translateY(100%) rotate(45deg)}}.score-card-title{font-size:2.5em;color:#0ff;margin:0 0 20px;text-shadow:0 0 15px #0ff;font-weight:700}.score-card-player{display:flex;align-items:center;justify-content:center;gap:15px;margin:20px 0}.score-card-avatar{width:80px;height:80px;border:3px solid #0ff;border-radius:50%;background:#00ffff1a;display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 0 15px #00ffff80}.score-card-avatar canvas{width:100%;height:100%}.score-card-name{font-size:1.8em;color:#fff;font-weight:700;text-shadow:0 0 10px #0ff}.score-card-stats{display:flex;flex-direction:column;gap:15px;margin:25px 0}.stat-item{background:#00ffff1a;border:1px solid rgba(0,255,255,.3);border-radius:10px;padding:15px;text-align:center}.stat-value{font-size:2em;color:#0ff;font-weight:700;text-shadow:0 0 10px #0ff;display:block}.stat-label{color:#aaa;font-size:.9em;margin-top:5px}.score-card-footer{margin-top:25px;padding-top:20px;border-top:1px solid rgba(0,255,255,.3);color:#888;font-size:.9em}.share-buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:20px 0}.share-btn{padding:12px 20px;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:700;transition:all .2s;min-width:120px;display:flex;align-items:center;justify-content:center;gap:5px}.download-btn{background:linear-gradient(45deg,#4caf50,#45a049);color:#fff}.twitter-btn{background:linear-gradient(45deg,#1da1f2,#0d8bd9);color:#fff}.facebook-btn{background:linear-gradient(45deg,#4267b2,#365899);color:#fff}.reddit-btn{background:linear-gradient(45deg,#ff4500,#e03d00);color:#fff}.copy-btn{background:linear-gradient(45deg,#6c5ce7,#5f3dc4);color:#fff}.share-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px #0000004d}.share-btn:active{transform:translateY(0)}.viral-hashtags{text-align:center;margin-top:20px;padding:15px;background:#00ffff0d;border-radius:10px;border:1px solid rgba(0,255,255,.2)}.viral-hashtags p{color:#0ff;margin:0;font-size:1.1em;font-weight:700;text-shadow:0 0 5px #0ff}#shareScoreBtn:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 25px #0006}#socialShareSection{animation:slideInFromBottom .5s ease-out}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.share-modal-content{padding:15px;margin:10px}.score-card{padding:20px}.score-card-title{font-size:2em}.score-card-stats{gap:12px}.share-buttons{flex-direction:column;align-items:center}.share-btn{width:100%;max-width:250px}}#installBtn{transition:all .3s ease;border:2px solid #0ff!important}#installBtn:hover{background:#0cc!important;transform:scale(1.1);box-shadow:0 4px 15px #00ffff80!important}#installAppBtn{background:linear-gradient(45deg,#0ff,#0f8)!important;color:#000!important;font-weight:700;position:relative;overflow:hidden}#installAppBtn:hover{background:linear-gradient(45deg,#0cc,#0c7)!important;transform:translateY(-2px);box-shadow:0 4px 15px #0ff6}#installAppBtn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s}#installAppBtn:hover:before{left:100%}#powerupShop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99998;display:none;align-items:center;justify-content:center;background:#030308f0;padding:10px;box-sizing:border-box}.powerup-shop-content{width:min(620px,98%);max-height:98%;overflow-y:auto;text-align:center;background:#10101a;border:2px solid #ffd84d;border-radius:22px;padding:16px 22px;box-shadow:0 0 40px #ffd84d4d;box-sizing:border-box}.powerup-shop-title{margin:0 0 4px;font-size:24px;font-weight:900;color:#ffd84d;text-shadow:0 0 14px rgba(255,216,77,.6)}.powerup-shop-sub{margin:0 0 14px;font-size:14px;color:#9fb4c4}.powerup-choices{display:flex;gap:14px;justify-content:center}.powerup-card{flex:1 1 0;max-width:250px;min-height:150px;background:#191926;border:2px solid #2be8ff;border-radius:18px;padding:14px 10px;cursor:pointer;color:#2be8ff;display:flex;flex-direction:column;align-items:center;gap:6px;transition:transform .08s ease;box-shadow:0 5px #0a7f96}.powerup-card:active{transform:translateY(5px);box-shadow:none}.powerup-card svg,.powerup-card .powerup-icon{width:52px;height:52px;flex:0 0 auto}.powerup-icon{image-rendering:pixelated;object-fit:contain}.powerup-card-name{font-size:17px;font-weight:900;color:#fff;line-height:1.15}.powerup-card-blurb{font-size:12px;color:#9fb4c4;line-height:1.25}.powerup-card-owned{font-size:11px;font-weight:800;color:#35d17a}.powerup-card-cost{margin-top:auto;display:inline-flex;align-items:center;gap:5px;font-size:16px;font-weight:900;color:#ffd84d;background:#00000073;border-radius:999px;padding:5px 14px}.powerup-coin-icon{width:17px;height:17px;image-rendering:pixelated;vertical-align:middle}.powerup-card.unaffordable{border-color:#45455a;box-shadow:0 5px #22222c;cursor:not-allowed;opacity:.6}.powerup-card.unaffordable svg,.powerup-card.unaffordable .powerup-card-name{color:#7f7f95}.powerup-card-rarity{align-self:center;padding:3px 12px;border-radius:999px;font-size:10px;font-weight:900;letter-spacing:.1em;line-height:1.4;background:#00000059}.powerup-card.rarity-common{border-color:var(--ddz-common);box-shadow:0 5px #4a5257}.powerup-card.rarity-common{color:var(--ddz-common)}.powerup-card.rarity-common .powerup-card-rarity{color:#cfd8dc}.powerup-card.rarity-rare{border-color:var(--ddz-rare);box-shadow:0 5px #1d5f9e}.powerup-card.rarity-rare{color:var(--ddz-rare)}.powerup-card.rarity-rare .powerup-card-rarity{color:#9fd0ff}.powerup-card.rarity-epic{border-color:var(--ddz-epic);box-shadow:0 5px #6b33a8,0 0 22px #a06ef073}.powerup-card.rarity-epic{color:var(--ddz-epic)}.powerup-card.rarity-epic .powerup-card-rarity{color:#dcc2ff}.powerup-card.unaffordable.rarity-common,.powerup-card.unaffordable.rarity-rare,.powerup-card.unaffordable.rarity-epic{border-color:#45455a;box-shadow:0 5px #22222c}.powerup-card-shortfall{margin-top:3px;font-size:11px;font-weight:800;color:#ff9f6b;line-height:1.2}.powerup-card.unaffordable .powerup-card-cost{color:#d05b5b}.powerup-shop-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}.powerup-shop-titles{flex:1 1 auto;min-width:0}.powerup-shop-titles .powerup-shop-sub{margin-bottom:0}.powerup-run-pill{flex:0 0 auto;width:170px;display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-height:40px;padding:5px 10px;box-sizing:border-box;border-radius:14px;background:var(--ddz-panel-2)}.powerup-run-label{font-size:9px;font-weight:900;letter-spacing:.08em;color:var(--ddz-muted);white-space:nowrap}.powerup-run-icons{display:flex;gap:3px;flex-wrap:wrap}.powerup-run-icon{position:relative;width:18px;height:18px;flex-shrink:0}.powerup-run-icon .powerup-icon,.powerup-run-icon svg{width:18px;height:18px}.powerup-run-icon b{position:absolute;right:-3px;bottom:-3px;font-size:9px;line-height:1;padding:1px 3px;border-radius:6px;background:#0b1116;color:#ffd84d}.powerup-run-empty{font-size:11px;color:#5d7078;font-style:italic;white-space:nowrap}.powerup-coin-pill{flex-shrink:0;display:flex;align-items:center;gap:6px;min-height:40px;padding:0 14px;box-sizing:border-box;border-radius:999px;background:var(--ddz-panel-2);border:1px solid #ffd84d;color:#ffd84d;font-size:18px;font-weight:900}.powerup-card-stat{font-size:14px;font-weight:900;color:#fff;white-space:nowrap}.powerup-card-stat-next{color:#6fd94f}.powerup-shop-foot{display:flex;align-items:stretch;gap:12px;margin-top:14px}.powerup-next-wave{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:12px;padding:8px 14px;border-radius:14px;background:var(--ddz-panel-2);text-align:left}.powerup-next-label{display:flex;flex-direction:column;line-height:1.1;font-size:9px;font-weight:900;letter-spacing:.1em;color:var(--ddz-muted)}.powerup-next-label strong{font-size:16px;letter-spacing:0;color:#fff}.powerup-next-divider{width:1px;align-self:stretch;background:var(--ddz-line)}.powerup-next-counts{display:flex;align-items:center;gap:14px;flex-wrap:nowrap}.powerup-next-count{display:flex;align-items:center;gap:4px;font-size:15px;font-weight:900;color:#fff;white-space:nowrap}.zombie-icon{display:inline-block;flex-shrink:0;background-repeat:no-repeat;background-position:0 0;image-rendering:pixelated}.powerup-next-dot{width:18px;height:18px;border-radius:50%}.powerup-next-dot.dot-green{background:#4fae45;box-shadow:0 0 8px #5adc4673}.powerup-next-dot.dot-yellow{background:#e8c93a;box-shadow:0 0 8px #e8c93a73}.powerup-next-dot.dot-red{background:#e0493f;box-shadow:0 0 8px #e0493f80}.powerup-skip-btn{flex:0 0 auto;display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:6px 14px;border-radius:14px;border:1px solid #3a4a4f;background:none;color:var(--ddz-muted);font-family:inherit;font-size:13px;font-weight:800;cursor:pointer}.powerup-skip-btn:hover{color:#cfe4ee;border-color:#5a6c72}.powerup-skip-btn:active{transform:translateY(1px)}@media (max-height: 430px){.powerup-shop-content{padding:10px 16px}.powerup-shop-head{margin-bottom:8px}.powerup-shop-title{font-size:19px}.powerup-shop-sub{font-size:12px}.powerup-card{min-height:124px;padding:10px 8px}.powerup-card svg{width:36px;height:36px}.powerup-card-name{font-size:15px}.powerup-card-blurb{font-size:11px}.powerup-card-stat{font-size:13px}.powerup-shop-foot{margin-top:10px}.powerup-next-wave{padding:6px 12px}.powerup-skip-btn{min-height:44px}}@media (max-height: 400px){.powerup-shop-sub,.powerup-card-blurb{display:none}.powerup-card{min-height:0;gap:4px}.powerup-card svg,.powerup-card .powerup-icon{width:32px;height:32px}}#extraLifeModal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;display:none;align-items:center;justify-content:center;background:#030308eb;padding:12px;box-sizing:border-box}.extra-life-content{background:#10101a;border:2px solid #2be8ff;border-radius:22px;padding:20px 28px;width:min(560px,96%);max-height:96%;overflow-y:auto;text-align:center;box-shadow:0 0 40px #2be8ff59;box-sizing:border-box}.extra-life-title{margin:0 0 6px;font-size:28px;font-weight:900;color:#2be8ff;text-shadow:0 0 14px rgba(43,232,255,.7)}.extra-life-sub{margin:0 0 16px;font-size:16px;color:#cfefff}.extra-life-sub span,.extra-life-sub strong{color:#ffd84d;font-weight:800}.extra-life-options{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin:0 auto;width:min(360px,100%)}.extra-life-btn{width:100%}.extra-life-options.ad-first #watchAdBtn{order:-1}.extra-life-options.ad-first #useCrystalsBtn{opacity:.55}.extra-life-decline{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin:0 auto;padding:12px 24px;border:none;background:none;color:var(--ddz-muted);font-family:inherit;font-size:15px;font-weight:800;cursor:pointer;border-radius:14px;min-height:44px}.extra-life-decline:hover{color:#cfe4ee}.extra-life-decline:active{transform:translateY(1px)}.extra-life-btn .play-hook,.menu-btn .play-hook{width:30px;height:30px}.extra-life-btn .play-hook:after,.menu-btn .play-hook:after{width:12px;height:13px}.extra-life-balance{margin:14px 0 4px;font-size:14px;color:var(--ddz-muted)}.extra-life-footer{margin-top:4px}@media (max-height: 460px){.extra-life-content{padding:12px 20px}.extra-life-title{font-size:22px}.extra-life-sub{font-size:14px;margin-bottom:10px}.extra-life-balance{margin:8px 0 2px}}.ad-stub-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100000;display:flex;align-items:center;justify-content:center;background:#000000f2}.ad-stub-box{text-align:center;color:#fff;padding:24px 32px;border:2px dashed #556;border-radius:16px}.ad-stub-tag{font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:#8a8a9a}.ad-stub-timer{font-size:56px;font-weight:900;color:#35d17a;line-height:1.2}.ad-stub-note{font-size:14px;color:#cfefff;margin-bottom:14px}.ad-stub-cancel{background:none;border:1px solid #556;border-radius:10px;color:#9aa;padding:10px 22px;min-height:44px;font-size:14px;cursor:pointer}
