:root{font-family:Segoe UI,Microsoft YaHei,system-ui,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#ffffffde;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh}.envelope-container{display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;perspective:1000px}.envelope{position:relative;width:280px;height:180px}.envelope-body{position:absolute;width:100%;height:100%;background:linear-gradient(145deg,#fff5f5,#ffe4e1);border-radius:8px;box-shadow:0 10px 40px #ff69b44d;overflow:hidden}.envelope-front{position:absolute;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(145deg,#ffe4e1,#fff0f5,#ffe4e1)}.heart-seal{font-size:40px;margin-bottom:10px;filter:drop-shadow(0 2px 4px rgba(255,105,180,.4));animation:heartbeat 1.5s ease-in-out infinite}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.recipient{font-family:Georgia,serif;font-size:18px;color:#c71585;font-style:italic}.envelope-flap{position:absolute;top:0;left:0;width:100%;height:90px;transform-origin:top center;transform-style:preserve-3d;z-index:10}.flap-inner{width:0;height:0;border-left:140px solid transparent;border-right:140px solid transparent;border-top:90px solid #FFCDD2;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.letter{position:absolute;top:20px;left:20px;right:20px;height:140px;background:#fff;border-radius:4px;box-shadow:0 2px 10px #0000001a;display:flex;align-items:center;justify-content:center;z-index:5}.letter-content{text-align:center;color:#c71585;font-family:Georgia,serif}.letter-content p{margin:8px 0}.letter-heart{font-size:24px}.hint-text{margin-top:30px;color:#fffc;font-size:14px;animation:fadeInOut 2s ease-in-out infinite}.envelope-container:hover .envelope{transform:translateY(-5px)}.envelope-container:hover .heart-seal{animation:heartbeat .5s ease-in-out infinite}.fullpage-container{position:fixed;top:0;left:0;width:100%;height:100vh;overflow:hidden}.fullpage-section{position:absolute;top:0;left:0;width:100%;height:100vh;display:flex;align-items:center;justify-content:center;will-change:transform}.page-indicators{position:fixed;right:30px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:15px;z-index:100}.indicator{width:12px;height:12px;border-radius:50%;border:2px solid rgba(255,255,255,.5);background:transparent;cursor:pointer;transition:all .3s ease;padding:0}.indicator:hover{border-color:#fffc;transform:scale(1.2)}.indicator.active{background:linear-gradient(135deg,#ff69b4,#ff1493);border-color:#ff69b4;box-shadow:0 0 10px #ff69b480}.scroll-hint{position:fixed;bottom:40px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;color:#ffffffb3;font-size:14px;z-index:100;animation:fadeInOut 2s ease-in-out infinite}.scroll-arrow{margin-top:8px;font-size:20px;animation:bounce 1.5s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}@keyframes fadeInOut{0%,to{opacity:.5}50%{opacity:1}}@media(max-width:768px){.page-indicators{right:15px}.indicator{width:10px;height:10px}.scroll-hint{bottom:30px;font-size:12px}}.golden-cat{position:relative;cursor:pointer;filter:drop-shadow(0 8px 20px rgba(0,0,0,.25));transition:transform .3s ease}.golden-cat:hover{transform:scale(1.05)}.golden-cat svg{display:block}.raised-paw{animation:pawWave 1s ease-in-out infinite;transform-origin:62px 120px}@keyframes pawWave{0%,to{transform:rotate(0)}50%{transform:rotate(-15deg)}}.page-scene{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.bg-decoration{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:hidden}.floating-shape{position:absolute;border-radius:50%;opacity:.1;background:linear-gradient(135deg,#ff69b4,#ff1493)}.shape-1{width:300px;height:300px;top:-100px;right:-50px;animation:float1 15s ease-in-out infinite}.shape-2{width:200px;height:200px;bottom:10%;left:-50px;animation:float2 12s ease-in-out infinite}.shape-3{width:150px;height:150px;top:40%;right:10%;animation:float3 18s ease-in-out infinite}@keyframes float1{0%,to{transform:translate(0) rotate(0)}50%{transform:translate(-30px,30px) rotate(10deg)}}@keyframes float2{0%,to{transform:translate(0) rotate(0)}50%{transform:translate(20px,-20px) rotate(-10deg)}}@keyframes float3{0%,to{transform:translate(0)}50%{transform:translate(-15px,15px)}}.page-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:50px;padding:40px;z-index:10}.message-card{position:relative;background:#ffffff14;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,105,180,.3);border-radius:30px;padding:40px 60px;max-width:600px;box-shadow:0 0 20px #ff69b44d,0 0 40px #ff69b433,0 0 60px #ff14931a,inset 0 0 30px #ff69b40d;animation:glowPulse 3s ease-in-out infinite}.message-card:before{content:"";position:absolute;inset:-2px;border-radius:32px;background:linear-gradient(45deg,transparent 0%,rgba(255,105,180,.4) 25%,rgba(255,20,147,.6) 50%,rgba(255,105,180,.4) 75%,transparent 100%);background-size:400% 400%;animation:borderGlow 4s ease-in-out infinite;z-index:-1;opacity:.6}.message-card:after{content:"";position:absolute;inset:0;border-radius:30px;background:#140a1eb3;z-index:-1}@keyframes glowPulse{0%,to{box-shadow:0 0 20px #ff69b44d,0 0 40px #ff69b433,0 0 60px #ff14931a,inset 0 0 30px #ff69b40d}50%{box-shadow:0 0 30px #ff69b480,0 0 60px #ff69b44d,0 0 90px #ff149333,inset 0 0 40px #ff69b41a}}@keyframes borderGlow{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.message-text{font-size:1.8rem;color:#fff;text-align:center;line-height:1.8;margin:0;text-shadow:0 2px 10px rgba(0,0,0,.2);font-weight:300;letter-spacing:.5px}.cat-area{display:flex;align-items:center;justify-content:center}.page-number{position:absolute;bottom:30px;left:30px;color:#fff6;font-size:14px;font-weight:300}@media(max-width:768px){.page-content{gap:30px;padding:20px}.message-card{padding:25px 30px;border-radius:20px}.message-text{font-size:1.3rem}.cat-area{transform:scale(.8)}.shape-1{width:200px;height:200px}.shape-2{width:150px;height:150px}.shape-3{width:100px;height:100px}}@media(max-width:480px){.message-text{font-size:1.1rem}.cat-area{transform:scale(.65)}}.butterfly{position:absolute;z-index:10;pointer-events:none;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.butterfly svg{transform-style:preserve-3d}.hearts-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:hidden;z-index:5}.heart{position:absolute;color:#ff69b4;filter:drop-shadow(0 0 10px rgba(255,105,180,.5))}.heart:nth-child(odd){color:#ff1493}.heart:nth-child(3n){color:#ffb6c1}.heart:nth-child(5n){color:#ff6b9d}.fireworks-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:100;overflow:hidden}.firework-particle{position:absolute;width:8px;height:8px;border-radius:50%;box-shadow:0 0 10px currentColor,0 0 20px currentColor}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;overflow:hidden}.app{width:100%;height:100vh;position:relative;font-family:Segoe UI,Microsoft YaHei,sans-serif;background:linear-gradient(135deg,#1a0a1e,#2d1f3d,#4a2c5a)}.envelope-stage{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a0a1e,#2d1f3d,#4a2c5a);z-index:50}.main-header{position:fixed;top:0;left:0;width:100%;padding:30px;text-align:center;z-index:50;pointer-events:none}.title{font-family:Georgia,serif;font-size:2rem;font-weight:400;color:#ffffffe6;text-shadow:0 2px 20px rgba(255,105,180,.4);line-height:1.4}.title .name{display:block;font-size:2.5rem;font-weight:500;background:linear-gradient(135deg,gold,#ff69b4,#ff1493);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 3s ease-in-out infinite;margin-top:5px}@keyframes shimmer{0%,to{filter:brightness(1)}50%{filter:brightness(1.2)}}@media(max-width:768px){.main-header{padding:20px}.title{font-size:1.4rem}.title .name{font-size:1.8rem}}@media(max-width:480px){.title{font-size:1.2rem}.title .name{font-size:1.5rem}}::-webkit-scrollbar{display:none}body{-ms-overflow-style:none;scrollbar-width:none}
