I've got my board rotated and it's not perfectly level either. My process was give it 90 deg to get that right. Or -90 which ever way moves it correctly for you. Then save and check with that flight data tab at the bottom. Then i adjust the pitch a few degrees and the roll a few to get it as perfect as I can. Saving then checking the results by hitting the tab at the bottom. Then, and this is important, once you get it as close to level and pitching and rolling the correct ways then I did a recalibration of level,gyro bias thing. And I could then disconnect and reconnect and it would hold the setting perfectly. If I got it close, and I mean super close by adjusting the virtual attitude and saved but didn't do a recalibration the settings would not stay in the flight controller when you disconnect and reconnect. So get it as perfect to level as you can saving and checking. Then recalibrate and all should hold fine