Hi E.,
First, let me say that your description of what you are presently doing sounds very balanced. You are providing healthy options which she likes, and making good boundaries as to 'how' the meals will go.
When my son was younger--super picky in regard to texture. He still goes through temporary phases of "I don't want that--I want this", etc., but this is usually treated with "Well, I know you don't want the grapes this time, you want the apples. I don't have apples for you right now, but let's write a note :'Kiddo wants apples tomorrow'." and follow through that way.
It does get better, and it fluctuates. Some kids will struggle with this for a while, as they try to figure it out themselves as well. I can tell you, personally,what didn't work for *me*. As a mom, making separate meals didn't work, but at dinnertime, when the meal might be later than what my son's little stomach can handle, I offer a healthy snack at the table: apple slices, almonds, cheese, frozen peas (he loves them like this)--anything that he will eat that I won't be concerned will "spoil his appetite", because they are healthy foods, and who cares if he has more of that than the salmon, roasted potatoes and chard, if you know what I mean.
What didn't work for me as a child, and so I never do it with my own son, is forcing the issue. I was forced to eat a few foods I had strong (but, as a child, unexplainable) aversions to, and it has literally ruined these foods for me as an adult. Because I perceive my child's body to be his, the only time I'd ever force him to eat/take something would be for medical necessity, and we have no "one bite" rules in our house. I just try to model good eating habits, include him in meal prep whenever possible, and keep offering new things in a friendly way. Last night, he did try the chard on his own, and promptly spat it out. We didn't force it--just offered him a napkin to put it in and encouraged him to keep enjoying the rest of the meal, which he did.
Lastly, and I think everything above points to this, I really avoid making food into a struggle of wills, because this is a lose/lose situation. I try to be strategic with snacks--if my son is in the stroller, maybe I'll pack red pepper slices and carrots because I know he likes them and there's no way that fruit can compete if we aren't at home. That would be my last piece of advice--look for opportunities. Kids are often more amenable to eating their less-favorite (but still tolerated) foods when there aren't other choices around. (and "carrots or red pepper'"can be a choice.) I don't make dessert contingent upon finishing meals; if he's asking for a little treat, I usually serve it around 3:30, after his afternoon snack (small serving, too, and not every day.). Taking the dessert aspect out of dinnertime helps kids be able to eat until they are full, because they aren't trying to 'save room', and have already had their treat.
Keep it up. As a nanny, I've seen plenty of kids who would ONLY eat yogurt at three y.o. grow into kids who have a pretty healthy attitude about food, as long as their parents also model this and set good guidelines at home. Many of the tips I have given you I've gleaned from working with mothers and families who had much healthier approaches to eating than my own parents did. I'm still trying to get around some of my food aversions and retrain my brain, so let your little girl progress at her own pace, keep offering friendly, healthy mealtimes and relax. It does get better!