Builds a complete button style — solid, outline, ghost or soft variants in three sizes with radius, weight, optional shadow and a hover effect (darken, lighten, lift, glow) — including :hover, :focus-visible ring, :active and :disabled states. Text colour is chosen by WCAG contrast and hover shades are mixed in OKLab. The secondary output is an HTML snippet; the preview shows normal, hover and disabled states on light and dark surfaces. Everything runs locally.