div#container
{
    background: url(../afbeeldingen/achtergrond.jpg) center center;
    background-size: cover;
    background-attachment: fixed;
    width: 100%;
    min-height: 100dvh;
}

div#links
{
    width: 28rem;
    background: var(--basis);
    min-height: 100dvh;
    padding: 3rem;
    font-size: 0.9rem;
}

div#logo
{
    background: url(../afbeeldingen/logo.svg) left center no-repeat;
    background-size: contain;
    height: 5rem;
    margin-bottom: 2rem;
}

div.popup div.veld:first-child
{
    margin-top: 0;
}

h1
{
    font-size: 1.5rem;
    margin-bottom: 4rem;
}

div.melding
{
    line-height: 1.5em;
    margin-bottom: 1.5rem;
    border-radius: .25rem;
    padding: 1rem;
    text-align: justify;
}

div.melding.waarschuwing
{
    box-shadow: 0 0 0 1px var(--waarschuwing);
    background: var(--waarschuwing_achtergrond);
    display: none;
}

div.melding.fout
{
    box-shadow: 0 0 0 1px var(--fout);
    background: var(--fout_achtergrond);
}

div.melding.succes
{
    box-shadow: 0 0 0 1px var(--succes);
    background: var(--succes_achtergrond);
}

label
{
    width: 100%;
    display: block;
    font-weight: 500;
    padding-bottom: 0.5rem;
    cursor: pointer;
}

input:focus,
input:hover,
button:hover
{
    box-shadow: var(--focus) 0 0 0 .25rem;
    outline: none;
}

a
{
    display: block;
    width: 100%;
}

div#wachtwoord_formulier
{
    background: var(--basis);
    padding: 2rem;
    width: 25rem;
    border-radius: 0.25rem;
    overflow-y: auto;
    max-height: 90%;
}

div#feedback
{
    margin: 2rem 1rem 0 1rem;
}

div#feedback p
{
    padding-bottom: 0;
}

div#feedback p.geldig
{
    color: var(--succes);
}

div#feedback p.ongeldig
{
    color: var(--fout);
}

div#progressbar
{
    border-radius: .25rem;
    height: 0.25rem;
    margin-top: 1rem;
    transition: all .5s;
    min-width: 1rem;
}

@media only screen and (max-width: 50rem)
{
    div#links
    {
        width: 100%;
    }
}

@media only screen and (max-width: 40rem)
{
    div#links
    {
        padding: 2rem;
    }

    h1
    {
        margin-bottom: 2rem;
    }

    div.veld:not(:first-child)
    {
        margin-top: 1rem;
    }

    div#wachtwoord_formulier
    {
        width: 100%;
        height: 100dvh;
        border-radius: 0;
        max-height: unset;
    }
}

input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus, 
input:-webkit-autofill:active
{
    transition: background-color 5000s ease-in-out 0s !important;
    -webkit-text-fill-color: var(--text);
}