body { font-family: system-ui, sans-serif; margin: 0; color: #1f2933; background: #f7f8fa; }
main { max-width: 44rem; margin: 3rem auto; padding: 0 1.25rem; }
h1 { font-size: 1.6rem; }
h2 { font-size: 1.2rem; margin-top: 2rem; }
a { color: #2f6fdf; }
.hint { color: #667085; font-size: 0.9em; }
.error { color: #b42318; }
button { font: inherit; padding: 0.4rem 0.9rem; border-radius: 6px; border: 1px solid #c8ced6;
  background: #fff; cursor: pointer; }
.notice { color: #05603a; }
label { display: block; margin-top: 1rem; font-weight: 600; }
input[type=password], input[type=text] { font: inherit; width: 100%; max-width: 28rem;
  padding: 0.4rem 0.5rem; border: 1px solid #c8ced6; border-radius: 6px; box-sizing: border-box; }
form { margin: 0.5rem 0; }
li { margin-bottom: 1rem; }
