:root{color:#1b2c32;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--ink:#1b2c32;--deep-blue:#154c6a;--console:#c9e36f;--screen:#d8dfc8;--screen-ink:#344039;--pink:#f04e91;--cream:#fff2cf;--text:#1b2c32;--muted:#4d635e;--line:#1b2c32;--accent:#f04e91;--surface:#fff2cf;background:#78d7e8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:#78d7e8;min-width:320px;min-height:100%}body{min-width:320px;min-height:100dvh;padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0);overscroll-behavior-y:none;background:linear-gradient(#ffffff21 1px,#0000 1px) 0 0/16px 16px,linear-gradient(90deg,#ffffff21 1px,#0000 1px) 0 0/16px 16px,linear-gradient(#4cc9e3 0%,#9ae5ee 100%) 0 0/100% 100%;margin:0}button,input,textarea,select{font:inherit}#root{width:100%;min-height:100dvh;display:flex}::selection{color:#fff;background:var(--pink)}.musicToggle{z-index:1000;top:calc(env(safe-area-inset-top,0px) + 1.15rem);right:max(calc(env(safe-area-inset-right,0px) + 1.15rem), calc((100vw - 56rem) / 2 + 1.15rem));border:3px solid var(--ink);min-height:3rem;box-shadow:4px 4px 0 var(--ink);color:#29243c;background:#fff5b8;border-radius:999px;align-items:center;gap:.45rem;padding:.35rem .75rem .35rem .38rem;font-family:Courier New,monospace;transition:transform .15s,box-shadow .15s,background .15s;display:flex;position:absolute}.musicToggle:hover,.musicToggle:focus-visible{box-shadow:6px 6px 0 var(--ink);transform:translate(-1px,-1px)rotate(-1deg)}.musicToggle:active{box-shadow:1px 1px 0 var(--ink);transform:translate(3px,3px)}.musicToggle.isMuted{background:#e7e0ed}.musicToggle.isBlocked{background:#ffd0e2;animation:1.7s ease-in-out infinite musicNudge}.musicBear{border:2px solid var(--ink);background:#ffc0d8;border-radius:50%;place-items:center;width:2.15rem;height:2.15rem;font-size:1.15rem;display:grid}.musicNotes{color:#e73883;min-width:1rem;font-size:1rem;font-weight:900;animation:1.2s ease-in-out infinite alternate musicBob}.musicToggle.isMuted .musicNotes{color:#766d7f;animation:none}.musicButtonText{letter-spacing:.04em;text-transform:uppercase;font-size:.67rem;font-weight:900}@keyframes musicBob{0%{transform:translateY(2px)rotate(-8deg)}to{transform:translateY(-3px)rotate(8deg)}}@keyframes musicNudge{0%,to{transform:rotate(0)}40%{transform:rotate(-2deg)}60%{transform:rotate(2deg)}}@media (width<=620px){.musicToggle{top:calc(env(safe-area-inset-top,0px) + .7rem);right:calc(env(safe-area-inset-right,0px) + .7rem);padding-right:.38rem}.musicButtonText{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (prefers-reduced-motion:reduce){.musicToggle,.musicNotes{animation:none}}.appShell{border:4px solid var(--ink);background:var(--console);width:min(100% - 1.25rem,56rem);min-width:0;max-width:calc(100% - 1.25rem);box-shadow:8px 8px 0 var(--ink);border-radius:26px;margin:1rem auto 3rem;padding:clamp(.8rem,2vw,1.4rem)}.gameScreen{isolation:isolate;border:4px solid var(--ink);background:linear-gradient(#35bfe4 0%,#87dff0 58%,#c8f0ef 100%);border-radius:18px;min-width:0;padding:1rem clamp(1rem,4vw,2.4rem) 1.4rem;position:relative;overflow:hidden;box-shadow:inset 0 0 0 4px #ffffff57}.skyDecor{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.cloud{background:linear-gradient(#fff 5%,#effcff 62%,#c4e4ec 100%);border:3px solid #2b648559;border-radius:999px;width:7.5rem;height:2.5rem;animation:9s ease-in-out infinite alternate cloudDrift;position:absolute;box-shadow:inset 0 5px #fffc,0 9px #2c73932b,0 15px 20px #2c739324}.cloud:before,.cloud:after{content:"";background:linear-gradient(150deg,#fff 20%,#e2f5f8 86%);border:3px solid #2b648547;border-bottom:0;border-radius:50% 50% 0 0;position:absolute;bottom:.35rem}.cloud:before{width:2.8rem;height:2.8rem;left:1rem}.cloud:after{width:3.6rem;height:3.6rem;right:1rem}.cloudOne{top:5.8rem;left:-2rem}.cloudTwo{width:9rem;animation-duration:12s;animation-delay:-3s;top:9.5rem;right:-1.4rem}.cloudThree{opacity:.8;width:5.5rem;height:1.8rem;animation-duration:10s;animation-delay:-6s;top:16.5rem;left:52%}.landscape{height:42%;position:absolute;bottom:0;left:0;right:0}.hill{border:3px solid #1f675280;border-radius:50% 50% 0 0;position:absolute;bottom:-5rem}.hillBack{background:linear-gradient(150deg,#7dd890,#3eaf7c);width:75%;height:12rem;left:-12%;box-shadow:inset 0 7px #cff79b61}.hillFront{background:linear-gradient(145deg,#c7e85e,#70bd62);width:80%;height:10rem;right:-18%;box-shadow:inset 0 8px #f6ffa26b}.pixelCave{z-index:3;clip-path:polygon(0 100%,3% 70%,12% 70%,12% 45%,24% 45%,24% 27%,39% 27%,39% 14%,58% 5%,75% 17%,75% 25%,87% 25%,87% 45%,95% 45%,95% 70%,100% 70%,100% 100%);background:linear-gradient(145deg,#0000 0 42%,#adc4bf47 42% 54%,#0000 54%) 8% 4%/48% 43% no-repeat,linear-gradient(35deg,#0000 0 48%,#1f2f3652 48% 64%,#0000 64%) 94% 11%/50% 62% no-repeat,linear-gradient(132deg,#829295 0 24%,#66797e 24% 47%,#50646b 47% 69%,#354a52 69% 100%);border:4px solid #26333b;width:clamp(7.8rem,20vw,10.4rem);height:clamp(5.7rem,14.5vw,7.6rem);position:absolute;bottom:10.9rem;left:5%;box-shadow:inset 7px 7px #ccddd629,inset -8px -5px #14222833,5px 5px #1b2c323d}.pixelCave:before,.pixelCave:after{content:"";clip-path:polygon(0 100%,0 48%,10% 48%,10% 28%,25% 28%,25% 12%,40% 12%,40% 4%,62% 4%,62% 12%,78% 12%,78% 28%,92% 28%,92% 48%,100% 48%,100% 100%);position:absolute;bottom:-4px}.pixelCave:before{background:#26333b;width:49%;height:65%;left:26%}.pixelCave:after{background:linear-gradient(90deg,#3d525873,#0000 30%),#10191e;width:calc(49% - 8px);height:calc(65% - 5px);left:calc(26% + 4px);box-shadow:inset 8px 0 #41585d2e}.bonfire{z-index:5;filter:drop-shadow(0 8px 8px #512d1d4d);width:3.7rem;height:4.8rem;position:absolute;bottom:10.25rem;left:clamp(8.7rem,25%,13rem)}.flame{clip-path:polygon(52% 0,82% 33%,100% 69%,72% 100%,25% 96%,0 64%,27% 38%);transform-origin:50% 100%;display:block;position:absolute;bottom:.9rem;left:50%;transform:translate(-50%)}.flameBack{background:#ff5e45;width:2.8rem;height:3.6rem;animation:.72s steps(2,end) infinite alternate fireFlicker}.flameFront{background:#ffe55f;width:1.65rem;height:2.45rem;animation:.54s steps(2,end) -.2s infinite alternate-reverse fireFlicker;bottom:.85rem}.fireLog{background:#82513c;border:2px solid #3d2823;width:2.8rem;height:.55rem;position:absolute;bottom:.35rem;left:50%}.fireLogLeft{transform:translate(-50%)rotate(18deg)}.fireLogRight{transform:translate(-50%)rotate(-18deg)}@keyframes fireFlicker{0%{transform:translate(-50%)scale(.9,1.03)rotate(-3deg)}to{transform:translate(-50%)scale(1.06,.94)rotate(4deg)}}.tinyTree{color:#176f5a;text-shadow:2px 2px #0d4f45;font-size:2.1rem;position:absolute;bottom:2.2rem}.treeOne{left:12%}.treeTwo{font-size:2.7rem;bottom:1rem;right:24%}.treeThree{font-size:1.7rem;bottom:3.2rem;right:8%}@keyframes cloudDrift{0%{transform:translate(-10px)}to{transform:translate(18px,-7px)}}.gameHud{color:var(--ink);letter-spacing:.08em;text-shadow:2px 2px #ffffff61;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;font-family:Courier New,monospace;font-size:.78rem;font-weight:900;display:flex}.gameHud span:first-child{color:var(--pink);-webkit-text-stroke:1px var(--ink)}.hero{z-index:1;max-width:39rem;position:relative}.eyebrow{color:var(--deep-blue);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .65rem;font-family:Courier New,monospace;font-size:.72rem;font-weight:900}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,h3{color:var(--ink);font-family:Courier New,monospace;font-weight:900}h1{letter-spacing:-.075em;text-shadow:3px 3px #fff5b8,6px 6px #1b2c322b;margin:0;font-size:clamp(2.6rem,10vw,5.6rem);line-height:.9}h2{letter-spacing:-.055em;margin:0;font-size:clamp(1.55rem,5vw,2.35rem)}.intro{color:#223f50;max-width:34rem;margin:1.2rem 0 0;font-size:1rem;font-weight:700;line-height:1.55}.characterPerch{z-index:3;justify-content:center;align-items:flex-end;gap:1.25rem;min-height:6.4rem;margin:.7rem 0 -3px;display:flex;position:relative}.pixelFriend{display:block;position:relative}.pixelFriend>span{display:block}.turtleFriend{width:5.2rem;height:3.5rem;animation:2.4s steps(2,end) infinite turtleWiggle}.turtleShell{border:4px solid var(--ink);background-color:#76bd68;background-image:linear-gradient(45deg,#0000 42%,#3e845e 42% 52%,#0000 52%),linear-gradient(-45deg,#0000 42%,#3e845e 42% 52%,#0000 52%),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:1.4rem 1.4rem;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border-radius:48% 52% 35% 35%;width:3.8rem;height:2.65rem;position:absolute;bottom:.45rem;right:.7rem;box-shadow:inset 4px 4px #a8db77,4px 4px #1b2c3238}.turtleHead{border:4px solid var(--ink);background:#91d27b;border-radius:35% 50% 45% 35%;width:1.55rem;height:1.45rem;position:absolute;bottom:.65rem;right:0;box-shadow:inset -3px -3px #58a562}.turtleHead:before{background:var(--ink);content:"";width:.25rem;height:.25rem;position:absolute;top:.3rem;right:.25rem;box-shadow:.35rem .4rem 0 -.06rem #e98b94}.turtleFoot{border:3px solid var(--ink);background:#77bd69;width:.9rem;height:.7rem;position:absolute;bottom:0}.turtleFootOne{left:1.1rem}.turtleFootTwo{right:1.1rem}.bunnyFriend{width:4.2rem;height:5.7rem;animation:1.9s ease-in-out infinite bunnyBounce}.bunnyEar{z-index:0;border:4px solid var(--ink);background:linear-gradient(90deg,#fff6df 25%,#f4a8b9 26% 64%,#fff6df 65%);border-radius:45% 45% 28% 28%;width:1.05rem;height:2.7rem;position:absolute;top:0}.bunnyEarLeft{left:.6rem;transform:rotate(-8deg)}.bunnyEarRight{right:.55rem;transform:rotate(9deg)}.bunnyHead{z-index:2;border:4px solid var(--ink);background:#fff6df;border-radius:48% 48% 42% 42%;width:3.45rem;height:2.9rem;position:absolute;top:1.8rem;left:.4rem;box-shadow:inset -4px -4px #e7d8c8,4px 4px #1b2c3233}.bunnyHead:before{background:var(--ink);width:.3rem;height:.35rem;box-shadow:1.45rem 0 0 var(--ink), .7rem .65rem 0 -.06rem #e98b94;content:"";position:absolute;top:.8rem;left:.65rem}.bunnyBody{z-index:1;border:4px solid var(--ink);background:#f7ead7;border-radius:44% 44% 25% 25%;width:2.55rem;height:2.35rem;position:absolute;bottom:0;right:.7rem}.bunnyTail{z-index:0;border:3px solid var(--ink);background:#fffdf4;border-radius:50%;width:1.2rem;height:1.2rem;position:absolute;bottom:.8rem;right:0}.friendHeart{color:var(--pink);text-shadow:3px 3px 0 var(--ink);align-self:center;font-size:1.8rem;animation:1.5s steps(2,end) infinite heartPop}@keyframes turtleWiggle{0%,to{transform:rotate(-2deg)translateY(0)}50%{transform:rotate(2deg)translateY(-3px)}}@keyframes bunnyBounce{0%,to{transform:translateY(0)rotate(1deg)}50%{transform:translateY(-9px)rotate(-2deg)}}@keyframes heartPop{0%,to{transform:scale(.9)rotate(-5deg)}50%{transform:scale(1.18)rotate(5deg)}}.countdownCard{z-index:1;border:4px solid var(--ink);background:var(--screen);border-radius:15px;padding:clamp(.9rem,3vw,1.35rem);position:relative;box-shadow:inset 4px 4px #ffffff73,5px 5px #1b2c3238}.countdownLabel{color:var(--screen-ink);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .8rem;font-family:Courier New,monospace;font-size:.77rem;font-weight:900}.countdown{grid-template-columns:repeat(4,1fr);gap:.45rem;display:grid}.countdownUnit{text-align:center;background:#ffffff2e;border:2px solid #303d3759;min-width:0;padding:.6rem .2rem}.countdownUnit strong,.countdownUnit span{color:var(--screen-ink);font-family:Courier New,monospace;display:block}.countdownUnit strong{font-size:clamp(1.25rem,6vw,2.2rem);line-height:1}.countdownUnit span{letter-spacing:.03em;text-transform:uppercase;margin-top:.35rem;font-size:clamp(.48rem,1.8vw,.65rem);font-weight:900}.countdownCard.isMessage{background:radial-gradient(circle at 12% 18%, #ffffff59 0 2px, transparent 3px) 0 0 / 28px 28px, var(--screen)}.foreverClockMessage{color:var(--screen-ink);text-align:center;place-items:center;gap:.55rem;padding:clamp(.35rem,2vw,.85rem);animation:.5s ease-out both messageReveal;display:grid}.foreverSymbol{text-shadow:3px 3px #ffffff59;font-family:Georgia,Times New Roman,serif;font-size:clamp(3rem,11vw,5.2rem);font-weight:900;line-height:.8}.foreverEyebrow{letter-spacing:.11em;text-transform:uppercase;margin:0;font:900 .63rem Courier New,monospace}.foreverClockMessage h2{margin:.1rem 0 .25rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.55rem,6vw,2.6rem);line-height:1.05}.foreverClockMessage p{max-width:34rem;margin:0;font-size:clamp(.78rem,2.4vw,.96rem);font-weight:750;line-height:1.55}.foreverClockMessage strong{border-top:2px solid #303d3759;border-bottom:2px solid #303d3759;max-width:32rem;margin:.3rem 0 0;padding:.45rem .65rem;font-family:Courier New,monospace;font-size:clamp(.76rem,2.5vw,.95rem)}.collections{padding:clamp(1.5rem,4vw,2.4rem) clamp(.15rem,2vw,.75rem) 1rem}.sectionHeading{margin-bottom:1.1rem}.collectionGrid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.collectionCard,.backButton,.missingButton{border:3px solid var(--ink);color:var(--ink);font:inherit;cursor:pointer;font-weight:900;transition:transform .12s,box-shadow .12s}.collectionCard{background:var(--cream);min-height:7.4rem;box-shadow:5px 5px 0 var(--ink);text-align:left;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;padding:1rem;display:grid}.collectionCard:nth-child(2),.collectionCard:nth-child(4){background:#ffd1e6}.collectionCard:hover,.collectionCard:focus-visible,.backButton:hover,.backButton:focus-visible,.missingButton:hover,.missingButton:focus-visible{box-shadow:2px 2px 0 var(--ink);outline:none;transform:translate(2px,2px)}.cardIcon{border:3px solid var(--ink);width:3.1rem;height:3.1rem;box-shadow:3px 3px 0 var(--pink);background:#fff;place-items:center;font-size:1.5rem;display:grid}.cardCopy{flex-direction:column;gap:.25rem;min-width:0;display:flex}.cardCopy strong{font-family:Courier New,monospace;font-size:1rem}.cardCopy small{color:#4c5e58;font-size:.76rem;font-weight:700}.cardArrow{font-family:Courier New,monospace;font-size:1.45rem;font-weight:900}.missingCard{border:4px solid var(--ink);background:var(--pink);box-shadow:inset 4px 4px 0 #ffffff40, 5px 5px 0 var(--ink);border-radius:16px;gap:1rem;margin:1rem clamp(.15rem,2vw,.75rem) .35rem;padding:clamp(1.2rem,4vw,2rem);display:grid}.missingCard .eyebrow,.missingCard h2,.missingCard p{color:#271622}.missingCard p{margin:.5rem 0 0;font-weight:700;line-height:1.5}.missingButton{box-shadow:5px 5px 0 var(--ink);background:#fff5b8;border-radius:8px;justify-self:start;padding:.85rem 1.1rem;font-family:Courier New,monospace}.tapStatus{border:2px dashed var(--ink);background:#ffffff73;padding:.7rem;font-family:Courier New,monospace;font-size:.8rem}.specialMessageCard{border:3px solid var(--ink);box-shadow:5px 5px 0 var(--ink);background:radial-gradient(circle at 92% 12%,#f04e912e 0 4rem,#0000 4.1rem),#fff9e8;border-radius:14px;grid-template-columns:auto 1fr;gap:1rem;padding:clamp(1.1rem,4vw,1.6rem);animation:.45s cubic-bezier(.2,.8,.2,1) both messageReveal;display:grid;position:relative;overflow:hidden}.specialMessageIcon{border:3px solid var(--ink);background:#ffd5e7;border-radius:50%;place-items:center;width:3.2rem;height:3.2rem;font-size:1.45rem;display:grid}.specialMessageCard h3{color:#2d253f;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.3rem,4vw,1.7rem)}.missingCard .specialMessageKicker{color:#a33e70;letter-spacing:.14em;text-transform:uppercase;margin:0 0 .35rem;font-family:Courier New,monospace;font-size:.66rem}.missingCard .specialMessageCard p:not(.specialMessageKicker){color:#493b4b;margin-top:.8rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(.96rem,2.6vw,1.05rem);font-weight:500;line-height:1.7}.specialMessageSignoff{color:#a33e70;margin-top:1rem;font-family:Courier New,monospace;font-size:.78rem;font-weight:800;display:block}@keyframes messageReveal{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.pageView.giftsPage{isolation:isolate;background:radial-gradient(circle at 14% 12%,#ffffffbf 0 3px,#0000 4px) 0 0/72px 72px,radial-gradient(circle at 82% 26%,#f04e912e 0 5rem,#0000 5.1rem),linear-gradient(145deg,#ffe5f0 0%,#eee8ff 50%,#daf7ed 100%);border-color:#342947;position:relative;overflow:hidden;box-shadow:8px 8px #342947}.giftsPage .backButton{z-index:2;color:#342947;background:#fff4a8;border-color:#342947;position:relative;box-shadow:4px 4px #342947}.giftSparkles{z-index:-1;color:#d6458733;letter-spacing:1.5rem;font-size:clamp(2rem,8vw,5rem);position:absolute;top:6rem;right:-1rem;transform:rotate(-12deg)}.giftsHero{align-items:center;gap:clamp(1rem,4vw,2rem);max-width:45rem;margin:.5rem auto 1.4rem;display:flex}.giftsHero h1{color:#342947;text-shadow:3px 3px #fff4a8,6px 6px #34294724;font-size:clamp(2.8rem,9vw,5.4rem)}.giftsHero p:last-child{color:#554a68;margin:.9rem 0 0;font-weight:800;line-height:1.5}.giftHeroIcon{background:#fffaf0;border:4px solid #342947;border-radius:25% 45% 30% 42%;flex:none;place-items:center;width:clamp(5rem,15vw,7.4rem);height:clamp(5rem,15vw,7.4rem);font-size:clamp(2.5rem,8vw,4.2rem);display:grid;transform:rotate(-4deg);box-shadow:7px 7px #ec6ba4}.giftProgress{color:#342947;background:#fffaf0;border:3px solid #342947;border-radius:999px;align-items:center;gap:.5rem;width:fit-content;margin:0 auto 1.4rem;padding:.55rem .85rem;font-family:Courier New,monospace;display:flex;box-shadow:4px 4px #342947}.giftProgress>span{background:#e9e3ed;border:2px solid #342947;border-radius:50%;place-items:center;width:2rem;height:2rem;font-size:.78rem;font-weight:900;display:grid}.giftProgress>span.isCorrect{color:#fff;background:#f47daf;animation:.34s both giftKeyPop}.giftProgress strong{margin-left:.2rem;font-size:.75rem}.giftQuiz{gap:1rem;width:min(100%,47rem);margin:0 auto;display:grid}.giftQuestion{background:#fffaf1;border:4px solid #342947;border-radius:18px;margin:0;padding:clamp(1rem,3vw,1.35rem);box-shadow:6px 6px #342947}.giftQuestion:nth-child(2){background:#fff0f7;transform:rotate(.35deg)}.giftQuestion:nth-child(3){background:#f2efff;transform:rotate(-.3deg)}.giftQuestion legend{color:#342947;align-items:center;gap:.65rem;max-width:calc(100% - .5rem);padding:0 .4rem;font-family:Courier New,monospace;font-size:clamp(.92rem,2.8vw,1.08rem);font-weight:900;line-height:1.35;display:flex}.giftQuestion legend>span{background:#fff4a8;border:2px solid #342947;flex:none;place-items:center;width:2.2rem;height:2.2rem;font-size:.72rem;display:grid;box-shadow:2px 2px #342947}.giftOptions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin-top:.8rem;display:grid}.giftOptions label{color:#514760;cursor:pointer;background:#ffffffbf;border:3px solid #766d83;border-radius:10px;align-items:center;gap:.65rem;min-height:3.7rem;padding:.65rem;font-size:.82rem;font-weight:800;line-height:1.3;transition:transform .12s,box-shadow .12s,background .12s;display:flex}.giftOptions label:hover,.giftOptions label:focus-within{border-color:#342947;outline:none;transform:translate(-1px,-1px);box-shadow:3px 3px #342947}.giftOptions label.isSelected{background:#ffc9df;border-color:#342947;box-shadow:3px 3px #342947}.giftOptions input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.optionLetter{color:#342947;background:#fff;border:2px solid #342947;border-radius:50%;flex:none;place-items:center;width:1.75rem;height:1.75rem;font-family:Courier New,monospace;font-weight:900;display:grid}.giftHint{color:#70445c;text-align:center;background:#fff7c9;border:3px dashed #ae4f7b;width:min(100%,42rem);margin:1.25rem auto 0;padding:.8rem;font-weight:800}.giftQuestion:disabled .giftOptions label:not(.isSelected){opacity:.42;cursor:default}.giftFeedbackOverlay{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#281f379e;place-items:center;padding:1.25rem;animation:.18s ease-out both feedbackFade;display:grid;position:fixed;inset:0}.giftFeedbackCard{color:#342947;text-align:center;border:5px solid #342947;border-radius:24px;place-items:center;width:min(100%,25rem);padding:clamp(1.4rem,5vw,2.2rem);animation:.32s cubic-bezier(.2,.9,.25,1.25) both feedbackPop;display:grid;box-shadow:9px 9px #342947}.giftFeedbackOverlay.isCorrect .giftFeedbackCard{background:linear-gradient(145deg,#ddf7d0,#fff4a8)}.giftFeedbackOverlay.isWrong .giftFeedbackCard{background:linear-gradient(145deg,#ffe1eb,#ffc3d9)}.feedbackTurtle{place-items:center;margin-bottom:.5rem;display:grid}.feedbackTurtle>span{filter:drop-shadow(4px 4px #34294738);font-size:clamp(4.5rem,18vw,7rem);line-height:1}.feedbackTurtle small{background:#fffaf0;border:2px solid #342947;border-radius:999px;margin-top:-.2rem;padding:.25rem .55rem;font-family:Courier New,monospace;font-size:.9rem;font-weight:900}.giftFeedbackOverlay.isCorrect .feedbackTurtle{animation:.65s ease-in-out infinite alternate happyTurtle}.giftFeedbackOverlay.isWrong .feedbackTurtle{animation:.48s ease-in-out infinite alternate sadTurtle}.feedbackKicker{letter-spacing:.12em;text-transform:uppercase;margin:.45rem 0 0;font-family:Courier New,monospace;font-size:.7rem;font-weight:900}.giftFeedbackCard h2{text-shadow:3px 3px #fff;margin:.25rem 0;font-family:Courier New,monospace;font-size:clamp(2.6rem,12vw,4.6rem);line-height:1}.giftFeedbackOverlay.isCorrect h2{color:#287a5c}.giftFeedbackOverlay.isWrong h2{color:#c53367}.giftFeedbackCard>p:last-of-type{margin:.6rem 0 1.1rem;font-weight:800;line-height:1.45}.giftFeedbackCard button{color:#342947;cursor:pointer;text-transform:uppercase;background:#fffaf0;border:3px solid #342947;border-radius:999px;padding:.75rem 1.3rem;font:900 .82rem Courier New,monospace;transition:transform .12s,box-shadow .12s;box-shadow:4px 4px #342947}.giftFeedbackCard button:hover,.giftFeedbackCard button:focus-visible{outline:none;transform:translate(2px,2px);box-shadow:2px 2px #342947}@keyframes feedbackFade{0%{opacity:0}to{opacity:1}}@keyframes feedbackPop{0%{opacity:0;transform:scale(.72)rotate(-4deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes happyTurtle{0%{transform:translateY(0)rotate(-3deg)}to{transform:translateY(-8px)rotate(3deg)}}@keyframes sadTurtle{0%{transform:translate(-3px)rotate(-2deg)}to{transform:translate(3px)rotate(2deg)}}.couponVault{width:min(100%,45rem);min-height:19rem;margin:2.2rem auto .8rem}.lockedCoupon{color:#504957;filter:grayscale();text-align:center;background:repeating-linear-gradient(-45deg,#ffffff06 0 8px,#0000 8px 16px),#aaa3af;border:4px dashed #665d70;border-radius:24px;align-content:center;place-items:center;gap:.65rem;min-height:18rem;display:grid;box-shadow:inset 0 0 0 5px #ffffff29,7px 7px #3429478c}.lockedCoupon:after{color:#4a435066;content:"GIFT 01";letter-spacing:-.08em;font-family:Courier New,monospace;font-size:clamp(2.5rem,10vw,5.5rem);font-weight:900}.couponLock{font-size:2.5rem}.lockedCoupon strong{text-transform:uppercase;font-family:Courier New,monospace;font-size:1.2rem}.lockedCoupon>span:last-of-type{padding:0 1rem;font-size:.8rem;font-weight:800}.unlockStamp{color:#a13b6b;letter-spacing:.12em;text-align:center;text-transform:uppercase;margin:0 0 .8rem;font-family:Courier New,monospace;font-size:.82rem;font-weight:900;animation:.42s both giftKeyPop}.couponFlip{width:100%;min-height:27rem;color:inherit;font:inherit;cursor:pointer;perspective:1200px;background:0 0;border:0;border-radius:24px;padding:0}.couponFlip:focus-visible{outline-offset:6px;outline:4px solid #e5488c}.couponInner{width:100%;min-height:27rem;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.2,.8,.2,1);display:block;position:relative}.couponFlip.isFlipped .couponInner{transform:rotateY(180deg)}.couponFace{backface-visibility:hidden;border:5px solid #342947;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;padding:clamp(1.25rem,5vw,2.5rem);display:flex;position:absolute;inset:0;overflow:hidden;box-shadow:8px 8px #342947}.couponFace:before,.couponFace:after{content:"";background:#eee8ff;border:4px solid #342947;border-radius:50%;width:2.7rem;height:2.7rem;position:absolute;top:50%;transform:translateY(-50%)}.couponFace:before{left:-1.55rem}.couponFace:after{right:-1.55rem}.couponFront{background:radial-gradient(circle at 8% 15%,#fffc 0 3px,#0000 4px) 0 0/55px 55px,linear-gradient(145deg,#fff4a8 0%,#ffc4dc 58%,#f09bc1 100%)}.couponBack{background:linear-gradient(90deg,#0000 49%,#ffffff40 50%,#0000 51%) 0 0/28px 28px,#b7ead2;transform:rotateY(180deg)}.couponTopline{color:#342947;letter-spacing:.1em;text-transform:uppercase;background:#ffffff8c;border:2px solid #342947;border-radius:999px;padding:.45rem .7rem;font-family:Courier New,monospace;font-size:.68rem;font-weight:900}.couponTitle{color:#342947;text-align:center;text-shadow:2px 2px #fff4dd;max-width:34rem;margin:1.05rem auto .55rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,7vw,3.6rem);font-weight:800;line-height:.98}.couponPromise{color:#7e355a;text-transform:uppercase;font-family:Courier New,monospace;font-size:.78rem;font-weight:900}.couponDetails{background:#ffffff9e;border:3px solid #342947;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;margin-top:1.25rem;display:grid}.couponDetails>span{color:#342947;text-align:left;align-content:start;gap:.25rem;padding:.8rem .55rem;display:grid}.couponDetails>span+span{border-left:2px dashed #8b6680}.couponDetails small{color:#a13b6b;letter-spacing:.1em;text-transform:uppercase;font-family:Courier New,monospace;font-size:.62rem;font-weight:900}.couponDetails strong{font-size:clamp(.7rem,2.3vw,.86rem);line-height:1.35}.couponFlipHint{color:#6a5365;letter-spacing:.08em;text-transform:uppercase;margin-top:1rem;font-family:Courier New,monospace;font-size:.67rem;font-weight:900}.couponBackQuestion{color:#342947;max-width:32rem;margin:1.2rem auto .8rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,6vw,3.1rem);font-weight:800;line-height:1.05}.couponBackAnswer{color:#3f5e52;max-width:31rem;font-size:clamp(.92rem,3vw,1.12rem);font-weight:850;line-height:1.6}@keyframes giftKeyPop{0%{transform:scale(.7)rotate(-12deg)}65%{transform:scale(1.15)rotate(5deg)}to{transform:scale(1)rotate(0)}}.giftTwoChallenge{width:min(100%,52rem);margin:4rem auto 1rem}.giftChapterDivider{color:#a13b6b;letter-spacing:.12em;align-items:center;gap:.8rem;margin-bottom:2.4rem;font:900 .86rem Courier New,monospace;display:flex}.giftChapterDivider span{background:#342947;flex:1;height:3px;box-shadow:0 4px #3429471f}.giftTwoHeader{text-align:center;max-width:43rem;margin:0 auto 1.3rem}.giftTwoHeader h2{color:#342947;margin:.25rem 0 .7rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.35rem,8vw,4.3rem);line-height:.96}.giftTwoHeader>p:last-child{color:#5f4c61;margin:0;font-weight:750;line-height:1.55}.giftTwoProgress{background:#d9f1ef}.wallpaperVault{width:min(100%,46rem);min-height:25rem;margin:2.2rem auto 0}.lockedWallpaper{color:#504957;filter:grayscale();text-align:center;background:repeating-linear-gradient(-45deg,#aaa3af 0 11px,#b8b2bc 11px 22px);border:4px dashed #665d70;border-radius:24px;align-content:center;place-items:center;gap:.65rem;min-height:25rem;display:grid;box-shadow:inset 0 0 0 5px #ffffff29,7px 7px #3429478c}.lockedPhone{aspect-ratio:846/1734;background:#8e8793;border:5px solid #504957;border-radius:18px;place-items:center;width:7rem;font-size:2rem;display:grid;box-shadow:inset 0 0 0 4px #c3bec6}.lockedWallpaper strong{text-transform:uppercase;font:900 1.2rem Courier New,monospace}.lockedWallpaper>span{max-width:24rem;padding:0 1rem;font-size:.8rem;font-weight:800}.wallpaperReward{background:radial-gradient(circle at 88% 14%,#ffffffb3 0 4px,#0000 5px) 0 0/44px 44px,linear-gradient(145deg,#d7f1ef,#ffcce0);border:5px solid #342947;border-radius:26px;grid-template-columns:minmax(11rem,17rem) 1fr;align-items:center;gap:clamp(1.3rem,5vw,2.8rem);padding:clamp(1.2rem,4vw,2.2rem);animation:.5s ease-out both wallpaperReveal;display:grid;box-shadow:8px 8px #342947}.wallpaperPhone{aspect-ratio:846/1734;background:#342947;border:6px solid #342947;border-radius:30px;overflow:hidden;box-shadow:8px 9px #34294740}.wallpaperPhone img{object-fit:cover;width:100%;height:100%;display:block}.wallpaperCopy{text-align:left}.wallpaperBadge{letter-spacing:.06em;background:#fff4a8;border:2px solid #342947;border-radius:999px;padding:.4rem .65rem;font:900 .65rem Courier New,monospace;display:inline-block}.wallpaperCopy h3{color:#342947;margin:.9rem 0 .65rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,5vw,2.8rem);line-height:1}.wallpaperCopy p{color:#594b5e;margin:0 0 1.25rem;font-weight:750;line-height:1.55}.wallpaperDownload{color:#fff;text-transform:uppercase;background:#e5488c;border:3px solid #342947;border-radius:12px;padding:.82rem 1rem;font:900 .72rem Courier New,monospace;text-decoration:none;transition:transform .12s,box-shadow .12s;display:inline-block;box-shadow:5px 5px #342947}.wallpaperDownload:hover,.wallpaperDownload:focus-visible{outline:none;transform:translate(3px,3px);box-shadow:2px 2px #342947}@keyframes wallpaperReveal{0%{opacity:0;transform:translateY(18px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.giftFeedbackOverlay.isChoice .giftFeedbackCard{background:linear-gradient(145deg,#e6dcff,#ffe7a8)}.giftFeedbackOverlay.isChoice h2{color:#7750a7}.finalGiftChallenge{width:min(100%,52rem);margin:4.5rem auto 1rem}.finalGiftHeader{text-align:center;max-width:44rem;margin:0 auto 1.3rem}.finalGiftHeader h2{color:#342947;margin:.25rem 0 .7rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.5rem,8vw,4.5rem);line-height:.96}.finalGiftHeader>p:last-child{color:#5f4c61;margin:0;font-weight:750;line-height:1.55}.finalGiftProgress{background:#ece3ff}.finalGiftVault{width:min(100%,46rem);min-height:20rem;margin:2.2rem auto 0}.lockedFinalGift{color:#514957;filter:grayscale();text-align:center;background:repeating-linear-gradient(45deg,#b2a9b8 0 13px,#c1bac5 13px 26px);border:4px dashed #74657e;border-radius:24px;align-content:center;place-items:center;gap:.65rem;min-height:20rem;display:grid;box-shadow:7px 7px #3429478c}.lockedFinalGift>span{filter:drop-shadow(4px 4px #34294740);font-size:4.5rem}.lockedFinalGift strong{text-transform:uppercase;font:900 1.2rem Courier New,monospace}.lockedFinalGift small{max-width:24rem;padding:0 1rem;font-weight:800;line-height:1.45}.colorChoiceGift{text-align:center;background:radial-gradient(circle at 10% 15%,#fff 0 3px,#0000 4px) 0 0/38px 38px,linear-gradient(145deg,#fff4dc,#ffd8e7);border:5px solid #342947;border-radius:26px;padding:clamp(1.4rem,5vw,2.5rem);animation:.5s ease-out both wallpaperReveal;box-shadow:8px 8px #342947}.colorChoiceGift h3{color:#342947;margin:.8rem 0 .45rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.3rem,8vw,3.8rem)}.colorChoiceGift>p:not(.unlockStamp){color:#5f4c61;margin:0 0 1.5rem;font-weight:750}.colorChoices{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:0 auto;display:grid}.colorChoices button{color:#342947;cursor:pointer;border:4px solid #342947;border-radius:16px;grid-template-columns:auto 1fr;align-items:center;gap:.75rem;padding:.9rem;font:900 .9rem Courier New,monospace;transition:transform .12s,box-shadow .12s;display:grid;box-shadow:5px 5px #342947}.colorChoices button>span{aspect-ratio:1;border:3px solid #342947;border-radius:50%;width:2.2rem}.creamishChoice{background:#f4ead5}.creamishChoice>span{background:#f3e5c9}.redChoice{background:#f7b7bd}.redChoice>span{background:#be233c}.colorChoices button:hover,.colorChoices button:focus-visible,.colorChoices button[aria-pressed=true]{outline:none;transform:translate(3px,3px);box-shadow:2px 2px #342947}.colorChoices button[aria-pressed=true]{box-shadow:0 0 0 4px #fff,0 0 0 8px #e5488c}.giftComingSoon{color:#4e3e52;background:#fffaf0;border:3px dashed #a13b6b;border-radius:16px;place-items:center;gap:.35rem;margin-top:1.8rem;padding:1.2rem;animation:.32s ease-out both feedbackPop;display:grid}.giftComingSoon>span{font-size:2.2rem}.giftComingSoon strong{font-size:1.05rem}.giftComingSoon small{font-weight:800}@media (width<=620px){.giftsHero{align-items:flex-start}.giftHeroIcon{width:4.4rem;height:4.4rem;font-size:2.35rem}.giftOptions{grid-template-columns:1fr}.giftProgress{gap:.35rem}.giftProgress>span{width:1.7rem;height:1.7rem}.couponFlip,.couponInner{min-height:32rem}.couponDetails{grid-template-columns:1fr}.couponDetails>span+span{border-top:2px dashed #8b6680;border-left:0}.giftTwoChallenge{margin-top:3rem}.wallpaperReward{grid-template-columns:1fr;justify-items:center}.wallpaperPhone{width:min(72%,14rem)}.wallpaperCopy{text-align:center}.finalGiftChallenge{margin-top:3rem}.colorChoices{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.couponInner{transition:none}.giftProgress>span.isCorrect,.unlockStamp{animation:none}}.pageView.galleryPage{background:radial-gradient(circle at 12% 18%, #ffffff47 0 3px, transparent 4px), radial-gradient(circle at 88% 32%, #fff3 0 3px, transparent 4px), linear-gradient(180deg, #43c8e5 0 24%, transparent 24%), var(--console)}.galleryHero{text-align:center;max-width:42rem;margin:0 auto 1.35rem}.galleryHero h1{margin-bottom:1rem}.galleryNote{border:3px dashed var(--ink);text-align:left;background:#fff5b8;align-items:center;gap:.8rem;padding:.85rem 1rem;display:flex;transform:rotate(-.5deg);box-shadow:4px 4px #1b2c324d}.galleryNote>span{font-size:1.7rem}.galleryNote p{color:var(--ink);gap:.25rem;margin:0;font-size:.83rem;font-weight:700;line-height:1.45;display:grid}.galleryNote strong{font-family:Courier New,monospace;font-size:.9rem}.galleryViewport{overscroll-behavior:contain;border:4px solid var(--ink);height:clamp(34rem,72vh,46rem);box-shadow:inset 0 0 0 4px #ffffff1a, 6px 6px 0 var(--ink);scroll-behavior:smooth;scroll-snap-type:y mandatory;scrollbar-color:var(--pink) #193b4b;scrollbar-width:thin;background:linear-gradient(#ffffff0d 2px,#0000 2px) 0 0/100% 24px,linear-gradient(135deg,#164b5f,#183c50 60%,#282f4f);border-radius:16px;overflow-y:auto}.galleryViewport::-webkit-scrollbar{width:10px}.galleryViewport::-webkit-scrollbar-track{background:#193b4b}.galleryViewport::-webkit-scrollbar-thumb{background:var(--pink);border:2px solid #193b4b}.gallerySlide{scroll-snap-align:start;scroll-snap-stop:always;align-content:center;place-items:center;gap:.8rem;min-height:100%;padding:2.3rem 1rem 1rem;display:grid}.polaroid{border:3px solid var(--ink);background:#fffdf8;width:min(88%,29rem);margin:0;padding:clamp(.75rem,2vw,1rem) clamp(.75rem,2vw,1rem) clamp(1rem,3vw,1.45rem);position:relative;transform:rotate(-1.1deg);box-shadow:9px 10px #07161d73}.gallerySlide:nth-child(2n) .polaroid{transform:rotate(1.1deg)}.gallerySlide:nth-child(3n) .polaroid{transform:rotate(-.35deg)}.photoAperture{background-color:#050708;border:3px solid #29383d;height:clamp(21rem,53vh,31rem);position:relative;overflow:hidden;box-shadow:inset 0 0 0 3px #ffffff2e;background-image:none!important}.photoAperture:after{content:"";pointer-events:none;background:linear-gradient(135deg,#ffffff2e,#0000 28% 72%,#0b191f24);position:absolute;inset:0}.photoAperture img{z-index:1;object-fit:contain;filter:saturate(.96)contrast(1.02);width:100%;height:100%;display:block;position:relative}.polaroidCaption{color:#24353a;gap:.35rem;padding:.85rem .35rem 0;display:grid}.polaroidCaption p{font:inherit;margin:0;font-size:clamp(.95rem,2.6vw,1.15rem);font-weight:600;line-height:1.45}.polaroidTape{background:#ffe297d9;border:2px solid #513f2840;width:5.4rem;height:1.6rem;position:absolute;top:-.9rem;left:50%;transform:translate(-50%)rotate(2deg)}.scrollCue{color:#fff5b8;letter-spacing:.05em;text-align:center;text-transform:uppercase;text-shadow:2px 2px #09181eb3;margin:0;font-family:Courier New,monospace;font-size:.7rem;font-weight:900}.pageView.poemPage{isolation:isolate;color:#e8dfd0;background:radial-gradient(circle at 50% 0,#eed2a617,#0000 30rem),linear-gradient(#121722 0%,#080b12 42%,#030407 100%);border-color:#07090d;position:relative;overflow:hidden;box-shadow:8px 8px #05070a}.poemPage:before{z-index:-1;content:"";opacity:.5;pointer-events:none;background-image:radial-gradient(circle,#ffe7be2e 0 1px,#0000 1.5px),radial-gradient(circle,#ffffff17 0 1px,#0000 1.5px);background-position:0 0,31px 47px;background-size:91px 91px,137px 137px;position:absolute;inset:0}.poemGlow{z-index:-1;filter:blur(70px);pointer-events:none;background:#eac38914;border-radius:50%;width:18rem;height:18rem;position:absolute}.poemGlowOne{top:14rem;right:-8rem}.poemGlowTwo{top:56%;left:-10rem}.poemPage .backButton{z-index:3;color:#f0dfc3;background:#0c0f17e6;border-color:#a99477;position:relative;box-shadow:4px 4px #000}.poemHero{text-align:center;max-width:38rem;margin:clamp(4rem,11vw,8rem) auto clamp(5rem,13vw,9rem)}.poemHero h1{color:#f3eadc;letter-spacing:-.055em;text-shadow:0 0 35px #f4dab029;font-family:Georgia,Times New Roman,serif;font-size:clamp(3rem,10vw,6rem);font-weight:400;line-height:.95}.poemScrollHint{color:#887b69;letter-spacing:.16em;text-transform:uppercase;margin-top:3rem;font-family:Courier New,monospace;font-size:.64rem;animation:2.4s ease-in-out infinite poemFloat;display:inline-block}.poemScenes{gap:clamp(5rem,13vw,9rem);display:grid}.poemScene{width:min(100%,46rem);margin:0 auto;position:relative}.poemScene figure{z-index:1;background:#020304;border:1px solid #e5cfae40;margin:0;position:relative;overflow:hidden;box-shadow:0 24px 70px #0000009e,0 0 0 7px #ffffff05}.poemScene figure:after{content:"";pointer-events:none;background:linear-gradient(115deg,#fff1da14,#0000 25%),radial-gradient(circle,#0000 55%,#00000052);position:absolute;inset:0}.poemScene img{aspect-ratio:1672/941;object-fit:cover;filter:saturate(.72)contrast(1.07);width:100%;transition:filter .5s,transform .9s;display:block}.poemScene:hover img{filter:saturate(.95)contrast(1.04);transform:scale(1.012)}.sceneNumber{z-index:2;color:#cdb894;letter-spacing:.22em;font-family:Courier New,monospace;font-size:.7rem;position:absolute;top:-1.4rem;left:clamp(.5rem,3vw,1.4rem)}.sceneNumber:after{content:"";background:#cdb89473;width:3rem;height:1px;margin:0 0 .25rem .7rem;display:inline-block}.sceneThread{background:linear-gradient(#cdb89473,#0000);width:1px;height:clamp(5rem,13vw,9rem);position:absolute;bottom:calc(-1*clamp(5rem,13vw,9rem));left:50%}.poemThreshold{color:#c7ad81;align-items:center;gap:1.2rem;width:min(80%,32rem);margin:clamp(7rem,16vw,12rem) auto clamp(5rem,12vw,8rem);display:flex}.poemThreshold span{background:linear-gradient(90deg,#0000,#c7ad818c);flex:1;height:1px}.poemThreshold span:last-child{transform:scaleX(-1)}.poemLetter{background:linear-gradient(90deg,#0000,#ffffff06,#0000),#0c0f15db;border:1px solid #e7d3b533;width:min(100%,43rem);margin:0 auto clamp(4rem,12vw,8rem);padding:clamp(2rem,7vw,4.5rem) clamp(1.15rem,7vw,4.2rem);position:relative;box-shadow:0 30px 90px #000000a6}.poemLetter:before,.poemLetter:after{content:"";border-color:#ddc59f80;width:2.5rem;height:2.5rem;position:absolute}.poemLetter:before{border-top:1px solid;border-left:1px solid;top:.75rem;left:.75rem}.poemLetter:after{border-bottom:1px solid;border-right:1px solid;bottom:.75rem;right:.75rem}.poemStanzas{gap:clamp(2.8rem,8vw,4.6rem);display:grid}.poemStanzas p{color:#cfc7bc;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(.94rem,2.6vw,1.12rem);line-height:1.9;position:relative}.poemStanzas p:nth-child(2n){padding-left:clamp(.4rem,5vw,2.5rem)}.poemStanzas p:not(:last-child):after{content:"";background:linear-gradient(90deg,#7e6f59,#0000);width:2.8rem;height:1px;margin-top:1.8rem;display:block}.poemStanzas span{display:block}.poemStanzas .finalStanza{color:#fff3de;text-align:center;text-shadow:0 0 24px #ffe1b233;margin-top:1rem;font-size:clamp(1.08rem,3.2vw,1.4rem);font-style:italic}.poemEnding{place-items:center;margin-top:3.5rem;display:grid}.butterfly{filter:sepia(.55)drop-shadow(0 0 12px #ffdfa84d);font-size:2rem;animation:4s ease-in-out infinite butterflyDrift;display:block}.endingTrail{color:#8f7b5d;letter-spacing:.35em;margin-top:.4rem;font-size:.7rem}@keyframes poemFloat{0%,to{transform:translateY(0)}50%{transform:translateY(7px)}}@keyframes butterflyDrift{0%,to{transform:translate(-5px,2px)rotate(-8deg)}50%{transform:translate(7px,-8px)rotate(7deg)}}.pageView.crosswordPage{isolation:isolate;background:radial-gradient(circle at 12% 18%,#ffffffb8 0 3px,#0000 4px) 0 0/70px 70px,radial-gradient(circle at 86% 28%,#ffffff8c 0 2px,#0000 3px) 0 0/92px 92px,linear-gradient(145deg,#fce2f0 0%,#e7e4ff 52%,#d9f5ec 100%);border-color:#332e4c;min-height:calc(100vh - 4rem);position:relative;overflow:hidden;box-shadow:8px 8px #332e4c}.crosswordPage:before,.crosswordPage:after{z-index:-1;content:"";border:3px solid #5d4c8421;border-radius:50%;width:14rem;height:14rem;position:absolute}.crosswordPage:before{top:-6rem;right:-5rem;box-shadow:inset 0 0 0 2rem #ffffff26}.crosswordPage:after{bottom:-8rem;left:-5rem;box-shadow:inset 0 0 0 2rem #ffffff26}.crosswordPage .backButton{z-index:2;color:#332e4c;background:#fff7c7;border-color:#332e4c;position:relative;box-shadow:4px 4px #332e4c}.crosswordDecor{z-index:-1;color:#e0538e38;pointer-events:none;font-size:1.6rem;position:absolute;inset:0}.crosswordDecor span{animation:3.6s ease-in-out infinite crosswordFloat;position:absolute}.crosswordDecor span:first-child{top:8%;left:7%}.crosswordDecor span:nth-child(2){animation-delay:-1s;top:14%;right:8%}.crosswordDecor span:nth-child(3){animation-delay:-2s;bottom:8%;right:7%}.crosswordDecor span:nth-child(4){animation-delay:-3s;bottom:15%;left:5%}.crosswordHero{text-align:left;align-items:center;gap:clamp(1rem,4vw,2rem);max-width:43rem;margin:1rem auto clamp(2rem,6vw,3.5rem);display:flex}.crosswordHero h1{color:#332e4c;text-shadow:3px 3px #fff8c9,6px 6px #5c4c8324;font-size:clamp(2.8rem,9vw,5.2rem)}.crosswordHero>div>p:last-child{color:#544f6c;max-width:34rem;margin:1rem 0 0;font-weight:800;line-height:1.55}.crosswordMascot{background:#fff9e9;border:4px solid #332e4c;border-radius:44% 56% 48% 52%;flex:none;place-items:center;width:clamp(5.5rem,16vw,8rem);height:clamp(5.5rem,16vw,8rem);font-size:clamp(2.8rem,8vw,4.5rem);display:grid;transform:rotate(-4deg);box-shadow:7px 7px #f17eb1}.crosswordGame{grid-template-columns:minmax(0,1fr) minmax(13rem,16rem);align-items:start;gap:clamp(1rem,3vw,1.8rem);display:grid;position:relative}.wordSearchPanel,.wordBank{border:4px solid #332e4c;border-radius:20px;box-shadow:7px 7px #332e4c}.wordSearchPanel{background:#fffaf0;padding:clamp(.55rem,2vw,1rem)}.wordSearchGrid{-webkit-user-select:none;user-select:none;background:linear-gradient(145deg,#a99add,#7c70b9);border:3px solid #332e4c;border-radius:13px;grid-template-columns:repeat(10,minmax(0,1fr));gap:clamp(2px,.7vw,5px);padding:clamp(.45rem,1.4vw,.75rem);display:grid;box-shadow:inset 0 0 0 3px #ffffff42}.letterCell{aspect-ratio:1;color:#332e4c;background:#fffdf3;border:2px solid #332e4c;border-radius:clamp(4px,1.2vw,8px);place-items:center;min-width:0;padding:0;font-family:Courier New,monospace;font-size:clamp(.72rem,2.8vw,1.28rem);font-weight:900;line-height:1;transition:transform .12s,background .15s,color .15s;display:grid;box-shadow:2px 2px #332e4c}.letterCell:hover{background:#fff1a8;transform:translateY(-2px)}.letterCell:focus-visible{outline-offset:2px;outline:3px solid #ee4f91}.letterCell.isStart{background:#ffe26f;transform:scale(1.06)rotate(-3deg);box-shadow:0 0 0 3px #f17eb1,2px 2px #332e4c}.letterCell.isFound{color:#fff;text-shadow:1px 1px #6e3158;background:#f17eb1;animation:.42s both wordFoundPop}.crosswordStatus{color:#514a69;text-align:center;min-height:1.5rem;margin:1rem 0 0;font-family:Courier New,monospace;font-size:clamp(.72rem,2.3vw,.88rem);font-weight:900}.wordBank{background:#fff4f8;padding:1rem;transform:rotate(1deg)}.wordBankHeading{border-bottom:3px dashed #c78aac;align-items:center;gap:.7rem;padding-bottom:.8rem;display:flex}.wordBankHeading>span{font-size:2rem}.wordBankHeading p{color:#a24f78;letter-spacing:.12em;text-transform:uppercase;margin:0 0 .1rem;font-family:Courier New,monospace;font-size:.62rem;font-weight:900}.wordBank h2{color:#332e4c;font-size:1.35rem}.wordProgress{color:#332e4c;text-align:center;background:#dff5c8;border:2px solid #332e4c;border-radius:999px;margin:.9rem 0;padding:.55rem;font-family:Courier New,monospace;font-size:.75rem;font-weight:900}.wordBank ul{gap:.48rem;margin:0;padding:0;list-style:none;display:grid}.wordBank li{color:#564f6e;border-radius:8px;align-items:center;gap:.55rem;padding:.45rem .6rem;font-family:Courier New,monospace;font-weight:900;display:flex}.wordBank li>span:first-child{color:#d76094}.wordBank li.isFound{color:#8b3d66;background:#f8c9dd;text-decoration:line-through;transform:rotate(-1deg)}.resetCrossword{color:#332e4c;background:#fff5ad;border:3px solid #332e4c;border-radius:9px;width:100%;margin-top:1rem;padding:.65rem;font-family:Courier New,monospace;font-weight:900;box-shadow:3px 3px #332e4c}.celebrationOverlay{z-index:50;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#27203fad;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.celebrationCard{text-align:center;background:radial-gradient(circle at 15% 15%,#ffffffbf 0 3px,#0000 4px) 0 0/45px 45px,linear-gradient(145deg,#fff4a9,#ffc9df 55%,#d9d2ff);border:5px solid #332e4c;border-radius:27px;width:min(100%,28rem);padding:clamp(2rem,8vw,3.5rem) 1.5rem;animation:.42s cubic-bezier(.2,1.2,.4,1) both celebrationIn;position:relative;overflow:hidden;box-shadow:10px 10px #221e35}.confetti{color:#d55390;letter-spacing:.7rem;font-size:1.3rem;animation:1.5s ease-in-out infinite confettiWiggle;position:absolute;top:.8rem;left:0;right:0}.celebrationMascot{margin:.8rem 0 1rem;font-size:3.3rem;display:block}.celebrationCard p{color:#a34e78;letter-spacing:.16em;text-transform:uppercase;margin:0 0 .4rem;font-family:Courier New,monospace;font-size:.7rem;font-weight:900}.celebrationCard h2{color:#332e4c;text-shadow:3px 3px #fff8c9;font-size:clamp(2rem,8vw,3.5rem);line-height:1}.celebrationCopy{color:#554d70;margin:1rem 0 1.4rem;font-weight:800;display:block}.celebrationCard button{color:#332e4c;background:#9be1c3;border:3px solid #332e4c;border-radius:999px;padding:.8rem 1.4rem;font-family:Courier New,monospace;font-weight:900;box-shadow:4px 4px #332e4c}@keyframes crosswordFloat{0%,to{transform:translateY(0)rotate(-5deg)}50%{transform:translateY(-9px)rotate(5deg)}}@keyframes wordFoundPop{0%{transform:scale(.82)}60%{transform:scale(1.13)rotate(4deg)}to{transform:scale(1)}}@keyframes celebrationIn{0%{opacity:0;transform:translateY(25px)scale(.8)rotate(-3deg)}to{opacity:1;transform:translateY(0)scale(1)rotate(0)}}@keyframes confettiWiggle{0%,to{transform:translate(-7px)}50%{transform:translate(7px)}}@media (width<=720px){.crosswordGame{grid-template-columns:1fr}.wordBank{transform:none}.wordBank ul{grid-template-columns:repeat(2,1fr)}}@media (width<=440px){.crosswordHero{align-items:flex-start}.crosswordMascot{width:4.4rem;height:4.4rem;font-size:2.4rem}.letterCell{border-width:1.5px;box-shadow:1.5px 1.5px #332e4c}}@media (prefers-reduced-motion:reduce){.crosswordDecor span,.letterCell.isFound,.celebrationCard,.confetti,.poemScrollHint,.butterfly{animation:none}.poemScene img{transition:none}}.pageView{background:linear-gradient(180deg, #43c8e5 0 31%, transparent 31%), var(--console);min-height:calc(100vh - 4rem)}.pageView .gameHud{padding:.2rem .25rem 1rem}.backButton{box-shadow:4px 4px 0 var(--ink);background:#fff5b8;border-radius:7px;margin:0 0 2rem;padding:.7rem .9rem;font-family:Courier New,monospace}.pageIcon{border:4px solid var(--ink);background:var(--cream);width:5.5rem;height:5.5rem;box-shadow:6px 6px 0 var(--pink);place-items:center;margin-bottom:1.3rem;font-size:2.7rem;display:grid}.pageView>.intro{color:#293d3b;max-width:42rem}.comingSoon{border:4px solid var(--ink);background:var(--screen);box-shadow:6px 6px 0 var(--ink);color:var(--screen-ink);gap:.45rem;margin-top:2rem;padding:1.2rem;display:grid}.comingSoon strong{text-transform:uppercase;font-family:Courier New,monospace}.comingSoon span{font-weight:700;line-height:1.5}@media (width<=620px){.appShell{box-shadow:5px 5px 0 var(--ink);border-radius:18px}.gameScreen{padding-inline:.8rem}.gameHud{font-size:.61rem}.collectionGrid{grid-template-columns:1fr}.collectionCard{min-height:6.5rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
