Forced pto for time off?

When I request time off I usually want it unpaid but there’s not an unpaid option in our software so I just request pto, it gets approved, and then in our edit log I wrote unpd time off. Well apparently this isn’t allowed and if don’t have 40 hours we have to use our PTO. It’s to keep people from stocking up on PTO and taking too much time off but that makes sense. If I didn’t use it I would be stocking up still and eventually be able to take 100 hours off but can’t they just deny the pto so why is it a big deal? I like to save mine in case of health emergencies where I actually need it. I can miss one day of my pay period and be fine but if I need a surgery or something I want my pto. Anyway is this illegal or just an annoying policy