Since nobody has responded to your post yet I decided that I'd try to help. When I read your post I immediately looked around the Gnome application directories. I found /opt/gnome/share/themes. Then I selected one of the available themes to explore. In this case I selected the Industrial theme. I found that there were three subdirectories and a text file named index.theme. I read the index.theme. It didn't look too helpful. I looked in the subdirectory named gtk. I found a text file there named gtkrc. I read that. I found that it defined specific colors for the environment variables such as the background color, text color, etc. Here is some of the code from that file.
Code:
bg[NORMAL] = "#f6f6f6"
bg[PRELIGHT] = "#ffffff"
fg[PRELIGHT] = "#202020"
bg[ACTIVE] = "#d9d9d9"
bg[INSENSITIVE] = "#d9d9d9"
bg[SELECTED] = "#99a6bf"
base[SELECTED] = "#6484a4"
text[SELECTED] = "#ffffff"
#this is selected item without focus:
base[ACTIVE] = "#b6c9cf"
text[INSENSITIVE] = "#ffffff"
I don't know exactly how it all works but it seems pretty straightforward. If I wanted to change some of the characteristics of the Gnome Industrial theme I would make a backup copy of the file /opt/gnome/share/themes/Industrial/gtk/gtkrc and then I would monkey around with the settings.
If it's any help I'm 99% sure that the numbers that define the colors are pairs of hex numbers. Each pair is one of the colors that make up the CRT color palette. These are red, green, and blue. So a value of #00ff00 would be zero red, maximum green, and zero blue. At least this is the way that colors have been defined in computer hardware/software interfaces for over twenty years. Black is represented by zero for red, green, and blue as in #000000 and white is represented by maximum for red, green, and blue as in #ffffff. All other colors that can be displayed are just variations of these color values.
Good luck. :-)