First of all, your calculation is wrong. Assuming you are talking about the traditional payments using compressed key bitcoin addresses that start with a 1 (P2PKH outputs), then the inputs are 148 bytes each (plus or minus 1 byte), not 146 bytes.
There is a 1 byte variability in the exact size of the input due to variablity in the size of the ECDSA signature.
Thanks but I do not quite understand what you mean by "a different type of output". How can an output be different than
another output? Can you please explain?
The original outputs were pay-to-public-key (P2PK) outputs. They did not use bitcoin addresses, and they did not hash the public key. The recipient needed to supply their entire ECDSA public key, and the sender needed to build the transaction appropriately.
Eventually the concept of hashing the public key and encoding the output type as an "address" was introduced. Those are pay-to-public-key-hash (P2PKH) outputs. They are the traditional address starting with a 1 that you are accustomed to. Initially, these addresses were generated using an uncompressed public key. As such, the input that is generated when spending these outputs are 32 bytes larger (180 bytes).
Then someone realized that only half of the public key was actually needed. The address format remains the same, but the spender can reduce the size of their inputs by 32 bytes to only 148 bytes since they can supply the compressed public key. Those are ALSO pay-to-public-key-hash (P2PKH) outputs, and result in an address starting with a 1. There is no way to know when looking at an output whether it is a compressed key or uncompressed key unless you have access to the public key itself.
Eventually the concept of hashing the output script was introduced. This allowed any script to be represented as an address (addresses starting with a 3). These are called pay-to-script-hash (P2SH) outputs. They are often used for multi-sig, but can also be used for any valid script. The size of the input when spending these outputs depends entirely on the structure of the script that was hashed to generate the address.
While it is less common, it is also possible to simply use a non-standard script in the output. In that case, the size of the output (and the size of the input that spends it) would depend on the contents of that script.
The 180 byte uncompressed key input, 148 compressed key input, and 34 byte output values all assume that you are talking about P2PKH outputs (the outputs that result in a bitcoin address that starts with a 1). That's what the vast majority of users are talking about when they ask about transaction sizes.