CFrame rotation on Y-Axis is bugging out with my code

So Im trying to make a spaceship with orthographic rotation but when I try testing it out, the only functioning axis’s are the X and the Z. Ive tried different rotation methods but always end up with the same issue.

function GameControls:Update(deltaTime)
	UserInputService.MouseIconEnabled = false
	UserInputService.MouseBehavior = Enum.MouseBehavior.LockCenter

	if Ship then
		mouseDelta = UserInputService:GetMouseDelta()

		angVelY += mouseDelta.X * 0.95

		if UserInputService:IsKeyDown("A") then
			angVelZ += 1
		end

		if UserInputService:IsKeyDown("D") then
			angVelZ -= 1
		end

		angVelX += 1

		Ship.PrimaryPart.BGyro.MaxTorque = Vector3.new(1000, 1000, 1000)
		Ship.PrimaryPart.BGyro.CFrame = Ship.PrimaryPart.CFrame * CFrame.fromEulerAnglesYXZ(math.rad(angVelX), math.rad(angVelY), math.rad(angVelZ))

	else
		Ship = Properties.ServerShip.Value

	end
end