.track-badge{color:#6750bd;background:#eee8ff;border-radius:12px;margin-top:7px;padding:4px 8px;font-size:11px;font-style:normal;font-weight:700;display:inline-block}.alphabet-hero{text-align:center;background:linear-gradient(120deg,#ffdcae,#e9dcff 55%,#d7f5ff);padding:45px max(7vw,24px);position:relative;overflow:hidden}.alphabet-hero p{color:#9d6756;margin:0;font-size:13px;font-weight:700}.alphabet-hero h1{color:#3b3975;margin:7px 0;font-size:clamp(35px,6vw,57px)}.alphabet-hero>span{font-size:70px;position:absolute;top:30px;right:12%;transform:rotate(-12deg)}.alphabet-main{max-width:1000px;margin:auto;padding:35px 26px 60px}.alphabet-intro{background:#fff;border-radius:25px;justify-content:space-between;align-items:center;padding:26px;display:flex;box-shadow:0 12px 25px #4b46700d}.alphabet-intro p,.alphabet-write p,.word-bank p{color:#9a7cbb;margin:0;font-size:12px;font-weight:700}.alphabet-intro h2{color:#765bd0;margin:2px 0 10px;font-size:55px}.letter-word{text-align:center;background:#effbff;border-radius:20px;min-width:185px;padding:15px}.letter-word span{font-size:44px;display:block}.letter-word b,.letter-word small{display:block}.letter-word b{font-size:22px}.letter-word small{color:#71839a;margin-top:3px;font-size:12px}.alpha-heading{margin:30px 0 14px;font-size:23px}.alphabet-grid{grid-template-columns:repeat(7,1fr);gap:9px;display:grid}.alphabet-grid button{color:#5b5080;background:#fff;border:2px solid #ece5fb;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;min-height:89px;display:flex}.alphabet-grid button b,.alphabet-grid button span{font-size:19px}.alphabet-grid button small{font-size:10px}.alphabet-grid .selected{background:#eee8ff;border-color:#765bd0;box-shadow:0 5px #d8cdfa}.alphabet-write{background:#fff5d7;border-radius:25px;margin-top:32px;padding:24px}.alphabet-write h2{margin:4px 0;font-size:25px}.alphabet-write>div>span{color:#716c7d;font-size:13px}.alpha-trace{background:#fffdf8;border:2px dashed #dfc976;border-radius:18px;height:195px;margin:17px 0;position:relative;overflow:hidden}.alpha-trace>b{color:#f0df9d;letter-spacing:18px;pointer-events:none;place-items:center;font-size:100px;display:grid;position:absolute;inset:0}.alpha-trace canvas{touch-action:none;width:100%;height:100%;position:absolute}.word-bank{background:#edf8ff;border-radius:25px;margin-top:28px;padding:24px}.word-bank h2{margin:5px 0 17px;font-size:23px}.word-bank>div:last-child{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.word-bank button{color:#42577f;background:#fff;border-radius:14px;padding:9px}.word-bank button span{font-size:24px;display:block}.word-bank button b{font-size:12px}@media (width<=700px){.alphabet-hero>span{font-size:48px;right:5%}.alphabet-main{padding:25px 16px}.alphabet-intro{padding:20px}.alphabet-grid{grid-template-columns:repeat(4,1fr)}.alphabet-grid button{min-height:76px}.word-bank>div:last-child{grid-template-columns:repeat(3,1fr)}.letter-word{min-width:135px}.alphabet-intro h2{font-size:45px}}.game-fab{z-index:10;color:#fff;background:linear-gradient(135deg,#845ee6,#ff7996);border:0;border-radius:22px;padding:13px 17px;font-weight:900;position:fixed;bottom:18px;right:18px;box-shadow:0 7px 16px #6847a155}.game-page{color:#fff;background:#201655;min-height:100vh}.game-top{justify-content:space-between;align-items:center;max-width:1040px;margin:auto;padding:16px 24px;font-weight:900;display:flex}.game-top button{color:#fff;background:#ffffff25;border:0;border-radius:14px;padding:9px 12px}.game-hero{text-align:center;background:linear-gradient(130deg,#5737a8,#9b5ad9 55%,#f187b4);min-height:270px;padding:43px max(7vw,24px);position:relative;overflow:hidden}.game-hero p{color:#fce8ff;margin:0;font-size:13px;font-weight:700}.game-hero h1{text-shadow:0 4px #42277d;margin:9px 0;font-size:clamp(36px,6vw,60px);line-height:1.05}.game-castle,.game-cloud{opacity:.85;position:absolute}.game-castle{font-size:112px;bottom:-7px;right:12%}.game-cloud{font-size:60px;top:22px;left:12%}.game-board{max-width:780px;margin:-35px auto 0;padding:0 20px 55px;position:relative}.game-progress{align-items:center;gap:10px;margin-bottom:15px;font-size:13px;font-weight:700;display:flex}.game-progress>div{background:#ffffff31;border-radius:10px;flex:1;height:11px;overflow:hidden}.game-progress i{background:#ffdd68;border-radius:10px;height:100%;transition:width .3s;display:block}.mission-map{justify-content:space-between;align-items:center;margin:0 4px 14px;display:flex}.mission-map span{filter:grayscale();background:#ffffff20;border:2px solid #ffffff37;border-radius:50%;place-items:center;width:48px;height:48px;transition:all .25s;display:grid;position:relative}.mission-map span:not(:last-child):after{content:"";background:#ffffff28;width:calc(25vw - 40px);max-width:128px;height:3px;position:absolute;left:45px}.mission-map b{font-size:26px}.mission-map small{color:#fff;background:#5d489e;border-radius:50%;place-items:center;width:19px;height:19px;font-size:11px;display:grid;position:absolute;bottom:-5px;right:-5px}.mission-map .current{filter:none;background:#ffdc682e;border-color:#ffdc68;animation:1.4s infinite pulse;box-shadow:0 0 0 5px #ffdc6821}.mission-map .cleared{filter:none;background:#8bf0c644;border-color:#8bf0c6}.mission-map .cleared small{background:#35b987}@keyframes pulse{50%{transform:translateY(-4px)}}.treasure-card{color:#403567;text-align:center;background:#fff;border-radius:30px;padding:30px;box-shadow:0 16px 30px #13093666}.treasure-card>p{color:#777194;font-size:14px;font-weight:700}.mission-heading{text-align:left;background:#f5f0ff;border-radius:18px;align-items:center;gap:13px;padding:12px 16px;display:flex}.mission-heading>span{font-size:43px}.mission-heading p{color:#8a75b7;margin:0;font-size:13px;font-weight:900}.mission-heading h2{margin:3px 0 0;font-size:21px}.mission-story{max-width:460px;margin:18px auto 12px!important}.listen-mission,.mission-action{color:#fff;background:linear-gradient(135deg,#7757cf,#9d65d7);border:0;border-radius:15px;padding:12px 18px;font-size:15px;font-weight:900;box-shadow:0 5px #5d43a4}.listen-mission:active,.mission-action:active{transform:translateY(3px);box-shadow:0 2px #5d43a4}.instruction{color:#604aab!important;margin:18px 0 10px!important;font-family:ui-monospace,monospace!important;font-size:16px!important}.mission-objects{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.mission-objects button{color:#644cab;background:#fcfaff;border:2px solid #e5dbff;border-radius:20px;width:130px;padding:12px 8px;transition:all .2s}.mission-objects button:hover{background:#f2ebff;border-color:#c29aff;transform:translateY(-4px)}.mission-objects span{font-size:54px;display:block}.mission-objects small{margin-top:5px;font-size:15px;font-weight:900;display:block}.game-note{margin:22px 0 0;color:#7752bf!important;min-height:20px!important}.mission-complete .treasure{background:linear-gradient(145deg,#fff2ae,#ffd36a);border-radius:40px;place-items:center;width:130px;height:130px;margin:15px auto;font-size:76px;display:grid;box-shadow:0 8px #e8af47}.mission-complete h2{margin:12px 0;font-size:28px}.mission-complete .mission-action{margin-top:13px}.game-tips{color:#eae4ff;justify-content:space-between;gap:8px;margin:18px 0;font-size:13px;font-weight:700;display:flex}.game-tips span{background:#ffffff14;border-radius:12px;padding:10px}@media (width<=640px){.game-top{padding:14px}.game-top div{font-size:14px}.game-hero{min-height:235px}.game-castle{font-size:78px;right:4%}.game-cloud{font-size:44px;left:3%}.game-board{padding:0 12px 40px}.treasure-card{padding:22px 14px}.mission-map{margin-bottom:12px}.mission-map span{width:39px;height:39px}.mission-map b{font-size:21px}.mission-map span:not(:last-child):after{width:calc(25vw - 32.5px);left:37px}.mission-objects{gap:8px}.mission-objects button{width:29%;min-width:84px}.mission-objects span{font-size:45px}.mission-objects small{font-size:13px}.game-tips{flex-wrap:wrap;justify-content:center}.game-fab{bottom:12px;right:12px}}.welcome{background:linear-gradient(125deg,#fff1a9 0%,#bdeeff 50%,#e8cbff 100%);position:relative}.welcome:before,.welcome:after{content:"✦";color:#fff;font-size:24px;animation:2s ease-in-out infinite twinkle;position:absolute}.welcome:before{top:25px;right:28%}.welcome:after{animation-delay:1s;bottom:34px;right:12%}.mascot{animation:3s ease-in-out infinite floaty}.path{position:relative}.path:before{content:"冒險地圖";color:#8969c6;letter-spacing:2px;margin-bottom:4px;font-size:12px;font-weight:900;display:block}.days{position:relative}.days:before{content:"";z-index:-1;border-top:3px dashed #e4c4fa;position:absolute;top:37px;left:5%;right:5%}.days button{transition:all .2s;position:relative;overflow:hidden;box-shadow:0 7px #e8e1f7,0 12px 20px #744caf13}.days button:nth-child(3n+1){background:linear-gradient(160deg,#fff,#e7fbff)}.days button:nth-child(3n+2){background:linear-gradient(160deg,#fff,#fff1c7)}.days button:nth-child(3n){background:linear-gradient(160deg,#fff,#fae4f4)}.days button:not(:disabled):hover{transform:translateY(-5px)rotate(-1deg)}.days .chosen{box-shadow:0 9px #ba9ae2,0 16px 25px #744caf24}.pet-buddy{z-index:10;background:#fffdf5;border:2px solid #ffe490;border-radius:18px;align-items:center;gap:8px;padding:7px 11px;animation:3s ease-in-out infinite floaty;display:flex;position:fixed;bottom:17px;left:15px;box-shadow:0 8px 18px #6e54952b}.pet-buddy>span{font-size:34px}.pet-buddy b,.pet-buddy small{display:block}.pet-buddy b{color:#654b9f;font-size:13px}.pet-buddy small{color:#997eb4;margin-top:2px;font-size:11px}.reward-pop{z-index:30;color:#60498e;background:#fffaf0;border:2px solid #ffdb6f;border-radius:18px;align-items:center;gap:9px;min-width:280px;padding:10px 13px;animation:.35s ease-out rewardIn;display:flex;position:fixed;top:18px;left:50%;transform:translate(-50%);box-shadow:0 12px 24px #54357f36}.reward-pop>span{font-size:30px}.reward-pop b,.reward-pop small{display:block}.reward-pop small{color:#8b77a7;margin-top:2px;font-size:11px}.reward-pop button{color:#6a51ae;background:#f0e7ff;border-radius:50%;width:25px;height:25px;margin-left:auto;font-size:20px;line-height:25px}@keyframes floaty{50%{transform:translateY(-7px)rotate(2deg)}}@keyframes twinkle{50%{opacity:.45;transform:scale(1.5)}}@keyframes rewardIn{0%{opacity:0;transform:translate(-50%,-16px)}to{opacity:1;transform:translate(-50%)}}@media (width<=700px){.pet-buddy{padding:6px 9px;bottom:13px;left:10px}.pet-buddy>span{font-size:29px}.pet-buddy b{font-size:12px}.pet-buddy small{font-size:10px}.days:before{display:none}.reward-pop{width:calc(100% - 28px);min-width:0;top:10px}}.letter-word{position:relative;overflow:visible}.letter-word>span{transform-origin:50% 88%;will-change:transform;background:radial-gradient(circle at 38% 30%,#fffef8 0 15%,#ffe7a7 42%,#ffc764 100%);border-radius:32px;place-items:center;min-width:116px;min-height:112px;font-size:78px;display:inline-grid;box-shadow:0 10px #f0b44c,0 18px 25px #8762292d}.letter-word:after{content:"聽一聽，圖片會動喔！";color:#9d78be;letter-spacing:.5px;margin-top:10px;font-size:12px;font-weight:900;display:block}.alphabet-grid button{transition:transform .18s,box-shadow .18s}.alphabet-grid button:hover,.alphabet-grid button.selected{transform:translateY(-4px)rotate(-1deg);box-shadow:0 8px #d9c9ee}.alphabet-grid button.selected span{animation:1.15s ease-in-out infinite miniHop}@keyframes miniHop{50%{transform:translateY(-5px)rotate(7deg)}}@media (width<=600px){.letter-word>span{border-radius:27px;min-width:96px;min-height:94px;font-size:62px}.letter-word:after{font-size:11px}}.letter-mini-game{background:linear-gradient(125deg,#e9f7ff,#f7efff 55%,#fff3cf);border-radius:25px;margin-top:22px;padding:22px;box-shadow:0 12px 25px #4b46700d}.mini-game-copy p{color:#8971b4;margin:0;font-size:12px;font-weight:800}.mini-game-copy h2{color:#53457c;margin:5px 0;font-size:26px}.mini-game-copy>span{color:#66758f;font-size:14px}.mini-playground{isolation:isolate;background:linear-gradient(#9ce4ff 0 62%,#9de07b 62%);border-radius:20px;height:175px;margin:17px 0 12px;position:relative;overflow:hidden}.mini-playground:before{content:"";z-index:-1;background:#fff9;border-radius:50%;width:80px;height:18px;position:absolute;top:17%;left:8%}.mini-playground:after{content:"";z-index:-1;background:repeating-linear-gradient(100deg,#8dce69 0 30px,#a6e784 30px 60px);height:38%;position:absolute;inset:auto 0 0}.mini-target{z-index:1;transform-origin:50% 90%;filter:drop-shadow(0 8px 3px #3a71433d);font-size:72px;position:absolute;bottom:24px;right:17%}.mini-playground button{color:#604d75;z-index:2;background:#fffdf8;border:4px solid #fff;border-radius:50%;place-content:center;gap:1px;width:100px;height:100px;display:grid;position:absolute;bottom:20px;left:11%;box-shadow:0 8px #d8c4a9}.mini-playground button span{font-size:39px}.mini-playground button b{font-size:12px}.mini-playground button:active{transform:translateY(6px);box-shadow:0 2px #d8c4a9}.mini-spark{z-index:3;opacity:0;font-style:normal;position:absolute}.mini-spark.one{top:27px;right:37%}.mini-spark.two{top:48px;right:11%}.mini-game-bottom>div{background:#ddd5ed;border-radius:10px;height:10px;overflow:hidden}.mini-game-bottom i{border-radius:inherit;background:linear-gradient(90deg,#ffbf52,#ff7fb2);height:100%;transition:width .35s;display:block}.mini-game-bottom small{text-align:center;color:#765d98;margin-top:10px;font-weight:700;display:block}.mini-playground.shake .mini-target{font-size:84px;bottom:21px}.mini-playground.shake button:focus~.mini-target,.mini-playground.shake button:active~.mini-target{animation:.65s ease-in appleDrop}.mini-playground.tease .mini-target,.mini-playground.hop .mini-target,.mini-playground.roar .mini-target,.mini-playground.run .mini-target{animation:1.5s ease-in-out infinite animalBob}.mini-playground.complete .mini-target{animation:.75s ease-in-out 2 missionWin}.mini-playground.complete .mini-spark{animation:.8s ease-in-out infinite spark}.mini-playground.complete button{background:#fff0a9}@keyframes appleDrop{40%{transform:translate(-30px,-65px)rotate(-12deg)}to{transform:translate(-30px,36px)rotate(180deg)}}@keyframes animalBob{50%{transform:translateY(-15px)rotate(5deg)}}@keyframes missionWin{50%{transform:translateY(-35px)scale(1.2)rotate(10deg)}}@keyframes spark{50%{opacity:1;transform:translateY(-26px)scale(1.4)}}@media (width<=600px){.letter-mini-game{padding:18px}.mini-game-copy h2{font-size:23px}.mini-playground{height:160px}.mini-target{font-size:63px;right:13%}.mini-playground button{width:88px;height:88px;left:8%}.mini-playground.shake .mini-target{font-size:70px}}.mini-playground.playing .mini-spark{animation:.7s ease-out spark}.mini-playground.playing button{animation:.75s ease-in-out toolTap}.mini-playground.playing.shake .mini-target{animation:.9s cubic-bezier(.2,.7,.3,1) appleAction}.mini-playground.playing.bounce .mini-target{animation:.85s cubic-bezier(.2,.8,.25,1) ballAction}.mini-playground.playing.tease .mini-target{animation:.85s ease-in-out catPlay}.mini-playground.playing.throw .mini-target{animation:.9s ease-in-out dogFetch}.mini-playground.playing.crack .mini-target{animation:.85s ease-in-out eggHatch}.mini-playground.playing.feed .mini-target{animation:.95s ease-in-out fishSwim}.mini-playground.playing.peek .mini-target{animation:.8s ease-in-out goatPeek}.mini-playground.playing.catch .mini-target{animation:.9s ease-in-out hatFly}.mini-playground.playing.build .mini-target{animation:.9s ease-in-out iglooBuild}.mini-playground.playing.pour .mini-target{animation:.8s ease-in-out juicePour}.mini-playground.playing.fly .mini-target{animation:.95s ease-in-out kiteFly}.mini-playground.playing.roar .mini-target{animation:.85s ease-in-out lionRoar}.mini-playground.playing.glow .mini-target,.mini-playground.playing.shine .mini-target{animation:.9s ease-in-out shineAction}.mini-playground.playing.tuck .mini-target{animation:.85s ease-in-out nestAction}.mini-playground.playing.roll .mini-target{animation:.9s ease-in-out orangeRoll}.mini-playground.playing.munch .mini-target{animation:.85s ease-in-out pigMunch}.mini-playground.playing.crown .mini-target{animation:.85s ease-in-out queenCrown}.mini-playground.playing.hop .mini-target{animation:.85s ease-in-out rabbitHop}.mini-playground.playing.grow .mini-target{animation:.9s ease-in-out treeGrow}.mini-playground.playing.open .mini-target{animation:.85s ease-in-out openAction}.mini-playground.playing.drive .mini-target{animation:.95s ease-in-out vanDrive}.mini-playground.playing.splash .mini-target{animation:.95s ease-in-out whaleSplash}.mini-playground.playing.paint .mini-target{animation:.8s ease-in-out paintAction}.mini-playground.playing.run .mini-target{animation:.9s ease-in-out zebraRun}@keyframes toolTap{50%{transform:translateY(8px)rotate(-8deg)}}@keyframes appleAction{25%{transform:translate(-22px,-38px)rotate(-12deg)}75%{transform:translate(-35px,40px)rotate(160deg)}}@keyframes ballAction{25%,65%{transform:translate(-45px,-55px)rotate(180deg)}to{transform:translate(-10px)rotate(360deg)}}@keyframes catPlay{35%{transform:translate(-38px,-52px)rotate(-15deg)}70%{transform:translate(-16px)rotate(10deg)}}@keyframes dogFetch{45%{transform:translate(-65px,-10px)rotate(-12deg)}75%{transform:translate(-28px)rotate(9deg)}}@keyframes eggHatch{45%{transform:scale(1.22)rotate(-10deg)}70%{transform:translateY(-18px)scale(.9)}}@keyframes fishSwim{25%{transform:translate(-62px,-18px)rotate(-12deg)}55%{transform:translate(-28px,13px)rotate(10deg)}to{transform:translate(-5px)}}@keyframes goatPeek{45%{transform:translate(-34px,-27px)rotate(-8deg)}75%{transform:translate(-12px)}}@keyframes hatFly{45%{transform:translate(-55px,-55px)rotate(-25deg)}to{transform:translate(-16px)rotate(20deg)}}@keyframes iglooBuild{45%{transform:translateY(15px)scale(1.2)}to{transform:scale(1)}}@keyframes juicePour{45%{transform:rotate(32deg)translate(-18px,5px)}to{transform:rotate(0)}}@keyframes kiteFly{45%{transform:translate(-72px,-70px)rotate(-18deg)}to{transform:translate(-14px)}}@keyframes lionRoar{45%{transform:scale(1.32)rotate(-7deg)}to{transform:scale(1)}}@keyframes shineAction{50%{filter:drop-shadow(0 0 16px #fff);transform:scale(1.38)rotate(25deg)}}@keyframes nestAction{45%{transform:translateY(-15px)scale(1.18)}to{transform:translateY(0)}}@keyframes orangeRoll{50%{transform:translate(-75px,18px)rotate(360deg)}to{transform:translate(-20px,3px)rotate(540deg)}}@keyframes pigMunch{50%{transform:translate(-38px,8px)scale(1.16)}to{transform:translate(0)}}@keyframes queenCrown{50%{transform:translateY(-28px)scale(1.18)}to{transform:translateY(0)}}@keyframes rabbitHop{45%{transform:translate(-44px,-62px)rotate(-9deg)}to{transform:translate(-10px)}}@keyframes treeGrow{50%{transform:scale(1.26)translateY(-16px)}to{transform:scale(1)}}@keyframes openAction{45%{transform:scale(1.3)rotate(14deg)}to{transform:scale(1)}}@keyframes vanDrive{50%{transform:translate(-105px)rotate(-4deg)}to{transform:translate(-18px)}}@keyframes whaleSplash{35%{transform:translate(-42px,-45px)scale(1.25)}70%{transform:translate(-20px,2px)rotate(9deg)}to{transform:translate(0)}}@keyframes paintAction{50%{transform:scale(1.32)rotate(22deg)}to{transform:scale(1)}}@keyframes zebraRun{40%{transform:translate(-90px,-12px)rotate(-6deg)}75%{transform:translate(-25px)rotate(5deg)}}.parent-fab{z-index:10;color:#a65379;background:#fff;border:0;border-radius:18px;padding:10px 14px;font-weight:900;position:fixed;bottom:76px;right:18px;box-shadow:0 7px 16px #6847a133}.parent-page{color:#5b4065;background:linear-gradient(160deg,#ffe7ed,#fff9e9 55%,#e7f6ff);min-height:100vh}.parent-top{justify-content:space-between;align-items:center;max-width:920px;margin:auto;padding:16px 24px;display:flex}.parent-top button{color:#9f5a79;background:#fff;border:0;border-radius:13px;padding:9px 12px;font-weight:900}.parent-hero{text-align:center;color:#fff;background:linear-gradient(125deg,#ff94ae,#bb8ae6);min-height:210px;padding:26px 20px;position:relative;overflow:hidden}.parent-hero:before,.parent-hero:after{content:"♥";opacity:.25;font-size:46px;position:absolute}.parent-hero:before{top:34px;left:12%}.parent-hero:after{bottom:22px;right:12%}.parent-hero p{margin:0;font-size:13px;font-weight:900}.parent-hero h1{margin:8px 0;font-size:clamp(35px,6vw,54px)}.parent-hero>span{font-size:61px}.parent-board{max-width:640px;margin:-25px auto 0;padding:0 17px 50px;position:relative}.parent-progress{color:#815a82;align-items:center;gap:9px;margin-bottom:12px;font-size:13px;font-weight:900;display:flex}.parent-progress>div{background:#ffffff9c;border-radius:8px;flex:1;height:10px;overflow:hidden}.parent-progress i{background:#ff7798;border-radius:8px;height:100%;transition:all .3s;display:block}.parent-card{background:#fff;border-radius:28px;padding:22px;box-shadow:0 14px 30px #80557724}.scene{background:#fff2c8;border-radius:18px;align-items:center;gap:12px;padding:10px 14px;display:flex}.scene>span{font-size:42px}.scene small{color:#a67383;font-weight:900}.scene h2{margin:3px 0 0;font-size:19px}.talk{border-radius:18px;margin:15px 0;padding:14px 16px}.talk b{font-size:12px}.talk p{margin:6px 0 10px;font-size:22px;font-weight:900}.talk button{color:#75528f;background:#fff;border:0;border-radius:11px;padding:8px 11px;font-weight:900}.parent-talk{color:#6f4d9d;background:#efe5ff}.child-talk{color:#30765d;text-align:right;background:#dff7ee}.child-talk button{color:#267655}.heart-button,.parent-card.complete button{color:#fff;background:linear-gradient(135deg,#ff7191,#d66eb9);border:0;border-radius:15px;width:100%;padding:14px;font-size:16px;font-weight:900;box-shadow:0 5px #bd5380}.heart-button:active,.parent-card.complete button:active{transform:translateY(3px);box-shadow:0 2px #bd5380}.parent-tip{text-align:center;color:#977e9b;margin-top:16px;line-height:1.5;display:block}.parent-card.complete{text-align:center;padding:36px 22px}.parent-card.complete>span{font-size:72px}.parent-card.complete h2{margin:7px;font-size:26px}.parent-card.complete p{color:#7c6d84;line-height:1.6}.parent-card.complete button{width:auto;padding:12px 22px}@media (width<=640px){.parent-fab{font-size:12px;bottom:70px;right:12px}.parent-top{padding:14px}.parent-hero{min-height:190px}.parent-board{padding:0 12px 36px}.parent-card{padding:16px}.talk p{font-size:19px}}.spell-fab{z-index:20;color:#fff;background:linear-gradient(135deg,#7c56c9,#4d3f9f);border-radius:99px;padding:11px 15px;font-size:13px;font-weight:900;animation:2.4s ease-in-out infinite spellFab;position:fixed;bottom:140px;right:20px;box-shadow:0 6px #342d77}@keyframes spellFab{50%{transform:translateY(-5px)rotate(-1deg)}}.spell-page{color:#fff;background:linear-gradient(#20195c,#4e3c99 55%,#ffc878);min-height:100vh}.spell-top{background:#17124499;justify-content:space-between;align-items:center;height:68px;padding:0 max(5vw,20px);display:flex}.spell-top button{color:#fff;background:#ffffff1f;border:1px solid #ffffff4f;border-radius:12px;padding:9px 12px}.spell-top strong{font-size:18px}.spell-top span{font-weight:800}.spell-hero{text-align:center;padding:30px 20px 18px;position:relative;overflow:hidden}.spell-hero p{color:#e9ddff;margin:0;font-size:13px;font-weight:700}.spell-hero h1{text-shadow:0 5px #31236d;margin:5px 0;font-size:clamp(36px,7vw,56px)}.spell-hero>span{filter:drop-shadow(0 9px 5px #17124480);font-size:72px;position:absolute;bottom:-4px;right:12%}.spell-board{max-width:840px;margin:auto;padding:10px 20px 55px}.spell-scene{background:linear-gradient(#332779,#725bc2 66%,#453777 66%);border-radius:26px 26px 0 0;height:190px;position:relative;overflow:hidden}.spell-castle{filter:drop-shadow(0 10px 4px #170f5180);text-align:center;font-size:93px;position:absolute;bottom:18px;left:14%}.spell-castle small{font-size:11px;font-weight:700;display:block}.friendly-witch{text-align:center;z-index:2;transition:transform .55s cubic-bezier(.3,.9,.3,1);position:absolute;bottom:17px;right:14%}.friendly-witch span{filter:drop-shadow(0 9px 4px #170f5180);font-size:76px;display:block}.friendly-witch small{white-space:nowrap;font-weight:800}.friendly-witch.danger-1{transform:translate(-55px)scale(1.08)}.friendly-witch.danger-2{transform:translate(-110px)scale(1.16)}.friendly-witch.danger-3{transform:translate(-160px)scale(1.25)}.spell-cloud{opacity:.45;font-size:40px;font-style:normal;position:absolute}.spell-cloud.one{top:18px;left:40%}.spell-cloud.two{top:70px;right:5%}.spell-card{color:#4e3b72;background:#fffaf0;border-radius:0 0 26px 26px;padding:24px;box-shadow:0 18px 35px #170f5145}.spell-word{align-items:center;gap:16px;display:flex}.spell-word>span{font-size:72px}.spell-word p{color:#967bb5;margin:0;font-size:12px;font-weight:800}.spell-word h2{letter-spacing:8px;color:#593c91;margin:2px 0;font-size:35px}.spell-word small{color:#6e6480}.spell-listen{color:#68486e;background:#ffcc62;border-radius:16px;margin:20px auto 14px;padding:12px 22px;font-weight:900;display:block;box-shadow:0 5px #dda541}.letter-choices{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.letter-choices button{color:#60458f;background:#eee5ff;border-radius:14px;width:52px;height:54px;font-size:22px;font-weight:900;box-shadow:0 4px #d0bee9}.letter-choices button:active{box-shadow:none;transform:translateY(4px)}.letter-choices button:disabled{opacity:.45}.spell-note{text-align:center;color:#7f5da1;min-height:24px;margin:16px 0 4px;font-weight:800}.spell-next,.spell-win button{color:#fff;background:#6950b9;border-radius:16px;margin:12px auto 0;padding:13px 23px;font-weight:900;display:block;box-shadow:0 5px #483687}.danger-meter{align-items:center;gap:10px;max-width:580px;margin:17px auto 0;font-size:12px;font-weight:800;display:flex}.danger-meter>div{background:#ffffff42;border-radius:99px;flex:1;height:11px;overflow:hidden}.danger-meter i{border-radius:inherit;background:linear-gradient(90deg,#ffcc67,#f68);height:100%;transition:width .5s;display:block}.spell-win{color:#5b4482;text-align:center;background:#fffaf0;border-radius:28px;margin:25px auto;padding:38px 25px;box-shadow:0 18px 40px #170f5160}.spell-win>span{font-size:80px}.spell-win h2{margin:8px 0;font-size:29px}.spell-win p{color:#746589}@media (width<=600px){.spell-fab{bottom:132px;right:14px}.spell-top strong{font-size:15px}.spell-top span{font-size:12px}.spell-hero>span{font-size:56px;right:5%}.spell-scene{height:170px}.spell-castle{font-size:79px;left:5%}.friendly-witch{right:9%}.friendly-witch span{font-size:67px}.friendly-witch.danger-3{transform:translate(-105px)scale(1.16)}.spell-card{padding:20px 15px}.spell-word>span{font-size:60px}.spell-word h2{font-size:30px}.danger-meter{flex-wrap:wrap}.danger-meter>div{min-width:160px}}.letter-shot{color:#563c8d;z-index:5;background:#fff4a7;border-radius:50%;place-items:center;width:48px;height:48px;font-size:25px;font-weight:900;display:grid;position:absolute;bottom:17px;left:26%;box-shadow:0 0 0 8px #ffe57a66,0 0 23px #fff}.letter-shot.hit{animation:.72s cubic-bezier(.3,.8,.3,1) forwards shootHit}.letter-shot.miss{animation:.72s cubic-bezier(.3,.8,.3,1) forwards shootMiss}.friendly-witch.angry{animation:.48s ease-in-out 2 witchAngry}.friendly-witch.fallen{transition:transform .6s cubic-bezier(.3,.9,.3,1);transform:translate(-60px,28px)rotate(76deg)}.friendly-witch.fallen span{filter:grayscale(.2)drop-shadow(0 9px 4px #170f5180)}.hit-burst{white-space:nowrap;font-size:36px;font-style:normal;animation:.65s ease-out forwards hitBurst;position:absolute;top:-16px;left:-18px}@keyframes shootHit{60%{transform:translate(205px,-72px)scale(1.15)}to{opacity:0;transform:translate(214px,-76px)scale(.1)}}@keyframes shootMiss{60%{transform:translate(150px,-142px)rotate(200deg)}to{opacity:0;transform:translate(170px,-150px)scale(.2)}}@keyframes witchAngry{25%,75%{transform:translate(-12px)rotate(-8deg)}50%{transform:translate(8px)rotate(8deg)}}@keyframes hitBurst{30%{transform:scale(1.4)rotate(18deg)}to{opacity:0;transform:scale(1.9)}}@media (width<=600px){.letter-shot{bottom:15px;left:24%}@keyframes shootHit{60%{transform:translate(145px,-68px)scale(1.15)}to{opacity:0;transform:translate(152px,-72px)scale(.1)}}@keyframes shootMiss{60%{transform:translate(110px,-135px)rotate(200deg)}to{opacity:0;transform:translate(128px,-145px)scale(.2)}}.friendly-witch.fallen{transform:translate(-38px,27px)rotate(70deg)}}
