/* ==========================================================================
   Allauth account pages (login, logout, password reset/set, email confirm).
   Loaded only by templates/allauth/layouts/base.html, on top of site.css
   (which provides the tokens, .btn classes, and .messages). The pages
   render h1/p/form straight into the layout's .wrap, so they're presented
   as a centered card matching the post-login panels.
   ========================================================================== */

/* Only allauth pages load this stylesheet, so scoping on main > .wrap is
   safe (site pages load their own layout css instead). */
main > .wrap {
  max-width: 480px;
  margin: 48px auto 32px;
}

main > .wrap > h1 {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: 26px;
  letter-spacing: 0.01em;
  color: var(--ink);
  margin: 0 0 6px;
}

main > .wrap > p {
  color: var(--ink-soft);
  font-size: 14px;
  line-height: 1.5;
  margin: 0 0 14px;
}

main > .wrap > p a {
  color: var(--green-700);
}

/* --- form fields (rendered by allauth/elements/fields.html) ------------- */

.auth-form {
  margin-top: 16px;
}

.auth-form .field {
  margin-bottom: 14px;
}

.auth-form label {
  display: block;
  font-size: 13px;
  font-weight: 500;
  margin-bottom: 5px;
  color: var(--ink-soft);
}

.auth-form input[type="text"],
.auth-form input[type="email"],
.auth-form input[type="password"] {
  width: 100%;
  padding: 9px 10px;
  font: inherit;
  font-size: 14px;
  border: 1px solid var(--chalk-line);
  border-radius: 6px;
  background: #fff;
  color: var(--ink);
}

.auth-form input:focus {
  outline: none;
  border-color: var(--green-600);
}

.auth-form input[type="checkbox"] {
  margin-right: 6px;
  accent-color: var(--green-600);
}

/* Validation errors (Django's errorlist from {{ field.errors }} plus the
   .auth-error <small>s from fields.html). */
.auth-form .errorlist,
.auth-error {
  display: block;
  color: #a12a20;
  font-size: 12.5px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

/* --- action buttons (rendered by allauth/elements/button.html) ---------- */

.auth-form .btn {
  margin-top: 4px;
}

.auth-form .btn + .btn {
  margin-left: 8px;
}

@media (max-width: 720px) {
  main > .wrap {
    margin: 24px auto;
  }

  .auth-form .btn + .btn {
    margin-left: 0;
  }

  .auth-form .btn {
    width: 100%;
    justify-content: center;
  }
}