
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;min-height:100%;font-family:-apple-system,BlinkMacSystemFont,"PingFang TC",sans-serif;background:#3a123f;color:#fff;overscroll-behavior:none}.page{min-height:100dvh;display:grid;place-items:center;padding:12px;background:radial-gradient(circle at 20% 10%,#ff95c5 0,transparent 25%),radial-gradient(circle at 80% 90%,#ffc75d 0,transparent 22%),linear-gradient(145deg,#521957,#b83f83)}.gameShell{width:min(100%,430px);background:#481048c2;border:1px solid #ffffff4d;border-radius:30px;padding:14px;box-shadow:0 24px 70px #25032288,inset 0 1px #ffffff66;backdrop-filter:blur(16px)}header{height:58px;display:flex;align-items:center;gap:8px;padding:0 4px}.brandMark{width:43px;height:43px;border-radius:50% 50% 45% 55%;display:grid;place-items:center;font-size:11px;font-weight:900;background:linear-gradient(135deg,#ff8cbc,#f04486);box-shadow:0 0 18px #ff91c7}header p{font-size:11px;margin:0;color:#ffd5e7;letter-spacing:1px}h1{font-size:22px;margin:0;letter-spacing:2px}.level{background:#ffd464;color:#6b2b4d;border-radius:99px;padding:7px 9px;font-size:10px;font-weight:900}.sound{margin-left:auto;border:1px solid #ffffff3d;background:#ffffff18;color:#fff;border-radius:50%;width:34px;height:34px;font-size:16px;cursor:pointer}.stats{display:flex;justify-content:space-around;background:#ffffff17;border:1px solid #ffffff22;border-radius:13px;padding:7px 0;margin-bottom:6px;font-weight:800}.gameMessage{height:30px;display:grid;place-items:center;margin-bottom:6px;border-radius:12px;background:linear-gradient(90deg,#ffffff12,#ffffff27,#ffffff12);color:#fff6c8;font-size:12px;font-weight:800;text-align:center}.canvasWrap{position:relative;overflow:hidden;border-radius:22px;border:2px solid #ffffff55;background:#691f64;box-shadow:inset 0 0 28px #24042c}canvas{display:block;width:100%;height:min(57dvh,650px);touch-action:none}.levelBurst{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle,#ffd957cc 0,#ff4c9c88 28%,#52195722 62%,transparent 72%);animation:burst 1.2s ease-out both;pointer-events:none;text-shadow:0 4px 18px #531047}.levelBurst strong{font-size:44px;color:#fff5a6;letter-spacing:3px;transform:rotate(-3deg)}.levelBurst span{font-size:26px;font-weight:1000}.levelBurst i{font-size:16px;font-style:normal;color:#fff;margin-top:5px}.start{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:72%;border:0;border-radius:22px;background:linear-gradient(135deg,#ffd664,#ff9a3f);color:#682244;padding:15px;font-size:23px;font-weight:1000;box-shadow:0 9px 0 #d56e40,0 16px 32px #260b2b99;cursor:pointer}.start:active{transform:translate(-50%,calc(-50% + 5px));box-shadow:0 4px 0 #d56e40}.start small{display:block;font-size:11px;margin-top:5px}.controls{display:grid;grid-template-columns:70px 1fr 70px;gap:9px;margin-top:10px}.controls button{border:1px solid #ffffff55;border-radius:17px;min-height:55px;color:#fff;background:#ffffff18;font-size:22px;font-weight:900;touch-action:none;user-select:none}.controls button:active{transform:scale(.95);background:#ffffff32}.controls .fire{background:linear-gradient(135deg,#ff5b9c,#ed347d);font-size:18px;box-shadow:0 6px 16px #2c071d99}footer{text-align:center;color:#f8cce0;font-size:11px;line-height:1.5;padding:9px 4px 1px}footer b{font-size:13px;color:#fff}footer small{display:block;color:#dbaac3;margin-top:2px}@keyframes burst{0%{opacity:0;transform:scale(.45)}20%{opacity:1;transform:scale(1.08)}45%{transform:scale(.98)}78%{opacity:1}100%{opacity:0;transform:scale(1.2)}}@media(max-height:760px){canvas{height:48dvh}.gameShell{padding:9px;border-radius:23px}header{height:48px}.controls button{min-height:48px}footer{display:none}}
@keyframes panelIn{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes heartBeat{50%{transform:scale(1.15)}}.endPanel{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:26px;background:linear-gradient(180deg,#481048e8,#861f69f2);text-align:center;animation:panelIn .38s ease-out}.endIcon{font-size:48px;filter:drop-shadow(0 0 16px #ff9bc8);animation:heartBeat 1.2s ease-in-out infinite}.endPanel>strong{font-size:28px;color:#fff5ad;letter-spacing:2px;text-shadow:0 3px 15px #471039}.endPanel p{font-size:16px;line-height:1.7;margin:10px 0 18px}.endPanel p b{font-size:22px;color:#ffd45f}.booking{width:100%;max-width:310px;padding:15px 12px;border-radius:18px;background:linear-gradient(135deg,#ffd75f,#ff973e);color:#642247;text-decoration:none;font-size:18px;font-weight:1000;box-shadow:0 7px 0 #c96043,0 14px 25px #260b2b88}.booking:active{transform:translateY(4px);box-shadow:0 3px 0 #c96043}.booking span{display:block;margin-top:4px;font-size:11px;font-weight:750}.retry{margin-top:16px;border:1px solid #ffffff66;border-radius:99px;background:#ffffff1f;color:#fff;padding:10px 28px;font-size:14px;font-weight:850}
@keyframes rewardIn{0%{opacity:0;transform:scale(.3) rotate(-8deg)}22%{opacity:1;transform:scale(1.08) rotate(2deg)}100%{opacity:1;transform:scale(1)}}@keyframes jingGrow{0%{transform:scale(.12);filter:brightness(2);opacity:.3}55%{transform:scale(.75);filter:brightness(1.6)}82%{transform:scale(1.12)}100%{transform:scale(1)}}@keyframes tailWave{50%{transform:rotate(14deg) translateX(5px)}}.rewardBurst{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px;background:radial-gradient(circle,#fff6a6eb 0,#ff72b8e8 32%,#531259eb 76%);text-align:center;animation:rewardIn .45s ease-out}.rewardBurst>strong{font-size:28px;color:#fff8b2;text-shadow:0 4px 16px #681342;margin-top:12px}.rewardBurst>span{max-width:300px;margin-top:8px;padding:8px 13px;border:1px solid #ffffff66;border-radius:99px;background:#5f174ebd;font-size:14px;font-weight:850}.rewardChest{font-size:82px;filter:drop-shadow(0 8px 12px #65204a)}.jingGrow{position:relative;width:130px;height:150px;animation:jingGrow 2.2s ease-out both;filter:drop-shadow(0 0 18px #fff)}.jingGrow i{position:absolute;left:17px;top:4px;width:92px;height:105px;border-radius:52% 48% 50% 50%;background:radial-gradient(circle at 38% 28%,#fff 0 22%,#fff5fb 55%,#ffd4e8 100%);box-shadow:inset -9px -8px 18px #f6b7d5}.jingGrow i:before,.jingGrow i:after{content:"";position:absolute;top:46px;width:17px;height:24px;border-radius:50%;background:#191326;box-shadow:inset 4px 4px 0 #fff}.jingGrow i:before{left:20px}.jingGrow i:after{right:20px}.jingGrow b{position:absolute;left:82px;top:82px;width:56px;height:65px;border-radius:65% 35% 70% 30%;border-right:13px solid #ff80b5;border-bottom:11px solid #ff80b5;transform:rotate(-18deg);animation:tailWave .75s ease-in-out infinite}.jingGrow em{position:absolute;left:54px;top:85px;width:22px;height:18px;border-radius:50%;background:#ff93bb;box-shadow:0 0 0 4px #fff8;font-style:normal}.jingGrow em:after{content:"♥";position:absolute;inset:-5px 0 0;text-align:center;color:#fff;font-size:16px}
@keyframes jingSmallStage{0%{opacity:0;transform:scale(.08)}18%{opacity:1;transform:scale(.38)}45%{opacity:1;transform:scale(.7)}62%{opacity:0;transform:scale(.95)}100%{opacity:0;transform:scale(1)}}@keyframes jingGrownStage{0%,42%{opacity:0;transform:scale(.45)}65%{opacity:1;transform:scale(1.08)}80%{transform:scale(.96)}100%{opacity:1;transform:scale(1)}}.rewardBurst .jingGrow{position:relative;width:210px;height:240px;animation:none;filter:drop-shadow(0 0 22px #fff)}.jingGrow img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.jingGrow .jingSmall{animation:jingSmallStage 2.6s ease-out both}.jingGrow .jingGrown{border-radius:44%;background:#fff;clip-path:inset(0 0 9% 0 round 34%);animation:jingGrownStage 2.6s ease-out both}.rewardBurst:has(.jingGrow)>strong{margin-top:-10px}
.endActions{width:100%;max-width:320px;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:6px}.endActions .retry,.endActions .booking{display:grid;place-items:center;margin:0;min-height:52px;width:100%;padding:10px 8px;border-radius:16px;font-size:16px;font-weight:950}.endActions .retry{border:1px solid #ffffff80;background:#ffffff20;color:#fff}.endActions .booking{border:0;background:linear-gradient(135deg,#ffd75f,#ff973e);color:#642247;box-shadow:0 5px 0 #c96043}.bookingNote{margin-top:12px;color:#f4c8db;font-size:11px}
@keyframes launchers{0%{opacity:0;transform:translateY(80px) scale(.35)}45%{opacity:1;transform:translateY(-12px) scale(1.15)}70%{transform:translateY(5px) scale(.96)}100%{transform:translateY(0) scale(1)}}@keyframes twinsPop{0%{opacity:0;transform:scale(.1) rotate(-18deg)}40%{opacity:1;transform:scale(1.28) rotate(8deg)}70%{transform:scale(.9) rotate(-3deg)}100%{transform:scale(1)}}@keyframes shieldGlow{0%{opacity:0;transform:scale(.2) rotate(-30deg);filter:brightness(3)}55%{opacity:1;transform:scale(1.25) rotate(8deg);filter:brightness(1.8)}100%{transform:scale(1);filter:drop-shadow(0 0 26px #fff27b)}}.dualReward{display:flex;gap:8px;font-size:76px;animation:launchers 1s cubic-bezier(.2,.8,.2,1) both;filter:drop-shadow(0 0 20px #ffda67)}.dualReward b:last-child{transform:rotate(12deg)}.dualReward b:first-child{transform:rotate(-12deg)}.twinReward{font-size:86px;animation:twinsPop 1.25s ease-out both;filter:drop-shadow(0 0 20px #fff)}.shieldReward{font-size:92px;animation:shieldGlow 1.5s ease-out both}

@media(max-width:600px){
 html,body{width:100%;height:100%;overflow:hidden}
 .page{display:block;width:100vw;height:100dvh;min-height:100dvh;padding:0;background:#481048}
 .gameShell{display:flex;flex-direction:column;width:100vw;max-width:none;height:100dvh;padding:max(5px,env(safe-area-inset-top)) 6px max(5px,env(safe-area-inset-bottom));border:0;border-radius:0;box-shadow:none}
 header{flex:0 0 47px;height:47px;padding:0 2px}
 .brandMark{width:38px;height:38px}
 h1{font-size:19px;letter-spacing:1px}
 header p{font-size:9px}
 .level{padding:6px 7px;font-size:9px}
 .sound{width:32px;height:32px}
 .stats{flex:0 0 auto;margin-bottom:4px;padding:5px 0;border-radius:10px;font-size:14px}
 .gameMessage{flex:0 0 27px;height:27px;margin-bottom:4px;font-size:11px}
 .canvasWrap{flex:1 1 auto;min-height:0;border-radius:14px}
 canvas{width:100%;height:100%}
 .controls{flex:0 0 auto;grid-template-columns:64px 1fr 64px;gap:7px;margin-top:6px}
 .controls button{min-height:50px;border-radius:14px}
 footer{display:none}
}

@keyframes confettiRain{0%{transform:translateY(-110%) rotate(-8deg);opacity:0}12%{opacity:1}100%{transform:translateY(115%) rotate(14deg);opacity:.15}}
@keyframes victoryPulse{0%,100%{transform:scale(1)}45%{transform:scale(1.15)}65%{transform:scale(.96)}}
.rewardBurst{overflow:hidden;box-shadow:inset 0 0 90px #fff8,0 0 30px #ffd561;isolation:isolate}
.rewardBurst:before{content:"✨  🎉  ⭐  💖  🎊\A 🎊  ⭐  ✨  🎉  💖\A 💖  ✨  🎊  ⭐  🎉";white-space:pre;position:absolute;inset:-180px 0;z-index:-1;font-size:30px;line-height:3.1;letter-spacing:12px;animation:confettiRain 2.8s linear infinite;text-shadow:0 0 12px #fff}
.rewardBurst:after{content:"";position:absolute;width:280px;height:280px;border:10px double #fff7a8;border-radius:50%;z-index:-1;animation:victoryPulse .8s ease-in-out infinite;box-shadow:0 0 35px #fff,0 0 70px #ffd660}
.rewardBurst>strong{font-size:34px;animation:victoryPulse .72s ease-in-out infinite;text-shadow:0 4px 10px #7a174d,0 0 18px #fff}

.ssfc-game-nav{position:relative;z-index:30;display:flex;justify-content:space-between;gap:12px;padding:12px 18px;background:#fff5f9;color:#842746;font:700 17px/1.5 system-ui}.ssfc-game-nav a{color:inherit;text-decoration:none}.ssfc-game-note{padding:12px 18px;background:#fff5f9;color:#71384e;font:16px/1.7 system-ui;text-align:center}