#1F2A2E is a near-black neutral with only a whisper of temperate cast. On the Color Lab it reads clean and engineered, quietly premium. It holds up as a large surface and is too dark to lead as a primary accent.
Not just a swatch — here's how #1F2A2E works with other colors. Named schemes with #1F2A2E in its natural role, and a note on why the supporting colors balance it.
Gunmetal Gray is the vivid signal in this product UI — on a near-black surface with cool white, a slate grey and a lighter tint of Gunmetal Gray.
Gunmetal Gray plays the worn-leather lead, deepened by saddle brown and an oxblood anchor, softened by aged cream and cooled by a muted forest green.
Gunmetal Gray sets a calm, sun-bleached base here, wrapped in bone and paper off-whites and a soft greige, with a single ink accent for wabi-sabi restraint.
Gunmetal Gray opens this coastal palette with sea-glass and warm sand alongside it, grounded by driftwood grey and a deep-navy anchor.
Gunmetal Gray is the single accent in this high-contrast editorial system — set on near-white paper against near-black ink, with a warm grey and a desaturated tint of Gunmetal Gray carrying the quiet middle.
How #1F2A2E actually behaves in design work — read from its OKLCH lightness, chroma and hue, not just its raw numbers. Ten signals to help you decide where this color earns its place.
Not a swatch to memorise — a color to build with. Here is #1F2A2E at work across the surfaces designers actually ship.
:root {
--color-base: #1F2A2E;
--color-base-rgb: 31 42 46;
--color-base-oklch: oklch(27.6% 0.017 222.1);
--color-50: #F6F8F9;
--color-100: #E7EDEF;
--color-200: #CEDADE;
--color-300: #ABBDC4;
--color-400: #89A0A9;
--color-500: #6A828B;
--color-600: #55666D;
--color-700: #404B4F;
--color-800: #2C3335;
--color-900: #1C2021;
--color-on-base: #FFFFFF;
}
// tailwind.config.js
colors: {
gunmetal-gray: {
50: '#F6F8F9',
100: '#E7EDEF',
200: '#CEDADE',
300: '#ABBDC4',
400: '#89A0A9',
500: '#6A828B',
600: '#55666D',
700: '#404B4F',
800: '#2C3335',
900: '#1C2021',
},
}
$base: #1F2A2E; $base-ink: #FFFFFF; $base-50: #F6F8F9; $base-100: #E7EDEF; $base-200: #CEDADE; $base-300: #ABBDC4; $base-400: #89A0A9; $base-500: #6A828B; $base-600: #55666D; $base-700: #404B4F; $base-800: #2C3335; $base-900: #1C2021; $base-hover: #192124; $base-subtle: #B5C2C7;
{
"color": {
"base": {
"value": "#1F2A2E",
"type": "color"
},
"onBase": {
"value": "#FFFFFF",
"type": "color"
},
"scale": {
"50": {
"value": "#F6F8F9",
"type": "color"
},
"100": {
"value": "#E7EDEF",
"type": "color"
},
"200": {
"value": "#CEDADE",
"type": "color"
},
"300": {
"value": "#ABBDC4",
"type": "color"
},
"400": {
"value": "#89A0A9",
"type": "color"
},
"500": {
"value": "#6A828B",
"type": "color"
},
"600": {
"value": "#55666D",
"type": "color"
},
"700": {
"value": "#404B4F",
"type": "color"
},
"800": {
"value": "#2C3335",
"type": "color"
},
"900": {
"value": "#1C2021",
"type": "color"
}
}
}
}