body 
{
    background: radial-gradient(
        circle at 20% 20%,
        hsl(209, 100%, 57%),
        hsl(211, 100%, 60%),
        hsl(211, 100%, 65%),
        hsl(212, 100%, 55%),
        hsl(211, 100%, 70%),
        hsl(210, 100%, 76%),
        hsl(209, 100%, 63%)
    );
    background-repeat: no-repeat;
    background-size: 200% 200%;
    background-attachment: fixed;
    animation: moveGradient 40s infinite ease-in-out;
}

@keyframes moveGradient {
    0% 
    {
        background-position: 0% 0%;
    }
    5% 
    {
        background-position: 50% 0%;
    }
    10% 
    {
        background-position: 100% 0%;
    }
    15% 
    {
        background-position: 100% 50%;
    }
    20% 
    {
        background-position: 50% 100%;
    }
    25% 
    {
        background-position: 100% 0%;
    }
    30% 
    {
        background-position: 0% 50%;
    }
    35% 
    {
        background-position: 0% 100%;
    }
    40% 
    {
        background-position: 0% 0%;
    }
    45% 
    {
        background-position: 50% 0%;
    }
    50% 
    {
        background-position: 100% 100%;
    }
    55% 
    {
        background-position: 100% 50%;
    }
    60% 
    {
        background-position: 50% 100%;
    }
    65% 
    {
        background-position: 100% 0%;
    }
    70% 
    {
        background-position: 0% 50%;
    }
    75% 
    {
        background-position: 0% 100%;
    }
    80% 
    {
        background-position: 0% 0%;
    }
    85% 
    {
        background-position: 50% 0%;
    }
    90% 
    {
        background-position: 100% 0%;
    }
    95% 
    {
        background-position: 100% 50%;
    }
    100% 
    {
        background-position: 0% 0%;
    }
}

main
{
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
}

#container
{
    padding: 30px;
    display: grid;
    justify-content: center;
    align-items: start;
    width: 100%;
    margin: 20px;
    min-width: 250px;
    max-width: 550px;
    min-height: 700px;
    border: black solid 3px;
    border-radius: 20px;
}

h2
{
    margin-top: 20px;
    text-align: center;
    font-size: 50px;
}

form
{
    text-align: center;
}

form > label
{
    font-size: 30px;
}

form > input
{
    width: 400px;
    height: 40px;
    margin-top: 10px;
    border-radius: 10px;
    outline: none;
    font-size: 20px;
    text-align: center;
}

p
{
    text-align: center;
    font-size: 20px;
}

a:link
{
    color: blue;
}

a:visited
{
    color: blue;
}


button
{
    width: 200px;
    height: 40px;
    border-radius: 10px;
    background-color: transparent;
    font-size: 20px;
    border: black solid 2px;
    cursor: pointer;
}

red 
{
    color: red;
}