Semi permanent color stains the outside of the cuticle. Demi Permanent color is suppose to both stain the cuticle as well as deposit color on the inside of the strand. Permanent color removes the natural pigment and then deposits small color molecules that expand inside the shaft so they do not wash out easily.
The hair nearest the scalp is not fully keratinized and coupled with body heat can create lift slightly with Demi permanents. You can usually get 1 level of lift with a clear demi. Demi permanent is technically not suppose to lift. So you can go the same color to refresh faded permanent/bleached and toned color or darken the hair such as grays.
Some semi permanent color stains the hair almost permanently. Most people use a series of clarifying shampoos to remove the color. I heard others try vitamin c washes. When those fail, I see people pull out the big guns. Some do a soap cap/bleach wash. Then others resort to bleaching or putting in highlight to diffuse the stained color.
Chelating and clarifying shampoos and treatments are your safest options. This may take some time. If you can’t wait, you can consider leaving the shampoo on your hair and processing it with heat for an extended amount of time. This will make your hair dry.
I personally think you should go to a professional colorist and see what they suggest. They may tell you what needs to be done before they even attempt to fix it. I’ve known several people in my life with extremely bright colors who’ve gone through months of crappy faded hair to get it faded and healthy enough to get their desired colors. From personal experience I know DIY fixes can make matters on so much worse. Clarifying and chelating treatments are probably your best bet for at home. I really don’t know anything else that won’t compromise the integrity of your.