@pathscale/ui 1.2.9 → 1.2.11

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 (125) hide show
  1. package/LICENSE +22 -22
  2. package/README.md +59 -59
  3. package/dist/components/accordion/Accordion.css +158 -158
  4. package/dist/components/alert/Alert.css +116 -116
  5. package/dist/components/avatar/Avatar.css +124 -124
  6. package/dist/components/badge/Badge.css +164 -164
  7. package/dist/components/breadcrumbs/Breadcrumbs.css +63 -63
  8. package/dist/components/button/Button.css +194 -194
  9. package/dist/components/button-group/ButtonGroup.css +117 -117
  10. package/dist/components/calendar/Calendar.css +258 -258
  11. package/dist/components/card/Card.css +110 -110
  12. package/dist/components/chatbubble/ChatBubble.css +164 -164
  13. package/dist/components/checkbox/Checkbox.css +183 -183
  14. package/dist/components/checkbox-group/CheckboxGroup.css +10 -10
  15. package/dist/components/chip/Chip.css +197 -197
  16. package/dist/components/close-button/CloseButton.css +81 -81
  17. package/dist/components/color-area/ColorArea.css +54 -54
  18. package/dist/components/color-field/ColorField.css +88 -88
  19. package/dist/components/color-picker/ColorPicker.css +28 -28
  20. package/dist/components/color-slider/ColorSlider.css +57 -57
  21. package/dist/components/color-swatch/ColorSwatch.css +84 -84
  22. package/dist/components/color-swatch-picker/ColorSwatchPicker.css +12 -12
  23. package/dist/components/color-wheel-flower/ColorWheelFlower.css +147 -147
  24. package/dist/components/combo-box/ComboBox.css +344 -344
  25. package/dist/components/date-field/DateField.css +215 -215
  26. package/dist/components/date-picker/DatePicker.css +143 -143
  27. package/dist/components/date-range-picker/DateRangePicker.css +149 -149
  28. package/dist/components/description/Description.css +10 -10
  29. package/dist/components/disclosure/Disclosure.css +84 -84
  30. package/dist/components/disclosure-group/DisclosureGroup.css +9 -9
  31. package/dist/components/drawer/Drawer.css +463 -463
  32. package/dist/components/dropdown/Dropdown.css +211 -211
  33. package/dist/components/empty-state/EmptyState.css +39 -39
  34. package/dist/components/error-message/ErrorMessage.css +20 -20
  35. package/dist/components/field-error/FieldError.css +27 -27
  36. package/dist/components/fieldset/Fieldset.css +30 -30
  37. package/dist/components/flex/Flex.css +5 -5
  38. package/dist/components/floating-dock/FloatingDock.css +208 -208
  39. package/dist/components/footer/footer.css +51 -51
  40. package/dist/components/form/Form.css +5 -5
  41. package/dist/components/glass-panel/GlassPanel.css +359 -359
  42. package/dist/components/glow-card/GlowCard.css +100 -100
  43. package/dist/components/grid/Grid.css +5 -5
  44. package/dist/components/header/Header.css +13 -13
  45. package/dist/components/icon/Icon.css +10 -10
  46. package/dist/components/immersive-landing/ImmersiveLanding.css +565 -565
  47. package/dist/components/input/Input.css +155 -155
  48. package/dist/components/input-group/InputGroup.css +172 -172
  49. package/dist/components/input-otp/InputOTP.css +170 -170
  50. package/dist/components/kbd/Kbd.css +60 -60
  51. package/dist/components/label/Label.css +30 -30
  52. package/dist/components/language-switcher/LanguageSwitcher.css +56 -56
  53. package/dist/components/link/Link.css +131 -131
  54. package/dist/components/list-box/ListBox.css +148 -148
  55. package/dist/components/live-chat/LiveChat.css +324 -324
  56. package/dist/components/menu/Menu.css +199 -199
  57. package/dist/components/metal-border/MetalBorder.classes.d.ts +26 -0
  58. package/dist/components/metal-border/MetalBorder.classes.js +27 -0
  59. package/dist/components/metal-border/MetalBorder.css +40 -0
  60. package/dist/components/metal-border/MetalBorder.d.ts +20 -0
  61. package/dist/components/metal-border/MetalBorder.js +322 -0
  62. package/dist/components/metal-border/engine/color.d.ts +4 -0
  63. package/dist/components/metal-border/engine/color.js +69 -0
  64. package/dist/components/metal-border/engine/glow/geometry.d.ts +35 -0
  65. package/dist/components/metal-border/engine/glow/geometry.js +176 -0
  66. package/dist/components/metal-border/engine/glow/glow.d.ts +38 -0
  67. package/dist/components/metal-border/engine/glow/glow.js +246 -0
  68. package/dist/components/metal-border/engine/index.d.ts +4 -0
  69. package/dist/components/metal-border/engine/index.js +2 -0
  70. package/dist/components/metal-border/engine/perfConfig.d.ts +9 -0
  71. package/dist/components/metal-border/engine/perfConfig.js +10 -0
  72. package/dist/components/metal-border/engine/presets.d.ts +57 -0
  73. package/dist/components/metal-border/engine/presets.js +214 -0
  74. package/dist/components/metal-border/engine/renderer/core.d.ts +69 -0
  75. package/dist/components/metal-border/engine/renderer/core.js +156 -0
  76. package/dist/components/metal-border/engine/renderer/loop.d.ts +30 -0
  77. package/dist/components/metal-border/engine/renderer/loop.js +248 -0
  78. package/dist/components/metal-border/engine/renderer/sampling.d.ts +14 -0
  79. package/dist/components/metal-border/engine/renderer/sampling.js +145 -0
  80. package/dist/components/metal-border/engine/shaders.d.ts +36 -0
  81. package/dist/components/metal-border/engine/shaders.js +215 -0
  82. package/dist/components/metal-border/engine/tween.d.ts +17 -0
  83. package/dist/components/metal-border/engine/tween.js +28 -0
  84. package/dist/components/metal-border/index.d.ts +2 -0
  85. package/dist/components/metal-border/index.js +1 -0
  86. package/dist/components/meter/Meter.css +89 -89
  87. package/dist/components/modal/Modal.css +320 -320
  88. package/dist/components/navbar/Navbar.css +110 -110
  89. package/dist/components/noise-background/NoiseBackground.css +66 -66
  90. package/dist/components/number-field/NumberField.css +198 -198
  91. package/dist/components/pagination/Pagination.css +121 -121
  92. package/dist/components/popover/Popover.css +117 -117
  93. package/dist/components/progress-bar/ProgressBar.css +104 -104
  94. package/dist/components/progress-circle/ProgressCircle.css +82 -82
  95. package/dist/components/radio/Radio.css +129 -129
  96. package/dist/components/radio-group/RadioGroup.css +58 -58
  97. package/dist/components/range-calendar/RangeCalendar.css +51 -51
  98. package/dist/components/scroll-shadow/ScrollShadow.css +93 -93
  99. package/dist/components/search-field/SearchField.css +183 -183
  100. package/dist/components/select/Select.css +284 -284
  101. package/dist/components/separator/Separator.css +35 -35
  102. package/dist/components/skeleton/Skeleton.css +95 -95
  103. package/dist/components/slider/Slider.css +122 -122
  104. package/dist/components/spinner/Spinner.css +131 -131
  105. package/dist/components/surface/Surface.css +37 -37
  106. package/dist/components/table/Table.css +426 -426
  107. package/dist/components/tabs/Tabs.css +203 -203
  108. package/dist/components/tag/Tag.css +121 -121
  109. package/dist/components/tag-group/TagGroup.css +22 -22
  110. package/dist/components/text/Text.css +66 -66
  111. package/dist/components/text-area/TextArea.css +95 -95
  112. package/dist/components/text-field/TextField.css +33 -33
  113. package/dist/components/time-field/TimeField.css +215 -215
  114. package/dist/components/toast/Toast.css +344 -344
  115. package/dist/components/toggle/Toggle.css +237 -237
  116. package/dist/components/toolbar/Toolbar.css +55 -55
  117. package/dist/components/tooltip/Tooltip.css +153 -153
  118. package/dist/index.css +74 -74
  119. package/dist/index.d.ts +2 -0
  120. package/dist/index.js +1 -0
  121. package/dist/purge-manifest.json +15100 -14847
  122. package/dist/styles/base/index.css +43 -43
  123. package/dist/styles/themes/dark.css +141 -141
  124. package/dist/styles/themes/light.css +143 -143
  125. package/package.json +3 -3
@@ -1,324 +1,324 @@
1
- @layer components {
2
- .live-chat-bubble {
3
- position: fixed;
4
- bottom: 1.25rem;
5
- z-index: 50;
6
- width: 3rem;
7
- height: 3rem;
8
- display: flex;
9
- align-items: center;
10
- justify-content: center;
11
- border-radius: 9999px;
12
- border: 0;
13
- background: var(--color-primary);
14
- color: var(--color-primary-content);
15
- box-shadow: 0 10px 20px color-mix(in oklab, var(--color-base-content) 16%, transparent);
16
- transition:
17
- transform 200ms ease,
18
- box-shadow 200ms ease,
19
- opacity 200ms ease;
20
- }
21
-
22
- .live-chat-bubble:hover {
23
- box-shadow: 0 14px 28px color-mix(in oklab, var(--color-base-content) 22%, transparent);
24
- }
25
-
26
- .live-chat-bubble:active {
27
- transform: scale(0.95);
28
- }
29
-
30
- .live-chat-bubble:focus-visible {
31
- outline: 2px solid color-mix(in oklab, var(--color-primary) 72%, transparent);
32
- outline-offset: 2px;
33
- }
34
-
35
- .live-chat-bubble--right {
36
- right: 1rem;
37
- }
38
-
39
- .live-chat-bubble--left {
40
- left: 1rem;
41
- }
42
-
43
- .live-chat-bubble__icon {
44
- width: 1.25rem;
45
- height: 1.25rem;
46
- }
47
-
48
- .live-chat-bubble__badge {
49
- position: absolute;
50
- top: -0.25rem;
51
- right: -0.25rem;
52
- width: 1.25rem;
53
- height: 1.25rem;
54
- border-radius: 9999px;
55
- display: flex;
56
- align-items: center;
57
- justify-content: center;
58
- background: var(--color-error);
59
- color: var(--color-error-content);
60
- font-size: 0.75rem;
61
- font-weight: 700;
62
- animation: live-chat-pulse 1s ease-in-out infinite;
63
- }
64
-
65
- .live-chat-bubble__ping {
66
- pointer-events: none;
67
- position: absolute;
68
- inset: 0;
69
- border-radius: 9999px;
70
- background: var(--color-primary);
71
- opacity: 0.2;
72
- animation: live-chat-ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;
73
- transition: opacity 200ms ease;
74
- }
75
-
76
- .live-chat-bubble:hover .live-chat-bubble__ping {
77
- opacity: 0;
78
- }
79
-
80
- .live-chat-panel {
81
- position: fixed;
82
- inset: 0;
83
- z-index: 51;
84
- width: 100%;
85
- height: 100%;
86
- display: flex;
87
- flex-direction: column;
88
- overflow: hidden;
89
- background: var(--color-base-100);
90
- box-shadow: 0 30px 70px color-mix(in oklab, var(--color-base-content) 18%, transparent);
91
- }
92
-
93
- .live-chat-panel__header {
94
- flex-shrink: 0;
95
- display: flex;
96
- align-items: center;
97
- justify-content: space-between;
98
- padding: 1rem;
99
- background: var(--color-primary);
100
- color: var(--color-primary-content);
101
- }
102
-
103
- .live-chat-panel__header-title-wrap {
104
- display: flex;
105
- align-items: center;
106
- gap: 0.5rem;
107
- }
108
-
109
- .live-chat-panel__header-icon,
110
- .live-chat-panel__close-icon {
111
- width: 1.25rem;
112
- height: 1.25rem;
113
- }
114
-
115
- .live-chat-panel__header-title {
116
- font-weight: 600;
117
- font-size: 1.125rem;
118
- }
119
-
120
- .live-chat-panel__close-button {
121
- display: inline-flex;
122
- align-items: center;
123
- justify-content: center;
124
- border-radius: 0.5rem;
125
- padding: 0.25rem;
126
- transition: background-color 150ms ease;
127
- }
128
-
129
- .live-chat-panel__close-button:hover {
130
- background: color-mix(in oklab, var(--color-primary-content) 10%, transparent);
131
- }
132
-
133
- .live-chat-panel__messages {
134
- flex: 1;
135
- overflow-y: auto;
136
- padding: 1rem;
137
- display: flex;
138
- flex-direction: column;
139
- gap: 1rem;
140
- }
141
-
142
- .live-chat-panel__row {
143
- width: 100%;
144
- display: flex;
145
- gap: 0.5rem;
146
- }
147
-
148
- .live-chat-panel__row--user {
149
- flex-direction: row-reverse;
150
- }
151
-
152
- .live-chat-panel__row--agent {
153
- flex-direction: row;
154
- }
155
-
156
- .live-chat-panel__avatar {
157
- flex-shrink: 0;
158
- width: 2rem;
159
- height: 2rem;
160
- border-radius: 9999px;
161
- display: flex;
162
- align-items: center;
163
- justify-content: center;
164
- font-size: 0.75rem;
165
- font-weight: 600;
166
- }
167
-
168
- .live-chat-panel__avatar--user {
169
- background: var(--color-primary);
170
- color: var(--color-primary-content);
171
- }
172
-
173
- .live-chat-panel__avatar--agent {
174
- background: var(--color-base-300);
175
- color: var(--color-base-content);
176
- }
177
-
178
- .live-chat-panel__message-column {
179
- max-width: 75%;
180
- display: flex;
181
- flex-direction: column;
182
- }
183
-
184
- .live-chat-panel__message-column--user {
185
- align-items: flex-end;
186
- }
187
-
188
- .live-chat-panel__message-column--agent {
189
- align-items: flex-start;
190
- }
191
-
192
- .live-chat-panel__message-bubble {
193
- padding: 0.5rem 0.75rem;
194
- border-radius: 1rem;
195
- }
196
-
197
- .live-chat-panel__message-bubble--user {
198
- background: var(--color-primary);
199
- color: var(--color-primary-content);
200
- border-top-right-radius: 0.125rem;
201
- }
202
-
203
- .live-chat-panel__message-bubble--agent {
204
- background: var(--color-base-200);
205
- color: var(--color-base-content);
206
- border-top-left-radius: 0.125rem;
207
- }
208
-
209
- .live-chat-panel__message-text {
210
- font-size: 0.875rem;
211
- line-height: 1.5;
212
- white-space: pre-wrap;
213
- word-break: break-word;
214
- }
215
-
216
- .live-chat-panel__timestamp {
217
- margin-top: 0.25rem;
218
- padding-inline: 0.25rem;
219
- color: color-mix(in oklab, var(--color-base-content) 50%, transparent);
220
- font-size: 0.75rem;
221
- }
222
-
223
- .live-chat-panel__empty {
224
- height: 100%;
225
- display: flex;
226
- align-items: center;
227
- justify-content: center;
228
- color: color-mix(in oklab, var(--color-base-content) 50%, transparent);
229
- font-size: 0.875rem;
230
- }
231
-
232
- .live-chat-panel__input-area {
233
- flex-shrink: 0;
234
- border-top: 1px solid var(--color-base-300);
235
- background: var(--color-base-100);
236
- padding: 0.75rem;
237
- display: flex;
238
- gap: 0.5rem;
239
- }
240
-
241
- .live-chat-panel__input {
242
- flex: 1;
243
- }
244
-
245
- .live-chat-panel__send-button {
246
- padding: 0.5rem 1rem;
247
- }
248
-
249
- .live-chat-panel__spinner {
250
- width: 1rem;
251
- height: 1rem;
252
- border-radius: 9999px;
253
- display: inline-block;
254
- border: 2px solid color-mix(in oklab, var(--color-primary-content) 30%, transparent);
255
- border-top-color: var(--color-primary-content);
256
- animation: live-chat-spin 0.7s linear infinite;
257
- }
258
-
259
- @media (min-width: 640px) {
260
- .live-chat-bubble {
261
- width: 3.5rem;
262
- height: 3.5rem;
263
- }
264
-
265
- .live-chat-bubble--right {
266
- right: 1rem;
267
- }
268
-
269
- .live-chat-bubble--left {
270
- left: 1rem;
271
- }
272
-
273
- .live-chat-bubble__icon {
274
- width: 1.5rem;
275
- height: 1.5rem;
276
- }
277
-
278
- .live-chat-panel {
279
- inset: auto;
280
- bottom: 5rem;
281
- right: 1rem;
282
- width: 24rem;
283
- height: 70vh;
284
- max-height: 50rem;
285
- min-height: 26.25rem;
286
- border-radius: 1rem;
287
- }
288
- }
289
-
290
- @media (min-width: 768px) {
291
- .live-chat-panel {
292
- bottom: 6rem;
293
- right: 1.5rem;
294
- width: 25rem;
295
- height: 75vh;
296
- }
297
- }
298
-
299
- @media (min-width: 1024px) {
300
- .live-chat-panel {
301
- height: 80vh;
302
- }
303
- }
304
-
305
- @keyframes live-chat-spin {
306
- to {
307
- transform: rotate(360deg);
308
- }
309
- }
310
-
311
- @keyframes live-chat-ping {
312
- 75%,
313
- 100% {
314
- transform: scale(1.7);
315
- opacity: 0;
316
- }
317
- }
318
-
319
- @keyframes live-chat-pulse {
320
- 50% {
321
- opacity: 0.8;
322
- }
323
- }
324
- }
1
+ @layer components {
2
+ .live-chat-bubble {
3
+ position: fixed;
4
+ bottom: 1.25rem;
5
+ z-index: 50;
6
+ width: 3rem;
7
+ height: 3rem;
8
+ display: flex;
9
+ align-items: center;
10
+ justify-content: center;
11
+ border-radius: 9999px;
12
+ border: 0;
13
+ background: var(--color-primary);
14
+ color: var(--color-primary-content);
15
+ box-shadow: 0 10px 20px color-mix(in oklab, var(--color-base-content) 16%, transparent);
16
+ transition:
17
+ transform 200ms ease,
18
+ box-shadow 200ms ease,
19
+ opacity 200ms ease;
20
+ }
21
+
22
+ .live-chat-bubble:hover {
23
+ box-shadow: 0 14px 28px color-mix(in oklab, var(--color-base-content) 22%, transparent);
24
+ }
25
+
26
+ .live-chat-bubble:active {
27
+ transform: scale(0.95);
28
+ }
29
+
30
+ .live-chat-bubble:focus-visible {
31
+ outline: 2px solid color-mix(in oklab, var(--color-primary) 72%, transparent);
32
+ outline-offset: 2px;
33
+ }
34
+
35
+ .live-chat-bubble--right {
36
+ right: 1rem;
37
+ }
38
+
39
+ .live-chat-bubble--left {
40
+ left: 1rem;
41
+ }
42
+
43
+ .live-chat-bubble__icon {
44
+ width: 1.25rem;
45
+ height: 1.25rem;
46
+ }
47
+
48
+ .live-chat-bubble__badge {
49
+ position: absolute;
50
+ top: -0.25rem;
51
+ right: -0.25rem;
52
+ width: 1.25rem;
53
+ height: 1.25rem;
54
+ border-radius: 9999px;
55
+ display: flex;
56
+ align-items: center;
57
+ justify-content: center;
58
+ background: var(--color-error);
59
+ color: var(--color-error-content);
60
+ font-size: 0.75rem;
61
+ font-weight: 700;
62
+ animation: live-chat-pulse 1s ease-in-out infinite;
63
+ }
64
+
65
+ .live-chat-bubble__ping {
66
+ pointer-events: none;
67
+ position: absolute;
68
+ inset: 0;
69
+ border-radius: 9999px;
70
+ background: var(--color-primary);
71
+ opacity: 0.2;
72
+ animation: live-chat-ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;
73
+ transition: opacity 200ms ease;
74
+ }
75
+
76
+ .live-chat-bubble:hover .live-chat-bubble__ping {
77
+ opacity: 0;
78
+ }
79
+
80
+ .live-chat-panel {
81
+ position: fixed;
82
+ inset: 0;
83
+ z-index: 51;
84
+ width: 100%;
85
+ height: 100%;
86
+ display: flex;
87
+ flex-direction: column;
88
+ overflow: hidden;
89
+ background: var(--color-base-100);
90
+ box-shadow: 0 30px 70px color-mix(in oklab, var(--color-base-content) 18%, transparent);
91
+ }
92
+
93
+ .live-chat-panel__header {
94
+ flex-shrink: 0;
95
+ display: flex;
96
+ align-items: center;
97
+ justify-content: space-between;
98
+ padding: 1rem;
99
+ background: var(--color-primary);
100
+ color: var(--color-primary-content);
101
+ }
102
+
103
+ .live-chat-panel__header-title-wrap {
104
+ display: flex;
105
+ align-items: center;
106
+ gap: 0.5rem;
107
+ }
108
+
109
+ .live-chat-panel__header-icon,
110
+ .live-chat-panel__close-icon {
111
+ width: 1.25rem;
112
+ height: 1.25rem;
113
+ }
114
+
115
+ .live-chat-panel__header-title {
116
+ font-weight: 600;
117
+ font-size: 1.125rem;
118
+ }
119
+
120
+ .live-chat-panel__close-button {
121
+ display: inline-flex;
122
+ align-items: center;
123
+ justify-content: center;
124
+ border-radius: 0.5rem;
125
+ padding: 0.25rem;
126
+ transition: background-color 150ms ease;
127
+ }
128
+
129
+ .live-chat-panel__close-button:hover {
130
+ background: color-mix(in oklab, var(--color-primary-content) 10%, transparent);
131
+ }
132
+
133
+ .live-chat-panel__messages {
134
+ flex: 1;
135
+ overflow-y: auto;
136
+ padding: 1rem;
137
+ display: flex;
138
+ flex-direction: column;
139
+ gap: 1rem;
140
+ }
141
+
142
+ .live-chat-panel__row {
143
+ width: 100%;
144
+ display: flex;
145
+ gap: 0.5rem;
146
+ }
147
+
148
+ .live-chat-panel__row--user {
149
+ flex-direction: row-reverse;
150
+ }
151
+
152
+ .live-chat-panel__row--agent {
153
+ flex-direction: row;
154
+ }
155
+
156
+ .live-chat-panel__avatar {
157
+ flex-shrink: 0;
158
+ width: 2rem;
159
+ height: 2rem;
160
+ border-radius: 9999px;
161
+ display: flex;
162
+ align-items: center;
163
+ justify-content: center;
164
+ font-size: 0.75rem;
165
+ font-weight: 600;
166
+ }
167
+
168
+ .live-chat-panel__avatar--user {
169
+ background: var(--color-primary);
170
+ color: var(--color-primary-content);
171
+ }
172
+
173
+ .live-chat-panel__avatar--agent {
174
+ background: var(--color-base-300);
175
+ color: var(--color-base-content);
176
+ }
177
+
178
+ .live-chat-panel__message-column {
179
+ max-width: 75%;
180
+ display: flex;
181
+ flex-direction: column;
182
+ }
183
+
184
+ .live-chat-panel__message-column--user {
185
+ align-items: flex-end;
186
+ }
187
+
188
+ .live-chat-panel__message-column--agent {
189
+ align-items: flex-start;
190
+ }
191
+
192
+ .live-chat-panel__message-bubble {
193
+ padding: 0.5rem 0.75rem;
194
+ border-radius: 1rem;
195
+ }
196
+
197
+ .live-chat-panel__message-bubble--user {
198
+ background: var(--color-primary);
199
+ color: var(--color-primary-content);
200
+ border-top-right-radius: 0.125rem;
201
+ }
202
+
203
+ .live-chat-panel__message-bubble--agent {
204
+ background: var(--color-base-200);
205
+ color: var(--color-base-content);
206
+ border-top-left-radius: 0.125rem;
207
+ }
208
+
209
+ .live-chat-panel__message-text {
210
+ font-size: 0.875rem;
211
+ line-height: 1.5;
212
+ white-space: pre-wrap;
213
+ word-break: break-word;
214
+ }
215
+
216
+ .live-chat-panel__timestamp {
217
+ margin-top: 0.25rem;
218
+ padding-inline: 0.25rem;
219
+ color: color-mix(in oklab, var(--color-base-content) 50%, transparent);
220
+ font-size: 0.75rem;
221
+ }
222
+
223
+ .live-chat-panel__empty {
224
+ height: 100%;
225
+ display: flex;
226
+ align-items: center;
227
+ justify-content: center;
228
+ color: color-mix(in oklab, var(--color-base-content) 50%, transparent);
229
+ font-size: 0.875rem;
230
+ }
231
+
232
+ .live-chat-panel__input-area {
233
+ flex-shrink: 0;
234
+ border-top: 1px solid var(--color-base-300);
235
+ background: var(--color-base-100);
236
+ padding: 0.75rem;
237
+ display: flex;
238
+ gap: 0.5rem;
239
+ }
240
+
241
+ .live-chat-panel__input {
242
+ flex: 1;
243
+ }
244
+
245
+ .live-chat-panel__send-button {
246
+ padding: 0.5rem 1rem;
247
+ }
248
+
249
+ .live-chat-panel__spinner {
250
+ width: 1rem;
251
+ height: 1rem;
252
+ border-radius: 9999px;
253
+ display: inline-block;
254
+ border: 2px solid color-mix(in oklab, var(--color-primary-content) 30%, transparent);
255
+ border-top-color: var(--color-primary-content);
256
+ animation: live-chat-spin 0.7s linear infinite;
257
+ }
258
+
259
+ @media (min-width: 640px) {
260
+ .live-chat-bubble {
261
+ width: 3.5rem;
262
+ height: 3.5rem;
263
+ }
264
+
265
+ .live-chat-bubble--right {
266
+ right: 1rem;
267
+ }
268
+
269
+ .live-chat-bubble--left {
270
+ left: 1rem;
271
+ }
272
+
273
+ .live-chat-bubble__icon {
274
+ width: 1.5rem;
275
+ height: 1.5rem;
276
+ }
277
+
278
+ .live-chat-panel {
279
+ inset: auto;
280
+ bottom: 5rem;
281
+ right: 1rem;
282
+ width: 24rem;
283
+ height: 70vh;
284
+ max-height: 50rem;
285
+ min-height: 26.25rem;
286
+ border-radius: 1rem;
287
+ }
288
+ }
289
+
290
+ @media (min-width: 768px) {
291
+ .live-chat-panel {
292
+ bottom: 6rem;
293
+ right: 1.5rem;
294
+ width: 25rem;
295
+ height: 75vh;
296
+ }
297
+ }
298
+
299
+ @media (min-width: 1024px) {
300
+ .live-chat-panel {
301
+ height: 80vh;
302
+ }
303
+ }
304
+
305
+ @keyframes live-chat-spin {
306
+ to {
307
+ transform: rotate(360deg);
308
+ }
309
+ }
310
+
311
+ @keyframes live-chat-ping {
312
+ 75%,
313
+ 100% {
314
+ transform: scale(1.7);
315
+ opacity: 0;
316
+ }
317
+ }
318
+
319
+ @keyframes live-chat-pulse {
320
+ 50% {
321
+ opacity: 0.8;
322
+ }
323
+ }
324
+ }