I would place this logic into a cached property (something named `fill_color`). It would make the code easier to understand.