There’s not a lot you can do, really. She needs to learn for herself: “Don’t complain about the grades you didn’t get with the work you didn’t do.”
Make it clear that if she messes up (e.g., doesn’t get the A levels required for the university course she wants to do due to not putting the work in) you will not support her and she will need to get a job and / or move out.
Gradually stop doing things for her, e.g., laundry, paying for clothes and toiletries, so she starts to understand that this will all soon become her responsibility and she will need to work for what she wants.
Staying up late at weekends or holidays is up to her, though. If she misses family events or other opportunities due to sleeping in late then tough.
Just try to keep things light and breezy: ‘It’s a shame you missed our day out, So-and so’s visit, the shopping trip, the laundry being being done, the trip to the beach, etc.’ She chooses to stay in bed, she chooses to miss out and have a say in things.