.wpforms-field {
  position: relative;
  padding-block-start: 1.25rem;
}

.wpforms-field-label {
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: 1.25rem;
  transform: translateY(var(--wp--preset--spacing--20));
  font-size: var(--wp--preset--font-size--20);
  color: var(--color-text-muted);
  pointer-events: none;
  transform-origin: left top;
  transition: transform 0.2s ease, font-size 0.2s ease, color 0.2s ease;
}

.wpforms-field:focus-within .wpforms-field-label,
.wpforms-field:has(input:not(:placeholder-shown)) .wpforms-field-label,
.wpforms-field:has(textarea:not(:placeholder-shown)) .wpforms-field-label {
  transform: translateY(-1.25rem);
  font-size: var(--wp--preset--font-size--10);
  color: var(--wp--preset--color--accent-1);
}

fieldset[disabled] .wpforms-field-label {
  transform: translateY(-1.25rem);
  font-size: var(--wp--preset--font-size--10);
}

.wpforms-field:has(input:not(:placeholder-shown)):not(:focus-within) .wpforms-field-label,
.wpforms-field:has(textarea:not(:placeholder-shown)):not(:focus-within) .wpforms-field-label {
  color: var(--color-text-muted);
}

@media (prefers-reduced-motion: reduce) {
  .wpforms-field-label {
    transition: none;
  }
}