:root{--bg: #150c2b;--bg-2: #241546;--bg-3: #331f5e;--bg-4: #422a78;--panel: #3a2370;--panel-2: #4b2f8f;--panel-3: #5c3aa8;--surface-line: rgba(255, 255, 255, .14);--surface-line-strong: rgba(255, 255, 255, .26);--ink: #fff7ff;--ink-dim: #c9b6ec;--ink-faint: #8d7ab5;--gold: #ffd24a;--gold-2: #ff9f28;--gold-deep: #b56612;--heart: #ff4d6d;--heart-2: #d61f48;--green: #4fe38a;--green-2: #23a75c;--green-deep: #147040;--blue: #49c2ff;--blue-2: #1c86d4;--violet: #b98bff;--danger: #ff5d5d;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--radius-sm: 12px;--radius: 18px;--radius-lg: 26px;--lift-1: 0 3px 0 rgba(0, 0, 0, .3);--lift-2: 0 5px 0 rgba(0, 0, 0, .32);--shadow: 0 10px 28px rgba(0, 0, 0, .42);--shadow-lg: 0 20px 56px rgba(0, 0, 0, .55);--safe-top: max(env(safe-area-inset-top, 0px), var(--safe-area-inset-top, 0px));--safe-bottom: max(env(safe-area-inset-bottom, 0px), var(--safe-area-inset-bottom, 0px))}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;height:100%;overflow:hidden;overscroll-behavior:none;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,sans-serif;user-select:none;-webkit-user-select:none;touch-action:manipulation}#app{position:fixed;inset:0;display:flex;flex-direction:column;background:radial-gradient(130% 70% at 50% -10%,var(--bg-4) 0%,transparent 60%),radial-gradient(100% 60% at 50% 105%,var(--bg-3) 0%,transparent 65%),var(--bg);overflow:hidden}.ambient{position:absolute;inset:-12%;pointer-events:none;z-index:0;contain:strict}.ambient i{position:absolute;display:block;border-radius:50%;will-change:transform;opacity:.9}.ambient i:nth-child(1){width:62vw;height:62vw;left:-14vw;top:4vh;background:radial-gradient(circle,#b98bff6b,#b98bff00 68%);animation:drift-a 26s ease-in-out infinite}.ambient i:nth-child(2){width:54vw;height:54vw;right:-12vw;top:34vh;background:radial-gradient(circle,#49c2ff4d,#49c2ff00 70%);animation:drift-b 32s ease-in-out infinite}.ambient i:nth-child(3){width:70vw;height:70vw;left:-6vw;bottom:-14vh;background:radial-gradient(circle,#ff9f2838,#ff9f2800 68%);animation:drift-c 38s ease-in-out infinite}@keyframes drift-a{50%{transform:translate3d(9vw,6vh,0) scale(1.12)}}@keyframes drift-b{50%{transform:translate3d(-8vw,-7vh,0) scale(1.16)}}@keyframes drift-c{50%{transform:translate3d(7vw,-5vh,0) scale(1.1)}}.paws{position:absolute;inset:0;pointer-events:none;z-index:0;overflow:hidden;contain:strict}.paws svg{position:absolute;opacity:.1;will-change:transform;animation:float-up linear infinite}@keyframes float-up{0%{transform:translate3d(0,108vh,0) rotate(0)}to{transform:translate3d(0,-24vh,0) rotate(240deg)}}@media (prefers-reduced-motion: reduce){.ambient i,.paws svg{animation:none}}.screen>*{position:relative;z-index:1}.screen{position:absolute;inset:0;display:flex;flex-direction:column;padding-top:var(--safe-top);padding-bottom:var(--safe-bottom)}.screen.from-fwd{animation:in-fwd .26s cubic-bezier(.22,.9,.3,1)}.screen.from-back{animation:in-back .26s cubic-bezier(.22,.9,.3,1)}.screen.from-cross{animation:in-cross .24s ease-out}@keyframes in-fwd{0%{opacity:0;transform:translate(7%) scale(.98)}}@keyframes in-back{0%{opacity:0;transform:translate(-7%) scale(.98)}}@keyframes in-cross{0%{opacity:0;transform:scale(.975) translateY(8px)}}.screen-out{z-index:0;animation:out-cross .26s ease-in forwards}.screen-out.to-fwd{animation:out-fwd .26s ease-in forwards}.screen-out.to-back{animation:out-back .26s ease-in forwards}@keyframes out-fwd{to{opacity:0;transform:translate(-6%) scale(.97)}}@keyframes out-back{to{opacity:0;transform:translate(6%) scale(.97)}}@keyframes out-cross{to{opacity:0;transform:scale(1.02) translateY(-6px)}}@media (prefers-reduced-motion: reduce){.screen,.screen-out{animation:none}}.row{display:flex;align-items:center;gap:8px}.col{display:flex;flex-direction:column;gap:8px}.grow{flex:1;min-height:0}.center{justify-content:center;align-items:center}.spacer{flex:1}.topbar{display:flex;align-items:center;gap:var(--s2);padding:10px var(--s3);flex:0 0 auto}.pill{position:relative;display:inline-flex;align-items:center;gap:6px;background:linear-gradient(180deg,#00000085,#00000042);border:2px solid var(--surface-line);border-radius:999px;padding:5px 6px 5px 10px;font-weight:800;font-size:15px;line-height:1;white-space:nowrap;box-shadow:inset 0 1px #ffffff29,inset 0 -2px 6px #0000005c,0 2px 8px #0000004d;transition:transform .12s}.pill .val{font-variant-numeric:tabular-nums;min-width:1ch}.pill.lives{border-color:#ff4d6d75;box-shadow:inset 0 1px #ffffff29,inset 0 -2px 6px #0000005c,0 0 14px #ff4d6d38}.pill.coins{border-color:#ffd24a70;box-shadow:inset 0 1px #ffffff29,inset 0 -2px 6px #0000005c,0 0 14px #ffd24a33}.pill .plus{width:21px;height:21px;border-radius:50%;background:linear-gradient(180deg,var(--green),var(--green-2));color:#04331a;display:grid;place-items:center;box-shadow:0 2px 0 var(--green-deep)}.pill.timer{font-variant-numeric:tabular-nums;font-size:13px;color:var(--ink-dim);padding:5px 11px;gap:5px;font-weight:700}@media (max-width: 389px){.topbar{gap:6px;padding:8px 10px}.pill{font-size:14px;gap:5px;padding:4px 5px 4px 8px}.pill .plus{width:19px;height:19px}.pill.timer{font-size:12px;padding:4px 8px}.pill.timer svg{width:12px;height:12px}.topbar .icon-btn{width:38px;height:38px;border-radius:12px}}.bump{animation:bump .4s cubic-bezier(.34,1.56,.64,1)}@keyframes bump{30%{transform:scale(1.16)}}.btn{appearance:none;border:none;border-radius:var(--radius);padding:14px 22px;font-size:17px;font-weight:900;color:#fff;background:linear-gradient(180deg,var(--green) 0%,var(--green-2) 100%);box-shadow:0 5px #17703c;cursor:pointer;transition:transform .08s,box-shadow .08s;font-family:inherit;letter-spacing:.2px}.btn:active{transform:translateY(4px);box-shadow:0 1px #17703c}.btn.gold{background:linear-gradient(180deg,var(--gold) 0%,var(--gold-2) 100%);box-shadow:0 5px #b56612;color:#4a2600}.btn.gold:active{box-shadow:0 1px #b56612}.btn.ghost{background:#ffffff1a;box-shadow:0 5px #00000040;color:var(--ink)}.btn.ghost:active{box-shadow:0 1px #00000040}.btn.apple{background:#000;box-shadow:0 5px #00000073;color:#fff;font-family:-apple-system,system-ui,sans-serif}.btn.apple:active{box-shadow:0 1px #00000073}.btn.small{padding:9px 13px;font-size:14px;border-radius:12px}.shop-item .btn.small{flex:0 0 auto;white-space:nowrap;padding:9px 11px;font-size:13.5px;min-width:74px}.btn.block{width:100%}.btn:disabled{filter:grayscale(.7) brightness(.7);box-shadow:none;transform:none}.icon-btn{width:42px;height:42px;border-radius:14px;border:none;background:#ffffff1f;color:var(--ink);font-size:20px;display:grid;place-items:center;cursor:pointer;box-shadow:0 4px #00000040}.icon-btn.daily-ready{background:linear-gradient(180deg,var(--gold),var(--gold-2));box-shadow:0 4px 0 var(--gold-deep),0 0 #ffd24a80;animation:daily-glow 1.6s ease-in-out infinite}@keyframes daily-glow{50%{box-shadow:0 4px 0 var(--gold-deep),0 0 0 7px #ffd24a29}}.icon-btn:active{transform:translateY(3px);box-shadow:0 1px #00000040}.map-scroll{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding:8px 0 28px;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 22px);mask-image:linear-gradient(180deg,transparent 0,#000 22px)}.screen.map-screen{padding-bottom:0}.map-screen .map-scroll{padding-bottom:calc(28px + var(--safe-bottom))}.map-path{position:relative;width:100%}.node-slot{position:absolute;width:0;height:0;z-index:2}.node-slot.current{z-index:4}.node{position:absolute;left:0;top:0;width:60px;height:60px;transform:translate(-50%,-50%) rotate(45deg);display:grid;place-items:center;border-radius:16px;font-weight:900;font-size:19px;border:3px solid rgba(255,255,255,.3);background:linear-gradient(145deg,#4a3f7d,#241a46);box-shadow:0 0 0 1px #0006,0 6px 18px #00000080;color:#fff;cursor:pointer}.node-inner{display:grid;place-items:center;transform:rotate(-45deg)}.node .n{line-height:1;text-shadow:0 0 10px rgba(255,255,255,.35)}.node .n.long{font-size:15px;letter-spacing:-.3px}.node.current .n.long{font-size:17px}.node.locked{background:radial-gradient(70% 70% at 30% 26%,#9678e642,#9678e600 70%),linear-gradient(145deg,#2f2750,#16122a);color:#7d73ab;border-color:#beaaff29;box-shadow:inset 0 2px 8px #00000080,0 4px 12px #0006}.node.done{background:radial-gradient(70% 70% at 30% 24%,#ffffff80,#fff0 62%),linear-gradient(145deg,#8fe6ff,#2a86c9);border-color:#dff6ff;color:#05314a;box-shadow:inset 0 -3px 10px #00284659,0 0 20px #78d7ff80,0 6px 18px #00000080}.node.current{width:70px;height:70px;font-size:22px;background:radial-gradient(70% 70% at 30% 24%,#ffffffd9,#fff0 58%),linear-gradient(145deg,#fff3c4,var(--gold-2));color:#4a2600;border-color:#fffbe8;box-shadow:inset 0 -3px 10px #9650004d,0 0 26px #ffd24a99,0 0 0 8px #ffd24a1f;animation:star-bob 1.6s ease-in-out infinite}.node.gate{border-color:#ff7a7a;box-shadow:0 0 22px #ff5d5d73,0 6px 18px #00000080}@keyframes star-bob{0%,to{transform:translate(-50%,-50%) rotate(45deg) scale(1)}50%{transform:translate(-50%,-50%) rotate(45deg) scale(1.07)}}.node-slot.current:before,.node-slot.current:after{content:"";position:absolute;left:0;top:0;pointer-events:none}.node-slot.current:before{width:176px;height:3px;transform:translate(-50%,-50%);background:linear-gradient(90deg,transparent 6%,rgba(255,233,160,.75) 50%,transparent 94%);filter:blur(.4px);z-index:-1}.node-slot.current:after{width:3px;height:176px;transform:translate(-50%,-50%);background:linear-gradient(180deg,transparent 6%,rgba(255,233,160,.75) 50%,transparent 94%);filter:blur(.4px);z-index:-1}.node.just-won .node-inner{animation:won-pop .72s cubic-bezier(.34,1.56,.64,1)}.node.just-won:after{content:"";position:absolute;inset:-6px;border-radius:20px;border:3px solid rgba(255,233,160,.9);animation:won-ring .85s ease-out forwards;pointer-events:none}@keyframes won-pop{0%{transform:rotate(-45deg) scale(1)}38%{transform:rotate(-45deg) scale(1.3)}to{transform:rotate(-45deg) scale(1)}}@keyframes won-ring{0%{opacity:.95;transform:scale(.7)}to{opacity:0;transform:scale(2.1)}}.node-slot .stars.fresh svg{animation:star-land .5s cubic-bezier(.34,1.56,.64,1) both;animation-delay:var(--d, 0s)}@keyframes star-land{0%{opacity:0;transform:translateY(-14px) scale(.3) rotate(-30deg)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.node.just-won .node-inner,.node.just-won:after,.node-slot .stars.fresh svg{animation:none}}.node-slot .stars{position:absolute;left:0;top:40px;transform:translate(-50%);display:flex;gap:2px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.8))}.node-slot .badge-gate{position:absolute;left:0;top:-48px;transform:translate(-50%);font-size:9px;background:linear-gradient(180deg,#ff8a8a,#c62c2c);padding:2px 8px;border-radius:999px;font-weight:900;letter-spacing:.6px;border:1px solid rgba(255,255,255,.3);white-space:nowrap}.node-slot .play-flag{position:absolute;left:0;top:-58px;transform:translate(-50%);font-size:10px;font-weight:900;letter-spacing:1.4px;color:#4a2600;background:linear-gradient(180deg,#fff3c4,var(--gold));padding:3px 11px;border-radius:999px;border:2px solid rgba(255,255,255,.55);box-shadow:0 3px 0 var(--gold-deep);white-space:nowrap}.finale{position:absolute;left:50%;transform:translate(-50%);z-index:3;display:flex;align-items:center;gap:10px;padding:9px 18px 9px 10px;border-radius:20px;background:linear-gradient(180deg,#080616d1,#08061699);border:2px solid rgba(255,210,74,.55);box-shadow:inset 0 1px #fff3,0 0 30px #ffd24a47,0 8px 22px #00000080;white-space:nowrap}.finale .fi-cup{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#ffd24a1f}.finale .fi-text{display:flex;flex-direction:column;gap:2px;text-align:left}.finale .fi-text b{font-size:16px;font-weight:900;letter-spacing:2px;color:var(--gold)}.finale .fi-text small{font-size:12px;font-weight:700;color:var(--ink-dim)}.finale.done{background:linear-gradient(180deg,#fff3c4,var(--gold) 55%,var(--gold-2));border-color:#fffbe8;box-shadow:0 5px 0 var(--gold-deep),0 0 40px #ffd24a99;animation:finale-glow 2.4s ease-in-out infinite}.finale.done .fi-cup{background:#ffffff59}.finale.done .fi-text b{color:#4a2600}.finale.done .fi-text small{color:#6b3a00}@keyframes finale-glow{50%{box-shadow:0 5px 0 var(--gold-deep),0 0 60px #ffd24ad9}}@media (prefers-reduced-motion: reduce){.finale.done{animation:none}}.region-banner{position:absolute;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 26px 9px;border-radius:16px;background:radial-gradient(90% 120% at 50% 0%,color-mix(in srgb,var(--rb, var(--gold)) 22%,transparent) 0%,transparent 70%),linear-gradient(180deg,#080616cc,#0806168c);border:2px solid color-mix(in srgb,var(--rb, var(--gold)) 45%,rgba(255,255,255,.2));box-shadow:inset 0 1px #ffffff38,0 0 26px color-mix(in srgb,var(--rb, var(--gold)) 22%,transparent),0 8px 22px #00000080;z-index:3;white-space:nowrap;backdrop-filter:blur(3px)}.region-banner .rb-num{font-size:9px;font-weight:900;letter-spacing:2.4px;color:var(--rb, var(--gold))}.region-banner .rb-name{font-size:15px;font-weight:900;letter-spacing:.4px}.dust-bar{position:relative;display:flex;align-items:center;gap:8px;margin:0 var(--s5) 8px;flex:0 0 auto}.dust-bar .bar.dust{flex:1;height:12px;border-radius:999px}.dust-bar .bar.dust>i{background:linear-gradient(90deg,#3f7fd6,#7fd4ff 55%,#fff);box-shadow:0 0 10px #7fd4ff80}.dust-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#00000059;border:2px solid rgba(127,212,255,.35);filter:grayscale(.85) brightness(.7);transition:filter .3s,box-shadow .3s,transform .2s}.dust-bar.near .dust-icon{filter:none;border-color:#8fdcff;box-shadow:0 0 0 4px #7fd4ff33;animation:dust-ready 1.2s ease-in-out infinite}@keyframes dust-ready{50%{box-shadow:0 0 0 8px #7fd4ff1a}}.dust-icon.pulse{animation:bump .4s cubic-bezier(.34,1.56,.64,1)}.level-bar{display:flex;align-items:center;justify-content:center;gap:var(--s2);padding:0 var(--s3) 6px;flex:0 0 auto}.lvl-name{font-size:15px;font-weight:900;letter-spacing:.5px;color:var(--ink-dim);text-transform:uppercase}.lvl-chip{font-size:11px;font-weight:900;padding:2px 9px;border-radius:999px;background:#ffffff1a;border:1px solid var(--surface-line);color:var(--ink-dim)}.lvl-chip.gate{background:linear-gradient(180deg,var(--danger),#c62c2c);border-color:#ffffff47;color:#fff;letter-spacing:.8px}.head-row{gap:14px;padding:0 var(--s3) 8px;flex:0 0 auto}.star-bar{position:relative;margin:12px var(--s5) 6px;flex:0 0 auto}.star-bar .bar{height:10px;border-radius:999px}.star-bar .pip{position:absolute;top:50%;transform:translate(-50%,-50%);width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--bg-2);border:2px solid rgba(255,255,255,.18);color:#ffffff40;transition:color .3s,border-color .3s,transform .3s}.star-bar .pip.on{color:var(--gold);border-color:var(--gold);background:#4a3410;transform:translate(-50%,-50%) scale(1.14)}.goals{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;padding:2px 12px 8px}.goal{display:flex;align-items:center;gap:7px;background:linear-gradient(180deg,#0006,#0003);border:2px solid var(--surface-line);border-radius:var(--radius-sm);padding:6px 12px 6px 8px;font-weight:900;font-size:17px;box-shadow:inset 0 1px #ffffff24,inset 0 -2px 6px #0000004d,0 2px 8px #00000047;transition:transform .2s,border-color .3s,background .3s}.goal.done{background:linear-gradient(180deg,#4fe38a42,#23a75c2e);box-shadow:inset 0 1px #fff3,0 0 16px #4fe38a4d}.goal.hit{animation:goal-hit .34s cubic-bezier(.34,1.56,.64,1)}@keyframes goal-hit{40%{transform:scale(1.16);border-color:var(--gold)}}.goal.cleared{animation:goal-cleared .62s cubic-bezier(.34,1.56,.64,1)}@keyframes goal-cleared{0%{transform:scale(1)}35%{transform:scale(1.32) rotate(-4deg);box-shadow:0 0 30px #4fe38ad9}to{transform:scale(1)}}@media (prefers-reduced-motion: reduce){.goal.hit,.goal.cleared{animation:none}}.goal.done{border-color:var(--green);color:var(--green)}.goal canvas{display:block}.moves-box{display:flex;flex-direction:column;align-items:center;background:linear-gradient(180deg,var(--panel-3),var(--panel));border:2px solid var(--surface-line-strong);border-radius:var(--radius);padding:4px 16px 6px;min-width:78px;box-shadow:inset 0 2px #ffffff29,var(--lift-1)}.moves-box .n{font-size:27px;font-weight:900;line-height:1.05;font-variant-numeric:tabular-nums}.moves-box .l{font-size:10px;color:var(--ink-dim);letter-spacing:1px}.moves-box.low .n{color:var(--danger);animation:pulse .7s ease-in-out infinite}@media (max-width: 389px){.head-row{gap:8px;padding:0 10px 6px}.goals{gap:6px;padding:2px 0 6px}.goal{gap:5px;padding:5px 8px 5px 6px;font-size:15px}.goal canvas{width:22px;height:22px}.moves-box{min-width:62px;padding:3px 10px 5px}.moves-box .n{font-size:24px}}@media (max-height: 700px){.topbar{padding-top:6px;padding-bottom:6px}.level-bar{padding-bottom:2px}.lvl-name{font-size:13px}.moves-box .n{font-size:23px}.star-bar{margin-top:8px;margin-bottom:4px}.dust-bar{margin-bottom:4px}.dust-icon{width:26px;height:26px}.booster-bar{padding-top:8px;padding-bottom:8px}.booster{width:64px;height:58px}}@keyframes pulse{50%{transform:scale(1.14)}}.board-wrap{position:relative;flex:1;display:grid;place-items:center;min-height:0;padding:0 var(--s2) 4px}.board-wrap:before{content:"";position:absolute;inset:-6% -14%;background:radial-gradient(58% 40% at 50% 34%,#b28aff52,#b28aff00 72%),radial-gradient(46% 22% at 50% 92%,#7856dc3d,#7856dc00 78%);pointer-events:none}.hud-bottom{position:relative;flex:0 0 auto}.hud-bottom.coaching .star-bar,.hud-bottom.coaching .dust-bar{visibility:hidden}.coach{display:none;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max-content;max-width:calc(100% - 24px);text-align:center;line-height:1.25;background:linear-gradient(180deg,#fff3c4,var(--gold));color:#4a2600;font-weight:900;font-size:12.5px;padding:7px 14px;border-radius:999px;border:2px solid rgba(255,255,255,.6);box-shadow:0 4px 0 var(--gold-deep),var(--shadow);z-index:3;animation:coach-in .4s cubic-bezier(.34,1.56,.64,1)}.hud-bottom.coaching .coach{display:block}@keyframes coach-in{0%{opacity:0;transform:translate(-50%,-30%) scale(.85)}}.board-tray{position:relative;padding:10px;isolation:isolate;display:grid;place-items:center;border-radius:var(--radius-lg);background:linear-gradient(180deg,#5a3aa08c,#281850b3);border:2px solid rgba(255,255,255,.13);box-shadow:inset 0 2px #ffffff24,inset 0 -3px 10px #0006,var(--shadow)}.board-tray:after{content:"";position:absolute;left:8%;right:8%;bottom:-14px;height:22px;border-radius:50%;background:radial-gradient(50% 50% at 50% 50%,#00000073,#0000 72%);pointer-events:none;z-index:-1}#board{display:block;touch-action:none;border-radius:20px;transform-origin:center center}.booster-bar{display:flex;gap:var(--s3);justify-content:center;padding:10px var(--s3);flex:0 0 auto}.booster{position:relative;width:72px;height:70px;border-radius:var(--radius);border:2px solid var(--surface-line);background:linear-gradient(180deg,var(--panel-3),var(--panel));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;cursor:pointer;box-shadow:var(--lift-2),inset 0 1px #ffffff29;transition:transform .1s,box-shadow .1s}.booster:active{transform:translateY(3px);box-shadow:0 1px #00000052}.booster.locked{filter:saturate(.75) brightness(.92)}.booster .blabel{font-size:9px;font-weight:800;letter-spacing:.4px;color:var(--ink-dim);text-transform:uppercase}.booster.armed{border-color:var(--gold);box-shadow:0 0 0 4px #ffd24a42,var(--lift-2);animation:armed-pulse 1.1s ease-in-out infinite}@keyframes armed-pulse{50%{box-shadow:0 0 0 8px #ffd24a24,var(--lift-2)}}.booster .count{position:absolute;right:-7px;top:-8px;min-width:23px;height:23px;border-radius:999px;background:linear-gradient(180deg,var(--green),var(--green-2));color:#04331a;font-size:12px;font-weight:900;display:inline-flex;align-items:center;justify-content:center;gap:2px;border:2px solid var(--bg);padding:0 5px;box-shadow:0 2px 6px #0006}.booster .count.buy{background:linear-gradient(180deg,var(--gold),var(--gold-2));color:#4a2600}.chest-line{display:inline-flex;align-items:center;gap:6px;justify-content:center;color:var(--gold)!important;font-weight:800}.overlay{position:absolute;inset:0;background:radial-gradient(70% 50% at 50% 46%,#1e0c3c8c,#080314d1);display:grid;place-items:center;padding:18px;z-index:40;animation:fade .2s ease-out;backdrop-filter:blur(3px) saturate(.9)}@keyframes fade{0%{opacity:0;backdrop-filter:blur(0) saturate(1)}}.overlay-closing{position:absolute;inset:0;display:grid;place-items:center;padding:18px;z-index:40;pointer-events:none;animation:overlay-out .2s ease-in forwards}@keyframes overlay-out{to{opacity:0}}.overlay-closing .modal{animation:modal-out .2s ease-in forwards}@keyframes modal-out{to{transform:scale(.94) translateY(6px);opacity:0}}@media (prefers-reduced-motion: reduce){.overlay-closing,.overlay-closing .modal{animation:none;opacity:0}}.modal{position:relative;width:min(400px,100%);max-height:100%;overflow-y:auto;background:radial-gradient(120% 70% at 50% -10%,#ffffff29,#fff0 60%),linear-gradient(180deg,var(--panel-2) 0%,var(--panel) 62%,#2f1c5e 100%);border:2px solid rgba(255,255,255,.2);border-radius:26px;padding:20px 18px 18px;box-shadow:inset 0 1px #ffffff57,inset 0 -2px #00000047,0 22px 60px #00000094,0 0 0 1px #00000059;animation:pop-in .3s cubic-bezier(.34,1.56,.64,1);text-align:center}.modal:before{content:"";position:absolute;left:14%;right:14%;top:0;height:2px;border-radius:999px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent);pointer-events:none}@keyframes pop-in{0%{transform:scale(.82) translateY(14px);opacity:0}}.pre-region{font-size:11px;font-weight:900;letter-spacing:2.2px;color:var(--gold);text-transform:uppercase}.pre-title{margin:2px 0 6px!important}.pre-stars{display:flex;justify-content:center;gap:5px;margin-bottom:8px}.moves-badge{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:linear-gradient(180deg,var(--green),var(--green-2));color:#04331a;font-weight:900;font-size:15px;box-shadow:0 3px 0 var(--green-deep)}.modal h2{margin:2px 0 4px;font-size:25px;letter-spacing:.3px}.modal h3{margin:0 0 10px;font-size:17px}.modal p{margin:0 0 12px;color:var(--ink-dim);font-size:15px;line-height:1.45}.modal .actions{display:flex;flex-direction:column;gap:10px;margin-top:14px}.modal .close{position:absolute;top:10px;right:10px;width:36px;height:36px;font-size:17px;z-index:2}.modal-head h2{padding:0 40px}.stars-big{display:flex;justify-content:center;gap:10px;margin:10px 0 6px}.star-slot{display:grid;place-items:center;width:52px;height:52px;transition:transform .2s}.star-slot:nth-child(2){transform:translateY(-10px) scale(1.15)}.star-slot.lit{animation:star-pop .5s cubic-bezier(.34,1.56,.64,1);filter:drop-shadow(0 0 10px rgba(255,210,74,.7))}.star-slot:nth-child(2).lit{animation:star-pop-mid .5s cubic-bezier(.34,1.56,.64,1)}@keyframes star-pop{0%{transform:scale(2.6) rotate(-28deg);opacity:0}60%{transform:scale(.92) rotate(6deg);opacity:1}to{transform:scale(1) rotate(0)}}@keyframes star-pop-mid{0%{transform:translateY(-10px) scale(2.9) rotate(-28deg);opacity:0}60%{transform:translateY(-10px) scale(1.05) rotate(6deg);opacity:1}to{transform:translateY(-10px) scale(1.15) rotate(0)}}.win-ribbon{display:inline-block;padding:6px 22px;border-radius:999px;font-size:13px;font-weight:900;letter-spacing:2.4px;color:#4a2600;background:linear-gradient(180deg,#fff3c4,var(--gold));border:2px solid rgba(255,255,255,.55);box-shadow:0 4px 0 var(--gold-deep);margin-bottom:2px}.win-score-label{font-size:10px;letter-spacing:2.6px;color:var(--ink-faint);font-weight:900;margin-top:4px}.win-score{font-size:34px;font-weight:900;font-variant-numeric:tabular-nums;margin:0 0 8px!important;color:var(--ink)!important;text-shadow:0 3px 0 rgba(0,0,0,.3)}.offer-badge{display:inline-block;background:var(--danger);color:#fff;font-size:12px;font-weight:900;padding:3px 10px;border-radius:999px;letter-spacing:.6px;margin-bottom:6px}.offer-timer{font-variant-numeric:tabular-nums;font-weight:900;color:var(--gold);font-size:15px}.offer-hero{display:grid;place-items:center;margin:4px 0 2px;animation:hero-bob 2.6s ease-in-out infinite}@keyframes hero-bob{50%{transform:translateY(-6px) rotate(-1.5deg)}}.offer-items{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:12px 0}.offer-item{background:linear-gradient(180deg,#00000057,#0003);border:2px solid rgba(255,255,255,.14);border-radius:14px;padding:8px 10px;min-width:68px;font-weight:900;font-size:14px;box-shadow:inset 0 1px #ffffff1f,0 2px 8px #00000042}.offer-items.staged .offer-item{animation:reward-drop .34s cubic-bezier(.34,1.56,.64,1) both}.offer-items.staged .offer-item:nth-child(2){animation-delay:.11s}.offer-items.staged .offer-item:nth-child(3){animation-delay:.22s}@keyframes reward-drop{0%{opacity:0;transform:translateY(-12px) scale(.82)}}@media (prefers-reduced-motion: reduce){.offer-items.staged .offer-item{animation:none}}.offer-item .ico{font-size:24px;display:block}.value-line{font-size:13px;color:var(--ink-dim)}.value-line b{color:var(--gold)}.strike{text-decoration:line-through;opacity:.6}.shop-list{display:flex;flex-direction:column;gap:9px;padding:0 var(--s3) 24px;overflow-y:auto;flex:1}.shop-item{display:flex;align-items:center;gap:11px;background:linear-gradient(180deg,var(--panel-2),var(--panel));border:2px solid var(--surface-line);border-radius:var(--radius);padding:10px 11px;position:relative;box-shadow:inset 0 1px #ffffff1f,var(--lift-1)}.shop-item .ico{width:46px;display:grid;place-items:center;flex:0 0 auto}.shop-item .info{flex:1;text-align:left;min-width:0}.shop-item .info .t{font-weight:900;font-size:16px;line-height:1.2}.shop-item .info .s{font-size:12px;color:var(--ink-dim);margin-top:1px}.shop-item:has(.badge.best){border-color:#49c2ff8c;box-shadow:inset 0 1px #ffffff29,0 0 0 3px #49c2ff24,var(--lift-1)}.shop-item:has(.badge:not(.best)){border-color:#ff5d5d80}.shop-item .badge{position:absolute;top:-9px;left:12px;background:var(--danger);font-size:10px;font-weight:900;padding:2px 8px;border-radius:999px;letter-spacing:.4px}.shop-item .badge.best{background:var(--blue);color:#04263a}.section-title{font-size:13px;letter-spacing:1.4px;color:var(--ink-dim);font-weight:900;padding:14px 14px 2px;text-transform:uppercase}.bar{position:relative;height:14px;background:linear-gradient(180deg,#00000080,#0000004d);border-radius:999px;overflow:hidden;border:2px solid rgba(255,255,255,.12);box-shadow:inset 0 2px 5px #00000080}.bar>i{position:relative;display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-2));transition:width .4s ease-out}.bar>i:after{content:"";position:absolute;left:2px;right:2px;top:1px;height:35%;border-radius:999px;background:linear-gradient(180deg,#ffffff73,#fff0);pointer-events:none}.bar.green>i{background:linear-gradient(90deg,var(--green),var(--green-2))}.tier-list{flex:1;overflow-y:auto;padding:0 var(--s3) 24px;display:flex;flex-direction:column;gap:7px;position:relative}.tier{display:grid;grid-template-columns:40px 1fr 1fr;gap:8px;align-items:center;background:#00000042;border-radius:var(--radius-sm);padding:7px 8px;border:2px solid rgba(255,255,255,.07);position:relative}.tier-head{background:none;border:none;padding-bottom:0}.col-head{font-size:9px;font-weight:900;letter-spacing:1.8px;color:var(--ink-faint);text-align:center}.col-head.premium{color:var(--gold)}.tier:not(.tier-head):before{content:"";position:absolute;left:27px;top:-9px;width:3px;height:11px;background:#ffffff1f;border-radius:2px}.tier.reached:not(.tier-head):before{background:var(--gold)}.tier.reached{border-color:#ffd24a73;background:#ffd24a0f}.tier.next{border-color:#ffffff4d;background:#ffffff0d}.tier.claimable{animation:tier-glow 1.8s ease-in-out infinite}@keyframes tier-glow{50%{box-shadow:0 0 0 3px #ffd24a2e}}.tier .n{font-weight:900;font-size:17px;text-align:center;width:30px;height:30px;line-height:26px;border-radius:50%;border:2px solid rgba(255,255,255,.16);background:var(--bg-2);margin:0 auto}.tier.reached .n{background:linear-gradient(180deg,var(--gold),var(--gold-2));color:#4a2600;border-color:#fff3c4}.reward{background:#ffffff12;border-radius:10px;padding:6px 8px;font-size:13px;font-weight:800;display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:38px}.reward.premium{background:#ffd24a24}.reward.claimed{opacity:.38}.toast-host{position:absolute;left:0;right:0;bottom:calc(var(--safe-bottom) + 104px);display:flex;flex-direction:column-reverse;align-items:center;gap:6px;pointer-events:none;z-index:60}.toast{background:#000000d1;border:2px solid rgba(255,255,255,.18);color:var(--ink);padding:9px 16px;border-radius:999px;font-weight:800;font-size:14px;animation:toast 2.4s ease-out forwards}@keyframes toast{0%{opacity:0;transform:translateY(12px)}12%,75%{opacity:1;transform:none}to{opacity:0;transform:translateY(8px)}}.title-screen{overflow:hidden}.sky-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.title-top,.splash,.title-menu{position:relative;z-index:1}.title-top{display:flex;align-items:center;padding:10px var(--s3) 0;flex:0 0 auto}.splash{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 var(--s4)}.title-brand{display:flex;flex-direction:column;align-items:center}.hero-canvas{display:block;margin:4px auto 6px}.continue-card{width:min(340px,100%);padding:12px 14px;border-radius:18px;text-align:left;background:linear-gradient(180deg,#0000006b,#0000003d);background:radial-gradient(120% 140% at 0% 0%,color-mix(in srgb,var(--rb, var(--gold)) 20%,transparent) 0%,transparent 62%),linear-gradient(180deg,#0000006b,#0000003d);border:2px solid rgba(255,255,255,.16);border:2px solid color-mix(in srgb,var(--rb, var(--gold)) 40%,rgba(255,255,255,.14));box-shadow:inset 0 1px #ffffff24,0 8px 22px #00000059}.cc-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.cc-region{display:flex;flex-direction:column;gap:2px;min-width:0}.cc-epithet{font-size:10px;font-weight:900;letter-spacing:2.2px;color:var(--rb, var(--gold))}.cc-name{font-size:17px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cc-stats{display:flex;gap:10px;flex:0 0 auto;padding-top:2px}.cc-stat{display:inline-flex;align-items:center;gap:4px;font-weight:900;font-size:14px;font-variant-numeric:tabular-nums}.cc-row{display:flex;align-items:center;gap:10px;margin-top:10px}.cc-level{font-size:13px;font-weight:800;color:var(--ink-dim);white-space:nowrap}.cc-bar{flex:1;height:8px;border-radius:999px;background:#ffffff1a;overflow:hidden}.cc-bar>i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--gold-2),var(--gold));box-shadow:0 0 8px #ffd24a80}.cc-of{color:var(--ink-faint);font-weight:700}.continue-card.finished .cc-name{color:var(--gold)}.cc-count{font-size:12px;font-weight:800;color:var(--ink-faint);font-variant-numeric:tabular-nums}.splash-btn{position:relative;overflow:hidden;min-width:230px;margin-top:16px;padding:16px 30px;font-size:22px;letter-spacing:2px;animation:play-glow 2.4s ease-in-out infinite}.splash-btn:after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skew(-18deg);animation:btn-shine 4.2s ease-in-out 2.4s infinite;pointer-events:none}@keyframes play-glow{50%{box-shadow:0 5px #b56612,0 0 0 6px #ffd24a29,0 0 28px #ffd24a73}}@keyframes btn-shine{0%{left:-60%}28%,to{left:130%}}.title-menu{display:flex;justify-content:center;gap:18px;padding:10px var(--s3) 18px;flex:0 0 auto}.menu-tile{display:flex;flex-direction:column;align-items:center;gap:7px;width:78px;padding:0;border:none;background:none;color:var(--ink);font:inherit;cursor:pointer}.mt-ico{position:relative;display:grid;place-items:center;color:var(--c, var(--ink));width:60px;height:60px;border-radius:20px;background:linear-gradient(180deg,var(--panel-3),var(--panel));border:2px solid var(--surface-line);box-shadow:var(--lift-2),inset 0 1px #ffffff29;transition:transform .1s,box-shadow .1s}.menu-tile:active .mt-ico{transform:translateY(3px);box-shadow:0 2px #00000052}.mt-label{font-size:12px;font-weight:800;letter-spacing:.3px;color:var(--ink-dim);white-space:nowrap}.menu-tile.mt-daily:not(.ready) .mt-ico{color:var(--ink-dim)}.mt-badge{display:none;position:absolute;top:-5px;right:-5px;width:16px;height:16px;border-radius:50%;background:linear-gradient(180deg,#ff7b7b,var(--danger));border:2px solid var(--bg);animation:pulse 1.4s ease-in-out infinite}.menu-tile.ready .mt-badge{display:block}.screen.title-screen.booting{animation:none}.boot{position:absolute;inset:0;z-index:5}.boot:before{content:"";position:absolute;inset:0;background:radial-gradient(circle 35vmax at 50% 50%,#2a1a52,#1b1033);transition:opacity .45s ease}.boot.leaving{pointer-events:none}.boot.leaving:before{opacity:0}.boot-mark{position:absolute;transform-origin:center}.boot-mark.grow{animation:boot-grow .5s cubic-bezier(.2,.9,.3,1.1) both}@keyframes boot-grow{0%{transform:scale(var(--from, .2))}}.boot-mark svg{display:block;width:100%;height:100%;animation:boot-breathe 1.8s ease-in-out infinite}@keyframes boot-breathe{50%{transform:scale(1.035)}}.boot-foot{position:absolute;left:0;right:0;bottom:calc(var(--safe-bottom) + 48px);display:flex;flex-direction:column;align-items:center;gap:10px;transition:opacity .25s;animation:boot-foot-in .5s ease .15s both}@keyframes boot-foot-in{0%{opacity:0}}.boot.leaving .boot-foot{opacity:0}.boot-bar{width:min(220px,60vw);height:6px;border-radius:999px;background:#ffffff1f;overflow:hidden}.boot-bar>i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--gold-2),var(--gold));box-shadow:0 0 10px #ffd24a99}.boot-label{font-size:12px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-dim)}.boot-credit{margin-top:6px;font-size:11px;letter-spacing:.6px;color:var(--ink-faint)}.title-screen.booting .title-top,.title-screen.booting .splash,.title-screen.booting .title-menu{opacity:0}.brand-lockup.mark-hold>svg{visibility:hidden}.title-screen.intro .enter{animation:title-rise .6s cubic-bezier(.2,.9,.3,1.15) both;animation-delay:calc(var(--d, 0) * var(--pace, 1ms))}.title-screen.intro .ltr{animation:ltr-in .5s cubic-bezier(.2,.9,.3,1.3) both;animation-delay:calc(var(--d, 0) * var(--pace, 1ms))}.title-screen.intro .logo .paw{animation:paw-pop .7s cubic-bezier(.3,1.6,.5,1) both,paw-shine 5s ease-in-out infinite;animation-delay:calc(var(--d, 0) * var(--pace, 1ms)),calc((var(--d, 0) + 380) * var(--pace, 1ms))}.title-screen.intro-done .enter,.title-screen.intro-done .ltr{animation:none}.title-screen.intro-done .logo .paw{animation:paw-shine 5s ease-in-out infinite}@keyframes title-rise{0%{opacity:0;transform:translateY(18px) scale(.96)}}@keyframes ltr-in{0%{opacity:0;transform:translateY(-16px) scale(.6)}}@keyframes paw-pop{0%{opacity:0;transform:scale(.4)}60%{opacity:1;transform:scale(1.12)}to{transform:scale(1)}}@keyframes paw-shine{0%{background-position:160% 0,0 0}22%,to{background-position:-70% 0,0 0}}.title-screen.warping .title-top,.title-screen.warping .splash,.title-screen.warping .title-menu{transition:transform .42s cubic-bezier(.5,0,.9,.4),opacity .32s ease-in;transform:scale(1.12);opacity:0}.screen.map-screen.from-title{animation:map-from-title .55s cubic-bezier(.2,.8,.2,1) both}@keyframes map-from-title{0%{opacity:0;transform:scale(1.06)}}@media (prefers-reduced-motion: reduce){.boot-mark.grow,.splash-btn,.splash-btn:after,.mt-badge,.boot-mark svg,.title-screen .logo .paw{animation:none}}@media (max-height: 700px){.title-screen .brand-lockup>svg{width:70px;height:70px}.title-screen .logo .paw{font-size:42px}.title-screen .tagline{margin-top:4px}.continue-card{padding:10px 12px}.cc-row{margin-top:7px}.splash-btn{margin-top:12px;padding:13px 28px}.mt-ico{width:52px;height:52px;border-radius:17px}.title-menu{padding-bottom:12px}}.brand-lockup{display:flex;flex-direction:column;align-items:center;gap:10px}.logo{display:flex;align-items:baseline;gap:10px;line-height:1}.logo .brand{font-size:30px;font-weight:800;letter-spacing:6px;color:var(--ink);margin-right:-6px;opacity:.92}.logo .brand .ltr{display:inline-block}.logo .paw{display:inline-block;font-size:50px;font-weight:900;letter-spacing:1px;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.95) 50%,transparent 65%) 160% 0 / 250% 100% no-repeat,linear-gradient(180deg,#fff,var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 4px 0 rgba(0,0,0,.3))}.tagline{color:var(--ink-dim);margin-top:8px;font-size:15px}.kpi{display:grid;grid-template-columns:1fr auto;gap:4px 10px;font-size:13px;text-align:left;background:#0000004d;border-radius:12px;padding:10px 12px}.kpi b{font-variant-numeric:tabular-nums}.hint-note{font-size:12px;color:var(--ink-dim);margin-top:10px;line-height:1.5}
