:root{font-family:Georgia,Times New Roman,serif;color:#302936;background:#2c2637;font-synthesis:none}*{box-sizing:border-box}html,body,#app{width:100%;min-height:100%;margin:0}body{min-width:320px;min-height:100vh;overflow:hidden;background:#2c2637}button{font:inherit}button:focus-visible{outline:3px solid #f6cb73;outline-offset:4px}.library{position:relative;min-height:100vh;overflow:hidden;display:grid;grid-template-rows:auto 1fr auto;place-items:center;padding:clamp(24px,5vh,56px);background:radial-gradient(circle at 50% 32%,#f2d59f 0,#b58a74 45%,#5b4350)}.library:before,.grain{content:"";position:absolute;inset:0;opacity:.16;pointer-events:none;background-image:repeating-radial-gradient(circle at 30% 20%,#fff 0 1px,transparent 1px 5px);mix-blend-mode:soft-light}.library header{position:relative;z-index:2;text-align:center;color:#fff9e8}.library header>span{display:block;color:#f6d395;font-size:25px;animation:twinkle 3s infinite}.library header small{display:block;letter-spacing:.23em;font:700 10px Arial}.library h1{margin:6px 0 0;font-size:clamp(28px,4.4vw,54px);line-height:.98;font-weight:400;text-shadow:0 2px 16px #4d3640}.library em{color:#f6d395;font-weight:400}.shelf{position:relative;z-index:2;width:min(840px,86vw);height:min(58vh,510px);display:flex;align-items:flex-end;justify-content:center;padding-bottom:72px}.board{position:absolute;left:0;right:0;bottom:45px;height:34px;border-radius:6px;background:linear-gradient(#8d5f43,#513526);box-shadow:0 18px 24px #2c182a66,inset 0 3px #b7835c}.cover{position:relative;width:min(276px,45vw);aspect-ratio:.72;border:0;border-radius:4px 12px 12px 4px;overflow:hidden;cursor:pointer;color:#fff9e8;background:linear-gradient(#4e5279,#77708a 56%,#243f3b 57%);box-shadow:-8px 6px #c5a66d,-13px 8px #402f32,0 30px 28px #2c181e6b;transition:.35s}.cover:hover{transform:translateY(-14px) rotate(-1deg)}.cover i,.cover strong,.cover b{position:absolute;z-index:2}.cover .moon{right:17%;top:12%;font-size:36px;color:#f5dda0}.cover .star{left:28%;top:24%;font-size:25px;color:#ffd76d;animation:twinkle 2.5s infinite}.cover .trees{left:-5%;right:-5%;bottom:18%;font-size:76px;letter-spacing:-18px;color:#1e3836;white-space:nowrap}.cover strong{left:10%;right:10%;top:40%;font-size:clamp(20px,3vw,29px);line-height:1.05;text-shadow:0 2px 8px #252b3f}.cover strong small{display:block;font-size:.57em;font-style:italic}.cover b{bottom:7%;left:0;right:0;font:700 9px Arial;letter-spacing:.1em;text-transform:uppercase}.plant,.lamp{position:absolute;bottom:78px;z-index:2}.plant{left:9%;font-size:100px;color:#465;transform:rotate(-12deg)}.lamp{right:11%;width:86px;height:86px;display:grid;place-items:center;border-radius:50%;color:#fff3b2;font-size:34px;background:#ffdd8038;box-shadow:0 0 50px #ffd77d}.library>p{position:relative;z-index:2;margin:0;color:#f7e9d0;font-style:italic}.reader{width:100vw;min-height:100vh;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 38%,#8d7180,#352c43 72%)}.book-stage{position:relative;width:min(96vw,150.4vh);aspect-ratio:16/10;padding:clamp(8px,1.3vw,18px);border-radius:13px 20px 20px 13px;background:#d7bb82;box-shadow:0 35px 60px #0f0a188c,inset 10px 0 18px #533a262e;transform:translateY(12px) scale(.985);opacity:0;transition:.6s}.book-stage.settled{transform:none;opacity:1}.paper{position:relative;width:100%;height:100%;overflow:hidden;border-radius:6px 13px 13px 6px;background:#efe2c6;box-shadow:inset 12px 0 18px #523a2929,2px 2px #bea06c,5px 5px #e1c997;transform-origin:left center}.paper.forward{animation:turnF .44s forwards}.paper.backward{animation:turnB .44s forwards}.scene{position:absolute;inset:0;overflow:hidden;isolation:isolate;background:#8c7b9d}.wash,.layer,.grain{position:absolute;inset:0;pointer-events:none;transition:transform .55s ease-out}.grain{z-index:20}.scene-dusk{background:linear-gradient(#7c739c,#c18d82 58%,#596b59 59%)}.scene-dusk .back{background:radial-gradient(circle at 77% 18%,#f5dfa5 0 3%,transparent 3.4%)}.scene-dusk .mid,.scene-forest .mid,.scene-night .mid{clip-path:polygon(0 70%,12% 45%,24% 69%,36% 40%,48% 70%,60% 47%,72% 69%,85% 41%,100% 68%,100% 100%,0 100%);background:#355247}.scene-dusk .front,.scene-forest .front,.scene-night .front{inset:auto 0 0;height:25%;background:#223e38}.scene-forest{background:linear-gradient(#77839b,#45665c 60%,#263e38)}.scene-forest .back{background:repeating-linear-gradient(85deg,transparent 0 13%,#274036cc 13% 16%,transparent 16% 24%)}.scene-mountain{background:#4e5279 url(../assets/mountain-overlook.png) center/cover no-repeat}.scene-mountain .wash{background:linear-gradient(95deg,#131b3029,transparent 45%,#2b243f1a)}.scene-mountain .front{inset:auto 0 -3%;height:17%;background:linear-gradient(12deg,#16232585,transparent 38%,#16232552)}.scene-pond{background:linear-gradient(#435477 0 48%,#75859b 49%,#304f5e 76%,#213f48)}.scene-pond .back{background:radial-gradient(circle at 76% 16%,#efe1b2 0 7%,#efe1b233 7.5%,transparent 17%)}.scene-pond .mid{top:53%;background:repeating-radial-gradient(ellipse at 50% 0,transparent 0 19px,#efe9cb2e 20px 21px,transparent 22px 38px)}.scene-pond .front{inset:auto 0 0;height:28%;background:#183c3b}.scene-night{background:radial-gradient(circle at 54% 68%,#686680,#313f61 34%,#17243f 75%)}.scene-night .back{background-image:radial-gradient(circle at 15% 15%,#f8e49c 0 2px,transparent 3px),radial-gradient(circle at 37% 22%,#fff4bb 0 1px,transparent 2px),radial-gradient(circle at 71% 14%,#f8e49c 0 2px,transparent 3px),radial-gradient(circle at 86% 34%,#fff4bb 0 1px,transparent 2px);animation:twinkle 4s infinite}.copy{position:absolute;z-index:12;top:7%;left:7%;width:min(45%,540px);padding:clamp(12px,2vw,24px);border-radius:46% 52% 49% 44%/12% 15% 10% 14%;background:#f6ecd3e8;box-shadow:0 5px #402e3024}.copy small{color:#7b554d;font:700 clamp(9px,1.1vw,13px) Arial;letter-spacing:.17em;text-transform:uppercase}.copy p{margin:8px 0 0;font-size:clamp(14px,2vw,25px);line-height:1.42}.narrate{margin-top:10px;border:0;padding:7px 10px;color:#594653;background:transparent;cursor:pointer;font:700 11px Arial}.narrating .copy{box-shadow:0 5px #402e3024,0 0 32px #f8d68b3b}.object{position:absolute;z-index:14;width:clamp(46px,6vw,76px);height:clamp(46px,6vw,76px);display:grid;place-items:center;border:0;border-radius:50%;cursor:pointer;color:#f5d46f;background:transparent;text-shadow:0 3px 5px #1b14217a;font-size:clamp(29px,4.7vw,59px)}.object.reacting{animation:react .9s}.object-star,.object-glow,.object-home-star{right:25%;top:21%}.object-cloud{right:8%;top:8%;color:#d5d2d8}.object-flowers{left:16%;bottom:8%;color:#e9a5a5}.object-butterfly{right:20%;top:26%;color:#efc17e}.object-mushroom{left:15%;bottom:14%;color:#d28f81}.object-leaves{right:13%;bottom:9%;color:#a9b36a}.object-tree{right:6%;bottom:18%;color:#2d4a42;font-size:72px}.object-bird{right:17%;top:43%;color:#3e303a}.object-frog{left:56%;bottom:20%;color:#a8bd70}.object-fish{left:34%;bottom:11%;color:#c6d1ca}.object-cattail{right:12%;bottom:20%;color:#8d7656}.object-moon{right:16%;top:10%;color:#f0e1ad}.object-clare{right:32%;bottom:5%;width:26%;height:72%;font-size:0;color:transparent;z-index:16}.reaction{position:absolute;z-index:30;left:50%;bottom:5%;transform:translate(-50%,8px);padding:9px 15px;border-radius:20px;color:#fff7e4;background:#2b2536c7;font-style:italic;opacity:0;transition:.25s}.reaction.visible{opacity:1;transform:translate(-50%)}.clare,.demo-person{position:absolute;z-index:10;right:22%;bottom:13%;width:9%;height:39%;filter:drop-shadow(3px 6px 3px #1b19223d);animation:settle 2.2s .6s both}.clare i,.demo-person i{position:absolute;display:block}.head{left:33%;top:0;width:34%;aspect-ratio:1;border-radius:50%;background:#d9ac8c;box-shadow:inset 3px -2px #b9b5b2}.body{left:29%;top:19%;width:42%;height:44%;border-radius:40% 40% 22% 22%;background:#4f8a83}.arm,.leg{width:15%;border-radius:12px;transform-origin:top}.arm{top:25%;height:39%;background:#4f8a83}.arm.left{left:32%;transform:rotate(9deg)}.arm.right{right:32%;transform:rotate(-9deg)}.leg{top:59%;height:40%;background:#6f5177}.leg.left{left:34%;transform:rotate(3deg)}.leg.right{right:34%;transform:rotate(-3deg)}.star-pose .arm.left{transform:rotate(112deg)}.star-pose .arm.right{transform:rotate(-112deg)}.star-pose .leg.left{transform:rotate(18deg)}.star-pose .leg.right{transform:rotate(-18deg)}.pose{position:absolute;z-index:15;right:4%;bottom:5%;width:34%;padding:12px 16px;border-radius:5px 30px;background:#f8e6b9f0;box-shadow:4px 5px #3126352e;display:grid;grid-template-columns:1fr auto;gap:4px 8px}.pose span{grid-column:1/-1}.show{grid-column:2;grid-row:1;border:0;border-radius:16px;padding:7px 12px;color:#fff;background:#755b78;cursor:pointer;font:700 11px Arial;text-transform:uppercase}.bookmark{position:absolute;z-index:40;right:3.5%;top:0;width:44px;height:58px;border:0;color:#fff7de;background:#795566;cursor:pointer}.menu{position:absolute;z-index:39;right:2.5%;top:72px;width:170px;padding:10px;display:grid;gap:5px;border-radius:5px;background:#f3e2bb;box-shadow:0 9px 20px #241b4728}.menu button{border:0;padding:9px;text-align:left;background:transparent;cursor:pointer}.nav{position:absolute;z-index:35;top:45%;width:52px;height:72px;border:0;color:#fff6dd;background:#30273761;cursor:pointer;font-size:48px;opacity:.72}.nav:hover{opacity:1}.prev{left:0;border-radius:0 40px 40px 0}.next{right:0;border-radius:40px 0 0 40px}.number{position:absolute;z-index:25;bottom:1.5%;left:50%;transform:translate(-50%);color:#fff9e7c7;font:700 10px Arial}.scrim{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:20px;background:#1e1826a8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.theater{position:relative;width:min(520px,90vw);padding:22px;text-align:center;border:10px solid #dfc491;border-radius:8px 30px;background:#f3e5c8;box-shadow:0 30px 70px #140f1b8c}.close{position:absolute;right:9px;top:7px;width:40px;height:40px;border:0;border-radius:50%;background:#ffffff80;font-size:27px}.theater>small{color:#795b68;font:700 10px Arial;letter-spacing:.12em}.demo{position:relative;height:min(58vh,430px);margin-top:10px;overflow:hidden;border-radius:5px;background:#263f3d}.demo img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 8px 10px rgba(22,20,30,.28))}.rotate{display:none;text-align:center;color:#fff7e3}.rotate b{font-size:64px}.found-acorn:after{content:"●";position:absolute;z-index:14;right:26%;bottom:15%;color:#8a5b36;font-size:18px}.has-sprout:after{content:"♧";position:absolute;z-index:14;left:21%;bottom:13%;color:#b6d07d;font-size:37px;filter:drop-shadow(0 0 8px #e9db7e)}@keyframes twinkle{50%{opacity:1;transform:scale(1.08)}0%,to{opacity:.65;transform:scale(.96)}}@keyframes react{35%{transform:translateY(-12px) rotate(-8deg) scale(1.16)}65%{transform:translate(7px,-4px) rotate(8deg)}}@keyframes settle{0%{opacity:0;transform:translateY(18px) scale(.94)}to{opacity:1;transform:none}}@keyframes turnF{to{transform:perspective(1200px) rotateY(-18deg) translate(-12%);opacity:0}}@keyframes turnB{to{transform:perspective(1200px) rotateY(15deg) translate(12%);opacity:0}}@media(max-width:720px){.copy{top:5%;left:5%;width:54%;padding:10px}.copy p{font-size:clamp(11px,2.8vw,16px)}.pose{width:43%;padding:8px}.clare{right:28%}.nav{width:38px;height:58px;font-size:38px}}@media(orientation:portrait)and (max-width:700px){.reader .book-stage{display:none}.reader .rotate{display:block}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.layer{transform:none!important}}.scene-dusk{background:#8f7aa5 url(../assets/falling-star.png) center/cover no-repeat}.scene-forest{background:#50664b url(../assets/hidden-path.png) center/cover no-repeat}.scene-pond{background:#426979 url(../assets/moonlit-pond.png) center/cover no-repeat}.scene-night{background:#1d315c url(../assets/star-shines.png) center/cover no-repeat}.scene-dusk .back,.scene-dusk .mid,.scene-dusk .front,.scene-forest .back,.scene-forest .mid,.scene-forest .front,.scene-pond .back,.scene-pond .mid,.scene-pond .front,.scene-night .back,.scene-night .mid,.scene-night .front{background:none}.scene-dusk .back:before{content:"";position:absolute;right:5%;top:6%;width:25%;height:17%;border-radius:50%;background:#f4d8d060;filter:blur(3px);animation:cloudDrift 14s ease-in-out infinite alternate}.scene-dusk .front:after{content:"❀  ❀  ❀";position:absolute;left:6%;bottom:4%;color:#df9fa3;font-size:clamp(18px,3vw,39px);letter-spacing:.35em;transform-origin:bottom;animation:sway 5s ease-in-out infinite}.scene-forest .back:after{content:"✦  ·  ✦  ·  ✦";position:absolute;right:10%;top:19%;color:#f5d36f;font-size:clamp(12px,2vw,26px);letter-spacing:.55em;filter:drop-shadow(0 0 8px #ffd463);animation:fireflies 5.5s ease-in-out infinite}.scene-forest .front:before{content:"♧";position:absolute;left:4%;bottom:-3%;color:#294c3d;font-size:clamp(90px,16vw,210px);transform-origin:bottom;animation:sway 7s ease-in-out infinite alternate}.scene-mountain .back:after{content:"";position:absolute;left:40%;top:45%;width:34%;height:3px;background:linear-gradient(90deg,transparent,#f8d46c,transparent);filter:blur(2px);opacity:.15;animation:lightRibbon 6s ease-in-out infinite}.scene-mountain .front:before{content:"♧  ♧";position:absolute;right:2%;bottom:-12%;color:#253f3b;font-size:clamp(70px,12vw,160px);transform-origin:bottom;animation:sway 8s ease-in-out infinite}.scene-pond .mid:after{content:"";position:absolute;left:26%;bottom:17%;width:26%;height:8%;border:2px solid #eef1d866;border-radius:50%;animation:ripple 4.5s ease-out infinite}.scene-pond .front:after{content:"!  !  !";position:absolute;right:3%;bottom:-4%;color:#6e674c;font:bold clamp(50px,9vw,120px) Georgia;letter-spacing:.08em;transform-origin:bottom;animation:sway 6s ease-in-out infinite alternate}.scene-night .back:after{content:"· ✦ ·   ✦  · ✦";position:absolute;inset:5% 8% auto 18%;color:#ffe49a;font-size:clamp(12px,2vw,25px);letter-spacing:1.4em;text-shadow:0 0 8px #ffd66e;animation:starField 4s ease-in-out infinite}.scene-night .front:before{content:"♧  ❀  ♧";position:absolute;left:4%;bottom:-5%;color:#244b43;font-size:clamp(65px,11vw,145px);transform-origin:bottom;animation:sway 7s ease-in-out infinite}.object-star.reacting,.object-glow.reacting,.object-home-star.reacting{animation:starLoop 1.25s ease-in-out}.object-butterfly{animation:butterflyRest 2.6s ease-in-out infinite}.object-frog.reacting{animation:none}.object-fish.reacting{animation:fishSwim 1.2s ease-in-out}.object-tree.reacting{animation:treeRustle .9s ease-in-out}.object-cloud.reacting{animation:cloudPeek 1.4s ease-in-out}.object-moon.reacting{animation:moonGlow 1.2s ease-in-out}.object-clare.reacting{animation:none}.clare.waving img{transform-origin:50% 85%;animation:clareWave 1.1s ease-in-out}@keyframes cloudDrift{to{transform:translate(-20%) translateY(6%);opacity:.5}}@keyframes sway{0%,to{transform:rotate(-1.5deg)}50%{transform:rotate(2deg)}}@keyframes fireflies{0%,to{opacity:.35;transform:translateY(5px)}50%{opacity:1;transform:translate(8px,-9px)}}@keyframes lightRibbon{0%,to{opacity:.08;transform:scaleX(.2)}50%{opacity:.7;transform:scaleX(1)}}@keyframes ripple{0%{transform:scale(.4);opacity:0}25%{opacity:.8}to{transform:scale(2.2);opacity:0}}@keyframes starField{0%,to{opacity:.35}50%{opacity:1}}@keyframes starLoop{0%{transform:none}40%{transform:translate(-35px,-30px) rotate(160deg) scale(1.25)}75%{transform:translate(18px,-13px) rotate(300deg)}to{transform:none}}@keyframes butterflyRest{0%,to{transform:rotate(-12deg) translateY(0)}50%{transform:rotate(10deg) translateY(-5px)}}@keyframes frogHop{0%,to{transform:none}45%{transform:translate(42px,-55px) rotate(9deg) scale(1.15)}}@keyframes fishSwim{0%,to{transform:translate(0) rotate(-10deg)}50%{transform:translate(75px) rotate(8deg) scale(.88)}}@keyframes treeRustle{0%,to{transform:rotate(0)}25%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}75%{transform:rotate(-2deg)}}@keyframes cloudPeek{50%{transform:translate(-65px);opacity:.65}}@keyframes moonGlow{50%{filter:drop-shadow(0 0 24px #fff1a4);transform:scale(1.18)}}@keyframes clareWave{30%{transform:rotate(-7deg)}60%{transform:rotate(6deg)}}.object-mouse,.object-butterfly,.object-bird,.object-frog{border-radius:0;font-size:0;background-position:center;background-repeat:no-repeat;background-size:contain;filter:drop-shadow(0 5px 4px rgba(43,46,37,.2))}.object-mouse{right:10%;bottom:8%;width:8%;height:18%;min-width:48px;min-height:56px;background-image:url(../assets/mouse.png)}.object-butterfly{right:16%;top:18%;width:8%;height:15%;min-width:48px;min-height:48px;background-image:url(../assets/butterfly.png)}.object-bird{right:11%;top:33%;width:7%;height:15%;min-width:48px;min-height:52px;background-image:url(../assets/bird.png)}.object-frog{left:43%;bottom:16%;width:12%;height:20%;min-width:76px;min-height:70px;background-image:url(../assets/frog-watercolor-cutout.png);background-size:contain;background-position:center bottom;transition:filter .25s}.clare{width:clamp(175px,26%,330px);height:clamp(300px,72%,530px);filter:drop-shadow(0 12px 14px rgba(22,20,30,.38))}.clare img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom}.clare-dusk{right:32%;bottom:6%}.clare-forest{right:35%;bottom:5%}.clare-mountain{right:32%;bottom:7%}.clare-pond{right:27%;bottom:5%}.clare-night{right:32%;bottom:5%}.scene-night .mid:after{content:"";position:absolute;left:8%;bottom:6%;width:22%;height:14%;opacity:.62;background:url(../assets/mouse.png) left bottom/19% auto no-repeat,url(../assets/frog.png) center bottom/22% auto no-repeat,url(../assets/bird.png) right 12%/20% auto no-repeat;filter:drop-shadow(0 3px 3px rgba(12,21,35,.25))}.object-mushroom,.object-leaves,.object-fish,.object-cattail,.object-flowers,.object-cloud,.object-tree,.object-moon{font-family:"Segoe UI Emoji","Apple Color Emoji",sans-serif;text-shadow:0 3px 8px rgba(27,20,33,.38)}.object-leaves{overflow:visible}.object-leaves.reacting:after{content:"";position:absolute;left:-34%;bottom:-18%;width:clamp(44px,6vw,76px);height:clamp(34px,5vw,62px);background:url(../assets/snail-watercolor.png) center/contain no-repeat;filter:drop-shadow(0 3px 3px rgba(35,28,24,.3));animation:snailReveal 1.5s ease-out both}.object-cattail{overflow:visible}.object-cattail.reacting:after{display:none}.object-mushroom.reacting{animation:mushroomWobble .9s ease-in-out}.object-flowers.reacting{animation:flowerTurn 1s ease-in-out}.object-bird.reacting,.object-mouse.reacting{animation:standTall .9s ease-in-out}@keyframes snailReveal{0%{opacity:0;transform:translate(-18px) scale(.6)}35%{opacity:1}to{opacity:1;transform:translate(12px) scale(1)}}@keyframes tuftFloat{0%{opacity:0;transform:translateY(12px) scale(.5)}25%{opacity:1}to{opacity:0;transform:translate(-28px,-70px) rotate(30deg) scale(1.15)}}@keyframes mushroomWobble{0%,to{transform:rotate(0)}25%{transform:rotate(-12deg) scale(1.08)}55%{transform:rotate(10deg) scale(.96)}75%{transform:rotate(-5deg)}}@keyframes flowerTurn{0%,to{transform:rotate(0)}45%{transform:rotate(18deg) scale(1.15)}}@keyframes standTall{0%,to{transform:none}45%{transform:translateY(-12px) scaleY(1.14)}}.scene-dusk .front:after,.scene-forest .front:before,.scene-pond .front:after,.scene-night .front:before{display:none!important}.object-star,.object-glow,.object-home-star{font-size:0;background:url(../assets/little-star-watercolor.png) center/contain no-repeat;filter:drop-shadow(0 0 8px rgba(255,211,99,.62))}.scene-pond .front:after{display:block!important;content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 43% 70%,#aaa394 0 7%,#6f746d 7.5% 9.5%,transparent 10%),radial-gradient(ellipse at 28% 82%,#989487 0 6.5%,#626961 7% 9%,transparent 9.5%);filter:drop-shadow(0 4px 3px rgba(23,35,37,.28))}.effect-cloud .wash{animation:moonReveal 1.6s ease-out}.effect-flowers .wash{animation:flowerGlow 1.5s ease-out}.effect-mushroom .front{animation:mushroomWobble .9s ease-in-out}.effect-glow .back{animation:lightRibbon 1.6s ease-in-out}.effect-tree .front{animation:treeRustle .9s ease-in-out}.effect-fish .mid{animation:rippleFlash 1.4s ease-out}.effect-cattail .front{animation:cattailRelease 1.5s ease-out}.effect-moon .wash{animation:moonBrighten 1.5s ease-out}.object:not(.object-star):not(.object-glow):not(.object-home-star):hover{background-color:#f8da9314;box-shadow:0 0 20px #f8da9333}@keyframes moonReveal{0%{background:radial-gradient(circle at 77% 18%,transparent 0 2%,transparent 3%)}55%,to{background:radial-gradient(circle at 77% 18%,rgba(255,242,189,.72) 0 5%,rgba(255,242,189,.2) 6%,transparent 14%)}}@keyframes flowerGlow{50%{background:radial-gradient(circle at 18% 84%,rgba(255,216,133,.44),transparent 24%)}}@keyframes rippleFlash{0%{filter:none}45%{filter:brightness(1.28);transform:translateY(-4px)}to{filter:none}}@keyframes cattailRelease{0%,to{filter:none}45%{filter:brightness(1.22);transform:translate(-5px,-8px)}}@keyframes moonBrighten{50%{background:radial-gradient(circle at 78% 16%,rgba(255,244,190,.58),transparent 22%)}}.scene-pond .front:after{display:none!important}.object-mushroom{width:clamp(62px,8vw,104px);height:clamp(62px,8vw,104px);font-size:0;background:url(../assets/mushroom-watercolor.png) center bottom/contain no-repeat;filter:drop-shadow(0 4px 4px rgba(35,31,28,.24));transform-origin:50% 92%}.object-mushroom.reacting{animation:mushroomWobble 1.05s ease-in-out}.clare.waving img{animation:waveBody .38s ease-in-out infinite alternate}@keyframes waveBody{0%{transform:rotate(-.5deg)}to{transform:rotate(.7deg)}}.object-glow{background:none!important;filter:none!important}.effect-glow .back:after{animation:beamThroughTrees 1.8s ease-out!important}@keyframes beamThroughTrees{0%{opacity:0;transform:scaleX(.03) rotate(-3deg)}35%{opacity:.95;transform:scaleX(.75) rotate(-3deg);box-shadow:0 0 16px 5px #f8d46c99}70%{opacity:.82;transform:scaleX(1.25) rotate(-3deg);box-shadow:0 0 22px 7px #f8d46c85}to{opacity:.18;transform:scaleX(1.45) rotate(-3deg);box-shadow:0 0 8px 2px #f8d46c2e}}.object-mushroom{left:30%!important;bottom:7%!important}.object-frog{left:27%!important;bottom:17%!important}.scene-pond:after{content:"";position:absolute;z-index:9;left:28%;bottom:15%;width:11%;height:4.5%;border-radius:50%;background:linear-gradient(175deg,#aaa493,#6d736c);box-shadow:0 4px 5px #16242747,inset 0 2px #e8dfc44d;transform:rotate(-2deg)}.clare-pond img{transform:scaleX(-1)}.clare.waving img{animation:none!important}.book-stage{perspective:1500px}.paper{transform-style:preserve-3d;backface-visibility:hidden;will-change:transform,filter,opacity}.paper.forward{animation:realTurnForward .76s cubic-bezier(.55,.05,.25,1) forwards}.paper.backward{transform-origin:right center;animation:realTurnBackward .76s cubic-bezier(.55,.05,.25,1) forwards}.paper.forward:after,.paper.backward:after{content:"";position:absolute;z-index:80;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 35%,rgba(53,40,47,.12) 62%,rgba(31,23,31,.46));animation:pageShade .76s ease-in-out forwards}@keyframes realTurnForward{0%{transform:rotateY(0);filter:brightness(1);opacity:1}45%{transform:translate(-2%) rotateY(-38deg);filter:brightness(.9);opacity:1}to{transform:translate(-18%) rotateY(-92deg);filter:brightness(.72);opacity:.25}}@keyframes realTurnBackward{0%{transform:rotateY(0);filter:brightness(1);opacity:1}45%{transform:translate(2%) rotateY(38deg);filter:brightness(.9);opacity:1}to{transform:translate(18%) rotateY(92deg);filter:brightness(.72);opacity:.25}}@keyframes pageShade{0%,to{opacity:0}48%{opacity:1}}.object-star,.object-glow,.object-home-star{background:none!important;filter:none!important;color:transparent!important;font-size:0!important}.clare img{transition:opacity .36s ease,filter .36s ease}.clare img.changing-pose{opacity:0;filter:blur(2px)}button.clare{padding:0;border:0;cursor:pointer;background:transparent}button.clare:hover img,button.clare:focus-visible img{filter:drop-shadow(0 0 13px rgba(248,211,120,.5))}.object-frog{left:27%!important;bottom:17%!important;transform:scaleX(-1)}.scene-pond:after{content:"";position:absolute;z-index:9;inset:0;width:auto;height:auto;border-radius:0;background-image:url(../assets/pond-stepping-stone-watercolor.png),url(../assets/pond-stepping-stone-watercolor.png);background-position:29% 82%,43% 78%;background-size:12% auto,13% auto;background-repeat:no-repeat;box-shadow:none;transform:none;pointer-events:none}.object-mushroom{inset:auto auto 7% 66%!important}.object-butterfly{inset:auto auto 12% 20%!important}.object-butterfly.reacting{animation:butterflyToFlower 1.45s cubic-bezier(.28,.7,.3,1) forwards!important}@keyframes butterflyToFlower{0%{transform:translate(0) rotate(-8deg)}35%{transform:translate(80px,-70px) rotate(10deg)}68%{transform:translate(170px,-45px) rotate(-5deg)}to{transform:translate(235px,-8px) rotate(5deg)}}.effect-glow .wash{animation:mountainSkyGlow 1.8s ease-out}@keyframes mountainSkyGlow{0%,to{background:transparent}45%{background:radial-gradient(circle at 66% 25%,rgba(255,224,139,.58),rgba(242,194,115,.2) 28%,transparent 58%)}}.object-frog{left:43%!important;bottom:17%!important}.scene-pond:after{background-position:29% 82%,43% 78%!important}.clare-pond img{transform:none!important}.scene-night .mid:after{opacity:.82;background:url(../assets/mouse.png) left bottom/22% auto no-repeat,url(../assets/bird.png) right 12%/22% auto no-repeat!important}.scene-night .front:after{display:block!important;content:"";position:absolute;left:18%;bottom:5%;width:10%;height:48%;background:url(../assets/frog-watercolor-cutout.png) center bottom/contain no-repeat;opacity:1;transform:scaleX(-1);filter:drop-shadow(0 3px 3px rgba(12,21,35,.25))}.effect-home-star .back:before{content:"";position:absolute;left:58%;top:22%;width:7%;height:4px;border-radius:50%;background:linear-gradient(90deg,transparent,rgba(255,226,133,.85),rgba(255,247,194,.95));box-shadow:0 0 12px #ffda6fbf;animation:shootingStarArc 1.4s ease-out both}@keyframes shootingStarArc{0%{opacity:0;transform:translate(80px,-55px) rotate(-28deg) scaleX(.2)}20%{opacity:1}70%{opacity:1;transform:translate(-25px,20px) rotate(-28deg) scaleX(1.15)}to{opacity:0;transform:translate(-70px,55px) rotate(-28deg) scaleX(.45)}}.clare-dusk.facing-glow img{transform:scaleX(-1)}.object-mushroom{left:48%!important;bottom:7%!important}.object-butterfly{left:20%!important;bottom:17%!important}.object-butterfly.reacting{animation:none!important}.scene-mountain .object-glow{top:5%!important;right:4%!important;width:48%!important;height:42%!important;z-index:22!important;cursor:pointer}.scene-night .object-home-star{top:4%!important;right:4%!important;width:38%!important;height:30%!important;z-index:22!important;cursor:pointer}.object-frog{left:38%!important;bottom:18%!important}.clare-pond img{transform:scaleX(-1)!important}button.clare{z-index:32!important;pointer-events:auto!important}.clare-dusk.facing-glow img{transform:none!important}.scene-night .object-moon{top:3%!important;right:3%!important;width:28%!important;height:32%!important;z-index:23!important;cursor:pointer}.scene-night .object-home-star{top:7%!important;left:5%!important;right:auto!important;width:38%!important;height:28%!important;z-index:22!important;cursor:pointer}.effect-moon .wash{animation:restoredMoonGlow 1.7s ease-out!important}.effect-home-star .back:before{left:25%!important;top:28%!important}@keyframes restoredMoonGlow{0%,to{background:transparent}45%{background:radial-gradient(circle at 78% 16%,rgba(255,244,190,.75) 0 9%,rgba(255,229,157,.32) 10%,transparent 28%)}}.object-frog{left:38%!important;bottom:18%!important;transform:none;will-change:transform}.moon-reaction,.shooting-reaction{position:absolute;z-index:9;pointer-events:none;opacity:0}.moon-reaction{right:6%;top:3%;width:24%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,250,212,.78) 0 20%,rgba(255,228,151,.34) 34%,transparent 68%);filter:blur(2px)}.effect-moon .moon-reaction{animation:cleanMoonGlow 1.45s ease-in-out}.shooting-reaction{right:24%;top:21%;width:18%;height:5px;border-radius:50%;background:linear-gradient(90deg,transparent,rgba(255,218,108,.8),rgba(255,250,207,.98));box-shadow:0 0 12px #ffda6cbf;transform:rotate(-26deg)}.effect-home-star .shooting-reaction{animation:cleanShootingStar 1.25s ease-out}.scene-night .object-moon{right:7%!important;top:5%!important;width:18%!important;height:22%!important;z-index:24!important}.scene-night .object-home-star{right:23%!important;left:auto!important;top:18%!important;width:18%!important;height:18%!important;z-index:23!important}button.clare{z-index:35!important}@keyframes cleanMoonGlow{0%,to{opacity:0;transform:scale(.72)}38%,68%{opacity:1;transform:scale(1.12)}}@keyframes cleanShootingStar{0%{opacity:0;transform:translate(55px,-42px) rotate(-26deg) scaleX(.2)}20%{opacity:1}75%{opacity:1;transform:translate(-48px,34px) rotate(-26deg) scaleX(1)}to{opacity:0;transform:translate(-82px,58px) rotate(-26deg) scaleX(.45)}}button.clare-night{overflow:visible}button.clare-night .clare-base,button.clare-night .clare-wave-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center bottom;transition:opacity .28s ease}button.clare-night .clare-base{opacity:1}button.clare-night .clare-wave-frame,button.clare-night.is-waving .clare-base{opacity:0}button.clare-night.is-waving .clare-wave-frame{opacity:1}.moon-reaction{right:11.5%!important;top:6.5%!important;width:13%!important;background:radial-gradient(circle,rgba(255,249,207,.52) 0 28%,rgba(255,226,145,.2) 42%,transparent 68%)!important;filter:blur(1px)!important}.scene-night .object-moon{right:10%!important;top:6%!important;width:16%!important;height:20%!important}.scene-night .object-home-star{left:43%!important;right:auto!important;top:5%!important;width:30%!important;height:25%!important}.shooting-reaction{left:48%!important;right:auto!important;top:13%!important;width:18%!important}.clare-night{right:calc(32% + 15px)!important}.moon-reaction{right:15%!important;top:8%!important;width:9%!important;background:radial-gradient(circle,rgba(255,247,205,.26) 0 20%,rgba(255,226,145,.12) 34%,transparent 64%)!important;filter:blur(.5px)!important}.scene-night .object-moon{right:14%!important;top:8%!important;width:11%!important;height:15%!important}.scene-mountain .object-glow{top:7%!important;right:22%!important;width:24%!important;height:20%!important}.object-frog{bottom:calc(18% + 15px)!important}.effect-moon .wash{animation:none!important;background:transparent!important}.scene-night .object-moon{right:5%!important;top:2%!important;width:30%!important;height:34%!important;z-index:30!important}.moon-reaction{right:10%!important;top:5%!important;width:16%!important;opacity:0;background:radial-gradient(circle,rgba(255,249,210,.48) 0 18%,rgba(255,226,145,.2) 34%,transparent 66%)!important;filter:blur(1px)!important}.effect-moon .moon-reaction{animation:moonOnlyGlow 1.6s ease-in-out!important}@keyframes moonOnlyGlow{0%,to{opacity:0;transform:scale(.86)}35%,70%{opacity:1;transform:scale(1.06)}}.clare-night{right:calc(32% + 40px)!important}.scene-night .moon-reaction{right:11.5%!important;top:6.5%!important;width:13%!important;height:auto!important;aspect-ratio:1/1!important;border-radius:50%!important;opacity:0;background:radial-gradient(circle at center,rgba(255,252,220,.7) 0 20%,rgba(255,235,166,.34) 34%,rgba(255,224,140,.12) 49%,transparent 68%)!important;filter:blur(1px)!important;transform:scale(.82)}.scene-night.effect-moon .moon-reaction{animation:moonOnlyGlow 1.55s ease-in-out!important}@keyframes moonOnlyGlow{0%,to{opacity:0;transform:scale(.82)}38%,70%{opacity:1;transform:scale(1.06)}}@media(orientation:landscape)and (max-height:820px){.reader{min-height:100svh}.book-stage{width:min(98vw,calc(96svh * 1.6));padding:clamp(5px,1vw,12px);transform:none}.copy{top:5%;left:5%;width:43%;padding:clamp(7px,1.35vw,15px)}.copy small{font-size:clamp(7px,1vw,11px)}.copy p{margin-top:4px;font-size:clamp(10px,1.7vw,19px);line-height:1.3}.narrate{margin-top:4px;padding:4px 7px;font-size:9px}.clare{width:25%;height:70%}.clare-night{right:35%!important}.pose{right:3%;bottom:4%;width:32%;padding:7px 10px;font-size:clamp(9px,1.25vw,13px)}.pose .show{padding:5px 8px;font-size:8px}.object,.object-mouse,.object-butterfly,.object-bird{min-width:40px;min-height:40px}.object-frog{min-width:48px;min-height:44px}.object-mushroom{width:8%;height:16%;min-width:42px;min-height:42px}.nav{top:44%;width:38px;height:58px;font-size:36px}.bookmark{right:2.5%;width:34px;height:45px;font-size:13px}.reaction{bottom:3%;max-width:55%;padding:6px 11px;font-size:clamp(10px,1.3vw,13px)}}.scene-mountain .front:before{display:none!important}@media(orientation:landscape)and (max-height:820px){.library{grid-template-rows:auto minmax(0,1fr) auto;padding:14px 24px}.library header{z-index:5}.library h1{font-size:clamp(24px,4vw,42px)}.shelf{height:100%;min-height:0;padding-bottom:78px}.cover{width:auto;height:min(44svh,360px);max-width:42vw}.object-mushroom{left:35%!important}}@media(orientation:landscape)and (max-height:820px){.scene-mountain .pose,.scene-night .pose{width:34%;padding:9px 20px 9px 18px;column-gap:7px}.scene-mountain .pose strong,.scene-night .pose strong,.scene-mountain .pose span,.scene-night .pose span{padding-inline:3px}}
