:root {
    --relvado-paper: #f4ede1;
    --relvado-warm-paper: #ece2cf;
    --relvado-panel: #f4f6f1;
    --relvado-ink: #1b1916;
    --relvado-soft-ink: #5b5448;
    --relvado-green: #1f5b3a;
    --relvado-deep-green: #103d27;
    --relvado-gold: #c8932f;
    --relvado-chalk: #f4f6f1;
    --relvado-hairline: #e0d4be;
    --relvado-border: #d9cfbc;
    --relvado-soft-green: #eef3ef;
    --relvado-error: #b32121;
    --relvado-success: #26b050;
    --relvado-serif: Spectral, Georgia, "Times New Roman", serif;
    --relvado-sans: "Space Grotesk", Inter, system-ui, sans-serif;
}

html {
    background: var(--relvado-paper);
    color: var(--relvado-ink);
    font-family: var(--relvado-serif);
}

body {
    background: var(--relvado-paper);
    color: var(--relvado-ink);
    margin: 0;
}

a {
    color: var(--relvado-green);
}

h1:focus {
    outline: none;
}

.valid.modified:not([type=checkbox]) {
    outline: 1px solid var(--relvado-success);
}

.invalid {
    outline: 1px solid var(--relvado-error);
}

.validation-message {
    color: var(--relvado-error);
}

.blazor-error-boundary {
    background: var(--relvado-error);
    color: var(--relvado-chalk);
    padding: 1rem;
}

.blazor-error-boundary::after {
    content: "An error has occurred.";
}

.darker-border-checkbox.form-check-input {
    border-color: var(--relvado-soft-ink);
}

.form-floating > .form-control-plaintext::placeholder,
.form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder,
.form-floating > .form-control:focus::placeholder {
    text-align: start;
}
