An introduction to the oklab() and oklch() CSS color functions, explaining why they exist as improved alternatives to lab() and lch(). The key issue with lab() and lch() is a bug that causes blue colors to appear purple — oklab() and oklch() fix this along with other improvements. The post also briefly recaps the difference between sRGB color space functions (rgb, hsl, hwb) and CIELAB color space functions (lab, lch), providing context for where oklab/oklch fit in modern CSS color tooling.