.form-field {
    margin-bottom: var(--space-2);
}

.form-field-label {
    display: block;
    line-height: 1;
    margin-bottom: var(--space-1);
}

.form-field--group {
    --gap: var(--space-2);
}

.form-field--group > .form-control {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.w-1 { --span: 1; }
.w-2 { --span: 2; }
.w-3 { --span: 3; }
.w-4 { --span: 4; }
.w-5 { --span: 5; }
.w-6 { --span: 6; }
.w-7 { --span: 7; }
.w-8 { --span: 8; }
.w-9 { --span: 9; }
.w-10 { --span: 10; }
.w-11 { --span: 11; }
.w-12 { --span: 12; }

.form-field--group > .form-control > .form-field {
    width: calc(var(--span) * (8.33333% + var(--gap) / 12) - var(--gap));
}

.form-field--group .form-field {
    margin-bottom: 0;
}

.form-field--text input,
.form-field--text textarea {
    display: block;
    width: 100%;
    padding: var(--space-2);
    border: 1px solid var(--color-border);
    border-radius: var(--input-border-radius);
    outline: none;

    transition: border-color .2s;

    &:focus {
        border-color: var(--color-text);
    }
}

.form-field--licenseplate {
    position: relative;
}

.form-field--licenseplate input {
    border: 2px solid black;
    background-color: var(--color-yellow);
    transition: border-color .2s;
    text-align: center;
    font-weight: 600;
    font-size: 24px;
    padding-top: var(--space-1);
    padding-bottom: var(--space-1);

    &:focus {
        border-color: black;
    }
}

.licenseplate-label {
    position: absolute;
    inset: 0 auto 0 0;
    width: 50px;
    background: var(--color-primary) center / 40px 49px no-repeat url(../img/licenseplate-nl.svg);
    border-radius: var(--input-border-radius) 0 0 var(--input-border-radius);
    border: 2px solid black;
    border-right: none;
}

.button {
    display: inline-block;
    margin: 0;
    border: none;
    text-decoration: none;
    padding: var(--space-2);
    border-radius: var(--input-border-radius);
    background-color: var(--color-primary);
    color: white;
    cursor: pointer;
    font-size: 1.2rem;
    line-height: 1;
    font-weight: 600;
}

.button.button--fullwidth {
    width: 100%;
    text-align: center;
}
