|
4 | 4 | @custom-variant dark (&:is(.dark *)); |
5 | 5 |
|
6 | 6 | :root { |
| 7 | + --fg0: #000000; |
| 8 | + --fg1: #3b3b3b; |
| 9 | + --fg2: #4d4d4d; |
| 10 | + --fg3: #636363; |
| 11 | + --fg4: #707070; |
| 12 | + --fgSerious: #db1b06; |
| 13 | + --fgSuccess: #006430; |
| 14 | + --fgModerate: #a65006; |
| 15 | + --fgAccent: #002cf2; |
| 16 | + |
| 17 | + --bg1: #f9f9f6; |
| 18 | + --bg2: #f3f3f1; |
| 19 | + --bg3: #e2e2df; |
| 20 | + --bgSerious: #fae6e6; |
| 21 | + --bgSerious2: #ffcdc7; |
| 22 | + --bgSuccess: #d1fadf; |
| 23 | + --bgModerate: #faedd1; |
| 24 | + --bgAccent: #b3ccff; |
| 25 | + --bgAccentPrimary: #e2ebfd; |
| 26 | + |
| 27 | + --separator1: #ffcdc7; |
| 28 | + --separator2: #bdbdbb; |
| 29 | + --separatorSerious: #ffcdc7; |
| 30 | + --separatorSuccess: #94dcb5; |
| 31 | + --separatorModerate: #fbd7a0; |
| 32 | + --separatorAccent: #b3ccff; |
| 33 | + |
7 | 34 | --radius: 0.625rem; |
8 | 35 | --background: oklch(1 0 0); |
9 | 36 | --foreground: oklch(0.145 0 0); |
|
15 | 42 | --primary-foreground: oklch(0.985 0 0); |
16 | 43 | --secondary: oklch(0.97 0 0); |
17 | 44 | --secondary-foreground: oklch(0.205 0 0); |
18 | | - --muted: oklch(0.97 0 0); |
| 45 | + --muted: #f3f3f1; |
19 | 46 | --muted-foreground: oklch(0.556 0 0); |
20 | 47 | --accent: oklch(0.97 0 0); |
21 | 48 | --accent-foreground: oklch(0.205 0 0); |
|
35 | 62 | --sidebar-accent-foreground: oklch(0.205 0 0); |
36 | 63 | --sidebar-border: oklch(0.922 0 0); |
37 | 64 | --sidebar-ring: oklch(0.708 0 0); |
38 | | - |
39 | | - --button: #f1f1ef; |
40 | | - --button-border: #dbdbd8; |
41 | | - --button-foreground: #3b3b3b; |
42 | | - |
43 | | - --destructive: #fcf1f1; |
44 | | - --destructive-border: #fdc2bc; |
45 | | - --destructive-foreground: #a54135; |
46 | 65 | } |
47 | 66 |
|
48 | 67 | .dark { |
| 68 | + --fg0: #ffffff; |
| 69 | + --fg1: #cccccc; |
| 70 | + --fg2: #b2b2b2; |
| 71 | + --fg3: #999999; |
| 72 | + --fg4: #666666; |
| 73 | + --fgSerious: #ff7566; |
| 74 | + --fgSuccess: #3bc981; |
| 75 | + --fgModerate: #ffb752; |
| 76 | + --fgAccent: #6e9dfe; |
| 77 | + |
| 78 | + --bg1: #070707; |
| 79 | + --bg2: #131313; |
| 80 | + --bg3: #202020; |
| 81 | + --bgSerious: #1f0e0b; |
| 82 | + --bgSerious2: #5a1c16; |
| 83 | + --bgSuccess: #001905; |
| 84 | + --bgModerate: #1a0e04; |
| 85 | + --bgAccent: #090c17; |
| 86 | + --bgAccentPrimary: #0c1640; |
| 87 | + |
| 88 | + --separator1: #202020; |
| 89 | + --separator2: #30302f; |
| 90 | + --separatorSerious: #5a1c16; |
| 91 | + --separatorSuccess: #003213; |
| 92 | + --separatorModerate: #3f2208; |
| 93 | + --separatorAccent: #0c1640; |
| 94 | + |
49 | 95 | --background: oklch(0.145 0 0); |
50 | 96 | --foreground: oklch(0.985 0 0); |
51 | 97 | --card: oklch(0.205 0 0); |
|
56 | 102 | --primary-foreground: oklch(0.205 0 0); |
57 | 103 | --secondary: oklch(0.269 0 0); |
58 | 104 | --secondary-foreground: oklch(0.985 0 0); |
59 | | - --muted: oklch(0.269 0 0); |
| 105 | + --muted: #131313; |
60 | 106 | --muted-foreground: oklch(0.708 0 0); |
61 | 107 | --accent: oklch(0.371 0 0); |
62 | 108 | --accent-foreground: oklch(0.985 0 0); |
|
76 | 122 | --sidebar-accent-foreground: oklch(0.985 0 0); |
77 | 123 | --sidebar-border: oklch(1 0 0 / 10%); |
78 | 124 | --sidebar-ring: oklch(0.439 0 0); |
79 | | - |
80 | | - --button: #131313; |
81 | | - --button-border: #202020; |
82 | | - --button-foreground: #cccccc; |
83 | | - |
84 | | - --destructive: #1f0e0b; |
85 | | - --destructive-border: #4c1f19; |
86 | | - --destructive-foreground: #ff6352; |
87 | 125 | } |
88 | 126 |
|
89 | 127 | @theme inline { |
| 128 | + --color-fg1: var(--fg1); |
| 129 | + |
90 | 130 | --color-background: var(--background); |
91 | 131 | --color-foreground: var(--foreground); |
92 | 132 | --color-card: var(--card); |
93 | 133 | --color-card-foreground: var(--card-foreground); |
94 | 134 | --color-popover: var(--popover); |
95 | 135 | --color-popover-foreground: var(--popover-foreground); |
96 | | - --color-primary: var(--primary); |
97 | | - --color-primary-foreground: var(--primary-foreground); |
| 136 | + --color-primary: var(--bgAccentPrimary); |
| 137 | + --color-primary-hover: var(--bgAccent); |
| 138 | + --color-primary-foreground: var(--fgAccent); |
98 | 139 | --color-secondary: var(--secondary); |
99 | 140 | --color-secondary-foreground: var(--secondary-foreground); |
100 | 141 | --color-muted: var(--muted); |
|
119 | 160 | --color-sidebar-border: var(--sidebar-border); |
120 | 161 | --color-sidebar-ring: var(--sidebar-ring); |
121 | 162 |
|
122 | | - --color-button: var(--button); |
123 | | - --color-button-border: var(--button-border); |
124 | | - --color-button-foreground: var(--button-foreground); |
| 163 | + --color-button: var(--bg2); |
| 164 | + --color-button-hover: var(--bg3); |
| 165 | + --color-button-foreground: var(--fg1); |
| 166 | + --color-button-primary: var(--bg2); |
| 167 | + --color-button-primary-foreground: var(--fgSerious); |
| 168 | + --color-button-secondary: var(--bgAccentPrimary); |
| 169 | + --color-button-secondary-foreground: var(--fgAccent); |
125 | 170 |
|
126 | | - --color-destructive: var(--destructive); |
127 | | - --color-destructive-border: var(--destructive-border); |
128 | | - --color-destructive-foreground: var(--destructive-foreground); |
| 171 | + --color-destructive: var(--bgSerious); |
| 172 | + --color-destructive-hover: var(--bgSerious2); |
| 173 | + --color-destructive-foreground: var(--fgSerious); |
129 | 174 | } |
130 | 175 |
|
131 | 176 | @layer base { |
|
138 | 183 | } |
139 | 184 |
|
140 | 185 | @layer utils { |
141 | | - .animate-text-gradient { |
142 | | - animation: slide-text-gradient 5s linear infinite; |
| 186 | + .animate-text-shimmer { |
| 187 | + animation-delay: 0.5s; |
| 188 | + animation-duration: 3s; |
| 189 | + animation-iteration-count: infinite; |
| 190 | + animation-name: text-shimmer; |
| 191 | + background: var(--muted-foreground) |
| 192 | + gradient( |
| 193 | + linear, |
| 194 | + 100% 0, |
| 195 | + 0 0, |
| 196 | + from(var(--muted-foreground)), |
| 197 | + color-stop(0.5, var(--secondary-foreground)), |
| 198 | + to(var(--muted-foreground)) |
| 199 | + ); |
| 200 | + background: var(--muted-foreground) -webkit-gradient( |
| 201 | + linear, |
| 202 | + 100% 0, |
| 203 | + 0 0, |
| 204 | + from(var(--muted-foreground)), |
| 205 | + color-stop(0.5, var(--secondary-foreground)), |
| 206 | + to(var(--muted-foreground)) |
| 207 | + ); |
| 208 | + background-repeat: no-repeat; |
| 209 | + background-size: 50% 200%; |
| 210 | + display: inline-block; |
143 | 211 | } |
144 | 212 |
|
145 | | - @keyframes slide-text-gradient { |
| 213 | + @keyframes text-shimmer { |
146 | 214 | 0% { |
147 | | - width: 300px; |
148 | | - background-position-x: 0; |
| 215 | + background-position: -100% 0; |
149 | 216 | } |
150 | 217 | 100% { |
151 | | - width: 300px; |
152 | | - background-position-x: 300px; |
| 218 | + background-position: 250% 0; |
153 | 219 | } |
154 | 220 | } |
155 | 221 | } |
0 commit comments