@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/pixelify-sans-cyrillic-400-normal-DfOZNMlW.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/pixelify-sans-latin-ext-400-normal-DdH6zlBQ.woff2)format("woff2"),url(/assets/pixelify-sans-latin-ext-400-normal-BkfTUL4s.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/pixelify-sans-latin-400-normal-DLrIX9QE.woff2)format("woff2"),url(/assets/pixelify-sans-latin-400-normal-JapMNN6Z.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:700;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/pixelify-sans-cyrillic-700-normal-BrZTw8tu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/pixelify-sans-latin-ext-700-normal-ClyJstAh.woff2)format("woff2"),url(/assets/pixelify-sans-latin-ext-700-normal-BadXkHzZ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/pixelify-sans-latin-700-normal-D3Xxx3QE.woff2)format("woff2"),url(/assets/pixelify-sans-latin-700-normal-BctWAS0u.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink:#2a1f2b;--paper:#fff6e9;--paper-shade:#f1dfc7;--pink:#f28bb8;--pink-dark:#c9578c;--yellow:#ffe066;--night-1:#2b1b3d;--night-2:#5a2f63;--font:"Pixelify Sans", system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{overscroll-behavior:none;background:#120c18;height:100%;margin:0}body{font-family:var(--font);color:var(--ink);-webkit-font-smoothing:none;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation}.app{background:#000;max-width:480px;height:100dvh;margin:0 auto;position:relative;overflow:hidden}.screen{position:absolute;inset:0;overflow:hidden}.pixel-btn{font-family:var(--font);color:var(--ink);background:var(--yellow);cursor:pointer;min-height:52px;box-shadow:0 -4px 0 0 var(--ink), 0 4px 0 0 var(--ink), -4px 0 0 0 var(--ink), 4px 0 0 0 var(--ink), inset 0 -5px 0 0 #e0a92e;border:none;margin:4px;padding:12px 22px;font-size:20px;font-weight:700}.pixel-btn:active{box-shadow:0 -4px 0 0 var(--ink), 0 4px 0 0 var(--ink), -4px 0 0 0 var(--ink), 4px 0 0 0 var(--ink), inset 0 3px 0 0 #e0a92e;transform:translateY(3px)}.pixel-btn--big{padding:16px 34px;font-size:26px}.pixel-input{font-family:var(--font);color:var(--ink);background:var(--paper);width:100%;min-height:52px;box-shadow:0 -4px 0 0 var(--ink), 0 4px 0 0 var(--ink), -4px 0 0 0 var(--ink), 4px 0 0 0 var(--ink), inset 0 4px 0 0 var(--paper-shade);-webkit-user-select:text;user-select:text;border:none;border-radius:0;outline:none;padding:12px 14px;font-size:22px}.pixel-input::placeholder{color:#b9a58f}.fade{opacity:0;pointer-events:none;z-index:50;background:#000;transition:opacity .6s steps(6,end);position:absolute;inset:0}.fade--in{opacity:1;pointer-events:all}.fade--start{animation:.7s steps(6,end) both fade-from-black}@keyframes fade-from-black{0%{opacity:1}to{opacity:0}}.fade--start.fade--in{opacity:1;animation:none}.pop-in{animation:.4s cubic-bezier(.3,1.8,.5,1) both pop-in}@keyframes pop-in{0%{transform:scale(0)}to{transform:scale(1)}}.intro{background:linear-gradient(180deg, var(--night-1) 0%, var(--night-2) 55%, #b4588a 100%);animation:.8s steps(8,end) both appear}.intro__stars,.intro__stars:after{background-image:radial-gradient(2px 2px at 12% 18%,#fff 50%,#0000 51%),radial-gradient(2px 2px at 78% 12%,#fff 50%,#0000 51%),radial-gradient(2px 2px at 64% 30%,#ffe9a8 50%,#0000 51%),radial-gradient(2px 2px at 30% 40%,#fff 50%,#0000 51%),radial-gradient(2px 2px at 88% 46%,#ffd6ec 50%,#0000 51%),radial-gradient(2px 2px at 8% 60%,#ffd6ec 50%,#0000 51%),radial-gradient(2px 2px at 46% 8%,#fff 50%,#0000 51%);animation:2.4s steps(2,end) infinite twinkle;position:absolute;inset:0}.intro__stars:after{content:"";animation-delay:1.2s;transform:translate(37px,53px)}@keyframes twinkle{50%{opacity:.35}}.intro__content{height:100%;padding:24px 22px calc(24px + env(safe-area-inset-bottom));flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex;position:relative}.bubble{background:var(--paper);width:100%;min-height:96px;box-shadow:0 -4px 0 0 var(--ink), 0 4px 0 0 var(--ink), -4px 0 0 0 var(--ink), 4px 0 0 0 var(--ink), inset 0 -4px 0 0 var(--paper-shade);padding:14px 16px;font-size:21px;line-height:1.3;animation:.3s cubic-bezier(.3,1.6,.5,1) both pop-in;position:relative}.bubble:after{content:"";background:var(--paper);width:16px;height:14px;box-shadow:-4px 0 0 0 var(--ink), 4px 0 0 0 var(--ink), 0 4px 0 0 var(--ink);margin-left:-8px;position:absolute;bottom:-14px;left:50%}.bubble__next,.dialogue__next{color:var(--pink-dark);font-size:14px;animation:.8s steps(2,end) infinite blink;position:absolute;bottom:6px;right:12px}@keyframes blink{50%{opacity:0}}.intro__cat{flex-direction:column;align-items:center;margin-top:8px;display:flex;position:relative}.intro__cat canvas{z-index:1;animation:2.4s steps(2,end) infinite breathe;position:relative}.intro__cat--happy canvas{animation:.5s steps(3,end) 2 hop}.intro__cat--shake canvas{animation:.4s steps(4,end) shake}@keyframes breathe{50%{transform:translateY(2px)}}@keyframes hop{50%{transform:translateY(-16px)}}@keyframes shake{25%{transform:translate(-7px)}75%{transform:translate(7px)}}.intro__cushion{background:var(--pink);width:200px;height:28px;box-shadow:0 -4px 0 0 var(--ink), 0 4px 0 0 var(--ink), -4px 0 0 0 var(--ink), 4px 0 0 0 var(--ink), inset 0 -6px 0 0 var(--pink-dark);margin-top:-16px}.name-form{flex-direction:column;align-items:center;gap:16px;width:100%;margin-top:12px;display:flex}.dialogue__ghost{visibility:hidden}.chapter-card{background:var(--night-1);color:var(--paper);flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.chapter-card__num{color:var(--pink);letter-spacing:2px;font-size:22px}.chapter-card__title{margin-bottom:20px;font-size:44px;font-weight:700}.stage,.stage canvas{touch-action:none;width:100%;height:100%;position:absolute;inset:0}.scene{animation:.8s steps(8,end) both appear}.hold{z-index:10;touch-action:none;display:flex;position:absolute;inset:0}.hold__zone{padding:0 14px calc(28px + env(safe-area-inset-bottom));flex:1;align-items:flex-end;display:flex}.hold__zone--right{justify-content:flex-end}.hold__zone:active{background:linear-gradient(#0000 60%,#ffffff1f)}.hold__hint{color:var(--paper);background:#2a1f2bb8;padding:8px 12px;font-size:18px;transition:opacity .6s;animation:1.2s steps(2,end) infinite blink}.hold__hint--gone{opacity:0;animation:none}.spot-btn{z-index:20;animation:.35s cubic-bezier(.3,1.8,.5,1) both spot-pop,1s steps(2,end) .35s infinite spot-bob;position:absolute;top:34%;left:50%;transform:translate(-50%)}@keyframes spot-pop{0%{transform:translate(-50%)scale(0)}to{transform:translate(-50%)scale(1)}}@keyframes spot-bob{50%{transform:translate(-50%)translateY(-4px)}}.dialogue-layer{z-index:30;padding:0 12px calc(16px + env(safe-area-inset-bottom));align-items:flex-end;display:flex;position:absolute;inset:0}.dialogue-layer--top{padding:calc(16px + env(safe-area-inset-top)) 12px 0;align-items:flex-start}.dialogue{background:var(--paper);width:100%;min-height:118px;box-shadow:0 -4px 0 0 var(--ink), 0 4px 0 0 var(--ink), -4px 0 0 0 var(--ink), 4px 0 0 0 var(--ink), inset 0 -4px 0 0 var(--paper-shade);gap:12px;padding:12px;animation:.25s steps(4,end) both dialogue-in;display:flex;position:relative}@keyframes dialogue-in{0%{opacity:0;transform:translateY(30px)}}.dialogue__portrait{box-shadow:0 0 0 3px var(--ink);background:#cfe9f7;flex:none;align-self:flex-start;padding:2px;line-height:0}.dialogue--shani .dialogue__portrait{background:#f7d6e6}.dialogue--nikita .dialogue__portrait{background:#d9d6ee}.dialogue__portrait canvas{width:60px!important;height:auto!important}.dialogue__body{flex:1;min-width:0}.dialogue__name{color:var(--pink-dark);margin-bottom:4px;font-size:16px;font-weight:700}.dialogue--nikita .dialogue__name{color:#4b4a7a}.dialogue--shani .dialogue__name{color:#9a5a2e}.dialogue__text{font-size:19px;line-height:1.3}@keyframes appear{0%{opacity:0}to{opacity:1}}.scene-caption{top:calc(80px + env(safe-area-inset-top));text-align:center;color:var(--paper);text-shadow:3px 3px 0 var(--ink);z-index:20;font-size:22px;font-weight:700;animation:.4s cubic-bezier(.3,1.6,.5,1) both pop-in;position:absolute;left:0;right:0}.choices{left:0;right:0;top:calc(90px + env(safe-area-inset-top));z-index:25;flex-direction:column;align-items:center;gap:14px;display:flex;position:absolute}.massage{padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);background:#3b2a3f;flex-direction:column;justify-content:center;align-items:center;animation:.8s steps(8,end) both appear;display:flex}.massage__top{justify-content:center;align-items:center;height:76px;padding:0 16px;display:flex}.massage__reaction{background:var(--paper);box-shadow:0 -4px 0 0 var(--ink), 0 4px 0 0 var(--ink), -4px 0 0 0 var(--ink), 4px 0 0 0 var(--ink);padding:10px 16px;font-size:22px}.massage__hint{color:var(--paper);font-size:18px;animation:1.2s steps(2,end) infinite blink}.massage__face{aspect-ratio:72/92;width:min(88vw,400px,78.2609dvh - 156.522px);box-shadow:0 0 0 4px var(--ink);position:relative}.massage__img{display:block;width:100%!important;height:100%!important}.mpoint{aspect-ratio:1;background:0 0;border:none;width:15%;padding:0;position:absolute;transform:translate(-50%,-50%)}.mpoint:after{content:"";background:#5ee06a;position:absolute;inset:28%;box-shadow:0 0 0 3px #1f6b2a}.mpoint--target{cursor:pointer;animation:.25s steps(3,end) both mpoint-in}.mpoint--target:after{animation:.7s steps(2,end) infinite mpoint-pulse}@keyframes mpoint-in{0%{transform:translate(-50%,-50%)scale(0)}}@keyframes mpoint-pulse{50%{background:#a6ff9e;inset:20%}}.mpoint--lit{pointer-events:none}.mpoint--lit:after{background:#a6ff9e;inset:32%;box-shadow:0 0 0 3px #1f6b2a,0 0 10px 2px #a6ff9eb3}.mpoint--gold:after{background:var(--yellow);animation:.6s steps(2,end) infinite mpoint-pulse;box-shadow:0 0 0 3px #a0661a,0 0 14px 4px #ffe066e6}.mpoint--fade{pointer-events:none;animation:.7s steps(4,end) forwards mpoint-fade}@keyframes mpoint-fade{to{opacity:0;transform:translate(-50%,-50%)scale(1.6)}}.massage__lines{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.massage__lines polyline{fill:none;stroke:var(--yellow);stroke-width:2.4px;stroke-linecap:square;stroke-linejoin:miter;stroke-dasharray:1;stroke-dashoffset:1px;opacity:.85;animation:1.2s steps(10,end) forwards draw-line}@keyframes draw-line{to{stroke-dashoffset:0}}.digit-panel{left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:40;background:var(--paper);text-align:center;box-shadow:0 -4px 0 0 var(--ink), 0 4px 0 0 var(--ink), -4px 0 0 0 var(--ink), 4px 0 0 0 var(--ink), 0 0 0 999px #120c1840;flex-direction:column;align-items:center;gap:6px;padding:12px 14px 16px;display:flex;position:absolute}.digit-panel__label{color:var(--pink-dark);font-size:20px}.digit-panel__digit{color:var(--ink);text-shadow:6px 6px 0 var(--yellow);font-size:76px;font-weight:700;line-height:1}.digit-panel__note{color:#6a5a6a;margin-bottom:10px;font-size:16px}.mini-player{top:calc(12px + env(safe-area-inset-top));z-index:70;width:58px;height:52px;box-shadow:0 -3px 0 0 var(--ink), 0 3px 0 0 var(--ink), -3px 0 0 0 var(--ink), 3px 0 0 0 var(--ink), inset 0 -4px 0 0 #2a2133;cursor:pointer;background:#3a2f45;border:none;flex-direction:column;justify-content:space-between;align-items:center;padding:6px;animation:.4s cubic-bezier(.3,1.8,.5,1) both pop-in;display:flex;position:absolute;right:12px}.mini-player:active{transform:translateY(2px)}.mini-player--hl{animation:.4s cubic-bezier(.3,1.8,.5,1) both pop-in,.6s steps(2,end) .4s infinite hl}@keyframes hl{50%{box-shadow:0 -3px 0 0 var(--yellow), 0 3px 0 0 var(--yellow), -3px 0 0 0 var(--yellow), 3px 0 0 0 var(--yellow), 0 0 0 7px #ffe06659}}.cassette{background:var(--pink);width:40px;height:22px;box-shadow:inset 0 0 0 2px var(--ink);justify-content:space-around;align-items:center;padding:0 5px;display:flex}.cassette__reel{background:var(--paper);width:9px;height:9px;box-shadow:inset 0 0 0 2px var(--ink);position:relative}.cassette__reel:after{content:"";background:var(--ink);width:3px;height:7px;position:absolute;top:1px;left:3px}.mini-player--on .cassette__reel:after{animation:.5s steps(4,end) infinite reel}@keyframes reel{to{transform:rotate(180deg)}}.eq{align-items:flex-end;gap:3px;height:10px;display:flex}.eq i{background:#5ee06a;width:5px;height:3px}.mini-player--on .eq i{animation:.45s steps(3,end) infinite alternate eq}.mini-player--on .eq i:nth-child(2){animation-delay:.15s}.mini-player--on .eq i:nth-child(3){animation-delay:.3s}@keyframes eq{to{height:10px}}.player-layer{z-index:80;padding:calc(74px + env(safe-area-inset-top)) 12px 12px;background:#120c1873;justify-content:flex-end;align-items:flex-start;display:flex;position:absolute;inset:0}.player{width:min(100%,340px);max-height:100%;color:var(--paper);transform-origin:100% 0;box-shadow:0 -4px 0 0 var(--ink), 0 4px 0 0 var(--ink), -4px 0 0 0 var(--ink), 4px 0 0 0 var(--ink), inset 0 -5px 0 0 #2a2133;background:#3a2f45;padding:12px 14px 14px;overflow-y:auto}.player__head{color:var(--pink);justify-content:space-between;align-items:center;font-size:18px;font-weight:700;display:flex}.player__close{font-family:var(--font);color:var(--paper);cursor:pointer;background:0 0;border:none;width:44px;height:44px;margin:-8px -10px -8px 0;font-size:22px}.player__screen{color:#a6ff9e;box-shadow:inset 0 0 0 3px var(--ink);background:#1b2a1f;margin:8px 0 12px;padding:10px 12px}.player__title{white-space:nowrap;text-overflow:ellipsis;font-size:18px;overflow:hidden}.player__artist{opacity:.7;min-height:18px;font-size:14px}.player__bars{align-items:flex-end;gap:3px;height:18px;margin-top:6px;display:flex}.player__bars i{background:#5ee06a;flex:1;height:3px}.player__bars--on i{animation:.5s steps(4,end) infinite alternate bars}@keyframes bars{to{height:18px}}.player__controls{justify-content:center;gap:14px;margin-bottom:12px;display:flex}.pbtn{font-family:var(--font);background:var(--paper);width:56px;height:52px;color:var(--ink);cursor:pointer;box-shadow:0 -3px 0 0 var(--ink), 0 3px 0 0 var(--ink), -3px 0 0 0 var(--ink), 3px 0 0 0 var(--ink), inset 0 -4px 0 0 var(--paper-shade);border:none;font-size:18px}.pbtn--main{background:var(--yellow);width:68px;box-shadow:0 -3px 0 0 var(--ink), 0 3px 0 0 var(--ink), -3px 0 0 0 var(--ink), 3px 0 0 0 var(--ink), inset 0 -4px 0 0 #e0a92e}.pbtn:active{transform:translateY(2px)}.player__vol{align-items:center;gap:10px;margin:6px 0;font-size:15px;display:flex}.player__vol span{width:64px}.player__vol input{appearance:none;background:0 0;flex:1;height:36px}.player__vol input::-webkit-slider-runnable-track{height:8px;box-shadow:inset 0 0 0 2px var(--ink);background:#1b2a1f}.player__vol input::-webkit-slider-thumb{-webkit-appearance:none;background:var(--yellow);width:22px;height:26px;box-shadow:inset 0 0 0 3px var(--ink);border-radius:0;margin-top:-9px}.player__vol input::-moz-range-track{background:#1b2a1f;height:8px}.player__vol input::-moz-range-thumb{background:var(--yellow);border:3px solid var(--ink);border-radius:0;width:22px;height:26px}.player__list{flex-direction:column;gap:4px;margin-top:10px;display:flex}.player__track{font-family:var(--font);text-align:left;color:var(--paper);cursor:pointer;background:#ffffff0f;border:none;min-height:44px;padding:10px;font-size:16px}.player__track small{opacity:.6;margin-left:22px;font-size:12px;display:block}.player__track--on{color:var(--yellow);background:#f28bb840}.dialogue-layer--top{padding-top:calc(76px + env(safe-area-inset-top))}.intro__arrow{top:calc(70px + env(safe-area-inset-top));z-index:5;color:var(--yellow);text-shadow:3px 3px 0 var(--ink);font-size:40px;animation:.6s steps(2,end) infinite arrow-bob;position:absolute;right:70px;transform:rotate(-40deg)}@keyframes arrow-bob{50%{transform:rotate(-40deg)translate(8px)}}.eyepiece{padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);background:#000;flex-direction:column;justify-content:center;align-items:center;animation:.8s steps(8,end) both appear;display:flex}.eyepiece__top{text-align:center;justify-content:center;align-items:center;height:90px;padding:0 16px;display:flex}.eyepiece__view{aspect-ratio:1;touch-action:none;border-radius:50%;width:min(90vw,420px,100dvh - 260px);position:relative;box-shadow:0 0 0 6px #1a1a24,0 0 0 10px #2c2c38,0 0 40px 10px #506ec840}.eyepiece__view canvas{border-radius:50%;width:100%;height:100%;transition:filter .12s;display:block}.eyepiece__hint{pointer-events:none;position:absolute;inset:0}.eyepiece__hint span{color:var(--yellow);text-shadow:2px 2px 0 var(--ink);margin-top:-18px;font-size:30px;animation:.8s steps(2,end) infinite blink;position:absolute;top:50%;right:8px}.eyepiece__bottom{justify-content:center;align-items:center;width:100%;height:110px;padding:0 28px;display:flex}.focus-knob{width:100%;max-width:360px;color:var(--paper);text-align:center;flex-direction:column;gap:4px;font-size:18px;display:flex}.focus-knob--off{opacity:.4}.focus-knob input{appearance:none;background:0 0;width:100%;height:48px}.focus-knob input::-webkit-slider-runnable-track{height:12px;box-shadow:inset 0 0 0 3px var(--ink);background:repeating-linear-gradient(90deg,#2c2c38 0 6px,#3a3a48 6px 12px)}.focus-knob input::-webkit-slider-thumb{-webkit-appearance:none;background:var(--yellow);width:30px;height:40px;box-shadow:inset 0 0 0 3px var(--ink), inset 0 -6px 0 3px #e0a92e;border-radius:0;margin-top:-14px}.focus-knob input::-moz-range-thumb{background:var(--yellow);border:3px solid var(--ink);border-radius:0;width:30px;height:40px}.fade--quick{transition-duration:.45s}.timelapse{inset:calc(80px + env(safe-area-inset-top)) 18px calc(26px + env(safe-area-inset-bottom));pointer-events:none;z-index:20;color:#fff;text-shadow:2px 2px #0009;animation:.3s steps(3,end) both appear;position:absolute}.timelapse__corner{border:0 solid #ffffffe6;width:26px;height:26px;position:absolute}.timelapse__corner--tl{border-top-width:4px;border-left-width:4px;top:0;left:0}.timelapse__corner--tr{border-top-width:4px;border-right-width:4px;top:0;right:0}.timelapse__corner--bl{border-bottom-width:4px;border-left-width:4px;bottom:0;left:0}.timelapse__corner--br{border-bottom-width:4px;border-right-width:4px;bottom:0;right:0}.timelapse__rec{align-items:center;gap:8px;font-size:18px;display:flex;position:absolute;top:12px;left:14px}.timelapse__rec i{background:#ff4a4a;width:12px;height:12px;animation:.8s steps(2,end) infinite blink}.timelapse__speed{color:var(--yellow);font-size:16px;position:absolute;bottom:12px;right:14px}.scene-caption--small{top:calc(84px + env(safe-area-inset-top));font-size:18px;animation:1s steps(2,end) infinite blink}.room__counter{top:calc(18px + env(safe-area-inset-top));z-index:25;color:var(--paper);box-shadow:0 0 0 3px var(--ink);background:#2a1f2bcc;align-items:center;gap:10px;padding:8px 14px;font-size:22px;font-weight:700;display:flex;position:absolute;left:14px}.room__box{width:22px;height:18px;box-shadow:inset 0 5px 0 0 #8a6438, 0 0 0 2px var(--ink);background:#c89a62}.climb-btn{left:50%;bottom:calc(28px + env(safe-area-inset-bottom));z-index:20;touch-action:none;position:absolute;transform:translate(-50%)}.climb-btn:active{transform:translate(-50%)translateY(3px)}.dev-btn{top:calc(12px + env(safe-area-inset-top));z-index:70;width:44px;height:52px;color:var(--paper);box-shadow:0 -3px 0 0 var(--ink), 0 3px 0 0 var(--ink), -3px 0 0 0 var(--ink), 3px 0 0 0 var(--ink);cursor:pointer;background:#3a2f45;border:none;font-size:24px;position:absolute;right:80px}.dev-menu__group{margin-top:10px}.dev-menu__title{color:var(--pink);margin-bottom:4px;font-size:14px}.dev-menu__list{grid-template-columns:1fr 1fr;gap:4px;display:grid}.scene-root{position:absolute;inset:0}.dialogue--taisiya .dialogue__portrait{background:#f6dcc8}.dialogue--taisiya .dialogue__name{color:#c2441a}.sigh{z-index:22;color:var(--ink);background:var(--paper);box-shadow:0 0 0 2px var(--ink);pointer-events:none;white-space:nowrap;padding:3px 8px;font-size:16px;animation:2.4s steps(12,end) both sigh-up;position:absolute;transform:translate(-50%,-100%)}@keyframes sigh-up{0%{opacity:0;margin-top:6px}20%{opacity:1}80%{opacity:1}to{opacity:0;margin-top:-16px}}.album{padding:calc(76px + env(safe-area-inset-top)) 16px calc(20px + env(safe-area-inset-bottom));background:#3b2a30;flex-direction:column;justify-content:center;align-items:center;gap:18px;animation:.8s steps(8,end) both appear;display:flex}.album__book{aspect-ratio:3/4;width:min(100%,380px);box-shadow:0 0 0 4px var(--ink), 8px 8px 0 0 #00000059, inset 6px 0 0 0 #e2d6c2;transform-origin:0;background:#f6efe2;animation:.35s steps(5,end) both page-flip;display:flex}.album__book--cover{box-shadow:0 0 0 4px var(--ink), 8px 8px 0 0 #00000059, inset 10px 0 0 0 #5a1e2a;background:#7a2a3a}@keyframes page-flip{0%{opacity:.4;transform:perspective(800px)rotateY(-60deg)}}.album__cover{cursor:pointer;color:#f4e8d8;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;display:flex}.album__cover-photo{aspect-ratio:1;background:#e8a0b0;width:45%;box-shadow:0 0 0 6px #f4e8d8,0 0 0 9px #e8c070}.album__cover-title{font-size:28px;font-weight:700}.album__hint{opacity:.7;font-size:14px;animation:1.2s steps(2,end) infinite blink}.album__page{flex-direction:column;flex:1;justify-content:space-around;align-items:center;gap:10px;padding:18px;display:flex}.album__page--end{justify-content:center;gap:20px}.album__photo{box-shadow:0 0 0 2px var(--ink);background:#fff;width:78%;margin:0;padding:8px 8px 4px}.album__photo img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.album__empty{aspect-ratio:4/3;color:#999;background:repeating-linear-gradient(45deg,#eee 0 8px,#e2e2e2 8px 16px);justify-content:center;align-items:center;font-size:14px;display:flex}.album__photo figcaption{text-align:center;padding-top:4px;font-size:14px}.album__note{text-align:center;color:#5a3a3a;font-size:18px}.album__nav{color:var(--paper);align-items:center;gap:16px;font-size:18px;display:flex}.noise{top:calc(80px + env(safe-area-inset-top));z-index:25;color:var(--paper);flex-direction:column;gap:4px;font-size:15px;display:flex;position:absolute;left:16px;right:16px}.noise__bar{height:14px;box-shadow:0 0 0 3px var(--ink);background:#1b2a1f}.noise__bar i{background:#5ee06a;height:100%;transition:width .1s;display:block}.noise__bar i.noise--loud{background:#e05a4f}.peel-hint{left:16px;right:16px;bottom:calc(30px + env(safe-area-inset-bottom));z-index:25;text-align:center;color:var(--paper);font-size:17px;animation:1.4s steps(2,end) infinite blink;position:absolute}.shh{text-align:center;z-index:30;width:240px;color:var(--ink);background:var(--yellow);box-shadow:0 0 0 4px var(--ink);margin-left:-120px;padding:10px 0;font-size:26px;font-weight:700;position:absolute;top:42%;left:50%}.gauge{height:18px;box-shadow:0 0 0 3px var(--ink);background:#3a2a2a;position:relative}.gauge__good{background:#2f7a3a;position:absolute;top:0;bottom:0}.gauge__needle{background:var(--paper);width:5px;box-shadow:0 0 0 2px var(--ink);margin-left:-2px;transition:left 80ms;position:absolute;top:-5px;bottom:-5px}.gauge__needle--good{background:#a6ff9e}.gauge__needle--fast{background:#ff6a5a}.album__cover-photo img{object-fit:cover;width:100%;height:100%;display:block}.album__finale{flex-direction:column;animation:none;position:relative}.finale__title{text-align:center;color:#5a3a3a;height:36px;padding-top:12px;font-size:20px}.finale__grid{flex:1;margin:6px 12px 14px;position:relative}.finale__tile{aspect-ratio:1;width:17%;box-shadow:0 0 0 2px var(--ink);background:#fff;padding:3px 3px 7px;transition:left .9s cubic-bezier(.5,0,.3,1.2),top .9s cubic-bezier(.5,0,.3,1.2),transform .9s,box-shadow .4s;position:absolute}.finale__tile img,.finale__tile span{object-fit:cover;width:100%;height:100%;display:block}.finale--glow .finale__tile,.finale--done .finale__tile{box-shadow:0 0 0 2px var(--ink), 0 0 14px 4px #ffe066e6}.finale__lines{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.finale__lines polyline{fill:none;stroke:var(--yellow);stroke-width:3px;stroke-dasharray:1;stroke-dashoffset:1px;opacity:0}.finale--glow .finale__lines polyline,.finale--done .finale__lines polyline{opacity:.9;animation:1.2s steps(10,end) forwards draw-line}.finale__panel{padding:8px 12px 12px;position:absolute;bottom:10px;left:10px;right:10px}.finale__panel .digit-panel__digit{font-size:56px}.final__duo{justify-content:center;align-items:flex-end;margin-top:6px;display:flex;position:relative}.final__duo--enter{animation:1.6s steps(8,end) both drag-in}@keyframes drag-in{0%{transform:translate(-120%)}60%{transform:translate(-10%)}to{transform:translate(0)}}.final__shani canvas{animation:2.4s steps(2,end) infinite breathe}.final__lock{z-index:2;margin-bottom:4px;margin-left:-46px}.final__lock--open{filter:drop-shadow(0 0 14px #ffe066e6);animation:.8s steps(6,end) both lock-open}@keyframes lock-open{0%{transform:rotate(0)}25%{transform:rotate(-8deg)scale(1.1)}50%{transform:rotate(8deg)scale(1.15)}to{transform:rotate(0)scale(1.1)}}.final__options{justify-content:center;gap:12px;margin-top:10px;display:flex}.final__opt{min-width:62px;font-size:28px}.final__opt--wrong{background:#e05a4f;animation:.4s steps(4,end) shake}.confetti{pointer-events:none;z-index:40;position:absolute;inset:0;overflow:hidden}.confetti i{animation:linear infinite confetti-fall;position:absolute;top:-12px}@keyframes confetti-fall{to{transform:translateY(105dvh)rotate(540deg)}}.letter{background:linear-gradient(180deg, var(--night-1) 0%, var(--night-2) 55%, #b4588a 100%);padding:calc(76px + env(safe-area-inset-top)) 16px calc(20px + env(safe-area-inset-bottom));justify-content:center;align-items:center;animation:1s steps(8,end) both appear;display:flex}.letter__card{z-index:41;width:100%;max-height:calc(100dvh - 110px - env(safe-area-inset-top));background:var(--paper);box-shadow:0 -4px 0 0 var(--ink), 0 4px 0 0 var(--ink), -4px 0 0 0 var(--ink), 4px 0 0 0 var(--ink), inset 0 -5px 0 0 var(--paper-shade);flex-direction:column;align-items:center;gap:10px;margin-top:30px;padding:20px 18px;display:flex;position:relative;overflow-y:auto}.letter__line{text-align:center;margin:0;font-size:18px;line-height:1.35;animation:.6s steps(4,end) both appear}.letter__title{color:var(--pink-dark);font-size:28px;font-weight:700}.letter__sign{color:#4b4a7a;align-self:flex-end;font-weight:700}.letter__box{box-shadow:0 0 0 3px var(--ink);background:#fff0f4;align-items:center;gap:12px;padding:10px;font-size:16px;display:flex}.player__restart{text-align:center;color:var(--pink);margin-top:12px}.player__confirm{text-align:center;background:#e05a4f2e;margin-top:12px;padding:10px;font-size:15px;box-shadow:inset 0 0 0 2px #e05a4f}.player__confirm-btns{justify-content:center;gap:12px;margin-top:10px;display:flex}.pbtn--wide{width:auto;padding:0 14px;font-size:16px}.pbtn--danger{color:var(--paper);background:#e05a4f}.album__img{aspect-ratio:4/3;background:#efe6d6;position:relative;overflow:hidden}.album__img img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .5s;display:block}.album__img img.album__img--in{opacity:1}.album__wait{color:#8a6a5a;justify-content:center;align-items:center;font-size:15px;animation:1s steps(2,end) infinite blink;display:flex;position:absolute;inset:0}.album__hint--wait{opacity:.9;animation:none}
