body {
    background: 
        linear-gradient(135deg, #FFD1DD, #FFEEF5, #FFF6E5, #FFE6EE, #FFDFD3, #FFD1DD);
    background-size: 600% 600%;
    animation: gradientFlow 25s ease infinite alternate;
}

@keyframes gradientFlow {
    0% { background-position: 0% 50%; }
    25% { background-position: 50% 25%; }
    50% { background-position: 100% 50%; }
    75% { background-position: 50% 75%; }
    100% { background-position: 0% 50%; }
}

body::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: 
        url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" opacity="0.05"><path d="M30,20 Q40,5 50,20 T70,20" stroke="%23FF8FA3" fill="none" stroke-width="2"/><path d="M20,40 L30,50 L20,60" stroke="%23FF8FA3" fill="none" stroke-width="2"/><path d="M80,40 L70,50 L80,60" stroke="%23FF8FA3" fill="none" stroke-width="2"/><circle cx="50" cy="70" r="5" fill="%23FF8FA3"/></svg>');
    background-size: 200px 200px;
    opacity: 0.15;
    pointer-events: none;
    z-index: -1;
    animation: floatingPattern 60s infinite linear;
}

@keyframes floatingPattern {
    0% { background-position: 0 0; }
    100% { background-position: 200px 200px; }
}


