@tide-tds/foundation 0.0.0-stage → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,551 @@
1
+ /* 이 파일은 @tide-tds/foundation 빌드 스크립트가 만든다. 직접 고치지 않는다. */
2
+
3
+ :root {
4
+ --tide-color-white: #ffffff;
5
+ --tide-color-black: #000000;
6
+ --tide-color-blue-50: #f0f6fe;
7
+ --tide-color-blue-100: #ddeafc;
8
+ --tide-color-blue-200: #c3dafb;
9
+ --tide-color-blue-300: #9bc3fd;
10
+ --tide-color-blue-400: #65a1f9;
11
+ --tide-color-blue-500: #3183f5;
12
+ --tide-color-blue-600: #006ae2;
13
+ --tide-color-blue-700: #005ac2;
14
+ --tide-color-blue-800: #0049a1;
15
+ --tide-color-blue-900: #093f85;
16
+ --tide-color-blue-950: #0d2850;
17
+ --tide-color-gray-50: #f5f5f6;
18
+ --tide-color-gray-100: #e8e8ea;
19
+ --tide-color-gray-200: #d7d8da;
20
+ --tide-color-gray-300: #bec1c4;
21
+ --tide-color-gray-400: #9da1a6;
22
+ --tide-color-gray-500: #82878e;
23
+ --tide-color-gray-600: #6b7179;
24
+ --tide-color-gray-700: #5b6068;
25
+ --tide-color-gray-800: #4a4e54;
26
+ --tide-color-gray-900: #3f4247;
27
+ --tide-color-gray-950: #28292c;
28
+ --tide-color-green-50: #f0f7f1;
29
+ --tide-color-green-100: #deeee0;
30
+ --tide-color-green-200: #c4e1c9;
31
+ --tide-color-green-300: #9bd0a5;
32
+ --tide-color-green-400: #60b775;
33
+ --tide-color-green-500: #15a14c;
34
+ --tide-color-green-600: #00873d;
35
+ --tide-color-green-700: #007433;
36
+ --tide-color-green-800: #005f28;
37
+ --tide-color-green-900: #005121;
38
+ --tide-color-green-950: #073315;
39
+ --tide-color-amber-50: #faf4ed;
40
+ --tide-color-amber-100: #f3e7d7;
41
+ --tide-color-amber-200: #ead5b8;
42
+ --tide-color-amber-300: #e0ba85;
43
+ --tide-color-amber-400: #ce9437;
44
+ --tide-color-amber-500: #b47900;
45
+ --tide-color-amber-600: #976500;
46
+ --tide-color-amber-700: #815600;
47
+ --tide-color-amber-800: #6a4600;
48
+ --tide-color-amber-900: #5b3b00;
49
+ --tide-color-amber-950: #3a2400;
50
+ --tide-color-red-50: #fff2f0;
51
+ --tide-color-red-100: #fde1dd;
52
+ --tide-color-red-200: #fccac4;
53
+ --tide-color-red-300: #fca79d;
54
+ --tide-color-red-400: #f47368;
55
+ --tide-color-red-500: #ea3e39;
56
+ --tide-color-red-600: #d30016;
57
+ --tide-color-red-700: #b60011;
58
+ --tide-color-red-800: #96000c;
59
+ --tide-color-red-900: #7d0e10;
60
+ --tide-color-red-950: #4c120f;
61
+ --tide-color-cyan-50: #eff7fa;
62
+ --tide-color-cyan-100: #dcecf2;
63
+ --tide-color-cyan-200: #c0deea;
64
+ --tide-color-cyan-300: #93cae0;
65
+ --tide-color-cyan-400: #51aed0;
66
+ --tide-color-cyan-500: #0094bc;
67
+ --tide-color-cyan-600: #007c9e;
68
+ --tide-color-cyan-700: #006a87;
69
+ --tide-color-cyan-800: #00576f;
70
+ --tide-color-cyan-900: #004a5f;
71
+ --tide-color-cyan-950: #002f3d;
72
+ --tide-font-sans: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
73
+ --tide-font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
74
+ --tide-font-size-12: 0.75rem;
75
+ --tide-font-size-14: 0.875rem;
76
+ --tide-font-size-16: 1rem;
77
+ --tide-font-size-18: 1.125rem;
78
+ --tide-font-size-20: 1.25rem;
79
+ --tide-font-size-24: 1.5rem;
80
+ --tide-font-size-32: 2rem;
81
+ --tide-font-size-40: 2.5rem;
82
+ --tide-font-size-48: 3rem;
83
+ --tide-font-size-56: 3.5rem;
84
+ --tide-font-light: 300;
85
+ --tide-font-normal: 400;
86
+ --tide-font-medium: 500;
87
+ --tide-font-semibold: 600;
88
+ --tide-font-bold: 700;
89
+ --tide-text-display-lg: var(--tide-font-size-56);
90
+ --tide-text-display-lg--line-height: 4rem;
91
+ --tide-text-display-lg--font-weight: var(--tide-font-bold);
92
+ --tide-text-display-md: var(--tide-font-size-48);
93
+ --tide-text-display-md--line-height: 3.5rem;
94
+ --tide-text-display-md--font-weight: var(--tide-font-bold);
95
+ --tide-text-heading-xl: var(--tide-font-size-40);
96
+ --tide-text-heading-xl--line-height: 3rem;
97
+ --tide-text-heading-xl--font-weight: var(--tide-font-bold);
98
+ --tide-text-heading-lg: var(--tide-font-size-32);
99
+ --tide-text-heading-lg--line-height: 2.5rem;
100
+ --tide-text-heading-lg--font-weight: var(--tide-font-bold);
101
+ --tide-text-heading-md: var(--tide-font-size-24);
102
+ --tide-text-heading-md--line-height: 2rem;
103
+ --tide-text-heading-md--font-weight: var(--tide-font-bold);
104
+ --tide-text-heading-sm: var(--tide-font-size-20);
105
+ --tide-text-heading-sm--line-height: 1.75rem;
106
+ --tide-text-heading-sm--font-weight: var(--tide-font-semibold);
107
+ --tide-text-heading-xs: var(--tide-font-size-18);
108
+ --tide-text-heading-xs--line-height: 1.75rem;
109
+ --tide-text-heading-xs--font-weight: var(--tide-font-semibold);
110
+ --tide-text-body-lg: var(--tide-font-size-18);
111
+ --tide-text-body-lg--line-height: 1.75rem;
112
+ --tide-text-body-lg--font-weight: var(--tide-font-normal);
113
+ --tide-text-body-md: var(--tide-font-size-16);
114
+ --tide-text-body-md--line-height: 1.5rem;
115
+ --tide-text-body-md--font-weight: var(--tide-font-normal);
116
+ --tide-text-body-sm: var(--tide-font-size-14);
117
+ --tide-text-body-sm--line-height: 1.25rem;
118
+ --tide-text-body-sm--font-weight: var(--tide-font-normal);
119
+ --tide-text-label-lg: var(--tide-font-size-16);
120
+ --tide-text-label-lg--line-height: 1.25rem;
121
+ --tide-text-label-lg--font-weight: var(--tide-font-medium);
122
+ --tide-text-label-md: var(--tide-font-size-14);
123
+ --tide-text-label-md--line-height: 1.25rem;
124
+ --tide-text-label-md--font-weight: var(--tide-font-medium);
125
+ --tide-text-label-sm: var(--tide-font-size-12);
126
+ --tide-text-label-sm--line-height: 1rem;
127
+ --tide-text-label-sm--font-weight: var(--tide-font-medium);
128
+ --tide-text-caption: var(--tide-font-size-12);
129
+ --tide-text-caption--line-height: 1rem;
130
+ --tide-text-caption--font-weight: var(--tide-font-normal);
131
+ --tide-rounded-sm: 0.25rem;
132
+ --tide-rounded-md: 0.375rem;
133
+ --tide-rounded-lg: 0.5rem;
134
+ --tide-rounded-xl: 0.75rem;
135
+ --tide-rounded-full: 9999px;
136
+ --tide-focus-ring-width: 2px;
137
+ --tide-focus-ring-offset: 2px;
138
+ --tide-duration-fast: 150ms;
139
+ --tide-duration-normal: 300ms;
140
+ --tide-ease-out: cubic-bezier(0, 0, 0.2, 1);
141
+ --tide-z-sticky: 100;
142
+ --tide-z-modal: 200;
143
+ --tide-z-popover: 300;
144
+ --tide-z-toast: 400;
145
+ --tide-z-tooltip: 500;
146
+ }
147
+
148
+ :root,
149
+ [data-theme="light"] {
150
+ color-scheme: light;
151
+ --tide-blue-solid: var(--tide-color-blue-600);
152
+ --tide-blue-solid-hover: var(--tide-color-blue-700);
153
+ --tide-blue-solid-active: var(--tide-color-blue-800);
154
+ --tide-blue-subtle: var(--tide-color-blue-50);
155
+ --tide-blue-subtle-hover: var(--tide-color-blue-100);
156
+ --tide-blue-subtle-active: var(--tide-color-blue-200);
157
+ --tide-blue-text: var(--tide-color-blue-800);
158
+ --tide-blue-border: var(--tide-color-blue-600);
159
+ --tide-blue-on-solid: var(--tide-color-white);
160
+ --tide-gray-solid: var(--tide-color-gray-600);
161
+ --tide-gray-solid-hover: var(--tide-color-gray-700);
162
+ --tide-gray-solid-active: var(--tide-color-gray-800);
163
+ --tide-gray-subtle: var(--tide-color-gray-50);
164
+ --tide-gray-subtle-hover: var(--tide-color-gray-100);
165
+ --tide-gray-subtle-active: var(--tide-color-gray-200);
166
+ --tide-gray-text: var(--tide-color-gray-800);
167
+ --tide-gray-border: var(--tide-color-gray-600);
168
+ --tide-gray-on-solid: var(--tide-color-white);
169
+ --tide-green-solid: var(--tide-color-green-600);
170
+ --tide-green-solid-hover: var(--tide-color-green-700);
171
+ --tide-green-solid-active: var(--tide-color-green-800);
172
+ --tide-green-subtle: var(--tide-color-green-50);
173
+ --tide-green-subtle-hover: var(--tide-color-green-100);
174
+ --tide-green-subtle-active: var(--tide-color-green-200);
175
+ --tide-green-text: var(--tide-color-green-800);
176
+ --tide-green-border: var(--tide-color-green-600);
177
+ --tide-green-on-solid: var(--tide-color-white);
178
+ --tide-amber-solid: var(--tide-color-amber-600);
179
+ --tide-amber-solid-hover: var(--tide-color-amber-700);
180
+ --tide-amber-solid-active: var(--tide-color-amber-800);
181
+ --tide-amber-subtle: var(--tide-color-amber-50);
182
+ --tide-amber-subtle-hover: var(--tide-color-amber-100);
183
+ --tide-amber-subtle-active: var(--tide-color-amber-200);
184
+ --tide-amber-text: var(--tide-color-amber-800);
185
+ --tide-amber-border: var(--tide-color-amber-600);
186
+ --tide-amber-on-solid: var(--tide-color-white);
187
+ --tide-red-solid: var(--tide-color-red-600);
188
+ --tide-red-solid-hover: var(--tide-color-red-700);
189
+ --tide-red-solid-active: var(--tide-color-red-800);
190
+ --tide-red-subtle: var(--tide-color-red-50);
191
+ --tide-red-subtle-hover: var(--tide-color-red-100);
192
+ --tide-red-subtle-active: var(--tide-color-red-200);
193
+ --tide-red-text: var(--tide-color-red-800);
194
+ --tide-red-border: var(--tide-color-red-600);
195
+ --tide-red-on-solid: var(--tide-color-white);
196
+ --tide-cyan-solid: var(--tide-color-cyan-600);
197
+ --tide-cyan-solid-hover: var(--tide-color-cyan-700);
198
+ --tide-cyan-solid-active: var(--tide-color-cyan-800);
199
+ --tide-cyan-subtle: var(--tide-color-cyan-50);
200
+ --tide-cyan-subtle-hover: var(--tide-color-cyan-100);
201
+ --tide-cyan-subtle-active: var(--tide-color-cyan-200);
202
+ --tide-cyan-text: var(--tide-color-cyan-800);
203
+ --tide-cyan-border: var(--tide-color-cyan-600);
204
+ --tide-cyan-on-solid: var(--tide-color-white);
205
+ --tide-bg-canvas: var(--tide-color-white);
206
+ --tide-bg-surface: var(--tide-color-white);
207
+ --tide-bg-raised: var(--tide-color-white);
208
+ --tide-bg-disabled: var(--tide-color-gray-100);
209
+ --tide-bg-overlay: #28292c80;
210
+ --tide-bg-neutral-solid: var(--tide-gray-solid);
211
+ --tide-bg-neutral-solid-hover: var(--tide-gray-solid-hover);
212
+ --tide-bg-neutral-solid-active: var(--tide-gray-solid-active);
213
+ --tide-bg-neutral-subtle: var(--tide-gray-subtle);
214
+ --tide-bg-neutral-subtle-hover: var(--tide-gray-subtle-hover);
215
+ --tide-bg-neutral-subtle-active: var(--tide-gray-subtle-active);
216
+ --tide-bg-primary-solid: var(--tide-blue-solid);
217
+ --tide-bg-primary-solid-hover: var(--tide-blue-solid-hover);
218
+ --tide-bg-primary-solid-active: var(--tide-blue-solid-active);
219
+ --tide-bg-primary-subtle: var(--tide-blue-subtle);
220
+ --tide-bg-primary-subtle-hover: var(--tide-blue-subtle-hover);
221
+ --tide-bg-primary-subtle-active: var(--tide-blue-subtle-active);
222
+ --tide-bg-success-solid: var(--tide-green-solid);
223
+ --tide-bg-success-solid-hover: var(--tide-green-solid-hover);
224
+ --tide-bg-success-solid-active: var(--tide-green-solid-active);
225
+ --tide-bg-success-subtle: var(--tide-green-subtle);
226
+ --tide-bg-success-subtle-hover: var(--tide-green-subtle-hover);
227
+ --tide-bg-success-subtle-active: var(--tide-green-subtle-active);
228
+ --tide-bg-warning-solid: var(--tide-amber-solid);
229
+ --tide-bg-warning-solid-hover: var(--tide-amber-solid-hover);
230
+ --tide-bg-warning-solid-active: var(--tide-amber-solid-active);
231
+ --tide-bg-warning-subtle: var(--tide-amber-subtle);
232
+ --tide-bg-warning-subtle-hover: var(--tide-amber-subtle-hover);
233
+ --tide-bg-warning-subtle-active: var(--tide-amber-subtle-active);
234
+ --tide-bg-danger-solid: var(--tide-red-solid);
235
+ --tide-bg-danger-solid-hover: var(--tide-red-solid-hover);
236
+ --tide-bg-danger-solid-active: var(--tide-red-solid-active);
237
+ --tide-bg-danger-subtle: var(--tide-red-subtle);
238
+ --tide-bg-danger-subtle-hover: var(--tide-red-subtle-hover);
239
+ --tide-bg-danger-subtle-active: var(--tide-red-subtle-active);
240
+ --tide-bg-info-solid: var(--tide-cyan-solid);
241
+ --tide-bg-info-solid-hover: var(--tide-cyan-solid-hover);
242
+ --tide-bg-info-solid-active: var(--tide-cyan-solid-active);
243
+ --tide-bg-info-subtle: var(--tide-cyan-subtle);
244
+ --tide-bg-info-subtle-hover: var(--tide-cyan-subtle-hover);
245
+ --tide-bg-info-subtle-active: var(--tide-cyan-subtle-active);
246
+ --tide-text-default: var(--tide-color-gray-900);
247
+ --tide-text-muted: var(--tide-color-gray-600);
248
+ --tide-text-disabled: var(--tide-color-gray-400);
249
+ --tide-text-on-solid: var(--tide-color-white);
250
+ --tide-text-primary: var(--tide-blue-text);
251
+ --tide-text-success: var(--tide-green-text);
252
+ --tide-text-warning: var(--tide-amber-text);
253
+ --tide-text-danger: var(--tide-red-text);
254
+ --tide-text-info: var(--tide-cyan-text);
255
+ --tide-border-default: var(--tide-color-gray-200);
256
+ --tide-border-strong: var(--tide-color-gray-500);
257
+ --tide-border-raised: transparent;
258
+ --tide-border-primary: var(--tide-blue-border);
259
+ --tide-border-success: var(--tide-green-border);
260
+ --tide-border-warning: var(--tide-amber-border);
261
+ --tide-border-danger: var(--tide-red-border);
262
+ --tide-border-info: var(--tide-cyan-border);
263
+ --tide-outline-focus: var(--tide-color-blue-600);
264
+ --tide-accent-solid: var(--tide-bg-primary-solid);
265
+ --tide-accent-solid-hover: var(--tide-bg-primary-solid-hover);
266
+ --tide-accent-solid-active: var(--tide-bg-primary-solid-active);
267
+ --tide-accent-subtle: var(--tide-bg-primary-subtle);
268
+ --tide-accent-subtle-hover: var(--tide-bg-primary-subtle-hover);
269
+ --tide-accent-subtle-active: var(--tide-bg-primary-subtle-active);
270
+ --tide-accent-text: var(--tide-text-primary);
271
+ --tide-accent-border: var(--tide-border-primary);
272
+ --tide-accent-on-solid: var(--tide-text-on-solid);
273
+ --tide-shadow-color: #28292c14;
274
+ --tide-shadow-sm: 0 1px 1px color-mix(in srgb, var(--tide-shadow-color) 60%, transparent), 0 1px 2px color-mix(in srgb, var(--tide-shadow-color) 100%, transparent);
275
+ --tide-shadow-md: 0 1px 3px color-mix(in srgb, var(--tide-shadow-color) 50%, transparent), 0 4px 12px -2px color-mix(in srgb, var(--tide-shadow-color) 100%, transparent);
276
+ --tide-shadow-lg: 0 2px 6px -1px color-mix(in srgb, var(--tide-shadow-color) 50%, transparent), 0 12px 24px -6px color-mix(in srgb, var(--tide-shadow-color) 100%, transparent);
277
+ }
278
+
279
+ [data-theme="dark"] {
280
+ color-scheme: dark;
281
+ --tide-blue-solid: var(--tide-color-blue-600);
282
+ --tide-blue-solid-hover: var(--tide-color-blue-700);
283
+ --tide-blue-solid-active: var(--tide-color-blue-800);
284
+ --tide-blue-subtle: var(--tide-color-blue-950);
285
+ --tide-blue-subtle-hover: var(--tide-color-blue-900);
286
+ --tide-blue-subtle-active: var(--tide-color-blue-800);
287
+ --tide-blue-text: var(--tide-color-blue-200);
288
+ --tide-blue-border: var(--tide-color-blue-400);
289
+ --tide-blue-on-solid: var(--tide-color-white);
290
+ --tide-gray-solid: var(--tide-color-gray-600);
291
+ --tide-gray-solid-hover: var(--tide-color-gray-700);
292
+ --tide-gray-solid-active: var(--tide-color-gray-800);
293
+ --tide-gray-subtle: var(--tide-color-gray-950);
294
+ --tide-gray-subtle-hover: var(--tide-color-gray-900);
295
+ --tide-gray-subtle-active: var(--tide-color-gray-800);
296
+ --tide-gray-text: var(--tide-color-gray-200);
297
+ --tide-gray-border: var(--tide-color-gray-400);
298
+ --tide-gray-on-solid: var(--tide-color-white);
299
+ --tide-green-solid: var(--tide-color-green-600);
300
+ --tide-green-solid-hover: var(--tide-color-green-700);
301
+ --tide-green-solid-active: var(--tide-color-green-800);
302
+ --tide-green-subtle: var(--tide-color-green-950);
303
+ --tide-green-subtle-hover: var(--tide-color-green-900);
304
+ --tide-green-subtle-active: var(--tide-color-green-800);
305
+ --tide-green-text: var(--tide-color-green-200);
306
+ --tide-green-border: var(--tide-color-green-400);
307
+ --tide-green-on-solid: var(--tide-color-white);
308
+ --tide-amber-solid: var(--tide-color-amber-600);
309
+ --tide-amber-solid-hover: var(--tide-color-amber-700);
310
+ --tide-amber-solid-active: var(--tide-color-amber-800);
311
+ --tide-amber-subtle: var(--tide-color-amber-950);
312
+ --tide-amber-subtle-hover: var(--tide-color-amber-900);
313
+ --tide-amber-subtle-active: var(--tide-color-amber-800);
314
+ --tide-amber-text: var(--tide-color-amber-200);
315
+ --tide-amber-border: var(--tide-color-amber-400);
316
+ --tide-amber-on-solid: var(--tide-color-white);
317
+ --tide-red-solid: var(--tide-color-red-600);
318
+ --tide-red-solid-hover: var(--tide-color-red-700);
319
+ --tide-red-solid-active: var(--tide-color-red-800);
320
+ --tide-red-subtle: var(--tide-color-red-950);
321
+ --tide-red-subtle-hover: var(--tide-color-red-900);
322
+ --tide-red-subtle-active: var(--tide-color-red-800);
323
+ --tide-red-text: var(--tide-color-red-200);
324
+ --tide-red-border: var(--tide-color-red-400);
325
+ --tide-red-on-solid: var(--tide-color-white);
326
+ --tide-cyan-solid: var(--tide-color-cyan-600);
327
+ --tide-cyan-solid-hover: var(--tide-color-cyan-700);
328
+ --tide-cyan-solid-active: var(--tide-color-cyan-800);
329
+ --tide-cyan-subtle: var(--tide-color-cyan-950);
330
+ --tide-cyan-subtle-hover: var(--tide-color-cyan-900);
331
+ --tide-cyan-subtle-active: var(--tide-color-cyan-800);
332
+ --tide-cyan-text: var(--tide-color-cyan-200);
333
+ --tide-cyan-border: var(--tide-color-cyan-400);
334
+ --tide-cyan-on-solid: var(--tide-color-white);
335
+ --tide-bg-canvas: var(--tide-color-gray-950);
336
+ --tide-bg-surface: var(--tide-color-gray-950);
337
+ --tide-bg-raised: var(--tide-color-gray-900);
338
+ --tide-bg-disabled: var(--tide-color-gray-900);
339
+ --tide-bg-overlay: #28292cb3;
340
+ --tide-bg-neutral-solid: var(--tide-gray-solid);
341
+ --tide-bg-neutral-solid-hover: var(--tide-gray-solid-hover);
342
+ --tide-bg-neutral-solid-active: var(--tide-gray-solid-active);
343
+ --tide-bg-neutral-subtle: var(--tide-color-gray-900);
344
+ --tide-bg-neutral-subtle-hover: var(--tide-color-gray-800);
345
+ --tide-bg-neutral-subtle-active: var(--tide-color-gray-700);
346
+ --tide-bg-primary-solid: var(--tide-blue-solid);
347
+ --tide-bg-primary-solid-hover: var(--tide-blue-solid-hover);
348
+ --tide-bg-primary-solid-active: var(--tide-blue-solid-active);
349
+ --tide-bg-primary-subtle: var(--tide-blue-subtle);
350
+ --tide-bg-primary-subtle-hover: var(--tide-blue-subtle-hover);
351
+ --tide-bg-primary-subtle-active: var(--tide-blue-subtle-active);
352
+ --tide-bg-success-solid: var(--tide-green-solid);
353
+ --tide-bg-success-solid-hover: var(--tide-green-solid-hover);
354
+ --tide-bg-success-solid-active: var(--tide-green-solid-active);
355
+ --tide-bg-success-subtle: var(--tide-green-subtle);
356
+ --tide-bg-success-subtle-hover: var(--tide-green-subtle-hover);
357
+ --tide-bg-success-subtle-active: var(--tide-green-subtle-active);
358
+ --tide-bg-warning-solid: var(--tide-amber-solid);
359
+ --tide-bg-warning-solid-hover: var(--tide-amber-solid-hover);
360
+ --tide-bg-warning-solid-active: var(--tide-amber-solid-active);
361
+ --tide-bg-warning-subtle: var(--tide-amber-subtle);
362
+ --tide-bg-warning-subtle-hover: var(--tide-amber-subtle-hover);
363
+ --tide-bg-warning-subtle-active: var(--tide-amber-subtle-active);
364
+ --tide-bg-danger-solid: var(--tide-red-solid);
365
+ --tide-bg-danger-solid-hover: var(--tide-red-solid-hover);
366
+ --tide-bg-danger-solid-active: var(--tide-red-solid-active);
367
+ --tide-bg-danger-subtle: var(--tide-red-subtle);
368
+ --tide-bg-danger-subtle-hover: var(--tide-red-subtle-hover);
369
+ --tide-bg-danger-subtle-active: var(--tide-red-subtle-active);
370
+ --tide-bg-info-solid: var(--tide-cyan-solid);
371
+ --tide-bg-info-solid-hover: var(--tide-cyan-solid-hover);
372
+ --tide-bg-info-solid-active: var(--tide-cyan-solid-active);
373
+ --tide-bg-info-subtle: var(--tide-cyan-subtle);
374
+ --tide-bg-info-subtle-hover: var(--tide-cyan-subtle-hover);
375
+ --tide-bg-info-subtle-active: var(--tide-cyan-subtle-active);
376
+ --tide-text-default: var(--tide-color-gray-50);
377
+ --tide-text-muted: var(--tide-color-gray-300);
378
+ --tide-text-disabled: var(--tide-color-gray-600);
379
+ --tide-text-on-solid: var(--tide-color-white);
380
+ --tide-text-primary: var(--tide-blue-text);
381
+ --tide-text-success: var(--tide-green-text);
382
+ --tide-text-warning: var(--tide-amber-text);
383
+ --tide-text-danger: var(--tide-red-text);
384
+ --tide-text-info: var(--tide-cyan-text);
385
+ --tide-border-default: var(--tide-color-gray-800);
386
+ --tide-border-strong: var(--tide-color-gray-400);
387
+ --tide-border-raised: var(--tide-color-gray-800);
388
+ --tide-border-primary: var(--tide-blue-border);
389
+ --tide-border-success: var(--tide-green-border);
390
+ --tide-border-warning: var(--tide-amber-border);
391
+ --tide-border-danger: var(--tide-red-border);
392
+ --tide-border-info: var(--tide-cyan-border);
393
+ --tide-outline-focus: var(--tide-color-blue-400);
394
+ --tide-accent-solid: var(--tide-bg-primary-solid);
395
+ --tide-accent-solid-hover: var(--tide-bg-primary-solid-hover);
396
+ --tide-accent-solid-active: var(--tide-bg-primary-solid-active);
397
+ --tide-accent-subtle: var(--tide-bg-primary-subtle);
398
+ --tide-accent-subtle-hover: var(--tide-bg-primary-subtle-hover);
399
+ --tide-accent-subtle-active: var(--tide-bg-primary-subtle-active);
400
+ --tide-accent-text: var(--tide-text-primary);
401
+ --tide-accent-border: var(--tide-border-primary);
402
+ --tide-accent-on-solid: var(--tide-text-on-solid);
403
+ --tide-shadow-color: #0000004d;
404
+ --tide-shadow-sm: 0 1px 1px color-mix(in srgb, var(--tide-shadow-color) 60%, transparent), 0 1px 2px color-mix(in srgb, var(--tide-shadow-color) 100%, transparent);
405
+ --tide-shadow-md: 0 1px 3px color-mix(in srgb, var(--tide-shadow-color) 50%, transparent), 0 4px 12px -2px color-mix(in srgb, var(--tide-shadow-color) 100%, transparent);
406
+ --tide-shadow-lg: 0 2px 6px -1px color-mix(in srgb, var(--tide-shadow-color) 50%, transparent), 0 12px 24px -6px color-mix(in srgb, var(--tide-shadow-color) 100%, transparent);
407
+ }
408
+
409
+ [data-color="neutral"] {
410
+ --tide-accent-solid: var(--tide-bg-neutral-solid);
411
+ --tide-accent-solid-hover: var(--tide-bg-neutral-solid-hover);
412
+ --tide-accent-solid-active: var(--tide-bg-neutral-solid-active);
413
+ --tide-accent-subtle: var(--tide-bg-neutral-subtle);
414
+ --tide-accent-subtle-hover: var(--tide-bg-neutral-subtle-hover);
415
+ --tide-accent-subtle-active: var(--tide-bg-neutral-subtle-active);
416
+ --tide-accent-text: var(--tide-text-default);
417
+ --tide-accent-border: var(--tide-border-strong);
418
+ --tide-accent-on-solid: var(--tide-text-on-solid);
419
+ }
420
+
421
+ [data-color="primary"] {
422
+ --tide-accent-solid: var(--tide-bg-primary-solid);
423
+ --tide-accent-solid-hover: var(--tide-bg-primary-solid-hover);
424
+ --tide-accent-solid-active: var(--tide-bg-primary-solid-active);
425
+ --tide-accent-subtle: var(--tide-bg-primary-subtle);
426
+ --tide-accent-subtle-hover: var(--tide-bg-primary-subtle-hover);
427
+ --tide-accent-subtle-active: var(--tide-bg-primary-subtle-active);
428
+ --tide-accent-text: var(--tide-text-primary);
429
+ --tide-accent-border: var(--tide-border-primary);
430
+ --tide-accent-on-solid: var(--tide-text-on-solid);
431
+ }
432
+
433
+ [data-color="success"] {
434
+ --tide-accent-solid: var(--tide-bg-success-solid);
435
+ --tide-accent-solid-hover: var(--tide-bg-success-solid-hover);
436
+ --tide-accent-solid-active: var(--tide-bg-success-solid-active);
437
+ --tide-accent-subtle: var(--tide-bg-success-subtle);
438
+ --tide-accent-subtle-hover: var(--tide-bg-success-subtle-hover);
439
+ --tide-accent-subtle-active: var(--tide-bg-success-subtle-active);
440
+ --tide-accent-text: var(--tide-text-success);
441
+ --tide-accent-border: var(--tide-border-success);
442
+ --tide-accent-on-solid: var(--tide-text-on-solid);
443
+ }
444
+
445
+ [data-color="warning"] {
446
+ --tide-accent-solid: var(--tide-bg-warning-solid);
447
+ --tide-accent-solid-hover: var(--tide-bg-warning-solid-hover);
448
+ --tide-accent-solid-active: var(--tide-bg-warning-solid-active);
449
+ --tide-accent-subtle: var(--tide-bg-warning-subtle);
450
+ --tide-accent-subtle-hover: var(--tide-bg-warning-subtle-hover);
451
+ --tide-accent-subtle-active: var(--tide-bg-warning-subtle-active);
452
+ --tide-accent-text: var(--tide-text-warning);
453
+ --tide-accent-border: var(--tide-border-warning);
454
+ --tide-accent-on-solid: var(--tide-text-on-solid);
455
+ }
456
+
457
+ [data-color="danger"] {
458
+ --tide-accent-solid: var(--tide-bg-danger-solid);
459
+ --tide-accent-solid-hover: var(--tide-bg-danger-solid-hover);
460
+ --tide-accent-solid-active: var(--tide-bg-danger-solid-active);
461
+ --tide-accent-subtle: var(--tide-bg-danger-subtle);
462
+ --tide-accent-subtle-hover: var(--tide-bg-danger-subtle-hover);
463
+ --tide-accent-subtle-active: var(--tide-bg-danger-subtle-active);
464
+ --tide-accent-text: var(--tide-text-danger);
465
+ --tide-accent-border: var(--tide-border-danger);
466
+ --tide-accent-on-solid: var(--tide-text-on-solid);
467
+ }
468
+
469
+ [data-color="info"] {
470
+ --tide-accent-solid: var(--tide-bg-info-solid);
471
+ --tide-accent-solid-hover: var(--tide-bg-info-solid-hover);
472
+ --tide-accent-solid-active: var(--tide-bg-info-solid-active);
473
+ --tide-accent-subtle: var(--tide-bg-info-subtle);
474
+ --tide-accent-subtle-hover: var(--tide-bg-info-subtle-hover);
475
+ --tide-accent-subtle-active: var(--tide-bg-info-subtle-active);
476
+ --tide-accent-text: var(--tide-text-info);
477
+ --tide-accent-border: var(--tide-border-info);
478
+ --tide-accent-on-solid: var(--tide-text-on-solid);
479
+ }
480
+
481
+ [data-color="blue"] {
482
+ --tide-accent-solid: var(--tide-blue-solid);
483
+ --tide-accent-solid-hover: var(--tide-blue-solid-hover);
484
+ --tide-accent-solid-active: var(--tide-blue-solid-active);
485
+ --tide-accent-subtle: var(--tide-blue-subtle);
486
+ --tide-accent-subtle-hover: var(--tide-blue-subtle-hover);
487
+ --tide-accent-subtle-active: var(--tide-blue-subtle-active);
488
+ --tide-accent-text: var(--tide-blue-text);
489
+ --tide-accent-border: var(--tide-blue-border);
490
+ --tide-accent-on-solid: var(--tide-blue-on-solid);
491
+ }
492
+
493
+ [data-color="gray"] {
494
+ --tide-accent-solid: var(--tide-gray-solid);
495
+ --tide-accent-solid-hover: var(--tide-gray-solid-hover);
496
+ --tide-accent-solid-active: var(--tide-gray-solid-active);
497
+ --tide-accent-subtle: var(--tide-gray-subtle);
498
+ --tide-accent-subtle-hover: var(--tide-gray-subtle-hover);
499
+ --tide-accent-subtle-active: var(--tide-gray-subtle-active);
500
+ --tide-accent-text: var(--tide-gray-text);
501
+ --tide-accent-border: var(--tide-gray-border);
502
+ --tide-accent-on-solid: var(--tide-gray-on-solid);
503
+ }
504
+
505
+ [data-color="green"] {
506
+ --tide-accent-solid: var(--tide-green-solid);
507
+ --tide-accent-solid-hover: var(--tide-green-solid-hover);
508
+ --tide-accent-solid-active: var(--tide-green-solid-active);
509
+ --tide-accent-subtle: var(--tide-green-subtle);
510
+ --tide-accent-subtle-hover: var(--tide-green-subtle-hover);
511
+ --tide-accent-subtle-active: var(--tide-green-subtle-active);
512
+ --tide-accent-text: var(--tide-green-text);
513
+ --tide-accent-border: var(--tide-green-border);
514
+ --tide-accent-on-solid: var(--tide-green-on-solid);
515
+ }
516
+
517
+ [data-color="amber"] {
518
+ --tide-accent-solid: var(--tide-amber-solid);
519
+ --tide-accent-solid-hover: var(--tide-amber-solid-hover);
520
+ --tide-accent-solid-active: var(--tide-amber-solid-active);
521
+ --tide-accent-subtle: var(--tide-amber-subtle);
522
+ --tide-accent-subtle-hover: var(--tide-amber-subtle-hover);
523
+ --tide-accent-subtle-active: var(--tide-amber-subtle-active);
524
+ --tide-accent-text: var(--tide-amber-text);
525
+ --tide-accent-border: var(--tide-amber-border);
526
+ --tide-accent-on-solid: var(--tide-amber-on-solid);
527
+ }
528
+
529
+ [data-color="red"] {
530
+ --tide-accent-solid: var(--tide-red-solid);
531
+ --tide-accent-solid-hover: var(--tide-red-solid-hover);
532
+ --tide-accent-solid-active: var(--tide-red-solid-active);
533
+ --tide-accent-subtle: var(--tide-red-subtle);
534
+ --tide-accent-subtle-hover: var(--tide-red-subtle-hover);
535
+ --tide-accent-subtle-active: var(--tide-red-subtle-active);
536
+ --tide-accent-text: var(--tide-red-text);
537
+ --tide-accent-border: var(--tide-red-border);
538
+ --tide-accent-on-solid: var(--tide-red-on-solid);
539
+ }
540
+
541
+ [data-color="cyan"] {
542
+ --tide-accent-solid: var(--tide-cyan-solid);
543
+ --tide-accent-solid-hover: var(--tide-cyan-solid-hover);
544
+ --tide-accent-solid-active: var(--tide-cyan-solid-active);
545
+ --tide-accent-subtle: var(--tide-cyan-subtle);
546
+ --tide-accent-subtle-hover: var(--tide-cyan-subtle-hover);
547
+ --tide-accent-subtle-active: var(--tide-cyan-subtle-active);
548
+ --tide-accent-text: var(--tide-cyan-text);
549
+ --tide-accent-border: var(--tide-cyan-border);
550
+ --tide-accent-on-solid: var(--tide-cyan-on-solid);
551
+ }
@@ -0,0 +1,132 @@
1
+ /**
2
+ * font-family 스택. 공개 계약은 `--tide-font-<이름>`이고 `font-<이름>` class와 기본 글꼴이 쓴다.
3
+ * - sans: Pretendard README의 「어디서든 동일한 환경」 스택. 가변판 이름(`Pretendard Variable`)을 맨 앞에 둔다.
4
+ * - mono: 시스템 고정폭 글꼴만 쓴다(tailwindcss 4.3.5 기본 `--font-mono`와 같은 순서).
5
+ */
6
+ export declare const fontFamily: {
7
+ readonly sans: readonly ["Pretendard Variable", "Pretendard", "-apple-system", "BlinkMacSystemFont", "system-ui", "Roboto", "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "sans-serif"];
8
+ readonly mono: readonly ["ui-monospace", "SFMono-Regular", "Menlo", "Monaco", "Consolas", "Liberation Mono", "Courier New", "monospace"];
9
+ };
10
+ /** font-family Token 이름 */
11
+ export type FontFamilyName = keyof typeof fontFamily;
12
+ /**
13
+ * Primitive 크기. 키는 px, 값은 rem이다. class로 노출하지 않고 공개 계약 `--tide-font-size-<px>`만 둔다.
14
+ * 텍스트 스타일이 이 값을 참조한다.
15
+ */
16
+ export declare const fontSize: {
17
+ readonly 12: "0.75rem";
18
+ readonly 14: "0.875rem";
19
+ readonly 16: "1rem";
20
+ readonly 18: "1.125rem";
21
+ readonly 20: "1.25rem";
22
+ readonly 24: "1.5rem";
23
+ readonly 32: "2rem";
24
+ readonly 40: "2.5rem";
25
+ readonly 48: "3rem";
26
+ readonly 56: "3.5rem";
27
+ };
28
+ /** Primitive 크기 단계(px) */
29
+ export type FontSizeStep = keyof typeof fontSize;
30
+ /** 굵기 Token. Tailwind 기본 굵기는 지우고 이 다섯 개만 `font-<이름>` class로 둔다. */
31
+ export declare const fontWeight: {
32
+ readonly light: 300;
33
+ readonly normal: 400;
34
+ readonly medium: 500;
35
+ readonly semibold: 600;
36
+ readonly bold: 700;
37
+ };
38
+ /** 굵기 Token 이름 */
39
+ export type FontWeightName = keyof typeof fontWeight;
40
+ /** 텍스트 스타일 하나의 값 */
41
+ export interface TextStyleValue {
42
+ /** Primitive 크기 단계(px) */
43
+ readonly fontSize: FontSizeStep;
44
+ /** 행간(rem). 4px 격자를 따른다. */
45
+ readonly lineHeight: string;
46
+ /** 굵기 Token 이름. 텍스트 스타일은 light를 쓰지 않는다. */
47
+ readonly fontWeight: Exclude<FontWeightName, "light">;
48
+ }
49
+ /**
50
+ * 텍스트 스타일 14개. `text-<이름>` class 하나가 크기, 행간, 굵기를 함께 정한다.
51
+ * 공개 계약은 `--tide-text-<이름>`과 그 `--line-height`, `--font-weight` 하위 변수다.
52
+ * 값은 spec 표를 그대로 옮겼다(크기/행간 px → rem).
53
+ */
54
+ export declare const textStyle: {
55
+ readonly "display-lg": {
56
+ readonly fontSize: 56;
57
+ readonly lineHeight: "4rem";
58
+ readonly fontWeight: "bold";
59
+ };
60
+ readonly "display-md": {
61
+ readonly fontSize: 48;
62
+ readonly lineHeight: "3.5rem";
63
+ readonly fontWeight: "bold";
64
+ };
65
+ readonly "heading-xl": {
66
+ readonly fontSize: 40;
67
+ readonly lineHeight: "3rem";
68
+ readonly fontWeight: "bold";
69
+ };
70
+ readonly "heading-lg": {
71
+ readonly fontSize: 32;
72
+ readonly lineHeight: "2.5rem";
73
+ readonly fontWeight: "bold";
74
+ };
75
+ readonly "heading-md": {
76
+ readonly fontSize: 24;
77
+ readonly lineHeight: "2rem";
78
+ readonly fontWeight: "bold";
79
+ };
80
+ readonly "heading-sm": {
81
+ readonly fontSize: 20;
82
+ readonly lineHeight: "1.75rem";
83
+ readonly fontWeight: "semibold";
84
+ };
85
+ readonly "heading-xs": {
86
+ readonly fontSize: 18;
87
+ readonly lineHeight: "1.75rem";
88
+ readonly fontWeight: "semibold";
89
+ };
90
+ readonly "body-lg": {
91
+ readonly fontSize: 18;
92
+ readonly lineHeight: "1.75rem";
93
+ readonly fontWeight: "normal";
94
+ };
95
+ readonly "body-md": {
96
+ readonly fontSize: 16;
97
+ readonly lineHeight: "1.5rem";
98
+ readonly fontWeight: "normal";
99
+ };
100
+ readonly "body-sm": {
101
+ readonly fontSize: 14;
102
+ readonly lineHeight: "1.25rem";
103
+ readonly fontWeight: "normal";
104
+ };
105
+ readonly "label-lg": {
106
+ readonly fontSize: 16;
107
+ readonly lineHeight: "1.25rem";
108
+ readonly fontWeight: "medium";
109
+ };
110
+ readonly "label-md": {
111
+ readonly fontSize: 14;
112
+ readonly lineHeight: "1.25rem";
113
+ readonly fontWeight: "medium";
114
+ };
115
+ readonly "label-sm": {
116
+ readonly fontSize: 12;
117
+ readonly lineHeight: "1rem";
118
+ readonly fontWeight: "medium";
119
+ };
120
+ readonly caption: {
121
+ readonly fontSize: 12;
122
+ readonly lineHeight: "1rem";
123
+ readonly fontWeight: "normal";
124
+ };
125
+ };
126
+ /** 텍스트 스타일 이름. Typography의 `variant` 값이다. */
127
+ export type TextStyleName = keyof typeof textStyle;
128
+ /**
129
+ * font-family 스택을 CSS 값으로 만든다. 영문과 하이픈만으로 된 이름은 그대로 두고, 나머지(공백이 있는 이름)는 따옴표로 감싼다.
130
+ * @internal `@tide-tds/foundation/internal` 전용. 앱 개발자용 공개 계약이 아니다(문서 앱·빌드 스크립트·테스트용).
131
+ */
132
+ export declare function fontFamilyCss(name: FontFamilyName): string;