.heart-trail-container {
			position: fixed;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			pointer-events: none;
			overflow: hidden;
			z-index: 9999;
		}
        .cherry-blossoms, .hearts-container {
            position: fixed;
            width: 100%;
            height: 100%;
            z-index: 1;
            pointer-events: none;
            overflow: hidden;
        }
        .blossom {
            position: absolute;
            top: -10px;
            background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 40 40"><path d="M20 0C18 10 10 18 0 20C10 22 18 30 20 40C22 30 30 22 40 20C30 18 22 10 20 0Z" fill="%23ffb6c1" opacity="0.7"/></svg>');
            background-size: contain;
            pointer-events: none;
            animation: fall linear infinite;
        }

		@keyframes fall {
			0% {
				opacity: 0;
				transform: translate(0, -10vh) rotate(0deg);
			}
			10% {
				opacity: 1;
			}
			100% {
				opacity: 0;
				transform: translate(calc(var(--random-x) * 10vw), calc(100vh + 20px)) rotate(calc(var(--random-r) * 360deg));
			}
		}
        .heart {
            position: absolute;
			opacity: 0.7; /* Đồng bộ với hoa anh đào */
            width: 20px;
            height: 20px;
            bottom: -30px; /* Bắt đầu từ dưới màn hình */
            left: 50%;
            background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23ff6b95"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>') no-repeat;
            background-size: contain;
            opacity: 0;
            animation: float 6s ease-in-out infinite;
        }

        @keyframes float {
            0% {
                transform: translateY(0) rotate(0deg);
                opacity: 0;
            }
            10% {
                opacity: 0.5;
            }
            90% {
                opacity: 0.8;
            }
            100% {
                transform: translateY(-110vh) rotate(720deg); /* Bay lên trên hoàn toàn */
                opacity: 0;
            }
        }
		.cursor-heart {
            position: absolute;
            background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23ff6b95"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>') no-repeat;
            background-size: contain;
            animation: fadeOut 1.2s ease-out;
            pointer-events: none; /* Không chặn sự kiện chuột */
        }

        @keyframes fadeOut {
            0% {
                transform: translateX(0) translateY(0) scale(1);
                opacity: 1;
            }
            50% {
                transform: translateX(calc(15px * var(--random-x))) translateY(-15px) scale(1.2);
                opacity: 0.8;
            }
            100% {
                transform: translateX(calc(30px * var(--random-x))) translateY(-30px) scale(0);
                opacity: 0;
            }
        }
