10 colour roles
Every colour has a defined purpose. Use the buttons on the right to copy it in any format.
primary#2698bargb(38, 152, 186)hsl(193.8, 66.1%, 43.9%)primaryHover#186981rgb(24, 105, 129)hsl(193.7, 68.6%, 30%)primaryActive#0d3f4ergb(13, 63, 78)hsl(193.8, 71.4%, 17.8%)textMain#232829rgb(35, 40, 41)hsl(190, 7.9%, 14.9%)textSub#6a787crgb(106, 120, 124)hsl(193.3, 7.8%, 45.1%)bg#f9fafargb(249, 250, 250)hsl(180, 9.1%, 97.8%)surface#f4f5f6rgb(244, 245, 246)hsl(210, 10%, 96.1%)border#e3e7e8rgb(227, 231, 232)hsl(192, 9.8%, 90%)link#15667frgb(21, 102, 127)hsl(194.2, 71.6%, 29%)accent#ed3163rgb(237, 49, 99)hsl(344, 83.9%, 56.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.
Build your product with this palette
Navigation, buttons, cards and text hierarchy — previewed in one go.
Primary actionLearn moreAccessibility 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 | 14.27:1 | AAA | AAA |
| Body text / card background | 13.67:1 | AAA | AAA |
| Brand colour / page background | 3.2: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-primary: #2698ba; /* Primary */
--color-primaryHover: #186981; /* Primary hover */
--color-primaryActive: #0d3f4e; /* Primary active */
--color-textMain: #232829; /* Text main */
--color-textSub: #6a787c; /* Text sub */
--color-bg: #f9fafa; /* Background */
--color-surface: #f4f5f6; /* Surface */
--color-border: #e3e7e8; /* Border */
--color-link: #15667f; /* Link */
--color-accent: #ed3163; /* Accent */
}SCSS variables
$color-primary: #2698ba; // Primary
$color-primaryHover: #186981; // Primary hover
$color-primaryActive: #0d3f4e; // Primary active
$color-textMain: #232829; // Text main
$color-textSub: #6a787c; // Text sub
$color-bg: #f9fafa; // Background
$color-surface: #f4f5f6; // Surface
$color-border: #e3e7e8; // Border
$color-link: #15667f; // Link
$color-accent: #ed3163; // AccentTailwind config
// tailwind.config.js: Jade Pool
module.exports = {
theme: {
extend: {
colors: {
'primary': '#2698ba',
'primaryHover': '#186981',
'primaryActive': '#0d3f4e',
'textMain': '#232829',
'textSub': '#6a787c',
'bg': '#f9fafa',
'surface': '#f4f5f6',
'border': '#e3e7e8',
'link': '#15667f',
'accent': '#ed3163',
},
},
},
};Machine-readable JSON
{
"name": "Jade Pool",
"platform": "web",
"tags": [
"Morandi",
"Teal"
],
"advice": {
"family": "Teal",
"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": "Sitting between blue and green, it suits interfaces that should feel rational yet light.",
"avoid": "Too weak a teal reads as indecisive — let a support colour supply the character.",
"pair": "Reliable with deep blue and graphite grey; a little warm orange wakes it up."
},
"roles": {
"primary": "#2698ba",
"primaryHover": "#186981",
"primaryActive": "#0d3f4e",
"textMain": "#232829",
"textSub": "#6a787c",
"bg": "#f9fafa",
"surface": "#f4f5f6",
"border": "#e3e7e8",
"link": "#15667f",
"accent": "#ed3163"
},
"contrast": {
"textOnBg": {
"ratio": 14.27,
"level": "AAA"
},
"primaryOnBg": {
"ratio": 3.2,
"level": "AA"
},
"textOnSurface": {
"ratio": 13.67,
"level": "AAA"
}
}
}