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

Go to generator

10000+Themes for shadcn/ui

Precious for shadcn/ui

Precious is a shadcn/ui theme built around a vivid deep pink primary color (#4c0a33) with vivid deep red accents (#4c0a12). The light mode uses a neutral background (#ffffff). Dark mode keeps the vivid deep pink primary (#4c0a33) on a neutral background (#070306).

Color palette

TokenLightDark
Background
#ffffffwhite
#070306black
Foreground
#13060eblack
#fcf8fasnow
Card
#fcfcfcsnow
#0b0408black
Card foreground
#0f050bblack
#fdfbfdsnow
Popover
#fcfcfcsnow
#0b0408black
Popover foreground
#0f050bblack
#fdfbfdsnow
Primary
#4c0a33maroon
#4c0a33maroon
Primary foreground
#f198cfplum
#f198cfplum
Secondary
#450a4cindigo
#450a4cindigo
Secondary foreground
#e798f1violet
#e798f1violet
Muted
#e2dfe2gainsboro
#201d20black
Muted foreground
#5f4c61dimgray
#b09eb3darkgray
Accent
#4c0a12maroon
#4c0a12maroon
Accent foreground
#f198a2darksalmon
#f198a2darksalmon
Destructive
#5e1d08maroon
#f06e42tomato
Destructive foreground
#f7b6a1lightpink
#000000black
Border
#e5e7eblavender
#1f2937darkslategray
Input
#e5e7eblavender
#1f2937darkslategray
Ring
#4c0a33maroon
#4c0a33maroon

Contrast

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

Light mode
Text on background19.80:1AAA
Text on card19.62:1AAA
Primary button7.22:1AAA
Secondary button7.25:1AAA
Muted text5.88:1AA
Accent7.15:1AAA
Destructive7.31:1AAA
Dark mode
Text on background19.46:1AAA
Text on card19.66:1AAA
Primary button7.22:1AAA
Secondary button7.25:1AAA
Muted text6.66:1AA
Accent7.15:1AAA
Destructive6.98:1AA

CSS variables

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

:root {
  --radius: 0.5rem;
  --background: oklch(1 0 180);
  --foreground: oklch(0.15 0.028 342.622);
  --muted: oklch(0.906 0.005 322.132);
  --muted-foreground: oklch(0.444 0.041 322.411);
  --popover: oklch(0.992 0 161.565);
  --popover-foreground: oklch(0.137 0.025 341.46);
  --card: oklch(0.992 0 161.565);
  --card-foreground: oklch(0.137 0.025 341.46);
  --border: oklch(0.928 0.006 264.531);
  --input: oklch(0.928 0.006 264.531);
  --primary: oklch(0.286 0.105 348.258);
  --primary-foreground: oklch(0.786 0.126 342.755);
  --secondary: oklch(0.288 0.12 322.663);
  --secondary-foreground: oklch(0.787 0.148 322.672);
  --accent: oklch(0.275 0.096 20.537);
  --accent-foreground: oklch(0.772 0.108 12.31);
  --destructive: oklch(0.332 0.1 37.516);
  --destructive-foreground: oklch(0.832 0.082 39.217);
  --ring: oklch(0.286 0.105 348.258);
  --chart-1: oklch(0.286 0.105 348.258);
  --chart-2: oklch(0.288 0.12 322.663);
  --chart-3: oklch(0.275 0.096 20.537);
  --chart-4: oklch(0.32 0.136 322.616);
  --chart-5: oklch(0.288 0.108 348.609);
}

.dark {
  --radius: 0.5rem;
  --background: oklch(0.109 0.016 339.62);
  --foreground: oklch(0.983 0.005 339.591);
  --muted: oklch(0.235 0.007 322.214);
  --muted-foreground: oklch(0.721 0.036 322.281);
  --popover: oklch(0.125 0.018 339.694);
  --popover-foreground: oklch(0.991 0.003 339.529);
  --card: oklch(0.125 0.018 339.694);
  --card-foreground: oklch(0.991 0.003 339.529);
  --border: oklch(0.278 0.03 256.848);
  --input: oklch(0.278 0.03 256.848);
  --primary: oklch(0.286 0.105 348.258);
  --primary-foreground: oklch(0.786 0.126 342.755);
  --secondary: oklch(0.288 0.12 322.663);
  --secondary-foreground: oklch(0.787 0.148 322.672);
  --accent: oklch(0.275 0.096 20.537);
  --accent-foreground: oklch(0.772 0.108 12.31);
  --destructive: oklch(0.687 0.171 38.621);
  --destructive-foreground: oklch(0 0 0);
  --ring: oklch(0.286 0.105 348.258);
  --chart-1: oklch(0.286 0.105 348.258);
  --chart-2: oklch(0.288 0.12 322.663);
  --chart-3: oklch(0.275 0.096 20.537);
  --chart-4: oklch(0.32 0.136 322.616);
  --chart-5: oklch(0.288 0.108 348.609);
}