Custom CSS is included in Solo, Pro and Business and sits at the bottom of the Customize panel. Whatever you type into the box is injected as a <style> element into the public form, the embed and the preview, after the theme variables, so it wins over the built-in styling. On the free plan the box is visible but the CSS is not applied to the published form; upgrading enables it without re-publishing.
Start from the variables
The quickest changes override the theme variables on the root element:
.fl-form { --fl-accent: #0ea5e9; --fl-btn-bg: #0ea5e9; --fl-btn-text: #fff; }.fl-form { --fl-page-width: 720px; --fl-font-size: 17px; }.fl-form { --fl-input-border: #cbd5e1; --fl-input-bg: #f8fafc; }
Class reference
Each part of the rendered form carries a stable class you can style:
- .fl-form — root element; .fl-page — the current page
- .fl-title, .fl-title-wrap — form title; .fl-logo, .fl-cover — logo and cover image
- .fl-h — headings; .fl-text — text blocks; .fl-caption — image captions; .fl-divider
- .fl-field — a question group; .fl-question-title, .fl-question-text — question titles; .fl-required — the asterisk; .fl-label — option and field labels
- .fl-btn — Submit, Next and option buttons; .fl-nav — the button row; .fl-back — the Back button; .fl-progress — the progress bar
- .fl-validation-error — inline error text; .fl-continue-anyway — the 'continue' link on soft validation
- .fl-image, .fl-figure, .fl-embed, .fl-embed-video, .fl-embed-audio — media blocks
- .fl-thanks-title, .fl-thanks-icon, .fl-status-icon — thank-you and closed/duplicate pages
Examples
Round, full-width submit button: .fl-form .fl-btn { border-radius: 999px; width: 100%; }Larger question titles: .fl-form .fl-question-title { font-size: 1.25rem; font-weight: 600; }Hide the Back button: .fl-form .fl-back { display: none; }Card look for each question: .fl-form .fl-field { background: #fff; padding: 16px; border-radius: 12px; box-shadow: 0 1px 2px rgba(0,0,0,.06); }
Rules and limits
The CSS is limited to 20,000 characters and is stored with the form document, so it is versioned like everything else. It is scoped by you, not by Qwenvo: always prefix selectors with .fl-form so the Standard embed does not restyle the host page. @import and external fonts work in the public form but are blocked by most embedding sites' content security policies, so prefer fonts from the Customize font list. Custom CSS cannot hide the Made with Qwenvo badge; use the Qwenvo branding setting instead.