I propose the following rule of thumb for formatting technical terms.
• If the term is a design space, keep it lowercase.
• If the term is a particular element in the design space, capitalize it.
For example.
The term "species" is a design space, so it stays lowercase. But any particular species becomes capitalized, such as: Human, Elf, Tiefling, Dwarf.
The term "creature type" is a design space. But a particular type capitalizes: Humanoid, Fey, Plant, Dragon, etcetera.
The term "size" is a design space. But a particular size capitalizes: Small, Medium, Large.
The term "trait": Darkvision, Fey Ancestry, Trance.
The term "class" is a design space. A particular class capitalizes: Ranger, Wizard, Druid, Bard.
The term "background" is a design space. A particular background capitalizes: Artisan, Farmer, Criminal, Guard.
An "ability" is a design space. But any particular ability capitalizes: Strength, Constitution, Dexterity, Intelligence, Wisdom, Charisma.
A "skill" is a design space: Perception, Stealth, Athletics, Arcana.
The term "spell": Fly, Magic Missile, Silent Image.
The term "feat": Healer, Lucky, Magic Initiate.
The term "condition": Grappled, Incapacitated, Slowed
The term "plane": Material, Ethereal, Astral.
Any term that is capitalized in this way, is a construct of mechanical rules, intended as one option among several.