.sr-auth-form {
  display: flex;
  flex-direction: column;
  gap: var(--sr-space-4, 1rem);
  max-width: 28rem;
}

.sr-auth-form__field {
  display: flex;
  flex-direction: column;
  gap: var(--sr-space-1, 0.25rem);
}

.sr-auth-form__field label {
  font-weight: 600;
}

.sr-auth-form__field input {
  padding: var(--sr-space-2, 0.5rem) var(--sr-space-3, 0.75rem);
  border: 1px solid var(--sr-color-border, #d8d2c8);
  border-radius: var(--sr-radius-md, 8px);
  font-size: 1rem;
}

.sr-auth-form__error {
  color: var(--sr-color-danger, #b3261e);
  font-weight: 600;
}

/* Legal / Privacy / Cookies + Purchase Consent sprint (§9): the
   signup-only legal acknowledgement text -- muted, small, matching how
   this project treats other secondary/fine-print copy (e.g. the
   pricing cards' price-note), never styled as a call to action. */
.sr-auth-form__legal-acknowledgement {
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--color-muted, #8a8a8a);
  margin: 0;
}

.sr-auth-form__legal-acknowledgement a {
  color: var(--color-muted, #8a8a8a);
  text-decoration: underline;
}

.sr-auth-form__legal-acknowledgement a:hover,
.sr-auth-form__legal-acknowledgement a:focus-visible {
  color: var(--color-primary, #c0392b);
}

.sr-auth-form__submit {
  align-self: flex-start;
  padding: var(--sr-space-3, 0.75rem) var(--sr-space-6, 1.5rem);
  border-radius: 999px;
  border: none;
  background: var(--sr-color-primary, #1c3d2e);
  color: #fff;
  font-weight: 600;
  cursor: pointer;
}

.sr-auth-form__submit:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
