Amber scale

An 11-step ramp from base #F59E0B, shaped in OKLCH for even perceptual movement.

Base
#f59e0b
Steps
11
Space
OKLCH

Amber from 50 to 950

Chroma tapers toward both ends so pale and dark stops remain visibly on-hue instead of clipping.

50

#fff2de

100

#ffe2bf

200

#f8c78f

300

#eaa958

400

#d88b10

500

#c36f00

600

#a55400

700

#883f00

800

#682d00

900

#4b2100

950

#2f1100

Create the Amber scale in PHP

Use the exact catalog values when the published token ramp must remain stable between releases.

<?php

use PhpColor\Color\Palette\ColorPalette;

$scale = ColorPalette::fromHex([
    '#fff2de',
    '#ffe2bf',
    '#f8c78f',
    '#eaa958',
    '#d88b10',
    '#c36f00',
    '#a55400',
    '#883f00',
    '#682d00',
    '#4b2100',
    '#2f1100',
]);
use PhpColor\Color\Palette\ColorPalette; $scale = ColorPalette::fromHex([ '#fff2de', '#ffe2bf', '#f8c78f', '#eaa958', '#d88b10', '#c36f00', '#a55400', '#883f00', '#682d00', '#4b2100', '#2f1100', ]);

Use a specific Amber step

Scale palettes use zero-based positions; the published token name remains your application-level key.

<?php

use PhpColor\Color\Color;
use PhpColor\Color\Contrast\ColorContrast;

$color500 = $scale->get(5);
$contrast = ColorContrast::calculate($color500, Color::white());
use PhpColor\Color\Color; use PhpColor\Color\Contrast\ColorContrast; $color500 = $scale->get(5); $contrast = ColorContrast::calculate($color500, Color::white());

Format Amber as CSS variables

Drop these tokens into :root, then reference any step as var(--amber-500).

css
:root {
  --amber-50: #fff2de;
  --amber-100: #ffe2bf;
  --amber-200: #f8c78f;
  --amber-300: #eaa958;
  --amber-400: #d88b10;
  --amber-500: #c36f00;
  --amber-600: #a55400;
  --amber-700: #883f00;
  --amber-800: #682d00;
  --amber-900: #4b2100;
  --amber-950: #2f1100;
}

Keep exploring

Continue from the Amber scale