@keyframes glitch{0%{clip-path:inset(40% 0 61%);transform:translate(-2px,2px)}20%{clip-path:inset(92% 0 1%);transform:translate(2px,-2px)}40%{clip-path:inset(43% 0 1%);transform:translate(-2px,2px)}60%{clip-path:inset(25% 0 58%);transform:translate(2px,-2px)}80%{clip-path:inset(54% 0 7%);transform:translate(-2px,2px)}to{clip-path:inset(58% 0 43%);transform:translate(2px,-2px)}}@keyframes glitch-2{0%{clip-path:inset(25% 0 58%);transform:translate(2px,-2px)}20%{clip-path:inset(54% 0 7%);transform:translate(-2px,2px)}40%{clip-path:inset(58% 0 43%);transform:translate(2px,-2px)}60%{clip-path:inset(40% 0 61%);transform:translate(-2px,2px)}80%{clip-path:inset(92% 0 1%);transform:translate(2px,-2px)}to{clip-path:inset(43% 0 1%);transform:translate(-2px,2px)}}@keyframes tear-fall{0%{opacity:1;transform:translateY(0)scale(1)}50%{opacity:.8;transform:translateY(50px)scale(.9)}to{opacity:0;transform:translateY(100px)scale(.7)}}@keyframes koink-pulse{0%,to{box-shadow:var(--box-shadow-x) var(--box-shadow-y) 0px 0px var(--border);transform:scale(1)}50%{box-shadow:calc(var(--box-shadow-x) * 1.5) calc(var(--box-shadow-y) * 1.5) 0px 0px var(--border);transform:scale(1.05)}}@keyframes mud-scroll{0%{background-position:0 0}to{background-position:-100px 0}}@keyframes pig-walk{0%,to{transform:translateY(0)rotate(0)}25%{transform:translateY(-3px)rotate(-2deg)}50%{transform:translateY(0)rotate(0)}75%{transform:translateY(-3px)rotate(2deg)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}@keyframes sparkle{0%,to{opacity:1;transform:scale(1)rotate(0)}50%{opacity:.8;transform:scale(1.1)rotate(5deg)}}@keyframes scanline{0%{transform:translateY(0)}to{transform:translateY(4px)}}@keyframes blink-cursor{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes counter-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.animate-glitch{animation:.3s linear infinite alternate-reverse glitch}.animate-glitch-2{animation:.3s linear infinite alternate-reverse glitch-2}.animate-tear-fall{animation:2s ease-in infinite tear-fall}.animate-koink-pulse{animation:2s ease-in-out infinite koink-pulse}.animate-mud-scroll{animation:3s linear infinite mud-scroll}.animate-pig-walk{animation:.4s ease-in-out infinite pig-walk}.animate-float{animation:3s ease-in-out infinite float}.animate-shake{animation:.5s ease-in-out shake}.animate-sparkle{animation:1s ease-in-out infinite sparkle}.animate-blink-cursor{animation:1s infinite blink-cursor}.glitch-wrapper{display:inline-block;position:relative}.glitch-wrapper:before,.glitch-wrapper:after{content:attr(data-text);width:100%;height:100%;position:absolute;top:0;left:0}.glitch-wrapper:before{color:#f0f;z-index:-1;animation:.3s linear infinite alternate-reverse glitch}.glitch-wrapper:after{color:#0ff;z-index:-1;animation:.3s linear infinite alternate-reverse glitch-2}.crt-overlay{position:relative}.crt-overlay:after{content:"";pointer-events:none;z-index:10;background:repeating-linear-gradient(0deg,#0000001a,#0000001a 1px,#0000 1px 2px);width:100%;height:100%;position:absolute;top:0;left:0}.mud-gradient{background:linear-gradient(#fc64ab1a 0%,#742f25 50%,#4f1a18 100%);background:linear-gradient(lab(64.3567% 63.5141 -6.74722/.1) 0%,lab(29.477% 30.6269 21.9669) 50%,lab(18.0069% 25.1663 14.7585) 100%)}.marble-gradient{background:linear-gradient(#f9e9f2 0%,#fef6fa 50%,#fff 100%);background:linear-gradient(lab(93.9281% 6.4714 -2.15853) 0%,lab(97.5442% 3.24202 -1.08039) 50%,lab(100% 0 0) 100%)}.pink-glow{box-shadow:0 0 10px #fc64ab80,0 0 20px #fc64ab4d,0 0 30px #fc64ab1a;box-shadow:0 0 10px lab(64.3567% 63.5141 -6.74722/.5),0 0 20px lab(64.3567% 63.5141 -6.74722/.3),0 0 30px lab(64.3567% 63.5141 -6.74722/.1)}.golden-glow{box-shadow:0 0 10px #facc0080,0 0 20px #facc004d,0 0 30px #facc001a;box-shadow:0 0 10px lab(84.2642% 6.05518 84.1458/.5),0 0 20px lab(84.2642% 6.05518 84.1458/.3),0 0 30px lab(84.2642% 6.05518 84.1458/.1)}.terminal-text{color:#0f0;text-shadow:0 0 5px #0f0;font-family:monospace}.retro-button{image-rendering:pixelated;font-family:"Press Start 2P",monospace}.game-container{image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.pipi-scroll-up{z-index:100;color:#c42a77;cursor:pointer;background:#fff2f9;border:2px solid #8c315c;border-radius:28px;flex-direction:column;align-items:center;gap:2px;padding:14px 20px 16px;transition:transform .2s,box-shadow .2s;display:flex;position:fixed;bottom:18vh;right:32px;transform:rotate(3deg);box-shadow:4px 5px #e991be}.pipi-scroll-up:hover{transform:rotate(-2deg)translateY(-3px);box-shadow:5px 8px #e991be}.pipi-scroll-up:focus-visible{outline-offset:5px;outline:3px solid #c42a77}.pipi-scroll-up-arrow{font-size:30px;line-height:1;animation:1.8s ease-in-out infinite pipi-scroll-nudge}.pipi-scroll-up-title{letter-spacing:-.04em;font-size:20px;font-weight:900}.pipi-scroll-up-caption{color:#873d61;font-size:10px;font-style:italic}@keyframes pipi-scroll-nudge{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@media (max-width:760px){.pipi-scroll-up{border-radius:22px;padding:10px 12px 12px;right:14px}.pipi-scroll-up-title{font-size:15px}.pipi-scroll-up-caption{font-size:8px}.pipi-scroll-up-arrow{font-size:24px}}@media (prefers-reduced-motion:reduce){.pipi-scroll-up{transition:none}.pipi-scroll-up-arrow{animation:none}}.pipi-travel-floor{z-index:80;height:calc(14vh - var(--companion)*10vh);pointer-events:none;position:fixed;bottom:0;left:0;right:0}.pipi-travel-treasures{z-index:120;pointer-events:none;height:100dvh;position:fixed;bottom:0;left:0;right:0;overflow:hidden}.pipi-travel-character{z-index:82;bottom:calc(11vh - var(--companion)*8vh);transform:translateX(-50%) scale(calc(1 - var(--companion)*.72));transform-origin:bottom;pointer-events:none;position:fixed;left:50%}.pipi-travel-coin{left:32px;bottom:calc(18vh - var(--companion)*14vh + var(--companion)*8px);z-index:82;transform:scale(calc(1 - var(--companion)*.4));transform-origin:0 100%;pointer-events:none;-webkit-user-select:none;user-select:none;position:fixed}.pipi-journey .ascent-scene:after{display:none}@media (max-width:760px){.pipi-travel-character{transform:translateX(-50%) scale(calc(1 - var(--companion)*.78));left:50%}.pipi-travel-coin{transform:scale(calc(.6 - var(--companion)*.15));left:8px}.pipi-travel-treasures{height:100dvh}.pipi-journey .ascent-body{padding-bottom:110px}.pipi-journey .ascent-continue{bottom:calc(4vh + 9px)}}.pipi-travel-coin:before{content:"";opacity:calc(var(--companion)*.9);background:#fff0f8;border-radius:50%;position:absolute;inset:0;box-shadow:0 2px 14px #30102718}.pipi-wanderer{z-index:90;pointer-events:none;opacity:0;width:120px;height:160px;transition:opacity .25s;position:fixed;bottom:calc(4vh - 21px);left:50%;transform:translate(-50%)}.pipi-wanderer[data-visible=true]{opacity:1}.pipi-wanderer svg{width:100%;height:100%;display:block;overflow:hidden}.pipi-wander-thought{color:#52243e;opacity:0;background:#fff5fb;border:1px solid #71344d;border-radius:50%;padding:5px 10px;font-size:11px;font-style:italic;transition:opacity .5s;position:absolute;top:-13px;right:-5px}.pipi-journey .ascent-continue{bottom:calc(4vh + 150px)}@media (max-width:760px){.pipi-wanderer{width:84px;height:112px;bottom:calc(4vh - 15px)}.pipi-journey .ascent-continue{bottom:calc(4vh + 105px)}.pipi-journey .ascent-art{margin-bottom:30px}}@media (prefers-reduced-motion:reduce){.pipi-wanderer,.pipi-wander-thought{transition:none}}.pipi-journey .ascent-continue{z-index:76;inset:auto 32px calc(4vh + 14px) auto;transform:none}@media (max-width:760px){.pipi-journey .ascent-continue{padding:8px 12px;font-size:9px;top:auto;bottom:calc(4vh + 10px);right:14px}}.pipi-travel-character{left:calc(50% - var(--companion)*28%);bottom:calc(11vh - var(--companion)*7vh);width:calc((1 - var(--companion))*min(40vw,400px) + var(--companion)*136px);transform:translate(-50%)}.pipi-travel-character>img{width:100%;max-width:none}.pipi-wanderer{transition:none;left:22%}.pipi-wander-thought{white-space:nowrap;text-align:center;min-width:42px}@media (max-width:760px){.pipi-travel-character{width:calc((1 - var(--companion))*min(70vw,400px) + var(--companion)*94px);transform:translate(-50%)}.pipi-scroll-up{bottom:calc(8vh + env(safe-area-inset-bottom,0px));z-index:100;padding:8px 11px 10px}.pipi-journey .ascent-continue{bottom:calc(4vh + env(safe-area-inset-bottom,0px) + 4px)}}.pipi-journey ::selection,.pipi-reading ::selection{color:#301129;text-shadow:none;background-color:#ff9dcc}.pipi-scroll-up-heading{justify-content:center;align-items:center;gap:8px;display:flex}
