What is the precedence of FrameStyle, FrameTicksStyle, and LabelStyle? How to have a LabelStyle different from FrameStyle

As I mentioned in a comment, you can do something like this to have different styles for the frame, ticks, tick marks, plot label, and frame labels.

Plot[2 Sin[x], {x, 0, 10}, Frame -> True, FrameLabel -> {x, y}, 
 PlotLabel -> 2 Sin[x], 
 FrameStyle -> Directive[Green, FontColor -> Orange], 
 FrameTicksStyle -> Directive[Yellow, FontColor -> Black], 
 LabelStyle -> Purple]

Mathematica graphics

To style the text you can use other options as well such as FontSize, FontFamily, FontWeight etc., but the various options seem to inherit from each other, so setting for example FontSize -> 20 in LabelStyle will also set the size of the tick labels so you would need to set the FontSize in FrameTicksStyle to compensate.

Also, setting FontSize in LabelStyle doesn't seem influence the size of the PlotLabel. To change this you can use the BaseStyle option.


"How can I create a plot with a blue frame and red frame labels?"

You could use BaseStyle instead of FrameStyle, however this also colours the x axis.

Plot[2 Sin[x], {x, 0, 10}, Frame -> True, FrameLabel -> {x, y}, 
 PlotLabel -> 2 Sin[x], BaseStyle -> Blue, LabelStyle -> Red]

enter image description here