:root { color-scheme: light; }
body { margin: 0; background: #f6f3ea; color: #22261f;
  font: 1.125rem/1.5 Georgia, "Times New Roman", serif; }
main { max-width: 32rem; margin: 12vh auto; padding: 0 1.5rem; }
h1 { font-size: 1.75rem; font-weight: 500; line-height: 1.2; margin: 0 0 1rem; }
p { margin: 0 0 1.5rem; color: #55584e; }
label { display: block; margin: 0 0 0.5rem; font-weight: 600; }
input { box-sizing: border-box; width: 100%; padding: 0.75rem; font: inherit;
  border: 1px solid #7a7468; border-radius: 4px; background: #fffdf7; }
input:focus, button:focus { outline: 3px solid #8a3d12; outline-offset: 2px; }
button { margin-top: 1rem; padding: 0.75rem 1.5rem; font: inherit; color: #f6f3ea;
  background: #22261f; border: 0; border-radius: 4px; cursor: pointer; }
.error { color: #6b1414; background: #f6e4e0; padding: 0.75rem; border-radius: 4px; }
