  body { margin: 0; min-height: 100vh; display: grid; place-items: center; background: #f4f6f9; color: #0f141d;
         font-family: 'IBM Plex Sans', ui-sans-serif, system-ui, sans-serif; }
  form { width: 320px; background: #fff; border: 1px solid #dfe3eb; border-radius: 10px; padding: 28px; }
  h1 { margin: 0 0 4px; font-size: 21px; font-weight: 600; }
  h1 span { color: #4f46e5; }
  p { margin: 0 0 20px; color: #525a6a; font-size: 13px; }
  label { display: block; font-size: 12px; font-weight: 600; margin-bottom: 6px; }
  input { width: 100%; box-sizing: border-box; height: 36px; border: 1px solid #d2d8e2; border-radius: 7px; padding: 0 10px; font: inherit; }
  button { margin-top: 16px; width: 100%; height: 36px; border: 0; border-radius: 7px; background: #4f46e5; color: #fff; font: inherit; font-weight: 600; cursor: pointer; }
  .notice { color: #8d1c2b; background: #fbdfe3; padding: 8px 10px; border-radius: 7px; }
