@Elizabeth1506 As far as the makeup wipes goes, I would just buy some, or start putting out dark coloured facecloths (charcoal or black would work) when she stays. Some people choose to put them in a container like a basket and specifically label them as makeup removal cloths.
As far as the overall cleanliness, I would mention it to her politely. Dying hair is something that's best left to the professionals or done at home: I think it's very disrespectful to do it in someone else's space, because there's almost always some kind of issue with staining something. This type of wear and tear isn't normal, and I disagree with your husband that you should put up with someone being that disrespectful of your property and causing permanent damage. You don't need to be a door mat just because she's paying you to stay.
Maybe say something like:
"Hello X,
Thanks for booking with us for dates x to x: we look forward to hosting you again!
After your last stay, we did notice some stained towels and sheets, as well as food on our rug and a dye stain in the sink. These issues did cause extra cleaning on our part, and although we're not asking you to pay for our time, we would just ask that you try and avoid spills during your future stays with us. We know you love our space, and we want our place to be perfect for your future stays, so please help us keep it that way!
We do appreciate you choosing our property, and if there is anything we can do for you, please let us know.
Regards,
Elizabeth
If she continues to leave a mess, I would honestly consider calling Airbnb and asking them to relocate her future stays elsewhere.