html { font-family: system-ui, sans-serif; color: #20242a; }
body { margin: 0; }
header, main, footer { padding: 1rem max(1rem, calc((100vw - 960px) / 2)); }
nav { display: flex; align-items: center; gap: 1rem; }
nav form { display: inline; margin-left: auto; }
main { min-height: 70vh; }
label { font-weight: 600; }
input { min-width: 20rem; max-width: 100%; padding: .5rem; }
button { padding: .5rem .8rem; cursor: pointer; }
table { width: 100%; border-collapse: collapse; }
th, td { padding: .6rem; text-align: left; border-bottom: 1px solid #ddd; }
.validation-summary-errors, .field-validation-error { color: #b00020; }
