appearance.size is a meta-preset that reshapes every element’s chrome and layout density in a single knob.
What the preset controls
buttonHeight follows the resolved inputHeight by default, so submit buttons scale with the preset automatically.
Border width, line height, and label font size stay constant across presets. Override them individually via variables when needed.
Preset with token overrides
Presets and tokens compose: presets pre-seed defaults; explicit tokens win.Per-element override
An element-levelappearance.size replaces the instance-level size on that element only:
update({ appearance: { size: 'large' } }) resizes the element without remount.
Preset defaults, not a cap
Explicit tokens always win over the preset’s implicit defaults. The preset is a shortcut, not a lock-in. Reach for the preset when you want every input on the page to scale together; reach forvariables when you want to tune a single dimension.