button,
input[type="checkbox"],
input[type="radio"] {
    user-select: none;
    -webkit-user-select: none;
}

input[type="number"],
input[type="password"],
input[type="text"],
textarea {
    color: var(--color-default);
    background: var(--background-secondary);
}

label {
    display: block;
    font-size: var(--size-default);
    font-weight: 400;
    margin-bottom: var(--space-quarter);
}

.labelXLarge {
    font-size: var(--size-subheader);
    margin-bottom: calc(var(--space-half) * 1.5);
}

input:invalid,
input:invalid:focus {
    border-color: var(--color-error);
}

input::-webkit-credentials-auto-fill-button {
    visibility: hidden;
    display: none !important;
    pointer-events: none;
    position: absolute;
    right: 0;
}

a[tabindex="0"]:focus,
button:focus,
input:focus,
select:focus,
input[type="checkbox"]:focus + label::before {
    outline-color: var(--color-blue);
    outline-offset: -2px;
    outline-style: auto;
    outline-width: 4px;
}

@media (max-width: 768px) {
    .labelXLarge {
        margin-bottom: var(--space-half);
    }
}