Styling Guide

Design every input, label, error, and success state directly in the Properties Panel. Match your project's look without writing a single line of CSS.

How styling works

Every Form Kit field exposes style sections in the Properties Panel. Each section is a collapsible group of controls — colors, fonts, spacing, borders, and shadows. Just like styling any other Framer layer.

SectionWhat it controls
Input StylesBackground, text color, placeholder color, border, border-radius, padding, font size, height
Label StylesColor, font size, font weight, margin-bottom, letter-spacing
Error StylesText color, font size, border color (applied when an error is active)
Focus StylesBackground, border color, box-shadow (applied when the input is focused)
Success StylesBorder color, text color, icon color (applied when validation passes)

Copy and paste styles

Style one field perfectly, then replicate it across your entire form in seconds:

  1. Select a styled Form Kit field
  2. Press Ctrl + Alt + C to copy its property overrides
  3. Select another Form Kit field (same type or different)
  4. Press Ctrl + Alt + V to paste
This copies all property overrides — input styles, label styles, error styles, validation rules, and more. Works across different field types as long as the property names match.

Input styles

Common input style properties:

PropertyDefaultNotes
backgroundColor#FFFFFFInput background color
textColor#333333Input text when field has a value
placeholderColor#999999Placeholder text and text color when empty
borderColor#E0E0E0Border in default state
borderWidth1In pixels
borderRadius8In pixels
padding12Inner padding in pixels
fontSize14In pixels
height44Input height in pixels

Conditional text color

All text inputs use smart color switching:

  • When the field is empty, text color uses placeholderColor
  • When the field has a value, text color switches to textColor
  • The ::placeholder pseudo-element also uses placeholderColor

This pattern is used by: Text, Email, Phone, URL, Textarea, Password, Number, and Select.

Browser autofill override

Browsers apply their own autofill styles (light blue backgrounds, forced text colors) that can break your design. Form Kit overrides these automatically:

  • -webkit-text-fill-color overrides the browser's forced text color
  • box-shadow: inset covers the browser's autofill background
  • transition: background-color 5000s delays the browser's background change indefinitely
No configuration needed — autofill override is applied automatically based on your inputStyles colors.

Select dropdown styling

The Select component is fully custom (not a native <select>) with additional controls:

  • Arrow color and size — customize the dropdown chevron
  • Dropdown background — separate from the trigger input
  • Option hover color — highlight color on mouse-over
  • Group header styles — font weight and color for option groups
  • Max dropdown height — scroll threshold for long option lists

Selection component styling

Checkbox, Radio, Toggle, and Button Group have unique styling options:

Checkbox / Radio

  • Separate checked/unchecked container styles
  • Custom icon types (check, circle, x, hidden, custom SVG)
  • Icon color and size
  • Container background, border, padding

Toggle / Button Group

  • Track and thumb colors (on/off states)
  • Active/inactive button background and text
  • Gap and layout direction

Related guides