.site-form {
  max-inline-size: 52ch;
}

.site-form label:not(.checkbox-field) {
  display: block;
  color: var(--ink-soft);
  text-transform: uppercase;
  letter-spacing: var(--tracking-label);
}

.site-form input:not([type="checkbox"]) {
  display: block;
  inline-size: 100%;
  padding: var(--s-2) var(--s-3);
  border: var(--rule-thin) solid var(--rule);
  border-radius: 0;
  background: var(--paper);
  color: var(--ink);
  font: inherit;
}

.site-form input[aria-invalid="true"],
.form-error {
  border-color: var(--signal);
  color: var(--signal);
}

.field-hint {
  color: var(--ink-soft);
}

.field-errors {
  margin: 0;
  padding: 0;
  list-style: none;
  color: var(--signal);
}

.action-button {
  display: inline-block;
  padding: var(--s-2) var(--s-3);
  border: var(--rule-thin) solid var(--rule);
  border-radius: 0;
  background: var(--paper);
  color: var(--ink);
  font: inherit;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: var(--tracking-label);
  cursor: pointer;
}

.action-button:hover {
  background: var(--paper-band);
}

.action-button--primary {
  background: var(--ink);
  color: var(--paper);
}

.action-button--primary:hover {
  background: var(--ink-soft);
}

.checkbox-field {
  display: inline-flex;
  align-items: center;
  gap: var(--s-2);
  cursor: pointer;
}

.checkbox-field input {
  inline-size: 1rem;
  block-size: 1rem;
  margin: 0;
  accent-color: var(--ink);
}
