:root{--lr-font: "Nunito", ui-rounded, "Arial Rounded MT Bold", system-ui, sans-serif;color:#fff8ef;background:#2b2456;font-family:var(--lr-font)}*{box-sizing:border-box}body{margin:0;min-width:290px;min-height:100vh;min-height:100dvh;background:radial-gradient(circle at 50% -10%,#6a56a8 0,transparent 55%),linear-gradient(170deg,#2b2456,#23305a 60%,#1b4a58)}button{font:inherit;-webkit-tap-highlight-color:transparent}.lr-page{min-height:100vh;min-height:100dvh;padding:10px 16px 12px;display:flex;flex-direction:column;align-items:center;gap:10px}.lr-head{width:100%;max-width:920px;display:flex;align-items:center;justify-content:space-between;gap:12px}.lr-head h1{margin:0;font-size:clamp(1.5rem,5vw,2.1rem);letter-spacing:-.03em;text-shadow:0 2px 16px #ffc8b480}.lr-head-actions{display:flex;align-items:center;gap:8px}.lr-sound{display:grid;place-items:center;width:44px;height:44px;margin:-3px -2px;padding:0;border:0;border-radius:999px;color:#fff6c9;background:transparent;cursor:pointer}.lr-sound svg{width:34px;height:34px;padding:6px;box-sizing:border-box;border:1px solid #ffdf8a99;border-radius:999px;background:#ffffff12}.lr-sound:hover svg{background:#fff2}.lr-sound[data-sound=off]{color:#b9b1e0}.lr-sound[data-sound=off] svg{border-color:#afa5eb77}.lr-sound[data-sound=on] .lr-sound-off,.lr-sound[data-sound=off] .lr-sound-on{display:none}.lr-layout{width:100%;display:flex;flex-direction:column;align-items:center;gap:10px}.lr-stage-wrap{position:relative;width:min(100%,600px,calc((100dvh - 170px)*.8))}.lr-stage{width:100%;aspect-ratio:4 / 5;overflow:hidden;border-radius:26px;background:#78c3cf;box-shadow:0 0 0 1px #ffffff40,0 18px 50px #0b0a2a99}.lr-svg{display:block;width:100%;height:100%}.lr-controls{width:min(100%,300px);display:grid;gap:10px}.lr-controls:focus{outline:none}@media(min-width:760px){.has-keypad .lr-layout{flex-direction:row;justify-content:center;align-items:center;gap:22px}.has-keypad .lr-stage-wrap{width:min(600px,calc((100dvh - 112px)*.8))}.has-keypad .lr-controls{width:220px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.lr-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.lr-keypad[hidden]{display:none}.lr-keypad button{height:50px;border:1px solid #ffffff38;border-radius:16px;color:#fffaf0;background:linear-gradient(#5b4c96,#3d3473);box-shadow:inset 0 1px #ffffff40,0 3px 6px #0b0a2a80;cursor:pointer;font-size:1.3rem;font-weight:900}.lr-keypad button:active{transform:translateY(1px);background:#6f5fb0}.lr-keypad [data-key="0"]{grid-column:2}.lr-keypad button,.lr-help button,.lr-hint button{touch-action:manipulation}.lr-help{display:flex;justify-content:center;gap:8px}.lr-help button{min-width:44px;min-height:44px;padding:6px 16px;border:1px solid #fff3b899;border-radius:999px;color:#fff6d8;background:#ffffff14;cursor:pointer;font-weight:900;font-size:.95rem}.lr-help button[aria-pressed=true]{color:#2b1a10;background:linear-gradient(135deg,#fff3b8,#ffd07e)}.lr-help .primary-button{border:0;color:#2b1a10;background:linear-gradient(135deg,#fff3b8,#ffd07e);box-shadow:0 3px 10px #0b0a2a80}.lr-help button[hidden]{display:none}.is-busy .lr-keypad button,.lr-help button[aria-disabled=true]{opacity:.5;cursor:default}.lr-keypad button[aria-disabled=true]:active{transform:none;background:linear-gradient(#5b4c96,#3d3473)}:focus-visible{outline:3px solid #fff;outline-offset:2px}@media(max-width:759px){.lr-page{padding-inline:10px}.lr-head{gap:6px}.lr-head h1{font-size:1.45rem}.lr-head-actions{gap:4px}.has-keypad .lr-stage-wrap{width:min(100%,440px,calc((100dvh - 390px)*.8));min-width:min(100%,270px)}.lr-keypad button{height:44px}.lr-head .treasure-button{padding-inline:10px}}.lr-hint{position:absolute;top:2%;left:3%;right:3%;max-height:40%;overflow:hidden;padding:12px 14px;display:flex;flex-direction:column;gap:8px;border:1px solid #ffe9b7;border-radius:22px;color:#493b63;background:linear-gradient(150deg,#fff9eefa,#f0eafffa);box-shadow:0 8px 24px #30244966}.lr-hint[hidden]{display:none}.lr-hint-title{flex-shrink:0;margin:0 36px 0 0;font-size:.85rem;color:#78668e}#lr-hint-content{min-height:0;overflow-y:auto}.lr-hint-text{margin:0;text-align:center;font-size:clamp(.9rem,2.6vw,1.08rem);font-weight:750}.lr-hint-formula{margin:8px 0;text-align:center;font-size:clamp(1rem,3vw,1.45rem);font-weight:900;white-space:pre-line}.lr-hint-art{max-width:180px;margin:6px auto}.lr-hint-svg{display:block;width:100%;max-height:100px}.lr-hint-nav{flex-shrink:0;display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.lr-hint-nav button{min-height:44px;padding:6px 14px;border:1px solid #b6a2ca;border-radius:999px;color:#493b63;background:#fffaf4;font-weight:800;cursor:pointer}.lr-hint-nav button:disabled{opacity:.4;cursor:default}.lr-hint button[hidden]{display:none}.lr-hint-band{fill:#7db594;opacity:.25}.lr-hint-band.is-alt{fill:#b68cff;opacity:.22}.lr-hint-star{fill:#a36f21;stroke:#875318;stroke-width:.12}.lr-hint-close{position:absolute;top:0;right:2px;width:44px;height:44px;border:0;border-radius:50%;color:#78668e;background:transparent;cursor:pointer;font-size:1.4rem;line-height:1}.lr-hint :focus-visible{outline-color:#735293}.lr-hint-close:focus-visible{outline-offset:-4px}.treasure-mystery{opacity:.65}.treasure-mystery>span{font-size:3rem}.lr-problem{font:900 34px var(--lr-font);fill:#1f4a2e;stroke:#f4ffe6;stroke-width:7px;stroke-linejoin:round;paint-order:stroke;letter-spacing:.02em}.lr-pad-answer{font:800 23px var(--lr-font);fill:#314a37;stroke:#f4ffe6;stroke-width:5px;stroke-linejoin:round;paint-order:stroke;letter-spacing:.08em}.lr-pad-answer .is-unmatched{fill:#725184}.lr-bubble-text{font:900 27px var(--lr-font);fill:#6b3a12}.lr-twinkle,.lr-frog-eyes,.lr-frog-throat,.lr-wings,.lr-fish,.lr-fish-splash ellipse,.lr-boat,.lr-lantern-glow,.lr-friend .m-eyes,.lr-friend .m-body,.lr-r-head,.lr-bud,.lr-bloom,.lr-pop,.lr-bubble,.lr-wave,.lr-spark,.lr-heart,.lr-mote,.lr-cloud,.lr-sway,.lr-strand,.lr-friend-hop{transform-box:fill-box}.lr-cloud{animation:lr-drift 34s ease-in-out infinite alternate}.lr-cloud-b{animation-duration:42s;animation-direction:alternate-reverse}@keyframes lr-drift{to{transform:translate(22px)}}.lr-twinkle{transform-origin:center;animation:lr-twinkle 3.4s ease-in-out infinite}@keyframes lr-twinkle{50%{opacity:.15;transform:scale(.6)}}.lr-shimmer{animation:lr-shimmer 4s ease-in-out infinite}@keyframes lr-shimmer{50%{opacity:.25}}.lr-sway{transform-origin:50% 100%;animation:lr-sway 5.5s ease-in-out infinite alternate}@keyframes lr-sway{0%{transform:rotate(-2deg)}to{transform:rotate(2.5deg)}}.lr-strand{transform-origin:50% 0;animation:lr-sway 4.5s ease-in-out infinite alternate}.lr-frog-eyes{transform-origin:center;animation:lr-blink 4.8s infinite}.lr-frog-throat{transform-origin:center;animation:lr-puff 3.6s ease-in-out infinite}@keyframes lr-puff{0%,60%,to{transform:scale(1)}70%,80%{transform:scale(1.7)}}.lr-dragonfly{animation:lr-hover 9s ease-in-out infinite}@keyframes lr-hover{0%,to{transform:translate(0)}25%{transform:translate(-12px,-7px)}50%{transform:translate(-22px,3px)}75%{transform:translate(-6px,9px)}}.lr-wings{transform-origin:center;animation:lr-flutter .12s linear infinite alternate}@keyframes lr-flutter{to{transform:scaleY(.55)}}.lr-fish{transform-origin:center;opacity:0;animation:lr-jump 7s ease-in-out infinite 1s}@keyframes lr-jump{0%,60%{opacity:0;transform:translateY(4px) rotate(-35deg)}62%{opacity:1;transform:translate(0) rotate(-35deg)}68%{transform:translate(20px,-26px) rotate(0)}74%{opacity:1;transform:translate(40px) rotate(35deg)}76%,to{opacity:0;transform:translate(40px,4px) rotate(35deg)}}.lr-fish-splash ellipse{transform-origin:center;opacity:0;animation:lr-splash 7s ease-out infinite 1s}.lr-fish-splash .lr-splash-b{animation-name:lr-splash-b}@keyframes lr-splash{0%,60%{opacity:0;transform:scale(.4)}62%{opacity:.9}70%,to{opacity:0;transform:scale(1.6)}}@keyframes lr-splash-b{0%,73%{opacity:0;transform:scale(.4)}75%{opacity:.9}84%,to{opacity:0;transform:scale(1.6)}}.lr-mote{animation:lr-mote 6s ease-in-out infinite}@keyframes lr-mote{0%{opacity:0;transform:translate(0)}50%{opacity:.95;transform:translate(4px,-10px)}to{opacity:0;transform:translateY(-20px)}}.lr-pad-float{animation:lr-float 4.5s ease-in-out infinite alternate}@keyframes lr-float{to{transform:translateY(-3px)}}.lr-boat{transform-origin:50% 90%;animation:lr-bob 5s ease-in-out infinite alternate}@keyframes lr-bob{0%{transform:rotate(-1.2deg) translateY(1px)}to{transform:rotate(1deg) translateY(-2px)}}.lr-lantern-glow{transform-origin:center;animation:lr-lantern 3s ease-in-out infinite alternate}@keyframes lr-lantern{0%{opacity:.55;transform:scale(.9)}to{opacity:.95;transform:scale(1.1)}}.lr-friend .m-eyes{transform-origin:center;animation:lr-blink 5.5s infinite}@keyframes lr-blink{0%,94%,to{transform:scaleY(1)}96%{transform:scaleY(.1)}}.lr-friend .m-body{transform-origin:50% 100%;animation:lr-breathe 4s ease-in-out infinite}@keyframes lr-breathe{50%{transform:scale(1.025,.975)}}.lr-friend .m-tail{transform-origin:0 100%;animation:lr-tail 5s ease-in-out infinite}@keyframes lr-tail{50%{transform:rotate(6deg)}}.lr-r-head{transform-origin:50% 90%;animation:lr-look 7s ease-in-out infinite}@keyframes lr-look{0%,to{transform:rotate(0)}30%{transform:rotate(-2.5deg)}60%{transform:rotate(2deg)}}.lr-wake{opacity:.3;transition:opacity .8s}.is-sailing .lr-wake{opacity:.9}.lr-wake-pulse{transform-origin:0 -150px;animation:lr-wake 3.2s ease-out infinite}.is-sailing .lr-wake-pulse{animation-duration:.8s}@keyframes lr-wake{0%{opacity:.9;transform:scale(.8)}to{opacity:0;transform:scale(1.12)}}.lr-foam{opacity:0;transition:opacity .6s}.is-sailing .lr-foam{opacity:.8}.is-sailing .lr-r-head{animation-duration:3s}.lr-pad.is-new{animation:lr-appear 1.2s ease-out both}@keyframes lr-appear{0%{opacity:0}}.lr-front,.lr-rear{transition:opacity .18s}.lr-front{opacity:0}[data-state=correct] .lr-front{opacity:1}[data-state=correct] .lr-rear,.lr-padglow,.lr-wave,.lr-bloom,.lr-pop,.lr-spark,.lr-bubble,.lr-happy,.lr-heart{opacity:0}.lr-padglow{transition:opacity .6s}.lr-pad-top{transition:stroke .4s,stroke-width .4s}.lr-bud{transform-origin:50% 100%;transition:opacity .3s,transform .3s}.lr-bloom{transform-origin:50% 100%;transform:scale(.2)}.lr-pop{transform-origin:center;transform:scale(0)}.lr-bubble{transform-origin:50% 100%;transform:translateY(16px) scale(.6);transition:opacity .5s,transform .5s}.lr-flower{transition:filter .6s}.is-solved .lr-pad-top{stroke:#ffe58a;stroke-width:4}.is-solved .lr-bud{opacity:0;transform:scale(.5)}.is-solved .lr-bloom{opacity:1;transform:none;animation:lr-bloom 1s cubic-bezier(.3,1.5,.5,1) both}@keyframes lr-bloom{0%{opacity:0;transform:scale(.2) rotate(-8deg)}to{opacity:1;transform:none}}.is-solved .lr-pop{opacity:1;transform:none;animation:lr-bloom .8s cubic-bezier(.3,1.6,.5,1) both}.is-solved .lr-padglow{opacity:.55}[data-state=correct] .is-current .lr-padglow{opacity:1;animation:lr-glow 1.6s ease-in-out infinite alternate}@keyframes lr-glow{to{opacity:.65}}[data-state=correct] .is-current .lr-wave{transform-origin:center;animation:lr-wave 1.6s ease-out 2}[data-state=correct] .is-current .lr-wave-b{animation-delay:.55s}@keyframes lr-wave{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.45)}}[data-state=correct] .is-current .lr-spark{transform-origin:center;animation:lr-burst 1.5s ease-out both}@keyframes lr-burst{0%{opacity:0;transform:translate(0) scale(.3)}15%{opacity:1}to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(1) rotate(45deg)}}[data-state=correct] .is-current .lr-bubble{opacity:1;transform:none;transition-delay:.2s}[data-state=reveal] .is-current .lr-bubble{opacity:.92;transform:none;filter:saturate(.25) brightness(1.08);transition-duration:1.2s}[data-state=correct] .lr-friend-hop{transform-origin:50% 100%;animation:lr-hop .75s ease-out 2}@keyframes lr-hop{0%,to{transform:none}40%{transform:translateY(-13px)}70%{transform:translateY(-2px)}}[data-state=correct] .lr-friend .m-eyes{opacity:0}[data-state=correct] .lr-happy{opacity:1}[data-state=correct] .lr-heart{animation:lr-heart 1.8s ease-out both}@keyframes lr-heart{0%{opacity:0;transform:translateY(6px) scale(.5)}25%{opacity:1}to{opacity:0;transform:translateY(-22px) scale(1.1)}}[data-state=correct] .lr-frog-body{animation:lr-hop .7s ease-out .35s 2}[data-state=correct] .is-current .lr-flower{filter:brightness(1.12) drop-shadow(0 0 3px #fff3b0)}[data-state=correct] .lr-lantern-glow{animation-duration:.9s}[data-state=correct] .lr-shimmer{opacity:.9}.is-paused *,.is-paused *:before,.is-paused *:after{animation-play-state:paused!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition-duration:.01ms!important}}
