I believe that the confusion is due to the fact that (a) cterm=NONE;
(b) cterm=bold; (c) other values interact in three different ways
(when they do at all) with bg/fg color settings.
IIUC you can use cterm=NONE _before_ ctermbg= ctermfg= in order to
clear anything that may be present before (such as bold) but not your
own colours. It *may* be possible to add cterm=bold after a ctermfg=
color in the range 0..7; OTOH ctermfg= in the range 8..16 (on an
8-or-16-bg 16-fg terminal) usually _implies_ bold. Using both
cterm=underline and ctermfg= ctermbg= will usually not work as
expected. OTOH AFAIK ctermbg= and ctermfg= can usually be used
together provided that you don't exceed the terminal's capabilities.
Best regards,
Tony.