Bulma is a highly customizable CSS framework. From colors to typography, spacing and sizes, forms and layouts, all parts of Bulma can be customized by the user.
Bulma’s styles and variables are defined at several levels:
Global Sass variables
Component Sass variables
Global CSS variables
Component CSS variables
Helper classes
All Bulma components are styled using Sass variables and CSS Variables (which are also called CSS custom properties). Read more about them:
Bulma uses global CSS variables defined at the :root level. They are all prefixed with bulma-:
:root{/* Colors and Lightness values */--bulma-scheme-h:221;--bulma-scheme-s:14%;--bulma-light-l:90%;--bulma-light-invert-l:20%;--bulma-dark-l:20%;--bulma-dark-invert-l:90%;--bulma-soft-l:90%;--bulma-bold-l:20%;--bulma-soft-invert-l:20%;--bulma-bold-invert-l:90%;/* etc. *//* Color Palettes */--bulma-primary:hsla(var(--bulma-primary-h),var(--bulma-primary-s),var(--bulma-primary-l),1);--bulma-primary-base:hsla(var(--bulma-primary-h),var(--bulma-primary-s),var(--bulma-primary-l),1);--bulma-primary-rgb:0,209,178;--bulma-primary-h:171deg;--bulma-primary-s:100%;--bulma-primary-l:41%;--bulma-primary-00-l:1%;--bulma-primary-05-l:6%;--bulma-primary-10-l:11%;--bulma-primary-15-l:16%;--bulma-primary-20-l:21%;/* etc. *//* Typography */--bulma-family-primary:Inter,SFPro,SegoeUI,Roboto,Oxygen,Ubuntu,HelveticaNeue,Helvetica,Arial,sans-serif;--bulma-family-secondary:Inter,SFPro,SegoeUI,Roboto,Oxygen,Ubuntu,HelveticaNeue,Helvetica,Arial,sans-serif;--bulma-family-code:Inconsolata,Hack,SFMono,RobotoMono,SourceCodePro,UbuntuMono,monospace;--bulma-size-small:0.75rem;--bulma-size-normal:1rem;--bulma-size-medium:1.25rem;--bulma-size-large:1.5rem;/* etc. */}
You can overwrite them simply by setting a new value at the same scope (or even a more specific one):
:root{/* Set new values */--bulma-scheme-h:35;--bulma-scheme-s:20%;}