Tailwind Defaults First
MUST: Use Tailwind CSS defaults unless custom values already exist or are explicitly requested. Arbitrary values (w-[347px]) indicate design system gaps.
Use Tailwind CSS default spacing, colors, and sizing scales unless a custom design token exists
Bad
Good
Why it matters
The two escapes are the interesting part: a custom value is allowed when the project ALREADY has one (you are following an existing token, not inventing one) or when it was explicitly asked for. Everything else takes the default scale. The failure this prevents is the arbitrary-value drift — p-[13px] here, text-[15px] there, gap-[7px] somewhere else — where every value is individually defensible and the set has no rhythm at all.
It is also the single most common tell of generated UI, because a model has no reason to make independently-emitted numbers agree.