.loading-page{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#ea0054,#ff6b9d);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;z-index:9999;overflow:hidden}.loading-heart-container{display:flex;align-items:center;justify-content:center;width:80px;height:80px}.loading-heart{width:60px;height:60px;filter:drop-shadow(0 4px 12px rgba(0,0,0,.3))}.progress-container{width:100%;max-width:300px;display:flex;flex-direction:column;align-items:center;gap:.8rem}.progress-bar{width:100%;height:6px;background:#ffffff4d;border-radius:10px;overflow:hidden;box-shadow:0 2px 10px #0003}.progress-fill{height:100%;background:linear-gradient(90deg,#fff,#ffe5ec);border-radius:10px;box-shadow:0 0 10px #ffffff80;transition:width .3s ease-out}.progress-text{font-size:1.1rem;font-weight:600;color:#fff;text-shadow:2px 2px 8px rgba(0,0,0,.3);letter-spacing:.05em}.loading-message{display:flex;flex-direction:column;align-items:center;gap:.4rem;text-align:center;padding:0 1.5rem;max-width:400px}.message-en{font-size:1rem;font-weight:500;color:#fff;text-shadow:2px 2px 6px rgba(0,0,0,.3);margin:0;font-style:normal}.message-zh{font-size:.95rem;font-weight:500;color:#ffffffe6;text-shadow:1px 1px 4px rgba(0,0,0,.3);margin:0}.loading-page:before,.loading-page:after{content:"";position:absolute;width:30px;height:30px;background-image:url(/heart.webp);background-size:contain;background-repeat:no-repeat;opacity:.15;animation:float 6s ease-in-out infinite}.loading-page:before{top:10%;left:10%;animation-delay:0s}.loading-page:after{bottom:15%;right:15%;animation-delay:3s}@keyframes float{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-20px) rotate(5deg)}50%{transform:translateY(0) rotate(0)}75%{transform:translateY(-20px) rotate(-5deg)}}@media (max-width: 768px){.loading-page{gap:1.5rem}.loading-heart-container{width:70px;height:70px}.loading-heart{width:50px;height:50px}.progress-container{max-width:280px}.progress-text{font-size:1rem}.message-en{font-size:.95rem}.message-zh{font-size:.9rem}}@media (max-width: 480px){.loading-page{gap:1.2rem}.loading-heart-container{width:60px;height:60px}.loading-heart{width:45px;height:45px}.progress-container{max-width:260px}.progress-bar{height:5px}.progress-text{font-size:.95rem}.message-en{font-size:.9rem}.message-zh{font-size:.85rem}.loading-page:before,.loading-page:after{width:25px;height:25px}}.toast-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;backdrop-filter:blur(5px)}.toast-content{background:#fff;border-radius:20px;padding:2rem;box-shadow:0 10px 40px #0000004d;max-width:350px;width:90%;display:flex;flex-direction:column;align-items:center;gap:1.2rem;animation:bounce-in .6s ease}.toast-logo{width:40px;height:40px;object-fit:contain;filter:brightness(0) saturate(100%) invert(25%) sepia(98%) saturate(6846%) hue-rotate(330deg) brightness(92%) contrast(104%);animation:shake .8s ease}.toast-icon{font-size:3rem;animation:shake .5s ease}.toast-message{font-size:1.1rem;font-weight:500;color:#333;text-align:center;margin:0;line-height:1.5}.toast-button{padding:.8rem 2.5rem;font-size:1rem;font-weight:600;background:linear-gradient(135deg,#ea0054,#a50037);color:#fff;border-radius:50px;box-shadow:0 4px 15px #ea00544d;transition:all .3s ease;min-width:100px}.toast-button:hover{box-shadow:0 6px 20px #ea005466;transform:translateY(-2px)}.toast-button:active{transform:translateY(0)}@keyframes bounce-in{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1);opacity:1}}@keyframes shake{0%,to{transform:rotate(0)}25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}@media (max-width: 480px){.toast-content{padding:1.5rem;max-width:300px}.toast-icon{font-size:2.5rem}.toast-message{font-size:1rem}.toast-button{padding:.7rem 2rem;font-size:.95rem}}.google-login-button{position:relative;display:inline-block;width:100%}.google-login-button.login-button{width:100%;max-width:300px;padding:.9rem 1.8rem;font-size:1rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:.75rem;border-radius:50px;transition:all .3s ease;cursor:pointer;border:none}.google-login-button.login-button.primary{background:#fff;color:#333;box-shadow:0 4px 15px #0000001a}.google-login-button.login-button.primary:hover{box-shadow:0 6px 20px #00000026;transform:translateY(-1px)}.google-login-button.login-button.secondary{background:#ffffff4d;color:#fff;border:2px solid rgba(255,255,255,.5);backdrop-filter:blur(10px);box-shadow:0 4px 15px #0000001a}.google-login-button.login-button.secondary:hover{background:#fff6;border-color:#fffc;box-shadow:0 6px 20px #0003}.google-login-button.login-button:disabled{opacity:.6;cursor:not-allowed}.google-icon{width:20px;height:20px;flex-shrink:0}.google-login-button.user-profile .user-button{width:100%;max-width:300px;padding:.7rem 1.2rem;display:flex;align-items:center;gap:.75rem;border-radius:50px;transition:all .3s ease;cursor:pointer;border:none;font-size:.95rem;font-weight:500}.google-login-button.user-profile .user-button.primary{background:#fff;color:#333;box-shadow:0 4px 15px #0000001a}.google-login-button.user-profile .user-button.secondary{background:#ffffff4d;color:#fff;border:2px solid rgba(255,255,255,.5);backdrop-filter:blur(10px)}.google-login-button.user-profile .user-button:hover{transform:scale(1.02)}.user-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0}.user-avatar-placeholder{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1rem;flex-shrink:0}.user-name{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu{position:absolute;top:calc(100% + .5rem);left:0;right:0;background:#fffffff2;backdrop-filter:blur(20px);border-radius:12px;box-shadow:0 8px 24px #00000026;overflow:hidden;z-index:100;border:1px solid rgba(255,255,255,.3)}.user-info{padding:1rem;border-bottom:1px solid rgba(0,0,0,.05)}.user-email{font-size:.85rem;color:#666;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-button{width:100%;padding:.75rem 1rem;background:transparent;color:#ea0054;border:none;cursor:pointer;font-size:.95rem;font-weight:500;transition:all .2s ease;text-align:left}.logout-button:hover{background:#ea00541a}@media (max-width: 768px){.google-login-button.login-button{font-size:1rem;padding:.9rem 1.8rem;max-width:300px}.google-login-button.user-profile .user-button{max-width:300px}}@media (max-width: 480px){.google-login-button.login-button{font-size:.8rem;padding:.8rem 1.5rem;max-width:200px}.google-icon{width:18px;height:18px}.google-login-button.user-profile .user-button{max-width:200px;font-size:.7rem;padding:.65rem 1rem}.user-avatar,.user-avatar-placeholder{width:26px;height:26px;font-size:.65rem}}.user-info-button-container{position:relative;width:100%;max-width:300px}.user-info-button{width:100%;padding:.9rem 1.8rem;font-size:1.1rem;font-weight:600;background:#ffffff4d;color:#fff;border-radius:50px;border:2px solid rgba(255,255,255,.5);backdrop-filter:blur(10px);box-shadow:0 4px 15px #0000001a;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:12px}.user-info-button:hover{background:#fff6;border-color:#fffc;box-shadow:0 6px 20px #0003}.user-info-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.8)}.user-info-avatar-placeholder{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#ffffffe6;color:#667eea;font-size:14px;font-weight:700;border:2px solid rgba(255,255,255,.8)}.user-info-name{flex:1;font-size:1.1rem;font-weight:600;color:#fff;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:8px}.vip-badge{display:inline-block;padding:2px 8px;font-size:.75rem;font-weight:700;color:#000;background:linear-gradient(135deg,gold,orange);border-radius:10px;box-shadow:0 2px 8px #ffd70066;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0}@media (max-width: 768px){.user-info-name.vip-user{background:linear-gradient(135deg,gold,orange);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700}.vip-badge{display:none}}.user-info-dropdown{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;border-radius:12px;box-shadow:0 8px 24px #00000026;overflow:hidden;z-index:9999}.menu-item{padding:12px 16px;width:100%;text-align:left;background:transparent;border:none;cursor:pointer;transition:background-color .2s}.menu-item.user-details{cursor:default;background:linear-gradient(135deg,#667eea15,#764ba215);text-align:center;padding:14px 16px}.user-email{font-size:14px;font-weight:500;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-info-dropdown .menu-button{display:flex;align-items:center;justify-content:space-between;color:#333;font-size:14px}.user-info-dropdown .menu-button:not(:disabled):hover{background-color:#f5f5f5}.user-info-dropdown .menu-button:disabled{opacity:.6;cursor:not-allowed}.user-info-dropdown .menu-button.logout{color:#e74c3c;justify-content:center}.user-info-dropdown .menu-button.logout:hover{background-color:#fef2f2}.coming-soon{margin-left:auto;font-size:11px;color:#999;background:#f0f0f0;padding:2px 8px;border-radius:10px}.menu-divider{height:1px;background:#e0e0e0;margin:0}@media (max-width: 768px){.user-info-button-container{max-width:300px}.user-info-button{padding:.9rem 1.8rem;font-size:1.1rem}.user-info-avatar,.user-info-avatar-placeholder{width:30px;height:30px;font-size:13px}.user-info-name{font-size:1.1rem}.user-info-dropdown .menu-button{font-size:13px}}@media (max-width: 480px){.user-info-button-container{max-width:200px}.user-info-button{padding:.8rem 1.5rem;font-size:1rem}.user-info-avatar,.user-info-avatar-placeholder{width:26px;height:26px;font-size:12px}.user-info-name{font-size:1rem}.user-email,.user-info-dropdown .menu-button{font-size:13px}}.music-button-container{position:relative;width:48px;height:48px;pointer-events:none}.music-button{position:absolute;top:0;left:0;width:48px;height:48px;border-radius:50%;background:#fff3;border:2px solid rgba(255,255,255,.4);backdrop-filter:blur(10px);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;pointer-events:auto;padding:0;overflow:visible}.music-button:hover{background:#ffffff4d;border-color:#fff9;transform:scale(1.05)}.music-button:active{transform:scale(.95)}.music-disc{width:32px;height:32px;object-fit:contain;user-select:none;pointer-events:none}.music-button.playing .music-disc{animation:rotate 3s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pause-line{position:absolute;width:3px;height:60%;background:#ffffffe6;transform:rotate(45deg);pointer-events:none;box-shadow:0 0 4px #0000004d}.music-button.paused{opacity:.8}.floating-note{position:absolute;width:20px;height:20px;pointer-events:none;opacity:0}.floating-note img{width:100%;height:100%;object-fit:contain}.note-1{animation:float-note 2.5s ease-in-out infinite;animation-delay:0s}.note-2{animation:float-note 2.5s ease-in-out infinite;animation-delay:.8s}.note-3{animation:float-note 2.5s ease-in-out infinite;animation-delay:1.6s}@keyframes float-note{0%{bottom:5px;right:5px;opacity:0;transform:translate(0) scale(.8)}20%{opacity:1;transform:translate(8px,-12px) scale(1)}80%{opacity:1;transform:translate(25px,-35px) scale(1)}to{bottom:45px;right:-20px;opacity:0;transform:translate(30px,-45px) scale(.8)}}@media (max-width: 768px){.music-button-container{top:1rem;left:1rem;width:60px;height:60px}.music-button{width:40px;height:40px}.music-disc{width:26px;height:26px}.floating-note{width:16px;height:16px}@keyframes float-note{0%{bottom:3px;right:3px;opacity:0;transform:translate(0) scale(.8)}20%{opacity:1;transform:translate(5px,-10px) scale(1)}80%{opacity:1;transform:translate(18px,-28px) scale(1)}to{bottom:35px;right:-15px;opacity:0;transform:translate(22px,-32px) scale(.8)}}}.home-page{width:100%;height:100%;position:relative;overflow:hidden}.map-background{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.map-background:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#0000004d;pointer-events:none;z-index:1}.map-background:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:url(/assets/images/bg1-BjxKuHbL.webp);background-size:cover;background-position:center;background-repeat:no-repeat;z-index:-1;pointer-events:none}.decoration-bottom,.decoration-top{position:absolute;width:100%;height:35%;overflow:hidden;z-index:1;pointer-events:none}.decoration-bottom{bottom:-35px;display:flex;align-items:flex-start}.decoration-top{top:-35px;display:flex;align-items:flex-end}.decoration-top img{width:100%;height:auto;object-fit:cover;object-position:bottom}.decoration-bottom img{width:100%;height:auto;object-fit:cover;object-position:top}.home-content{position:absolute;top:50%;left:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;padding:2rem;width:100%;max-width:500px;z-index:10}.title-section{display:flex;flex-direction:column;align-items:center;gap:.8rem}.title-section h1{font-size:2.8rem;font-weight:700;color:#fff;text-shadow:2px 2px 8px rgba(0,0,0,.3);margin:0}.couple-icon{width:45px;height:45px;object-fit:contain}.couple-icon-animated{width:45px;height:45px;object-fit:contain;z-index:20;position:relative}.input-row{display:flex;align-items:center;justify-content:center;gap:1rem;width:100%;position:relative}.gender-icon{width:28px;height:28px;object-fit:contain;filter:brightness(0) invert(1)}.name-input{flex:1;max-width:260px;padding:.8rem 1.2rem;font-size:1rem;border-radius:50px;background:#ffffffe6;color:#333;transition:all .3s ease}.name-input::placeholder{color:#999}.name-input:focus{background:#fff;transform:scale(1.02)}.start-button{position:relative;width:100%;max-width:300px;padding:1.2rem 2rem;font-size:1.3rem;font-weight:600;background:#fff;color:#ea0054;border-radius:50px;box-shadow:0 4px 15px #0003;transition:all .3s ease;overflow:hidden}.start-button:hover{box-shadow:0 6px 20px #0000004d}.button-hearts-container{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1;overflow:hidden}.button-floating-heart{position:absolute;bottom:0;background-image:url(data:image/webp;base64,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);background-size:contain;background-repeat:no-repeat;background-position:center}.button-text{position:relative;z-index:2}.sensitivity-test-button{width:100%;max-width:300px;padding:.9rem 1.8rem;font-size:1.1rem;font-weight:600;background:#ffffff4d;color:#fff;border-radius:50px;border:2px solid rgba(255,255,255,.5);backdrop-filter:blur(10px);box-shadow:0 4px 15px #0000001a;transition:all .3s ease}.sensitivity-test-button:hover{background:#fff6;border-color:#fffc;box-shadow:0 6px 20px #0003}.google-login-container{width:100%;display:flex;justify-content:center}.footer-links{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1rem}.footer-link{background:none;border:none;color:#fffc;font-size:.75rem;font-weight:500;cursor:pointer;padding:.3rem .5rem;transition:all .3s ease}.footer-link:hover{color:#fff;transform:none}.footer-link:active{transform:none}.footer-separator{color:#ffffff80;font-size:.75rem}.music-button-wrapper{position:absolute;top:1.5rem;left:1.5rem;z-index:1000}.language-switcher{position:absolute;top:1.5rem;right:1.5rem;z-index:1000}.globe-button{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#ffffff26;border-radius:50%;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .3s ease;cursor:pointer;border:1px solid rgba(255,255,255,.2)}.globe-button:hover{background:#ffffff40;transform:scale(1.05)}.globe-button:active{transform:scale(.95)}.language-dropdown{position:absolute;top:calc(100% + .5rem);right:0;min-width:150px;background:#fffffff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:12px;box-shadow:0 8px 24px #00000026;overflow:hidden;border:1px solid rgba(255,255,255,.3)}.language-option{width:100%;padding:.75rem 1.25rem;font-size:.95rem;font-weight:500;color:#333;background:transparent;text-align:left;transition:all .2s ease;border:none;cursor:pointer;border-bottom:1px solid rgba(0,0,0,.05)}.language-option:last-child{border-bottom:none}.language-option:hover{background:#ea00541a;color:#ea0054}@media (max-width: 768px){.home-page{position:fixed;top:0;left:0}.map-background{position:fixed}.home-content{top:50%;left:50%;gap:1.5rem;padding:2rem;justify-content:center}.title-section{gap:.8rem}.title-section h1{font-size:2.8rem;font-weight:700}.couple-icon,.couple-icon-animated{width:45px;height:45px}.input-row{gap:1rem}.gender-icon{width:28px;height:28px}.name-input{max-width:260px;font-size:1rem;padding:.8rem 1.2rem}.start-button,.sensitivity-test-button{font-size:1.1rem;padding:.9rem 1.8rem;max-width:300px}.music-button-wrapper{position:fixed;top:1rem;left:1rem}.language-switcher{position:fixed;top:1.5rem;right:1.5rem}.globe-button{width:44px;height:44px}.language-dropdown{min-width:140px}.language-option{padding:.65rem 1rem;font-size:.9rem}}@media (max-width: 480px){.home-content{gap:1.5rem;padding:2rem}.title-section{gap:.8rem}.title-section h1{font-size:2.6rem;font-weight:700}.couple-icon,.couple-icon-animated{width:40px;height:40px}.input-row{gap:1rem}.gender-icon{width:28px;height:28px}.name-input{max-width:200px;font-size:1rem;padding:.8rem 1.2rem}.start-button{font-size:1rem;padding:.8rem 1.5rem;max-width:220px}.sensitivity-test-button{font-size:1rem;padding:.8rem 1.5rem;max-width:200px}.language-switcher{position:fixed;top:1.7rem;right:1.7rem}.globe-button{width:40px;height:40px}.language-dropdown{min-width:130px}.language-option{padding:.6rem .9rem;font-size:.85rem}}@font-face{font-family:AlibabaPuHuiTi;src:url(/assets/fonts/AlibabaPuHuiTi-3-75-SemiBold-bTZ8PPt4.woff2) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}*{margin:0;padding:0;box-sizing:border-box}body{font-family:AlibabaPuHuiTi,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}#root{min-height:100vh;width:100%}@media (max-width: 768px){body{position:fixed;width:100%;height:100%}#root{height:100%;position:fixed;overflow-y:auto}}.app-container{width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;overflow:hidden}.game-area{width:100vw;height:100vh;max-width:56.25vh;position:relative;overflow:hidden}@media (min-aspect-ratio: 9/16){.app-container:before,.app-container:after{content:"";position:fixed;top:0;bottom:0;width:calc((100vw - 56.25vh)/2);z-index:-1;background:linear-gradient(135deg,#ea0054,#ff6b9d)}.app-container:before{left:0}.app-container:after{right:0}}button{font-family:AlibabaPuHuiTi,sans-serif;cursor:pointer;border:none;outline:none;transition:all .3s ease}button:active{transform:scale(.95)}input{font-family:AlibabaPuHuiTi,sans-serif;border:none;outline:none}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInFromLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.text-center{text-align:center}.flex-center{display:flex;justify-content:center;align-items:center}
