Generate feedback colors (success, warning, error, and info) for shadcn/ui

Go to generator

10000+Themes for shadcn/ui

Chocolate for shadcn/ui

Chocolate is a shadcn/ui theme built around a deep blue primary color (#040d1a) with muted light blue accents (#d3d8de). The light mode uses a neutral background (#ffffff). Dark mode keeps the deep blue primary (#040d1a) on a blue-tinted background (#040910).

Color palette

TokenLightDark
Background
#ffffffwhite
#040910black
Foreground
#020912black
#ffffffwhite
Card
#fcfcfcsnow
#050b14black
Card foreground
#02060dblack
#ffffffwhite
Popover
#ffffffwhite
#040910black
Popover foreground
#020912black
#ffffffwhite
Primary
#040d1ablack
#040d1ablack
Primary foreground
#6a9ce7cornflowerblue
#6a9ce7cornflowerblue
Secondary
#e9eaeclavender
#222325black
Secondary foreground
#4b5058darkslategray
#babcbfsilver
Muted
#dadde2gainsboro
#1d2025black
Muted foreground
#515861dimgray
#9ea4aedarkgray
Accent
#d3d8degainsboro
#2c323adarkslategray
Accent foreground
#363e49darkslategray
#c5cbd3lightgrey
Destructive
#7a1706maroon
#f6583ctomato
Destructive foreground
#fcc0b6lightpink
#000000black
Border
#e5e7eblavender
#1f2937darkslategray
Input
#e5e7eblavender
#1f2937darkslategray
Ring
#040d1ablack
#040d1ablack

Contrast

WCAG 2 contrast ratios between each background and its foreground color.

Light mode
Text on background19.99:1AAA
Text on card19.86:1AAA
Primary button6.97:1AA
Secondary button6.75:1AA
Muted text5.28:1AA
Accent7.52:1AAA
Destructive6.84:1AA
Dark mode
Text on background19.95:1AAA
Text on card19.69:1AAA
Primary button6.97:1AA
Secondary button8.22:1AAA
Muted text6.49:1AA
Accent7.93:1AAA
Destructive6.37:1AA

CSS variables

Paste this into your globals.css to use Chocolate in your shadcn/ui project.

:root {
  --radius: 0.5rem;
  --background: oklch(1 0 180);
  --foreground: oklch(0.135 0.025 250.439);
  --muted: oklch(0.897 0.007 258.333);
  --muted-foreground: oklch(0.457 0.018 258.371);
  --popover: oklch(1 0 180);
  --popover-foreground: oklch(0.135 0.025 250.439);
  --card: oklch(0.992 0 161.565);
  --card-foreground: oklch(0.122 0.021 247.747);
  --border: oklch(0.928 0.006 264.531);
  --input: oklch(0.928 0.006 264.531);
  --primary: oklch(0.158 0.032 255.531);
  --primary-foreground: oklch(0.689 0.124 258.276);
  --secondary: oklch(0.937 0.003 258.321);
  --secondary-foreground: oklch(0.431 0.015 258.368);
  --accent: oklch(0.879 0.011 258.341);
  --accent-foreground: oklch(0.361 0.022 258.369);
  --destructive: oklch(0.378 0.136 32.225);
  --destructive-foreground: oklch(0.86 0.07 29.981);
  --ring: oklch(0.158 0.032 255.531);
  --chart-1: oklch(0.158 0.032 255.531);
  --chart-2: oklch(0.937 0.003 258.321);
  --chart-3: oklch(0.879 0.011 258.341);
  --chart-4: oklch(0.961 0.002 258.318);
  --chart-5: oklch(0.158 0.034 255.169);
}

.dark {
  --radius: 0.5rem;
  --background: oklch(0.138 0.019 252.808);
  --foreground: oklch(1 0 180);
  --muted: oklch(0.244 0.01 258.372);
  --muted-foreground: oklch(0.717 0.016 258.357);
  --popover: oklch(0.138 0.019 252.808);
  --popover-foreground: oklch(1 0 180);
  --card: oklch(0.149 0.022 255.515);
  --card-foreground: oklch(1 0 180);
  --border: oklch(0.278 0.03 256.848);
  --input: oklch(0.278 0.03 256.848);
  --primary: oklch(0.158 0.032 255.531);
  --primary-foreground: oklch(0.689 0.124 258.276);
  --secondary: oklch(0.257 0.004 258.345);
  --secondary-foreground: oklch(0.795 0.005 258.329);
  --accent: oklch(0.314 0.016 258.372);
  --accent-foreground: oklch(0.839 0.013 258.346);
  --destructive: oklch(0.668 0.198 32.307);
  --destructive-foreground: oklch(0 0 0);
  --ring: oklch(0.158 0.032 255.531);
  --chart-1: oklch(0.158 0.032 255.531);
  --chart-2: oklch(0.257 0.004 258.345);
  --chart-3: oklch(0.314 0.016 258.372);
  --chart-4: oklch(0.288 0.004 258.346);
  --chart-5: oklch(0.158 0.034 255.169);
}