Hey All,
This forum has been of great use to me over the years, and wasn't able to find evidence of this solution in existing posts, so figured I would share!
When designing a multi-button script in the Scripting extension, I found myself wanting to make buttons with labels of different character length of equal size.
Turns out Braille Pattern Blank (U+2800) is a good enough solution.
// Create the initial buttons
let action = await input.buttonsAsync('',
[{label: '⠀⠀⠀⠀⠀⠀⠀⠀⠀New Business in Existing Storefront⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀', value: 'New Business in Existing Storefront', variant: 'primary'},
{label: '⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀Business Relocated⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀', value: 'Business Relocated', variant: 'primary'},
{label: '⠀⠀⠀⠀⠀⠀⠀Business Expanded To Additional Storefront⠀⠀⠀⠀⠀⠀', value: 'Business Expanded To Additional Storefront', variant: 'primary'}]);
You'll note that I added both value and label parameters to each button, so as to not have to include the spacers in if then statements in other parts of the script, for code readability, as well as to not break my script if I decided to adjust the spacers at any point.
It doesn't always properly lay out (multiple buttons on the first row if the scripting sidebar is fully expanded, but it does make the clickable area of each button both larger and equal to each other, as well as make it look cleaner.
(browser scale reduced and extension sidebar fully expanded)
Anyway, cheers! Hope this is helpful.