Skip to main content
The widget’s appearance is driven by CSS custom properties. You send Ripio a CSS file with the ones you want to change, it is stored against your account, and the widget applies it at runtime.

How it works

Your file only needs the variables you are overriding — everything you leave out keeps its default. A minimal theme is genuinely small:
Theming is an account-level setting, like the rest of Partner settings. There is no query parameter or runtime API for it — send the file to your Ripio contact.

The stable contract

These variables are the supported white-label surface. They will not be renamed, so a theme built on them keeps working as the widget’s internals change. Overriding --ripio-color-primary alone repaints buttons, links, focus rings, spinners and selected states, because the internal tokens point at it.

Component and scale tokens

Beyond the contract above, the widget exposes the design-system scales and per-component tokens. These are safe to override for finer control, but they belong to the design system and may be renamed as it evolves — prefer the contract above where it is enough.

What not to override

The design-system primitives — --violet-*, --gray-*, --error-*, --warning-*, --success-* — and the transaction status-chip tokens --st-* are internal. They are the raw palette the semantic tokens are built from, they are not part of the contract, and they can change without notice. Override the semantic layer instead: setting --ripio-color-primary propagates everywhere --violet-600 would have.

Legacy variable names

If you already sent Ripio a theme, it keeps working. The older typography and text-colour names are still defined and now resolve to the current scale: Line-height variables follow the same mapping. New themes should use the current names.

Usage

Customize the typography

Import the font from a static host, then set the variable that owns font-family. Example:
  • Font: Montserrat
  • Host: https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap
One variable changes the typeface everywhere: headings, body copy, inputs and buttons all inherit from it.

Customize Buttons

Only variables starting with --ripio-btn modify the buttons. Primary Button
Secondary Button
Tertiary Button