maglevcms 3.0.0.beta3 → 3.0.1

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 (153) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +16 -53
  3. data/Rakefile +3 -1
  4. data/app/assets/builds/maglev/tailwind.css +424 -84
  5. data/app/assets/config/maglev_manifest.js +3 -2
  6. data/app/assets/javascripts/maglev/client/dom-operations.js +5 -5
  7. data/app/assets/javascripts/maglev/client/iframe-decorator.js +24 -0
  8. data/app/assets/javascripts/maglev/client/incoming-messages.js +13 -3
  9. data/app/assets/javascripts/maglev/client/index.js +3 -2
  10. data/app/assets/javascripts/maglev/client/utils.js +22 -0
  11. data/app/assets/javascripts/maglev/editor/controllers/app/forms/section_form_controller.js +4 -3
  12. data/app/assets/javascripts/maglev/editor/controllers/app/forms/style_form_controller.js +2 -1
  13. data/app/assets/javascripts/maglev/editor/controllers/app/page_preview_controller.js +96 -5
  14. data/app/assets/javascripts/maglev/editor/controllers/app/preview_notification_center_controller.js +105 -23
  15. data/app/assets/javascripts/maglev/editor/controllers/app/setting_controller.js +3 -2
  16. data/app/assets/javascripts/maglev/editor/controllers/shared/copy_to_clipboard_controller.js +2 -1
  17. data/app/assets/javascripts/maglev/editor/controllers/utils.js +22 -0
  18. data/app/assets/javascripts/maglev/editor/index.js +2 -1
  19. data/app/assets/javascripts/maglev/editor/patches/turbo_stream_patch.js +3 -3
  20. data/app/assets/stylesheets/maglev/tailwind.css.erb +8 -1
  21. data/app/components/maglev/content/link.rb +1 -1
  22. data/app/components/maglev/editor/settings/link/link_component.rb +7 -1
  23. data/app/components/maglev/section_component.rb +11 -1
  24. data/app/components/maglev/uikit/app_layout/sidebar/link_component.html.erb +1 -1
  25. data/app/components/maglev/uikit/app_layout/sidebar/link_component.rb +35 -5
  26. data/app/components/maglev/uikit/app_layout/sidebar_component.html.erb +3 -4
  27. data/app/components/maglev/uikit/app_layout/topbar_component.html.erb +1 -1
  28. data/app/components/maglev/uikit/app_layout/topbar_component.rb +1 -1
  29. data/app/components/maglev/uikit/button_group_component/button_group_component.html.erb +5 -0
  30. data/app/components/maglev/uikit/button_group_component.rb +70 -0
  31. data/app/components/maglev/uikit/device_toggler_component.rb +10 -1
  32. data/app/components/maglev/uikit/dropdown_component/dropdown_component.html.erb +2 -2
  33. data/app/components/maglev/uikit/dropdown_component.rb +6 -1
  34. data/app/components/maglev/uikit/form/color_field_component.html.erb +1 -1
  35. data/app/components/maglev/uikit/form/combobox_component.html.erb +1 -0
  36. data/app/components/maglev/uikit/form/link_component.rb +5 -1
  37. data/app/components/maglev/uikit/form/richtext_controller.js +5 -4
  38. data/app/components/maglev/uikit/form/search_form_component.html.erb +1 -0
  39. data/app/components/maglev/uikit/icon_component.rb +3 -0
  40. data/app/components/maglev/uikit/image_library/uploader_controller.js +3 -2
  41. data/app/components/maglev/uikit/list/list_item_component.html.erb +36 -19
  42. data/app/components/maglev/uikit/list/list_item_component.rb +19 -5
  43. data/app/components/maglev/uikit/locale_switcher_component/locale_switcher_component.html.erb +6 -10
  44. data/app/components/maglev/uikit/menu_dropdown_component/menu_dropdown_component.html.erb +6 -2
  45. data/app/components/maglev/uikit/menu_dropdown_component.rb +244 -7
  46. data/app/components/maglev/uikit/page_actions_dropdown_component/page_actions_dropdown_component.html.erb +39 -46
  47. data/app/components/maglev/uikit/pagination_component/pagination_component.html.erb +9 -12
  48. data/app/components/maglev/uikit/pagination_component.rb +6 -1
  49. data/app/components/maglev/uikit/section_toolbar/bottom_component.html.erb +1 -1
  50. data/app/components/maglev/uikit/tabs_component/tabs_component.html.erb +7 -4
  51. data/app/components/maglev/uikit/tabs_component.rb +23 -4
  52. data/app/components/maglev/uikit/well/simple_well_component.html.erb +15 -0
  53. data/app/components/maglev/uikit/well/simple_well_component.rb +13 -0
  54. data/app/controllers/concerns/maglev/editor/preview_urls_concern.rb +32 -0
  55. data/app/controllers/concerns/maglev/editor/turbo_concern.rb +29 -0
  56. data/app/controllers/concerns/maglev/flash_i18n_concern.rb +1 -0
  57. data/app/controllers/maglev/application_controller.rb +1 -1
  58. data/app/controllers/maglev/assets/active_storage_proxy_controller.rb +2 -1
  59. data/app/controllers/maglev/editor/assets_controller.rb +1 -1
  60. data/app/controllers/maglev/editor/base_controller.rb +6 -32
  61. data/app/controllers/maglev/editor/pages/clone_controller.rb +22 -0
  62. data/app/controllers/maglev/editor/pages/discard_draft_controller.rb +17 -0
  63. data/app/controllers/maglev/editor/pages_controller.rb +26 -7
  64. data/app/controllers/maglev/editor/section_blocks_controller.rb +13 -9
  65. data/app/controllers/maglev/editor/sections_controller.rb +26 -7
  66. data/app/controllers/maglev/published_page_preview_controller.rb +4 -0
  67. data/app/helpers/maglev/application_helper.rb +6 -6
  68. data/app/helpers/maglev/editor/section_blocks_helper.rb +2 -2
  69. data/app/models/maglev/page/publishable_concern.rb +69 -0
  70. data/app/models/maglev/page.rb +2 -13
  71. data/app/models/maglev/section/block.rb +4 -0
  72. data/app/models/maglev/section/content_concern.rb +3 -1
  73. data/app/models/maglev/section.rb +21 -1
  74. data/app/models/maglev/sections_content_store.rb +1 -3
  75. data/app/services/concerns/maglev/content/helpers_concern.rb +5 -8
  76. data/app/services/maglev/app_container.rb +4 -2
  77. data/app/services/maglev/discard_page_draft_service.rb +45 -0
  78. data/app/services/maglev/fetch_section_screenshot_url.rb +12 -1
  79. data/app/services/maglev/has_unpublished_changes.rb +21 -0
  80. data/app/services/maglev/publish_service.rb +15 -2
  81. data/app/views/layouts/maglev/editor/_sidebar.html.erb +6 -1
  82. data/app/views/layouts/maglev/editor/application.html.erb +5 -0
  83. data/app/views/layouts/maglev/editor/topbar/_page_info.html.erb +1 -1
  84. data/app/views/layouts/maglev/editor/topbar/_publish_button.html.erb +32 -10
  85. data/app/views/maglev/editor/assets/_list.html.erb +2 -1
  86. data/app/views/maglev/editor/assets/index.html.erb +1 -0
  87. data/app/views/maglev/editor/home/index.html.erb +1 -1
  88. data/app/views/maglev/editor/links/edit/_email.html.erb +1 -1
  89. data/app/views/maglev/editor/links/edit/_url.html.erb +1 -1
  90. data/app/views/maglev/editor/pages/_list.html.erb +25 -21
  91. data/app/views/maglev/editor/pages/_preview.html.erb +6 -6
  92. data/app/views/maglev/editor/pages/_preview_empty_message.html.erb +13 -10
  93. data/app/views/maglev/editor/pages/discard_draft/create.turbo_stream.erb +16 -0
  94. data/app/views/maglev/editor/pages/index.html.erb +8 -1
  95. data/app/views/maglev/editor/section_blocks/_form.html.erb +5 -13
  96. data/app/views/maglev/editor/section_blocks/_form_with_tabs.html.erb +15 -0
  97. data/app/views/maglev/editor/section_blocks/_new.html.erb +1 -1
  98. data/app/views/maglev/editor/section_blocks/edit.html.erb +2 -2
  99. data/app/views/maglev/editor/section_blocks/index/_list.html.erb +2 -2
  100. data/app/views/maglev/editor/section_blocks/index/_tree.html.erb +1 -1
  101. data/app/views/maglev/editor/section_blocks/update.turbo_stream.erb +1 -1
  102. data/app/views/maglev/editor/sections/_form.html.erb +6 -20
  103. data/app/views/maglev/editor/sections/_form_with_tabs.html.erb +21 -0
  104. data/app/views/maglev/editor/sections/_list.html.erb +3 -3
  105. data/app/views/maglev/editor/sections/edit.html.erb +4 -4
  106. data/app/views/maglev/editor/sections/index.html.erb +1 -1
  107. data/app/views/maglev/editor/sections/new.html.erb +19 -2
  108. data/app/views/maglev/editor/sections/theme/_empty_list.html.erb +3 -0
  109. data/app/views/maglev/editor/sections/theme/_list.html.erb +35 -0
  110. data/app/views/maglev/editor/sections/theme/_screenshot_placeholder.html.erb +6 -0
  111. data/app/views/maglev/editor/sections/theme/_search.html.erb +22 -0
  112. data/app/views/maglev/editor/sections/update.turbo_stream.erb +1 -1
  113. data/app/views/maglev/editor/shared/_button_label.html.erb +4 -4
  114. data/app/views/maglev/editor/style/edit.html.erb +1 -0
  115. data/config/editor_importmap.rb +13 -13
  116. data/config/locales/editor.ar.yml +12 -4
  117. data/config/locales/editor.en.yml +31 -23
  118. data/config/locales/editor.es.yml +12 -4
  119. data/config/locales/editor.fr.yml +12 -4
  120. data/config/locales/editor.pt-BR.yml +12 -4
  121. data/config/routes/maglev/assets.rb +4 -0
  122. data/config/routes/maglev/editor.rb +38 -0
  123. data/config/routes/maglev/preview.rb +8 -0
  124. data/config/routes/maglev/public_preview.rb +6 -0
  125. data/config/routes.rb +8 -47
  126. data/db/migrate/20211013210954_translate_section_content.rb +1 -0
  127. data/db/migrate/20260114112058_add_published_payload_to_pages.rb +14 -0
  128. data/exe/tailwind-cli +1 -1
  129. data/lib/generators/maglev/install_generator.rb +9 -7
  130. data/lib/generators/maglev/templates/install/config/initializers/maglev.rb +10 -3
  131. data/lib/maglev/active_storage/serving_blob.rb +29 -0
  132. data/lib/maglev/active_storage.rb +2 -0
  133. data/lib/maglev/config.rb +22 -3
  134. data/lib/maglev/engine.rb +14 -10
  135. data/lib/maglev/version.rb +1 -1
  136. data/lib/maglev.rb +18 -3
  137. data/lib/tasks/db_test_all.rake +290 -0
  138. metadata +46 -19
  139. data/app/controllers/maglev/editor/page_clone_controller.rb +0 -20
  140. data/app/views/maglev/editor/sections/_theme_list.html.erb +0 -32
  141. /data/vendor/javascript/{@floating-ui--core.js → maglev/@floating-ui--core.js} +0 -0
  142. /data/vendor/javascript/{@floating-ui--dom.js → maglev/@floating-ui--dom.js} +0 -0
  143. /data/vendor/javascript/{@floating-ui--utils--dom.js → maglev/@floating-ui--utils--dom.js} +0 -0
  144. /data/vendor/javascript/{@floating-ui--utils.js → maglev/@floating-ui--utils.js} +0 -0
  145. /data/vendor/javascript/{@hotwired--stimulus.js → maglev/@hotwired--stimulus.js} +0 -0
  146. /data/vendor/javascript/{@hotwired--turbo-rails.js → maglev/@hotwired--turbo-rails.js} +0 -0
  147. /data/vendor/javascript/{@hotwired--turbo.js → maglev/@hotwired--turbo.js} +0 -0
  148. /data/vendor/javascript/{@rails--actioncable--src.js → maglev/@rails--actioncable--src.js} +0 -0
  149. /data/vendor/javascript/{@rails--request.js.js → maglev/@rails--request.js.js} +0 -0
  150. /data/vendor/javascript/{@shopify--draggable.js → maglev/@shopify--draggable.js} +0 -0
  151. /data/vendor/javascript/{el-transition.js → maglev/el-transition.js} +0 -0
  152. /data/vendor/javascript/{stimulus-use.js → maglev/stimulus-use.js} +0 -0
  153. /data/vendor/javascript/{tiptap.bundle.js → maglev/tiptap.bundle.js} +0 -0
@@ -1,4 +1,4 @@
1
- /*! tailwindcss v4.1.11 | MIT License | https://tailwindcss.com */
1
+ /*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
2
2
  @import url("https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@300;400;600;700&display=swap");
3
3
  @layer properties;
4
4
  @layer theme, base, components, utilities;
@@ -10,21 +10,24 @@
10
10
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New',
11
11
  monospace;
12
12
  --color-red-100: oklch(93.6% 0.032 17.717);
13
+ --color-red-400: oklch(70.4% 0.191 22.216);
13
14
  --color-red-500: oklch(63.7% 0.237 25.331);
14
15
  --color-red-600: oklch(57.7% 0.245 27.325);
15
16
  --color-red-700: oklch(50.5% 0.213 27.518);
16
- --color-red-900: oklch(39.6% 0.141 25.723);
17
- --color-orange-200: oklch(90.1% 0.076 70.697);
18
- --color-orange-300: oklch(83.7% 0.128 66.29);
19
17
  --color-orange-400: oklch(75% 0.183 55.934);
20
- --color-orange-500: oklch(70.5% 0.213 47.604);
18
+ --color-yellow-400: oklch(85.2% 0.199 91.936);
21
19
  --color-yellow-500: oklch(79.5% 0.184 86.047);
22
20
  --color-yellow-600: oklch(68.1% 0.162 75.834);
23
21
  --color-green-100: oklch(96.2% 0.044 156.743);
22
+ --color-green-200: oklch(92.5% 0.084 155.995);
23
+ --color-green-300: oklch(87.1% 0.15 154.449);
24
+ --color-green-400: oklch(79.2% 0.209 151.711);
24
25
  --color-green-500: oklch(72.3% 0.219 149.579);
25
26
  --color-green-700: oklch(52.7% 0.154 150.069);
27
+ --color-blue-400: oklch(70.7% 0.165 254.624);
26
28
  --color-blue-500: oklch(62.3% 0.214 259.815);
27
29
  --color-indigo-500: oklch(58.5% 0.233 277.117);
30
+ --color-purple-400: oklch(71.4% 0.203 305.504);
28
31
  --color-gray-50: oklch(98.5% 0.002 247.839);
29
32
  --color-gray-100: oklch(96.7% 0.003 264.542);
30
33
  --color-gray-200: oklch(92.8% 0.006 264.531);
@@ -40,6 +43,7 @@
40
43
  --color-zinc-500: oklch(55.2% 0.016 285.938);
41
44
  --color-zinc-900: oklch(21% 0.006 285.885);
42
45
  --color-neutral-600: oklch(43.9% 0 0);
46
+ --color-neutral-900: oklch(20.5% 0 0);
43
47
  --color-stone-100: oklch(97% 0.001 106.424);
44
48
  --color-stone-300: oklch(86.9% 0.005 56.366);
45
49
  --color-black: #000;
@@ -51,6 +55,9 @@
51
55
  --container-xl: 36rem;
52
56
  --container-2xl: 42rem;
53
57
  --container-3xl: 48rem;
58
+ --container-4xl: 56rem;
59
+ --container-5xl: 64rem;
60
+ --container-6xl: 72rem;
54
61
  --container-7xl: 80rem;
55
62
  --text-xs: 0.75rem;
56
63
  --text-xs--line-height: calc(1 / 0.75);
@@ -235,6 +242,9 @@
235
242
  ::-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 {
236
243
  padding-block: 0;
237
244
  }
245
+ ::-webkit-calendar-picker-indicator {
246
+ line-height: 1;
247
+ }
238
248
  :-moz-ui-invalid {
239
249
  box-shadow: none;
240
250
  }
@@ -268,7 +278,7 @@
268
278
  padding: 0;
269
279
  margin: -1px;
270
280
  overflow: hidden;
271
- clip: rect(0, 0, 0, 0);
281
+ clip-path: inset(50%);
272
282
  white-space: nowrap;
273
283
  border-width: 0;
274
284
  }
@@ -320,9 +330,6 @@
320
330
  .right-3 {
321
331
  right: calc(var(--spacing) * 3);
322
332
  }
323
- .-bottom-0\.5 {
324
- bottom: calc(var(--spacing) * -0.5);
325
- }
326
333
  .-bottom-0\.25 {
327
334
  bottom: calc(var(--spacing) * -0.25);
328
335
  }
@@ -347,6 +354,9 @@
347
354
  .isolate {
348
355
  isolation: isolate;
349
356
  }
357
+ .z-0 {
358
+ z-index: 0;
359
+ }
350
360
  .z-5 {
351
361
  z-index: 5;
352
362
  }
@@ -362,6 +372,9 @@
362
372
  .z-50 {
363
373
  z-index: 50;
364
374
  }
375
+ .z-\[5\] {
376
+ z-index: 5;
377
+ }
365
378
  .col-span-1 {
366
379
  grid-column: span 1 / span 1;
367
380
  }
@@ -374,6 +387,9 @@
374
387
  .col-start-1 {
375
388
  grid-column-start: 1;
376
389
  }
390
+ .col-start-2 {
391
+ grid-column-start: 2;
392
+ }
377
393
  .row-start-1 {
378
394
  grid-row-start: 1;
379
395
  }
@@ -395,6 +411,12 @@
395
411
  max-width: 96rem;
396
412
  }
397
413
  }
414
+ .-mx-4 {
415
+ margin-inline: calc(var(--spacing) * -4);
416
+ }
417
+ .mx-1 {
418
+ margin-inline: calc(var(--spacing) * 1);
419
+ }
398
420
  .mx-2 {
399
421
  margin-inline: calc(var(--spacing) * 2);
400
422
  }
@@ -404,9 +426,18 @@
404
426
  .mx-auto {
405
427
  margin-inline: auto;
406
428
  }
429
+ .-my-4 {
430
+ margin-block: calc(var(--spacing) * -4);
431
+ }
432
+ .my-1 {
433
+ margin-block: calc(var(--spacing) * 1);
434
+ }
407
435
  .my-2 {
408
436
  margin-block: calc(var(--spacing) * 2);
409
437
  }
438
+ .my-10 {
439
+ margin-block: calc(var(--spacing) * 10);
440
+ }
410
441
  .my-20 {
411
442
  margin-block: calc(var(--spacing) * 20);
412
443
  }
@@ -446,9 +477,6 @@
446
477
  .-mr-1 {
447
478
  margin-right: calc(var(--spacing) * -1);
448
479
  }
449
- .-mr-4 {
450
- margin-right: calc(var(--spacing) * -4);
451
- }
452
480
  .mr-2 {
453
481
  margin-right: calc(var(--spacing) * 2);
454
482
  }
@@ -461,6 +489,12 @@
461
489
  .mb-1 {
462
490
  margin-bottom: calc(var(--spacing) * 1);
463
491
  }
492
+ .mb-2 {
493
+ margin-bottom: calc(var(--spacing) * 2);
494
+ }
495
+ .mb-3 {
496
+ margin-bottom: calc(var(--spacing) * 3);
497
+ }
464
498
  .mb-4 {
465
499
  margin-bottom: calc(var(--spacing) * 4);
466
500
  }
@@ -479,9 +513,6 @@
479
513
  .-ml-1 {
480
514
  margin-left: calc(var(--spacing) * -1);
481
515
  }
482
- .-ml-4 {
483
- margin-left: calc(var(--spacing) * -4);
484
- }
485
516
  .ml-1 {
486
517
  margin-left: calc(var(--spacing) * 1);
487
518
  }
@@ -534,8 +565,8 @@
534
565
  .h-1\.5 {
535
566
  height: calc(var(--spacing) * 1.5);
536
567
  }
537
- .h-2 {
538
- height: calc(var(--spacing) * 2);
568
+ .h-3 {
569
+ height: calc(var(--spacing) * 3);
539
570
  }
540
571
  .h-4 {
541
572
  height: calc(var(--spacing) * 4);
@@ -567,6 +598,9 @@
567
598
  .h-24 {
568
599
  height: calc(var(--spacing) * 24);
569
600
  }
601
+ .h-28 {
602
+ height: calc(var(--spacing) * 28);
603
+ }
570
604
  .h-48 {
571
605
  height: calc(var(--spacing) * 48);
572
606
  }
@@ -585,6 +619,9 @@
585
619
  .h-\[100dvh-\(--spacing\(16\)\)\] {
586
620
  height: 100dvh-(calc(var(--spacing) * 16));
587
621
  }
622
+ .h-\[calc\(100dvh-16rem\)\] {
623
+ height: calc(100dvh - 16rem);
624
+ }
588
625
  .h-\[calc\(100vh-4rem\)\] {
589
626
  height: calc(100vh - 4rem);
590
627
  }
@@ -597,14 +634,23 @@
597
634
  .h-screen {
598
635
  height: 100vh;
599
636
  }
637
+ .min-h-0 {
638
+ min-height: calc(var(--spacing) * 0);
639
+ }
640
+ .min-h-11 {
641
+ min-height: calc(var(--spacing) * 11);
642
+ }
600
643
  .min-h-full {
601
644
  min-height: 100%;
602
645
  }
603
646
  .w-1\.5 {
604
647
  width: calc(var(--spacing) * 1.5);
605
648
  }
606
- .w-2 {
607
- width: calc(var(--spacing) * 2);
649
+ .w-1\/2 {
650
+ width: calc(1/2 * 100%);
651
+ }
652
+ .w-2\/3 {
653
+ width: calc(2/3 * 100%);
608
654
  }
609
655
  .w-2\/4 {
610
656
  width: calc(2/4 * 100%);
@@ -633,21 +679,39 @@
633
679
  .w-18 {
634
680
  width: calc(var(--spacing) * 18);
635
681
  }
682
+ .w-24 {
683
+ width: calc(var(--spacing) * 24);
684
+ }
685
+ .w-32 {
686
+ width: calc(var(--spacing) * 32);
687
+ }
636
688
  .w-48 {
637
689
  width: calc(var(--spacing) * 48);
638
690
  }
691
+ .w-64 {
692
+ width: calc(var(--spacing) * 64);
693
+ }
639
694
  .w-80 {
640
695
  width: calc(var(--spacing) * 80);
641
696
  }
697
+ .w-96 {
698
+ width: calc(var(--spacing) * 96);
699
+ }
642
700
  .w-102 {
643
701
  width: calc(var(--spacing) * 102);
644
702
  }
645
703
  .w-104 {
646
704
  width: calc(var(--spacing) * 104);
647
705
  }
706
+ .w-112 {
707
+ width: calc(var(--spacing) * 112);
708
+ }
648
709
  .w-\[51rem\] {
649
710
  width: 51rem;
650
711
  }
712
+ .w-\[calc\(100dvw-4rem\)\] {
713
+ width: calc(100dvw - 4rem);
714
+ }
651
715
  .w-full {
652
716
  width: 100%;
653
717
  }
@@ -678,6 +742,9 @@
678
742
  .min-w-64 {
679
743
  min-width: calc(var(--spacing) * 64);
680
744
  }
745
+ .min-w-\[12rem\] {
746
+ min-width: 12rem;
747
+ }
681
748
  .flex-1 {
682
749
  flex: 1;
683
750
  }
@@ -694,7 +761,7 @@
694
761
  border-collapse: collapse;
695
762
  }
696
763
  .origin-top-left {
697
- transform-origin: top left;
764
+ transform-origin: 0 0;
698
765
  }
699
766
  .-translate-x-\[50\%\] {
700
767
  --tw-translate-x: calc(50% * -1);
@@ -728,6 +795,12 @@
728
795
  --tw-translate-y: 50%;
729
796
  translate: var(--tw-translate-x) var(--tw-translate-y);
730
797
  }
798
+ .scale-75 {
799
+ --tw-scale-x: 75%;
800
+ --tw-scale-y: 75%;
801
+ --tw-scale-z: 75%;
802
+ scale: var(--tw-scale-x) var(--tw-scale-y);
803
+ }
731
804
  .scale-95 {
732
805
  --tw-scale-x: 95%;
733
806
  --tw-scale-y: 95%;
@@ -783,6 +856,12 @@
783
856
  .grid-cols-6 {
784
857
  grid-template-columns: repeat(6, minmax(0, 1fr));
785
858
  }
859
+ .grid-cols-\[auto_1fr_auto\] {
860
+ grid-template-columns: auto 1fr auto;
861
+ }
862
+ .grid-cols-subgrid {
863
+ grid-template-columns: subgrid;
864
+ }
786
865
  .grid-rows-\[1fr\] {
787
866
  grid-template-rows: 1fr;
788
867
  }
@@ -798,6 +877,9 @@
798
877
  .flex-wrap {
799
878
  flex-wrap: wrap;
800
879
  }
880
+ .place-content-center {
881
+ place-content: center;
882
+ }
801
883
  .content-center {
802
884
  align-content: center;
803
885
  }
@@ -925,18 +1007,20 @@
925
1007
  .gap-y-8 {
926
1008
  row-gap: calc(var(--spacing) * 8);
927
1009
  }
928
- .divide-y {
1010
+ .divide-x {
929
1011
  :where(& > :not(:last-child)) {
930
- --tw-divide-y-reverse: 0;
931
- border-bottom-style: var(--tw-border-style);
932
- border-top-style: var(--tw-border-style);
933
- border-top-width: calc(1px * var(--tw-divide-y-reverse));
934
- border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
1012
+ --tw-divide-x-reverse: 0;
1013
+ border-inline-style: var(--tw-border-style);
1014
+ border-inline-start-width: calc(1px * var(--tw-divide-x-reverse));
1015
+ border-inline-end-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));
935
1016
  }
936
1017
  }
937
- .divide-gray-300 {
1018
+ .divide-white\/15 {
938
1019
  :where(& > :not(:last-child)) {
939
- border-color: var(--color-gray-300);
1020
+ border-color: color-mix(in srgb, #fff 15%, transparent);
1021
+ @supports (color: color-mix(in lab, red, red)) {
1022
+ border-color: color-mix(in oklab, var(--color-white) 15%, transparent);
1023
+ }
940
1024
  }
941
1025
  }
942
1026
  .self-center {
@@ -1061,6 +1145,9 @@
1061
1145
  .border-gray-300 {
1062
1146
  border-color: var(--color-gray-300);
1063
1147
  }
1148
+ .border-neutral-900 {
1149
+ border-color: var(--color-neutral-900);
1150
+ }
1064
1151
  .border-transparent {
1065
1152
  border-color: transparent;
1066
1153
  }
@@ -1082,6 +1169,9 @@
1082
1169
  background-color: color-mix(in oklab, var(--color-black) 90%, transparent);
1083
1170
  }
1084
1171
  }
1172
+ .bg-blue-400 {
1173
+ background-color: var(--color-blue-400);
1174
+ }
1085
1175
  .bg-blue-500\/20 {
1086
1176
  background-color: color-mix(in srgb, oklch(62.3% 0.214 259.815) 20%, transparent);
1087
1177
  @supports (color: color-mix(in lab, red, red)) {
@@ -1091,10 +1181,10 @@
1091
1181
  .bg-editor-primary {
1092
1182
  background-color: var(--color-editor-primary);
1093
1183
  }
1094
- .bg-editor-primary\/95 {
1184
+ .bg-editor-primary\/10 {
1095
1185
  background-color: var(--color-editor-primary);
1096
1186
  @supports (color: color-mix(in lab, red, red)) {
1097
- background-color: color-mix(in oklab, var(--color-editor-primary) 95%, transparent);
1187
+ background-color: color-mix(in oklab, var(--color-editor-primary) 10%, transparent);
1098
1188
  }
1099
1189
  }
1100
1190
  .bg-gray-50 {
@@ -1106,6 +1196,9 @@
1106
1196
  .bg-gray-200 {
1107
1197
  background-color: var(--color-gray-200);
1108
1198
  }
1199
+ .bg-gray-300 {
1200
+ background-color: var(--color-gray-300);
1201
+ }
1109
1202
  .bg-gray-400 {
1110
1203
  background-color: var(--color-gray-400);
1111
1204
  }
@@ -1124,21 +1217,27 @@
1124
1217
  background-color: color-mix(in oklab, var(--color-gray-600) 0%, transparent);
1125
1218
  }
1126
1219
  }
1220
+ .bg-gray-800 {
1221
+ background-color: var(--color-gray-800);
1222
+ }
1127
1223
  .bg-green-100 {
1128
1224
  background-color: var(--color-green-100);
1129
1225
  }
1226
+ .bg-green-200 {
1227
+ background-color: var(--color-green-200);
1228
+ }
1229
+ .bg-green-300 {
1230
+ background-color: var(--color-green-300);
1231
+ }
1232
+ .bg-green-400 {
1233
+ background-color: var(--color-green-400);
1234
+ }
1130
1235
  .bg-green-500\/20 {
1131
1236
  background-color: color-mix(in srgb, oklch(72.3% 0.219 149.579) 20%, transparent);
1132
1237
  @supports (color: color-mix(in lab, red, red)) {
1133
1238
  background-color: color-mix(in oklab, var(--color-green-500) 20%, transparent);
1134
1239
  }
1135
1240
  }
1136
- .bg-green-500\/75 {
1137
- background-color: color-mix(in srgb, oklch(72.3% 0.219 149.579) 75%, transparent);
1138
- @supports (color: color-mix(in lab, red, red)) {
1139
- background-color: color-mix(in oklab, var(--color-green-500) 75%, transparent);
1140
- }
1141
- }
1142
1241
  .bg-indigo-500 {
1143
1242
  background-color: var(--color-indigo-500);
1144
1243
  }
@@ -1148,21 +1247,18 @@
1148
1247
  background-color: color-mix(in oklab, var(--color-neutral-600) 75%, transparent);
1149
1248
  }
1150
1249
  }
1151
- .bg-orange-200 {
1152
- background-color: var(--color-orange-200);
1153
- }
1154
- .bg-orange-300 {
1155
- background-color: var(--color-orange-300);
1156
- }
1157
1250
  .bg-orange-400 {
1158
1251
  background-color: var(--color-orange-400);
1159
1252
  }
1160
- .bg-orange-500 {
1161
- background-color: var(--color-orange-500);
1253
+ .bg-purple-400 {
1254
+ background-color: var(--color-purple-400);
1162
1255
  }
1163
1256
  .bg-red-100 {
1164
1257
  background-color: var(--color-red-100);
1165
1258
  }
1259
+ .bg-red-400 {
1260
+ background-color: var(--color-red-400);
1261
+ }
1166
1262
  .bg-red-500 {
1167
1263
  background-color: var(--color-red-500);
1168
1264
  }
@@ -1178,14 +1274,8 @@
1178
1274
  .bg-white {
1179
1275
  background-color: var(--color-white);
1180
1276
  }
1181
- .bg-white\/25 {
1182
- background-color: color-mix(in srgb, #fff 25%, transparent);
1183
- @supports (color: color-mix(in lab, red, red)) {
1184
- background-color: color-mix(in oklab, var(--color-white) 25%, transparent);
1185
- }
1186
- }
1187
- .bg-yellow-500 {
1188
- background-color: var(--color-yellow-500);
1277
+ .bg-yellow-400 {
1278
+ background-color: var(--color-yellow-400);
1189
1279
  }
1190
1280
  .bg-yellow-500\/20 {
1191
1281
  background-color: color-mix(in srgb, oklch(79.5% 0.184 86.047) 20%, transparent);
@@ -1237,8 +1327,11 @@
1237
1327
  .p-0\.5 {
1238
1328
  padding: calc(var(--spacing) * 0.5);
1239
1329
  }
1240
- .p-1 {
1241
- padding: calc(var(--spacing) * 1);
1330
+ .p-2 {
1331
+ padding: calc(var(--spacing) * 2);
1332
+ }
1333
+ .p-3 {
1334
+ padding: calc(var(--spacing) * 3);
1242
1335
  }
1243
1336
  .p-4 {
1244
1337
  padding: calc(var(--spacing) * 4);
@@ -1252,6 +1345,9 @@
1252
1345
  .px-0 {
1253
1346
  padding-inline: calc(var(--spacing) * 0);
1254
1347
  }
1348
+ .px-0\! {
1349
+ padding-inline: calc(var(--spacing) * 0) !important;
1350
+ }
1255
1351
  .px-1 {
1256
1352
  padding-inline: calc(var(--spacing) * 1);
1257
1353
  }
@@ -1261,6 +1357,9 @@
1261
1357
  .px-2 {
1262
1358
  padding-inline: calc(var(--spacing) * 2);
1263
1359
  }
1360
+ .px-2\! {
1361
+ padding-inline: calc(var(--spacing) * 2) !important;
1362
+ }
1264
1363
  .px-2\.5 {
1265
1364
  padding-inline: calc(var(--spacing) * 2.5);
1266
1365
  }
@@ -1291,9 +1390,6 @@
1291
1390
  .py-3 {
1292
1391
  padding-block: calc(var(--spacing) * 3);
1293
1392
  }
1294
- .py-3\.5 {
1295
- padding-block: calc(var(--spacing) * 3.5);
1296
- }
1297
1393
  .py-4 {
1298
1394
  padding-block: calc(var(--spacing) * 4);
1299
1395
  }
@@ -1303,6 +1399,9 @@
1303
1399
  .py-6 {
1304
1400
  padding-block: calc(var(--spacing) * 6);
1305
1401
  }
1402
+ .py-12 {
1403
+ padding-block: calc(var(--spacing) * 12);
1404
+ }
1306
1405
  .py-20 {
1307
1406
  padding-block: calc(var(--spacing) * 20);
1308
1407
  }
@@ -1324,9 +1423,6 @@
1324
1423
  .pt-32 {
1325
1424
  padding-top: calc(var(--spacing) * 32);
1326
1425
  }
1327
- .pr-2 {
1328
- padding-right: calc(var(--spacing) * 2);
1329
- }
1330
1426
  .pr-4 {
1331
1427
  padding-right: calc(var(--spacing) * 4);
1332
1428
  }
@@ -1348,9 +1444,6 @@
1348
1444
  .pb-4 {
1349
1445
  padding-bottom: calc(var(--spacing) * 4);
1350
1446
  }
1351
- .pb-6 {
1352
- padding-bottom: calc(var(--spacing) * 6);
1353
- }
1354
1447
  .pb-8 {
1355
1448
  padding-bottom: calc(var(--spacing) * 8);
1356
1449
  }
@@ -1366,9 +1459,6 @@
1366
1459
  .pl-3 {
1367
1460
  padding-left: calc(var(--spacing) * 3);
1368
1461
  }
1369
- .pl-4 {
1370
- padding-left: calc(var(--spacing) * 4);
1371
- }
1372
1462
  .pl-11 {
1373
1463
  padding-left: calc(var(--spacing) * 11);
1374
1464
  }
@@ -1522,15 +1612,15 @@
1522
1612
  .text-green-700 {
1523
1613
  color: var(--color-green-700);
1524
1614
  }
1615
+ .text-neutral-900 {
1616
+ color: var(--color-neutral-900);
1617
+ }
1525
1618
  .text-red-600 {
1526
1619
  color: var(--color-red-600);
1527
1620
  }
1528
1621
  .text-red-700 {
1529
1622
  color: var(--color-red-700);
1530
1623
  }
1531
- .text-red-900 {
1532
- color: var(--color-red-900);
1533
- }
1534
1624
  .text-stone-300 {
1535
1625
  color: var(--color-stone-300);
1536
1626
  }
@@ -1649,7 +1739,7 @@
1649
1739
  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,);
1650
1740
  }
1651
1741
  .transition {
1652
- 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, visibility, content-visibility, overlay, pointer-events;
1742
+ 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;
1653
1743
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
1654
1744
  transition-duration: var(--tw-duration, var(--default-transition-duration));
1655
1745
  }
@@ -1715,6 +1805,10 @@
1715
1805
  .will-change-transform {
1716
1806
  will-change: transform;
1717
1807
  }
1808
+ .outline-none {
1809
+ --tw-outline-style: none;
1810
+ outline-style: none;
1811
+ }
1718
1812
  .select-none {
1719
1813
  -webkit-user-select: none;
1720
1814
  user-select: none;
@@ -1828,11 +1922,6 @@
1828
1922
  display: none;
1829
1923
  }
1830
1924
  }
1831
- .group-\[\.is-empty\]\:flex {
1832
- &:is(:where(.group):is(.is-empty) *) {
1833
- display: flex;
1834
- }
1835
- }
1836
1925
  .group-\[\.is-empty\]\/color\:bg-white\! {
1837
1926
  &:is(:where(.group\/color):is(.is-empty) *) {
1838
1927
  background-color: var(--color-white) !important;
@@ -1855,6 +1944,11 @@
1855
1944
  display: inline-flex;
1856
1945
  }
1857
1946
  }
1947
+ .group-\[\.is-error\]\/form\:bg-red-500 {
1948
+ &:is(:where(.group\/form):is(.is-error) *) {
1949
+ background-color: var(--color-red-500);
1950
+ }
1951
+ }
1858
1952
  .group-\[\.is-error\]\/form\:bg-red-500\/95 {
1859
1953
  &:is(:where(.group\/form):is(.is-error) *) {
1860
1954
  background-color: color-mix(in srgb, oklch(63.7% 0.237 25.331) 95%, transparent);
@@ -1913,6 +2007,11 @@
1913
2007
  display: inline-flex;
1914
2008
  }
1915
2009
  }
2010
+ .group-\[\.is-success\]\/form\:bg-green-500 {
2011
+ &:is(:where(.group\/form):is(.is-success) *) {
2012
+ background-color: var(--color-green-500);
2013
+ }
2014
+ }
1916
2015
  .group-\[\.is-success\]\/form\:bg-green-500\/95 {
1917
2016
  &:is(:where(.group\/form):is(.is-success) *) {
1918
2017
  background-color: color-mix(in srgb, oklch(72.3% 0.219 149.579) 95%, transparent);
@@ -1958,6 +2057,13 @@
1958
2057
  border-bottom-right-radius: var(--radius-sm);
1959
2058
  }
1960
2059
  }
2060
+ .hover\:z-10 {
2061
+ &:hover {
2062
+ @media (hover: hover) {
2063
+ z-index: 10;
2064
+ }
2065
+ }
2066
+ }
1961
2067
  .hover\:-translate-y-1 {
1962
2068
  &:hover {
1963
2069
  @media (hover: hover) {
@@ -1966,6 +2072,16 @@
1966
2072
  }
1967
2073
  }
1968
2074
  }
2075
+ .hover\:scale-105 {
2076
+ &:hover {
2077
+ @media (hover: hover) {
2078
+ --tw-scale-x: 105%;
2079
+ --tw-scale-y: 105%;
2080
+ --tw-scale-z: 105%;
2081
+ scale: var(--tw-scale-x) var(--tw-scale-y);
2082
+ }
2083
+ }
2084
+ }
1969
2085
  .hover\:scale-110 {
1970
2086
  &:hover {
1971
2087
  @media (hover: hover) {
@@ -1986,10 +2102,13 @@
1986
2102
  }
1987
2103
  }
1988
2104
  }
1989
- .hover\:bg-editor-primary\/100 {
2105
+ .hover\:bg-editor-primary\/90 {
1990
2106
  &:hover {
1991
2107
  @media (hover: hover) {
1992
2108
  background-color: var(--color-editor-primary);
2109
+ @supports (color: color-mix(in lab, red, red)) {
2110
+ background-color: color-mix(in oklab, var(--color-editor-primary) 90%, transparent);
2111
+ }
1993
2112
  }
1994
2113
  }
1995
2114
  }
@@ -2031,6 +2150,20 @@
2031
2150
  }
2032
2151
  }
2033
2152
  }
2153
+ .hover\:bg-neutral-900 {
2154
+ &:hover {
2155
+ @media (hover: hover) {
2156
+ background-color: var(--color-neutral-900);
2157
+ }
2158
+ }
2159
+ }
2160
+ .hover\:bg-red-100 {
2161
+ &:hover {
2162
+ @media (hover: hover) {
2163
+ background-color: var(--color-red-100);
2164
+ }
2165
+ }
2166
+ }
2034
2167
  .hover\:text-black {
2035
2168
  &:hover {
2036
2169
  @media (hover: hover) {
@@ -2080,6 +2213,13 @@
2080
2213
  }
2081
2214
  }
2082
2215
  }
2216
+ .hover\:underline {
2217
+ &:hover {
2218
+ @media (hover: hover) {
2219
+ text-decoration-line: underline;
2220
+ }
2221
+ }
2222
+ }
2083
2223
  .hover\:shadow-lg {
2084
2224
  &:hover {
2085
2225
  @media (hover: hover) {
@@ -2088,6 +2228,43 @@
2088
2228
  }
2089
2229
  }
2090
2230
  }
2231
+ .hover\:ring-2 {
2232
+ &:hover {
2233
+ @media (hover: hover) {
2234
+ --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
2235
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
2236
+ }
2237
+ }
2238
+ }
2239
+ .hover\:ring-editor-primary\/50 {
2240
+ &:hover {
2241
+ @media (hover: hover) {
2242
+ --tw-ring-color: var(--color-editor-primary);
2243
+ @supports (color: color-mix(in lab, red, red)) {
2244
+ --tw-ring-color: color-mix(in oklab, var(--color-editor-primary) 50%, transparent);
2245
+ }
2246
+ }
2247
+ }
2248
+ }
2249
+ .hover\:ring-inset {
2250
+ &:hover {
2251
+ @media (hover: hover) {
2252
+ --tw-ring-inset: inset;
2253
+ }
2254
+ }
2255
+ }
2256
+ .group-\[\.is-error\]\/form\:hover\:bg-red-500\/90 {
2257
+ &:is(:where(.group\/form):is(.is-error) *) {
2258
+ &:hover {
2259
+ @media (hover: hover) {
2260
+ background-color: color-mix(in srgb, oklch(63.7% 0.237 25.331) 90%, transparent);
2261
+ @supports (color: color-mix(in lab, red, red)) {
2262
+ background-color: color-mix(in oklab, var(--color-red-500) 90%, transparent);
2263
+ }
2264
+ }
2265
+ }
2266
+ }
2267
+ }
2091
2268
  .group-\[\.is-error\]\/form\:hover\:bg-red-500\/100 {
2092
2269
  &:is(:where(.group\/form):is(.is-error) *) {
2093
2270
  &:hover {
@@ -2097,6 +2274,18 @@
2097
2274
  }
2098
2275
  }
2099
2276
  }
2277
+ .group-\[\.is-success\]\/form\:hover\:bg-green-500\/90 {
2278
+ &:is(:where(.group\/form):is(.is-success) *) {
2279
+ &:hover {
2280
+ @media (hover: hover) {
2281
+ background-color: color-mix(in srgb, oklch(72.3% 0.219 149.579) 90%, transparent);
2282
+ @supports (color: color-mix(in lab, red, red)) {
2283
+ background-color: color-mix(in oklab, var(--color-green-500) 90%, transparent);
2284
+ }
2285
+ }
2286
+ }
2287
+ }
2288
+ }
2100
2289
  .group-\[\.is-success\]\/form\:hover\:bg-green-500\/100 {
2101
2290
  &:is(:where(.group\/form):is(.is-success) *) {
2102
2291
  &:hover {
@@ -2157,6 +2346,31 @@
2157
2346
  --tw-ring-inset: inset;
2158
2347
  }
2159
2348
  }
2349
+ .focus-visible\:ring-2 {
2350
+ &:focus-visible {
2351
+ --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
2352
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
2353
+ }
2354
+ }
2355
+ .focus-visible\:ring-editor-primary\/50 {
2356
+ &:focus-visible {
2357
+ --tw-ring-color: var(--color-editor-primary);
2358
+ @supports (color: color-mix(in lab, red, red)) {
2359
+ --tw-ring-color: color-mix(in oklab, var(--color-editor-primary) 50%, transparent);
2360
+ }
2361
+ }
2362
+ }
2363
+ .focus-visible\:ring-offset-2 {
2364
+ &:focus-visible {
2365
+ --tw-ring-offset-width: 2px;
2366
+ --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
2367
+ }
2368
+ }
2369
+ .focus-visible\:ring-offset-white {
2370
+ &:focus-visible {
2371
+ --tw-ring-offset-color: var(--color-white);
2372
+ }
2373
+ }
2160
2374
  .disabled\:bg-editor-primary\/75 {
2161
2375
  &:disabled {
2162
2376
  background-color: var(--color-editor-primary);
@@ -2196,6 +2410,14 @@
2196
2410
  outline-width: 2px;
2197
2411
  }
2198
2412
  }
2413
+ .has-\[\:disabled\]\:bg-editor-primary\/75 {
2414
+ &:has(*:is(:disabled)) {
2415
+ background-color: var(--color-editor-primary);
2416
+ @supports (color: color-mix(in lab, red, red)) {
2417
+ background-color: color-mix(in oklab, var(--color-editor-primary) 75%, transparent);
2418
+ }
2419
+ }
2420
+ }
2199
2421
  .has-\[\:focus\]\:ring {
2200
2422
  &:has(*:is(:focus)) {
2201
2423
  --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
@@ -2277,11 +2499,6 @@
2277
2499
  grid-template-columns: repeat(1, minmax(0, 1fr));
2278
2500
  }
2279
2501
  }
2280
- .sm\:flex-row {
2281
- @media (width >= 40rem) {
2282
- flex-direction: row;
2283
- }
2284
- }
2285
2502
  .sm\:items-center {
2286
2503
  @media (width >= 40rem) {
2287
2504
  align-items: center;
@@ -2292,11 +2509,21 @@
2292
2509
  justify-content: space-between;
2293
2510
  }
2294
2511
  }
2512
+ .sm\:justify-center {
2513
+ @media (width >= 40rem) {
2514
+ justify-content: center;
2515
+ }
2516
+ }
2295
2517
  .sm\:gap-x-6 {
2296
2518
  @media (width >= 40rem) {
2297
2519
  column-gap: calc(var(--spacing) * 6);
2298
2520
  }
2299
2521
  }
2522
+ .sm\:rounded-lg {
2523
+ @media (width >= 40rem) {
2524
+ border-radius: var(--radius-lg);
2525
+ }
2526
+ }
2300
2527
  .sm\:p-6 {
2301
2528
  @media (width >= 40rem) {
2302
2529
  padding: calc(var(--spacing) * 6);
@@ -2490,11 +2717,36 @@
2490
2717
  display: flex;
2491
2718
  }
2492
2719
  }
2720
+ .lg\:w-2xl {
2721
+ @media (width >= 64rem) {
2722
+ width: var(--container-2xl);
2723
+ }
2724
+ }
2725
+ .lg\:w-3xl {
2726
+ @media (width >= 64rem) {
2727
+ width: var(--container-3xl);
2728
+ }
2729
+ }
2730
+ .lg\:w-4xl {
2731
+ @media (width >= 64rem) {
2732
+ width: var(--container-4xl);
2733
+ }
2734
+ }
2735
+ .lg\:w-5xl {
2736
+ @media (width >= 64rem) {
2737
+ width: var(--container-5xl);
2738
+ }
2739
+ }
2493
2740
  .lg\:grid-cols-2 {
2494
2741
  @media (width >= 64rem) {
2495
2742
  grid-template-columns: repeat(2, minmax(0, 1fr));
2496
2743
  }
2497
2744
  }
2745
+ .lg\:grid-cols-3 {
2746
+ @media (width >= 64rem) {
2747
+ grid-template-columns: repeat(3, minmax(0, 1fr));
2748
+ }
2749
+ }
2498
2750
  .lg\:space-x-32 {
2499
2751
  @media (width >= 64rem) {
2500
2752
  :where(& > :not(:last-child)) {
@@ -2530,6 +2782,21 @@
2530
2782
  line-height: var(--tw-leading, var(--text-6xl--line-height));
2531
2783
  }
2532
2784
  }
2785
+ .xl\:w-5xl {
2786
+ @media (width >= 80rem) {
2787
+ width: var(--container-5xl);
2788
+ }
2789
+ }
2790
+ .xl\:w-6xl {
2791
+ @media (width >= 80rem) {
2792
+ width: var(--container-6xl);
2793
+ }
2794
+ }
2795
+ .xl\:grid-cols-3 {
2796
+ @media (width >= 80rem) {
2797
+ grid-template-columns: repeat(3, minmax(0, 1fr));
2798
+ }
2799
+ }
2533
2800
  .xl\:gap-x-8 {
2534
2801
  @media (width >= 80rem) {
2535
2802
  column-gap: calc(var(--spacing) * 8);
@@ -2560,6 +2827,11 @@
2560
2827
  }
2561
2828
  }
2562
2829
  }
2830
+ .editor-preview-empty\:block {
2831
+ body:has([data-controller~="editor-page-preview"].is-empty) & {
2832
+ display: block;
2833
+ }
2834
+ }
2563
2835
  .\[\&\.active\]\:bg-gray-600 {
2564
2836
  &.active {
2565
2837
  background-color: var(--color-gray-600);
@@ -2579,8 +2851,77 @@
2579
2851
  }
2580
2852
  }
2581
2853
  }
2854
+ .\[\.is-error\]\:bg-red-500\/95 {
2855
+ &:is(.is-error) {
2856
+ background-color: color-mix(in srgb, oklch(63.7% 0.237 25.331) 95%, transparent);
2857
+ @supports (color: color-mix(in lab, red, red)) {
2858
+ background-color: color-mix(in oklab, var(--color-red-500) 95%, transparent);
2859
+ }
2860
+ }
2861
+ }
2862
+ .\[\.is-error\]\:hover\:bg-red-500\/100 {
2863
+ &:is(.is-error) {
2864
+ &:hover {
2865
+ @media (hover: hover) {
2866
+ background-color: var(--color-red-500);
2867
+ }
2868
+ }
2869
+ }
2870
+ }
2871
+ .\[\.is-error\]\:disabled\:bg-red-500\/75 {
2872
+ &:is(.is-error) {
2873
+ &:disabled {
2874
+ background-color: color-mix(in srgb, oklch(63.7% 0.237 25.331) 75%, transparent);
2875
+ @supports (color: color-mix(in lab, red, red)) {
2876
+ background-color: color-mix(in oklab, var(--color-red-500) 75%, transparent);
2877
+ }
2878
+ }
2879
+ }
2880
+ }
2881
+ .\[\.is-success\]\:bg-green-500\/95 {
2882
+ &:is(.is-success) {
2883
+ background-color: color-mix(in srgb, oklch(72.3% 0.219 149.579) 95%, transparent);
2884
+ @supports (color: color-mix(in lab, red, red)) {
2885
+ background-color: color-mix(in oklab, var(--color-green-500) 95%, transparent);
2886
+ }
2887
+ }
2888
+ }
2889
+ .\[\.is-success\]\:hover\:bg-green-500\/100 {
2890
+ &:is(.is-success) {
2891
+ &:hover {
2892
+ @media (hover: hover) {
2893
+ background-color: var(--color-green-500);
2894
+ }
2895
+ }
2896
+ }
2897
+ }
2898
+ .\[\.is-success\]\:disabled\:bg-green-500\/75 {
2899
+ &:is(.is-success) {
2900
+ &:disabled {
2901
+ background-color: color-mix(in srgb, oklch(72.3% 0.219 149.579) 75%, transparent);
2902
+ @supports (color: color-mix(in lab, red, red)) {
2903
+ background-color: color-mix(in oklab, var(--color-green-500) 75%, transparent);
2904
+ }
2905
+ }
2906
+ }
2907
+ }
2908
+ .\[\&\>\*\:first-child\]\:rounded-l-sm {
2909
+ &>*:first-child {
2910
+ border-top-left-radius: var(--radius-sm);
2911
+ border-bottom-left-radius: var(--radius-sm);
2912
+ }
2913
+ }
2914
+ .\[\&\>\*\:last-child\]\:rounded-r-sm {
2915
+ &>*:last-child {
2916
+ border-top-right-radius: var(--radius-sm);
2917
+ border-bottom-right-radius: var(--radius-sm);
2918
+ }
2919
+ }
2582
2920
  }
2583
2921
  @layer base {
2922
+ .turbo-progress-bar {
2923
+ background-color: var(--editor-color-primary) !important;
2924
+ }
2584
2925
  .ProseMirror {
2585
2926
  display: block;
2586
2927
  border-radius: 0.25rem;
@@ -2701,7 +3042,6 @@
2701
3042
  overflow: hidden;
2702
3043
  td, th {
2703
3044
  min-width: 1em;
2704
- // border: 2px solid $color-grey;
2705
3045
  border-style: var(--tw-border-style);
2706
3046
  border-width: 2px;
2707
3047
  --tw-border-style: solid;
@@ -2810,7 +3150,7 @@
2810
3150
  inherits: false;
2811
3151
  initial-value: 0;
2812
3152
  }
2813
- @property --tw-divide-y-reverse {
3153
+ @property --tw-divide-x-reverse {
2814
3154
  syntax: "*";
2815
3155
  inherits: false;
2816
3156
  initial-value: 0;
@@ -3019,7 +3359,7 @@
3019
3359
  --tw-skew-y: initial;
3020
3360
  --tw-space-y-reverse: 0;
3021
3361
  --tw-space-x-reverse: 0;
3022
- --tw-divide-y-reverse: 0;
3362
+ --tw-divide-x-reverse: 0;
3023
3363
  --tw-border-style: solid;
3024
3364
  --tw-gradient-position: initial;
3025
3365
  --tw-gradient-from: #0000;