paddle_rails 0.1.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.
Files changed (71) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.md +294 -0
  4. data/Rakefile +6 -0
  5. data/app/assets/stylesheets/paddle_rails/application.css +16 -0
  6. data/app/assets/stylesheets/paddle_rails/tailwind.css +1824 -0
  7. data/app/assets/tailwind/application.css +1 -0
  8. data/app/controllers/concerns/paddle_rails/paddle_checkout_error_handler.rb +89 -0
  9. data/app/controllers/concerns/paddle_rails/subscription_owner.rb +16 -0
  10. data/app/controllers/paddle_rails/application_controller.rb +21 -0
  11. data/app/controllers/paddle_rails/checkout_controller.rb +121 -0
  12. data/app/controllers/paddle_rails/dashboard_controller.rb +37 -0
  13. data/app/controllers/paddle_rails/onboarding_controller.rb +55 -0
  14. data/app/controllers/paddle_rails/payments_controller.rb +62 -0
  15. data/app/controllers/paddle_rails/subscriptions_controller.rb +92 -0
  16. data/app/controllers/paddle_rails/webhooks_controller.rb +78 -0
  17. data/app/helpers/paddle_rails/application_helper.rb +121 -0
  18. data/app/helpers/paddle_rails/subscription_owner_helper.rb +14 -0
  19. data/app/jobs/paddle_rails/application_job.rb +4 -0
  20. data/app/jobs/paddle_rails/process_webhook_job.rb +38 -0
  21. data/app/mailers/paddle_rails/application_mailer.rb +6 -0
  22. data/app/models/concerns/paddle_rails/subscribable.rb +46 -0
  23. data/app/models/paddle_rails/application_record.rb +5 -0
  24. data/app/models/paddle_rails/payment.rb +43 -0
  25. data/app/models/paddle_rails/price.rb +25 -0
  26. data/app/models/paddle_rails/product.rb +16 -0
  27. data/app/models/paddle_rails/subscription.rb +87 -0
  28. data/app/models/paddle_rails/subscription_item.rb +35 -0
  29. data/app/models/paddle_rails/webhook_event.rb +51 -0
  30. data/app/presenters/paddle_rails/payment_presenter.rb +96 -0
  31. data/app/presenters/paddle_rails/product_presenter.rb +178 -0
  32. data/app/presenters/paddle_rails/subscription_presenter.rb +145 -0
  33. data/app/views/layouts/paddle_rails/application.html.erb +170 -0
  34. data/app/views/paddle_rails/checkout/show.html.erb +128 -0
  35. data/app/views/paddle_rails/dashboard/_change_plan.html.erb +286 -0
  36. data/app/views/paddle_rails/dashboard/_current_subscription.html.erb +66 -0
  37. data/app/views/paddle_rails/dashboard/_payment_history.html.erb +79 -0
  38. data/app/views/paddle_rails/dashboard/_payment_method.html.erb +48 -0
  39. data/app/views/paddle_rails/dashboard/show.html.erb +47 -0
  40. data/app/views/paddle_rails/onboarding/show.html.erb +100 -0
  41. data/app/views/paddle_rails/shared/configuration_error.html.erb +94 -0
  42. data/config/routes.rb +13 -0
  43. data/db/migrate/20251124180624_create_paddle_rails_subscription_plans.rb +18 -0
  44. data/db/migrate/20251124180817_create_paddle_rails_subscription_prices.rb +26 -0
  45. data/db/migrate/20251127221947_create_paddle_rails_webhook_events.rb +19 -0
  46. data/db/migrate/20251128135831_create_paddle_rails_subscriptions.rb +21 -0
  47. data/db/migrate/20251128142327_create_paddle_rails_subscription_items.rb +16 -0
  48. data/db/migrate/20251128151334_remove_paddle_price_id_from_subscriptions.rb +7 -0
  49. data/db/migrate/20251128151401_rename_subscription_plans_to_products.rb +6 -0
  50. data/db/migrate/20251128151402_rename_subscription_plan_id_to_subscription_product_id.rb +13 -0
  51. data/db/migrate/20251128151453_remove_subscription_price_id_from_subscriptions.rb +8 -0
  52. data/db/migrate/20251128151501_add_subscription_product_id_to_subscription_items.rb +8 -0
  53. data/db/migrate/20251128152025_remove_paddle_item_id_from_subscription_items.rb +6 -0
  54. data/db/migrate/20251128212046_rename_subscription_products_to_products.rb +6 -0
  55. data/db/migrate/20251128212047_rename_subscription_prices_to_prices.rb +6 -0
  56. data/db/migrate/20251128212053_rename_subscription_product_id_to_product_id_in_prices.rb +13 -0
  57. data/db/migrate/20251128212054_rename_fks_in_subscription_items.rb +20 -0
  58. data/db/migrate/20251128220016_add_scheduled_cancelation_at_to_subscriptions.rb +6 -0
  59. data/db/migrate/20251129121336_add_payment_method_to_subscriptions.rb +10 -0
  60. data/db/migrate/20251129222345_create_paddle_rails_payments.rb +24 -0
  61. data/lib/paddle_rails/checkout.rb +181 -0
  62. data/lib/paddle_rails/configuration.rb +121 -0
  63. data/lib/paddle_rails/engine.rb +49 -0
  64. data/lib/paddle_rails/product_sync.rb +176 -0
  65. data/lib/paddle_rails/subscription_sync.rb +303 -0
  66. data/lib/paddle_rails/version.rb +6 -0
  67. data/lib/paddle_rails/webhook_processor.rb +102 -0
  68. data/lib/paddle_rails/webhook_verifier.rb +110 -0
  69. data/lib/paddle_rails.rb +32 -0
  70. data/lib/tasks/paddle_rails_tasks.rake +15 -0
  71. metadata +157 -0
@@ -0,0 +1,1824 @@
1
+ /*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */
2
+ @layer properties;
3
+ @layer theme, base, components, utilities;
4
+ @layer theme {
5
+ :root, :host {
6
+ --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
7
+ "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
8
+ --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
9
+ "Courier New", monospace;
10
+ --color-red-50: oklch(97.1% 0.013 17.38);
11
+ --color-red-100: oklch(93.6% 0.032 17.717);
12
+ --color-red-200: oklch(88.5% 0.062 18.334);
13
+ --color-red-600: oklch(57.7% 0.245 27.325);
14
+ --color-red-700: oklch(50.5% 0.213 27.518);
15
+ --color-red-800: oklch(44.4% 0.177 26.899);
16
+ --color-red-900: oklch(39.6% 0.141 25.723);
17
+ --color-orange-500: oklch(70.5% 0.213 47.604);
18
+ --color-amber-50: oklch(98.7% 0.022 95.277);
19
+ --color-amber-500: oklch(76.9% 0.188 70.08);
20
+ --color-amber-600: oklch(66.6% 0.179 58.318);
21
+ --color-amber-700: oklch(55.5% 0.163 48.998);
22
+ --color-yellow-50: oklch(98.7% 0.026 102.212);
23
+ --color-yellow-600: oklch(68.1% 0.162 75.834);
24
+ --color-yellow-700: oklch(55.4% 0.135 66.442);
25
+ --color-emerald-50: oklch(97.9% 0.021 166.113);
26
+ --color-emerald-200: oklch(90.5% 0.093 164.15);
27
+ --color-emerald-400: oklch(76.5% 0.177 163.223);
28
+ --color-emerald-500: oklch(69.6% 0.17 162.48);
29
+ --color-emerald-600: oklch(59.6% 0.145 163.225);
30
+ --color-emerald-700: oklch(50.8% 0.118 165.612);
31
+ --color-emerald-800: oklch(43.2% 0.095 166.913);
32
+ --color-indigo-50: oklch(96.2% 0.018 272.314);
33
+ --color-indigo-100: oklch(93% 0.034 272.788);
34
+ --color-indigo-300: oklch(78.5% 0.115 274.713);
35
+ --color-indigo-400: oklch(67.3% 0.182 276.935);
36
+ --color-indigo-500: oklch(58.5% 0.233 277.117);
37
+ --color-indigo-600: oklch(51.1% 0.262 276.966);
38
+ --color-indigo-700: oklch(45.7% 0.24 277.023);
39
+ --color-purple-500: oklch(62.7% 0.265 303.9);
40
+ --color-purple-600: oklch(55.8% 0.288 302.321);
41
+ --color-pink-500: oklch(65.6% 0.241 354.308);
42
+ --color-pink-600: oklch(59.2% 0.249 0.584);
43
+ --color-slate-50: oklch(98.4% 0.003 247.858);
44
+ --color-slate-100: oklch(96.8% 0.007 247.896);
45
+ --color-slate-200: oklch(92.9% 0.013 255.508);
46
+ --color-slate-300: oklch(86.9% 0.022 252.894);
47
+ --color-slate-400: oklch(70.4% 0.04 256.788);
48
+ --color-slate-500: oklch(55.4% 0.046 257.417);
49
+ --color-slate-600: oklch(44.6% 0.043 257.281);
50
+ --color-slate-700: oklch(37.2% 0.044 257.287);
51
+ --color-slate-800: oklch(27.9% 0.041 260.031);
52
+ --color-slate-900: oklch(20.8% 0.042 265.755);
53
+ --color-gray-100: oklch(96.7% 0.003 264.542);
54
+ --color-gray-200: oklch(92.8% 0.006 264.531);
55
+ --color-gray-300: oklch(87.2% 0.01 258.338);
56
+ --color-gray-400: oklch(70.7% 0.022 261.325);
57
+ --color-gray-500: oklch(55.1% 0.027 264.364);
58
+ --color-gray-600: oklch(44.6% 0.03 256.802);
59
+ --color-gray-800: oklch(27.8% 0.033 256.848);
60
+ --color-gray-900: oklch(21% 0.034 264.665);
61
+ --color-white: #fff;
62
+ --spacing: 0.25rem;
63
+ --container-sm: 24rem;
64
+ --container-md: 28rem;
65
+ --container-2xl: 42rem;
66
+ --container-4xl: 56rem;
67
+ --container-5xl: 64rem;
68
+ --container-6xl: 72rem;
69
+ --text-xs: 0.75rem;
70
+ --text-xs--line-height: calc(1 / 0.75);
71
+ --text-sm: 0.875rem;
72
+ --text-sm--line-height: calc(1.25 / 0.875);
73
+ --text-base: 1rem;
74
+ --text-base--line-height: calc(1.5 / 1);
75
+ --text-lg: 1.125rem;
76
+ --text-lg--line-height: calc(1.75 / 1.125);
77
+ --text-xl: 1.25rem;
78
+ --text-xl--line-height: calc(1.75 / 1.25);
79
+ --text-2xl: 1.5rem;
80
+ --text-2xl--line-height: calc(2 / 1.5);
81
+ --text-3xl: 1.875rem;
82
+ --text-3xl--line-height: calc(2.25 / 1.875);
83
+ --text-4xl: 2.25rem;
84
+ --text-4xl--line-height: calc(2.5 / 2.25);
85
+ --text-5xl: 3rem;
86
+ --text-5xl--line-height: 1;
87
+ --font-weight-light: 300;
88
+ --font-weight-normal: 400;
89
+ --font-weight-medium: 500;
90
+ --font-weight-semibold: 600;
91
+ --font-weight-bold: 700;
92
+ --tracking-tight: -0.025em;
93
+ --tracking-wider: 0.05em;
94
+ --leading-tight: 1.25;
95
+ --leading-snug: 1.375;
96
+ --leading-relaxed: 1.625;
97
+ --radius-md: 0.375rem;
98
+ --radius-lg: 0.5rem;
99
+ --radius-xl: 0.75rem;
100
+ --radius-2xl: 1rem;
101
+ --animate-spin: spin 1s linear infinite;
102
+ --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
103
+ --blur-sm: 8px;
104
+ --blur-3xl: 64px;
105
+ --default-transition-duration: 150ms;
106
+ --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
107
+ --default-font-family: var(--font-sans);
108
+ --default-mono-font-family: var(--font-mono);
109
+ }
110
+ }
111
+ @layer base {
112
+ *, ::after, ::before, ::backdrop, ::file-selector-button {
113
+ box-sizing: border-box;
114
+ margin: 0;
115
+ padding: 0;
116
+ border: 0 solid;
117
+ }
118
+ html, :host {
119
+ line-height: 1.5;
120
+ -webkit-text-size-adjust: 100%;
121
+ tab-size: 4;
122
+ font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
123
+ font-feature-settings: var(--default-font-feature-settings, normal);
124
+ font-variation-settings: var(--default-font-variation-settings, normal);
125
+ -webkit-tap-highlight-color: transparent;
126
+ }
127
+ hr {
128
+ height: 0;
129
+ color: inherit;
130
+ border-top-width: 1px;
131
+ }
132
+ abbr:where([title]) {
133
+ -webkit-text-decoration: underline dotted;
134
+ text-decoration: underline dotted;
135
+ }
136
+ h1, h2, h3, h4, h5, h6 {
137
+ font-size: inherit;
138
+ font-weight: inherit;
139
+ }
140
+ a {
141
+ color: inherit;
142
+ -webkit-text-decoration: inherit;
143
+ text-decoration: inherit;
144
+ }
145
+ b, strong {
146
+ font-weight: bolder;
147
+ }
148
+ code, kbd, samp, pre {
149
+ font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
150
+ font-feature-settings: var(--default-mono-font-feature-settings, normal);
151
+ font-variation-settings: var(--default-mono-font-variation-settings, normal);
152
+ font-size: 1em;
153
+ }
154
+ small {
155
+ font-size: 80%;
156
+ }
157
+ sub, sup {
158
+ font-size: 75%;
159
+ line-height: 0;
160
+ position: relative;
161
+ vertical-align: baseline;
162
+ }
163
+ sub {
164
+ bottom: -0.25em;
165
+ }
166
+ sup {
167
+ top: -0.5em;
168
+ }
169
+ table {
170
+ text-indent: 0;
171
+ border-color: inherit;
172
+ border-collapse: collapse;
173
+ }
174
+ :-moz-focusring {
175
+ outline: auto;
176
+ }
177
+ progress {
178
+ vertical-align: baseline;
179
+ }
180
+ summary {
181
+ display: list-item;
182
+ }
183
+ ol, ul, menu {
184
+ list-style: none;
185
+ }
186
+ img, svg, video, canvas, audio, iframe, embed, object {
187
+ display: block;
188
+ vertical-align: middle;
189
+ }
190
+ img, video {
191
+ max-width: 100%;
192
+ height: auto;
193
+ }
194
+ button, input, select, optgroup, textarea, ::file-selector-button {
195
+ font: inherit;
196
+ font-feature-settings: inherit;
197
+ font-variation-settings: inherit;
198
+ letter-spacing: inherit;
199
+ color: inherit;
200
+ border-radius: 0;
201
+ background-color: transparent;
202
+ opacity: 1;
203
+ }
204
+ :where(select:is([multiple], [size])) optgroup {
205
+ font-weight: bolder;
206
+ }
207
+ :where(select:is([multiple], [size])) optgroup option {
208
+ padding-inline-start: 20px;
209
+ }
210
+ ::file-selector-button {
211
+ margin-inline-end: 4px;
212
+ }
213
+ ::placeholder {
214
+ opacity: 1;
215
+ }
216
+ @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {
217
+ ::placeholder {
218
+ color: currentcolor;
219
+ @supports (color: color-mix(in lab, red, red)) {
220
+ color: color-mix(in oklab, currentcolor 50%, transparent);
221
+ }
222
+ }
223
+ }
224
+ textarea {
225
+ resize: vertical;
226
+ }
227
+ ::-webkit-search-decoration {
228
+ -webkit-appearance: none;
229
+ }
230
+ ::-webkit-date-and-time-value {
231
+ min-height: 1lh;
232
+ text-align: inherit;
233
+ }
234
+ ::-webkit-datetime-edit {
235
+ display: inline-flex;
236
+ }
237
+ ::-webkit-datetime-edit-fields-wrapper {
238
+ padding: 0;
239
+ }
240
+ ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
241
+ padding-block: 0;
242
+ }
243
+ ::-webkit-calendar-picker-indicator {
244
+ line-height: 1;
245
+ }
246
+ :-moz-ui-invalid {
247
+ box-shadow: none;
248
+ }
249
+ button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
250
+ appearance: button;
251
+ }
252
+ ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
253
+ height: auto;
254
+ }
255
+ [hidden]:where(:not([hidden="until-found"])) {
256
+ display: none !important;
257
+ }
258
+ }
259
+ @layer utilities {
260
+ .pointer-events-none {
261
+ pointer-events: none;
262
+ }
263
+ .absolute {
264
+ position: absolute;
265
+ }
266
+ .fixed {
267
+ position: fixed;
268
+ }
269
+ .relative {
270
+ position: relative;
271
+ }
272
+ .inset-0 {
273
+ inset: calc(var(--spacing) * 0);
274
+ }
275
+ .-top-3 {
276
+ top: calc(var(--spacing) * -3);
277
+ }
278
+ .-top-24 {
279
+ top: calc(var(--spacing) * -24);
280
+ }
281
+ .top-1\/2 {
282
+ top: calc(1/2 * 100%);
283
+ }
284
+ .top-20 {
285
+ top: calc(var(--spacing) * 20);
286
+ }
287
+ .-right-24 {
288
+ right: calc(var(--spacing) * -24);
289
+ }
290
+ .right-0 {
291
+ right: calc(var(--spacing) * 0);
292
+ }
293
+ .right-4 {
294
+ right: calc(var(--spacing) * 4);
295
+ }
296
+ .-bottom-32 {
297
+ bottom: calc(var(--spacing) * -32);
298
+ }
299
+ .-left-32 {
300
+ left: calc(var(--spacing) * -32);
301
+ }
302
+ .left-4 {
303
+ left: calc(var(--spacing) * 4);
304
+ }
305
+ .z-10 {
306
+ z-index: 10;
307
+ }
308
+ .z-50 {
309
+ z-index: 50;
310
+ }
311
+ .container {
312
+ width: 100%;
313
+ @media (width >= 40rem) {
314
+ max-width: 40rem;
315
+ }
316
+ @media (width >= 48rem) {
317
+ max-width: 48rem;
318
+ }
319
+ @media (width >= 64rem) {
320
+ max-width: 64rem;
321
+ }
322
+ @media (width >= 80rem) {
323
+ max-width: 80rem;
324
+ }
325
+ @media (width >= 96rem) {
326
+ max-width: 96rem;
327
+ }
328
+ }
329
+ .mx-1 {
330
+ margin-inline: calc(var(--spacing) * 1);
331
+ }
332
+ .mx-auto {
333
+ margin-inline: auto;
334
+ }
335
+ .mt-0\.5 {
336
+ margin-top: calc(var(--spacing) * 0.5);
337
+ }
338
+ .mt-2 {
339
+ margin-top: calc(var(--spacing) * 2);
340
+ }
341
+ .mt-3 {
342
+ margin-top: calc(var(--spacing) * 3);
343
+ }
344
+ .mt-4 {
345
+ margin-top: calc(var(--spacing) * 4);
346
+ }
347
+ .mt-5 {
348
+ margin-top: calc(var(--spacing) * 5);
349
+ }
350
+ .mt-6 {
351
+ margin-top: calc(var(--spacing) * 6);
352
+ }
353
+ .mt-8 {
354
+ margin-top: calc(var(--spacing) * 8);
355
+ }
356
+ .mt-auto {
357
+ margin-top: auto;
358
+ }
359
+ .mb-1 {
360
+ margin-bottom: calc(var(--spacing) * 1);
361
+ }
362
+ .mb-1\.5 {
363
+ margin-bottom: calc(var(--spacing) * 1.5);
364
+ }
365
+ .mb-2 {
366
+ margin-bottom: calc(var(--spacing) * 2);
367
+ }
368
+ .mb-3 {
369
+ margin-bottom: calc(var(--spacing) * 3);
370
+ }
371
+ .mb-4 {
372
+ margin-bottom: calc(var(--spacing) * 4);
373
+ }
374
+ .mb-5 {
375
+ margin-bottom: calc(var(--spacing) * 5);
376
+ }
377
+ .mb-6 {
378
+ margin-bottom: calc(var(--spacing) * 6);
379
+ }
380
+ .mb-8 {
381
+ margin-bottom: calc(var(--spacing) * 8);
382
+ }
383
+ .mb-12 {
384
+ margin-bottom: calc(var(--spacing) * 12);
385
+ }
386
+ .ml-0\.5 {
387
+ margin-left: calc(var(--spacing) * 0.5);
388
+ }
389
+ .ml-1 {
390
+ margin-left: calc(var(--spacing) * 1);
391
+ }
392
+ .ml-4 {
393
+ margin-left: calc(var(--spacing) * 4);
394
+ }
395
+ .block {
396
+ display: block;
397
+ }
398
+ .flex {
399
+ display: flex;
400
+ }
401
+ .grid {
402
+ display: grid;
403
+ }
404
+ .hidden {
405
+ display: none;
406
+ }
407
+ .inline {
408
+ display: inline;
409
+ }
410
+ .inline-block {
411
+ display: inline-block;
412
+ }
413
+ .inline-flex {
414
+ display: inline-flex;
415
+ }
416
+ .table {
417
+ display: table;
418
+ }
419
+ .h-1\.5 {
420
+ height: calc(var(--spacing) * 1.5);
421
+ }
422
+ .h-3 {
423
+ height: calc(var(--spacing) * 3);
424
+ }
425
+ .h-4 {
426
+ height: calc(var(--spacing) * 4);
427
+ }
428
+ .h-5 {
429
+ height: calc(var(--spacing) * 5);
430
+ }
431
+ .h-6 {
432
+ height: calc(var(--spacing) * 6);
433
+ }
434
+ .h-7 {
435
+ height: calc(var(--spacing) * 7);
436
+ }
437
+ .h-10 {
438
+ height: calc(var(--spacing) * 10);
439
+ }
440
+ .h-12 {
441
+ height: calc(var(--spacing) * 12);
442
+ }
443
+ .h-14 {
444
+ height: calc(var(--spacing) * 14);
445
+ }
446
+ .h-48 {
447
+ height: calc(var(--spacing) * 48);
448
+ }
449
+ .h-64 {
450
+ height: calc(var(--spacing) * 64);
451
+ }
452
+ .h-full {
453
+ height: 100%;
454
+ }
455
+ .min-h-screen {
456
+ min-height: 100vh;
457
+ }
458
+ .w-1\.5 {
459
+ width: calc(var(--spacing) * 1.5);
460
+ }
461
+ .w-3 {
462
+ width: calc(var(--spacing) * 3);
463
+ }
464
+ .w-4 {
465
+ width: calc(var(--spacing) * 4);
466
+ }
467
+ .w-5 {
468
+ width: calc(var(--spacing) * 5);
469
+ }
470
+ .w-6 {
471
+ width: calc(var(--spacing) * 6);
472
+ }
473
+ .w-7 {
474
+ width: calc(var(--spacing) * 7);
475
+ }
476
+ .w-8 {
477
+ width: calc(var(--spacing) * 8);
478
+ }
479
+ .w-12 {
480
+ width: calc(var(--spacing) * 12);
481
+ }
482
+ .w-14 {
483
+ width: calc(var(--spacing) * 14);
484
+ }
485
+ .w-48 {
486
+ width: calc(var(--spacing) * 48);
487
+ }
488
+ .w-64 {
489
+ width: calc(var(--spacing) * 64);
490
+ }
491
+ .w-full {
492
+ width: 100%;
493
+ }
494
+ .max-w-2xl {
495
+ max-width: var(--container-2xl);
496
+ }
497
+ .max-w-4xl {
498
+ max-width: var(--container-4xl);
499
+ }
500
+ .max-w-5xl {
501
+ max-width: var(--container-5xl);
502
+ }
503
+ .max-w-6xl {
504
+ max-width: var(--container-6xl);
505
+ }
506
+ .max-w-md {
507
+ max-width: var(--container-md);
508
+ }
509
+ .max-w-sm {
510
+ max-width: var(--container-sm);
511
+ }
512
+ .min-w-0 {
513
+ min-width: calc(var(--spacing) * 0);
514
+ }
515
+ .min-w-\[640px\] {
516
+ min-width: 640px;
517
+ }
518
+ .flex-1 {
519
+ flex: 1;
520
+ }
521
+ .flex-shrink-0 {
522
+ flex-shrink: 0;
523
+ }
524
+ .flex-grow {
525
+ flex-grow: 1;
526
+ }
527
+ .transform {
528
+ transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
529
+ }
530
+ .animate-pulse {
531
+ animation: var(--animate-pulse);
532
+ }
533
+ .animate-spin {
534
+ animation: var(--animate-spin);
535
+ }
536
+ .cursor-not-allowed {
537
+ cursor: not-allowed;
538
+ }
539
+ .list-inside {
540
+ list-style-position: inside;
541
+ }
542
+ .list-disc {
543
+ list-style-type: disc;
544
+ }
545
+ .grid-cols-1 {
546
+ grid-template-columns: repeat(1, minmax(0, 1fr));
547
+ }
548
+ .flex-col {
549
+ flex-direction: column;
550
+ }
551
+ .items-center {
552
+ align-items: center;
553
+ }
554
+ .items-start {
555
+ align-items: flex-start;
556
+ }
557
+ .justify-between {
558
+ justify-content: space-between;
559
+ }
560
+ .justify-center {
561
+ justify-content: center;
562
+ }
563
+ .gap-1 {
564
+ gap: calc(var(--spacing) * 1);
565
+ }
566
+ .gap-1\.5 {
567
+ gap: calc(var(--spacing) * 1.5);
568
+ }
569
+ .gap-2 {
570
+ gap: calc(var(--spacing) * 2);
571
+ }
572
+ .gap-3 {
573
+ gap: calc(var(--spacing) * 3);
574
+ }
575
+ .gap-4 {
576
+ gap: calc(var(--spacing) * 4);
577
+ }
578
+ .gap-5 {
579
+ gap: calc(var(--spacing) * 5);
580
+ }
581
+ .gap-6 {
582
+ gap: calc(var(--spacing) * 6);
583
+ }
584
+ .space-y-1 {
585
+ :where(& > :not(:last-child)) {
586
+ --tw-space-y-reverse: 0;
587
+ margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));
588
+ margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)));
589
+ }
590
+ }
591
+ .space-y-3 {
592
+ :where(& > :not(:last-child)) {
593
+ --tw-space-y-reverse: 0;
594
+ margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
595
+ margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
596
+ }
597
+ }
598
+ .space-y-4 {
599
+ :where(& > :not(:last-child)) {
600
+ --tw-space-y-reverse: 0;
601
+ margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
602
+ margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
603
+ }
604
+ }
605
+ .divide-y {
606
+ :where(& > :not(:last-child)) {
607
+ --tw-divide-y-reverse: 0;
608
+ border-bottom-style: var(--tw-border-style);
609
+ border-top-style: var(--tw-border-style);
610
+ border-top-width: calc(1px * var(--tw-divide-y-reverse));
611
+ border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
612
+ }
613
+ }
614
+ .divide-slate-100 {
615
+ :where(& > :not(:last-child)) {
616
+ border-color: var(--color-slate-100);
617
+ }
618
+ }
619
+ .self-start {
620
+ align-self: flex-start;
621
+ }
622
+ .truncate {
623
+ overflow: hidden;
624
+ text-overflow: ellipsis;
625
+ white-space: nowrap;
626
+ }
627
+ .overflow-hidden {
628
+ overflow: hidden;
629
+ }
630
+ .overflow-x-auto {
631
+ overflow-x: auto;
632
+ }
633
+ .overflow-y-auto {
634
+ overflow-y: auto;
635
+ }
636
+ .rounded {
637
+ border-radius: 0.25rem;
638
+ }
639
+ .rounded-2xl {
640
+ border-radius: var(--radius-2xl);
641
+ }
642
+ .rounded-full {
643
+ border-radius: calc(infinity * 1px);
644
+ }
645
+ .rounded-lg {
646
+ border-radius: var(--radius-lg);
647
+ }
648
+ .rounded-md {
649
+ border-radius: var(--radius-md);
650
+ }
651
+ .rounded-xl {
652
+ border-radius: var(--radius-xl);
653
+ }
654
+ .border {
655
+ border-style: var(--tw-border-style);
656
+ border-width: 1px;
657
+ }
658
+ .border-2 {
659
+ border-style: var(--tw-border-style);
660
+ border-width: 2px;
661
+ }
662
+ .border-t {
663
+ border-top-style: var(--tw-border-style);
664
+ border-top-width: 1px;
665
+ }
666
+ .border-b {
667
+ border-bottom-style: var(--tw-border-style);
668
+ border-bottom-width: 1px;
669
+ }
670
+ .border-b-2 {
671
+ border-bottom-style: var(--tw-border-style);
672
+ border-bottom-width: 2px;
673
+ }
674
+ .border-emerald-200 {
675
+ border-color: var(--color-emerald-200);
676
+ }
677
+ .border-gray-200 {
678
+ border-color: var(--color-gray-200);
679
+ }
680
+ .border-gray-300 {
681
+ border-color: var(--color-gray-300);
682
+ }
683
+ .border-gray-900 {
684
+ border-color: var(--color-gray-900);
685
+ }
686
+ .border-indigo-500 {
687
+ border-color: var(--color-indigo-500);
688
+ }
689
+ .border-red-200 {
690
+ border-color: var(--color-red-200);
691
+ }
692
+ .border-slate-100 {
693
+ border-color: var(--color-slate-100);
694
+ }
695
+ .border-slate-200 {
696
+ border-color: var(--color-slate-200);
697
+ }
698
+ .border-slate-200\/60 {
699
+ border-color: color-mix(in srgb, oklch(92.9% 0.013 255.508) 60%, transparent);
700
+ @supports (color: color-mix(in lab, red, red)) {
701
+ border-color: color-mix(in oklab, var(--color-slate-200) 60%, transparent);
702
+ }
703
+ }
704
+ .border-slate-300 {
705
+ border-color: var(--color-slate-300);
706
+ }
707
+ .border-white\/5 {
708
+ border-color: color-mix(in srgb, #fff 5%, transparent);
709
+ @supports (color: color-mix(in lab, red, red)) {
710
+ border-color: color-mix(in oklab, var(--color-white) 5%, transparent);
711
+ }
712
+ }
713
+ .border-white\/10 {
714
+ border-color: color-mix(in srgb, #fff 10%, transparent);
715
+ @supports (color: color-mix(in lab, red, red)) {
716
+ border-color: color-mix(in oklab, var(--color-white) 10%, transparent);
717
+ }
718
+ }
719
+ .bg-amber-50 {
720
+ background-color: var(--color-amber-50);
721
+ }
722
+ .bg-amber-500 {
723
+ background-color: var(--color-amber-500);
724
+ }
725
+ .bg-emerald-50 {
726
+ background-color: var(--color-emerald-50);
727
+ }
728
+ .bg-emerald-500 {
729
+ background-color: var(--color-emerald-500);
730
+ }
731
+ .bg-emerald-500\/10 {
732
+ background-color: color-mix(in srgb, oklch(69.6% 0.17 162.48) 10%, transparent);
733
+ @supports (color: color-mix(in lab, red, red)) {
734
+ background-color: color-mix(in oklab, var(--color-emerald-500) 10%, transparent);
735
+ }
736
+ }
737
+ .bg-emerald-500\/20 {
738
+ background-color: color-mix(in srgb, oklch(69.6% 0.17 162.48) 20%, transparent);
739
+ @supports (color: color-mix(in lab, red, red)) {
740
+ background-color: color-mix(in oklab, var(--color-emerald-500) 20%, transparent);
741
+ }
742
+ }
743
+ .bg-gray-100 {
744
+ background-color: var(--color-gray-100);
745
+ }
746
+ .bg-indigo-50 {
747
+ background-color: var(--color-indigo-50);
748
+ }
749
+ .bg-indigo-100 {
750
+ background-color: var(--color-indigo-100);
751
+ }
752
+ .bg-indigo-500\/10 {
753
+ background-color: color-mix(in srgb, oklch(58.5% 0.233 277.117) 10%, transparent);
754
+ @supports (color: color-mix(in lab, red, red)) {
755
+ background-color: color-mix(in oklab, var(--color-indigo-500) 10%, transparent);
756
+ }
757
+ }
758
+ .bg-indigo-600 {
759
+ background-color: var(--color-indigo-600);
760
+ }
761
+ .bg-purple-500\/10 {
762
+ background-color: color-mix(in srgb, oklch(62.7% 0.265 303.9) 10%, transparent);
763
+ @supports (color: color-mix(in lab, red, red)) {
764
+ background-color: color-mix(in oklab, var(--color-purple-500) 10%, transparent);
765
+ }
766
+ }
767
+ .bg-red-50 {
768
+ background-color: var(--color-red-50);
769
+ }
770
+ .bg-slate-50 {
771
+ background-color: var(--color-slate-50);
772
+ }
773
+ .bg-slate-50\/50 {
774
+ background-color: color-mix(in srgb, oklch(98.4% 0.003 247.858) 50%, transparent);
775
+ @supports (color: color-mix(in lab, red, red)) {
776
+ background-color: color-mix(in oklab, var(--color-slate-50) 50%, transparent);
777
+ }
778
+ }
779
+ .bg-slate-50\/80 {
780
+ background-color: color-mix(in srgb, oklch(98.4% 0.003 247.858) 80%, transparent);
781
+ @supports (color: color-mix(in lab, red, red)) {
782
+ background-color: color-mix(in oklab, var(--color-slate-50) 80%, transparent);
783
+ }
784
+ }
785
+ .bg-slate-100 {
786
+ background-color: var(--color-slate-100);
787
+ }
788
+ .bg-slate-400 {
789
+ background-color: var(--color-slate-400);
790
+ }
791
+ .bg-slate-900\/50 {
792
+ background-color: color-mix(in srgb, oklch(20.8% 0.042 265.755) 50%, transparent);
793
+ @supports (color: color-mix(in lab, red, red)) {
794
+ background-color: color-mix(in oklab, var(--color-slate-900) 50%, transparent);
795
+ }
796
+ }
797
+ .bg-white {
798
+ background-color: var(--color-white);
799
+ }
800
+ .bg-white\/5 {
801
+ background-color: color-mix(in srgb, #fff 5%, transparent);
802
+ @supports (color: color-mix(in lab, red, red)) {
803
+ background-color: color-mix(in oklab, var(--color-white) 5%, transparent);
804
+ }
805
+ }
806
+ .bg-white\/10 {
807
+ background-color: color-mix(in srgb, #fff 10%, transparent);
808
+ @supports (color: color-mix(in lab, red, red)) {
809
+ background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
810
+ }
811
+ }
812
+ .bg-yellow-50 {
813
+ background-color: var(--color-yellow-50);
814
+ }
815
+ .bg-gradient-to-b {
816
+ --tw-gradient-position: to bottom in oklab;
817
+ background-image: linear-gradient(var(--tw-gradient-stops));
818
+ }
819
+ .bg-gradient-to-br {
820
+ --tw-gradient-position: to bottom right in oklab;
821
+ background-image: linear-gradient(var(--tw-gradient-stops));
822
+ }
823
+ .bg-gradient-to-r {
824
+ --tw-gradient-position: to right in oklab;
825
+ background-image: linear-gradient(var(--tw-gradient-stops));
826
+ }
827
+ .from-amber-500 {
828
+ --tw-gradient-from: var(--color-amber-500);
829
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
830
+ }
831
+ .from-indigo-500 {
832
+ --tw-gradient-from: var(--color-indigo-500);
833
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
834
+ }
835
+ .from-purple-500 {
836
+ --tw-gradient-from: var(--color-purple-500);
837
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
838
+ }
839
+ .from-slate-50 {
840
+ --tw-gradient-from: var(--color-slate-50);
841
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
842
+ }
843
+ .from-slate-900 {
844
+ --tw-gradient-from: var(--color-slate-900);
845
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
846
+ }
847
+ .via-slate-900 {
848
+ --tw-gradient-via: var(--color-slate-900);
849
+ --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
850
+ --tw-gradient-stops: var(--tw-gradient-via-stops);
851
+ }
852
+ .to-orange-500 {
853
+ --tw-gradient-to: var(--color-orange-500);
854
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
855
+ }
856
+ .to-pink-500 {
857
+ --tw-gradient-to: var(--color-pink-500);
858
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
859
+ }
860
+ .to-purple-600 {
861
+ --tw-gradient-to: var(--color-purple-600);
862
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
863
+ }
864
+ .to-slate-100 {
865
+ --tw-gradient-to: var(--color-slate-100);
866
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
867
+ }
868
+ .to-slate-800 {
869
+ --tw-gradient-to: var(--color-slate-800);
870
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
871
+ }
872
+ .p-3 {
873
+ padding: calc(var(--spacing) * 3);
874
+ }
875
+ .p-4 {
876
+ padding: calc(var(--spacing) * 4);
877
+ }
878
+ .p-6 {
879
+ padding: calc(var(--spacing) * 6);
880
+ }
881
+ .p-8 {
882
+ padding: calc(var(--spacing) * 8);
883
+ }
884
+ .p-12 {
885
+ padding: calc(var(--spacing) * 12);
886
+ }
887
+ .px-1\.5 {
888
+ padding-inline: calc(var(--spacing) * 1.5);
889
+ }
890
+ .px-2 {
891
+ padding-inline: calc(var(--spacing) * 2);
892
+ }
893
+ .px-2\.5 {
894
+ padding-inline: calc(var(--spacing) * 2.5);
895
+ }
896
+ .px-3 {
897
+ padding-inline: calc(var(--spacing) * 3);
898
+ }
899
+ .px-4 {
900
+ padding-inline: calc(var(--spacing) * 4);
901
+ }
902
+ .px-6 {
903
+ padding-inline: calc(var(--spacing) * 6);
904
+ }
905
+ .py-0\.5 {
906
+ padding-block: calc(var(--spacing) * 0.5);
907
+ }
908
+ .py-1 {
909
+ padding-block: calc(var(--spacing) * 1);
910
+ }
911
+ .py-1\.5 {
912
+ padding-block: calc(var(--spacing) * 1.5);
913
+ }
914
+ .py-2 {
915
+ padding-block: calc(var(--spacing) * 2);
916
+ }
917
+ .py-2\.5 {
918
+ padding-block: calc(var(--spacing) * 2.5);
919
+ }
920
+ .py-3 {
921
+ padding-block: calc(var(--spacing) * 3);
922
+ }
923
+ .py-4 {
924
+ padding-block: calc(var(--spacing) * 4);
925
+ }
926
+ .py-6 {
927
+ padding-block: calc(var(--spacing) * 6);
928
+ }
929
+ .py-12 {
930
+ padding-block: calc(var(--spacing) * 12);
931
+ }
932
+ .pt-2 {
933
+ padding-top: calc(var(--spacing) * 2);
934
+ }
935
+ .pt-4 {
936
+ padding-top: calc(var(--spacing) * 4);
937
+ }
938
+ .pt-5 {
939
+ padding-top: calc(var(--spacing) * 5);
940
+ }
941
+ .pt-6 {
942
+ padding-top: calc(var(--spacing) * 6);
943
+ }
944
+ .pt-8 {
945
+ padding-top: calc(var(--spacing) * 8);
946
+ }
947
+ .text-center {
948
+ text-align: center;
949
+ }
950
+ .text-left {
951
+ text-align: left;
952
+ }
953
+ .text-right {
954
+ text-align: right;
955
+ }
956
+ .font-mono {
957
+ font-family: var(--font-mono);
958
+ }
959
+ .text-2xl {
960
+ font-size: var(--text-2xl);
961
+ line-height: var(--tw-leading, var(--text-2xl--line-height));
962
+ }
963
+ .text-3xl {
964
+ font-size: var(--text-3xl);
965
+ line-height: var(--tw-leading, var(--text-3xl--line-height));
966
+ }
967
+ .text-base {
968
+ font-size: var(--text-base);
969
+ line-height: var(--tw-leading, var(--text-base--line-height));
970
+ }
971
+ .text-lg {
972
+ font-size: var(--text-lg);
973
+ line-height: var(--tw-leading, var(--text-lg--line-height));
974
+ }
975
+ .text-sm {
976
+ font-size: var(--text-sm);
977
+ line-height: var(--tw-leading, var(--text-sm--line-height));
978
+ }
979
+ .text-xl {
980
+ font-size: var(--text-xl);
981
+ line-height: var(--tw-leading, var(--text-xl--line-height));
982
+ }
983
+ .text-xs {
984
+ font-size: var(--text-xs);
985
+ line-height: var(--tw-leading, var(--text-xs--line-height));
986
+ }
987
+ .leading-relaxed {
988
+ --tw-leading: var(--leading-relaxed);
989
+ line-height: var(--leading-relaxed);
990
+ }
991
+ .leading-snug {
992
+ --tw-leading: var(--leading-snug);
993
+ line-height: var(--leading-snug);
994
+ }
995
+ .leading-tight {
996
+ --tw-leading: var(--leading-tight);
997
+ line-height: var(--leading-tight);
998
+ }
999
+ .font-bold {
1000
+ --tw-font-weight: var(--font-weight-bold);
1001
+ font-weight: var(--font-weight-bold);
1002
+ }
1003
+ .font-light {
1004
+ --tw-font-weight: var(--font-weight-light);
1005
+ font-weight: var(--font-weight-light);
1006
+ }
1007
+ .font-medium {
1008
+ --tw-font-weight: var(--font-weight-medium);
1009
+ font-weight: var(--font-weight-medium);
1010
+ }
1011
+ .font-normal {
1012
+ --tw-font-weight: var(--font-weight-normal);
1013
+ font-weight: var(--font-weight-normal);
1014
+ }
1015
+ .font-semibold {
1016
+ --tw-font-weight: var(--font-weight-semibold);
1017
+ font-weight: var(--font-weight-semibold);
1018
+ }
1019
+ .tracking-tight {
1020
+ --tw-tracking: var(--tracking-tight);
1021
+ letter-spacing: var(--tracking-tight);
1022
+ }
1023
+ .tracking-wider {
1024
+ --tw-tracking: var(--tracking-wider);
1025
+ letter-spacing: var(--tracking-wider);
1026
+ }
1027
+ .whitespace-nowrap {
1028
+ white-space: nowrap;
1029
+ }
1030
+ .text-amber-600 {
1031
+ color: var(--color-amber-600);
1032
+ }
1033
+ .text-amber-700 {
1034
+ color: var(--color-amber-700);
1035
+ }
1036
+ .text-emerald-400 {
1037
+ color: var(--color-emerald-400);
1038
+ }
1039
+ .text-emerald-600 {
1040
+ color: var(--color-emerald-600);
1041
+ }
1042
+ .text-emerald-700 {
1043
+ color: var(--color-emerald-700);
1044
+ }
1045
+ .text-emerald-800 {
1046
+ color: var(--color-emerald-800);
1047
+ }
1048
+ .text-gray-400 {
1049
+ color: var(--color-gray-400);
1050
+ }
1051
+ .text-gray-500 {
1052
+ color: var(--color-gray-500);
1053
+ }
1054
+ .text-gray-600 {
1055
+ color: var(--color-gray-600);
1056
+ }
1057
+ .text-gray-800 {
1058
+ color: var(--color-gray-800);
1059
+ }
1060
+ .text-gray-900 {
1061
+ color: var(--color-gray-900);
1062
+ }
1063
+ .text-indigo-600 {
1064
+ color: var(--color-indigo-600);
1065
+ }
1066
+ .text-red-600 {
1067
+ color: var(--color-red-600);
1068
+ }
1069
+ .text-red-700 {
1070
+ color: var(--color-red-700);
1071
+ }
1072
+ .text-red-800 {
1073
+ color: var(--color-red-800);
1074
+ }
1075
+ .text-slate-300 {
1076
+ color: var(--color-slate-300);
1077
+ }
1078
+ .text-slate-400 {
1079
+ color: var(--color-slate-400);
1080
+ }
1081
+ .text-slate-500 {
1082
+ color: var(--color-slate-500);
1083
+ }
1084
+ .text-slate-600 {
1085
+ color: var(--color-slate-600);
1086
+ }
1087
+ .text-slate-700 {
1088
+ color: var(--color-slate-700);
1089
+ }
1090
+ .text-slate-900 {
1091
+ color: var(--color-slate-900);
1092
+ }
1093
+ .text-white {
1094
+ color: var(--color-white);
1095
+ }
1096
+ .text-yellow-700 {
1097
+ color: var(--color-yellow-700);
1098
+ }
1099
+ .uppercase {
1100
+ text-transform: uppercase;
1101
+ }
1102
+ .underline {
1103
+ text-decoration-line: underline;
1104
+ }
1105
+ .antialiased {
1106
+ -webkit-font-smoothing: antialiased;
1107
+ -moz-osx-font-smoothing: grayscale;
1108
+ }
1109
+ .shadow-2xl {
1110
+ --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
1111
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1112
+ }
1113
+ .shadow-lg {
1114
+ --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
1115
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1116
+ }
1117
+ .shadow-sm {
1118
+ --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
1119
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1120
+ }
1121
+ .ring-1 {
1122
+ --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
1123
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1124
+ }
1125
+ .shadow-indigo-500\/25 {
1126
+ --tw-shadow-color: color-mix(in srgb, oklch(58.5% 0.233 277.117) 25%, transparent);
1127
+ @supports (color: color-mix(in lab, red, red)) {
1128
+ --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-indigo-500) 25%, transparent) var(--tw-shadow-alpha), transparent);
1129
+ }
1130
+ }
1131
+ .ring-amber-600\/20 {
1132
+ --tw-ring-color: color-mix(in srgb, oklch(66.6% 0.179 58.318) 20%, transparent);
1133
+ @supports (color: color-mix(in lab, red, red)) {
1134
+ --tw-ring-color: color-mix(in oklab, var(--color-amber-600) 20%, transparent);
1135
+ }
1136
+ }
1137
+ .ring-emerald-600\/20 {
1138
+ --tw-ring-color: color-mix(in srgb, oklch(59.6% 0.145 163.225) 20%, transparent);
1139
+ @supports (color: color-mix(in lab, red, red)) {
1140
+ --tw-ring-color: color-mix(in oklab, var(--color-emerald-600) 20%, transparent);
1141
+ }
1142
+ }
1143
+ .ring-indigo-500\/20 {
1144
+ --tw-ring-color: color-mix(in srgb, oklch(58.5% 0.233 277.117) 20%, transparent);
1145
+ @supports (color: color-mix(in lab, red, red)) {
1146
+ --tw-ring-color: color-mix(in oklab, var(--color-indigo-500) 20%, transparent);
1147
+ }
1148
+ }
1149
+ .ring-red-600\/20 {
1150
+ --tw-ring-color: color-mix(in srgb, oklch(57.7% 0.245 27.325) 20%, transparent);
1151
+ @supports (color: color-mix(in lab, red, red)) {
1152
+ --tw-ring-color: color-mix(in oklab, var(--color-red-600) 20%, transparent);
1153
+ }
1154
+ }
1155
+ .ring-slate-600\/20 {
1156
+ --tw-ring-color: color-mix(in srgb, oklch(44.6% 0.043 257.281) 20%, transparent);
1157
+ @supports (color: color-mix(in lab, red, red)) {
1158
+ --tw-ring-color: color-mix(in oklab, var(--color-slate-600) 20%, transparent);
1159
+ }
1160
+ }
1161
+ .ring-yellow-600\/20 {
1162
+ --tw-ring-color: color-mix(in srgb, oklch(68.1% 0.162 75.834) 20%, transparent);
1163
+ @supports (color: color-mix(in lab, red, red)) {
1164
+ --tw-ring-color: color-mix(in oklab, var(--color-yellow-600) 20%, transparent);
1165
+ }
1166
+ }
1167
+ .blur-3xl {
1168
+ --tw-blur: blur(var(--blur-3xl));
1169
+ filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
1170
+ }
1171
+ .backdrop-blur-sm {
1172
+ --tw-backdrop-blur: blur(var(--blur-sm));
1173
+ -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
1174
+ backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
1175
+ }
1176
+ .transition {
1177
+ transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
1178
+ transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
1179
+ transition-duration: var(--tw-duration, var(--default-transition-duration));
1180
+ }
1181
+ .transition-all {
1182
+ transition-property: all;
1183
+ transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
1184
+ transition-duration: var(--tw-duration, var(--default-transition-duration));
1185
+ }
1186
+ .transition-colors {
1187
+ transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
1188
+ transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
1189
+ transition-duration: var(--tw-duration, var(--default-transition-duration));
1190
+ }
1191
+ .transition-opacity {
1192
+ transition-property: opacity;
1193
+ transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
1194
+ transition-duration: var(--tw-duration, var(--default-transition-duration));
1195
+ }
1196
+ .transition-shadow {
1197
+ transition-property: box-shadow;
1198
+ transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
1199
+ transition-duration: var(--tw-duration, var(--default-transition-duration));
1200
+ }
1201
+ .duration-150 {
1202
+ --tw-duration: 150ms;
1203
+ transition-duration: 150ms;
1204
+ }
1205
+ .duration-200 {
1206
+ --tw-duration: 200ms;
1207
+ transition-duration: 200ms;
1208
+ }
1209
+ .ring-inset {
1210
+ --tw-ring-inset: inset;
1211
+ }
1212
+ .group-hover\:text-indigo-400 {
1213
+ &:is(:where(.group):hover *) {
1214
+ @media (hover: hover) {
1215
+ color: var(--color-indigo-400);
1216
+ }
1217
+ }
1218
+ }
1219
+ .hover\:border-indigo-300 {
1220
+ &:hover {
1221
+ @media (hover: hover) {
1222
+ border-color: var(--color-indigo-300);
1223
+ }
1224
+ }
1225
+ }
1226
+ .hover\:border-white\/20 {
1227
+ &:hover {
1228
+ @media (hover: hover) {
1229
+ border-color: color-mix(in srgb, #fff 20%, transparent);
1230
+ @supports (color: color-mix(in lab, red, red)) {
1231
+ border-color: color-mix(in oklab, var(--color-white) 20%, transparent);
1232
+ }
1233
+ }
1234
+ }
1235
+ }
1236
+ .hover\:bg-indigo-100 {
1237
+ &:hover {
1238
+ @media (hover: hover) {
1239
+ background-color: var(--color-indigo-100);
1240
+ }
1241
+ }
1242
+ }
1243
+ .hover\:bg-indigo-700 {
1244
+ &:hover {
1245
+ @media (hover: hover) {
1246
+ background-color: var(--color-indigo-700);
1247
+ }
1248
+ }
1249
+ }
1250
+ .hover\:bg-red-100 {
1251
+ &:hover {
1252
+ @media (hover: hover) {
1253
+ background-color: var(--color-red-100);
1254
+ }
1255
+ }
1256
+ }
1257
+ .hover\:bg-slate-50 {
1258
+ &:hover {
1259
+ @media (hover: hover) {
1260
+ background-color: var(--color-slate-50);
1261
+ }
1262
+ }
1263
+ }
1264
+ .hover\:bg-slate-50\/50 {
1265
+ &:hover {
1266
+ @media (hover: hover) {
1267
+ background-color: color-mix(in srgb, oklch(98.4% 0.003 247.858) 50%, transparent);
1268
+ @supports (color: color-mix(in lab, red, red)) {
1269
+ background-color: color-mix(in oklab, var(--color-slate-50) 50%, transparent);
1270
+ }
1271
+ }
1272
+ }
1273
+ }
1274
+ .hover\:bg-slate-200 {
1275
+ &:hover {
1276
+ @media (hover: hover) {
1277
+ background-color: var(--color-slate-200);
1278
+ }
1279
+ }
1280
+ }
1281
+ .hover\:bg-white\/5 {
1282
+ &:hover {
1283
+ @media (hover: hover) {
1284
+ background-color: color-mix(in srgb, #fff 5%, transparent);
1285
+ @supports (color: color-mix(in lab, red, red)) {
1286
+ background-color: color-mix(in oklab, var(--color-white) 5%, transparent);
1287
+ }
1288
+ }
1289
+ }
1290
+ }
1291
+ .hover\:bg-white\/10 {
1292
+ &:hover {
1293
+ @media (hover: hover) {
1294
+ background-color: color-mix(in srgb, #fff 10%, transparent);
1295
+ @supports (color: color-mix(in lab, red, red)) {
1296
+ background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
1297
+ }
1298
+ }
1299
+ }
1300
+ }
1301
+ .hover\:from-purple-600 {
1302
+ &:hover {
1303
+ @media (hover: hover) {
1304
+ --tw-gradient-from: var(--color-purple-600);
1305
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
1306
+ }
1307
+ }
1308
+ }
1309
+ .hover\:to-pink-600 {
1310
+ &:hover {
1311
+ @media (hover: hover) {
1312
+ --tw-gradient-to: var(--color-pink-600);
1313
+ --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
1314
+ }
1315
+ }
1316
+ }
1317
+ .hover\:text-indigo-700 {
1318
+ &:hover {
1319
+ @media (hover: hover) {
1320
+ color: var(--color-indigo-700);
1321
+ }
1322
+ }
1323
+ }
1324
+ .hover\:text-red-700 {
1325
+ &:hover {
1326
+ @media (hover: hover) {
1327
+ color: var(--color-red-700);
1328
+ }
1329
+ }
1330
+ }
1331
+ .hover\:text-red-900 {
1332
+ &:hover {
1333
+ @media (hover: hover) {
1334
+ color: var(--color-red-900);
1335
+ }
1336
+ }
1337
+ }
1338
+ .hover\:text-slate-700 {
1339
+ &:hover {
1340
+ @media (hover: hover) {
1341
+ color: var(--color-slate-700);
1342
+ }
1343
+ }
1344
+ }
1345
+ .hover\:text-slate-900 {
1346
+ &:hover {
1347
+ @media (hover: hover) {
1348
+ color: var(--color-slate-900);
1349
+ }
1350
+ }
1351
+ }
1352
+ .hover\:text-white {
1353
+ &:hover {
1354
+ @media (hover: hover) {
1355
+ color: var(--color-white);
1356
+ }
1357
+ }
1358
+ }
1359
+ .hover\:shadow-md {
1360
+ &:hover {
1361
+ @media (hover: hover) {
1362
+ --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
1363
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1364
+ }
1365
+ }
1366
+ }
1367
+ .focus\:border-indigo-500 {
1368
+ &:focus {
1369
+ border-color: var(--color-indigo-500);
1370
+ }
1371
+ }
1372
+ .focus\:border-purple-500 {
1373
+ &:focus {
1374
+ border-color: var(--color-purple-500);
1375
+ }
1376
+ }
1377
+ .focus\:ring-indigo-500 {
1378
+ &:focus {
1379
+ --tw-ring-color: var(--color-indigo-500);
1380
+ }
1381
+ }
1382
+ .focus\:ring-purple-500 {
1383
+ &:focus {
1384
+ --tw-ring-color: var(--color-purple-500);
1385
+ }
1386
+ }
1387
+ .active\:scale-\[0\.98\] {
1388
+ &:active {
1389
+ scale: 0.98;
1390
+ }
1391
+ }
1392
+ .sm\:flex {
1393
+ @media (width >= 40rem) {
1394
+ display: flex;
1395
+ }
1396
+ }
1397
+ .sm\:w-auto {
1398
+ @media (width >= 40rem) {
1399
+ width: auto;
1400
+ }
1401
+ }
1402
+ .sm\:grid-cols-2 {
1403
+ @media (width >= 40rem) {
1404
+ grid-template-columns: repeat(2, minmax(0, 1fr));
1405
+ }
1406
+ }
1407
+ .sm\:flex-row {
1408
+ @media (width >= 40rem) {
1409
+ flex-direction: row;
1410
+ }
1411
+ }
1412
+ .sm\:items-center {
1413
+ @media (width >= 40rem) {
1414
+ align-items: center;
1415
+ }
1416
+ }
1417
+ .sm\:items-start {
1418
+ @media (width >= 40rem) {
1419
+ align-items: flex-start;
1420
+ }
1421
+ }
1422
+ .sm\:justify-between {
1423
+ @media (width >= 40rem) {
1424
+ justify-content: space-between;
1425
+ }
1426
+ }
1427
+ .sm\:self-auto {
1428
+ @media (width >= 40rem) {
1429
+ align-self: auto;
1430
+ }
1431
+ }
1432
+ .md\:mb-12 {
1433
+ @media (width >= 48rem) {
1434
+ margin-bottom: calc(var(--spacing) * 12);
1435
+ }
1436
+ }
1437
+ .md\:h-screen {
1438
+ @media (width >= 48rem) {
1439
+ height: 100vh;
1440
+ }
1441
+ }
1442
+ .md\:w-80 {
1443
+ @media (width >= 48rem) {
1444
+ width: calc(var(--spacing) * 80);
1445
+ }
1446
+ }
1447
+ .md\:grid-cols-3 {
1448
+ @media (width >= 48rem) {
1449
+ grid-template-columns: repeat(3, minmax(0, 1fr));
1450
+ }
1451
+ }
1452
+ .md\:flex-row {
1453
+ @media (width >= 48rem) {
1454
+ flex-direction: row;
1455
+ }
1456
+ }
1457
+ .md\:overflow-hidden {
1458
+ @media (width >= 48rem) {
1459
+ overflow: hidden;
1460
+ }
1461
+ }
1462
+ .md\:p-7 {
1463
+ @media (width >= 48rem) {
1464
+ padding: calc(var(--spacing) * 7);
1465
+ }
1466
+ }
1467
+ .md\:p-8 {
1468
+ @media (width >= 48rem) {
1469
+ padding: calc(var(--spacing) * 8);
1470
+ }
1471
+ }
1472
+ .md\:p-12 {
1473
+ @media (width >= 48rem) {
1474
+ padding: calc(var(--spacing) * 12);
1475
+ }
1476
+ }
1477
+ .md\:px-8 {
1478
+ @media (width >= 48rem) {
1479
+ padding-inline: calc(var(--spacing) * 8);
1480
+ }
1481
+ }
1482
+ .md\:py-5 {
1483
+ @media (width >= 48rem) {
1484
+ padding-block: calc(var(--spacing) * 5);
1485
+ }
1486
+ }
1487
+ .md\:text-4xl {
1488
+ @media (width >= 48rem) {
1489
+ font-size: var(--text-4xl);
1490
+ line-height: var(--tw-leading, var(--text-4xl--line-height));
1491
+ }
1492
+ }
1493
+ .md\:text-\[1\.75rem\] {
1494
+ @media (width >= 48rem) {
1495
+ font-size: 1.75rem;
1496
+ }
1497
+ }
1498
+ .lg\:text-5xl {
1499
+ @media (width >= 64rem) {
1500
+ font-size: var(--text-5xl);
1501
+ line-height: var(--tw-leading, var(--text-5xl--line-height));
1502
+ }
1503
+ }
1504
+ }
1505
+ @property --tw-rotate-x {
1506
+ syntax: "*";
1507
+ inherits: false;
1508
+ }
1509
+ @property --tw-rotate-y {
1510
+ syntax: "*";
1511
+ inherits: false;
1512
+ }
1513
+ @property --tw-rotate-z {
1514
+ syntax: "*";
1515
+ inherits: false;
1516
+ }
1517
+ @property --tw-skew-x {
1518
+ syntax: "*";
1519
+ inherits: false;
1520
+ }
1521
+ @property --tw-skew-y {
1522
+ syntax: "*";
1523
+ inherits: false;
1524
+ }
1525
+ @property --tw-space-y-reverse {
1526
+ syntax: "*";
1527
+ inherits: false;
1528
+ initial-value: 0;
1529
+ }
1530
+ @property --tw-divide-y-reverse {
1531
+ syntax: "*";
1532
+ inherits: false;
1533
+ initial-value: 0;
1534
+ }
1535
+ @property --tw-border-style {
1536
+ syntax: "*";
1537
+ inherits: false;
1538
+ initial-value: solid;
1539
+ }
1540
+ @property --tw-gradient-position {
1541
+ syntax: "*";
1542
+ inherits: false;
1543
+ }
1544
+ @property --tw-gradient-from {
1545
+ syntax: "<color>";
1546
+ inherits: false;
1547
+ initial-value: #0000;
1548
+ }
1549
+ @property --tw-gradient-via {
1550
+ syntax: "<color>";
1551
+ inherits: false;
1552
+ initial-value: #0000;
1553
+ }
1554
+ @property --tw-gradient-to {
1555
+ syntax: "<color>";
1556
+ inherits: false;
1557
+ initial-value: #0000;
1558
+ }
1559
+ @property --tw-gradient-stops {
1560
+ syntax: "*";
1561
+ inherits: false;
1562
+ }
1563
+ @property --tw-gradient-via-stops {
1564
+ syntax: "*";
1565
+ inherits: false;
1566
+ }
1567
+ @property --tw-gradient-from-position {
1568
+ syntax: "<length-percentage>";
1569
+ inherits: false;
1570
+ initial-value: 0%;
1571
+ }
1572
+ @property --tw-gradient-via-position {
1573
+ syntax: "<length-percentage>";
1574
+ inherits: false;
1575
+ initial-value: 50%;
1576
+ }
1577
+ @property --tw-gradient-to-position {
1578
+ syntax: "<length-percentage>";
1579
+ inherits: false;
1580
+ initial-value: 100%;
1581
+ }
1582
+ @property --tw-leading {
1583
+ syntax: "*";
1584
+ inherits: false;
1585
+ }
1586
+ @property --tw-font-weight {
1587
+ syntax: "*";
1588
+ inherits: false;
1589
+ }
1590
+ @property --tw-tracking {
1591
+ syntax: "*";
1592
+ inherits: false;
1593
+ }
1594
+ @property --tw-shadow {
1595
+ syntax: "*";
1596
+ inherits: false;
1597
+ initial-value: 0 0 #0000;
1598
+ }
1599
+ @property --tw-shadow-color {
1600
+ syntax: "*";
1601
+ inherits: false;
1602
+ }
1603
+ @property --tw-shadow-alpha {
1604
+ syntax: "<percentage>";
1605
+ inherits: false;
1606
+ initial-value: 100%;
1607
+ }
1608
+ @property --tw-inset-shadow {
1609
+ syntax: "*";
1610
+ inherits: false;
1611
+ initial-value: 0 0 #0000;
1612
+ }
1613
+ @property --tw-inset-shadow-color {
1614
+ syntax: "*";
1615
+ inherits: false;
1616
+ }
1617
+ @property --tw-inset-shadow-alpha {
1618
+ syntax: "<percentage>";
1619
+ inherits: false;
1620
+ initial-value: 100%;
1621
+ }
1622
+ @property --tw-ring-color {
1623
+ syntax: "*";
1624
+ inherits: false;
1625
+ }
1626
+ @property --tw-ring-shadow {
1627
+ syntax: "*";
1628
+ inherits: false;
1629
+ initial-value: 0 0 #0000;
1630
+ }
1631
+ @property --tw-inset-ring-color {
1632
+ syntax: "*";
1633
+ inherits: false;
1634
+ }
1635
+ @property --tw-inset-ring-shadow {
1636
+ syntax: "*";
1637
+ inherits: false;
1638
+ initial-value: 0 0 #0000;
1639
+ }
1640
+ @property --tw-ring-inset {
1641
+ syntax: "*";
1642
+ inherits: false;
1643
+ }
1644
+ @property --tw-ring-offset-width {
1645
+ syntax: "<length>";
1646
+ inherits: false;
1647
+ initial-value: 0px;
1648
+ }
1649
+ @property --tw-ring-offset-color {
1650
+ syntax: "*";
1651
+ inherits: false;
1652
+ initial-value: #fff;
1653
+ }
1654
+ @property --tw-ring-offset-shadow {
1655
+ syntax: "*";
1656
+ inherits: false;
1657
+ initial-value: 0 0 #0000;
1658
+ }
1659
+ @property --tw-blur {
1660
+ syntax: "*";
1661
+ inherits: false;
1662
+ }
1663
+ @property --tw-brightness {
1664
+ syntax: "*";
1665
+ inherits: false;
1666
+ }
1667
+ @property --tw-contrast {
1668
+ syntax: "*";
1669
+ inherits: false;
1670
+ }
1671
+ @property --tw-grayscale {
1672
+ syntax: "*";
1673
+ inherits: false;
1674
+ }
1675
+ @property --tw-hue-rotate {
1676
+ syntax: "*";
1677
+ inherits: false;
1678
+ }
1679
+ @property --tw-invert {
1680
+ syntax: "*";
1681
+ inherits: false;
1682
+ }
1683
+ @property --tw-opacity {
1684
+ syntax: "*";
1685
+ inherits: false;
1686
+ }
1687
+ @property --tw-saturate {
1688
+ syntax: "*";
1689
+ inherits: false;
1690
+ }
1691
+ @property --tw-sepia {
1692
+ syntax: "*";
1693
+ inherits: false;
1694
+ }
1695
+ @property --tw-drop-shadow {
1696
+ syntax: "*";
1697
+ inherits: false;
1698
+ }
1699
+ @property --tw-drop-shadow-color {
1700
+ syntax: "*";
1701
+ inherits: false;
1702
+ }
1703
+ @property --tw-drop-shadow-alpha {
1704
+ syntax: "<percentage>";
1705
+ inherits: false;
1706
+ initial-value: 100%;
1707
+ }
1708
+ @property --tw-drop-shadow-size {
1709
+ syntax: "*";
1710
+ inherits: false;
1711
+ }
1712
+ @property --tw-backdrop-blur {
1713
+ syntax: "*";
1714
+ inherits: false;
1715
+ }
1716
+ @property --tw-backdrop-brightness {
1717
+ syntax: "*";
1718
+ inherits: false;
1719
+ }
1720
+ @property --tw-backdrop-contrast {
1721
+ syntax: "*";
1722
+ inherits: false;
1723
+ }
1724
+ @property --tw-backdrop-grayscale {
1725
+ syntax: "*";
1726
+ inherits: false;
1727
+ }
1728
+ @property --tw-backdrop-hue-rotate {
1729
+ syntax: "*";
1730
+ inherits: false;
1731
+ }
1732
+ @property --tw-backdrop-invert {
1733
+ syntax: "*";
1734
+ inherits: false;
1735
+ }
1736
+ @property --tw-backdrop-opacity {
1737
+ syntax: "*";
1738
+ inherits: false;
1739
+ }
1740
+ @property --tw-backdrop-saturate {
1741
+ syntax: "*";
1742
+ inherits: false;
1743
+ }
1744
+ @property --tw-backdrop-sepia {
1745
+ syntax: "*";
1746
+ inherits: false;
1747
+ }
1748
+ @property --tw-duration {
1749
+ syntax: "*";
1750
+ inherits: false;
1751
+ }
1752
+ @keyframes spin {
1753
+ to {
1754
+ transform: rotate(360deg);
1755
+ }
1756
+ }
1757
+ @keyframes pulse {
1758
+ 50% {
1759
+ opacity: 0.5;
1760
+ }
1761
+ }
1762
+ @layer properties {
1763
+ @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
1764
+ *, ::before, ::after, ::backdrop {
1765
+ --tw-rotate-x: initial;
1766
+ --tw-rotate-y: initial;
1767
+ --tw-rotate-z: initial;
1768
+ --tw-skew-x: initial;
1769
+ --tw-skew-y: initial;
1770
+ --tw-space-y-reverse: 0;
1771
+ --tw-divide-y-reverse: 0;
1772
+ --tw-border-style: solid;
1773
+ --tw-gradient-position: initial;
1774
+ --tw-gradient-from: #0000;
1775
+ --tw-gradient-via: #0000;
1776
+ --tw-gradient-to: #0000;
1777
+ --tw-gradient-stops: initial;
1778
+ --tw-gradient-via-stops: initial;
1779
+ --tw-gradient-from-position: 0%;
1780
+ --tw-gradient-via-position: 50%;
1781
+ --tw-gradient-to-position: 100%;
1782
+ --tw-leading: initial;
1783
+ --tw-font-weight: initial;
1784
+ --tw-tracking: initial;
1785
+ --tw-shadow: 0 0 #0000;
1786
+ --tw-shadow-color: initial;
1787
+ --tw-shadow-alpha: 100%;
1788
+ --tw-inset-shadow: 0 0 #0000;
1789
+ --tw-inset-shadow-color: initial;
1790
+ --tw-inset-shadow-alpha: 100%;
1791
+ --tw-ring-color: initial;
1792
+ --tw-ring-shadow: 0 0 #0000;
1793
+ --tw-inset-ring-color: initial;
1794
+ --tw-inset-ring-shadow: 0 0 #0000;
1795
+ --tw-ring-inset: initial;
1796
+ --tw-ring-offset-width: 0px;
1797
+ --tw-ring-offset-color: #fff;
1798
+ --tw-ring-offset-shadow: 0 0 #0000;
1799
+ --tw-blur: initial;
1800
+ --tw-brightness: initial;
1801
+ --tw-contrast: initial;
1802
+ --tw-grayscale: initial;
1803
+ --tw-hue-rotate: initial;
1804
+ --tw-invert: initial;
1805
+ --tw-opacity: initial;
1806
+ --tw-saturate: initial;
1807
+ --tw-sepia: initial;
1808
+ --tw-drop-shadow: initial;
1809
+ --tw-drop-shadow-color: initial;
1810
+ --tw-drop-shadow-alpha: 100%;
1811
+ --tw-drop-shadow-size: initial;
1812
+ --tw-backdrop-blur: initial;
1813
+ --tw-backdrop-brightness: initial;
1814
+ --tw-backdrop-contrast: initial;
1815
+ --tw-backdrop-grayscale: initial;
1816
+ --tw-backdrop-hue-rotate: initial;
1817
+ --tw-backdrop-invert: initial;
1818
+ --tw-backdrop-opacity: initial;
1819
+ --tw-backdrop-saturate: initial;
1820
+ --tw-backdrop-sepia: initial;
1821
+ --tw-duration: initial;
1822
+ }
1823
+ }
1824
+ }