I don't think there are any functional or performance differences between these forms:
[ -n "$var" ] || var=X
[ -z "$var" ] && var=X
if [ ! "$var" ]; then var=X; fi
It's a question of [your] style and taste, I think.There are a lot more ANSI sequences that I could work into that block, but it is quite thorough for the space it occupies.
Btw, The color script is cool. This makes ANSI sensible.