|
| 1 | +@import "@codelitdev/design-system/styles.css"; |
1 | 2 | @import "tailwindcss"; |
2 | | -@import "fumadocs-ui/css/neutral.css"; |
| 3 | +@import "fumadocs-ui/css/lib/default-colors.css"; |
3 | 4 | @import "fumadocs-ui/css/preset.css"; |
4 | 5 | @import "fumadocs-openapi/css/preset.css"; |
5 | 6 |
|
6 | 7 | @source "../../../packages/email-blocks/src/**/*.{ts,tsx}"; |
7 | 8 | @source "../../../packages/email-editor/src/**/*.{ts,tsx}"; |
8 | 9 |
|
| 10 | +/* Map fumadocs' fd-* theme tokens onto the CodeLit design system tokens so |
| 11 | + the docs site (Hanken Grotesk, warm neutrals, SendLit green accent) |
| 12 | + matches the marketing site and app. */ |
9 | 13 | @theme inline { |
10 | | - --color-background: hsl(var(--background)); |
11 | | - --color-foreground: hsl(var(--foreground)); |
12 | | - --color-card: hsl(var(--card)); |
13 | | - --color-card-foreground: hsl(var(--card-foreground)); |
14 | | - --color-popover: hsl(var(--popover)); |
15 | | - --color-popover-foreground: hsl(var(--popover-foreground)); |
16 | | - --color-primary: hsl(var(--primary)); |
17 | | - --color-primary-foreground: hsl(var(--primary-foreground)); |
18 | | - --color-secondary: hsl(var(--secondary)); |
19 | | - --color-secondary-foreground: hsl(var(--secondary-foreground)); |
20 | | - --color-muted: hsl(var(--muted)); |
21 | | - --color-muted-foreground: hsl(var(--muted-foreground)); |
22 | | - --color-accent: hsl(var(--accent)); |
23 | | - --color-accent-foreground: hsl(var(--accent-foreground)); |
24 | | - --color-destructive: hsl(var(--destructive)); |
25 | | - --color-destructive-foreground: hsl(var(--destructive-foreground)); |
26 | | - --color-border: hsl(var(--border)); |
27 | | - --color-input: hsl(var(--input)); |
28 | | - --color-ring: hsl(var(--ring)); |
29 | | - --radius-lg: var(--radius); |
30 | | - --radius-md: calc(var(--radius) - 2px); |
31 | | - --radius-sm: calc(var(--radius) - 4px); |
| 14 | + --color-fd-background: var(--background); |
| 15 | + --color-fd-foreground: var(--foreground); |
| 16 | + --color-fd-card: var(--card); |
| 17 | + --color-fd-card-foreground: var(--card-foreground); |
| 18 | + --color-fd-popover: var(--popover); |
| 19 | + --color-fd-popover-foreground: var(--popover-foreground); |
| 20 | + --color-fd-primary: var(--primary); |
| 21 | + --color-fd-primary-foreground: var(--primary-foreground); |
| 22 | + --color-fd-secondary: var(--secondary); |
| 23 | + --color-fd-secondary-foreground: var(--secondary-foreground); |
| 24 | + --color-fd-muted: var(--muted); |
| 25 | + --color-fd-muted-foreground: var(--muted-foreground); |
| 26 | + --color-fd-accent: var(--accent); |
| 27 | + --color-fd-accent-foreground: var(--accent-foreground); |
| 28 | + --color-fd-border: var(--border); |
| 29 | + --color-fd-ring: var(--ring); |
| 30 | + --color-fd-overlay: var(--scrim); |
| 31 | + --color-fd-error: var(--destructive); |
| 32 | + --color-fd-warning: var(--warning); |
| 33 | + --color-fd-success: var(--success); |
32 | 34 | } |
33 | 35 |
|
34 | | -:root { |
35 | | - --background: 0 0% 100%; |
36 | | - --foreground: 222.2 84% 4.9%; |
37 | | - --card: 0 0% 100%; |
38 | | - --card-foreground: 222.2 84% 4.9%; |
39 | | - --popover: 0 0% 100%; |
40 | | - --popover-foreground: 222.2 84% 4.9%; |
41 | | - --primary: 222.2 47.4% 11.2%; |
42 | | - --primary-foreground: 210 40% 98%; |
43 | | - --secondary: 210 40% 96%; |
44 | | - --secondary-foreground: 222.2 47.4% 11.2%; |
45 | | - --muted: 210 40% 96%; |
46 | | - --muted-foreground: 215.4 16.3% 46.9%; |
47 | | - --accent: 210 40% 96%; |
48 | | - --accent-foreground: 222.2 47.4% 11.2%; |
49 | | - --destructive: 0 84.2% 60.2%; |
50 | | - --destructive-foreground: 210 40% 98%; |
51 | | - --border: 214.3 31.8% 91.4%; |
52 | | - --input: 214.3 31.8% 91.4%; |
53 | | - --ring: 222.2 84% 4.9%; |
54 | | - --radius: 0.5rem; |
55 | | -} |
56 | | - |
57 | | -.dark { |
58 | | - --background: 222.2 84% 4.9%; |
59 | | - --foreground: 210 40% 98%; |
60 | | - --card: 222.2 84% 4.9%; |
61 | | - --card-foreground: 210 40% 98%; |
62 | | - --popover: 222.2 84% 4.9%; |
63 | | - --popover-foreground: 210 40% 98%; |
64 | | - --primary: 210 40% 98%; |
65 | | - --primary-foreground: 222.2 47.4% 11.2%; |
66 | | - --secondary: 217.2 32.6% 17.5%; |
67 | | - --secondary-foreground: 210 40% 98%; |
68 | | - --muted: 217.2 32.6% 17.5%; |
69 | | - --muted-foreground: 215 20.2% 65.1%; |
70 | | - --accent: 217.2 32.6% 17.5%; |
71 | | - --accent-foreground: 210 40% 98%; |
72 | | - --destructive: 0 62.8% 30.6%; |
73 | | - --destructive-foreground: 210 40% 98%; |
74 | | - --border: 217.2 32.6% 17.5%; |
75 | | - --input: 217.2 32.6% 17.5%; |
76 | | - --ring: 212.7 26.8% 83.9%; |
| 36 | +/* The design-system's light SendLit accent is slightly too bright for the |
| 37 | + light foreground used on primary buttons/links. Keep the product hue, but |
| 38 | + use a contrast-safe lightness for interactive primary controls — mirrors |
| 39 | + the same override in apps/web/app/globals.css. */ |
| 40 | +[data-product="sendlit"] { |
| 41 | + --primary: oklch(0.47 0.14 150); |
| 42 | + --primary-hover: oklch(0.42 0.14 150); |
| 43 | + --ring: oklch(0.47 0.14 150); |
77 | 44 | } |
78 | 45 |
|
79 | 46 | .email-block-demo { |
80 | 47 | border: 1px solid var(--color-fd-border); |
81 | | - border-radius: 0.75rem; |
| 48 | + border-radius: var(--radius-lg); |
82 | 49 | margin: 1rem 0 1.5rem; |
83 | 50 | overflow: hidden; |
84 | 51 | } |
|
0 commit comments