Is the acid working as an oxidizer or reducer with the melanin of the hair breaking down the bonds?
Hair is mainly keratin, the same protein found in skin and fingernails. The natural color of hair depends on the ratio and quantities of two other proteins, eumelanin, and phaeomelanin. Eumelanin is responsible for brown to black hair shades while phaeomelanin is responsible for golden blond, ginger, and red colors. The absence of either type of melanin produces white/gray hair.
I think the citric acid (in lemon) acts as a bleaching agent. The "bleach" reacts with the melanin in hair, removing the colour in an irreversible chemical reaction. The bleach oxidises the melanin molecule.
The illustration of the molecules perhaps might give a better picture on which groups are oxidised in the process.
The melanin is still present, but the oxidised molecule is colourless. However, bleached hair tends to have a pale yellow tint. It behaves as an oxidising agent at least according to my findings.