Keyboard Maestro provides the Prompt For User Input action which allows you to enter a fair amount of information in a variety of ways, including text, password fields, popup menus and checkboxes. But it has very limited styling options and is limited to the size it can practically be used for since it does not scroll.
If you want more control you can create an HTML file with an HTML form in it containing any of the desired data and styled using CSS in any way you desire, and then when the data is completed, trigger a macro to read the form data and perform whatever tasks required. For example, with an HTML file containing a form like this:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <title>Form</title> </head> <body> <form> <p> Name: <input type="text" id="Name" placeholder="Your Name"> </p> <p> Age: <input type="text" id="Age" placeholder="Your Age"> </p> <p> Sex: <select id="Sex"> <option value="Male">Male</option> <option value="Female">Female</option> </select> </p> </form> </body> </html>
which displays a simple form like this:
you can read the form with a macro like this: