@bookklik/senangstart-css 0.2.0 → 0.2.4

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 (149) hide show
  1. package/dist/senangstart-css.js +102 -7
  2. package/dist/senangstart-css.min.js +26 -24
  3. package/dist/senangstart-tw.js +389 -0
  4. package/dist/senangstart-tw.min.js +2 -0
  5. package/docs/.vitepress/config.js +13 -4
  6. package/docs/SYNTAX-REFERENCE.md +1590 -1555
  7. package/docs/index.md +6 -0
  8. package/docs/ms/index.md +6 -0
  9. package/docs/ms/reference/visual/accent-color.md +6 -6
  10. package/docs/ms/reference/visual/animation-builtin.md +6 -6
  11. package/docs/ms/reference/visual/animation-delay.md +4 -2
  12. package/docs/ms/reference/visual/animation-direction.md +6 -6
  13. package/docs/ms/reference/visual/animation-duration.md +4 -4
  14. package/docs/ms/reference/visual/animation-fill.md +33 -9
  15. package/docs/ms/reference/visual/animation-iteration.md +5 -5
  16. package/docs/ms/reference/visual/animation-play.md +4 -4
  17. package/docs/ms/reference/visual/appearance.md +4 -4
  18. package/docs/ms/reference/visual/blend-modes.md +6 -6
  19. package/docs/ms/reference/visual/border-radius.md +8 -8
  20. package/docs/ms/reference/visual/box-shadow.md +6 -6
  21. package/docs/ms/reference/visual/caret-color.md +2 -2
  22. package/docs/ms/reference/visual/cursor.md +6 -6
  23. package/docs/ms/reference/visual/filter-blur.md +7 -7
  24. package/docs/ms/reference/visual/font-family.md +8 -8
  25. package/docs/ms/reference/visual/font-smoothing.md +4 -4
  26. package/docs/ms/reference/visual/font-style.md +4 -4
  27. package/docs/ms/reference/visual/font-variant-numeric.md +6 -4
  28. package/docs/ms/reference/visual/font-weight.md +6 -6
  29. package/docs/ms/reference/visual/gradient-from.md +57 -0
  30. package/docs/ms/reference/visual/gradient-to.md +57 -0
  31. package/docs/ms/reference/visual/gradient-via.md +54 -0
  32. package/docs/ms/reference/visual/hyphens.md +6 -6
  33. package/docs/ms/reference/visual/letter-spacing.md +8 -8
  34. package/docs/ms/reference/visual/line-clamp.md +9 -9
  35. package/docs/ms/reference/visual/line-height.md +8 -8
  36. package/docs/ms/reference/visual/list-style.md +7 -7
  37. package/docs/ms/reference/visual/mask.md +6 -2
  38. package/docs/ms/reference/visual/opacity.md +8 -8
  39. package/docs/ms/reference/visual/pointer-events.md +4 -4
  40. package/docs/ms/reference/visual/state-prefixes.md +5 -3
  41. package/docs/ms/reference/visual/text-decoration.md +6 -4
  42. package/docs/ms/reference/visual/text-indent.md +8 -4
  43. package/docs/ms/reference/visual/text-overflow.md +6 -4
  44. package/docs/ms/reference/visual/text-shadow.md +8 -2
  45. package/docs/ms/reference/visual/text-size.md +31 -13
  46. package/docs/ms/reference/visual/text-transform.md +6 -6
  47. package/docs/ms/reference/visual/text-wrap.md +8 -8
  48. package/docs/ms/reference/visual/transform-backface.md +29 -9
  49. package/docs/ms/reference/visual/transform-origin.md +4 -4
  50. package/docs/ms/reference/visual/transform-perspective-origin.md +41 -7
  51. package/docs/ms/reference/visual/transform-perspective.md +41 -7
  52. package/docs/ms/reference/visual/transform-rotate-3d.md +93 -0
  53. package/docs/ms/reference/visual/transform-rotate.md +6 -6
  54. package/docs/ms/reference/visual/transform-scale.md +7 -7
  55. package/docs/ms/reference/visual/transform-skew.md +6 -6
  56. package/docs/ms/reference/visual/transform-style.md +31 -11
  57. package/docs/ms/reference/visual/transform-translate-z.md +90 -0
  58. package/docs/ms/reference/visual/transform-translate.md +40 -14
  59. package/docs/ms/reference/visual/transition-delay.md +4 -2
  60. package/docs/ms/reference/visual/transition-duration.md +4 -4
  61. package/docs/ms/reference/visual/transition-timing.md +6 -6
  62. package/docs/ms/reference/visual/typography-keywords.md +8 -8
  63. package/docs/ms/reference/visual/user-select.md +4 -4
  64. package/docs/ms/reference/visual/vertical-align.md +10 -8
  65. package/docs/ms/reference/visual/whitespace.md +8 -8
  66. package/docs/ms/reference/visual/word-break.md +8 -8
  67. package/docs/public/assets/senangstart-css.min.js +209 -1545
  68. package/docs/public/assets/ss-logo.svg +83 -0
  69. package/docs/reference/visual/accent-color.md +6 -6
  70. package/docs/reference/visual/animation-builtin.md +6 -6
  71. package/docs/reference/visual/animation-delay.md +4 -2
  72. package/docs/reference/visual/animation-direction.md +6 -6
  73. package/docs/reference/visual/animation-duration.md +4 -4
  74. package/docs/reference/visual/animation-fill.md +33 -9
  75. package/docs/reference/visual/animation-iteration.md +5 -5
  76. package/docs/reference/visual/animation-play.md +4 -4
  77. package/docs/reference/visual/appearance.md +4 -4
  78. package/docs/reference/visual/blend-modes.md +6 -6
  79. package/docs/reference/visual/border-radius.md +8 -8
  80. package/docs/reference/visual/box-shadow.md +6 -6
  81. package/docs/reference/visual/caret-color.md +2 -2
  82. package/docs/reference/visual/cursor.md +6 -6
  83. package/docs/reference/visual/filter-blur.md +7 -7
  84. package/docs/reference/visual/font-family.md +8 -8
  85. package/docs/reference/visual/font-smoothing.md +4 -4
  86. package/docs/reference/visual/font-style.md +4 -4
  87. package/docs/reference/visual/font-variant-numeric.md +6 -4
  88. package/docs/reference/visual/font-weight.md +6 -6
  89. package/docs/reference/visual/gradient-from.md +57 -0
  90. package/docs/reference/visual/gradient-to.md +57 -0
  91. package/docs/reference/visual/gradient-via.md +54 -0
  92. package/docs/reference/visual/hyphens.md +6 -6
  93. package/docs/reference/visual/letter-spacing.md +8 -8
  94. package/docs/reference/visual/line-clamp.md +9 -9
  95. package/docs/reference/visual/line-height.md +8 -8
  96. package/docs/reference/visual/list-style.md +7 -7
  97. package/docs/reference/visual/mask.md +6 -2
  98. package/docs/reference/visual/opacity.md +8 -8
  99. package/docs/reference/visual/pointer-events.md +4 -4
  100. package/docs/reference/visual/state-prefixes.md +5 -3
  101. package/docs/reference/visual/text-decoration.md +6 -4
  102. package/docs/reference/visual/text-indent.md +8 -4
  103. package/docs/reference/visual/text-overflow.md +6 -4
  104. package/docs/reference/visual/text-shadow.md +8 -2
  105. package/docs/reference/visual/text-size.md +31 -13
  106. package/docs/reference/visual/text-transform.md +6 -6
  107. package/docs/reference/visual/text-wrap.md +8 -8
  108. package/docs/reference/visual/transform-backface.md +29 -9
  109. package/docs/reference/visual/transform-origin.md +4 -4
  110. package/docs/reference/visual/transform-perspective-origin.md +41 -7
  111. package/docs/reference/visual/transform-perspective.md +41 -7
  112. package/docs/reference/visual/transform-rotate-3d.md +93 -0
  113. package/docs/reference/visual/transform-rotate.md +6 -6
  114. package/docs/reference/visual/transform-scale.md +7 -7
  115. package/docs/reference/visual/transform-skew.md +6 -6
  116. package/docs/reference/visual/transform-style.md +31 -11
  117. package/docs/reference/visual/transform-translate-z.md +90 -0
  118. package/docs/reference/visual/transform-translate.md +40 -14
  119. package/docs/reference/visual/transition-delay.md +4 -2
  120. package/docs/reference/visual/transition-duration.md +4 -4
  121. package/docs/reference/visual/transition-timing.md +6 -6
  122. package/docs/reference/visual/typography-keywords.md +8 -8
  123. package/docs/reference/visual/user-select.md +4 -4
  124. package/docs/reference/visual/vertical-align.md +10 -8
  125. package/docs/reference/visual/whitespace.md +8 -8
  126. package/docs/reference/visual/word-break.md +8 -8
  127. package/docs/syntax-reference.json +2009 -1972
  128. package/package.json +2 -2
  129. package/playground/index.html +37 -38
  130. package/playground/sample_code.txt +23 -0
  131. package/playground/tw-convertor.html +103 -589
  132. package/scripts/build-dist.js +43 -1
  133. package/scripts/convert-tailwind.js +24 -0
  134. package/scripts/generate-docs.js +9 -7
  135. package/src/cdn/jit.js +70 -7
  136. package/src/cdn/tw-conversion-engine.js +497 -0
  137. package/src/compiler/generators/css.js +24 -2
  138. package/src/config/defaults.js +31 -7
  139. package/src/definitions/layout-positioning.js +6 -6
  140. package/src/definitions/visual-backgrounds.js +113 -15
  141. package/src/definitions/visual-borders.js +1 -1
  142. package/src/definitions/visual-filters.js +16 -16
  143. package/src/definitions/visual-svg.js +5 -5
  144. package/src/definitions/visual-transform3d.js +202 -36
  145. package/src/definitions/visual-transforms.js +42 -25
  146. package/src/definitions/visual-transitions.js +40 -26
  147. package/src/definitions/visual-typography.js +53 -44
  148. package/src/definitions/visual.js +73 -58
  149. package/tests/unit/convert-tailwind.test.js +8 -0
@@ -31,9 +31,9 @@ visual="font:[weight]"
31
31
  <div layout="flex col" space="g:medium">
32
32
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="font:bold"</code> - Control text thickness</p>
33
33
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
34
- <span style="font-weight: 400;">normal</span>
35
- <span style="font-weight: 500;">medium</span>
36
- <span style="font-weight: 700;">bold</span>
34
+ <span visual="font:normal">normal</span>
35
+ <span visual="font:medium">medium</span>
36
+ <span visual="font:bold">bold</span>
37
37
  </div>
38
38
  </div>
39
39
 
@@ -42,9 +42,9 @@ visual="font:[weight]"
42
42
 
43
43
  ```html
44
44
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
45
- <span style="font-weight: 400;">normal</span>
46
- <span style="font-weight: 500;">medium</span>
47
- <span style="font-weight: 700;">bold</span>
45
+ <span visual="font:normal">normal</span>
46
+ <span visual="font:medium">medium</span>
47
+ <span visual="font:bold">bold</span>
48
48
  </div>
49
49
  ```
50
50
 
@@ -0,0 +1,57 @@
1
+ # Gradient From
2
+
3
+ Set gradient start color
4
+
5
+ ## Syntax
6
+ ```
7
+ visual="from:[color]"
8
+ ```
9
+
10
+ ## Values
11
+
12
+ | Value | CSS Output | Description |
13
+ |-------|------------|-------------|
14
+ | `primary` | `--tw-gradient-from: var(--c-primary); --tw-gradient-to: transparent; --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)` | Start from primary |
15
+ | `blue-500` | `--tw-gradient-from: var(--c-blue-500); --tw-gradient-to: transparent; --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)` | Start from blue |
16
+
17
+ ## Examples
18
+
19
+ ```html
20
+ <div visual="bg-image:gradient-to-r from:blue-500 to:purple-500">Gradient</div>
21
+ ```
22
+
23
+ ## Preview
24
+
25
+ <div space="p-x:big p-b:medium m-t:medium" visual="border-w:thin border:neutral-100 dark:border:neutral-800 rounded:medium">
26
+
27
+ ### Gradient From
28
+
29
+ <div layout="flex col" space="g:medium">
30
+ <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="from:blue-500"</code> - Set the starting color of a gradient</p>
31
+ <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
32
+ <div space="p:medium" visual="bg-image:gradient-to-r from:blue-500 to:purple-500 text:white rounded:small">from:blue-500 to:purple-500</div>
33
+ <div space="p:medium" visual="bg-image:gradient-to-r from:emerald-500 to:blue-500 text:white rounded:small">from:emerald-500 to:blue-500</div>
34
+ </div>
35
+ </div>
36
+
37
+ <details>
38
+ <summary>View Code</summary>
39
+
40
+ ```html
41
+ <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
42
+ <div space="p:medium" visual="bg-image:gradient-to-r from:blue-500 to:purple-500 text:white rounded:small">from:blue-500 to:purple-500</div>
43
+ <div space="p:medium" visual="bg-image:gradient-to-r from:emerald-500 to:blue-500 text:white rounded:small">from:emerald-500 to:blue-500</div>
44
+ </div>
45
+ ```
46
+
47
+ </details>
48
+
49
+ </div>
50
+
51
+ ## Arbitrary Values
52
+
53
+ Supports custom values using bracket syntax:
54
+
55
+ ```html
56
+ <div visual="gradient:[custom-value]">Custom</div>
57
+ ```
@@ -0,0 +1,57 @@
1
+ # Gradient To
2
+
3
+ Set gradient end color
4
+
5
+ ## Syntax
6
+ ```
7
+ visual="to:[color]"
8
+ ```
9
+
10
+ ## Values
11
+
12
+ | Value | CSS Output | Description |
13
+ |-------|------------|-------------|
14
+ | `purple-500` | `--tw-gradient-to: var(--c-purple-500)` | End at purple |
15
+ | `pink-500` | `--tw-gradient-to: var(--c-pink-500)` | End at pink |
16
+
17
+ ## Examples
18
+
19
+ ```html
20
+ <div visual="bg-image:gradient-to-r from:blue-500 to:purple-500">Blue to purple</div>
21
+ ```
22
+
23
+ ## Preview
24
+
25
+ <div space="p-x:big p-b:medium m-t:medium" visual="border-w:thin border:neutral-100 dark:border:neutral-800 rounded:medium">
26
+
27
+ ### Gradient To
28
+
29
+ <div layout="flex col" space="g:medium">
30
+ <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="to:purple-500"</code> - Set the ending color of a gradient</p>
31
+ <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
32
+ <div space="p:medium" visual="bg-image:gradient-to-r from:blue-500 to:purple-500 text:white rounded:small">to:purple-500</div>
33
+ <div space="p:medium" visual="bg-image:gradient-to-r from:blue-500 to:pink-500 text:white rounded:small">to:pink-500</div>
34
+ </div>
35
+ </div>
36
+
37
+ <details>
38
+ <summary>View Code</summary>
39
+
40
+ ```html
41
+ <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
42
+ <div space="p:medium" visual="bg-image:gradient-to-r from:blue-500 to:purple-500 text:white rounded:small">to:purple-500</div>
43
+ <div space="p:medium" visual="bg-image:gradient-to-r from:blue-500 to:pink-500 text:white rounded:small">to:pink-500</div>
44
+ </div>
45
+ ```
46
+
47
+ </details>
48
+
49
+ </div>
50
+
51
+ ## Arbitrary Values
52
+
53
+ Supports custom values using bracket syntax:
54
+
55
+ ```html
56
+ <div visual="gradient:[custom-value]">Custom</div>
57
+ ```
@@ -0,0 +1,54 @@
1
+ # Gradient Via
2
+
3
+ Set gradient middle color
4
+
5
+ ## Syntax
6
+ ```
7
+ visual="via:[color]"
8
+ ```
9
+
10
+ ## Values
11
+
12
+ | Value | CSS Output | Description |
13
+ |-------|------------|-------------|
14
+ | `purple-500` | `--tw-gradient-via: var(--c-purple-500); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-via), var(--tw-gradient-to)` | Via purple |
15
+
16
+ ## Examples
17
+
18
+ ```html
19
+ <div visual="bg-image:gradient-to-r from:blue-500 via:purple-500 to:pink-500">Three-color gradient</div>
20
+ ```
21
+
22
+ ## Preview
23
+
24
+ <div space="p-x:big p-b:medium m-t:medium" visual="border-w:thin border:neutral-100 dark:border:neutral-800 rounded:medium">
25
+
26
+ ### Gradient Via
27
+
28
+ <div layout="flex col" space="g:medium">
29
+ <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="via:purple-500"</code> - Add a middle color stop to gradients</p>
30
+ <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
31
+ <div space="p:medium" visual="bg-image:gradient-to-r from:blue-500 via:purple-500 to:pink-500 text:white rounded:small">from:blue via:purple to:pink</div>
32
+ </div>
33
+ </div>
34
+
35
+ <details>
36
+ <summary>View Code</summary>
37
+
38
+ ```html
39
+ <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
40
+ <div space="p:medium" visual="bg-image:gradient-to-r from:blue-500 via:purple-500 to:pink-500 text:white rounded:small">from:blue via:purple to:pink</div>
41
+ </div>
42
+ ```
43
+
44
+ </details>
45
+
46
+ </div>
47
+
48
+ ## Arbitrary Values
49
+
50
+ Supports custom values using bracket syntax:
51
+
52
+ ```html
53
+ <div visual="gradient:[custom-value]">Custom</div>
54
+ ```
@@ -30,9 +30,9 @@ visual="hyphens:[value]"
30
30
  <div layout="flex col" space="g:medium">
31
31
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="hyphens:auto"</code> - Control automatic hyphenation</p>
32
32
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
33
- <div space="p:small" visual="bg:primary text:white rounded:small">none</div>
34
- <div space="p:small" visual="bg:primary text:white rounded:small">manual</div>
35
- <div space="p:small" visual="bg:primary text:white rounded:small">auto</div>
33
+ <div space="p:small" visual="bg:primary text:white rounded:small hyphens:none">none</div>
34
+ <div space="p:small" visual="bg:primary text:white rounded:small hyphens:manual">manual</div>
35
+ <div space="p:small" visual="bg:primary text:white rounded:small hyphens:auto">auto</div>
36
36
  </div>
37
37
  </div>
38
38
 
@@ -41,9 +41,9 @@ visual="hyphens:[value]"
41
41
 
42
42
  ```html
43
43
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
44
- <div space="p:small" visual="bg:primary text:white rounded:small">none</div>
45
- <div space="p:small" visual="bg:primary text:white rounded:small">manual</div>
46
- <div space="p:small" visual="bg:primary text:white rounded:small">auto</div>
44
+ <div space="p:small" visual="bg:primary text:white rounded:small hyphens:none">none</div>
45
+ <div space="p:small" visual="bg:primary text:white rounded:small hyphens:manual">manual</div>
46
+ <div space="p:small" visual="bg:primary text:white rounded:small hyphens:auto">auto</div>
47
47
  </div>
48
48
  ```
49
49
 
@@ -32,10 +32,10 @@ visual="tracking:[value]"
32
32
 
33
33
  <div layout="flex col" space="g:medium">
34
34
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="tracking:wide"</code> - Adjust spacing between characters</p>
35
- <div layout="flex col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
36
- <span style="letter-spacing: -0.05em;">tighter spacing</span>
37
- <span style="letter-spacing: 0;">normal spacing</span>
38
- <span style="letter-spacing: 0.1em;">widest spacing</span>
35
+ <div layout="flex:col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
36
+ <span visual="tracking:tighter">tighter spacing</span>
37
+ <span visual="tracking:normal">normal spacing</span>
38
+ <span visual="tracking:widest">widest spacing</span>
39
39
  </div>
40
40
  </div>
41
41
 
@@ -43,10 +43,10 @@ visual="tracking:[value]"
43
43
  <summary>View Code</summary>
44
44
 
45
45
  ```html
46
- <div layout="flex col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
47
- <span style="letter-spacing: -0.05em;">tighter spacing</span>
48
- <span style="letter-spacing: 0;">normal spacing</span>
49
- <span style="letter-spacing: 0.1em;">widest spacing</span>
46
+ <div layout="flex:col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
47
+ <span visual="tracking:tighter">tighter spacing</span>
48
+ <span visual="tracking:normal">normal spacing</span>
49
+ <span visual="tracking:widest">widest spacing</span>
50
50
  </div>
51
51
  ```
52
52
 
@@ -29,11 +29,11 @@ visual="line-clamp:[value]"
29
29
  ### Line Clamp
30
30
 
31
31
  <div layout="flex col" space="g:medium">
32
- <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="line-clamp:3"</code> - Limit text to specific lines</p>
33
- <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
34
- <div space="p:small" visual="bg:primary text:white rounded:small">1</div>
35
- <div space="p:small" visual="bg:primary text:white rounded:small">2</div>
36
- <div space="p:small" visual="bg:primary text:white rounded:small">3</div>
32
+ <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="line-clamp:2"</code> - Limit text to specific lines</p>
33
+ <div layout="flex:col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
34
+ <div space="p:small w:[200px]" visual="bg:primary text:white rounded:small line-clamp:1">This is a very long text that will be clamped to just one single line with ellipsis.</div>
35
+ <div space="p:small w:[200px]" visual="bg:success text:white rounded:small line-clamp:2">This is a very long text that will be clamped to exactly two lines with ellipsis at the end.</div>
36
+ <div space="p:small w:[200px]" visual="bg:warning text:black rounded:small line-clamp:3">This is a very long text that will be clamped to exactly three lines with ellipsis shown at the end of the third line.</div>
37
37
  </div>
38
38
  </div>
39
39
 
@@ -41,10 +41,10 @@ visual="line-clamp:[value]"
41
41
  <summary>View Code</summary>
42
42
 
43
43
  ```html
44
- <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
45
- <div space="p:small" visual="bg:primary text:white rounded:small">1</div>
46
- <div space="p:small" visual="bg:primary text:white rounded:small">2</div>
47
- <div space="p:small" visual="bg:primary text:white rounded:small">3</div>
44
+ <div layout="flex:col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
45
+ <div space="p:small w:[200px]" visual="bg:primary text:white rounded:small line-clamp:1">This is a very long text that will be clamped to just one single line with ellipsis.</div>
46
+ <div space="p:small w:[200px]" visual="bg:success text:white rounded:small line-clamp:2">This is a very long text that will be clamped to exactly two lines with ellipsis at the end.</div>
47
+ <div space="p:small w:[200px]" visual="bg:warning text:black rounded:small line-clamp:3">This is a very long text that will be clamped to exactly three lines with ellipsis shown at the end of the third line.</div>
48
48
  </div>
49
49
  ```
50
50
 
@@ -32,10 +32,10 @@ visual="leading:[value]"
32
32
 
33
33
  <div layout="flex col" space="g:medium">
34
34
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="leading:relaxed"</code> - Control vertical spacing between lines</p>
35
- <div layout="flex col" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
36
- <p style="line-height: 1; margin: 0;">Tight leading<br>for headings</p>
37
- <p style="line-height: 1.5; margin: 0;">Normal leading<br>for body text</p>
38
- <p style="line-height: 2; margin: 0;">Loose leading<br>for readability</p>
35
+ <div layout="flex:col" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
36
+ <p space="m:0" visual="leading:tight">Tight leading<br>for headings</p>
37
+ <p space="m:0" visual="leading:normal">Normal leading<br>for body text</p>
38
+ <p space="m:0" visual="leading:loose">Loose leading<br>for readability</p>
39
39
  </div>
40
40
  </div>
41
41
 
@@ -43,10 +43,10 @@ visual="leading:[value]"
43
43
  <summary>View Code</summary>
44
44
 
45
45
  ```html
46
- <div layout="flex col" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
47
- <p style="line-height: 1; margin: 0;">Tight leading<br>for headings</p>
48
- <p style="line-height: 1.5; margin: 0;">Normal leading<br>for body text</p>
49
- <p style="line-height: 2; margin: 0;">Loose leading<br>for readability</p>
46
+ <div layout="flex:col" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
47
+ <p space="m:0" visual="leading:tight">Tight leading<br>for headings</p>
48
+ <p space="m:0" visual="leading:normal">Normal leading<br>for body text</p>
49
+ <p space="m:0" visual="leading:loose">Loose leading<br>for readability</p>
50
50
  </div>
51
51
  ```
52
52
 
@@ -31,11 +31,11 @@ visual="list:[value]"
31
31
  ### List Style
32
32
 
33
33
  <div layout="flex col" space="g:medium">
34
- <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="list:none"</code> - Control list markers</p>
34
+ <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="list:disc"</code> - Control list markers</p>
35
35
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
36
- <div space="p:small" visual="bg:primary text:white rounded:small">none</div>
37
- <div space="p:small" visual="bg:primary text:white rounded:small">disc</div>
38
- <div space="p:small" visual="bg:primary text:white rounded:small">decimal</div>
36
+ <ul space="p:small" visual="bg:primary text:white rounded:small list:none"><li>none</li><li>no bullets</li></ul>
37
+ <ul space="p:small" visual="bg:success text:white rounded:small list:disc"><li>disc</li><li>bullet</li></ul>
38
+ <ol space="p:small" visual="bg:warning text:black rounded:small list:decimal"><li>decimal</li><li>numbers</li></ol>
39
39
  </div>
40
40
  </div>
41
41
 
@@ -44,9 +44,9 @@ visual="list:[value]"
44
44
 
45
45
  ```html
46
46
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
47
- <div space="p:small" visual="bg:primary text:white rounded:small">none</div>
48
- <div space="p:small" visual="bg:primary text:white rounded:small">disc</div>
49
- <div space="p:small" visual="bg:primary text:white rounded:small">decimal</div>
47
+ <ul space="p:small" visual="bg:primary text:white rounded:small list:none"><li>none</li><li>no bullets</li></ul>
48
+ <ul space="p:small" visual="bg:success text:white rounded:small list:disc"><li>disc</li><li>bullet</li></ul>
49
+ <ol space="p:small" visual="bg:warning text:black rounded:small list:decimal"><li>decimal</li><li>numbers</li></ol>
50
50
  </div>
51
51
  ```
52
52
 
@@ -30,7 +30,9 @@ visual="mask:[value]"
30
30
  <div layout="flex col" space="g:medium">
31
31
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="mask:fade-y"</code> - Apply gradient mask to edges</p>
32
32
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
33
- <div space="p:medium" visual="bg:primary text:white rounded:small">mask:fade-y</div>
33
+ <div space="p:medium" visual="bg:primary text:white rounded:small mask:none">none</div>
34
+ <div space="p:medium" visual="bg:primary text:white rounded:small mask:fade-y">fade-y</div>
35
+ <div space="p:medium" visual="bg:primary text:white rounded:small mask:fade-x">fade-x</div>
34
36
  </div>
35
37
  </div>
36
38
 
@@ -39,7 +41,9 @@ visual="mask:[value]"
39
41
 
40
42
  ```html
41
43
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
42
- <div space="p:medium" visual="bg:primary text:white rounded:small">mask:fade-y</div>
44
+ <div space="p:medium" visual="bg:primary text:white rounded:small mask:none">none</div>
45
+ <div space="p:medium" visual="bg:primary text:white rounded:small mask:fade-y">fade-y</div>
46
+ <div space="p:medium" visual="bg:primary text:white rounded:small mask:fade-x">fade-x</div>
43
47
  </div>
44
48
  ```
45
49
 
@@ -32,10 +32,10 @@ visual="opacity:[value]"
32
32
  <div layout="flex col" space="g:medium">
33
33
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="opacity:50"</code> - Control element transparency from invisible to fully visible</p>
34
34
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
35
- <div space="p:small" visual="bg:primary text:white rounded:small" style="opacity: 0.25;">25%</div>
36
- <div space="p:small" visual="bg:primary text:white rounded:small" style="opacity: 0.5;">50%</div>
37
- <div space="p:small" visual="bg:primary text:white rounded:small" style="opacity: 0.75;">75%</div>
38
- <div space="p:small" visual="bg:primary text:white rounded:small" style="opacity: 1;">100%</div>
35
+ <div space="p:small" visual="bg:primary text:white rounded:small opacity:25">25%</div>
36
+ <div space="p:small" visual="bg:primary text:white rounded:small opacity:50">50%</div>
37
+ <div space="p:small" visual="bg:primary text:white rounded:small opacity:75">75%</div>
38
+ <div space="p:small" visual="bg:primary text:white rounded:small opacity:100">100%</div>
39
39
  </div>
40
40
  </div>
41
41
 
@@ -44,10 +44,10 @@ visual="opacity:[value]"
44
44
 
45
45
  ```html
46
46
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
47
- <div space="p:small" visual="bg:primary text:white rounded:small" style="opacity: 0.25;">25%</div>
48
- <div space="p:small" visual="bg:primary text:white rounded:small" style="opacity: 0.5;">50%</div>
49
- <div space="p:small" visual="bg:primary text:white rounded:small" style="opacity: 0.75;">75%</div>
50
- <div space="p:small" visual="bg:primary text:white rounded:small" style="opacity: 1;">100%</div>
47
+ <div space="p:small" visual="bg:primary text:white rounded:small opacity:25">25%</div>
48
+ <div space="p:small" visual="bg:primary text:white rounded:small opacity:50">50%</div>
49
+ <div space="p:small" visual="bg:primary text:white rounded:small opacity:75">75%</div>
50
+ <div space="p:small" visual="bg:primary text:white rounded:small opacity:100">100%</div>
51
51
  </div>
52
52
  ```
53
53
 
@@ -29,8 +29,8 @@ visual="pointer-events:[value]"
29
29
  <div layout="flex col" space="g:medium">
30
30
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="pointer-events:none"</code> - Make elements click-through or interactive</p>
31
31
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
32
- <div space="p:small" visual="bg:primary text:white rounded:small">auto (clickable)</div>
33
- <div space="p:small" visual="bg:neutral-400 text:white rounded:small">none (click-through)</div>
32
+ <div space="p:small" visual="bg:primary text:white rounded:small pointer-events:auto">auto (clickable)</div>
33
+ <div space="p:small" visual="bg:neutral-400 text:white rounded:small pointer-events:none">none (click-through)</div>
34
34
  </div>
35
35
  </div>
36
36
 
@@ -39,8 +39,8 @@ visual="pointer-events:[value]"
39
39
 
40
40
  ```html
41
41
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
42
- <div space="p:small" visual="bg:primary text:white rounded:small">auto (clickable)</div>
43
- <div space="p:small" visual="bg:neutral-400 text:white rounded:small">none (click-through)</div>
42
+ <div space="p:small" visual="bg:primary text:white rounded:small pointer-events:auto">auto (clickable)</div>
43
+ <div space="p:small" visual="bg:neutral-400 text:white rounded:small pointer-events:none">none (click-through)</div>
44
44
  </div>
45
45
  ```
46
46
 
@@ -34,9 +34,10 @@ visual="hover:... focus:... active:..."
34
34
  ### State Prefixes
35
35
 
36
36
  <div layout="flex col" space="g:medium">
37
- <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="hover:bg:primary"</code> - Apply styles on hover, focus, etc.</p>
37
+ <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="hover:scale:110"</code> - Apply styles on hover, focus, etc.</p>
38
38
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
39
- <button space="p:small" visual="bg:primary text:white rounded:small transition:all hover:bg:primary-dark">hover:bg:primary-dark</button>
39
+ <button space="p:small" visual="bg:primary text:white rounded:small transition:all hover:scale:110">hover:scale:110</button>
40
+ <button space="p:small" visual="bg:neutral-500 text:white rounded:small transition:all hover:bg:primary">hover:bg:primary</button>
40
41
  </div>
41
42
  </div>
42
43
 
@@ -45,7 +46,8 @@ visual="hover:... focus:... active:..."
45
46
 
46
47
  ```html
47
48
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
48
- <button space="p:small" visual="bg:primary text:white rounded:small transition:all hover:bg:primary-dark">hover:bg:primary-dark</button>
49
+ <button space="p:small" visual="bg:primary text:white rounded:small transition:all hover:scale:110">hover:scale:110</button>
50
+ <button space="p:small" visual="bg:neutral-500 text:white rounded:small transition:all hover:bg:primary">hover:bg:primary</button>
49
51
  </div>
50
52
  ```
51
53
 
@@ -31,8 +31,9 @@ visual="[decoration-value]"
31
31
  <div layout="flex col" space="g:medium">
32
32
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="underline"</code> - Add lines to text</p>
33
33
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
34
- <span space="p:small" visual="bg:primary text:white rounded:small" style="text-decoration: underline;">underline</span>
35
- <span space="p:small" visual="bg:primary text:white rounded:small" style="text-decoration: line-through;">line-through</span>
34
+ <span space="p:small" visual="bg:primary text:white rounded:small underline">underline</span>
35
+ <span space="p:small" visual="bg:primary text:white rounded:small line-through">line-through</span>
36
+ <span space="p:small" visual="bg:primary text:white rounded:small overline">overline</span>
36
37
  </div>
37
38
  </div>
38
39
 
@@ -41,8 +42,9 @@ visual="[decoration-value]"
41
42
 
42
43
  ```html
43
44
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
44
- <span space="p:small" visual="bg:primary text:white rounded:small" style="text-decoration: underline;">underline</span>
45
- <span space="p:small" visual="bg:primary text:white rounded:small" style="text-decoration: line-through;">line-through</span>
45
+ <span space="p:small" visual="bg:primary text:white rounded:small underline">underline</span>
46
+ <span space="p:small" visual="bg:primary text:white rounded:small line-through">line-through</span>
47
+ <span space="p:small" visual="bg:primary text:white rounded:small overline">overline</span>
46
48
  </div>
47
49
  ```
48
50
 
@@ -27,8 +27,10 @@ visual="indent:[value]"
27
27
 
28
28
  <div layout="flex col" space="g:medium">
29
29
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="indent:medium"</code> - Indent first line of text</p>
30
- <div space="p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
31
- <p visual="bg:primary text:white rounded:small" space="p:small" style="text-indent: 2rem;">Indented text example...</p>
30
+ <div layout="flex:col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
31
+ <p space="p:small" visual="bg:primary text:white rounded:small indent:0">No indent on this text paragraph.</p>
32
+ <p space="p:small" visual="bg:success text:white rounded:small indent:medium">Medium indent on this first line of the paragraph.</p>
33
+ <p space="p:small" visual="bg:warning text:black rounded:small indent:big">Bigger indent on this first line of the paragraph.</p>
32
34
  </div>
33
35
  </div>
34
36
 
@@ -36,8 +38,10 @@ visual="indent:[value]"
36
38
  <summary>View Code</summary>
37
39
 
38
40
  ```html
39
- <div space="p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
40
- <p visual="bg:primary text:white rounded:small" space="p:small" style="text-indent: 2rem;">Indented text example...</p>
41
+ <div layout="flex:col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
42
+ <p space="p:small" visual="bg:primary text:white rounded:small indent:0">No indent on this text paragraph.</p>
43
+ <p space="p:small" visual="bg:success text:white rounded:small indent:medium">Medium indent on this first line of the paragraph.</p>
44
+ <p space="p:small" visual="bg:warning text:black rounded:small indent:big">Bigger indent on this first line of the paragraph.</p>
41
45
  </div>
42
46
  ```
43
47
 
@@ -29,8 +29,9 @@ visual="[overflow-value]"
29
29
 
30
30
  <div layout="flex col" space="g:medium">
31
31
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="truncate"</code> - Handle overflowing text</p>
32
- <div space="p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
33
- <div space="p:small" visual="bg:primary text:white rounded:small" style="width: 150px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;">This is truncated text...</div>
32
+ <div layout="flex:col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
33
+ <div space="p:small w:[150px]" visual="bg:primary text:white rounded:small truncate">This long text will be truncated with ellipsis</div>
34
+ <div space="p:small w:[150px]" visual="bg:success text:white rounded:small text-clip">This long text will be clipped without ellipsis</div>
34
35
  </div>
35
36
  </div>
36
37
 
@@ -38,8 +39,9 @@ visual="[overflow-value]"
38
39
  <summary>View Code</summary>
39
40
 
40
41
  ```html
41
- <div space="p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
42
- <div space="p:small" visual="bg:primary text:white rounded:small" style="width: 150px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;">This is truncated text...</div>
42
+ <div layout="flex:col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
43
+ <div space="p:small w:[150px]" visual="bg:primary text:white rounded:small truncate">This long text will be truncated with ellipsis</div>
44
+ <div space="p:small w:[150px]" visual="bg:success text:white rounded:small text-clip">This long text will be clipped without ellipsis</div>
43
45
  </div>
44
46
  ```
45
47
 
@@ -31,7 +31,10 @@ visual="text-shadow:[value]"
31
31
  <div layout="flex col" space="g:medium">
32
32
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="text-shadow:medium"</code> - Add shadow to text</p>
33
33
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
34
- <div space="p:small" visual="bg:primary text:white rounded:small" style="text-shadow: 0 2px 4px rgba(0,0,0,0.3);">shadow</div>
34
+ <div space="p:small" visual="bg:primary text:white rounded:small text-shadow:none text-size:big">none</div>
35
+ <div space="p:small" visual="bg:success text:white rounded:small text-shadow:small text-size:big">small</div>
36
+ <div space="p:small" visual="bg:warning text:black rounded:small text-shadow:medium text-size:big">medium</div>
37
+ <div space="p:small" visual="bg:danger text:white rounded:small text-shadow:big text-size:big">big</div>
35
38
  </div>
36
39
  </div>
37
40
 
@@ -40,7 +43,10 @@ visual="text-shadow:[value]"
40
43
 
41
44
  ```html
42
45
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
43
- <div space="p:small" visual="bg:primary text:white rounded:small" style="text-shadow: 0 2px 4px rgba(0,0,0,0.3);">shadow</div>
46
+ <div space="p:small" visual="bg:primary text:white rounded:small text-shadow:none text-size:big">none</div>
47
+ <div space="p:small" visual="bg:success text:white rounded:small text-shadow:small text-size:big">small</div>
48
+ <div space="p:small" visual="bg:warning text:black rounded:small text-shadow:medium text-size:big">medium</div>
49
+ <div space="p:small" visual="bg:danger text:white rounded:small text-shadow:big text-size:big">big</div>
44
50
  </div>
45
51
  ```
46
52