iron-cms 0.18.2 → 0.19.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 (56) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +15 -0
  3. data/app/assets/builds/iron.css +255 -218
  4. data/app/controllers/concerns/iron/api/token_authentication.rb +2 -7
  5. data/app/controllers/concerns/iron/bounded_request_body.rb +48 -0
  6. data/app/controllers/iron/api/base_controller.rb +3 -0
  7. data/app/controllers/iron/api/mcp_controller.rb +119 -0
  8. data/app/controllers/iron/api/openapi_controller.rb +1 -8
  9. data/app/controllers/iron/oauth/authorizations_controller.rb +120 -0
  10. data/app/controllers/iron/oauth/metadata_controller.rb +38 -0
  11. data/app/controllers/iron/oauth/registrations_controller.rb +54 -0
  12. data/app/controllers/iron/oauth/tokens_controller.rb +92 -0
  13. data/app/mcp/iron/mcp/error.rb +5 -0
  14. data/app/mcp/iron/mcp/forbidden.rb +9 -0
  15. data/app/mcp/iron/mcp/invalid_request.rb +5 -0
  16. data/app/mcp/iron/mcp/paginator.rb +19 -0
  17. data/app/mcp/iron/mcp/server.rb +38 -0
  18. data/app/mcp/iron/mcp/tool_context.rb +114 -0
  19. data/app/mcp/iron/mcp/tools/base.rb +61 -0
  20. data/app/mcp/iron/mcp/tools/create_entry.rb +28 -0
  21. data/app/mcp/iron/mcp/tools/delete_entry.rb +25 -0
  22. data/app/mcp/iron/mcp/tools/describe_schema.rb +20 -0
  23. data/app/mcp/iron/mcp/tools/get_entry.rb +25 -0
  24. data/app/mcp/iron/mcp/tools/list_content_types.rb +20 -0
  25. data/app/mcp/iron/mcp/tools/list_entries.rb +27 -0
  26. data/app/mcp/iron/mcp/tools/search.rb +25 -0
  27. data/app/mcp/iron/mcp/tools/update_entry.rb +28 -0
  28. data/app/mcp/iron/mcp/tools/upload_asset.rb +27 -0
  29. data/app/models/iron/api/openapi_spec.rb +7 -0
  30. data/app/models/iron/content/download_budget.rb +31 -0
  31. data/app/models/iron/content.rb +201 -32
  32. data/app/models/iron/field_definition.rb +7 -1
  33. data/app/models/iron/field_definitions/block.rb +3 -1
  34. data/app/models/iron/field_definitions/block_list.rb +3 -1
  35. data/app/models/iron/integration.rb +11 -0
  36. data/app/models/iron/oauth/client.rb +63 -0
  37. data/app/models/iron/oauth/grant.rb +67 -0
  38. data/app/models/iron/oauth/resource.rb +27 -0
  39. data/app/models/iron/oauth/scope.rb +13 -0
  40. data/app/models/iron/oauth/secret.rb +13 -0
  41. data/app/models/iron/oauth/token.rb +123 -0
  42. data/app/models/iron/ssrf_protection.rb +82 -0
  43. data/app/views/iron/authentication/_brandmark.html.erb +5 -0
  44. data/app/views/iron/oauth/authorizations/new.html.erb +34 -0
  45. data/app/views/iron/sessions/new.html.erb +1 -5
  46. data/app/views/layouts/iron/application.html.erb +3 -0
  47. data/app/views/layouts/iron/authentication.html.erb +3 -0
  48. data/config/locales/en.yml +12 -0
  49. data/config/locales/it.yml +12 -0
  50. data/config/routes.rb +1 -0
  51. data/db/migrate/20260626090000_create_iron_oauth_tables.rb +50 -0
  52. data/lib/generators/iron/install/install_generator.rb +19 -0
  53. data/lib/iron/engine.rb +6 -0
  54. data/lib/iron/oauth_body_limit.rb +52 -0
  55. data/lib/iron/version.rb +1 -1
  56. metadata +50 -2
@@ -1,4 +1,4 @@
1
- /*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */
1
+ /*! tailwindcss v4.3.1 | MIT License | https://tailwindcss.com */
2
2
  @layer properties;
3
3
  @layer theme, base, components, utilities;
4
4
  @layer theme {
@@ -922,6 +922,9 @@
922
922
  .collapse {
923
923
  visibility: collapse;
924
924
  }
925
+ .invisible {
926
+ visibility: hidden;
927
+ }
925
928
  .visible {
926
929
  visibility: visible;
927
930
  }
@@ -998,7 +1001,7 @@
998
1001
  }
999
1002
  & > input[type="checkbox"] {
1000
1003
  position: absolute;
1001
- inset: calc(var(--spacing) * 0);
1004
+ inset: 0;
1002
1005
  width: 100%;
1003
1006
  height: 100%;
1004
1007
  appearance: none;
@@ -1231,7 +1234,7 @@
1231
1234
  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,);
1232
1235
  }
1233
1236
  &::-webkit-datetime-edit-fields-wrapper {
1234
- padding: calc(var(--spacing) * 0);
1237
+ padding: 0;
1235
1238
  }
1236
1239
  &::-webkit-date-and-time-value {
1237
1240
  min-height: 1.5em;
@@ -1240,31 +1243,31 @@
1240
1243
  display: inline-flex;
1241
1244
  }
1242
1245
  &::-webkit-datetime-edit {
1243
- padding: calc(var(--spacing) * 0);
1246
+ padding: 0;
1244
1247
  }
1245
1248
  &::-webkit-datetime-edit-year-field {
1246
- padding: calc(var(--spacing) * 0);
1249
+ padding: 0;
1247
1250
  }
1248
1251
  &::-webkit-datetime-edit-month-field {
1249
- padding: calc(var(--spacing) * 0);
1252
+ padding: 0;
1250
1253
  }
1251
1254
  &::-webkit-datetime-edit-day-field {
1252
- padding: calc(var(--spacing) * 0);
1255
+ padding: 0;
1253
1256
  }
1254
1257
  &::-webkit-datetime-edit-hour-field {
1255
- padding: calc(var(--spacing) * 0);
1258
+ padding: 0;
1256
1259
  }
1257
1260
  &::-webkit-datetime-edit-minute-field {
1258
- padding: calc(var(--spacing) * 0);
1261
+ padding: 0;
1259
1262
  }
1260
1263
  &::-webkit-datetime-edit-second-field {
1261
- padding: calc(var(--spacing) * 0);
1264
+ padding: 0;
1262
1265
  }
1263
1266
  &::-webkit-datetime-edit-millisecond-field {
1264
- padding: calc(var(--spacing) * 0);
1267
+ padding: 0;
1265
1268
  }
1266
1269
  &::-webkit-datetime-edit-meridiem-field {
1267
- padding: calc(var(--spacing) * 0);
1270
+ padding: 0;
1268
1271
  }
1269
1272
  }
1270
1273
  }
@@ -1397,31 +1400,31 @@
1397
1400
  position: sticky;
1398
1401
  }
1399
1402
  .inset-0 {
1400
- inset: calc(var(--spacing) * 0);
1403
+ inset: 0;
1401
1404
  }
1402
1405
  .inset-y-0 {
1403
- inset-block: calc(var(--spacing) * 0);
1406
+ inset-block: 0;
1404
1407
  }
1405
1408
  .top-0 {
1406
- top: calc(var(--spacing) * 0);
1409
+ top: 0;
1407
1410
  }
1408
1411
  .top-full {
1409
1412
  top: 100%;
1410
1413
  }
1411
1414
  .right-0 {
1412
- right: calc(var(--spacing) * 0);
1415
+ right: 0;
1413
1416
  }
1414
1417
  .right-8 {
1415
1418
  right: calc(var(--spacing) * 8);
1416
1419
  }
1417
1420
  .bottom-0 {
1418
- bottom: calc(var(--spacing) * 0);
1421
+ bottom: 0;
1419
1422
  }
1420
1423
  .bottom-8 {
1421
1424
  bottom: calc(var(--spacing) * 8);
1422
1425
  }
1423
1426
  .left-0 {
1424
- left: calc(var(--spacing) * 0);
1427
+ left: 0;
1425
1428
  }
1426
1429
  .left-full {
1427
1430
  left: 100%;
@@ -1429,13 +1432,13 @@
1429
1432
  .dropdown {
1430
1433
  position-area: top span-right;
1431
1434
  position-anchor: var(--popover-anchor);
1432
- margin: calc(var(--spacing) * 0);
1435
+ margin: 0;
1433
1436
  min-width: calc(var(--spacing) * 64);
1434
- padding: calc(var(--spacing) * 0);
1437
+ padding: 0;
1435
1438
  isolation: isolate;
1436
1439
  width: max-content;
1437
1440
  border-radius: var(--radius-xl);
1438
- padding: calc(var(--spacing) * 1);
1441
+ padding: var(--spacing);
1439
1442
  outline-style: var(--tw-outline-style);
1440
1443
  outline-width: 1px;
1441
1444
  outline-color: transparent;
@@ -1532,93 +1535,93 @@
1532
1535
  .prose {
1533
1536
  color: var(--tw-prose-body);
1534
1537
  max-width: 65ch;
1535
- :where(p):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1538
+ :where(p):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1536
1539
  margin-top: 1.25em;
1537
1540
  margin-bottom: 1.25em;
1538
1541
  }
1539
- :where([class~="lead"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1542
+ :where([class~="lead"]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1540
1543
  color: var(--tw-prose-lead);
1541
1544
  font-size: 1.25em;
1542
1545
  line-height: 1.6;
1543
1546
  margin-top: 1.2em;
1544
1547
  margin-bottom: 1.2em;
1545
1548
  }
1546
- :where(a):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1549
+ :where(a):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1547
1550
  color: var(--tw-prose-links);
1548
1551
  text-decoration: underline;
1549
1552
  font-weight: 500;
1550
1553
  }
1551
- :where(strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1554
+ :where(strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1552
1555
  color: var(--tw-prose-bold);
1553
1556
  font-weight: 600;
1554
1557
  }
1555
- :where(a strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1558
+ :where(a strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1556
1559
  color: inherit;
1557
1560
  }
1558
- :where(blockquote strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1561
+ :where(blockquote strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1559
1562
  color: inherit;
1560
1563
  }
1561
- :where(thead th strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1564
+ :where(thead th strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1562
1565
  color: inherit;
1563
1566
  }
1564
- :where(ol):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1567
+ :where(ol):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1565
1568
  list-style-type: decimal;
1566
1569
  margin-top: 1.25em;
1567
1570
  margin-bottom: 1.25em;
1568
1571
  padding-inline-start: 1.625em;
1569
1572
  }
1570
- :where(ol[type="A"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1573
+ :where(ol[type="A"]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1571
1574
  list-style-type: upper-alpha;
1572
1575
  }
1573
- :where(ol[type="a"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1576
+ :where(ol[type="a"]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1574
1577
  list-style-type: lower-alpha;
1575
1578
  }
1576
- :where(ol[type="A" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1579
+ :where(ol[type="A" s]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1577
1580
  list-style-type: upper-alpha;
1578
1581
  }
1579
- :where(ol[type="a" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1582
+ :where(ol[type="a" s]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1580
1583
  list-style-type: lower-alpha;
1581
1584
  }
1582
- :where(ol[type="I"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1585
+ :where(ol[type="I"]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1583
1586
  list-style-type: upper-roman;
1584
1587
  }
1585
- :where(ol[type="i"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1588
+ :where(ol[type="i"]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1586
1589
  list-style-type: lower-roman;
1587
1590
  }
1588
- :where(ol[type="I" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1591
+ :where(ol[type="I" s]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1589
1592
  list-style-type: upper-roman;
1590
1593
  }
1591
- :where(ol[type="i" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1594
+ :where(ol[type="i" s]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1592
1595
  list-style-type: lower-roman;
1593
1596
  }
1594
- :where(ol[type="1"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1597
+ :where(ol[type="1"]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1595
1598
  list-style-type: decimal;
1596
1599
  }
1597
- :where(ul):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1600
+ :where(ul):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1598
1601
  list-style-type: disc;
1599
1602
  margin-top: 1.25em;
1600
1603
  margin-bottom: 1.25em;
1601
1604
  padding-inline-start: 1.625em;
1602
1605
  }
1603
- :where(ol > li):not(:where([class~="not-prose"],[class~="not-prose"] *))::marker {
1606
+ :where(ol > li):not(:where([class~="not-prose"], [class~="not-prose"] *))::marker {
1604
1607
  font-weight: 400;
1605
1608
  color: var(--tw-prose-counters);
1606
1609
  }
1607
- :where(ul > li):not(:where([class~="not-prose"],[class~="not-prose"] *))::marker {
1610
+ :where(ul > li):not(:where([class~="not-prose"], [class~="not-prose"] *))::marker {
1608
1611
  color: var(--tw-prose-bullets);
1609
1612
  }
1610
- :where(dt):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1613
+ :where(dt):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1611
1614
  color: var(--tw-prose-headings);
1612
1615
  font-weight: 600;
1613
1616
  margin-top: 1.25em;
1614
1617
  }
1615
- :where(hr):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1618
+ :where(hr):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1616
1619
  border-color: var(--tw-prose-hr);
1617
1620
  border-top-width: 1px;
1618
1621
  margin-top: 3em;
1619
1622
  margin-bottom: 3em;
1620
1623
  }
1621
- :where(blockquote):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1624
+ :where(blockquote):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1622
1625
  font-weight: 500;
1623
1626
  font-style: italic;
1624
1627
  color: var(--tw-prose-quotes);
@@ -1629,13 +1632,13 @@
1629
1632
  margin-bottom: 1.6em;
1630
1633
  padding-inline-start: 1em;
1631
1634
  }
1632
- :where(blockquote p:first-of-type):not(:where([class~="not-prose"],[class~="not-prose"] *))::before {
1635
+ :where(blockquote p:first-of-type):not(:where([class~="not-prose"], [class~="not-prose"] *))::before {
1633
1636
  content: open-quote;
1634
1637
  }
1635
- :where(blockquote p:last-of-type):not(:where([class~="not-prose"],[class~="not-prose"] *))::after {
1638
+ :where(blockquote p:last-of-type):not(:where([class~="not-prose"], [class~="not-prose"] *))::after {
1636
1639
  content: close-quote;
1637
1640
  }
1638
- :where(h1):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1641
+ :where(h1):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1639
1642
  color: var(--tw-prose-headings);
1640
1643
  font-weight: 800;
1641
1644
  font-size: 2.25em;
@@ -1643,11 +1646,11 @@
1643
1646
  margin-bottom: 0.8888889em;
1644
1647
  line-height: 1.1111111;
1645
1648
  }
1646
- :where(h1 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1649
+ :where(h1 strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1647
1650
  font-weight: 900;
1648
1651
  color: inherit;
1649
1652
  }
1650
- :where(h2):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1653
+ :where(h2):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1651
1654
  color: var(--tw-prose-headings);
1652
1655
  font-weight: 700;
1653
1656
  font-size: 1.5em;
@@ -1655,11 +1658,11 @@
1655
1658
  margin-bottom: 1em;
1656
1659
  line-height: 1.3333333;
1657
1660
  }
1658
- :where(h2 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1661
+ :where(h2 strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1659
1662
  font-weight: 800;
1660
1663
  color: inherit;
1661
1664
  }
1662
- :where(h3):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1665
+ :where(h3):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1663
1666
  color: var(--tw-prose-headings);
1664
1667
  font-weight: 600;
1665
1668
  font-size: 1.25em;
@@ -1667,35 +1670,35 @@
1667
1670
  margin-bottom: 0.6em;
1668
1671
  line-height: 1.6;
1669
1672
  }
1670
- :where(h3 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1673
+ :where(h3 strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1671
1674
  font-weight: 700;
1672
1675
  color: inherit;
1673
1676
  }
1674
- :where(h4):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1677
+ :where(h4):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1675
1678
  color: var(--tw-prose-headings);
1676
1679
  font-weight: 600;
1677
1680
  margin-top: 1.5em;
1678
1681
  margin-bottom: 0.5em;
1679
1682
  line-height: 1.5;
1680
1683
  }
1681
- :where(h4 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1684
+ :where(h4 strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1682
1685
  font-weight: 700;
1683
1686
  color: inherit;
1684
1687
  }
1685
- :where(img):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1688
+ :where(img):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1686
1689
  margin-top: 2em;
1687
1690
  margin-bottom: 2em;
1688
1691
  }
1689
- :where(picture):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1692
+ :where(picture):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1690
1693
  display: block;
1691
1694
  margin-top: 2em;
1692
1695
  margin-bottom: 2em;
1693
1696
  }
1694
- :where(video):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1697
+ :where(video):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1695
1698
  margin-top: 2em;
1696
1699
  margin-bottom: 2em;
1697
1700
  }
1698
- :where(kbd):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1701
+ :where(kbd):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1699
1702
  font-weight: 500;
1700
1703
  font-family: inherit;
1701
1704
  color: var(--tw-prose-kbd);
@@ -1707,41 +1710,41 @@
1707
1710
  padding-bottom: 0.1875em;
1708
1711
  padding-inline-start: 0.375em;
1709
1712
  }
1710
- :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1713
+ :where(code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1711
1714
  color: var(--tw-prose-code);
1712
1715
  font-weight: 600;
1713
1716
  font-size: 0.875em;
1714
1717
  }
1715
- :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))::before {
1718
+ :where(code):not(:where([class~="not-prose"], [class~="not-prose"] *))::before {
1716
1719
  content: "`";
1717
1720
  }
1718
- :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))::after {
1721
+ :where(code):not(:where([class~="not-prose"], [class~="not-prose"] *))::after {
1719
1722
  content: "`";
1720
1723
  }
1721
- :where(a code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1724
+ :where(a code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1722
1725
  color: inherit;
1723
1726
  }
1724
- :where(h1 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1727
+ :where(h1 code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1725
1728
  color: inherit;
1726
1729
  }
1727
- :where(h2 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1730
+ :where(h2 code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1728
1731
  color: inherit;
1729
1732
  font-size: 0.875em;
1730
1733
  }
1731
- :where(h3 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1734
+ :where(h3 code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1732
1735
  color: inherit;
1733
1736
  font-size: 0.9em;
1734
1737
  }
1735
- :where(h4 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1738
+ :where(h4 code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1736
1739
  color: inherit;
1737
1740
  }
1738
- :where(blockquote code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1741
+ :where(blockquote code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1739
1742
  color: inherit;
1740
1743
  }
1741
- :where(thead th code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1744
+ :where(thead th code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1742
1745
  color: inherit;
1743
1746
  }
1744
- :where(pre):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1747
+ :where(pre):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1745
1748
  color: var(--tw-prose-pre-code);
1746
1749
  background-color: var(--tw-prose-pre-bg);
1747
1750
  overflow-x: auto;
@@ -1756,7 +1759,7 @@
1756
1759
  padding-bottom: 0.8571429em;
1757
1760
  padding-inline-start: 1.1428571em;
1758
1761
  }
1759
- :where(pre code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1762
+ :where(pre code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1760
1763
  background-color: transparent;
1761
1764
  border-width: 0;
1762
1765
  border-radius: 0;
@@ -1767,13 +1770,13 @@
1767
1770
  font-family: inherit;
1768
1771
  line-height: inherit;
1769
1772
  }
1770
- :where(pre code):not(:where([class~="not-prose"],[class~="not-prose"] *))::before {
1773
+ :where(pre code):not(:where([class~="not-prose"], [class~="not-prose"] *))::before {
1771
1774
  content: none;
1772
1775
  }
1773
- :where(pre code):not(:where([class~="not-prose"],[class~="not-prose"] *))::after {
1776
+ :where(pre code):not(:where([class~="not-prose"], [class~="not-prose"] *))::after {
1774
1777
  content: none;
1775
1778
  }
1776
- :where(table):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1779
+ :where(table):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1777
1780
  width: 100%;
1778
1781
  table-layout: auto;
1779
1782
  margin-top: 2em;
@@ -1781,11 +1784,11 @@
1781
1784
  font-size: 0.875em;
1782
1785
  line-height: 1.7142857;
1783
1786
  }
1784
- :where(thead):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1787
+ :where(thead):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1785
1788
  border-bottom-width: 1px;
1786
1789
  border-bottom-color: var(--tw-prose-th-borders);
1787
1790
  }
1788
- :where(thead th):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1791
+ :where(thead th):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1789
1792
  color: var(--tw-prose-headings);
1790
1793
  font-weight: 600;
1791
1794
  vertical-align: bottom;
@@ -1793,31 +1796,31 @@
1793
1796
  padding-bottom: 0.5714286em;
1794
1797
  padding-inline-start: 0.5714286em;
1795
1798
  }
1796
- :where(tbody tr):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1799
+ :where(tbody tr):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1797
1800
  border-bottom-width: 1px;
1798
1801
  border-bottom-color: var(--tw-prose-td-borders);
1799
1802
  }
1800
- :where(tbody tr:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1803
+ :where(tbody tr:last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1801
1804
  border-bottom-width: 0;
1802
1805
  }
1803
- :where(tbody td):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1806
+ :where(tbody td):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1804
1807
  vertical-align: baseline;
1805
1808
  }
1806
- :where(tfoot):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1809
+ :where(tfoot):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1807
1810
  border-top-width: 1px;
1808
1811
  border-top-color: var(--tw-prose-th-borders);
1809
1812
  }
1810
- :where(tfoot td):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1813
+ :where(tfoot td):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1811
1814
  vertical-align: top;
1812
1815
  }
1813
- :where(th, td):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1816
+ :where(th, td):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1814
1817
  text-align: start;
1815
1818
  }
1816
- :where(figure > *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1819
+ :where(figure > *):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1817
1820
  margin-top: 0;
1818
1821
  margin-bottom: 0;
1819
1822
  }
1820
- :where(figcaption):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1823
+ :where(figcaption):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1821
1824
  color: var(--tw-prose-captions);
1822
1825
  font-size: 0.875em;
1823
1826
  line-height: 1.4285714;
@@ -1861,86 +1864,86 @@
1861
1864
  --tw-prose-invert-td-borders: oklch(37.3% 0.034 259.733);
1862
1865
  font-size: 1rem;
1863
1866
  line-height: 1.75;
1864
- :where(picture > img):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1867
+ :where(picture > img):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1865
1868
  margin-top: 0;
1866
1869
  margin-bottom: 0;
1867
1870
  }
1868
- :where(li):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1871
+ :where(li):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1869
1872
  margin-top: 0.5em;
1870
1873
  margin-bottom: 0.5em;
1871
1874
  }
1872
- :where(ol > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1875
+ :where(ol > li):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1873
1876
  padding-inline-start: 0.375em;
1874
1877
  }
1875
- :where(ul > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1878
+ :where(ul > li):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1876
1879
  padding-inline-start: 0.375em;
1877
1880
  }
1878
- :where(.prose > ul > li p):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1881
+ :where(.prose > ul > li p):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1879
1882
  margin-top: 0.75em;
1880
1883
  margin-bottom: 0.75em;
1881
1884
  }
1882
- :where(.prose > ul > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1885
+ :where(.prose > ul > li > p:first-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1883
1886
  margin-top: 1.25em;
1884
1887
  }
1885
- :where(.prose > ul > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1888
+ :where(.prose > ul > li > p:last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1886
1889
  margin-bottom: 1.25em;
1887
1890
  }
1888
- :where(.prose > ol > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1891
+ :where(.prose > ol > li > p:first-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1889
1892
  margin-top: 1.25em;
1890
1893
  }
1891
- :where(.prose > ol > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1894
+ :where(.prose > ol > li > p:last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1892
1895
  margin-bottom: 1.25em;
1893
1896
  }
1894
- :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1897
+ :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1895
1898
  margin-top: 0.75em;
1896
1899
  margin-bottom: 0.75em;
1897
1900
  }
1898
- :where(dl):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1901
+ :where(dl):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1899
1902
  margin-top: 1.25em;
1900
1903
  margin-bottom: 1.25em;
1901
1904
  }
1902
- :where(dd):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1905
+ :where(dd):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1903
1906
  margin-top: 0.5em;
1904
1907
  padding-inline-start: 1.625em;
1905
1908
  }
1906
- :where(hr + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1909
+ :where(hr + *):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1907
1910
  margin-top: 0;
1908
1911
  }
1909
- :where(h2 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1912
+ :where(h2 + *):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1910
1913
  margin-top: 0;
1911
1914
  }
1912
- :where(h3 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1915
+ :where(h3 + *):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1913
1916
  margin-top: 0;
1914
1917
  }
1915
- :where(h4 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1918
+ :where(h4 + *):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1916
1919
  margin-top: 0;
1917
1920
  }
1918
- :where(thead th:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1921
+ :where(thead th:first-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1919
1922
  padding-inline-start: 0;
1920
1923
  }
1921
- :where(thead th:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1924
+ :where(thead th:last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1922
1925
  padding-inline-end: 0;
1923
1926
  }
1924
- :where(tbody td, tfoot td):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1927
+ :where(tbody td, tfoot td):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1925
1928
  padding-top: 0.5714286em;
1926
1929
  padding-inline-end: 0.5714286em;
1927
1930
  padding-bottom: 0.5714286em;
1928
1931
  padding-inline-start: 0.5714286em;
1929
1932
  }
1930
- :where(tbody td:first-child, tfoot td:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1933
+ :where(tbody td:first-child, tfoot td:first-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1931
1934
  padding-inline-start: 0;
1932
1935
  }
1933
- :where(tbody td:last-child, tfoot td:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1936
+ :where(tbody td:last-child, tfoot td:last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1934
1937
  padding-inline-end: 0;
1935
1938
  }
1936
- :where(figure):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1939
+ :where(figure):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1937
1940
  margin-top: 2em;
1938
1941
  margin-bottom: 2em;
1939
1942
  }
1940
- :where(.prose > :first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1943
+ :where(.prose > :first-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1941
1944
  margin-top: 0;
1942
1945
  }
1943
- :where(.prose > :last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1946
+ :where(.prose > :last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
1944
1947
  margin-bottom: 0;
1945
1948
  }
1946
1949
  }
@@ -1949,7 +1952,7 @@
1949
1952
  margin-top: calc(var(--spacing) * 2);
1950
1953
  }
1951
1954
  &>label+[data-slot=description] {
1952
- margin-top: calc(var(--spacing) * 1);
1955
+ margin-top: var(--spacing);
1953
1956
  }
1954
1957
  &>[data-slot=description]+[data-slot=control] {
1955
1958
  margin-top: calc(var(--spacing) * 2);
@@ -2001,7 +2004,7 @@
2001
2004
  margin-top: calc(var(--spacing) * 0.5);
2002
2005
  }
2003
2006
  .mt-1 {
2004
- margin-top: calc(var(--spacing) * 1);
2007
+ margin-top: var(--spacing);
2005
2008
  }
2006
2009
  .mt-1\.5 {
2007
2010
  margin-top: calc(var(--spacing) * 1.5);
@@ -2078,10 +2081,10 @@
2078
2081
  @layer components {
2079
2082
  display: inline-flex;
2080
2083
  align-items: center;
2081
- column-gap: calc(var(--spacing) * 1);
2084
+ column-gap: var(--spacing);
2082
2085
  border-radius: var(--radius-sm);
2083
2086
  padding-inline: calc(var(--spacing) * 2);
2084
- padding-block: calc(var(--spacing) * 1);
2087
+ padding-block: var(--spacing);
2085
2088
  font-size: var(--text-sm);
2086
2089
  line-height: var(--tw-leading, var(--text-sm--line-height));
2087
2090
  & > svg {
@@ -2109,7 +2112,7 @@
2109
2112
  margin-right: calc(var(--spacing) * 16);
2110
2113
  }
2111
2114
  .mb-1 {
2112
- margin-bottom: calc(var(--spacing) * 1);
2115
+ margin-bottom: var(--spacing);
2113
2116
  }
2114
2117
  .mb-1\.5 {
2115
2118
  margin-bottom: calc(var(--spacing) * 1.5);
@@ -2133,7 +2136,7 @@
2133
2136
  margin-bottom: calc(var(--spacing) * 10);
2134
2137
  }
2135
2138
  .ml-1 {
2136
- margin-left: calc(var(--spacing) * 1);
2139
+ margin-left: var(--spacing);
2137
2140
  }
2138
2141
  .ml-3 {
2139
2142
  margin-left: calc(var(--spacing) * 3);
@@ -2150,7 +2153,7 @@
2150
2153
  gap: calc(var(--spacing) * 1.5);
2151
2154
  border-radius: calc(infinity * 1px);
2152
2155
  padding-inline: calc(var(--spacing) * 3);
2153
- padding-block: calc(var(--spacing) * 1);
2156
+ padding-block: var(--spacing);
2154
2157
  font-size: var(--text-xs);
2155
2158
  line-height: var(--tw-leading, var(--text-xs--line-height));
2156
2159
  --tw-font-weight: var(--font-weight-medium);
@@ -2361,7 +2364,7 @@
2361
2364
  max-width: var(--container-xs);
2362
2365
  }
2363
2366
  .min-w-0 {
2364
- min-width: calc(var(--spacing) * 0);
2367
+ min-width: 0;
2365
2368
  }
2366
2369
  .flex-1 {
2367
2370
  flex: 1;
@@ -2479,8 +2482,8 @@
2479
2482
  .space-y-1 {
2480
2483
  :where(& > :not(:last-child)) {
2481
2484
  --tw-space-y-reverse: 0;
2482
- margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));
2483
- margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)));
2485
+ margin-block-start: calc(var(--spacing) * var(--tw-space-y-reverse));
2486
+ margin-block-end: calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)));
2484
2487
  }
2485
2488
  }
2486
2489
  .space-y-2 {
@@ -2848,6 +2851,9 @@
2848
2851
  background-color: color-mix(in oklab, var(--color-stone-200) 50%, transparent);
2849
2852
  }
2850
2853
  }
2854
+ .bg-stone-600 {
2855
+ background-color: var(--color-stone-600);
2856
+ }
2851
2857
  .bg-stone-800 {
2852
2858
  background-color: var(--color-stone-800);
2853
2859
  }
@@ -2934,7 +2940,7 @@
2934
2940
  object-position: center;
2935
2941
  }
2936
2942
  .p-1 {
2937
- padding: calc(var(--spacing) * 1);
2943
+ padding: var(--spacing);
2938
2944
  }
2939
2945
  .p-1\.5 {
2940
2946
  padding: calc(var(--spacing) * 1.5);
@@ -2989,7 +2995,7 @@
2989
2995
  padding-inline: calc(var(--spacing) * 6);
2990
2996
  }
2991
2997
  .py-1 {
2992
- padding-block: calc(var(--spacing) * 1);
2998
+ padding-block: var(--spacing);
2993
2999
  }
2994
3000
  .py-1\.5 {
2995
3001
  padding-block: calc(var(--spacing) * 1.5);
@@ -3019,7 +3025,7 @@
3019
3025
  padding-block: calc(var(--spacing) * 16);
3020
3026
  }
3021
3027
  .pt-1 {
3022
- padding-top: calc(var(--spacing) * 1);
3028
+ padding-top: var(--spacing);
3023
3029
  }
3024
3030
  .pt-4 {
3025
3031
  padding-top: calc(var(--spacing) * 4);
@@ -3043,7 +3049,7 @@
3043
3049
  padding-right: calc(var(--spacing) * 9);
3044
3050
  }
3045
3051
  .pb-0 {
3046
- padding-bottom: calc(var(--spacing) * 0);
3052
+ padding-bottom: 0;
3047
3053
  }
3048
3054
  .pb-3 {
3049
3055
  padding-bottom: calc(var(--spacing) * 3);
@@ -3203,6 +3209,10 @@
3203
3209
  --tw-tracking: var(--tracking-tight);
3204
3210
  letter-spacing: var(--tracking-tight);
3205
3211
  }
3212
+ .tracking-wide {
3213
+ --tw-tracking: var(--tracking-wide);
3214
+ letter-spacing: var(--tracking-wide);
3215
+ }
3206
3216
  .tracking-wider {
3207
3217
  --tw-tracking: var(--tracking-wider);
3208
3218
  letter-spacing: var(--tracking-wider);
@@ -3211,6 +3221,12 @@
3211
3221
  --tw-tracking: var(--tracking-widest);
3212
3222
  letter-spacing: var(--tracking-widest);
3213
3223
  }
3224
+ .text-wrap {
3225
+ text-wrap: wrap;
3226
+ }
3227
+ .break-all {
3228
+ word-break: break-all;
3229
+ }
3214
3230
  .text-amber-600 {
3215
3231
  color: var(--color-amber-600);
3216
3232
  }
@@ -3286,6 +3302,10 @@
3286
3302
  .italic {
3287
3303
  font-style: italic;
3288
3304
  }
3305
+ .tabular-nums {
3306
+ --tw-numeric-spacing: tabular-nums;
3307
+ font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
3308
+ }
3289
3309
  .underline {
3290
3310
  text-decoration-line: underline;
3291
3311
  }
@@ -3322,6 +3342,10 @@
3322
3342
  --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
3323
3343
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
3324
3344
  }
3345
+ .ring-2 {
3346
+ --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
3347
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
3348
+ }
3325
3349
  .inset-ring-1 {
3326
3350
  --tw-inset-ring-shadow: inset 0 0 0 1px var(--tw-inset-ring-color, currentcolor);
3327
3351
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
@@ -3341,6 +3365,9 @@
3341
3365
  --tw-ring-color: color-mix(in oklab, var(--color-sky-200) 50%, transparent);
3342
3366
  }
3343
3367
  }
3368
+ .ring-stone-200 {
3369
+ --tw-ring-color: var(--color-stone-200);
3370
+ }
3344
3371
  .ring-stone-900\/5 {
3345
3372
  --tw-ring-color: color-mix(in srgb, oklch(21.6% 0.006 56.043) 5%, transparent);
3346
3373
  @supports (color: color-mix(in lab, red, red)) {
@@ -3408,6 +3435,10 @@
3408
3435
  -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,);
3409
3436
  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,);
3410
3437
  }
3438
+ .backdrop-filter {
3439
+ -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,);
3440
+ 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,);
3441
+ }
3411
3442
  .transition {
3412
3443
  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;
3413
3444
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
@@ -3443,6 +3474,10 @@
3443
3474
  --tw-duration: 300ms;
3444
3475
  transition-duration: 300ms;
3445
3476
  }
3477
+ .ease-in {
3478
+ --tw-ease: var(--ease-in);
3479
+ transition-timing-function: var(--ease-in);
3480
+ }
3446
3481
  .ease-in-out {
3447
3482
  --tw-ease: var(--ease-in-out);
3448
3483
  transition-timing-function: var(--ease-in-out);
@@ -3451,6 +3486,10 @@
3451
3486
  --tw-ease: linear;
3452
3487
  transition-timing-function: linear;
3453
3488
  }
3489
+ .ease-out {
3490
+ --tw-ease: var(--ease-out);
3491
+ transition-timing-function: var(--ease-out);
3492
+ }
3454
3493
  .prose-stone {
3455
3494
  --tw-prose-body: oklch(37.4% 0.01 67.558);
3456
3495
  --tw-prose-headings: oklch(21.6% 0.006 56.043);
@@ -3494,7 +3533,7 @@
3494
3533
  user-select: none;
3495
3534
  }
3496
3535
  .\[--anchor-gap\:--spacing\(1\)\] {
3497
- --anchor-gap: calc(var(--spacing) * 1);
3536
+ --anchor-gap: var(--spacing);
3498
3537
  }
3499
3538
  .\[--anchor-gap\:--spacing\(2\)\] {
3500
3539
  --anchor-gap: calc(var(--spacing) * 2);
@@ -3697,13 +3736,6 @@
3697
3736
  }
3698
3737
  }
3699
3738
  }
3700
- .hover\:text-red-700 {
3701
- &:hover {
3702
- @media (hover: hover) {
3703
- color: var(--color-red-700);
3704
- }
3705
- }
3706
- }
3707
3739
  .hover\:text-stone-500 {
3708
3740
  &:hover {
3709
3741
  @media (hover: hover) {
@@ -3932,10 +3964,10 @@
3932
3964
  @layer components {
3933
3965
  display: inline-flex;
3934
3966
  align-items: center;
3935
- column-gap: calc(var(--spacing) * 1);
3967
+ column-gap: var(--spacing);
3936
3968
  border-radius: var(--radius-sm);
3937
3969
  padding-inline: calc(var(--spacing) * 2);
3938
- padding-block: calc(var(--spacing) * 1);
3970
+ padding-block: var(--spacing);
3939
3971
  font-size: var(--text-sm);
3940
3972
  line-height: var(--tw-leading, var(--text-sm--line-height));
3941
3973
  & > svg {
@@ -4016,7 +4048,7 @@
4016
4048
  }
4017
4049
  .lg\:inset-y-0 {
4018
4050
  @media (width >= 64rem) {
4019
- inset-block: calc(var(--spacing) * 0);
4051
+ inset-block: 0;
4020
4052
  }
4021
4053
  }
4022
4054
  .lg\:z-50 {
@@ -4309,6 +4341,11 @@
4309
4341
  color: var(--color-stone-100);
4310
4342
  }
4311
4343
  }
4344
+ .dark\:text-stone-200 {
4345
+ @media (prefers-color-scheme: dark) {
4346
+ color: var(--color-stone-200);
4347
+ }
4348
+ }
4312
4349
  .dark\:text-stone-300 {
4313
4350
  @media (prefers-color-scheme: dark) {
4314
4351
  color: var(--color-stone-300);
@@ -4455,7 +4492,7 @@
4455
4492
  @media (prefers-color-scheme: dark) {
4456
4493
  &::before {
4457
4494
  content: var(--tw-content);
4458
- inset: calc(var(--spacing) * 0);
4495
+ inset: 0;
4459
4496
  }
4460
4497
  }
4461
4498
  }
@@ -4490,7 +4527,7 @@
4490
4527
  @media (prefers-color-scheme: dark) {
4491
4528
  &::after {
4492
4529
  content: var(--tw-content);
4493
- inset: calc(var(--spacing) * 0);
4530
+ inset: 0;
4494
4531
  }
4495
4532
  }
4496
4533
  }
@@ -5008,7 +5045,7 @@
5008
5045
  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,);
5009
5046
  }
5010
5047
  &::-webkit-datetime-edit-fields-wrapper {
5011
- padding: calc(var(--spacing) * 0);
5048
+ padding: 0;
5012
5049
  }
5013
5050
  &::-webkit-date-and-time-value {
5014
5051
  min-height: 1.5em;
@@ -5017,31 +5054,31 @@
5017
5054
  display: inline-flex;
5018
5055
  }
5019
5056
  &::-webkit-datetime-edit {
5020
- padding: calc(var(--spacing) * 0);
5057
+ padding: 0;
5021
5058
  }
5022
5059
  &::-webkit-datetime-edit-year-field {
5023
- padding: calc(var(--spacing) * 0);
5060
+ padding: 0;
5024
5061
  }
5025
5062
  &::-webkit-datetime-edit-month-field {
5026
- padding: calc(var(--spacing) * 0);
5063
+ padding: 0;
5027
5064
  }
5028
5065
  &::-webkit-datetime-edit-day-field {
5029
- padding: calc(var(--spacing) * 0);
5066
+ padding: 0;
5030
5067
  }
5031
5068
  &::-webkit-datetime-edit-hour-field {
5032
- padding: calc(var(--spacing) * 0);
5069
+ padding: 0;
5033
5070
  }
5034
5071
  &::-webkit-datetime-edit-minute-field {
5035
- padding: calc(var(--spacing) * 0);
5072
+ padding: 0;
5036
5073
  }
5037
5074
  &::-webkit-datetime-edit-second-field {
5038
- padding: calc(var(--spacing) * 0);
5075
+ padding: 0;
5039
5076
  }
5040
5077
  &::-webkit-datetime-edit-millisecond-field {
5041
- padding: calc(var(--spacing) * 0);
5078
+ padding: 0;
5042
5079
  }
5043
5080
  &::-webkit-datetime-edit-meridiem-field {
5044
- padding: calc(var(--spacing) * 0);
5081
+ padding: 0;
5045
5082
  }
5046
5083
  }
5047
5084
  }
@@ -5300,7 +5337,7 @@ details.block-card {
5300
5337
  .block-type {
5301
5338
  border-radius: var(--radius-md);
5302
5339
  padding-inline: calc(var(--spacing) * 2);
5303
- padding-block: calc(var(--spacing) * 1);
5340
+ padding-block: var(--spacing);
5304
5341
  font-size: var(--text-xs);
5305
5342
  line-height: var(--tw-leading, var(--text-xs--line-height));
5306
5343
  --tw-font-weight: var(--font-weight-medium);
@@ -5398,8 +5435,8 @@ details.block-card {
5398
5435
  .field-type-picker {
5399
5436
  display: grid;
5400
5437
  grid-template-columns: repeat(2, minmax(0, 1fr));
5401
- gap: calc(var(--spacing) * 1);
5402
- padding: calc(var(--spacing) * 1);
5438
+ gap: var(--spacing);
5439
+ padding: var(--spacing);
5403
5440
  }
5404
5441
  .field-type-option {
5405
5442
  display: flex;
@@ -5730,7 +5767,7 @@ details.block-card {
5730
5767
  gap: calc(var(--spacing) * 1.5);
5731
5768
  border-radius: calc(infinity * 1px);
5732
5769
  padding-inline: calc(var(--spacing) * 3);
5733
- padding-block: calc(var(--spacing) * 1);
5770
+ padding-block: var(--spacing);
5734
5771
  font-size: var(--text-xs);
5735
5772
  line-height: var(--tw-leading, var(--text-xs--line-height));
5736
5773
  --tw-font-weight: var(--font-weight-medium);
@@ -6207,7 +6244,7 @@ details.block-card {
6207
6244
  }
6208
6245
  .save-bar {
6209
6246
  position: sticky;
6210
- bottom: calc(var(--spacing) * 0);
6247
+ bottom: 0;
6211
6248
  z-index: 10;
6212
6249
  margin-inline: calc(var(--spacing) * -4);
6213
6250
  @media (width >= 40rem) {
@@ -6302,14 +6339,14 @@ details.block-card {
6302
6339
  }
6303
6340
  dialog.drawer {
6304
6341
  position: fixed;
6305
- inset: calc(var(--spacing) * 0);
6306
- margin: calc(var(--spacing) * 0);
6342
+ inset: 0;
6343
+ margin: 0;
6307
6344
  margin-left: auto;
6308
6345
  height: 100%;
6309
6346
  max-height: 100%;
6310
6347
  width: 100%;
6311
6348
  max-width: var(--container-lg);
6312
- padding: calc(var(--spacing) * 0);
6349
+ padding: 0;
6313
6350
  background-color: var(--color-white);
6314
6351
  @media (prefers-color-scheme: dark) {
6315
6352
  background-color: var(--color-stone-900);
@@ -6334,7 +6371,7 @@ dialog.drawer {
6334
6371
  & > turbo-frame {
6335
6372
  display: contents;
6336
6373
  }
6337
- --tw-translate-x: calc(var(--spacing) * 0);
6374
+ --tw-translate-x: 0;
6338
6375
  translate: var(--tw-translate-x) var(--tw-translate-y);
6339
6376
  opacity: 100%;
6340
6377
  transition-property: all;
@@ -6452,8 +6489,8 @@ dialog.drawer {
6452
6489
  }
6453
6490
  dialog.modal {
6454
6491
  position: fixed;
6455
- inset: calc(var(--spacing) * 0);
6456
- padding: calc(var(--spacing) * 0);
6492
+ inset: 0;
6493
+ padding: 0;
6457
6494
  width: 100%;
6458
6495
  background-color: var(--color-white);
6459
6496
  @media (prefers-color-scheme: dark) {
@@ -6481,15 +6518,15 @@ dialog.modal {
6481
6518
  overflow: hidden;
6482
6519
  --tw-outline-style: none;
6483
6520
  outline-style: none;
6484
- margin-inline: calc(var(--spacing) * 0);
6521
+ margin-inline: 0;
6485
6522
  margin-top: auto;
6486
- margin-bottom: calc(var(--spacing) * 0);
6523
+ margin-bottom: 0;
6487
6524
  max-width: none;
6488
6525
  border-top-left-radius: var(--radius-2xl);
6489
6526
  border-top-right-radius: var(--radius-2xl);
6490
6527
  border-bottom-right-radius: 0;
6491
6528
  border-bottom-left-radius: 0;
6492
- --tw-translate-y: calc(var(--spacing) * 0);
6529
+ --tw-translate-y: 0;
6493
6530
  translate: var(--tw-translate-x) var(--tw-translate-y);
6494
6531
  opacity: 100%;
6495
6532
  transition-property: all;
@@ -6515,7 +6552,7 @@ dialog.modal {
6515
6552
  margin: auto;
6516
6553
  max-width: var(--container-sm);
6517
6554
  border-radius: var(--radius-xl);
6518
- --tw-translate-y: calc(var(--spacing) * 0);
6555
+ --tw-translate-y: 0;
6519
6556
  translate: var(--tw-translate-x) var(--tw-translate-y);
6520
6557
  --tw-scale-x: 100%;
6521
6558
  --tw-scale-y: 100%;
@@ -6523,7 +6560,7 @@ dialog.modal {
6523
6560
  scale: var(--tw-scale-x) var(--tw-scale-y);
6524
6561
  transition-property: scale, opacity, display, overlay;
6525
6562
  &:not([open]) {
6526
- --tw-translate-y: calc(var(--spacing) * 0);
6563
+ --tw-translate-y: 0;
6527
6564
  translate: var(--tw-translate-x) var(--tw-translate-y);
6528
6565
  --tw-scale-x: 95%;
6529
6566
  --tw-scale-y: 95%;
@@ -6574,7 +6611,7 @@ dialog.modal {
6574
6611
  cursor: grab;
6575
6612
  justify-content: center;
6576
6613
  padding-top: calc(var(--spacing) * 3);
6577
- padding-bottom: calc(var(--spacing) * 1);
6614
+ padding-bottom: var(--spacing);
6578
6615
  &:active {
6579
6616
  cursor: grabbing;
6580
6617
  }
@@ -6582,7 +6619,7 @@ dialog.modal {
6582
6619
  display: none;
6583
6620
  }
6584
6621
  & > div {
6585
- height: calc(var(--spacing) * 1);
6622
+ height: var(--spacing);
6586
6623
  width: calc(var(--spacing) * 8);
6587
6624
  border-radius: calc(infinity * 1px);
6588
6625
  background-color: var(--color-stone-300);
@@ -6594,7 +6631,7 @@ dialog.modal {
6594
6631
  .modal-header {
6595
6632
  padding-inline: calc(var(--spacing) * 6);
6596
6633
  padding-top: calc(var(--spacing) * 2);
6597
- padding-bottom: calc(var(--spacing) * 0);
6634
+ padding-bottom: 0;
6598
6635
  @media (width >= 40rem) {
6599
6636
  padding-top: calc(var(--spacing) * 6);
6600
6637
  }
@@ -6615,7 +6652,7 @@ dialog.modal {
6615
6652
  }
6616
6653
  .modal-footer {
6617
6654
  padding-inline: calc(var(--spacing) * 6);
6618
- padding-top: calc(var(--spacing) * 0);
6655
+ padding-top: 0;
6619
6656
  padding-bottom: calc(var(--spacing) * 8);
6620
6657
  display: grid;
6621
6658
  grid-template-columns: repeat(2, minmax(0, 1fr));
@@ -6874,7 +6911,7 @@ dialog.modal {
6874
6911
  @media (prefers-color-scheme: dark) {
6875
6912
  color: var(--color-stone-400);
6876
6913
  }
6877
- min-width: calc(var(--spacing) * 0);
6914
+ min-width: 0;
6878
6915
  flex: 1;
6879
6916
  overflow: hidden;
6880
6917
  text-overflow: ellipsis;
@@ -7234,7 +7271,7 @@ dialog.modal {
7234
7271
  display: flex;
7235
7272
  flex-wrap: nowrap;
7236
7273
  align-items: center;
7237
- gap: calc(var(--spacing) * 1);
7274
+ gap: var(--spacing);
7238
7275
  padding: calc(var(--spacing) * 2);
7239
7276
  max-width: 100%;
7240
7277
  border-bottom-style: var(--tw-border-style);
@@ -7332,7 +7369,7 @@ dialog.modal {
7332
7369
  }
7333
7370
  lexxy-toolbar .lexxy-editor__toolbar-button--chevron {
7334
7371
  width: auto;
7335
- gap: calc(var(--spacing) * 1);
7372
+ gap: var(--spacing);
7336
7373
  padding-inline: calc(var(--spacing) * 1.5);
7337
7374
  }
7338
7375
  lexxy-toolbar .lexxy-editor__toolbar-button--chevron::after {
@@ -7355,7 +7392,7 @@ dialog.modal {
7355
7392
  lexxy-toolbar > button.lexxy-editor__toolbar-group-end::after, lexxy-toolbar > lexxy-link-dropdown > button.lexxy-editor__toolbar-group-end::after {
7356
7393
  content: "";
7357
7394
  position: absolute;
7358
- inset-block: calc(var(--spacing) * 1);
7395
+ inset-block: var(--spacing);
7359
7396
  width: 1px;
7360
7397
  inset-inline-end: -0.3125rem;
7361
7398
  pointer-events: none;
@@ -7406,7 +7443,7 @@ dialog.modal {
7406
7443
  inset-inline-start: calc(var(--spacing) * 0);
7407
7444
  top: 100%;
7408
7445
  z-index: 20;
7409
- margin-top: calc(var(--spacing) * 1);
7446
+ margin-top: var(--spacing);
7410
7447
  background-color: var(--color-white);
7411
7448
  @media (prefers-color-scheme: dark) {
7412
7449
  background-color: var(--color-stone-800);
@@ -7448,7 +7485,7 @@ dialog.modal {
7448
7485
  min-width: 12rem;
7449
7486
  flex-direction: column;
7450
7487
  gap: calc(var(--spacing) * 0.5);
7451
- padding: calc(var(--spacing) * 1);
7488
+ padding: var(--spacing);
7452
7489
  }
7453
7490
  .lexxy-editor__toolbar-dropdown-list button {
7454
7491
  height: auto;
@@ -7504,7 +7541,7 @@ dialog.modal {
7504
7541
  fill: currentColor;
7505
7542
  }
7506
7543
  .lexxy-editor__toolbar-dropdown-list .lexxy-editor__toolbar-separator {
7507
- margin-block: calc(var(--spacing) * 1);
7544
+ margin-block: var(--spacing);
7508
7545
  height: 1px;
7509
7546
  width: 100%;
7510
7547
  background-color: var(--color-stone-200);
@@ -7525,7 +7562,7 @@ dialog.modal {
7525
7562
  display: grid;
7526
7563
  grid-template-columns: repeat(5, minmax(0, 1fr));
7527
7564
  justify-items: center;
7528
- gap: calc(var(--spacing) * 1);
7565
+ gap: var(--spacing);
7529
7566
  padding: calc(var(--spacing) * 2);
7530
7567
  }
7531
7568
  lexxy-link-dropdown [data-dropdown-panel] {
@@ -7536,7 +7573,7 @@ dialog.modal {
7536
7573
  padding: calc(var(--spacing) * 2);
7537
7574
  }
7538
7575
  lexxy-link-dropdown input[type="url"] {
7539
- min-width: calc(var(--spacing) * 0);
7576
+ min-width: 0;
7540
7577
  flex: 1;
7541
7578
  height: calc(var(--spacing) * 8);
7542
7579
  border-radius: var(--radius-md);
@@ -7668,12 +7705,12 @@ dialog.modal {
7668
7705
  grid-template-columns: repeat(var(--max-colors, 9), var(--button-size));
7669
7706
  grid-template-rows: repeat(2, var(--button-size));
7670
7707
  grid-auto-flow: column;
7671
- gap: calc(var(--spacing) * 1);
7708
+ gap: var(--spacing);
7672
7709
  }
7673
7710
  lexxy-highlight-dropdown .lexxy-highlight-button {
7674
7711
  position: relative;
7675
7712
  border-radius: var(--radius-md);
7676
- padding: calc(var(--spacing) * 0);
7713
+ padding: 0;
7677
7714
  width: var(--button-size);
7678
7715
  height: var(--button-size);
7679
7716
  --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
@@ -7696,7 +7733,7 @@ dialog.modal {
7696
7733
  lexxy-highlight-dropdown .lexxy-highlight-button::after {
7697
7734
  content: "Aa";
7698
7735
  position: absolute;
7699
- inset: calc(var(--spacing) * 0);
7736
+ inset: 0;
7700
7737
  display: flex;
7701
7738
  align-items: center;
7702
7739
  justify-content: center;
@@ -7721,7 +7758,7 @@ dialog.modal {
7721
7758
  content: "✓";
7722
7759
  }
7723
7760
  lexxy-highlight-dropdown .lexxy-editor__toolbar-dropdown-reset {
7724
- margin-top: calc(var(--spacing) * 1);
7761
+ margin-top: var(--spacing);
7725
7762
  width: 100%;
7726
7763
  white-space: nowrap;
7727
7764
  @layer components {
@@ -7856,10 +7893,10 @@ dialog.modal {
7856
7893
  @layer components {
7857
7894
  display: inline-flex;
7858
7895
  align-items: center;
7859
- column-gap: calc(var(--spacing) * 1);
7896
+ column-gap: var(--spacing);
7860
7897
  border-radius: var(--radius-sm);
7861
7898
  padding-inline: calc(var(--spacing) * 2);
7862
- padding-block: calc(var(--spacing) * 1);
7899
+ padding-block: var(--spacing);
7863
7900
  font-size: var(--text-sm);
7864
7901
  line-height: var(--tw-leading, var(--text-sm--line-height));
7865
7902
  & > svg {
@@ -7890,7 +7927,7 @@ dialog.modal {
7890
7927
  border-radius: var(--radius-md);
7891
7928
  }
7892
7929
  lexxy-toolbar[overflowing] lexxy-link-dropdown [data-dropdown-panel] {
7893
- min-width: calc(var(--spacing) * 0);
7930
+ min-width: 0;
7894
7931
  flex-direction: column;
7895
7932
  align-items: stretch;
7896
7933
  }
@@ -7900,11 +7937,11 @@ dialog.modal {
7900
7937
  lexxy-editor .attachment__progress {
7901
7938
  position: absolute;
7902
7939
  z-index: 10;
7903
- top: calc(1/2 * 100%);
7940
+ top: calc(1 / 2 * 100%);
7904
7941
  left: 5%;
7905
- height: calc(var(--spacing) * 1);
7942
+ height: var(--spacing);
7906
7943
  width: 90%;
7907
- --tw-translate-y: calc(calc(1/2 * 100%) * -1);
7944
+ --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
7908
7945
  translate: var(--tw-translate-x) var(--tw-translate-y);
7909
7946
  overflow: hidden;
7910
7947
  border-radius: calc(infinity * 1px);
@@ -7955,7 +7992,7 @@ dialog.modal {
7955
7992
  display: inline-flex;
7956
7993
  align-items: center;
7957
7994
  gap: calc(var(--spacing) * 2);
7958
- margin-block: calc(var(--spacing) * 1);
7995
+ margin-block: var(--spacing);
7959
7996
  padding-inline: calc(var(--spacing) * 3);
7960
7997
  padding-block: calc(var(--spacing) * 2);
7961
7998
  background-color: var(--color-stone-100);
@@ -7990,7 +8027,7 @@ dialog.modal {
7990
8027
  @media (prefers-color-scheme: dark) {
7991
8028
  color: var(--color-stone-400);
7992
8029
  }
7993
- margin-top: calc(var(--spacing) * 1);
8030
+ margin-top: var(--spacing);
7994
8031
  }
7995
8032
  lexxy-editor .attachment__toolbar {
7996
8033
  position: absolute;
@@ -7999,7 +8036,7 @@ dialog.modal {
7999
8036
  z-index: 10;
8000
8037
  display: flex;
8001
8038
  align-items: center;
8002
- gap: calc(var(--spacing) * 1);
8039
+ gap: var(--spacing);
8003
8040
  }
8004
8041
  lexxy-editor .attachment__toolbar button {
8005
8042
  width: calc(var(--spacing) * 6);
@@ -8078,7 +8115,7 @@ dialog.modal {
8078
8115
  height: calc(var(--spacing) * 7);
8079
8116
  min-width: calc(var(--spacing) * 7);
8080
8117
  border-radius: 0.25rem;
8081
- padding-inline: calc(var(--spacing) * 1);
8118
+ padding-inline: var(--spacing);
8082
8119
  color: var(--color-white);
8083
8120
  &:hover {
8084
8121
  @media (hover: hover) {
@@ -8108,7 +8145,7 @@ dialog.modal {
8108
8145
  background-color: var(--color-red-600);
8109
8146
  }
8110
8147
  lexxy-editor table {
8111
- margin-block: calc(var(--spacing) * 0) !important;
8148
+ margin-block: 0 !important;
8112
8149
  width: 100%;
8113
8150
  border-collapse: collapse;
8114
8151
  font-size: var(--text-sm);
@@ -8211,13 +8248,13 @@ dialog.modal {
8211
8248
  display: flex;
8212
8249
  flex-direction: row;
8213
8250
  align-items: flex-start;
8214
- gap: calc(var(--spacing) * 1);
8251
+ gap: var(--spacing);
8215
8252
  font-size: var(--text-sm);
8216
8253
  line-height: var(--tw-leading, var(--text-sm--line-height));
8217
8254
  --tw-leading: 1;
8218
8255
  line-height: 1;
8219
8256
  color: var(--color-white);
8220
- --tw-translate-x: calc(calc(1/2 * 100%) * -1);
8257
+ --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
8221
8258
  --tw-translate-y: calc(calc(100% + 4px) * -1);
8222
8259
  translate: var(--tw-translate-x) var(--tw-translate-y);
8223
8260
  }
@@ -8250,16 +8287,16 @@ dialog.modal {
8250
8287
  inset-inline-start: calc(1/2 * 100%);
8251
8288
  top: 100%;
8252
8289
  z-index: 10;
8253
- margin-top: calc(var(--spacing) * 1);
8290
+ margin-top: var(--spacing);
8254
8291
  min-width: max-content;
8255
- --tw-translate-x: calc(calc(1/2 * 100%) * -1);
8292
+ --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
8256
8293
  translate: var(--tw-translate-x) var(--tw-translate-y);
8257
8294
  display: flex;
8258
8295
  flex-direction: column;
8259
8296
  align-items: stretch;
8260
8297
  gap: calc(var(--spacing) * 0.5);
8261
8298
  border-radius: var(--radius-md);
8262
- padding: calc(var(--spacing) * 1);
8299
+ padding: var(--spacing);
8263
8300
  background-color: var(--color-stone-900);
8264
8301
  --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));
8265
8302
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
@@ -8290,10 +8327,10 @@ dialog.modal {
8290
8327
  lexxy-table-tools .lexxy-table-control__button--delete-table > span {
8291
8328
  position: absolute;
8292
8329
  bottom: 100%;
8293
- left: calc(1/2 * 100%);
8330
+ left: calc(1 / 2 * 100%);
8294
8331
  z-index: 20;
8295
- margin-bottom: calc(var(--spacing) * 1);
8296
- --tw-translate-x: calc(calc(1/2 * 100%) * -1);
8332
+ margin-bottom: var(--spacing);
8333
+ --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
8297
8334
  translate: var(--tw-translate-x) var(--tw-translate-y);
8298
8335
  display: inline-flex;
8299
8336
  height: calc(var(--spacing) * 7);
@@ -8320,7 +8357,7 @@ dialog.modal {
8320
8357
  .lexxy-drop-target--gallery-before::before, .lexxy-drop-target--gallery-after::after {
8321
8358
  content: "";
8322
8359
  position: absolute;
8323
- inset-block: calc(var(--spacing) * 0);
8360
+ inset-block: 0;
8324
8361
  width: 3px;
8325
8362
  border-radius: var(--radius-sm);
8326
8363
  background-color: var(--color-sky-600);
@@ -8338,7 +8375,7 @@ dialog.modal {
8338
8375
  .lexxy-drop-target--block-before::before, .lexxy-drop-target--block-after::after, .lexxy-drop-target--list-before::before, .lexxy-drop-target--list-after::after {
8339
8376
  content: "";
8340
8377
  position: absolute;
8341
- inset-inline: calc(var(--spacing) * 0);
8378
+ inset-inline: 0;
8342
8379
  height: 3px;
8343
8380
  border-radius: var(--radius-sm);
8344
8381
  background-color: var(--color-sky-600);
@@ -8368,7 +8405,7 @@ dialog.modal {
8368
8405
  margin-top: calc(var(--spacing) * 4);
8369
8406
  }
8370
8407
  .lexxy-content p {
8371
- margin-block: calc(var(--spacing) * 0);
8408
+ margin-block: 0;
8372
8409
  }
8373
8410
  .lexxy-content p + p {
8374
8411
  margin-top: calc(var(--spacing) * 4);
@@ -8466,10 +8503,10 @@ dialog.modal {
8466
8503
  list-style-type: decimal;
8467
8504
  }
8468
8505
  .lexxy-content li {
8469
- margin-block: calc(var(--spacing) * 1);
8506
+ margin-block: var(--spacing);
8470
8507
  }
8471
8508
  .lexxy-content li > ul, .lexxy-content li > ol {
8472
- margin-block: calc(var(--spacing) * 1);
8509
+ margin-block: var(--spacing);
8473
8510
  margin-left: calc(var(--spacing) * 4);
8474
8511
  }
8475
8512
  .lexxy-content code {
@@ -8508,7 +8545,7 @@ dialog.modal {
8508
8545
  .lexxy-content pre code {
8509
8546
  border-radius: 0;
8510
8547
  background-color: transparent;
8511
- padding: calc(var(--spacing) * 0);
8548
+ padding: 0;
8512
8549
  color: var(--color-stone-100);
8513
8550
  display: block;
8514
8551
  white-space: pre;
@@ -8567,7 +8604,7 @@ dialog.modal {
8567
8604
  }
8568
8605
  }
8569
8606
  .lexxy-content th *:last-child, .lexxy-content td *:last-child {
8570
- margin-bottom: calc(var(--spacing) * 0);
8607
+ margin-bottom: 0;
8571
8608
  }
8572
8609
  .lexxy-content .attachment {
8573
8610
  margin-block: calc(var(--spacing) * 4);
@@ -8659,34 +8696,34 @@ dialog.modal {
8659
8696
  max-width: calc(33.333% - 0.5rem);
8660
8697
  min-width: calc(33.333% - 0.5rem);
8661
8698
  flex: 1;
8662
- margin-block: calc(var(--spacing) * 0);
8699
+ margin-block: 0;
8663
8700
  }
8664
8701
  .lexxy-content .attachment-gallery.attachment-gallery--2 .attachment, .lexxy-content .attachment-gallery.attachment-gallery--2 > action-text-attachment, .lexxy-content .attachment-gallery.attachment-gallery--4 .attachment, .lexxy-content .attachment-gallery.attachment-gallery--4 > action-text-attachment {
8665
8702
  max-width: calc(50% - 0.25rem);
8666
8703
  min-width: calc(50% - 0.25rem);
8667
8704
  }
8668
8705
  .lexxy-content action-text-attachment .attachment {
8669
- margin-block: calc(var(--spacing) * 0);
8706
+ margin-block: 0;
8670
8707
  max-width: 100%;
8671
- padding: calc(var(--spacing) * 0);
8708
+ padding: 0;
8672
8709
  }
8673
8710
  }
8674
8711
  @layer utilities {
8675
8712
  lexxy-editor figure.horizontal-divider {
8676
8713
  position: relative;
8677
- margin: calc(var(--spacing) * 0);
8678
- padding-inline: calc(var(--spacing) * 0);
8714
+ margin: 0;
8715
+ padding-inline: 0;
8679
8716
  padding-block: calc(var(--spacing) * 3);
8680
8717
  text-align: center;
8681
8718
  }
8682
8719
  lexxy-editor figure.horizontal-divider hr {
8683
- margin: calc(var(--spacing) * 0);
8720
+ margin: 0;
8684
8721
  display: inline-block;
8685
8722
  height: 1px;
8686
- width: calc(1/5 * 100%);
8723
+ width: calc(1 / 5 * 100%);
8687
8724
  border-style: var(--tw-border-style);
8688
8725
  border-width: 0px;
8689
- padding: calc(var(--spacing) * 0);
8726
+ padding: 0;
8690
8727
  background-color: var(--color-stone-300);
8691
8728
  @media (prefers-color-scheme: dark) {
8692
8729
  background-color: var(--color-stone-600);
@@ -8781,7 +8818,7 @@ dialog.modal {
8781
8818
  line-height: 1;
8782
8819
  --tw-font-weight: var(--font-weight-medium);
8783
8820
  font-weight: var(--font-weight-medium);
8784
- padding-block: calc(var(--spacing) * 1);
8821
+ padding-block: var(--spacing);
8785
8822
  padding-right: calc(var(--spacing) * 6);
8786
8823
  padding-left: calc(var(--spacing) * 2);
8787
8824
  margin-top: calc(var(--spacing) * 2);
@@ -9110,11 +9147,6 @@ dialog.modal {
9110
9147
  syntax: "*";
9111
9148
  inherits: false;
9112
9149
  }
9113
- @property --tw-content {
9114
- syntax: "*";
9115
- initial-value: "";
9116
- inherits: false;
9117
- }
9118
9150
  @property --tw-ordinal {
9119
9151
  syntax: "*";
9120
9152
  inherits: false;
@@ -9135,6 +9167,11 @@ dialog.modal {
9135
9167
  syntax: "*";
9136
9168
  inherits: false;
9137
9169
  }
9170
+ @property --tw-content {
9171
+ syntax: "*";
9172
+ initial-value: "";
9173
+ inherits: false;
9174
+ }
9138
9175
  @keyframes spin {
9139
9176
  to {
9140
9177
  transform: rotate(360deg);
@@ -9224,12 +9261,12 @@ dialog.modal {
9224
9261
  --tw-gradient-to-position: 100%;
9225
9262
  --tw-tracking: initial;
9226
9263
  --tw-leading: initial;
9227
- --tw-content: "";
9228
9264
  --tw-ordinal: initial;
9229
9265
  --tw-slashed-zero: initial;
9230
9266
  --tw-numeric-figure: initial;
9231
9267
  --tw-numeric-spacing: initial;
9232
9268
  --tw-numeric-fraction: initial;
9269
+ --tw-content: "";
9233
9270
  }
9234
9271
  }
9235
9272
  }