Why use separate red/green/blue bit depths?
In short, because it more closely matches the way most platforms describe OpenGL-capable pixel formats, which in the past actually mattered. Today, when nearly everyone just asks for 24-bit color and gets it, it matters less. It does, however, make the API slightly more future-proof, as the values specified can be passed nearly unmodified to the window system. This doesn’t, of course, prevent you from presenting the familiar, single value color depths to the user.