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

Go to generator

10000+Themes for shadcn/ui

Kick-off for shadcn/ui

Kick-off is a shadcn/ui theme built around a deep blue primary color (#070c17) with muted light blue accents (#bfc7d9). The light mode uses a neutral background (#f8f9fc). Dark mode keeps the deep blue primary (#070c17) on a neutral background (#010204).

Color palette

TokenLightDark
Background
#f8f9fcghostwhite
#010204black
Foreground
#000000black
#f9fafbghostwhite
Card
#f5f6fawhitesmoke
#020408black
Card foreground
#000000black
#fcfcfdwhite
Popover
#f5f6fawhitesmoke
#020408black
Popover foreground
#000000black
#fcfcfdwhite
Primary
#070c17black
#070c17black
Primary foreground
#7b98d5cornflowerblue
#7b98d5cornflowerblue
Secondary
#dcdfe5gainsboro
#1f242ddarkslategray
Secondary foreground
#3c4353darkslategray
#b4bbcbsilver
Muted
#d8dfeegainsboro
#111827black
Muted foreground
#46484edarkslategray
#b1b3b9darkgray
Accent
#bfc7d9lightsteelblue
#273045darkslategray
Accent foreground
#262e40darkslategray
#c1cadclightsteelblue
Destructive
#e04e06orangered
#e04e06orangered
Destructive foreground
#ffffffwhite
#ffffffwhite
Border
#e5e7eblavender
#1f2937darkslategray
Input
#e5e7eblavender
#1f2937darkslategray
Ring
#070c17black
#070c17black

Contrast

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

Light mode
Text on background19.97:1AAA
Text on card19.47:1AAA
Primary button6.77:1AA
Secondary button7.39:1AAA
Muted text6.82:1AA
Accent8.02:1AAA
Destructive3.98:1AA Large
Dark mode
Text on background19.85:1AAA
Text on card20.00:1AAA
Primary button6.77:1AA
Secondary button8.10:1AAA
Muted text8.46:1AAA
Accent8.00:1AAA
Destructive3.98:1AA Large

CSS variables

Paste this into your globals.css to use Kick-off in your shadcn/ui project.

:root {
  --radius: 0.5rem;
  --background: oklch(0.983 0.004 265.99);
  --foreground: oklch(0 0 0);
  --muted: oklch(0.902 0.022 265.879);
  --muted-foreground: oklch(0.402 0.011 265.866);
  --popover: oklch(0.974 0.005 265.982);
  --popover-foreground: oklch(0 0 0);
  --card: oklch(0.974 0.005 265.982);
  --card-foreground: oklch(0 0 0);
  --border: oklch(0.928 0.006 264.531);
  --input: oklch(0.928 0.006 264.531);
  --primary: oklch(0.157 0.025 263.95);
  --primary-foreground: oklch(0.682 0.097 264.865);
  --secondary: oklch(0.902 0.01 265.956);
  --secondary-foreground: oklch(0.383 0.028 265.515);
  --accent: oklch(0.83 0.026 265.838);
  --accent-foreground: oklch(0.303 0.034 265.177);
  --destructive: oklch(0.618 0.193 39.798);
  --destructive-foreground: oklch(1 0 180);
  --ring: oklch(0.157 0.025 263.95);
  --chart-1: oklch(0.157 0.025 263.95);
  --chart-2: oklch(0.902 0.01 265.956);
  --chart-3: oklch(0.83 0.026 265.838);
  --chart-4: oklch(0.927 0.007 265.971);
  --chart-5: oklch(0.156 0.026 263.604);
}

.dark {
  --radius: 0.5rem;
  --background: oklch(0.084 0.011 257.944);
  --foreground: oklch(0.984 0.002 265.999);
  --muted: oklch(0.21 0.032 264.742);
  --muted-foreground: oklch(0.768 0.009 265.95);
  --popover: oklch(0.106 0.014 257.944);
  --popover-foreground: oklch(0.992 0.001 266.002);
  --card: oklch(0.106 0.014 257.944);
  --card-foreground: oklch(0.992 0.001 266.002);
  --border: oklch(0.278 0.03 256.848);
  --input: oklch(0.278 0.03 256.848);
  --primary: oklch(0.157 0.025 263.95);
  --primary-foreground: oklch(0.682 0.097 264.865);
  --secondary: oklch(0.259 0.019 265.525);
  --secondary-foreground: oklch(0.791 0.024 265.847);
  --accent: oklch(0.31 0.039 265.022);
  --accent-foreground: oklch(0.837 0.028 265.827);
  --destructive: oklch(0.618 0.193 39.798);
  --destructive-foreground: oklch(1 0 180);
  --ring: oklch(0.157 0.025 263.95);
  --chart-1: oklch(0.157 0.025 263.95);
  --chart-2: oklch(0.259 0.019 265.525);
  --chart-3: oklch(0.31 0.039 265.022);
  --chart-4: oklch(0.288 0.022 265.494);
  --chart-5: oklch(0.156 0.026 263.604);
}