If you decide on CS, being a female CS applicant will help you, since you’re a strong applicant to begin with. Places like Stanford, CMU, Berkeley don’t the hide the fact they want to attract more female students into CS and engineering. This doesn’t mean that you’ll get into all those places of course, but don’t overlook that. I’m not sure though that would help for some of the LACs you’re applying to.
UCB, UCLA - students with your profile typically get into one but not both, so check with your GC which of them your high school does well with wrt admissions. The 3.7 is a little worrisome, so explain it in the more info section, but don’t complain or place blame. Take ownership and say you learned from it.
UM OOS, USC, Northwestern, Georgetown - I think you have pretty reasonable chances at these schools, NU RD has gotten really selective though.
Also for Georgetown, you’ll need a third subject test, I’d take math 2, chem and maybe the English Lit one, since you seem strong in that area.
The LACs on your list are probably going to be the the toughest for you.
Good luck!