About this set
Rating scales for when stars are the wrong fit. Hearts rates a recipe from one to five hearts with a Clear button and a text label such as Loved it, using the same sibling technique as the star input. Thumbs up or down asks whether a help article was useful with two buttons, Yes and No; the chosen one turns solid, its thumb icon fills in, and a thank-you line appears. Faces with words is a satisfaction scale from Very unhappy to Very happy, with a drawn face and its word for each option; the chosen face takes its own colour, rises slightly and its word turns bold. Net Promoter Score is the standard 0 to 10 likelihood question with eleven numbered tiles, the ends of the scale written out, and the chosen tile coloured by band: red for 0 to 6, amber for 7 and 8, green for 9 and 10. Every scale is a native radio group in a fieldset, so each one works with Tab and the arrow keys and posts a value with a form, and none of them needs JavaScript.
What’s included
- Heart rating with a Clear option
- Yes or No feedback with filled icon on selection
- Five faces with visible text labels
- 0 to 10 NPS scale that wraps to two rows on phones
- Native radio groups, no JavaScript
Accessibility
Each scale is a fieldset with a legend, and every option has a text name: 3 hearts, Yes, Neutral, or 0, not at all likely. Faces and NPS tiles show their words and numbers as visible text, the chosen option is marked by more than colour (a filled icon, a bar, bold text or a ring), and every option shows a 3px focus outline. Transitions and movement stop under prefers-reduced-motion.
Customise it
Change --os-ink, --os-edge and --os-focus on .os, the --on colours on .os-hearts, the --tone and --tint pair on each face, and --band on the NPS tiles. Bootstrap uses .btn-check with .btn and the same variables; in Tailwind edit the os colours in @theme and the peer-checked: colour classes.






