10 colour roles
Every colour has a defined purpose. Use the buttons on the right to copy it in any format.
theme#e0551argb(224, 85, 26)hsl(17.9, 79.2%, 49%)btn#e0551argb(224, 85, 26)hsl(17.9, 79.2%, 49%)btnDisabled#fbc9b0rgb(251, 201, 176)hsl(20, 90.4%, 83.7%)bg#f7f8fargb(247, 248, 250)hsl(220, 23.1%, 97.5%)card#ffffffrgb(255, 255, 255)hsl(0, 0%, 100%)textMain#1f1f1frgb(31, 31, 31)hsl(0, 0%, 12.2%)textSub#8a8a8argb(138, 138, 138)hsl(0, 0%, 54.1%)divider#edededrgb(237, 237, 237)hsl(0, 0%, 92.9%)price#a61717rgb(166, 23, 23)hsl(0, 75.7%, 37.1%)tag#fff1ebrgb(255, 241, 235)hsl(18, 100%, 96.1%)How to use it
Written by hand for the hue family and lightness of this palette, not assembled from a template.
The lead colour sits in the middle of the lightness range, which makes it the most adaptable: both light and dark themes are easy to build on.
What it looks like in a real interface
The same palette rendered across all three platforms — the fastest way to judge whether it works.
Accessibility contrast check
Calculated to WCAG 2.1. AA is the accessibility baseline, AAA the enhanced level.
| Foreground / background | Ratio | Body text | Large text |
|---|---|---|---|
| Body text / page background | 15.51:1 | AAA | AAA |
| Body text / card background | 16.48:1 | AAA | AAA |
| Brand colour / page background | 3.6:1 | AA | AA |
Export to your project
Four formats, ready to paste. Or fetch them by URL from your tooling or AI agent.
CSS variables
:root {
--color-theme: #e0551a; /* Theme */
--color-btn: #e0551a; /* Button */
--color-btnDisabled: #fbc9b0; /* Button disabled */
--color-bg: #f7f8fa; /* Page background */
--color-card: #ffffff; /* Card */
--color-textMain: #1f1f1f; /* Text main */
--color-textSub: #8a8a8a; /* Text sub */
--color-divider: #ededed; /* Divider */
--color-price: #a61717; /* Price */
--color-tag: #fff1eb; /* Tag */
}SCSS variables
$color-theme: #e0551a; // Theme
$color-btn: #e0551a; // Button
$color-btnDisabled: #fbc9b0; // Button disabled
$color-bg: #f7f8fa; // Page background
$color-card: #ffffff; // Card
$color-textMain: #1f1f1f; // Text main
$color-textSub: #8a8a8a; // Text sub
$color-divider: #ededed; // Divider
$color-price: #a61717; // Price
$color-tag: #fff1eb; // TagTailwind config
// tailwind.config.js: Fresh Orange
module.exports = {
theme: {
extend: {
colors: {
'theme': '#e0551a',
'btn': '#e0551a',
'btnDisabled': '#fbc9b0',
'bg': '#f7f8fa',
'card': '#ffffff',
'textMain': '#1f1f1f',
'textSub': '#8a8a8a',
'divider': '#ededed',
'price': '#a61717',
'tag': '#fff1eb',
},
},
},
};Machine-readable JSON
{
"name": "Fresh Orange",
"platform": "miniapp",
"tags": [
"Vibrant",
"E-commerce",
"Warm tones"
],
"advice": {
"family": "Orange",
"depth": "The lead colour sits in the middle of the lightness range, which makes it the most adaptable: both light and dark themes are easy to build on.",
"muted": null,
"suit": "Calmer than red and steadier than yellow — good when you want warmth without shouting.",
"avoid": "Large areas can look cheap, so be restrained in B2B products that need authority.",
"pair": "Layer light and dark oranges within the same family rather than adding a third hue."
},
"roles": {
"theme": "#e0551a",
"btn": "#e0551a",
"btnDisabled": "#fbc9b0",
"bg": "#f7f8fa",
"card": "#ffffff",
"textMain": "#1f1f1f",
"textSub": "#8a8a8a",
"divider": "#ededed",
"price": "#a61717",
"tag": "#fff1eb"
},
"contrast": {
"textOnBg": {
"ratio": 15.51,
"level": "AAA"
},
"primaryOnBg": {
"ratio": 3.6,
"level": "AA"
},
"textOnSurface": {
"ratio": 16.48,
"level": "AAA"
}
}
}