Lesli colors

The Lesli identity is built around a primary blue inspired by Ruby Blue, supported by neutral mineral tones, restrained semantic colors, and a set of collection colors that extend the system without breaking consistency.

Lesli brand colors

Lesli Light
Lesli Primary
Lesli Dark
50
100
200
300
400
500
600
700
800
900



Collection colors

Ruby
Ember
Maize
Agave
Jade
Cenote
Quetzal
Bugambilia
Cacao
Obsidian



Notification colors

Information
Success
Warning
Danger



Semantic colors

Neutral
50
100
200
300
400
500
600
700
800
900
Info
50
100
200
300
400
500
600
700
800
900
Success
50
100
200
300
400
500
600
700
800
900
Warning
50
100
200
300
400
500
600
700
800
900
Danger
50
100
200
300
400
500
600
700
800
900
Black
50
100
200
300
400
500
600
700
800
900

Collections

Ruby
100
300
500
700
900
Ember
100
300
500
700
900
Maize
100
300
500
700
900
Agave
100
300
500
700
900
Ember
100
300
500
700
900
Cenote
100
300
500
700
900
Quetzal
100
300
500
700
900
Bugambilia
100
300
500
700
900
Cacao
100
300
500
700
900
Obsidian
100
300
500
700
900

Primary brand color

light
primary
dark


Token Hex Lesli Variable
Light #E3EEF6 lesli-color(lesli, light) --lesli-color-lesli-light
Primary #245F93 lesli-color(lesli, primary) --lesli-color-lesli-primary
Dark #123553 lesli-color(lesli, dark) --lesli-color-lesli-dark

This is the core visual color of Lesli. It should represent the platform globally and remain the main interactive brand color across the product.

Primary scale

50
100
200
300
400
500
600
700
800
900
Token Hex Lesli Variable
Primary 50 #F2F7FB lesli-color(primary, 50) --lesli-color-primary-50
Primary 100 #E3EEF6 lesli-color(primary, 100) --lesli-color-primary-100
Primary 200 #BDD5E8 lesli-color(primary, 200) --lesli-color-primary-200
Primary 300 #8DAEC9 lesli-color(primary, 300) --lesli-color-primary-300
Primary 400 #4F83AE lesli-color(primary, 400) --lesli-color-primary-400
Primary 500 #245F93 lesli-color(primary, 500) --lesli-color-primary-500
Primary 600 #1F527F lesli-color(primary, 600) --lesli-color-primary-600
Primary 700 #1A466C lesli-color(primary, 700) --lesli-color-primary-700
Primary 800 #153A59 lesli-color(primary, 800) --lesli-color-primary-800
Primary 900 #123553 lesli-color(primary, 900) --lesli-color-primary-900

Recommended use

Accessibility guidance


Semantic colors

Semantic colors follow the same visual philosophy as the Lesli primary blue: restrained, mineral, and product-oriented.

Neutral palette

50
100
200
300
400
500
600
700
800
900

The neutral system supports the interface and should feel lightly mineral and subtly blue-gray rather than generic grayscale.

Token Hex Lesli Variable
Neutral 50 #F8FAFC lesli-color(neutral, 50) --lesli-color-neutral-50
Neutral 100 #F1F4F8 lesli-color(neutral, 100) --lesli-color-neutral-100
Neutral 200 #E5EAF0 lesli-color(neutral, 200) --lesli-color-neutral-200
Neutral 300 #C7D0DA lesli-color(neutral, 300) --lesli-color-neutral-300
Neutral 400 #8F9BAA lesli-color(neutral, 400) --lesli-color-neutral-400
Neutral 500 #667383 lesli-color(neutral, 500) --lesli-color-neutral-500
Neutral 600 #4B5663 lesli-color(neutral, 600) --lesli-color-neutral-600
Neutral 700 #34404C lesli-color(neutral, 700) --lesli-color-neutral-700
Neutral 800 #28323D lesli-color(neutral, 800) --lesli-color-neutral-800
Neutral 900 #1F2933 lesli-color(neutral, 900) --lesli-color-neutral-900

Recommended use

Text hierarchy


Info palette

Typical uses include informational alerts, help panels, onboarding hints, documentation callouts, and non-critical status indicators.

50
100
200
300
400
500
600
700
800
900

The info palette communicates neutral guidance, system messages, and contextual information without implying success, warning, or failure.

Token Hex Lesli Variable
Info 50 #F2F7FB lesli-color(info, 50) --lesli-color-info-50
Info 100 #E3EEF6 lesli-color(info, 100) --lesli-color-info-100
Info 200 #BDD5E8 lesli-color(info, 200) --lesli-color-info-200
Info 300 #8DAEC9 lesli-color(info, 300) --lesli-color-info-300
Info 400 #4F83AE lesli-color(info, 400) --lesli-color-info-400
Info 500 #245F93 lesli-color(info, 500) --lesli-color-info-500
Info 600 #1F527F lesli-color(info, 600) --lesli-color-info-600
Info 700 #1A466C lesli-color(info, 700) --lesli-color-info-700
Info 800 #153A59 lesli-color(info, 800) --lesli-color-info-800
Info 900 #123553 lesli-color(info, 900) --lesli-color-info-900

Usage guidelines

Use the info palette for neutral messages, contextual guidance, helper content, and informative UI states.

Success palette

The success palette signals confirmation, positive outcomes, and completed actions with a calm and trustworthy green range.

50
100
200
300
400
500
600
700
800
900

Typical uses include success alerts, completed states, confirmation messages, approved statuses, and positive validation feedback.

Token Hex Lesli Variable
Success 50 #F1FAF7 lesli-color(success, 50) --lesli-color-success-50
Success 100 #DDF2EA lesli-color(success, 100) --lesli-color-success-100
Success 200 #B8E2D2 lesli-color(success, 200) --lesli-color-success-200
Success 300 #8DD0B8 lesli-color(success, 300) --lesli-color-success-300
Success 400 #399C77 lesli-color(success, 400) --lesli-color-success-400
Success 500 #267E60 lesli-color(success, 500) --lesli-color-success-500
Success 600 #1F694F lesli-color(success, 600) --lesli-color-success-600
Success 700 #19543F lesli-color(success, 700) --lesli-color-success-700
Success 800 #154836 lesli-color(success, 800) --lesli-color-success-800
Success 900 #123F30 lesli-color(success, 900) --lesli-color-success-900

Usage guidelines

Use the success palette to confirm completed actions, positive outcomes, valid states, and healthy system feedback.

Warning palette

Typical uses include warning alerts, incomplete forms, pending verifications, temporary issues, and states that require user review.

50
100
200
300
400
500
600
700
800
900

The warning palette highlights caution, pending issues, and states that need attention without escalating to error severity.

Token Hex Lesli Variable
Warning 50 #FFF9ED lesli-color(warning, 50) --lesli-color-warning-50
Warning 100 #FFF1D6 lesli-color(warning, 100) --lesli-color-warning-100
Warning 200 #FDE2A8 lesli-color(warning, 200) --lesli-color-warning-200
Warning 300 #F8CF74 lesli-color(warning, 300) --lesli-color-warning-300
Warning 400 #D29A2E lesli-color(warning, 400) --lesli-color-warning-400
Warning 500 #B67D1F lesli-color(warning, 500) --lesli-color-warning-500
Warning 600 #95651B lesli-color(warning, 600) --lesli-color-warning-600
Warning 700 #775117 lesli-color(warning, 700) --lesli-color-warning-700
Warning 800 #684614 lesli-color(warning, 800) --lesli-color-warning-800
Warning 900 #5B3D12 lesli-color(warning, 900) --lesli-color-warning-900

Usage guidelines

Use the warning palette for cautionary states, pending risks, incomplete flows, and situations that need attention but are not critical failures.

Danger palette

Typical uses include error alerts, failed validations, destructive actions, blocked flows, and critical system states.

50
100
200
300
400
500
600
700
800
900

The danger palette is reserved for destructive actions, critical errors, and states that require immediate attention.

Token Hex Lesli Variable
Danger 50 #FFF3F1 lesli-color(danger, 50) --lesli-color-danger-50
Danger 100 #FFE3DE lesli-color(danger, 100) --lesli-color-danger-100
Danger 200 #F8C1B8 lesli-color(danger, 200) --lesli-color-danger-200
Danger 300 #EE9A8E lesli-color(danger, 300) --lesli-color-danger-300
Danger 400 #C94E3C lesli-color(danger, 400) --lesli-color-danger-400
Danger 500 #A93B2D lesli-color(danger, 500) --lesli-color-danger-500
Danger 600 #8B3126 lesli-color(danger, 600) --lesli-color-danger-600
Danger 700 #6F281F lesli-color(danger, 700) --lesli-color-danger-700
Danger 800 #60231B lesli-color(danger, 800) --lesli-color-danger-800
Danger 900 #541E18 lesli-color(danger, 900) --lesli-color-danger-900

Usage guidelines

Use the danger palette for destructive actions, critical problems, failed operations, and states that require immediate attention.

Collections palette

Collections give color identity to product areas, modules, or content groups without replacing the global primary color.

Collection color usage rules

Ruby palette

100
300
500
700
900
Token Hex Lesli Variable
Ruby 100 #F6E5E5 lesli-color(ruby, 100) --lesli-color-ruby-100
Ruby 300 #D89C9C lesli-color(ruby, 300) --lesli-color-ruby-300
Ruby 500 #B23A3A lesli-color(ruby, 500) --lesli-color-ruby-500
Ruby 700 #8E2E2E lesli-color(ruby, 700) --lesli-color-ruby-700
Ruby 900 #5C1E1E lesli-color(ruby, 900) --lesli-color-ruby-900

Ember palette

100
300
500
700
900
Token Hex Lesli Variable
Ember 100 #E2F1EC lesli-color(jade, 100) --lesli-color-jade-100
Ember 300 #91BBB1 lesli-color(jade, 300) --lesli-color-jade-300
Ember 500 #2D7A68 lesli-color(jade, 500) --lesli-color-jade-500
Ember 700 #256656 lesli-color(jade, 700) --lesli-color-jade-700
Ember 900 #143F33 lesli-color(jade, 900) --lesli-color-jade-900

Maize palette

100
300
500
700
900
Token Hex Lesli Variable
Maize 100 #FBF2DF lesli-color(maize, 100) --lesli-color-maize-100
Maize 300 #DAC18F lesli-color(maize, 300) --lesli-color-maize-300
Maize 500 #B2852D lesli-color(maize, 500) --lesli-color-maize-500
Maize 700 #946E25 lesli-color(maize, 700) --lesli-color-maize-700
Maize 900 #594016 lesli-color(maize, 900) --lesli-color-maize-900

Agave palette

100
300
500
700
900
Token Hex Lesli Variable
Agave 100 #ECF2E7 lesli-color(agave, 100) --lesli-color-agave-100
Agave 300 #ACBDA2 lesli-color(agave, 300) --lesli-color-agave-300
Agave 500 #5D7C4D lesli-color(agave, 500) --lesli-color-agave-500
Agave 700 #4F6942 lesli-color(agave, 700) --lesli-color-agave-700
Agave 900 #34442C lesli-color(agave, 900) --lesli-color-agave-900

Jade palette

100
300
500
700
900
Token Hex Lesli Variable
Jade 100 #E2F1EC lesli-color(jade, 100) --lesli-color-jade-100
Jade 300 #91BBB1 lesli-color(jade, 300) --lesli-color-jade-300
Jade 500 #2D7A68 lesli-color(jade, 500) --lesli-color-jade-500
Jade 700 #256656 lesli-color(jade, 700) --lesli-color-jade-700
Jade 900 #143F33 lesli-color(jade, 900) --lesli-color-jade-900

Cenote palette

100
300
500
700
900
Token Hex Lesli Variable
Cenote 100 #E3F0F3 lesli-color(cenote, 100) --lesli-color-cenote-100
Cenote 300 #8FB8C4 lesli-color(cenote, 300) --lesli-color-cenote-300
Cenote 500 #1F6F8B lesli-color(cenote, 500) --lesli-color-cenote-500
Cenote 700 #195D74 lesli-color(cenote, 700) --lesli-color-cenote-700
Cenote 900 #103B4A lesli-color(cenote, 900) --lesli-color-cenote-900

Quetzal palette

100
300
500
700
900
Token Hex Lesli Variable
Quetzal 100 #E8EBF6 lesli-color(quetzal, 100) --lesli-color-quetzal-100
Quetzal 300 #A1AED8 lesli-color(quetzal, 300) --lesli-color-quetzal-300
Quetzal 500 #4B5FA8 lesli-color(quetzal, 500) --lesli-color-quetzal-500
Quetzal 700 #3E4F8C lesli-color(quetzal, 700) --lesli-color-quetzal-700
Quetzal 900 #283259 lesli-color(quetzal, 900) --lesli-color-quetzal-900

Bugambilia palette

100
300
500
700
900
Token Hex Lesli Variable
Bugambilia 100 #F5E6EE lesli-color(bugambilia, 100) --lesli-color-bugambilia-100
Bugambilia 300 #D49AB5 lesli-color(bugambilia, 300) --lesli-color-bugambilia-300
Bugambilia 500 #A83E6F lesli-color(bugambilia, 500) --lesli-color-bugambilia-500
Bugambilia 700 #8A345C lesli-color(bugambilia, 700) --lesli-color-bugambilia-700
Bugambilia 900 #58213B lesli-color(bugambilia, 900) --lesli-color-bugambilia-900

Cacao palette

100
300
500
700
900
Token Hex Lesli Variable
Cacao 100 #EFE8E3 lesli-color(cacao, 100) --lesli-color-cacao-100
Cacao 300 #B9A394 lesli-color(cacao, 300) --lesli-color-cacao-300
Cacao 500 #6B4A35 lesli-color(cacao, 500) --lesli-color-cacao-500
Cacao 700 #593E2C lesli-color(cacao, 700) --lesli-color-cacao-700
Cacao 900 #38271C lesli-color(cacao, 900) --lesli-color-cacao-900

Obsidian palette

100
300
500
700
900
Token Hex Lesli Variable
Obsidian 100 #EAEEF2 lesli-color(obsidian, 100) --lesli-color-obsidian-100
Obsidian 300 #ABB4BD lesli-color(obsidian, 300) --lesli-color-obsidian-300
Obsidian 500 #5F6C7D lesli-color(obsidian, 500) --lesli-color-obsidian-500
Obsidian 700 #505B69 lesli-color(obsidian, 700) --lesli-color-obsidian-700
Obsidian 900 #313942 lesli-color(obsidian, 900) --lesli-color-obsidian-900

Color customization

Inside our initialization file, you'll find a dedicated section for customizing the color scheme. Simply edit the color values for various elements such as the primary color, sidebar, header, footer, background, and hover effects.

See the example below

Lesli.configure do |config|

    # Main color palette for Lesli
    config.theme = {
        color_primary: "#193d8d",
        color_sidebar: "#ffffff",
        color_header: "transparent",
        color_footer: "transparent",
        color_background: "#eef2f6",
        color_sidebar_hover: "#dee7ec"
    }
end


This is going to modify the corresponding SASS variables in the Lesli core:

$primary (bulma) -> color_primary 
$lesli-color-primary -> color_primary 
$lesli-header-color -> color_header 
$lesli-footer-color -> color_footer 
$lesli-sidebar-color -> color_sidebar 
$lesli-sidebar-hover -> color_sidebar_hover 
$lesli-color-background -> color_background 

Lesli provide the same color palette as CSS variables:

:root {
    --lesli-color-primary: var(--lesli-theme-color-primary, #{$lesli-color-primary});    
    --lesli-header-color: var(--lesli-theme-header-color, #{$lesli-header-color});
    --lesli-navbar-color: var(--lesli-theme-header-color, #{$lesli-navbar-color});    
    --lesli-footer-color: var(--lesli-theme-footer-color, #{$lesli-footer-color});
    --lesli-sidebar-color: var(--lesli-theme-sidebar-color, #{$lesli-sidebar-color});
    --lesli-logo-color: var(--lesli-theme-logo-color, #{$lesli-logo-color});
    --lesli-font-color: var(--lesli-theme-font-color, #{$lesli-font-color});
}

You can modify the CSS variables at runtime, so your users can modify the theme.

Bulma customization

You can customize bulma changing the value of the variables, see: https://bulma.io/documentation/customize/variables/

 Edit this page

Last Update: 2026/04/25

cat docs

Work in progress...

Take me home