:root {
  --paper: oklch(7 0 0);
  --ink: color-mix(in oklab, var(--color) 5%, Green);
  --font: 100%/1.5 system-ui;
  --space: clamp(6px, 6px + 2vw, 15px);
  --container: 1280px;
}
/* ====== Base Elements ======
 General rules for basic HTML elements in any context */
body {
  background: var(--paper);
  color: var(--ink);
  font: var(--font);
}
/* ====== Site Layout ====== 
Setting the overall rules for page regions
https://www.w3.org/WAI/tutorials/page-structure/regions/
*/
body {
  max-width: var(--container);
  margin: 0 auto calc(var(--space) * 4) auto;
}
p {
  margin: auto;
}
h1 {
  text-align: center;
}
input:invalid {
  border-color: rgb(255, 64, 0);
}
span {
  font-size: smaller;
}
input:valid {
  border-color: green;
}
fieldset:focus-within {
  border-color: green;
}
footer {
  width: var(--container);
  position: fixed;
  bottom: 0;
  text-align: center;
}