byte[] input = Encoding.UTF8.GetBytes(" zA== ");
Console.WriteLine(Base64Url.DecodeFromUtf8(input, new byte[5])); // writes 1 byte
Console.WriteLine(Base64Url.DecodeFromUtf8(input, new byte[1])); // "Destination is too short."
_ = Base64Url.DecodeFromChars(new string(' ', 8), new byte[1]); // "Destination is too short."
Our logic in the core DecodeFrom workhorse isn't properly accounting for the possibility of skippable whitespace when calculating how much input we can process for a given destination size.