Rigged non-human mesh animating sideways even AFTER rotation correction in Blender
Me and my friend have been struggling with this issue for weeks and aren't sure where what to do. I've created a model of a refrigerator in Blender. It's comprised of a number of components (main fridge body, a door, shelves, and some drawers), and each of these components have their own rigid bodies and box colliders. The idea is to have a fridge that has drawers inside (connected eventually with configurable joints to the fridge body) that can knock and flop around inside of the fridge body while it's animating and moving, and shelves that can 'break away' from the fridge when they're hit with X force (the shelves would be connected to the fridge body with joints as well). This might seem like extraneous information but please, bear with me.
The entire model has an armature that consists of one single bone for animation purposes. The "walk" animation, consists of the fridge rocking back and forth to the left and right, and moving around based on inputs by the player. We simply want the fridge to rock as the player moves it around, but the issue is that no matter what I do with the rotation in Blender, the fridge will not animate on the proper axis.
Now I know about Unity using Y as the vertical axis, and Blender using Z as the vertical axis. Whenever I create a model in blender I MAKE SURE to ROATE it and APPLY THE ROTATION before exporting it to Unity. I've done this literally dozens of times, and it works perfectly for any props that are unrigged. But whenever I animate the fridge, rotate it and apply rotation in blender, then bring it into unity (and remove the stupid 90 degree rotation Unity applies to .blends that have been dragged and dropped into the program), it still animates the fridge in the wrong direction.
This is the process I performed in blender.
Create the model with Z as vertical in blender.
Create a single bone, and parent every part of the fridge to the bone (Z is still vertical here).
Animate the fridge with Z as vertical in blender. I animate it so that the fridge rocks onto it's left and right corners. It is rocking around the Y axis.
I then select everything, rotate it -90 degrees in blender, then APPLY that rotation.
The fridge .blend is then saved and dropped into unity.
I drop the fridge into the scene. Because unity sees that it's a .blend, it STILL applies a 90 degree rotation to the fridge (in this case, the armature, since everything parented to the armature) and it enters the scene sideways. I remove this rotation, and the fridge stands upright like it should, with rotation values of the armature reading X=0 Y=0 Z=-90.
When the animation is played, the fridge snaps onto it's back, and rotates around the Y axis back and forth.
My initial thought when this happened was "Oh. I need rotate everything in blender -90 degrees, apply rotation, create an armature, rotate THAT -90 degrees, apply rotation to THAT, THEN parent everything to the bone and animate it with it rotating across the 'Z' axis in blender. That should make unity happy, right? Wrong. It still does exactly what was listed above.
So I said screw it, undid all rotational stuff in blender, reanimated it with Z being vertical in blender, and just sent it into unity, know that it would import with a rotation un unity, but not worry about it. I didn't change the 90 degree rotation unity applied to it, and just played the animation, and it played just fine! But THEN the issue was that all the colliders we had applied to the fridge were rotating 90 degrees away from the mesh, as if it was laying on the ground.
WHY is it doing this? How do I stop it from doing this? I've tried so many different things, I'm losing my mind. I've reanimated the fridge like 10 times in different orientations. I've tried animating it by selecting the bone and rotating the fridge (like I should be), and I've also tried by just hit ctrl-a, selecting everything, and rotating it. I've making the movements in pose mode and object mode in blender. I've tried just parenting the bone to the fridge body, and animating it that way, but that doesn't work either. No matter what I do, either the fridge animates sideways in unity, or the box colliders animate sideways. I even tried messing with the 'bone roll values' in blender to get rid of the Z=-90 on the armature in unity, but it doesn't seem to do anything. I'm so frustrated with this entire process right now.
If anyone could help I would be so, so grateful. I would even be willing to send the file to someone to take a look at it if they'd like to.