If you build UI with Cursor or Claude Code, you've probably had this happen. You ask for a settings page, it looks fine at first glance, and then you start noticing things. The save button is bg-blue-500 , but your brand color is teal. One card has 18px of padding while every other card has 16. A grey shows up that isn't in any file you wrote.
None of this is the model being sloppy. It has no idea what your design rules are, so it falls back on whatever is most common in the code it learned from. You can correct it in chat, but that correction only lives as long as the conversation does.
What actually fixes it is boring: put your design values in code, give the agent a short rules file it reads every time, and check the output with two searches. Here's the whole setup.
The short version
Tokens in tokens.css or your Tailwind @theme .…