:root {
  color-scheme: light;
  font-family: ui-sans-serif, system-ui, sans-serif;
  background: #f4f0e8;
  color: #15231d;
}

* { box-sizing: border-box; }

body { margin: 0; }

main {
  width: min(42rem, calc(100% - 2rem));
  margin: 12vh auto 3rem;
}

.eyebrow {
  color: #28705a;
  font-weight: 750;
  letter-spacing: .12em;
  text-transform: uppercase;
}

h1 {
  max-width: 12ch;
  margin: .25rem 0;
  font: 750 clamp(2.4rem, 8vw, 5rem)/.98 ui-serif, Georgia, serif;
}

.intro { color: #52615b; font-size: 1.1rem; }

form { margin: 3rem 0 1rem; }
label { display: block; margin-bottom: .5rem; font-weight: 700; }
.entry { display: flex; gap: .6rem; }

input, button {
  border: 1px solid #a7b2a7;
  border-radius: .55rem;
  font: inherit;
  padding: .8rem 1rem;
}

input { min-width: 0; flex: 1; background: #fff; }
button { border-color: #163c31; background: #163c31; color: #fff; cursor: pointer; }
button:hover { background: #245846; }

#status { min-height: 1.5em; color: #52615b; }
#tasks { padding: 0; list-style: none; }
#tasks li { margin: .55rem 0; padding: 1rem; border-radius: .55rem; background: #fff; box-shadow: 0 2px 12px #1834260d; }

@media (max-width: 32rem) {
  main { margin-top: 5vh; }
  .entry { align-items: stretch; flex-direction: column; }
}
