@font-face{font-family:QingSongHand;src:url(/fonts/QingSongShouXieTi1-2.woff2?v=2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:CoverJoy;src:url(/fonts/cover-title.ttf?v=1) format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{font-family:QingSongHand;color:#fffaf0;background:#102027;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box;cursor:url(/images/mouse_cursor.png) 8 6,auto}html,body,#root{width:100%;height:100%;margin:0;padding:0;overflow:hidden}button{font:inherit;cursor:url(/images/mouse_cursor.png) 8 6,pointer}input,textarea,select{font:inherit}.appShell{position:relative;width:100vw;height:100vh;height:100dvh;overflow:hidden;background:#102027}.musicControl{position:fixed;right:6.4vw;top:2.4vh;z-index:20;width:clamp(54px,5.4vw,92px);height:clamp(54px,5.4vw,92px);pointer-events:auto}.musicButton{display:block;width:100%;height:100%;padding:0;border:0;background:transparent;filter:drop-shadow(0 8px 14px rgba(0,0,0,.22));transition:filter .16s ease,transform .16s ease}.musicButton:hover{transform:scale(1.08);filter:drop-shadow(0 10px 18px rgba(0,0,0,.28))}.musicButton img{display:block;width:100%;height:100%;object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none}.pageFrame{position:absolute;inset:0;width:100vw;height:100vh;height:100dvh}.storyPage,.gamePage{position:relative;width:100vw;height:100vh;height:100dvh;overflow:hidden;background:#153641}.pageImage{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none}.pageBackdropImage{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(18px) saturate(1.05);opacity:.52;transform:scale(1.04);-webkit-user-select:none;user-select:none;pointer-events:none}.coverPage:after{content:none}.coverTitleImage{position:absolute;left:70.5vw;top:9.6vh;z-index:2;width:min(48vw,730px);height:auto;transform:translate(-50%);-webkit-user-select:none;user-select:none;pointer-events:none}.coverMenu{position:absolute;inset:0;z-index:3;pointer-events:none}.coverOption{position:absolute;left:var(--x);top:var(--y);padding:0;color:#fff8f0;background:transparent;border:0;cursor:url(/images/mouse_cursor.png) 8 6,pointer;font-family:CoverJoy!important;font-size:var(--size);font-weight:400;line-height:1;letter-spacing:0;text-shadow:0 5px 12px rgba(198,91,106,.22),0 1px 0 rgba(255,255,255,.2);transform:translate(-50%,-50%) scale(1);transform-origin:center;transition:transform .16s ease;pointer-events:auto;white-space:nowrap}.coverOption:hover{transform:translate(-50%,-50%) scale(1.13)}.arcText{display:inline-flex;align-items:baseline;justify-content:center;gap:.02em;font-family:CoverJoy!important}.arcChar{display:inline-block;font-family:CoverJoy!important;transform:translateY(var(--lift)) rotate(var(--char-rotate));transform-origin:50% 86%}.coverOptionSettings{--x: 70.5vw;--y: 41vh;--size: min(6.2vw, 86px)}.coverOptionStart{--x: 70.5vw;--y: 55vh;--size: min(8.4vw, 124px)}.coverOptionCharacters{--x: 70.5vw;--y: 69.6vh;--size: min(6.3vw, 88px)}.textLayer{position:absolute;z-index:3;width:560px;max-height:80%;padding:0;overflow:hidden;white-space:pre-line}.textLayerHost{position:absolute;inset:0;z-index:3;pointer-events:none}.overlayLayer{position:absolute;inset:0;z-index:2;pointer-events:none}.storyOverlay{position:absolute;display:block;-webkit-user-select:none;user-select:none;pointer-events:none}.storyOverlayMotion{inset:0}.lottieOverlay{position:absolute;inset:0}.lottieOverlay svg{display:block;width:100%!important;height:100%!important}.prologueOneMoveLottie,.prologueOnePanelLottie,.chapterOneFirstLottie,.chapterOneSecondLottie,.chapterOneTwoFirstLottie,.chapterOneTwoSecondLottie,.chapterTwoFiveLottie,.chapterThreeLottie{position:absolute;inset:0;width:100%;height:100%}.chapterOneTwoFirstLottie,.chapterOneTwoSecondLottie{left:50%;right:6%;width:auto}.prologueOneMoveLottie{transform:translate(-8vw)}.prologueOverlayItch{left:calc(35.8vw - 254px);top:26.3vh;width:254px}.prologueOverlayBelly{left:calc(35.8vw - 352px);top:40.4vh;width:352px}.prologueOverlayChest{left:60.5vw;top:29.8vh;width:352px}.text-left{left:74px;bottom:70px}.text-chapterOneTwo{left:8.5vw;top:18vh;bottom:auto;width:560px}.chapterTwoTextTop{left:8.5vw;top:15vh;bottom:auto;width:560px}.chapterTwoTextRight{left:64vw;top:46vh;bottom:auto;width:560px}.chapterTwoTextBottom{left:8.5vw;top:auto;bottom:22vh;width:560px}.chapterTwoSleepText,.chapterTwoRustleText{left:auto;right:50vw;top:auto;bottom:16vh;width:560px;text-align:right}.chapterTwoRustleText .storyText{font-size:36px}.chapterTwoNightOverlayStairs{left:6.2vw;top:auto;bottom:32.5vh;width:18.9vw}.chapterTwoNightOverlayDoor{left:26.6vw;top:auto;bottom:32.5vh;width:26.2vw}.chapterTwoNightOverlaySleep{left:53.9vw;top:10.8vh;width:38.7vw}.chapterTwoNightOverlayWake{left:53.9vw;top:auto;bottom:32.5vh;width:38.7vw}.chapterTwoMedicineText{left:67.4vw;top:36vh;bottom:auto;width:17vw}.chapterTwoMedicineText .storyText{font-size:24px;line-height:1.5}.chapterFourCleanText{left:59vw;top:33vh;bottom:auto;width:560px;text-align:center}.chapterFourSunsetTextTop,.chapterFourSunsetTextMiddle,.chapterFourSunsetTextBottom{left:8.8vw;bottom:auto}.chapterFourSunsetTextTop{top:27vh;width:660px}.chapterFourSunsetTextMiddle{top:48vh;width:470px}.chapterFourSunsetTextBottom{top:60vh;width:500px}.chapterFourCleanText .storyText,.chapterFourSunsetTextTop .storyText,.chapterFourSunsetTextMiddle .storyText,.chapterFourSunsetTextBottom .storyText{font-size:30px;line-height:1.58}.endingSpinner{left:50%;top:35%;z-index:4;width:min(44vw,760px);transform:translate(-50%,-50%);transform-origin:center;animation:endingSpin 9s linear infinite}.chapterFourFadeCover{inset:0;width:100%;height:100%;object-fit:contain;animation:chapterFourFadeCover 3s ease-in forwards}.prologueOneTextIntro,.prologueTwoTextIntro{left:8.4vw;top:auto;bottom:17vh;width:680px}.prologueThreeTextIntro{left:8.4vw;top:auto;bottom:17vh;width:760px}.prologueOneTextFirst{left:71.4vw;top:34.5vh;bottom:auto;width:315px;color:#023d59;text-shadow:none;animation:none}.prologueOneTextFirstUp{left:71.4vw;top:18.8vh;bottom:auto;width:315px;animation:none}.prologueOneTextSecond{left:54.5vw;top:72.4vh;bottom:auto;width:520px;color:#023d59;text-shadow:none}@keyframes prologueFirstTextEnter{0%{opacity:0;transform:translate(8vw,7vh)}55%{opacity:0}to{opacity:1;transform:translate(0)}}.prologueTextItch{left:calc(35.8vw - 254px);top:20.6vh;bottom:auto;width:254px;text-align:center}.prologueTextBelly{left:calc(35.8vw - 352px);top:75.8vh;bottom:auto;width:352px;text-align:center}.prologueTextChest{left:60.5vw;top:61.2vh;bottom:auto;width:352px;text-align:center}.text-right{right:92px;top:190px}.tone-dark .textLayer{color:#fffaf0;text-shadow:0 2px 8px rgba(0,0,0,.5),0 0 18px rgba(0,0,0,.35)}.tone-dark .textLayer.prologueOneTextFirst,.tone-dark .textLayer.prologueOneTextFirstUp,.tone-dark .textLayer.prologueOneTextSecond,.tone-dark .textLayer.chapterTwoMedicineText,.tone-dark .textLayer.chapterFourCleanText,.tone-dark .textLayer.chapterFourSunsetTextTop,.tone-dark .textLayer.chapterFourSunsetTextMiddle,.tone-dark .textLayer.chapterFourSunsetTextBottom{color:#023d59;text-shadow:none}.tone-light .textLayer{color:#1b343a;text-shadow:0 1px 0 rgba(255,255,255,.8),0 0 16px rgba(255,255,255,.72)}.storyText{margin:0 0 14px;font-size:31px;line-height:1.46;letter-spacing:0}.storyText:last-child{margin-bottom:0}.gamePage{background:linear-gradient(180deg,#579eaa38,#13444b80),#164450}.pipeGameConnect{background:#0e315f;touch-action:none}.pipeGameBackdropImage{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(18px) saturate(1.04);opacity:.45;transform:scale(1.04);-webkit-user-select:none;user-select:none;pointer-events:none}.pipeGameStage{position:absolute;left:50%;top:50%;z-index:1;width:min(100vw,calc(100dvh * 1.5987903226));aspect-ratio:1586 / 992;transform:translate(-50%,-50%);overflow:hidden;cursor:url(/images/mouse_cursor.png) 8 6,crosshair;touch-action:none}.pipeGameImage,.pipeConnectSvg{position:absolute;inset:0;width:100%;height:100%}.pipeGameImage{object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none}.pipeConnectSvg{pointer-events:none}.pipeGameFeedback{position:absolute;left:34%;top:82%;z-index:3;width:max-content;margin:0;transform:translate(-50%,-50%);color:#fffaf0;font-size:28px;line-height:1.42;letter-spacing:0;text-align:center;white-space:nowrap;text-shadow:0 3px 10px rgba(0,22,55,.58),0 0 18px rgba(11,75,135,.45);pointer-events:none;animation:pipeFeedbackFade .36s ease-out both}.pipeGameFeedbackSuccess{color:#f8fff8}.pipeGameNav{position:absolute;inset:0;z-index:4;pointer-events:none}.pipeGameNavButton{position:absolute;top:50%;display:grid;place-items:center;width:104px;height:118px;padding:0;border:0;border-radius:0;color:transparent;background:transparent;box-shadow:none;font-size:0;line-height:1;transition:transform .15s ease,background .15s ease;pointer-events:auto}.pipeGameNavButton img{display:block;width:100%;height:auto;pointer-events:none;-webkit-user-select:none;user-select:none}.pipeGameNavButton:first-child{left:3%;transform:translateY(-50%)}.pipeGameNavButton:last-child{right:3%;transform:translateY(-50%)}.pipeGameNavButton:hover{transform:translateY(-50%) scale(1.08);background:transparent}.pipeConnectLineGlow,.pipeConnectLine{fill:none;stroke-linecap:round;stroke-linejoin:round}.pipeConnectLineGlow{stroke:#89dfffd1;stroke-width:28;filter:url(#pipeLineGlow);opacity:.95}.pipeConnectLine{stroke:#fffffffa;stroke-width:11;filter:url(#pipeLineGlow)}.pipeConnectStart{fill:#fff;filter:url(#pipeLineGlow)}.pipeGame-broken .pipeConnectLine,.pipeGame-broken .pipeConnectLineGlow,.pipeGame-broken .pipeConnectStart{animation:pipeLineBreak .18s ease-out both}.pipeGame-complete .pipeConnectLine{stroke:#fff}.pipeGame{position:absolute;inset:0;overflow:hidden;transition:filter .9s ease,background .9s ease}.pipeGame.gameComplete{filter:brightness(1.18) saturate(1.1)}.gameMascot{position:absolute;left:7.2vw;bottom:2.8vh;z-index:5;width:min(16vw,230px);height:auto;-webkit-user-select:none;user-select:none;pointer-events:none;filter:drop-shadow(0 12px 18px rgba(0,0,0,.24));transition:opacity .22s ease,transform .22s ease}.buttonMatchGame{position:absolute;inset:0;overflow:hidden;background:#07295a;touch-action:none}.buttonMatchBackdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(16px) saturate(1.05);opacity:.36;transform:scale(1.04);-webkit-user-select:none;user-select:none;pointer-events:none}.buttonMatchStage{position:absolute;left:50%;top:50%;z-index:1;width:min(100vw,160dvh);aspect-ratio:16 / 10;transform:translate(-50%,-50%);overflow:hidden;touch-action:none}.buttonMatchBg{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none}.buttonMatchSlot{position:absolute;z-index:1;transform:translate(-50%,-50%);opacity:1;-webkit-user-select:none;user-select:none;pointer-events:none}.buttonMatchPiece{position:absolute;z-index:2;display:block;padding:0;border:0;background:transparent;transform:translate(-50%,-50%);cursor:url(/images/mouse_cursor.png) 8 6,grab;touch-action:none;transition:filter .18s ease,transform .18s ease}.buttonMatchPiece img{display:block;width:100%;height:auto;pointer-events:none;-webkit-user-select:none;user-select:none}.buttonMatchPieceActive{z-index:5;cursor:url(/images/mouse_cursor.png) 8 6,grabbing;filter:drop-shadow(0 18px 22px rgba(0,0,0,.34));transform:translate(-50%,-50%) scale(1.04)}.buttonMatchPieceMatched{cursor:url(/images/mouse_cursor.png) 8 6,default;filter:drop-shadow(0 0 14px rgba(255,246,187,.72)) drop-shadow(0 12px 14px rgba(0,0,0,.24));pointer-events:none}.buttonMatchFeedback{position:absolute;left:50%;bottom:4.8%;z-index:6;width:max-content;max-width:74%;margin:0;transform:translate(-50%);color:#fffaf0;font-size:30px;line-height:1.45;text-align:center;white-space:pre-line;text-shadow:0 3px 10px rgba(0,22,55,.62),0 0 18px rgba(11,75,135,.45);pointer-events:none;animation:pipeFeedbackFade .28s ease-out both}.buttonMatchFeedbackSuccess{bottom:2.4%;color:#f8fff8}.buttonMatchGameComplete .buttonMatchStage{filter:brightness(1.08) saturate(1.08)}.gameBackdrop{position:absolute;inset:0;background:linear-gradient(180deg,rgba(197,245,245,.16) 0%,transparent 32%),radial-gradient(circle at 78% 48%,rgba(193,247,238,.22),transparent 20%),linear-gradient(120deg,#1c5360,#21404b 54%,#52374c)}.gameBackdrop:before,.gameBackdrop:after{position:absolute;content:"";bottom:-40px;width:260px;height:520px;background:linear-gradient(90deg,transparent 42%,rgba(32,90,76,.75) 43% 52%,transparent 53%),linear-gradient(110deg,transparent 48%,rgba(117,168,96,.6) 49% 56%,transparent 57%);opacity:.58}.gameBackdrop:before{left:70px;transform:rotate(-8deg)}.gameBackdrop:after{right:120px;transform:rotate(10deg)}.pipeSvg{position:absolute;inset:0;width:100%;height:100%}.targetPipe{stroke:#d5dedcd1}.targetInner{stroke:#4a575b7a}.pipeBright{stroke:#defcf8f2}.flowOn{stroke:url(#cleanFlow);stroke-dasharray:48 26;animation:flowSlide .8s linear infinite}.spill{fill:#7a6141;stroke:#7a6141;opacity:.78;animation:spillPulse .7s ease-in-out infinite}.dragPipe{position:absolute;left:calc(50% - 510px);top:calc(50% - 36px);z-index:4;display:flex;align-items:center;width:520px;height:72px;cursor:url(/images/mouse_cursor.png) 8 6,grab;touch-action:none}.dragPipe:active{cursor:url(/images/mouse_cursor.png) 8 6,grabbing}.pipeOuter{position:relative;width:470px;height:64px;overflow:hidden;border:9px solid #cdd6d3;border-radius:36px;background:#57636a;box-shadow:inset 0 6px 12px #ffffff38,0 14px 32px #0000004d}.pipeFlow{position:absolute;inset:10px;border-radius:28px;background:repeating-linear-gradient(90deg,#66513a 0 34px,#896f4b 34px 68px,#4b3a2d 68px 102px);animation:pipeFlow .9s linear infinite}.pipeFlowClean{background:repeating-linear-gradient(90deg,#8fe7ff 0 34px,#d4fff4 34px 68px,#6bd4e8 68px 102px)}.pipeHandle{width:74px;height:74px;margin-left:-30px;border:8px solid #d9e0dc;border-radius:50%;background:radial-gradient(circle at 34% 32%,#f4fbf7 0 14px,transparent 15px),#7a8487;box-shadow:0 12px 30px #00000047}.gameHint{position:absolute;left:50%;bottom:42px;z-index:5;min-width:210px;transform:translate(-50%);padding:10px 16px;color:#effdf6;background:#0b262e7a;border:1px solid rgba(255,255,255,.26);border-radius:8px;font-size:22px;text-align:center}@keyframes pipeFlow{0%{background-position:0 0}to{background-position:102px 0}}@keyframes flowSlide{0%{stroke-dashoffset:0}to{stroke-dashoffset:-74}}@keyframes spillPulse{0%,to{transform:translate(0);opacity:.55}50%{transform:translate(12px);opacity:.92}}@keyframes pipeLineBreak{0%{opacity:1;stroke-dasharray:1 0}to{opacity:0;stroke-dasharray:18 28}}@keyframes pipeFeedbackFade{0%{opacity:0;transform:translate(-50%,calc(-50% + 8px))}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes endingSpin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes chapterFourFadeCover{0%,18%{opacity:1}to{opacity:0}}
