Color reference

#102121 color reference

Very Dark Neutral

This is a very dark neutral because its OKLCH chroma falls below the deterministic hue-family threshold. Its closest standardized CSS named color is Midnight Blue (#191970), measured with straight-line OKLab distance.

Descriptive label
Very Dark Neutral
Recommended text
White · 16.65:1
Relative luminance
0.013077
Formats UI preview Contrast 50–900 scale Harmonies Matches Related colors Color vision Exports

Copyable values

#102121 in common color formats

Values are calculated from the same opaque sRGB color. Display rounding does not alter the internal calculations.

Color conversions for #102121
Format Value Action
HEX #102121
RGB rgb(16 33 33)
HSL hsl(180 34.69% 9.61%)
HSV hsv(180 51.52% 12.94%)
HWB hwb(180 6.27% 87.06%)
XYZ D65 color(xyz-d65 0.01032 0.013076 0.016369)
LAB lab(11.2598% -7.409 -2.3676)
LCH lch(11.2598% 7.7781 197.722)
OKLAB oklab(23.2928% -0.021936 -0.006166)
OKLCH oklch(23.2928% 0.022786 195.7003)

Real-world test

Try #102121 on interface components

Preview the source as a primary action, subtle status, form treatment, and card surface. Persistent state controls help touch and keyboard users inspect the same normal, hover, and active colors.

Normal state uses #102121 with white text at 16.65:1.

Action

Primary button

Use the controls above or point to and press the button to inspect its visual states.

Status

Subtle alert badge

A 12% source tint over white provides the background; readable text is selected separately.

Ready for review

Form

Border and focus ring

Source ring on white: 16.65:1 · meets the 3:1 non-text threshold where applicable.

Surface

Card component

The selected state becomes the card surface with its strongest black-or-white text pairing.

Design system Color decision ready Review states and surrounding surfaces before shipping.

Accessibility diagnostics

WCAG contrast for exact color pairs

Each result applies only to the named foreground, background, text size, and requirement. It is not a complete accessibility or component-conformance claim.

Source #102121 Exact pair assessment Results for source text on white appear below.

On white

16.65:1

  • Pass AA normal text · 4.5:1
  • Pass AAA normal text · 7:1
  • Pass AA large text · 3:1
  • Pass UI/non-text where applicable · 3:1
Source #102121 Exact pair assessment Results for source text on black appear below.

On black

1.26:1

  • Fail AA normal text · 4.5:1
  • Fail AAA normal text · 7:1
  • Fail AA large text · 3:1
  • Fail UI/non-text where applicable · 3:1

Use guidance

What this color may be suitable for

Pass in a tested context

Normal-sized text

#102121 reaches 15.93:1 on Hue Codex paper, meeting WCAG AA for normal text in that exact pairing.

Potential fit

Controls and interface graphics

Against Hue Codex paper, the color reaches 15.93:1. That meets the 3:1 color-contrast threshold where WCAG 1.4.11 applies, but states, shape, and non-color cues still need review.

Readable pairing available

Colored surface or button fill

White text provides the stronger black/white pairing on #102121 at 16.65:1. This validates only that text pair, not hover, focus, disabled, or adjacent-color states.

Restrained neutral

Palette role

Its OKLCH chroma of 0.0228 is restrained, which is generally more suitable for surfaces, borders, or neutral system roles than for a vivid accent.

Pair available

Color used as foreground

The stronger black/white background is white at 16.65:1. Always retest against the actual rendered background and text size.

Tested backgrounds

Foreground pairing comparison

#102121 foreground contrast on tested backgrounds
Pair Background Contrast ratio
White#FFFFFF 16.65:1
Hue Codex paper#FBFAF5 15.93:1
Soft neutral#F2EFE6 14.48:1
Black#000000 1.26:1
Hue Codex ink#10212B 1.01:1
Check #102121 on another background in Contrast Checker

Design-system starting point

A perceptual 50–900 reference scale

The source color is preserved at the nearest lightness step. Other swatches keep its OKLCH hue, moderate chroma toward the extremes, and reduce chroma only when needed to remain in sRGB.

50
100
200
300
400
500
600
700
800
900 #102121 Source

This is a Hue Codex reference scale, not a claim that the values match Tailwind, Material, or another framework’s named palette.

Adjust the #102121 scale in Tints, Shades & Tones

Color relationships

Complementary, analogous, and triadic colors

Hue rotations use OKLCH while preserving lightness and requested chroma. When a rotated result falls outside sRGB, chroma is reduced deterministically and disclosed.

Complementary

Source #102121
Complement

Analogous

Source #102121
Analogous −30°
Analogous +30°

Triadic

Source #102121
Triad +120°
Triad +240°

Applied pairing

A small interface check

The source anchors the main action while the complement marks a secondary status. Contrast is selected separately for each fill.

Project color Very Dark Neutral
Complement
Explore #102121 in Color Harmonies

Distance matching

Closest standardized and framework colors

Matches use straight-line OKLab distance ×100. A smaller value means the coordinates are closer in this model; it is not a claim that two tokens are interchangeable in a design system.

CSS named color

Midnight Blue

#191970

OKLab distance ×100: 15.08

Tailwind v4 default

mist-900

oklch(21.8% 0.008 223.9)

OKLab distance ×100: 2.2 · sRGB preview #161B1D

Print boundary

Pantone match not estimated

Reliable print matching needs licensed reference data plus a defined ink, paper, profile, and viewing condition.

Read the print methodology

Color-vision screening

Approximate color-vision-deficiency views

These encoded-sRGB matrix previews are screening approximations. They help reveal possible color-only distinctions but do not reproduce every person’s vision or establish accessibility conformance.

Original#102121
Approx.

Protanopia

Red-vision deficiency approximation

Original#102121
Approx.

Deuteranopia

Green-vision deficiency approximation

Original#102121
Approx.

Tritanopia

Blue-yellow deficiency approximation

Original#102121
Approx.

Achromatopsia

Monochromatic-vision approximation

Test #102121 with a complete palette in the CVD Simulator

Ready to use

Copy framework-ready color tokens

Exports preserve the source, readable foreground, and generated 50–900 scale. Tailwind v4 CSS-first and Tailwind v3 JavaScript-config formats are labeled separately.

CSS custom properties

Semantic aliases and the complete 50–900 scale.

:root {
  --color-primary: #102121;
  --color-on-primary: #FFFFFF;
  --color-primary-oklch: oklch(23.2928% 0.022786 195.7003);
  --color-primary-50: #EBF8F8;
  --color-primary-100: #D4E1E1;
  --color-primary-200: #B9C7C7;
  --color-primary-300: #A0AEAE;
  --color-primary-400: #879695;
  --color-primary-500: #6E7E7E;
  --color-primary-600: #576767;
  --color-primary-700: #405151;
  --color-primary-800: #2B3C3B;
  --color-primary-900: #102121;
}

Tailwind v4 CSS-first theme

Current @theme syntax for bg-brand, text-brand, and scale utilities.

@import "tailwindcss";

@theme {
  --color-brand: #102121;
  --color-brand-foreground: #FFFFFF;
  --color-brand-50: #EBF8F8;
  --color-brand-100: #D4E1E1;
  --color-brand-200: #B9C7C7;
  --color-brand-300: #A0AEAE;
  --color-brand-400: #879695;
  --color-brand-500: #6E7E7E;
  --color-brand-600: #576767;
  --color-brand-700: #405151;
  --color-brand-800: #2B3C3B;
  --color-brand-900: #102121;
}

Tailwind v3 / legacy config

CommonJS theme.extend.colors for JavaScript-config projects.

module.exports = {
  theme: {
    extend: {
      colors: {
        brand: {
          '50': '#EBF8F8',
          '100': '#D4E1E1',
          '200': '#B9C7C7',
          '300': '#A0AEAE',
          '400': '#879695',
          '500': '#6E7E7E',
          '600': '#576767',
          '700': '#405151',
          '800': '#2B3C3B',
          '900': '#102121',
          DEFAULT: '#102121',
          foreground: '#FFFFFF',
        },
      },
    },
  },
};

Sass variables

Semantic source, foreground, OKLCH, and scale variables.

$color-primary: #102121;
$color-on-primary: #FFFFFF;
$color-primary-oklch: oklch(23.2928% 0.022786 195.7003);
$color-primary-50: #EBF8F8;
$color-primary-100: #D4E1E1;
$color-primary-200: #B9C7C7;
$color-primary-300: #A0AEAE;
$color-primary-400: #879695;
$color-primary-500: #6E7E7E;
$color-primary-600: #576767;
$color-primary-700: #405151;
$color-primary-800: #2B3C3B;
$color-primary-900: #102121;

Modern color-mix()

Static fallbacks followed by OKLab tint and shade declarations.

:root {
  --color-primary: #102121;
  --color-primary-tint: #B9C7C7;
  --color-primary-tint: color-mix(in oklab, var(--color-primary) 72%, white);
  --color-primary-shade: #405151;
  --color-primary-shade: color-mix(in oklab, var(--color-primary) 82%, black);
}

JSON design data

Source formats, readable text, and the generated scale.

{
    "name": "Very Dark Neutral",
    "hex": "#102121",
    "rgb": "rgb(16 33 33)",
    "oklch": "oklch(23.2928% 0.022786 195.7003)",
    "recommendedText": "#FFFFFF",
    "scale": {
        "50": "#EBF8F8",
        "100": "#D4E1E1",
        "200": "#B9C7C7",
        "300": "#A0AEAE",
        "400": "#879695",
        "500": "#6E7E7E",
        "600": "#576767",
        "700": "#405151",
        "800": "#2B3C3B",
        "900": "#102121"
    }
}

Continue the decision

Use #102121 in a complete workflow

Reference values are a starting point. Test the color in its real role, background, states, typography, and surrounding palette before shipping.