That's rarely done in practice. Even Tailwind's own site hardcodes colors.
We do exactly that. And if you're not thinking semantically with Tailwind, you probably aren't thinking semantically with css / sass variables anyway, as it's the exact same thing.