@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@700;800;900&display=swap');
:root{--ink:#fff;--purple:#8c54ff;--pink:#ff4fa3;--cyan:#22dffc;--panel:rgba(24,15,61,.78)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Nunito,system-ui,sans-serif;color:var(--ink);overflow-x:hidden}body{background:radial-gradient(circle at 50% 10%,#3b247a 0,#190f43 38%,#0d0926 100%);display:grid;place-items:center;padding:16px;touch-action:manipulation}.ambient{position:fixed;width:340px;height:340px;border-radius:50%;filter:blur(90px);opacity:.18;pointer-events:none}.ambient-one{background:#a44bff;top:-120px;left:-100px}.ambient-two{background:#04d9ff;right:-150px;bottom:-120px}.game-shell{width:min(100%,660px);position:relative}.topbar{height:74px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:9px;text-shadow:0 4px 18px #000}.brand h1{font-size:clamp(26px,7vw,40px);font-weight:900;font-style:italic;margin:0;letter-spacing:-2px}.brand h1 span{color:#ffc943}.brand-gem{font-size:35px;color:#54f0ff;filter:drop-shadow(0 0 8px #22dffc)}.icon-button{width:44px;height:44px;border:1px solid #705da0;background:#2b2055bb;color:#fff;border-radius:13px;font:900 20px Nunito;box-shadow:inset 0 1px #ffffff22;cursor:pointer}.hud{display:grid;grid-template-columns:1fr 1.35fr 1fr;gap:10px}.hud-card,.level-card{background:linear-gradient(180deg,#352666dd,#211748dd);border:1px solid #705ba1;border-radius:16px;text-align:center;padding:9px;box-shadow:0 8px 20px #08041566,inset 0 1px #ffffff22}.hud small,.final-score small{display:block;font-size:10px;letter-spacing:1.4px;color:#a99fc5}.hud strong{font-size:25px}.moves strong{color:#ffc943}.level-card{background:linear-gradient(180deg,#814ce5,#5428a5)}.progress{height:6px;background:#2c1762;border-radius:8px;margin:4px 5px 0;overflow:hidden}.progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#54f7fc,#fcf379);transition:.4s}.goal-strip{display:flex;align-items:center;justify-content:center;gap:15px;margin:12px auto;color:#c3b9df;font-size:11px;letter-spacing:1.3px}.goals{display:flex;gap:12px}.goal{display:flex;align-items:center;gap:5px;color:#fff;font-size:13px;letter-spacing:0}.goal .mini{width:22px;height:22px}.board-wrap{position:relative;background:linear-gradient(155deg,#43307e,#20164c);border:2px solid #795db2;border-radius:23px;padding:10px;box-shadow:0 18px 45px #05020f88,inset 0 2px 2px #ffffff24}.board{display:grid;grid-template-columns:repeat(8,1fr);gap:5px;padding:5px;background:#120c33;border-radius:15px;box-shadow:inset 0 0 26px #05020f}.cell{aspect-ratio:1;border:0;border-radius:10px;background:#20164a;display:grid;place-items:center;padding:5px;position:relative;cursor:pointer;transition:transform .16s,background .16s}.cell:hover{background:#322367}.cell.selected{background:#5d429e;outline:2px solid white;transform:scale(.92)}.gem{width:88%;height:88%;position:relative;filter:drop-shadow(0 4px 2px #03010a88) drop-shadow(0 0 6px var(--glow));transition:transform .18s,opacity .18s;clip-path:polygon(50% 0,90% 22%,100% 66%,72% 100%,28% 100%,0 66%,10% 22%);background:linear-gradient(145deg,#fff9 0 10%,var(--light) 11% 25%,var(--color) 27% 68%,var(--dark) 70%)}.gem::after{content:"";position:absolute;inset:14% 18% 50%;background:#fff8;clip-path:polygon(10% 0,100% 0,55% 100%,0 70%)}.gem.type-1{border-radius:50%;clip-path:polygon(50% 0,89% 12%,100% 50%,81% 88%,50% 100%,16% 86%,0 50%,13% 14%)}.gem.type-2{clip-path:polygon(50% 0,94% 26%,82% 85%,50% 100%,18% 85%,6% 26%)}.gem.type-3{border-radius:32%;clip-path:none;transform:rotate(45deg) scale(.72)}.gem.type-4{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}.gem.special-row::before,.gem.special-col::before{content:"";position:absolute;background:#fff;box-shadow:0 0 5px #fff;z-index:2}.gem.special-row::before{left:3%;right:3%;height:16%;top:42%}.gem.special-col::before{top:3%;bottom:3%;width:16%;left:42%}.gem.bomb{border-radius:50%;clip-path:none;background:conic-gradient(#ffef75,#fb59c8,#61eaff,#9c5cff,#ffef75)}.gem.bomb::after{inset:24%;border-radius:50%;background:#241642}.popping{animation:pop .28s ease forwards}.hint{animation:hint 1s ease infinite}.falling{animation:fall .28s ease}.combo{position:absolute;z-index:4;left:50%;top:45%;transform:translate(-50%,-50%) scale(0);font-size:37px;font-weight:900;color:#fff;text-shadow:0 3px #7d2bbb,0 0 16px #ff7bd0;pointer-events:none}.combo.show{animation:combo .85s ease}.power-button{margin:15px auto 7px;display:flex;align-items:center;gap:10px;border:1px solid #705da0;border-radius:15px;padding:8px 15px;color:#fff;background:#2b2055;cursor:pointer}.power-button span{font-size:25px;color:#55eaff}.power-button div{text-align:left}.power-button b{display:block;font-size:11px}.power-button small{font-size:9px;color:#aaa1c5}footer p{text-align:center;color:#81789d;font-size:11px}.modal{position:fixed;inset:0;z-index:10;background:#09051bd9;display:grid;place-items:center;padding:20px;backdrop-filter:blur(8px)}.modal.hidden{display:none}.modal-card{text-align:center;width:min(100%,380px);padding:35px 25px;background:linear-gradient(160deg,#4b3188,#201449);border:2px solid #8e6ac8;border-radius:26px;box-shadow:0 24px 60px #000}.modal-gem{font-size:70px;color:#62efff;filter:drop-shadow(0 0 16px #32d7ff)}.modal-card p{font-size:11px;letter-spacing:2px;color:#d5c9f1}.modal-card h2{font-size:30px;margin:7px 0 22px}.final-score{background:#170e3a;border-radius:15px;padding:12px}.final-score strong{display:block;font-size:34px;color:#ffdf58}.stars{font-size:40px;color:#ffcf36;letter-spacing:8px;margin:12px}.primary-button{width:100%;padding:15px;border:0;border-radius:14px;background:linear-gradient(180deg,#ff65b5,#d72d89);box-shadow:0 5px 0 #891d65;color:#fff;font:900 14px Nunito;cursor:pointer}.paused .board{filter:blur(4px);pointer-events:none}
.cell.tnt-cell{background:radial-gradient(circle,#70383e,#271638);box-shadow:inset 0 0 10px #ff572266}.gem.tnt{clip-path:none;border-radius:9px;width:84%;height:76%;background:linear-gradient(90deg,#c82127 0 28%,#ec3a2f 29% 70%,#a9161e 71%);border:2px solid #ff7264;box-shadow:inset 0 3px #ff9c8d,0 4px 0 #650e17,0 0 13px #ff4d36;transform:rotate(-4deg);display:grid;place-items:center;overflow:visible}.gem.tnt::after{display:none}.gem.tnt b{font:900 clamp(7px,2vw,12px) Nunito;color:#fff7cf;letter-spacing:-.5px;text-shadow:0 1px #710a0a;z-index:2}.gem.tnt span{position:absolute;width:8px;height:37%;right:5%;top:-27%;border:3px solid #c9ad68;border-bottom:0;border-left-color:transparent;border-radius:50% 50% 0 0;transform:rotate(18deg)}.gem.tnt span::after{content:"✦";position:absolute;right:-7px;top:-12px;color:#fff36b;font-size:16px;text-shadow:0 0 7px #ff6a00;animation:spark .55s alternate infinite}.tnt-cell:hover .tnt{transform:rotate(3deg) scale(1.08)}
@keyframes pop{to{transform:scale(1.7) rotate(25deg);opacity:0}}@keyframes fall{from{transform:translateY(-70px);opacity:.2}}@keyframes hint{50%{transform:scale(1.17);filter:drop-shadow(0 0 14px white)}}@keyframes combo{0%{transform:translate(-50%,-50%) scale(.2);opacity:0}35%{transform:translate(-50%,-50%) scale(1.2);opacity:1}100%{transform:translate(-50%,-70%) scale(.8);opacity:0}}@keyframes spark{to{transform:scale(1.45) rotate(30deg);filter:brightness(1.7)}}
@media(max-width:480px){body{padding:7px}.topbar{height:60px}.board-wrap{padding:7px;border-radius:18px}.board{gap:3px;padding:4px}.cell{padding:3px;border-radius:7px}.hud strong{font-size:20px}.goal-strip{margin:8px}.power-button{margin-top:10px}.level-map{padding-inline:12px}.level-node{width:57px;height:57px}.map-screen{padding-top:8px}}
.level-map{flex-direction:column}
.fortune-wheel>span{padding-top:6px}.prize-pack{width:52px;height:58px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;transform:rotate(calc(var(--i)*-45deg - 22.5deg));filter:drop-shadow(0 3px 3px #21082f)}.prize-pack small{min-width:30px;margin-top:2px;padding:1px 4px;border-radius:7px;background:#180728dd;border:1px solid #fff6;color:#fff;font:900 8px Nunito;line-height:11px;box-shadow:0 2px 4px #17051f}.prize-art{position:relative;display:grid;place-items:center;width:39px;height:39px;font-style:normal}.gem-art{width:37px;height:37px;clip-path:polygon(50% 0,91% 23%,100% 62%,70% 100%,30% 100%,0 62%,9% 23%);background:linear-gradient(145deg,#fff 0 9%,#9effff 10% 25%,#26dff4 27% 57%,#536eff 59% 78%,#2440b1 80%);box-shadow:inset 0 0 8px #fff;filter:drop-shadow(0 0 7px #8cffff) drop-shadow(0 3px 1px #17316f)}.gem-art::before{content:"";position:absolute;inset:7px 8px 17px;background:#fff9;clip-path:polygon(0 0,100% 0,62% 100%,15% 70%)}.gold-gem{background:linear-gradient(145deg,#fff 0 9%,#fff697 10% 25%,#ffd62f 27% 57%,#ff8b23 59% 78%,#b94b18 80%);filter:drop-shadow(0 0 9px #fff466) drop-shadow(0 3px 1px #8b3215);animation:jackpot-pulse .8s ease-in-out infinite alternate}.tnt-art{width:39px;height:34px;margin-top:3px;border-radius:7px;background:repeating-linear-gradient(90deg,#b51724 0 10px,#ee3940 10px 18px);border:2px solid #ff8b72;box-shadow:inset 0 3px #ff9e8c,0 3px 0 #6d101e,0 0 9px #ff493d}.tnt-art::before{content:"";position:absolute;width:14px;height:12px;right:-2px;top:-10px;border:3px solid #e5c36c;border-left:0;border-bottom:0;border-radius:0 10px 0 0}.tnt-art::after{content:"✦";position:absolute;right:-10px;top:-17px;color:#fff45c;font-size:16px;text-shadow:0 0 7px #ff5b19;animation:sparkle .5s alternate infinite}.tnt-art b{padding:2px;background:#fff0bd;color:#961b28;font:900 8px Nunito;transform:rotate(-4deg)}.diagonal-art{border-radius:11px;background:linear-gradient(145deg,#244aa0,#182358);border:2px solid #8df4ff;box-shadow:inset 0 0 10px #35dcff88,0 0 9px #6cecff}.diagonal-art b{position:absolute;color:#61efff;font-size:16px;text-shadow:0 0 5px white}.diagonal-art b:first-child{left:3px;bottom:1px}.diagonal-art b:nth-child(2){right:3px;top:0;color:#ff8fd3}.diagonal-art::after{content:"↗";position:absolute;font:900 26px Nunito;color:#fff;text-shadow:0 0 5px #fff}.moves-art{border-radius:50%;background:linear-gradient(145deg,#fff89b,#ffc52f 55%,#ef731c);border:3px solid #fff4ac;color:#762453;font:900 17px Nunito;box-shadow:inset 0 -4px #d75c20,0 0 10px #ffe050,0 3px 2px #7e2a29}.moves-art::after{content:"";position:absolute;inset:3px;border:1px dashed #b85237;border-radius:50%}@keyframes jackpot-pulse{to{transform:scale(1.13);filter:drop-shadow(0 0 14px #fff)}}
.map-menu-buttons{display:flex;justify-content:center;align-items:stretch;gap:8px;margin-top:11px}.map-menu-buttons .shop-button{margin-top:0}.wheel-button{display:flex;flex-direction:column;justify-content:center;position:relative;padding:6px 14px 6px 38px;border:1px solid #64eaff;border-radius:20px;background:linear-gradient(180deg,#237bc6,#4631a8);box-shadow:0 4px 0 #1c276f;color:#fff;font-family:Nunito;cursor:pointer}.wheel-button>span{position:absolute;left:12px;font-size:21px;color:#fff474;animation:sparkle 1.2s ease-in-out infinite}.wheel-button b{font-size:10px}.wheel-button small{font-size:6px;color:#9ff7ff;letter-spacing:.6px}.wheel-button.claimed{filter:grayscale(.65);opacity:.7}.fortune-card{position:relative;width:min(96vw,450px);overflow:hidden;background:radial-gradient(circle at 50% 30%,#61399d,#251448 72%);border-color:#b982ff}.fortune-card::before{content:"";position:absolute;inset:-50%;background:conic-gradient(transparent,#8df7ff17,transparent,#ffef8517,transparent);animation:shop-spin 14s linear infinite;pointer-events:none}.fortune-card>*{position:relative}.fortune-card h2{margin:3px 0;font-size:31px}.fortune-subtitle{margin:0;color:#c8b9df;font-size:11px}.wheel-stage{position:relative;width:min(72vw,290px);aspect-ratio:1;margin:18px auto 10px}.fortune-wheel{position:absolute;inset:4%;border-radius:50%;border:8px solid #ffe4a0;background:conic-gradient(#ff5688 0 45deg,#7654ed 45deg 90deg,#25cce5 90deg 135deg,#ffb637 135deg 180deg,#ff5688 180deg 225deg,#7654ed 225deg 270deg,#25cce5 270deg 315deg,#ffb637 315deg);box-shadow:0 0 0 5px #9d5ced,0 10px 30px #0c041d,inset 0 0 30px #2b0d5777;transition:transform 4.2s cubic-bezier(.12,.72,.08,1)}.fortune-wheel::before{content:"";position:absolute;inset:5px;border-radius:50%;border:2px dashed #fff8}.fortune-wheel>span{position:absolute;left:50%;top:50%;width:34px;height:50%;margin-left:-17px;padding-top:13px;transform-origin:50% 0;transform:rotate(calc(var(--i)*45deg + 22.5deg));text-align:center;color:#fff;font:900 13px Nunito;text-shadow:0 2px 3px #391259}.wheel-hub{position:absolute;left:50%;top:50%;width:55px;height:55px;transform:translate(-50%,-50%);display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle,#fff7a8,#ffb92e 55%,#b74d1d);border:5px solid #fff0a7;color:#7e2678;font-style:normal;font-size:24px;box-shadow:0 4px 12px #260c42}.wheel-pointer{position:absolute;z-index:3;left:50%;top:-7px;transform:translateX(-50%);font-size:35px;color:#fff4a2;text-shadow:0 3px #9f411b,0 0 12px #fff85e}.wheel-prize{min-height:35px;padding:8px;border-radius:12px;background:#160d32;color:#d3c6e7;font-size:11px}.wheel-prize.won{color:#fff084;font-size:16px;font-weight:900;animation:shop-pop .5s ease}.spin-button{margin-top:12px}.spin-button:disabled{background:#4a3d62;box-shadow:0 5px 0 #261d38;color:#958ba5}.next-spin{display:block;margin-top:10px;color:#9487aa;font-size:8px}.fortune-card.spinning .wheel-pointer{animation:pointer-tick .16s linear infinite}@keyframes sparkle{50%{transform:scale(1.35) rotate(20deg);filter:drop-shadow(0 0 7px #fff)}}@keyframes pointer-tick{50%{transform:translateX(-50%) rotate(-12deg)}}
@media(max-width:480px){.map-menu-buttons{flex-direction:column;align-items:center}.map-menu-buttons>button{width:205px;min-height:38px}}
.fortune-wheel>span .prize-symbol{display:grid;place-items:center;width:28px;height:28px;margin-bottom:1px;font-style:normal;font-weight:900;line-height:1;filter:drop-shadow(0 3px 2px #431540)}.fortune-wheel>span .crystal-icon{font-size:27px;color:#7cffff;text-shadow:0 0 7px #fff;background:linear-gradient(145deg,#fff,#52edff 40%,#6173ff);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.fortune-wheel>span .tnt-icon{font-size:24px}.fortune-wheel>span .diagonal-icon{border:2px solid #dffcff;border-radius:8px;background:#174f9c;color:#fff;font-size:22px;box-shadow:inset 0 0 7px #54edff,0 0 6px #fff8}.fortune-wheel>span .moves-icon{border-radius:50%;background:linear-gradient(#fff27c,#ff9a27);border:2px solid #fff6b0;color:#7c2950;font-size:13px;box-shadow:0 0 8px #ffe359}.fortune-wheel .jackpot-slice .crystal-icon{font-size:31px;filter:drop-shadow(0 0 8px #fff36e);background:linear-gradient(#fff,#fff45d,#ff9f25);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.fortune-wheel>span>small{padding:1px 4px;border-radius:6px;background:#220e4b99;color:#fff;font-size:8px;line-height:11px;box-shadow:0 1px 3px #21082f}
.wheel-button{overflow:visible;padding:8px 35px 8px 44px;border:2px solid #ffe477;background:linear-gradient(115deg,#ff4f9b,#8b46e9 55%,#27bde4);box-shadow:0 5px 0 #59237f,0 0 18px #ff69be77;animation:wheel-invite 2.2s ease-in-out infinite}.wheel-button .wheel-btn-icon{position:absolute;left:9px;font-size:25px;filter:drop-shadow(0 2px #5c1c6f)}.wheel-button>b{font-size:11px;text-shadow:0 2px #4b176e}.wheel-button small{padding:2px 6px;border-radius:8px;background:#fff1a8;color:#7a2a75;font-weight:900}.wheel-button>i{position:absolute;right:-6px;top:-7px;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#ffda36;color:#77244f;font:900 12px Nunito;border:2px solid white;box-shadow:0 0 10px #fff16f}.wheel-button.claimed{animation:none}.wheel-button.claimed>i{display:none}.fortune-card{width:min(96vw,480px);padding-top:24px;background:radial-gradient(circle at 50% 32%,#7336aa 0,#35175f 48%,#160a32 100%);border:3px solid #d8a3ff;box-shadow:0 0 0 6px #3a1767,0 28px 90px #000,0 0 45px #bd50ff66}.daily-ribbon{display:inline-block;margin-bottom:6px;padding:5px 18px;border-radius:20px;background:linear-gradient(90deg,#ffcc3c,#fff19a,#ffb82d);color:#682258;font:900 10px Nunito;letter-spacing:1px;box-shadow:0 3px 0 #a24e21,0 0 17px #ffd74e88}.fortune-card h2{font-size:34px;margin:0;background:linear-gradient(#fff,#f1c7ff);background-clip:text;-webkit-background-clip:text;color:transparent;text-shadow:none}.fortune-card .shop-kicker{margin:5px 0 0!important}.jackpot-banner{width:245px;margin:10px auto 0;display:flex;align-items:center;justify-content:center;gap:9px;padding:6px;border:1px solid #ffd95e;border-radius:11px;background:linear-gradient(90deg,#512064,#842e70,#512064);color:#ffd943;box-shadow:inset 0 1px #fff3}.jackpot-banner span{animation:sparkle .8s alternate infinite}.jackpot-banner small{display:block;font-size:6px;color:#eabfe8;letter-spacing:1px}.jackpot-banner b{font-size:12px}.wheel-stage{width:min(76vw,315px);margin-top:11px}.wheel-lights{position:absolute;inset:0;border-radius:50%;background:repeating-conic-gradient(#fff4a5 0 3deg,transparent 3deg 15deg);filter:drop-shadow(0 0 5px #fff064);animation:lights 1s steps(2) infinite}.wheel-lights::after{content:"";position:absolute;inset:8px;border-radius:50%;background:#4d227d}.fortune-wheel{inset:7%;border:7px solid #ffdc62;background:conic-gradient(#ff477f 0 45deg,#704be8 45deg 90deg,#18c4d9 90deg 135deg,#ff9f21 135deg 180deg,#ee3d85 180deg 225deg,#704be8 225deg 270deg,#18bcd8 270deg 315deg,#ff9f21 315deg);box-shadow:0 0 0 3px #fff0a0,0 12px 32px #0b0219,inset 0 0 25px #280c4e99}.fortune-wheel>span{width:44px;margin-left:-22px;padding-top:9px;display:flex;flex-direction:column;align-items:center;color:#fff}.fortune-wheel>span>b{font-size:19px;line-height:20px;filter:drop-shadow(0 2px 2px #4a174d)}.fortune-wheel>span>small{font-size:8px;font-weight:900}.fortune-wheel .jackpot-slice b{color:#fff672;filter:drop-shadow(0 0 7px #fff)}.wheel-hub{width:66px;height:66px;flex-direction:column;background:radial-gradient(circle at 35% 25%,#fff8a8,#ffc12e 50%,#d76a1e);border:5px solid #fff1ae;box-shadow:0 0 0 3px #a7484a,0 5px 15px #300d43}.wheel-hub em{font:900 8px Nunito;color:#7f285d}.wheel-hub b{font-size:24px;line-height:20px}.wheel-pointer{top:-11px;font-size:42px;z-index:5}.wheel-prize{border:1px solid #704e99;background:linear-gradient(90deg,#180a35,#2b1452,#180a35);color:#e8d8f8}.wheel-prize span{color:#ffdd52}.spin-button{padding:11px;background:linear-gradient(180deg,#fff079,#ffb72b 55%,#f47a22);box-shadow:0 6px 0 #a23c24,0 0 25px #ffcc4777;color:#682251;font-size:15px;text-shadow:0 1px #fff8;animation:spin-cta 1.5s ease-in-out infinite}.spin-button small{display:block;font-size:7px;letter-spacing:1.5px;color:#a34445}.spin-button span{float:right;font-size:20px}.spin-button:disabled{animation:none}.wheel-prize.won{border-color:#fff078;background:linear-gradient(90deg,#5d205a,#943967,#5d205a);box-shadow:0 0 18px #ffdb50}.confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden}.confetti i{position:absolute;top:-15px;width:8px;height:14px;background:var(--c);left:var(--x);animation:confetti-fall 1.8s ease-in forwards;animation-delay:var(--d);transform:rotate(var(--r))}@keyframes wheel-invite{50%{transform:translateY(-2px) scale(1.025);box-shadow:0 7px 0 #59237f,0 0 26px #ff69beaa}}@keyframes spin-cta{50%{transform:scale(1.025);filter:brightness(1.1)}}@keyframes lights{50%{transform:rotate(7.5deg)}}@keyframes confetti-fall{to{top:105%;transform:translateX(35px) rotate(540deg)}}
.shop-card{padding:28px 24px 22px;overflow:hidden;background:radial-gradient(circle at 50% -15%,#9d54e8 0,#4c277f 35%,#211443 78%);border-color:#c18cff;box-shadow:0 25px 80px #05010de6,0 0 35px #a64dff55}.shop-glow{position:absolute;width:300px;height:150px;left:50%;top:-100px;transform:translateX(-50%);border-radius:50%;background:#ff85ea88;filter:blur(35px);pointer-events:none}.shop-crown{position:relative;margin:auto;width:62px;height:62px;display:grid;place-items:center;border-radius:20px;transform:rotate(45deg);background:linear-gradient(145deg,#81f6ff,#5880ff 50%,#a54fff);border:2px solid #c9ffff;color:#fff;font-size:32px;box-shadow:0 0 25px #57eaff,0 7px 18px #16072c}.shop-crown::after{content:"";position:absolute;inset:8px;border:1px solid #fff7;border-radius:14px}.shop-crown+*{margin-top:15px!important}.shop-kicker{color:#ffd86b!important;font-weight:900!important;margin-bottom:2px!important}.shop-card>h2{margin:1px 0 2px;font-size:29px;text-shadow:0 3px #32145f}.shop-subtitle{margin:0 0 12px!important;color:#d9cced!important;letter-spacing:0!important;font-size:11px!important}.shop-card .wallet{display:flex;justify-content:space-between;align-items:center;width:190px;margin:12px auto 18px;padding:8px 13px;background:linear-gradient(180deg,#171033,#0d0921);border:1px solid #675494;box-shadow:inset 0 1px #fff2,0 4px 10px #100724}.wallet small{font-size:8px;color:#9b8db8;letter-spacing:1px}.wallet span{font-size:17px;color:#65f3ff;text-shadow:0 0 9px #37dcff}.shop-card .shop-grid{gap:12px;margin-top:0}.shop-grid .shop-item{position:relative;padding:12px 10px 10px;overflow:hidden;background:linear-gradient(165deg,#34235c,#160e32);border:1px solid #765b9f;box-shadow:0 7px 15px #0a041a;transition:transform .2s,border-color .2s}.shop-grid .shop-item:hover{transform:translateY(-5px);border-color:#d2b7ff}.shop-item::before{content:"";position:absolute;width:120px;height:120px;left:50%;top:5px;transform:translateX(-50%);border-radius:50%;background:var(--item-glow);filter:blur(35px);opacity:.32}.tnt-item{--item:#ff725f;--item-glow:#ff452c}.diagonal-item{--item:#67eaff;--item-glow:#29dfff}.moves-item{--item:#ffd858;--item-glow:#ffb52c}.shop-item .rarity{position:absolute;left:7px;top:7px;padding:3px 6px;border-radius:7px;background:color-mix(in srgb,var(--item) 23%,#21143f);color:var(--item);font-size:6px;font-weight:900;letter-spacing:.7px}.shop-item .owned{position:absolute;right:7px;top:8px;color:#a99abb;font-size:7px}.shop-item .owned b{color:#fff}.shop-item .shop-icon{position:relative;width:62px;height:62px;margin:19px auto 7px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle,#fff4 0,#ffffff0c 60%,transparent 62%);font-size:35px;filter:drop-shadow(0 4px 4px #090314);z-index:1}.shop-item .shop-icon i{position:absolute;inset:3px;border:1px dashed var(--item);border-radius:50%;animation:shop-spin 9s linear infinite}.shop-item h3{position:relative;font-size:13px;margin:4px 0;color:#fff}.shop-item p{position:relative;min-height:42px;margin:3px 0 10px!important;font-size:8px!important;line-height:1.35;color:#b9adcc!important}.shop-item button{position:relative;padding:7px 6px;background:linear-gradient(180deg,var(--item),color-mix(in srgb,var(--item) 58%,#7b204c));color:#21102e;box-shadow:0 4px 0 color-mix(in srgb,var(--item) 35%,#391031);transition:.15s}.shop-item button:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.14)}.shop-item button:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 #32102d}.shop-item button small{display:block;font-size:6px;opacity:.7}.shop-item button strong{font-size:13px}.shop-item button:disabled{filter:grayscale(.75);opacity:.45;cursor:not-allowed}.shop-message{margin:13px 0 5px!important;font-weight:900;min-height:15px}.shop-message.success{animation:shop-pop .35s ease}.shop-tip{padding:9px;border-radius:10px;background:#140d2e;color:#9f91b8;font-size:8px}.shop-tip::first-letter{color:#5ceaff}@keyframes shop-spin{to{transform:rotate(360deg)}}@keyframes shop-pop{50%{transform:scale(1.08);color:#65ffbf}}
@media(max-width:520px){.shop-card{padding:24px 16px 16px}.shop-card>h2{font-size:24px}.shop-grid .shop-item{grid-template-columns:52px 1fr 85px;padding:10px}.shop-item .shop-icon{grid-row:1/3;margin:12px 0;width:50px;height:50px;font-size:27px}.shop-item h3{grid-column:2;margin-top:15px}.shop-item button{grid-column:3;grid-row:1/3}.shop-item .rarity,.shop-item .owned{top:5px}.shop-item .owned{right:96px}}
.hidden-screen{display:none!important}.map-screen{width:min(100%,660px);min-height:calc(100vh - 32px);position:relative;padding:18px 0 70px;overflow:hidden}.map-header{text-align:center;position:sticky;top:0;z-index:5;padding:10px 15px 16px;background:linear-gradient(180deg,#1a1048 70%,transparent);border-radius:22px}.map-header .brand{justify-content:center}.map-header p{margin:1px 0 12px;color:#c8bceb;font-size:13px;letter-spacing:1px}.map-stats{display:flex;justify-content:center;gap:10px}.map-stats span{min-width:85px;padding:7px 13px;border:1px solid #775db0;border-radius:20px;background:#251854;color:#ffd84b}.level-map{position:relative;display:flex;flex-direction:column-reverse;gap:21px;padding:26px 15%;z-index:2}.level-map::before{content:"";position:absolute;top:35px;bottom:35px;left:50%;width:13px;transform:translateX(-50%);border-radius:20px;background:repeating-linear-gradient(180deg,#7156ba 0 18px,#a58add 18px 25px);box-shadow:0 0 0 6px #2b1a5e;z-index:-1}.level-row{display:flex}.level-row:nth-child(4n+1){justify-content:flex-start}.level-row:nth-child(4n+2),.level-row:nth-child(4n){justify-content:center}.level-row:nth-child(4n+3){justify-content:flex-end}.level-node{width:64px;height:64px;border-radius:50%;border:4px solid #c4a3ff;background:linear-gradient(145deg,#9a64ff,#5a2eb6);color:#fff;font:900 21px Nunito;box-shadow:0 6px 0 #341873,0 8px 18px #080315;position:relative;cursor:pointer;transition:.2s}.level-node:hover:not(:disabled){transform:scale(1.1)}.level-node.current{background:linear-gradient(145deg,#ffdb50,#ff8d39);border-color:#fff1a2;box-shadow:0 6px 0 #a44517,0 0 24px #ffc13d}.level-node.completed{background:linear-gradient(145deg,#50e9cf,#1785c8);border-color:#aafff0}.level-node:disabled{filter:grayscale(.7);background:#30264b;border-color:#51446c;color:#7d7294;box-shadow:0 5px 0 #171125}.node-stars{position:absolute;left:50%;bottom:-19px;transform:translateX(-50%);white-space:nowrap;color:#ffd83d;font-size:13px;text-shadow:0 1px #8a4d00}.node-lock{font-size:18px}.map-cloud{position:fixed;width:210px;height:90px;border-radius:50%;background:#8c69d822;filter:blur(8px);pointer-events:none}.cloud-left{left:-80px;bottom:13%}.cloud-right{right:-80px;top:32%}.footer-actions{display:flex;justify-content:center;gap:8px}.footer-actions .power-button{margin-inline:0}.secondary-button{margin-top:14px;border:0;background:transparent;color:#bfb0df;font:800 11px Nunito;letter-spacing:1px;cursor:pointer}
.shop-button{margin-top:11px;padding:9px 18px;border:1px solid #ffcb65;border-radius:20px;background:linear-gradient(#8e51ed,#5930ad);color:#fff;font:900 11px Nunito;box-shadow:0 4px 0 #35156f;cursor:pointer}.perk-bar{display:flex;justify-content:center;gap:7px;margin-top:12px}.perk-use{width:96px;min-height:58px;position:relative;border:1px solid #715ca4;border-radius:13px;background:linear-gradient(#362769,#211749);color:#fff;cursor:pointer}.perk-use>span{font-size:20px;font-weight:900;color:#57edff}.perk-use>b{position:absolute;right:5px;top:4px;min-width:19px;border-radius:10px;background:#ffcc3a;color:#391d3c;font-size:11px}.perk-use>small{display:block;font-size:8px;margin-top:3px}.perk-use:disabled{filter:grayscale(1);opacity:.45}.perk-use.active{outline:3px solid #62efff;box-shadow:0 0 18px #39e2ff}.shop-card{position:relative;width:min(96vw,560px)}.close-button{position:absolute;right:14px;top:12px;border:0;background:transparent;color:#fff;font-size:29px;cursor:pointer}.wallet{display:inline-block;padding:7px 18px;border-radius:18px;background:#171035;color:#65edff}.shop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:18px}.shop-grid article{padding:13px 8px;background:#1a103c;border:1px solid #665095;border-radius:15px}.shop-icon{font-size:28px}.shop-grid h3{font-size:12px;margin:7px 0}.shop-grid p{font-size:9px;letter-spacing:0;min-height:36px}.shop-grid button{width:100%;border:0;border-radius:9px;padding:9px;background:linear-gradient(#ffcb43,#e28a1b);color:#40213b;font:900 11px Nunito;cursor:pointer}.shop-message{min-height:18px;color:#ffdd62!important;letter-spacing:0!important}.tutorial{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:20px;background:#08041cdd;backdrop-filter:blur(7px)}.tutorial.hidden{display:none}.tutorial-card{width:min(100%,410px);padding:30px;text-align:center;border:2px solid #8e6dca;border-radius:25px;background:linear-gradient(155deg,#503493,#24164f);box-shadow:0 25px 70px #000}.tutorial-icon{font-size:58px;color:#5ceaff;filter:drop-shadow(0 0 12px #31d8ff)}.tutorial-card small{letter-spacing:2px;color:#c6b7e6}.tutorial-card h2{margin:8px 0}.tutorial-card p{min-height:58px;color:#d2c8e9;font-size:13px;line-height:1.5}.tutorial-dots{margin:15px}.tutorial-dots i{display:inline-block;width:8px;height:8px;margin:3px;border-radius:50%;background:#665587}.tutorial-dots i.on{background:#ffcf44;box-shadow:0 0 7px #ffc638}.reward{color:#66efff;font-size:18px;font-weight:900;margin:8px}
@media(max-width:520px){.shop-grid{grid-template-columns:1fr}.shop-card{max-height:92vh;overflow:auto}.shop-grid article{display:grid;grid-template-columns:45px 1fr 80px;align-items:center;text-align:left}.shop-grid article p{display:none}.map-stats span{min-width:auto;padding-inline:9px;font-size:11px}.perk-use{width:31%}}
.fortune-wheel>span{padding-top:38px}
.level-map{flex-direction:column}
/* Premium crystal shop button */
.map-menu-buttons .shop-button{position:relative;display:flex;align-items:center;gap:10px;margin-top:0;padding:5px 16px 5px 7px;overflow:visible;border:2px solid #ffd86b;border-radius:22px;background:linear-gradient(180deg,#a55aff 0%,#6c2bc9 58%,#4a1b9b 100%);color:#fff;font:900 11px Nunito;box-shadow:inset 0 1px #fff8,0 5px 0 #35106f,0 8px 18px #16052db5,0 0 16px #c25cff55;cursor:pointer;transition:transform .18s,filter .18s,box-shadow .18s}
.map-menu-buttons .shop-button::after{content:"";position:absolute;inset:2px;border:1px solid #fff3;border-radius:18px;pointer-events:none}
.map-menu-buttons .shop-button:hover{transform:translateY(-2px) scale(1.035);filter:brightness(1.12);box-shadow:inset 0 1px #fff9,0 7px 0 #35106f,0 12px 22px #16052dcc,0 0 24px #ffcc62aa}
.map-menu-buttons .shop-button:active{transform:translateY(3px);box-shadow:inset 0 1px #fff7,0 2px 0 #35106f,0 5px 10px #16052d}
.shop-button-icon{position:relative;flex:0 0 43px;width:43px;height:43px;display:block;border:2px solid #fff3;border-radius:14px;background:radial-gradient(circle at 50% 28%,#fff 0 3%,#75f4ff 5% 18%,#5364ed 42%,#391278 75%);box-shadow:inset 0 0 10px #fff5,0 0 12px #61eeff,0 4px 5px #25084d;filter:drop-shadow(0 0 3px #fff6)}
.shop-roof{position:absolute;z-index:2;left:5px;top:7px;width:29px;height:10px;border:2px solid #fff2a0;border-radius:4px 4px 2px 2px;background:repeating-linear-gradient(90deg,#ff4fa8 0 6px,#ffe25b 6px 12px);box-shadow:0 3px 0 #872966}
.shop-roof::before{content:"";position:absolute;left:3px;right:3px;top:-7px;height:8px;clip-path:polygon(50% 0,100% 100%,0 100%);background:linear-gradient(135deg,#fff9b0,#ff9d2e 55%,#e94a8e)}
.shop-gem{position:absolute;z-index:3;left:13px;top:17px;width:16px;height:16px;display:grid;place-items:center;color:#cfffff;font:900 16px/1 Nunito;text-shadow:0 0 4px #fff,0 0 8px #33eaff;animation:shop-icon-pulse 1.45s ease-in-out infinite alternate}
.shop-door{position:absolute;left:8px;right:8px;bottom:5px;height:16px;border:2px solid #f4d080;border-radius:3px;background:linear-gradient(90deg,#53208d 0 36%,#e7b74c 37% 44%,#6b2db0 45%);box-shadow:inset 0 2px #fff3}
.shop-button-icon em{position:absolute;z-index:5;right:-7px;top:-10px;color:#fff37a;font:900 18px Nunito;text-shadow:0 0 5px #fff,0 0 10px #ffb52e;animation:shop-icon-spark .8s ease-in-out infinite alternate}
.shop-button-copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;line-height:1.05}
.shop-button-copy b{font-size:11px;letter-spacing:.35px;text-shadow:0 2px #3c116b}.shop-button-copy small{margin-top:3px;color:#ffe47d;font-size:6px;letter-spacing:.75px;text-shadow:0 1px #5c246e}
@keyframes shop-icon-pulse{to{transform:scale(1.17) rotate(5deg);filter:brightness(1.3)}}
@keyframes shop-icon-spark{to{transform:scale(1.35) rotate(22deg);filter:brightness(1.3)}}
