We know that bitcoin is not a coin, we just named it as a coin. instead bitcoin is a digital public ledger which is not edited or manipulated by anyone.
so why it has a smallest unit of 1 satoshi, why not less than 1 satoshi like this "0.0000000000001 BTC"? if it's a ledger then why it has a limit?
we can write anything we want in a paper ledger then why in bitcoin's case it's different?
In addition to what o_e_l_e_o said, also note that there are limitations regarding how computers store large numbers.
Bitcoin amounts for example are stored as int64, which can store numbers "only" as large as 9,223,372,036,854,775,807 (i.e. 2^63, with one of the 64 bits signifying whether the number is positive or negative). Taking your example of "0.0000000000001 BTC" and defining a Bitcoin as 10,000,000,000,000 a transaction of 1,000,000 BTC would be too large a number too handle and break the network (or more realistically probably just yield an invalid transaction). So while there would be room for more digits, there are fundamental limitations based on how a computer operates.