@vsn-ux/gaia-styles 1.0.0-alpha.2

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.
Files changed (51) hide show
  1. package/README.md +125 -0
  2. package/dist/all-no-reset-10pt.css +994 -0
  3. package/dist/all-no-reset.css +994 -0
  4. package/dist/all.css +1135 -0
  5. package/dist/base.css +6 -0
  6. package/dist/components/avatar.css +34 -0
  7. package/dist/components/badge.css +116 -0
  8. package/dist/components/button.css +115 -0
  9. package/dist/components/card.css +38 -0
  10. package/dist/components/checkbox.css +89 -0
  11. package/dist/components/form-field.css +28 -0
  12. package/dist/components/input.css +71 -0
  13. package/dist/components/menu.css +61 -0
  14. package/dist/components/radio-button.css +107 -0
  15. package/dist/components/segmented-control.css +74 -0
  16. package/dist/components/text-area.css +61 -0
  17. package/dist/components/tooltip.css +124 -0
  18. package/dist/components.css +765 -0
  19. package/dist/design-tokens.css +159 -0
  20. package/dist/design-tokens.d.ts +167 -0
  21. package/dist/design-tokens.js +1654 -0
  22. package/package.json +73 -0
  23. package/src/design-tokens/dtcg-tokens.json +504 -0
  24. package/src/font/Inter-Bold.woff2 +0 -0
  25. package/src/font/Inter-BoldItalic.woff2 +0 -0
  26. package/src/font/Inter-Italic.woff2 +0 -0
  27. package/src/font/Inter-Medium.woff2 +0 -0
  28. package/src/font/Inter-MediumItalic.woff2 +0 -0
  29. package/src/font/Inter-Regular.woff2 +0 -0
  30. package/src/font/Inter-SemiBold.woff2 +0 -0
  31. package/src/font/Inter-SemiBoldItalic.woff2 +0 -0
  32. package/src/font/inter.css +56 -0
  33. package/src/styles/all-no-reset-10pt.css +12 -0
  34. package/src/styles/all-no-reset.css +7 -0
  35. package/src/styles/all.css +8 -0
  36. package/src/styles/base.css +3 -0
  37. package/src/styles/components/avatar.css +11 -0
  38. package/src/styles/components/badge.css +39 -0
  39. package/src/styles/components/button.css +83 -0
  40. package/src/styles/components/card.css +19 -0
  41. package/src/styles/components/checkbox.css +66 -0
  42. package/src/styles/components/form-field.css +11 -0
  43. package/src/styles/components/input.css +40 -0
  44. package/src/styles/components/menu.css +28 -0
  45. package/src/styles/components/radio-button.css +44 -0
  46. package/src/styles/components/segmented-control.css +40 -0
  47. package/src/styles/components/text-area.css +27 -0
  48. package/src/styles/components/tooltip.css +92 -0
  49. package/src/styles/components.css +12 -0
  50. package/src/styles/tailwind.css +2 -0
  51. package/src/styles/theme.css +68 -0
@@ -0,0 +1,765 @@
1
+ /*! tailwindcss v4.0.6 | MIT License | https://tailwindcss.com */
2
+ .ga-avatar {
3
+ display: inline-flex;
4
+ height: calc(0.25rem * 10);
5
+ width: calc(0.25rem * 10);
6
+ align-items: center;
7
+ justify-content: center;
8
+ overflow: hidden;
9
+ border-radius: calc(infinity * 1px);
10
+ border-style: var(--tw-border-style);
11
+ border-width: 1px;
12
+ vertical-align: middle;
13
+ --tw-font-weight: 700;
14
+ font-weight: 700;
15
+ &.ga-avatar--small {
16
+ height: calc(0.25rem * 6);
17
+ width: calc(0.25rem * 6);
18
+ font-size: var(--ga-size-font-sm);
19
+ }
20
+ &.ga-avatar--large {
21
+ height: calc(0.25rem * 16);
22
+ width: calc(0.25rem * 16);
23
+ font-size: var(--ga-size-font-2xl);
24
+ }
25
+ }
26
+ .ga-badge {
27
+ display: inline-block;
28
+ border-radius: calc(infinity * 1px);
29
+ vertical-align: baseline;
30
+ &.ga-badge--text {
31
+ min-width: calc(0.25rem * 6);
32
+ padding: calc(0.25rem * 1);
33
+ text-align: center;
34
+ font-size: var(--ga-size-font-sm);
35
+ --tw-leading: calc(0.25rem * 4);
36
+ line-height: calc(0.25rem * 4);
37
+ --tw-font-weight: 500;
38
+ font-weight: 500;
39
+ white-space: nowrap;
40
+ }
41
+ &.ga-badge--dot {
42
+ height: calc(0.25rem * 2);
43
+ width: calc(0.25rem * 2);
44
+ }
45
+ &.ga-badge--default {
46
+ background-color: var(--ga-color-cyan-80);
47
+ color: var(--ga-color-orange-10);
48
+ }
49
+ &.ga-badge--default-inverted {
50
+ background-color: var(--ga-color-orange-20);
51
+ color: var(--ga-color-cyan-90);
52
+ }
53
+ &.ga-badge--information {
54
+ background-color: var(--ga-color-blue-40);
55
+ color: var(--ga-color-cyan-90);
56
+ }
57
+ &.ga-badge--error {
58
+ background-color: var(--ga-color-red-40);
59
+ color: var(--ga-color-cyan-90);
60
+ }
61
+ &.ga-badge--warning {
62
+ background-color: var(--ga-color-orange-40);
63
+ color: var(--ga-color-cyan-90);
64
+ }
65
+ &.ga-badge--success {
66
+ background-color: var(--ga-color-green-40);
67
+ color: var(--ga-color-cyan-90);
68
+ }
69
+ &.ga-badge--muted {
70
+ background-color: #fff;
71
+ color: var(--ga-color-cyan-70);
72
+ --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentColor);
73
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
74
+ --tw-ring-color: var(--ga-color-grey-40);
75
+ --tw-ring-inset: inset;
76
+ }
77
+ }
78
+ .ga-button {
79
+ display: inline-flex;
80
+ height: calc(0.25rem * 10);
81
+ cursor: pointer;
82
+ align-items: center;
83
+ justify-content: center;
84
+ gap: calc(0.25rem * 2);
85
+ border-radius: var(--ga-radius);
86
+ padding-inline: calc(0.25rem * 4);
87
+ vertical-align: middle;
88
+ font-size: var(--ga-size-font-md);
89
+ --tw-leading: calc(0.25rem * 1);
90
+ line-height: calc(0.25rem * 1);
91
+ --tw-font-weight: 700;
92
+ font-weight: 700;
93
+ &:focus-visible {
94
+ outline-style: var(--tw-outline-style);
95
+ outline-width: 2px;
96
+ outline-offset: 2px;
97
+ outline-color: var(--ga-color-border-focus);
98
+ }
99
+ &:disabled {
100
+ cursor: not-allowed;
101
+ }
102
+ &.ga-button--primary {
103
+ background-color: var(--ga-color-surface-action);
104
+ color: var(--ga-color-text-on-action);
105
+ &:hover {
106
+ background-color: var(--ga-color-surface-action-hover);
107
+ }
108
+ &:active {
109
+ background-color: var(--ga-color-primary-70);
110
+ }
111
+ &:disabled {
112
+ background-color: var(--ga-color-surface-disabled);
113
+ color: var(--ga-color-text-disabled);
114
+ }
115
+ }
116
+ &.ga-button--secondary {
117
+ border-style: var(--tw-border-style);
118
+ border-width: 1px;
119
+ border-color: var(--ga-color-border-action);
120
+ background-color: var(--ga-color-surface-primary);
121
+ color: var(--ga-color-text-action);
122
+ &:hover {
123
+ background-color: var(--ga-color-surface-action-hover-2);
124
+ }
125
+ &:active {
126
+ background-color: var(--ga-color-surface-primary);
127
+ }
128
+ &:disabled {
129
+ border-color: var(--ga-color-border-disabled);
130
+ background-color: var(--ga-color-surace-page);
131
+ color: var(--ga-color-text-disabled);
132
+ }
133
+ }
134
+ &.ga-button--ghost {
135
+ background-color: transparent;
136
+ color: var(--ga-color-text-action);
137
+ &:hover {
138
+ background-color: var(--ga-color-utility-teal-light);
139
+ }
140
+ &:active {
141
+ background-color: transparent;
142
+ }
143
+ &:disabled {
144
+ background-color: transparent;
145
+ color: var(--ga-color-text-disabled);
146
+ }
147
+ }
148
+ &.ga-button--transparent {
149
+ border-style: var(--tw-border-style);
150
+ border-width: 1px;
151
+ border-color: var(--ga-color-border-action);
152
+ background-color: transparent;
153
+ color: var(--ga-color-text-action);
154
+ &:hover {
155
+ background-color: var(--ga-color-utility-teal-light);
156
+ }
157
+ &:focus-visible {
158
+ border-color: var(--ga-color-border-action);
159
+ }
160
+ &:active {
161
+ background-color: transparent;
162
+ }
163
+ &:disabled {
164
+ border-color: var(--ga-color-border-disabled);
165
+ background-color: transparent;
166
+ color: var(--ga-color-text-disabled);
167
+ }
168
+ }
169
+ &.ga-button--icon-only {
170
+ width: calc(0.25rem * 10);
171
+ padding-inline: calc(0.25rem * 0);
172
+ }
173
+ }
174
+ .ga-card {
175
+ border-radius: var(--ga-radius);
176
+ border-style: var(--tw-border-style);
177
+ border-width: 1px;
178
+ border-color: var(--ga-color-border-primary);
179
+ background-color: #fff;
180
+ padding: calc(0.25rem * 4);
181
+ font-size: var(--ga-size-font-md);
182
+ &.ga-card--selectable {
183
+ cursor: pointer;
184
+ &:hover {
185
+ border-color: var(--ga-color-border-action-hover);
186
+ background-color: var(--ga-color-surface-action-hover-2);
187
+ }
188
+ &:focus-visible {
189
+ outline-style: var(--tw-outline-style);
190
+ outline-width: 2px;
191
+ outline-offset: 2px;
192
+ outline-color: var(--ga-color-border-focus);
193
+ }
194
+ }
195
+ &.ga-card--disabled {
196
+ border-color: var(--ga-color-border-disabled);
197
+ background-color: var(--ga-color-surface-disabled);
198
+ color: var(--ga-color-text-disabled);
199
+ }
200
+ }
201
+ .ga-checkbox {
202
+ position: relative;
203
+ display: inline-flex;
204
+ gap: calc(0.25rem * 2);
205
+ .ga-checkbox__native {
206
+ height: calc(0.25rem * 5);
207
+ width: calc(0.25rem * 5);
208
+ flex-shrink: 0;
209
+ opacity: 0%;
210
+ &:not(:disabled) {
211
+ cursor: pointer;
212
+ }
213
+ }
214
+ .ga-checkbox__marker {
215
+ pointer-events: none;
216
+ position: absolute;
217
+ top: calc(0.25rem * 0);
218
+ left: calc(0.25rem * 0);
219
+ height: calc(0.25rem * 5);
220
+ width: calc(0.25rem * 5);
221
+ border-radius: var(--ga-radius);
222
+ border-style: var(--tw-border-style);
223
+ border-width: 2px;
224
+ border-color: var(--ga-color-border-action);
225
+ color: #fff;
226
+ .ga-checkbox__marker__indicator-checked, .ga-checkbox__marker__indicator-indeterminate {
227
+ display: none;
228
+ }
229
+ }
230
+ .ga-checkbox__native:focus-visible ~ .ga-checkbox__marker {
231
+ outline-style: var(--tw-outline-style);
232
+ outline-width: 2px;
233
+ outline-offset: 2px;
234
+ outline-color: var(--ga-color-border-focus);
235
+ }
236
+ .ga-checkbox__native:not(:disabled):hover ~ .ga-checkbox__marker {
237
+ border-color: var(--ga-color-border-action-hover);
238
+ background-color: var(--ga-color-surface-action-hover-2);
239
+ }
240
+ .ga-checkbox__native:checked ~ .ga-checkbox__marker {
241
+ background-color: var(--ga-color-surface-action);
242
+ .ga-checkbox__marker__indicator-checked {
243
+ display: block;
244
+ }
245
+ }
246
+ .ga-checkbox__native:indeterminate ~ .ga-checkbox__marker {
247
+ background-color: var(--ga-color-surface-action);
248
+ .ga-checkbox__marker__indicator-indeterminate {
249
+ display: block;
250
+ }
251
+ }
252
+ .ga-checkbox__native:not(:disabled):checked:hover ~ .ga-checkbox__marker, .ga-checkbox__native:not(:disabled):indeterminate:hover ~ .ga-checkbox__marker {
253
+ background-color: var(--ga-color-surface-action-hover);
254
+ }
255
+ .ga-checkbox__native:disabled ~ .ga-checkbox__marker {
256
+ border-color: var(--ga-color-border-disabled);
257
+ background-color: var(--ga-color-surface-disabled);
258
+ color: var(--ga-color-text-disabled);
259
+ }
260
+ &.ga-checkbox--invalid .ga-checkbox__marker {
261
+ border-color: var(--ga-color-border-error);
262
+ background-color: var(--ga-color-surface-error);
263
+ color: var(--ga-color-border-error);
264
+ }
265
+ .ga-checkbox__label {
266
+ min-height: calc(0.25rem * 5);
267
+ font-size: var(--ga-size-font-md);
268
+ --tw-leading: calc(0.25rem * 5);
269
+ line-height: calc(0.25rem * 5);
270
+ &:empty {
271
+ display: none;
272
+ }
273
+ }
274
+ }
275
+ .ga-form-field {
276
+ display: flex;
277
+ flex-direction: column;
278
+ gap: calc(0.25rem * 2);
279
+ .ga-form-field__label {
280
+ padding-inline: calc(0.25rem * 1);
281
+ font-size: var(--ga-size-font-md);
282
+ --tw-leading: calc(0.25rem * 5);
283
+ line-height: calc(0.25rem * 5);
284
+ --tw-font-weight: 500;
285
+ font-weight: 500;
286
+ }
287
+ .ga-form-field__info {
288
+ display: flex;
289
+ align-items: center;
290
+ gap: calc(0.25rem * 1);
291
+ font-size: var(--ga-size-font-xs);
292
+ }
293
+ }
294
+ .ga-input {
295
+ display: flex;
296
+ height: calc(0.25rem * 10);
297
+ width: calc(0.25rem * 50);
298
+ flex-direction: row;
299
+ align-items: center;
300
+ gap: calc(0.25rem * 2);
301
+ border-radius: var(--ga-radius);
302
+ border-style: var(--tw-border-style);
303
+ border-width: 1px;
304
+ border-color: var(--ga-color-border-primary);
305
+ background-color: var(--ga-color-bg-primary);
306
+ padding-inline: calc(0.25rem * 3);
307
+ padding-block: calc(0.25rem * 2);
308
+ font-size: var(--ga-size-font-md);
309
+ &:has(input:hover), &:is(input:hover) {
310
+ border-color: var(--ga-color-border-action-hover);
311
+ &:has(input:not(:placeholder-shown)), &:is(input:not(:placeholder-shown)) {
312
+ background-color: var(--ga-color-surface-action-hover-2);
313
+ }
314
+ }
315
+ &:has(input:disabled), &:is(input:disabled) {
316
+ border-color: var(--ga-color-border-primary);
317
+ background-color: var(--ga-color-surface-disabled);
318
+ color: var(--ga-color-text-disable-selected);
319
+ }
320
+ &:has(input:focus), &:is(input:focus) {
321
+ border-color: var(--ga-color-border-focus);
322
+ outline-style: var(--tw-outline-style);
323
+ outline-width: 1px;
324
+ outline-color: var(--ga-color-border-focus);
325
+ }
326
+ &.ga-input--invalid {
327
+ border-color: var(--ga-color-border-error);
328
+ outline-style: var(--tw-outline-style);
329
+ outline-width: 1px;
330
+ outline-color: var(--ga-color-border-error);
331
+ &:has(input:not(:placeholder-shown)), &:is(input:not(:placeholder-shown)) {
332
+ background-color: var(--ga-color-surface-error);
333
+ }
334
+ }
335
+ input {
336
+ height: calc(0.25rem * 6);
337
+ width: 100%;
338
+ min-width: calc(0.25rem * 0);
339
+ --tw-leading: calc(0.25rem * 6);
340
+ line-height: calc(0.25rem * 6);
341
+ --tw-outline-style: none;
342
+ outline-style: none;
343
+ }
344
+ &:is(input) {
345
+ min-width: calc(0.25rem * 0);
346
+ --tw-leading: calc(0.25rem * 6);
347
+ line-height: calc(0.25rem * 6);
348
+ }
349
+ }
350
+ .ga-menu {
351
+ display: flex;
352
+ min-width: calc(0.25rem * 36);
353
+ flex-direction: column;
354
+ align-items: stretch;
355
+ border-radius: var(--ga-radius);
356
+ border-style: var(--tw-border-style);
357
+ border-width: 1px;
358
+ border-color: var(--ga-color-neutral-30);
359
+ background-color: #fff;
360
+ .ga-menu__item {
361
+ height: calc(0.25rem * 10);
362
+ cursor: pointer;
363
+ border-bottom-style: var(--tw-border-style);
364
+ border-bottom-width: 1px;
365
+ border-bottom-color: var(--ga-color-neutral-30);
366
+ padding-inline: calc(0.25rem * 4);
367
+ padding-block: calc(0.25rem * 2);
368
+ text-align: left;
369
+ font-size: var(--ga-size-font-md);
370
+ --tw-font-weight: 500;
371
+ font-weight: 500;
372
+ color: var(--ga-color-cyan-80);
373
+ &:first-child {
374
+ border-top-left-radius: var(--ga-radius);
375
+ border-top-right-radius: var(--ga-radius);
376
+ }
377
+ &:last-child {
378
+ border-bottom-right-radius: var(--ga-radius);
379
+ border-bottom-left-radius: var(--ga-radius);
380
+ border-bottom-style: var(--tw-border-style);
381
+ border-bottom-width: 0px;
382
+ }
383
+ &:hover {
384
+ background-color: var(--ga-color-teal-10);
385
+ }
386
+ &:active {
387
+ background-color: var(--ga-color-cyan-80);
388
+ color: var(--ga-color-orange-10);
389
+ }
390
+ }
391
+ .ga-menu__separator {
392
+ padding-inline: calc(0.25rem * 3);
393
+ padding-top: calc(0.25rem * 3);
394
+ padding-bottom: calc(0.25rem * 2);
395
+ font-size: var(--ga-size-font-sm);
396
+ --tw-font-weight: 600;
397
+ font-weight: 600;
398
+ color: #6F7687;
399
+ }
400
+ }
401
+ .ga-radio-button {
402
+ position: relative;
403
+ display: inline-flex;
404
+ cursor: pointer;
405
+ gap: calc(0.25rem * 2);
406
+ .ga-radio-button__native {
407
+ height: calc(0.25rem * 5);
408
+ width: calc(0.25rem * 5);
409
+ flex-shrink: 0;
410
+ cursor: pointer;
411
+ opacity: 0%;
412
+ &:disabled {
413
+ cursor: default;
414
+ }
415
+ }
416
+ .ga-radio-button__marker {
417
+ pointer-events: none;
418
+ position: absolute;
419
+ top: calc(0.25rem * 0);
420
+ left: calc(0.25rem * 0);
421
+ height: calc(0.25rem * 5);
422
+ width: calc(0.25rem * 5);
423
+ border-radius: calc(infinity * 1px);
424
+ border-style: var(--tw-border-style);
425
+ border-width: 2px;
426
+ border-color: var(--ga-color-border-action);
427
+ color: #fff;
428
+ }
429
+ .ga-radio-button__native:focus-visible ~ .ga-radio-button__marker {
430
+ outline-style: var(--tw-outline-style);
431
+ outline-width: 2px;
432
+ outline-offset: 2px;
433
+ outline-color: var(--ga-color-border-focus);
434
+ }
435
+ .ga-radio-button__native:not(:disabled):hover ~ .ga-radio-button__marker {
436
+ border-color: var(--ga-color-border-action-hover);
437
+ background-color: var(--ga-color-surface-action-hover-2);
438
+ }
439
+ .ga-radio-button__native:checked ~ .ga-radio-button__marker {
440
+ background-color: var(--ga-color-surface-action);
441
+ &::after {
442
+ position: absolute;
443
+ top: calc(1/2 * 100%);
444
+ left: calc(1/2 * 100%);
445
+ display: block;
446
+ height: calc(0.25rem * 2);
447
+ width: calc(0.25rem * 2);
448
+ --tw-translate-x: calc(calc(1/2 * 100%) * -1);
449
+ translate: var(--tw-translate-x) var(--tw-translate-y);
450
+ --tw-translate-y: calc(calc(1/2 * 100%) * -1);
451
+ translate: var(--tw-translate-x) var(--tw-translate-y);
452
+ border-radius: calc(infinity * 1px);
453
+ background-color: #fff;
454
+ --tw-content: '';
455
+ content: var(--tw-content);
456
+ }
457
+ }
458
+ .ga-radio-button__native:not(:disabled):checked:hover ~ .ga-radio-button__marker {
459
+ background-color: var(--ga-color-surface-action-hover);
460
+ }
461
+ .ga-radio-button__native:disabled ~ .ga-radio-button__marker {
462
+ border-color: var(--ga-color-border-disabled);
463
+ background-color: var(--ga-color-surface-disabled);
464
+ color: var(--ga-color-text-disabled);
465
+ }
466
+ .ga-radio-button__label {
467
+ min-height: calc(0.25rem * 4);
468
+ font-size: var(--ga-size-font-md);
469
+ --tw-leading: calc(0.25rem * 5);
470
+ line-height: calc(0.25rem * 5);
471
+ }
472
+ }
473
+ .ga-segmented-control {
474
+ display: inline-flex;
475
+ height: calc(0.25rem * 10);
476
+ align-items: center;
477
+ justify-content: center;
478
+ vertical-align: middle;
479
+ font-size: var(--ga-size-font-md);
480
+ .ga-segmented-control__button {
481
+ display: inline-flex;
482
+ height: calc(0.25rem * 10);
483
+ align-items: center;
484
+ justify-content: center;
485
+ gap: calc(0.25rem * 2);
486
+ border-top-style: var(--tw-border-style);
487
+ border-top-width: 1px;
488
+ border-bottom-style: var(--tw-border-style);
489
+ border-bottom-width: 1px;
490
+ border-left-style: var(--tw-border-style);
491
+ border-left-width: 1px;
492
+ border-color: var(--ga-color-neutral-30);
493
+ background-color: #fff;
494
+ padding-inline: calc(0.25rem * 4);
495
+ vertical-align: middle;
496
+ --tw-leading: calc(0.25rem * 1);
497
+ line-height: calc(0.25rem * 1);
498
+ --tw-font-weight: 500;
499
+ font-weight: 500;
500
+ color: var(--ga-color-cyan-80);
501
+ &:first-of-type {
502
+ border-top-left-radius: var(--ga-radius);
503
+ border-bottom-left-radius: var(--ga-radius);
504
+ }
505
+ &:last-of-type {
506
+ border-top-right-radius: var(--ga-radius);
507
+ border-bottom-right-radius: var(--ga-radius);
508
+ border-right-style: var(--tw-border-style);
509
+ border-right-width: 1px;
510
+ }
511
+ &.ga-segmented-control__button--selected {
512
+ background-color: var(--ga-color-cyan-80);
513
+ --tw-font-weight: 600;
514
+ font-weight: 600;
515
+ color: var(--ga-color-orange-10);
516
+ }
517
+ &:not( .ga-segmented-control__button--selected, .ga-segmented-control__button--disabled, :disabled ) {
518
+ cursor: pointer;
519
+ &:hover {
520
+ background-color: var(--ga-color-surface-action-hover-2);
521
+ }
522
+ &:active {
523
+ background-color: #fff;
524
+ }
525
+ }
526
+ &.ga-segmented-control__button--disabled, &:disabled {
527
+ border-color: var(--ga-color-neutral-30);
528
+ background-color: var(--ga-color-neutral-10);
529
+ color: var(--ga-color-grey-40);
530
+ }
531
+ }
532
+ }
533
+ .ga-text-area {
534
+ display: flex;
535
+ width: calc(0.25rem * 50);
536
+ flex-direction: row;
537
+ align-items: center;
538
+ gap: calc(0.25rem * 2);
539
+ border-radius: var(--ga-radius);
540
+ border-style: var(--tw-border-style);
541
+ border-width: 1px;
542
+ border-color: var(--ga-color-border-primary);
543
+ background-color: var(--ga-color-bg-primary);
544
+ font-size: var(--ga-size-font-md);
545
+ &:has(textarea:hover) {
546
+ border-color: var(--ga-color-border-action-hover);
547
+ }
548
+ &:has(textarea:disabled) {
549
+ border-color: var(--ga-color-border-primary);
550
+ background-color: var(--ga-color-surface-disabled);
551
+ color: var(--ga-color-text-disable-selected);
552
+ }
553
+ &:has(textarea:focus) {
554
+ border-color: var(--ga-color-border-focus);
555
+ outline-style: var(--tw-outline-style);
556
+ outline-width: 1px;
557
+ outline-color: var(--ga-color-border-focus);
558
+ }
559
+ &.ga-text-area--invalid {
560
+ border-color: var(--ga-color-border-error);
561
+ outline-style: var(--tw-outline-style);
562
+ outline-width: 1px;
563
+ outline-color: var(--ga-color-border-error);
564
+ &:has(textarea:not(:placeholder-shown)) {
565
+ background-color: var(--ga-color-surface-error);
566
+ }
567
+ }
568
+ textarea {
569
+ width: 100%;
570
+ min-width: calc(0.25rem * 0);
571
+ padding-inline: calc(0.25rem * 3);
572
+ padding-block: calc(0.25rem * 2);
573
+ --tw-leading: calc(0.25rem * 6);
574
+ line-height: calc(0.25rem * 6);
575
+ --tw-outline-style: none;
576
+ outline-style: none;
577
+ }
578
+ }
579
+ .ga-tooltip {
580
+ position: relative;
581
+ max-width: calc(0.25rem * 100);
582
+ border-radius: var(--ga-radius);
583
+ background-color: var(--ga-color-surface-action-hover);
584
+ padding: calc(0.25rem * 2);
585
+ font-size: var(--ga-size-font-md);
586
+ color: var(--ga-color-text-on-action);
587
+ &.ga-tooltip--top-start, &.ga-tooltip--top-center, &.ga-tooltip--top-end, &.ga-tooltip--bottom-start, &.ga-tooltip--bottom-center, &.ga-tooltip--bottom-end, &.ga-tooltip--left-start, &.ga-tooltip--left-center, &.ga-tooltip--left-end, &.ga-tooltip--right-start, &.ga-tooltip--right-center, &.ga-tooltip--right-end {
588
+ &::before {
589
+ content: var(--tw-content);
590
+ position: absolute;
591
+ }
592
+ &::before {
593
+ content: var(--tw-content);
594
+ --tw-content: '';
595
+ content: var(--tw-content);
596
+ }
597
+ }
598
+ &.ga-tooltip--top-start, &.ga-tooltip--top-center, &.ga-tooltip--top-end {
599
+ margin-bottom: calc(0.25rem * 2);
600
+ }
601
+ &.ga-tooltip--bottom-start, &.ga-tooltip--bottom-center, &.ga-tooltip--bottom-end {
602
+ margin-top: calc(0.25rem * 2);
603
+ }
604
+ &.ga-tooltip--left-start, &.ga-tooltip--left-center, &.ga-tooltip--left-end {
605
+ margin-right: calc(0.25rem * 2);
606
+ }
607
+ &.ga-tooltip--right-start, &.ga-tooltip--right-center, &.ga-tooltip--right-end {
608
+ margin-left: calc(0.25rem * 2);
609
+ }
610
+ &.ga-tooltip--top-start::before, &.ga-tooltip--top-center::before, &.ga-tooltip--top-end::before {
611
+ bottom: calc(0.25rem * -2);
612
+ border-inline-style: var(--tw-border-style);
613
+ border-inline-width: 8px;
614
+ border-top-style: var(--tw-border-style);
615
+ border-top-width: 8px;
616
+ border-inline-color: transparent;
617
+ border-top-color: var(--ga-color-surface-action-hover);
618
+ }
619
+ &.ga-tooltip--bottom-start::before, &.ga-tooltip--bottom-center::before, &.ga-tooltip--bottom-end::before {
620
+ top: calc(0.25rem * -2);
621
+ border-inline-style: var(--tw-border-style);
622
+ border-inline-width: 8px;
623
+ border-bottom-style: var(--tw-border-style);
624
+ border-bottom-width: 8px;
625
+ border-inline-color: transparent;
626
+ border-bottom-color: var(--ga-color-surface-action-hover);
627
+ }
628
+ &.ga-tooltip--top-start::before, &.ga-tooltip--bottom-start::before {
629
+ left: calc(0.25rem * 4);
630
+ }
631
+ &.ga-tooltip--top-center::before, &.ga-tooltip--bottom-center::before {
632
+ left: calc(1/2 * 100%);
633
+ --tw-translate-x: calc(calc(1/2 * 100%) * -1);
634
+ translate: var(--tw-translate-x) var(--tw-translate-y);
635
+ }
636
+ &.ga-tooltip--top-end::before, &.ga-tooltip--bottom-end::before {
637
+ right: calc(0.25rem * 4);
638
+ }
639
+ &.ga-tooltip--left-start::before, &.ga-tooltip--left-center::before, &.ga-tooltip--left-end::before {
640
+ right: calc(0.25rem * -2);
641
+ border-block-style: var(--tw-border-style);
642
+ border-block-width: 8px;
643
+ border-left-style: var(--tw-border-style);
644
+ border-left-width: 8px;
645
+ border-block-color: transparent;
646
+ border-left-color: var(--ga-color-surface-action-hover);
647
+ }
648
+ &.ga-tooltip--right-start::before, &.ga-tooltip--right-center::before, &.ga-tooltip--right-end::before {
649
+ left: calc(0.25rem * -2);
650
+ border-block-style: var(--tw-border-style);
651
+ border-block-width: 8px;
652
+ border-right-style: var(--tw-border-style);
653
+ border-right-width: 8px;
654
+ border-block-color: transparent;
655
+ border-right-color: var(--ga-color-surface-action-hover);
656
+ }
657
+ &.ga-tooltip--left-start::before, &.ga-tooltip--right-start::before {
658
+ top: calc(0.25rem * 4);
659
+ }
660
+ &.ga-tooltip--left-center::before, &.ga-tooltip--right-center::before {
661
+ top: calc(1/2 * 100%);
662
+ --tw-translate-y: calc(calc(1/2 * 100%) * -1);
663
+ translate: var(--tw-translate-x) var(--tw-translate-y);
664
+ }
665
+ &.ga-tooltip--left-end::before, &.ga-tooltip--right-end::before {
666
+ bottom: calc(0.25rem * 4);
667
+ }
668
+ .ga-tooltip__title {
669
+ --tw-font-weight: 600;
670
+ font-weight: 600;
671
+ }
672
+ }
673
+ @property --tw-border-style {
674
+ syntax: "*";
675
+ inherits: false;
676
+ initial-value: solid;
677
+ }
678
+ @property --tw-font-weight {
679
+ syntax: "*";
680
+ inherits: false;
681
+ }
682
+ @property --tw-leading {
683
+ syntax: "*";
684
+ inherits: false;
685
+ }
686
+ @property --tw-shadow {
687
+ syntax: "*";
688
+ inherits: false;
689
+ initial-value: 0 0 #0000;
690
+ }
691
+ @property --tw-shadow-color {
692
+ syntax: "*";
693
+ inherits: false;
694
+ }
695
+ @property --tw-inset-shadow {
696
+ syntax: "*";
697
+ inherits: false;
698
+ initial-value: 0 0 #0000;
699
+ }
700
+ @property --tw-inset-shadow-color {
701
+ syntax: "*";
702
+ inherits: false;
703
+ }
704
+ @property --tw-ring-color {
705
+ syntax: "*";
706
+ inherits: false;
707
+ }
708
+ @property --tw-ring-shadow {
709
+ syntax: "*";
710
+ inherits: false;
711
+ initial-value: 0 0 #0000;
712
+ }
713
+ @property --tw-inset-ring-color {
714
+ syntax: "*";
715
+ inherits: false;
716
+ }
717
+ @property --tw-inset-ring-shadow {
718
+ syntax: "*";
719
+ inherits: false;
720
+ initial-value: 0 0 #0000;
721
+ }
722
+ @property --tw-ring-inset {
723
+ syntax: "*";
724
+ inherits: false;
725
+ }
726
+ @property --tw-ring-offset-width {
727
+ syntax: "<length>";
728
+ inherits: false;
729
+ initial-value: 0px;
730
+ }
731
+ @property --tw-ring-offset-color {
732
+ syntax: "*";
733
+ inherits: false;
734
+ initial-value: #fff;
735
+ }
736
+ @property --tw-ring-offset-shadow {
737
+ syntax: "*";
738
+ inherits: false;
739
+ initial-value: 0 0 #0000;
740
+ }
741
+ @property --tw-outline-style {
742
+ syntax: "*";
743
+ inherits: false;
744
+ initial-value: solid;
745
+ }
746
+ @property --tw-translate-x {
747
+ syntax: "*";
748
+ inherits: false;
749
+ initial-value: 0;
750
+ }
751
+ @property --tw-translate-y {
752
+ syntax: "*";
753
+ inherits: false;
754
+ initial-value: 0;
755
+ }
756
+ @property --tw-translate-z {
757
+ syntax: "*";
758
+ inherits: false;
759
+ initial-value: 0;
760
+ }
761
+ @property --tw-content {
762
+ syntax: "*";
763
+ inherits: false;
764
+ initial-value: "";
765
+ }