Can we calculate AES-CBC-PKCS7 ciphertext length based on the length of the plaintext?
PKCS7 uses mandatory padding. Even if the length of your data is a multiple of your block size, it will pad.

output_size = input_size + (block_size - (input_size % block_size))