Unfortunately this happens all to often with "shady" claims companies. Lots of people are left in the dark and don't know what to do after an accident. You were not to know but claims companies should always operate on a free basis as they get paid from the solicitor. Charging you is unnecessary and unfair. As for the no win no fee condition from the solicitor, this again does not mean you never pay anything. So basically, unethical and unfair as it is, yes it is legal, and you should always read the small print.
On the upside, you still have a compensation award, even though it is not as much as you had hoped for.