@bookklik/senangstart-css 0.2.0 → 0.2.3

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 (131) hide show
  1. package/dist/senangstart-css.js +84 -7
  2. package/dist/senangstart-css.min.js +25 -23
  3. package/docs/.vitepress/config.js +7 -4
  4. package/docs/SYNTAX-REFERENCE.md +1590 -1555
  5. package/docs/index.md +6 -0
  6. package/docs/ms/index.md +6 -0
  7. package/docs/ms/reference/visual/accent-color.md +6 -6
  8. package/docs/ms/reference/visual/animation-builtin.md +6 -6
  9. package/docs/ms/reference/visual/animation-delay.md +4 -2
  10. package/docs/ms/reference/visual/animation-direction.md +6 -6
  11. package/docs/ms/reference/visual/animation-duration.md +4 -4
  12. package/docs/ms/reference/visual/animation-fill.md +33 -9
  13. package/docs/ms/reference/visual/animation-iteration.md +5 -5
  14. package/docs/ms/reference/visual/animation-play.md +4 -4
  15. package/docs/ms/reference/visual/appearance.md +4 -4
  16. package/docs/ms/reference/visual/blend-modes.md +6 -6
  17. package/docs/ms/reference/visual/border-radius.md +8 -8
  18. package/docs/ms/reference/visual/box-shadow.md +6 -6
  19. package/docs/ms/reference/visual/caret-color.md +2 -2
  20. package/docs/ms/reference/visual/cursor.md +6 -6
  21. package/docs/ms/reference/visual/filter-blur.md +7 -7
  22. package/docs/ms/reference/visual/font-family.md +8 -8
  23. package/docs/ms/reference/visual/font-smoothing.md +4 -4
  24. package/docs/ms/reference/visual/font-style.md +4 -4
  25. package/docs/ms/reference/visual/font-variant-numeric.md +6 -4
  26. package/docs/ms/reference/visual/font-weight.md +6 -6
  27. package/docs/ms/reference/visual/hyphens.md +6 -6
  28. package/docs/ms/reference/visual/letter-spacing.md +8 -8
  29. package/docs/ms/reference/visual/line-clamp.md +9 -9
  30. package/docs/ms/reference/visual/line-height.md +8 -8
  31. package/docs/ms/reference/visual/list-style.md +7 -7
  32. package/docs/ms/reference/visual/mask.md +6 -2
  33. package/docs/ms/reference/visual/opacity.md +8 -8
  34. package/docs/ms/reference/visual/pointer-events.md +4 -4
  35. package/docs/ms/reference/visual/state-prefixes.md +5 -3
  36. package/docs/ms/reference/visual/text-decoration.md +6 -4
  37. package/docs/ms/reference/visual/text-indent.md +8 -4
  38. package/docs/ms/reference/visual/text-overflow.md +6 -4
  39. package/docs/ms/reference/visual/text-shadow.md +8 -2
  40. package/docs/ms/reference/visual/text-size.md +84 -66
  41. package/docs/ms/reference/visual/text-transform.md +6 -6
  42. package/docs/ms/reference/visual/text-wrap.md +8 -8
  43. package/docs/ms/reference/visual/transform-backface.md +29 -9
  44. package/docs/ms/reference/visual/transform-origin.md +4 -4
  45. package/docs/ms/reference/visual/transform-perspective-origin.md +41 -7
  46. package/docs/ms/reference/visual/transform-perspective.md +41 -7
  47. package/docs/ms/reference/visual/transform-rotate-3d.md +93 -0
  48. package/docs/ms/reference/visual/transform-rotate.md +6 -6
  49. package/docs/ms/reference/visual/transform-scale.md +7 -7
  50. package/docs/ms/reference/visual/transform-skew.md +6 -6
  51. package/docs/ms/reference/visual/transform-style.md +31 -11
  52. package/docs/ms/reference/visual/transform-translate-z.md +90 -0
  53. package/docs/ms/reference/visual/transform-translate.md +40 -14
  54. package/docs/ms/reference/visual/transition-delay.md +4 -2
  55. package/docs/ms/reference/visual/transition-duration.md +4 -4
  56. package/docs/ms/reference/visual/transition-timing.md +6 -6
  57. package/docs/ms/reference/visual/typography-keywords.md +8 -8
  58. package/docs/ms/reference/visual/user-select.md +4 -4
  59. package/docs/ms/reference/visual/vertical-align.md +10 -8
  60. package/docs/ms/reference/visual/whitespace.md +8 -8
  61. package/docs/ms/reference/visual/word-break.md +8 -8
  62. package/docs/public/assets/ss-logo.svg +83 -0
  63. package/docs/reference/visual/accent-color.md +6 -6
  64. package/docs/reference/visual/animation-builtin.md +6 -6
  65. package/docs/reference/visual/animation-delay.md +4 -2
  66. package/docs/reference/visual/animation-direction.md +6 -6
  67. package/docs/reference/visual/animation-duration.md +4 -4
  68. package/docs/reference/visual/animation-fill.md +33 -9
  69. package/docs/reference/visual/animation-iteration.md +5 -5
  70. package/docs/reference/visual/animation-play.md +4 -4
  71. package/docs/reference/visual/appearance.md +4 -4
  72. package/docs/reference/visual/blend-modes.md +6 -6
  73. package/docs/reference/visual/border-radius.md +8 -8
  74. package/docs/reference/visual/box-shadow.md +6 -6
  75. package/docs/reference/visual/caret-color.md +2 -2
  76. package/docs/reference/visual/cursor.md +6 -6
  77. package/docs/reference/visual/filter-blur.md +7 -7
  78. package/docs/reference/visual/font-family.md +8 -8
  79. package/docs/reference/visual/font-smoothing.md +4 -4
  80. package/docs/reference/visual/font-style.md +4 -4
  81. package/docs/reference/visual/font-variant-numeric.md +6 -4
  82. package/docs/reference/visual/font-weight.md +6 -6
  83. package/docs/reference/visual/hyphens.md +6 -6
  84. package/docs/reference/visual/letter-spacing.md +8 -8
  85. package/docs/reference/visual/line-clamp.md +9 -9
  86. package/docs/reference/visual/line-height.md +8 -8
  87. package/docs/reference/visual/list-style.md +7 -7
  88. package/docs/reference/visual/mask.md +6 -2
  89. package/docs/reference/visual/opacity.md +8 -8
  90. package/docs/reference/visual/pointer-events.md +4 -4
  91. package/docs/reference/visual/state-prefixes.md +5 -3
  92. package/docs/reference/visual/text-decoration.md +6 -4
  93. package/docs/reference/visual/text-indent.md +8 -4
  94. package/docs/reference/visual/text-overflow.md +6 -4
  95. package/docs/reference/visual/text-shadow.md +8 -2
  96. package/docs/reference/visual/text-size.md +84 -66
  97. package/docs/reference/visual/text-transform.md +6 -6
  98. package/docs/reference/visual/text-wrap.md +8 -8
  99. package/docs/reference/visual/transform-backface.md +29 -9
  100. package/docs/reference/visual/transform-origin.md +4 -4
  101. package/docs/reference/visual/transform-perspective-origin.md +41 -7
  102. package/docs/reference/visual/transform-perspective.md +41 -7
  103. package/docs/reference/visual/transform-rotate-3d.md +93 -0
  104. package/docs/reference/visual/transform-rotate.md +6 -6
  105. package/docs/reference/visual/transform-scale.md +7 -7
  106. package/docs/reference/visual/transform-skew.md +6 -6
  107. package/docs/reference/visual/transform-style.md +31 -11
  108. package/docs/reference/visual/transform-translate-z.md +90 -0
  109. package/docs/reference/visual/transform-translate.md +40 -14
  110. package/docs/reference/visual/transition-delay.md +4 -2
  111. package/docs/reference/visual/transition-duration.md +4 -4
  112. package/docs/reference/visual/transition-timing.md +6 -6
  113. package/docs/reference/visual/typography-keywords.md +8 -8
  114. package/docs/reference/visual/user-select.md +4 -4
  115. package/docs/reference/visual/vertical-align.md +10 -8
  116. package/docs/reference/visual/whitespace.md +8 -8
  117. package/docs/reference/visual/word-break.md +8 -8
  118. package/docs/syntax-reference.json +2009 -1972
  119. package/package.json +2 -2
  120. package/playground/index.html +37 -38
  121. package/playground/sample_code.txt +23 -0
  122. package/playground/tw-convertor.html +13 -13
  123. package/scripts/generate-docs.js +9 -7
  124. package/src/cdn/jit.js +51 -7
  125. package/src/compiler/generators/css.js +24 -2
  126. package/src/config/defaults.js +31 -7
  127. package/src/definitions/visual-transform3d.js +202 -36
  128. package/src/definitions/visual-transforms.js +42 -25
  129. package/src/definitions/visual-transitions.js +40 -26
  130. package/src/definitions/visual-typography.js +53 -44
  131. package/src/definitions/visual.js +73 -58
@@ -0,0 +1,93 @@
1
+ # Transform Rotate 3d
2
+
3
+ Rotate element in 3D space along X, Y, or Z axis
4
+
5
+ ## Syntax
6
+ ```
7
+ visual="rotate-x:[degrees]" or visual="rotate-y:[degrees]" or visual="rotate-z:[degrees]"
8
+ ```
9
+
10
+ ## Values
11
+
12
+ | Value | CSS Output | Description |
13
+ |-------|------------|-------------|
14
+ | `0` | `transform: rotateX(0deg)` | No rotation |
15
+ | `45` | `transform: rotateX(45deg)` | 45° rotation |
16
+ | `90` | `transform: rotateX(90deg)` | 90° rotation |
17
+ | `180` | `transform: rotateX(180deg)` | 180° rotation |
18
+
19
+ ## Examples
20
+
21
+ ```html
22
+ <div visual="perspective:normal"><div visual="rotate-x:45">Tilted forward</div></div>
23
+ <div visual="perspective:normal"><div visual="rotate-y:45">Turned sideways</div></div>
24
+ <div visual="rotate-z:45">Spun flat</div>
25
+ ```
26
+
27
+ ## Preview
28
+
29
+ <div space="p-x:big p-b:medium m-t:medium" visual="border-w:thin border:neutral-100 dark:border:neutral-800 rounded:medium">
30
+
31
+ ### 3D Rotation
32
+
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="rotate-y:45"</code> - Rotate elements along X, Y, or Z axis in 3D space</p>
35
+ <div layout="flex" space="g:big p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
36
+ <div layout="flex:col" space="g:tiny">
37
+ <span visual="text:neutral-500 text-size:tiny">rotate-x:45</span>
38
+ <div space="p:medium" visual="perspective:normal">
39
+ <div space="p:small" visual="bg:primary text:white rounded:small rotate-x:45">X</div>
40
+ </div>
41
+ </div>
42
+ <div layout="flex:col" space="g:tiny">
43
+ <span visual="text:neutral-500 text-size:tiny">rotate-y:45</span>
44
+ <div space="p:medium" visual="perspective:normal">
45
+ <div space="p:small" visual="bg:success text:white rounded:small rotate-y:45">Y</div>
46
+ </div>
47
+ </div>
48
+ <div layout="flex:col" space="g:tiny">
49
+ <span visual="text:neutral-500 text-size:tiny">rotate-z:45</span>
50
+ <div space="p:medium" visual="perspective:normal">
51
+ <div space="p:small" visual="bg:warning text:black rounded:small rotate-z:45">Z</div>
52
+ </div>
53
+ </div>
54
+ </div>
55
+ </div>
56
+
57
+ <details>
58
+ <summary>View Code</summary>
59
+
60
+ ```html
61
+ <div layout="flex" space="g:big p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
62
+ <div layout="flex:col" space="g:tiny">
63
+ <span visual="text:neutral-500 text-size:tiny">rotate-x:45</span>
64
+ <div space="p:medium" visual="perspective:normal">
65
+ <div space="p:small" visual="bg:primary text:white rounded:small rotate-x:45">X</div>
66
+ </div>
67
+ </div>
68
+ <div layout="flex:col" space="g:tiny">
69
+ <span visual="text:neutral-500 text-size:tiny">rotate-y:45</span>
70
+ <div space="p:medium" visual="perspective:normal">
71
+ <div space="p:small" visual="bg:success text:white rounded:small rotate-y:45">Y</div>
72
+ </div>
73
+ </div>
74
+ <div layout="flex:col" space="g:tiny">
75
+ <span visual="text:neutral-500 text-size:tiny">rotate-z:45</span>
76
+ <div space="p:medium" visual="perspective:normal">
77
+ <div space="p:small" visual="bg:warning text:black rounded:small rotate-z:45">Z</div>
78
+ </div>
79
+ </div>
80
+ </div>
81
+ ```
82
+
83
+ </details>
84
+
85
+ </div>
86
+
87
+ ## Arbitrary Values
88
+
89
+ Supports custom values using bracket syntax:
90
+
91
+ ```html
92
+ <div visual="transform:[custom-value]">Custom</div>
93
+ ```
@@ -31,9 +31,9 @@ visual="rotate:[degrees]"
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="rotate:45"</code> - Rotate elements by degrees</p>
33
33
  <div layout="flex" space="g:big 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="transform: rotate(0deg);">0°</div>
35
- <div space="p:small" visual="bg:primary text:white rounded:small" style="transform: rotate(45deg);">45°</div>
36
- <div space="p:small" visual="bg:primary text:white rounded:small" style="transform: rotate(90deg);">90°</div>
34
+ <div space="p:small" visual="bg:primary text:white rounded:small rotate:0">0°</div>
35
+ <div space="p:small" visual="bg:primary text:white rounded:small rotate:45">45°</div>
36
+ <div space="p:small" visual="bg:primary text:white rounded:small rotate:90">90°</div>
37
37
  </div>
38
38
  </div>
39
39
 
@@ -42,9 +42,9 @@ visual="rotate:[degrees]"
42
42
 
43
43
  ```html
44
44
  <div layout="flex" space="g:big p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
45
- <div space="p:small" visual="bg:primary text:white rounded:small" style="transform: rotate(0deg);">0°</div>
46
- <div space="p:small" visual="bg:primary text:white rounded:small" style="transform: rotate(45deg);">45°</div>
47
- <div space="p:small" visual="bg:primary text:white rounded:small" style="transform: rotate(90deg);">90°</div>
45
+ <div space="p:small" visual="bg:primary text:white rounded:small rotate:0">0°</div>
46
+ <div space="p:small" visual="bg:primary text:white rounded:small rotate:45">45°</div>
47
+ <div space="p:small" visual="bg:primary text:white rounded:small rotate:90">90°</div>
48
48
  </div>
49
49
  ```
50
50
 
@@ -32,11 +32,11 @@ visual="scale:[value]"
32
32
  ### Scale Transform
33
33
 
34
34
  <div layout="flex col" space="g:medium">
35
- <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="scale:110"</code> - Scale elements up or down</p>
35
+ <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="scale:75"</code> - Scale elements up or down</p>
36
36
  <div layout="flex" space="g:big p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
37
- <div space="p:small" visual="bg:primary text:white rounded:small" style="transform: scale(0.75);">75%</div>
38
- <div space="p:small" visual="bg:primary text:white rounded:small">100%</div>
39
- <div space="p:small" visual="bg:primary text:white rounded:small" style="transform: scale(1.25);">125%</div>
37
+ <div space="p:small" visual="bg:primary text:white rounded:small scale:75">75%</div>
38
+ <div space="p:small" visual="bg:primary text:white rounded:small scale:100">100%</div>
39
+ <div space="p:small" visual="bg:primary text:white rounded:small scale:125">125%</div>
40
40
  </div>
41
41
  </div>
42
42
 
@@ -45,9 +45,9 @@ visual="scale:[value]"
45
45
 
46
46
  ```html
47
47
  <div layout="flex" space="g:big p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
48
- <div space="p:small" visual="bg:primary text:white rounded:small" style="transform: scale(0.75);">75%</div>
49
- <div space="p:small" visual="bg:primary text:white rounded:small">100%</div>
50
- <div space="p:small" visual="bg:primary text:white rounded:small" style="transform: scale(1.25);">125%</div>
48
+ <div space="p:small" visual="bg:primary text:white rounded:small scale:75">75%</div>
49
+ <div space="p:small" visual="bg:primary text:white rounded:small scale:100">100%</div>
50
+ <div space="p:small" visual="bg:primary text:white rounded:small scale:125">125%</div>
51
51
  </div>
52
52
  ```
53
53
 
@@ -31,9 +31,9 @@ visual="skew-x:[degrees]" or visual="skew-y:[degrees]"
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="skew-x:6"</code> - Skew elements along axes</p>
33
33
  <div layout="flex" space="g:big 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="transform: skewX(0deg);">0°</div>
35
- <div space="p:small" visual="bg:primary text:white rounded:small" style="transform: skewX(6deg);">6°</div>
36
- <div space="p:small" visual="bg:primary text:white rounded:small" style="transform: skewX(12deg);">12°</div>
34
+ <div space="p:small" visual="bg:primary text:white rounded:small skew-x:0">0°</div>
35
+ <div space="p:small" visual="bg:primary text:white rounded:small skew-x:6">6°</div>
36
+ <div space="p:small" visual="bg:primary text:white rounded:small skew-x:12">12°</div>
37
37
  </div>
38
38
  </div>
39
39
 
@@ -42,9 +42,9 @@ visual="skew-x:[degrees]" or visual="skew-y:[degrees]"
42
42
 
43
43
  ```html
44
44
  <div layout="flex" space="g:big p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
45
- <div space="p:small" visual="bg:primary text:white rounded:small" style="transform: skewX(0deg);">0°</div>
46
- <div space="p:small" visual="bg:primary text:white rounded:small" style="transform: skewX(6deg);">6°</div>
47
- <div space="p:small" visual="bg:primary text:white rounded:small" style="transform: skewX(12deg);">12°</div>
45
+ <div space="p:small" visual="bg:primary text:white rounded:small skew-x:0">0°</div>
46
+ <div space="p:small" visual="bg:primary text:white rounded:small skew-x:6">6°</div>
47
+ <div space="p:small" visual="bg:primary text:white rounded:small skew-x:12">12°</div>
48
48
  </div>
49
49
  ```
50
50
 
@@ -1,6 +1,6 @@
1
1
  # Transform Style
2
2
 
3
- Set 3D transform style
3
+ Preserve 3D space for nested transformed elements
4
4
 
5
5
  ## Syntax
6
6
  ```
@@ -11,13 +11,13 @@ visual="transform-style:[value]"
11
11
 
12
12
  | Value | CSS Output | Description |
13
13
  |-------|------------|-------------|
14
- | `flat` | `transform-style: flat` | Flat rendering |
15
- | `preserve-3d` | `transform-style: preserve-3d` | Preserve 3D |
14
+ | `flat` | `transform-style: flat` | Flatten 3D children |
15
+ | `preserve-3d` | `transform-style: preserve-3d` | Preserve 3D depth |
16
16
 
17
17
  ## Examples
18
18
 
19
19
  ```html
20
- <div visual="transform-style:preserve-3d">3D space</div>
20
+ <div visual="transform-style:preserve-3d">Nested 3D transforms preserved</div>
21
21
  ```
22
22
 
23
23
  ## Preview
@@ -27,10 +27,20 @@ visual="transform-style:[value]"
27
27
  ### Transform Style
28
28
 
29
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="transform-style:preserve-3d"</code> - Flat or preserve 3D rendering</p>
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">flat</div>
33
- <div space="p:small" visual="bg:primary text:white rounded:small">preserve-3d</div>
30
+ <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="transform-style:preserve-3d"</code> - Flat or preserve 3D for nested transforms</p>
31
+ <div layout="flex" space="g:big p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
32
+ <div layout="flex:col" space="g:tiny">
33
+ <span visual="text:neutral-500 text-size:tiny">flat</span>
34
+ <div space="p:medium" visual="perspective:normal transform-style:flat rotate-x:20">
35
+ <div space="p:small" visual="bg:primary text:white rounded:small rotate-y:45">flat</div>
36
+ </div>
37
+ </div>
38
+ <div layout="flex:col" space="g:tiny">
39
+ <span visual="text:neutral-500 text-size:tiny">preserve-3d</span>
40
+ <div space="p:medium" visual="perspective:normal transform-style:preserve-3d rotate-x:20">
41
+ <div space="p:small" visual="bg:success text:white rounded:small rotate-y:45">3D</div>
42
+ </div>
43
+ </div>
34
44
  </div>
35
45
  </div>
36
46
 
@@ -38,9 +48,19 @@ visual="transform-style:[value]"
38
48
  <summary>View Code</summary>
39
49
 
40
50
  ```html
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">flat</div>
43
- <div space="p:small" visual="bg:primary text:white rounded:small">preserve-3d</div>
51
+ <div layout="flex" space="g:big p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
52
+ <div layout="flex:col" space="g:tiny">
53
+ <span visual="text:neutral-500 text-size:tiny">flat</span>
54
+ <div space="p:medium" visual="perspective:normal transform-style:flat rotate-x:20">
55
+ <div space="p:small" visual="bg:primary text:white rounded:small rotate-y:45">flat</div>
56
+ </div>
57
+ </div>
58
+ <div layout="flex:col" space="g:tiny">
59
+ <span visual="text:neutral-500 text-size:tiny">preserve-3d</span>
60
+ <div space="p:medium" visual="perspective:normal transform-style:preserve-3d rotate-x:20">
61
+ <div space="p:small" visual="bg:success text:white rounded:small rotate-y:45">3D</div>
62
+ </div>
63
+ </div>
44
64
  </div>
45
65
  ```
46
66
 
@@ -0,0 +1,90 @@
1
+ # Transform Translate Z
2
+
3
+ Translate element along Z axis (depth) in 3D space
4
+
5
+ ## Syntax
6
+ ```
7
+ visual="translate-z:[value]"
8
+ ```
9
+
10
+ ## Values
11
+
12
+ | Value | CSS Output | Description |
13
+ |-------|------------|-------------|
14
+ | `0` | `transform: translateZ(0)` | No Z translation |
15
+ | `near` | `transform: translateZ(50px)` | Move near (forward) |
16
+ | `far` | `transform: translateZ(-50px)` | Move far (backward) |
17
+
18
+ ## Examples
19
+
20
+ ```html
21
+ <div visual="perspective:normal"><div visual="translate-z:near">Closer</div></div>
22
+ ```
23
+
24
+ ## Preview
25
+
26
+ <div space="p-x:big p-b:medium m-t:medium" visual="border-w:thin border:neutral-100 dark:border:neutral-800 rounded:medium">
27
+
28
+ ### Translate Z (3D Depth)
29
+
30
+ <div layout="flex col" space="g:medium">
31
+ <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="translate-z:near"</code> - Move elements forward or backward in 3D space</p>
32
+ <div layout="flex" space="g:big p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
33
+ <div layout="flex:col" space="g:tiny">
34
+ <span visual="text:neutral-500 text-size:tiny">translate-z:far</span>
35
+ <div space="p:medium" visual="perspective:near">
36
+ <div space="p:small" visual="bg:primary text:white rounded:small translate-z:far">far</div>
37
+ </div>
38
+ </div>
39
+ <div layout="flex:col" space="g:tiny">
40
+ <span visual="text:neutral-500 text-size:tiny">translate-z:0</span>
41
+ <div space="p:medium" visual="perspective:near">
42
+ <div space="p:small" visual="bg:success text:white rounded:small translate-z:0">0</div>
43
+ </div>
44
+ </div>
45
+ <div layout="flex:col" space="g:tiny">
46
+ <span visual="text:neutral-500 text-size:tiny">translate-z:near</span>
47
+ <div space="p:medium" visual="perspective:near">
48
+ <div space="p:small" visual="bg:warning text:black rounded:small translate-z:near">near</div>
49
+ </div>
50
+ </div>
51
+ </div>
52
+ </div>
53
+
54
+ <details>
55
+ <summary>View Code</summary>
56
+
57
+ ```html
58
+ <div layout="flex" space="g:big p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
59
+ <div layout="flex:col" space="g:tiny">
60
+ <span visual="text:neutral-500 text-size:tiny">translate-z:far</span>
61
+ <div space="p:medium" visual="perspective:near">
62
+ <div space="p:small" visual="bg:primary text:white rounded:small translate-z:far">far</div>
63
+ </div>
64
+ </div>
65
+ <div layout="flex:col" space="g:tiny">
66
+ <span visual="text:neutral-500 text-size:tiny">translate-z:0</span>
67
+ <div space="p:medium" visual="perspective:near">
68
+ <div space="p:small" visual="bg:success text:white rounded:small translate-z:0">0</div>
69
+ </div>
70
+ </div>
71
+ <div layout="flex:col" space="g:tiny">
72
+ <span visual="text:neutral-500 text-size:tiny">translate-z:near</span>
73
+ <div space="p:medium" visual="perspective:near">
74
+ <div space="p:small" visual="bg:warning text:black rounded:small translate-z:near">near</div>
75
+ </div>
76
+ </div>
77
+ </div>
78
+ ```
79
+
80
+ </details>
81
+
82
+ </div>
83
+
84
+ ## Arbitrary Values
85
+
86
+ Supports custom values using bracket syntax:
87
+
88
+ ```html
89
+ <div visual="transform:[custom-value]">Custom</div>
90
+ ```
@@ -1,10 +1,10 @@
1
1
  # Transform Translate
2
2
 
3
- Translate element position
3
+ Translate element position along X, Y, or Z axis
4
4
 
5
5
  ## Syntax
6
6
  ```
7
- visual="translate-x:[value]" or visual="translate-y:[value]"
7
+ visual="translate-x:[value]" or visual="translate-y:[value]" or visual="translate-z:[value]"
8
8
  ```
9
9
 
10
10
  ## Values
@@ -12,13 +12,21 @@ visual="translate-x:[value]" or visual="translate-y:[value]"
12
12
  | Value | CSS Output | Description |
13
13
  |-------|------------|-------------|
14
14
  | `0` | `transform: translateX(0)` | No translation |
15
- | `full` | `transform: translateX(100%)` | Full width |
16
- | `1/2` | `transform: translateX(50%)` | Half width |
15
+ | `tiny` | `transform: translateX(var(--sp-tiny))` | Tiny offset |
16
+ | `small` | `transform: translateX(var(--sp-small))` | Small offset |
17
+ | `medium` | `transform: translateX(var(--sp-medium))` | Medium offset |
18
+ | `big` | `transform: translateX(var(--sp-big))` | Big offset |
19
+ | `full` | `transform: translateX(100%)` | Full width/height |
20
+ | `1/2` | `transform: translateX(50%)` | Half width/height |
21
+ | `-full` | `transform: translateX(-100%)` | Negative full |
22
+ | `-1/2` | `transform: translateX(-50%)` | Negative half |
17
23
 
18
24
  ## Examples
19
25
 
20
26
  ```html
21
- <div visual="translate-x:full">Moved right</div>
27
+ <div visual="translate-x:medium">Moved right</div>
28
+ <div visual="translate-y:small">Moved down</div>
29
+ <div visual="translate-z:[50px]">Moved forward in 3D</div>
22
30
  ```
23
31
 
24
32
  ## Preview
@@ -28,11 +36,20 @@ visual="translate-x:[value]" or visual="translate-y:[value]"
28
36
  ### Translate Transform
29
37
 
30
38
  <div layout="flex col" space="g:medium">
31
- <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="translate-x:full"</code> - Move elements position</p>
32
- <div layout="relative" space="p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium" style="height: 80px;">
33
- <div layout="absolute" space="p:small" visual="bg:primary text:white rounded:small" style="transform: translateX(0);">0</div>
34
- <div layout="absolute" space="p:small" visual="bg:primary text:white rounded:small" style="transform: translateX(60px);">60px</div>
35
- <div layout="absolute" space="p:small" visual="bg:primary text:white rounded:small" style="transform: translateX(120px);">120px</div>
39
+ <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="translate-x:medium"</code> - Move elements along X, Y, or Z axis</p>
40
+ <div layout="flex:col" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
41
+ <div layout="flex" space="g:small">
42
+ <span visual="text:neutral-500 text-size:small">X axis:</span>
43
+ <div space="p:small" visual="bg:primary text:white rounded:small translate-x:0">0</div>
44
+ <div space="p:small" visual="bg:primary text:white rounded:small translate-x:small">small</div>
45
+ <div space="p:small" visual="bg:primary text:white rounded:small translate-x:medium">medium</div>
46
+ </div>
47
+ <div layout="flex" space="g:small">
48
+ <span visual="text:neutral-500 text-size:small">Y axis:</span>
49
+ <div space="p:small" visual="bg:success text:white rounded:small translate-y:0">0</div>
50
+ <div space="p:small" visual="bg:success text:white rounded:small translate-y:small">small</div>
51
+ <div space="p:small" visual="bg:success text:white rounded:small translate-y:medium">medium</div>
52
+ </div>
36
53
  </div>
37
54
  </div>
38
55
 
@@ -40,10 +57,19 @@ visual="translate-x:[value]" or visual="translate-y:[value]"
40
57
  <summary>View Code</summary>
41
58
 
42
59
  ```html
43
- <div layout="relative" space="p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium" style="height: 80px;">
44
- <div layout="absolute" space="p:small" visual="bg:primary text:white rounded:small" style="transform: translateX(0);">0</div>
45
- <div layout="absolute" space="p:small" visual="bg:primary text:white rounded:small" style="transform: translateX(60px);">60px</div>
46
- <div layout="absolute" space="p:small" visual="bg:primary text:white rounded:small" style="transform: translateX(120px);">120px</div>
60
+ <div layout="flex:col" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
61
+ <div layout="flex" space="g:small">
62
+ <span visual="text:neutral-500 text-size:small">X axis:</span>
63
+ <div space="p:small" visual="bg:primary text:white rounded:small translate-x:0">0</div>
64
+ <div space="p:small" visual="bg:primary text:white rounded:small translate-x:small">small</div>
65
+ <div space="p:small" visual="bg:primary text:white rounded:small translate-x:medium">medium</div>
66
+ </div>
67
+ <div layout="flex" space="g:small">
68
+ <span visual="text:neutral-500 text-size:small">Y axis:</span>
69
+ <div space="p:small" visual="bg:success text:white rounded:small translate-y:0">0</div>
70
+ <div space="p:small" visual="bg:success text:white rounded:small translate-y:small">small</div>
71
+ <div space="p:small" visual="bg:success text:white rounded:small translate-y:medium">medium</div>
72
+ </div>
47
73
  </div>
48
74
  ```
49
75
 
@@ -32,7 +32,8 @@ visual="delay:[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="delay:slow"</code> - Delay before transition starts</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">delay:slow (300ms)</div>
35
+ <button space="p:small" visual="bg:primary text:white rounded:small transition:all delay:instant hover:scale:110">instant</button>
36
+ <button space="p:small" visual="bg:primary text:white rounded:small transition:all delay:slow hover:scale:110">slow</button>
36
37
  </div>
37
38
  </div>
38
39
 
@@ -41,7 +42,8 @@ visual="delay:[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
- <div space="p:small" visual="bg:primary text:white rounded:small">delay:slow (300ms)</div>
45
+ <button space="p:small" visual="bg:primary text:white rounded:small transition:all delay:instant hover:scale:110">instant</button>
46
+ <button space="p:small" visual="bg:primary text:white rounded:small transition:all delay:slow hover:scale:110">slow</button>
45
47
  </div>
46
48
  ```
47
49
 
@@ -34,8 +34,8 @@ visual="duration:[value]"
34
34
  <div layout="flex col" space="g:medium">
35
35
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="duration:slow"</code> - Control transition speed</p>
36
36
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
37
- <div space="p:small" visual="bg:primary text:white rounded:small">fast: 150ms</div>
38
- <div space="p:small" visual="bg:primary text:white rounded:small">slow: 300ms</div>
37
+ <button space="p:small" visual="bg:primary text:white rounded:small transition:all duration:fast hover:scale:110">fast</button>
38
+ <button space="p:small" visual="bg:primary text:white rounded:small transition:all duration:slow hover:scale:110">slow</button>
39
39
  </div>
40
40
  </div>
41
41
 
@@ -44,8 +44,8 @@ visual="duration:[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">fast: 150ms</div>
48
- <div space="p:small" visual="bg:primary text:white rounded:small">slow: 300ms</div>
47
+ <button space="p:small" visual="bg:primary text:white rounded:small transition:all duration:fast hover:scale:110">fast</button>
48
+ <button space="p:small" visual="bg:primary text:white rounded:small transition:all duration:slow hover:scale:110">slow</button>
49
49
  </div>
50
50
  ```
51
51
 
@@ -31,9 +31,9 @@ visual="ease:[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="ease:out"</code> - Control acceleration curve</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">ease:in</div>
35
- <div space="p:small" visual="bg:primary text:white rounded:small">ease:out</div>
36
- <div space="p:small" visual="bg:primary text:white rounded:small">ease:in-out</div>
34
+ <button space="p:small" visual="bg:primary text:white rounded:small transition:all ease:in hover:scale:110">ease:in</button>
35
+ <button space="p:small" visual="bg:primary text:white rounded:small transition:all ease:out hover:scale:110">ease:out</button>
36
+ <button space="p:small" visual="bg:primary text:white rounded:small transition:all ease:in-out hover:scale:110">ease:in-out</button>
37
37
  </div>
38
38
  </div>
39
39
 
@@ -42,9 +42,9 @@ visual="ease:[value]"
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
- <div space="p:small" visual="bg:primary text:white rounded:small">ease:in</div>
46
- <div space="p:small" visual="bg:primary text:white rounded:small">ease:out</div>
47
- <div space="p:small" visual="bg:primary text:white rounded:small">ease:in-out</div>
45
+ <button space="p:small" visual="bg:primary text:white rounded:small transition:all ease:in hover:scale:110">ease:in</button>
46
+ <button space="p:small" visual="bg:primary text:white rounded:small transition:all ease:out hover:scale:110">ease:out</button>
47
+ <button space="p:small" visual="bg:primary text:white rounded:small transition:all ease:in-out hover:scale:110">ease:in-out</button>
48
48
  </div>
49
49
  ```
50
50
 
@@ -80,10 +80,10 @@ visual="[keyword]"
80
80
  <div layout="flex col" space="g:medium">
81
81
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="italic"</code> - Quick typography utilities without value syntax</p>
82
82
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
83
- <span style="font-style: italic;">italic</span>
84
- <span style="text-transform: uppercase;">upper</span>
85
- <span style="text-decoration: underline;">underline</span>
86
- <span style="text-decoration: line-through;">strike</span>
83
+ <span visual="italic">italic</span>
84
+ <span visual="uppercase">upper</span>
85
+ <span visual="underline">underline</span>
86
+ <span visual="line-through">strike</span>
87
87
  </div>
88
88
  </div>
89
89
 
@@ -92,10 +92,10 @@ visual="[keyword]"
92
92
 
93
93
  ```html
94
94
  <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
95
- <span style="font-style: italic;">italic</span>
96
- <span style="text-transform: uppercase;">upper</span>
97
- <span style="text-decoration: underline;">underline</span>
98
- <span style="text-decoration: line-through;">strike</span>
95
+ <span visual="italic">italic</span>
96
+ <span visual="uppercase">upper</span>
97
+ <span visual="underline">underline</span>
98
+ <span visual="line-through">strike</span>
99
99
  </div>
100
100
  ```
101
101
 
@@ -31,8 +31,8 @@ visual="select:[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="select:none"</code> - Control whether text can be selected</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="user-select: none;">none (try select)</div>
35
- <div space="p:small" visual="bg:primary text:white rounded:small" style="user-select: all;">all (click to select)</div>
34
+ <div space="p:small" visual="bg:primary text:white rounded:small select:none">none (try select)</div>
35
+ <div space="p:small" visual="bg:success text:white rounded:small select:all">all (click to select)</div>
36
36
  </div>
37
37
  </div>
38
38
 
@@ -41,8 +41,8 @@ visual="select:[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" style="user-select: none;">none (try select)</div>
45
- <div space="p:small" visual="bg:primary text:white rounded:small" style="user-select: all;">all (click to select)</div>
44
+ <div space="p:small" visual="bg:primary text:white rounded:small select:none">none (try select)</div>
45
+ <div space="p:small" visual="bg:success text:white rounded:small select:all">all (click to select)</div>
46
46
  </div>
47
47
  ```
48
48
 
@@ -34,10 +34,11 @@ visual="align:[value]"
34
34
 
35
35
  <div layout="flex col" space="g:medium">
36
36
  <p space="m:none" visual="text:neutral-600 dark:text:neutral-400 text-sm"><code>visual="align:middle"</code> - Align inline elements</p>
37
- <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
38
- <div space="p:small" visual="bg:primary text:white rounded:small">top</div>
39
- <div space="p:small" visual="bg:primary text:white rounded:small">middle</div>
40
- <div space="p:small" visual="bg:primary text:white rounded:small">bottom</div>
37
+ <div space="p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
38
+ <span space="p:small" visual="bg:primary text:white rounded:small align:top">top</span>
39
+ <span space="p:small" visual="bg:success text:white rounded:small align:middle">middle</span>
40
+ <span space="p:small" visual="bg:warning text:black rounded:small align:bottom">bottom</span>
41
+ <span visual="text-size:huge text:neutral-500">Big</span>
41
42
  </div>
42
43
  </div>
43
44
 
@@ -45,10 +46,11 @@ visual="align:[value]"
45
46
  <summary>View Code</summary>
46
47
 
47
48
  ```html
48
- <div layout="flex" space="g:medium p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
49
- <div space="p:small" visual="bg:primary text:white rounded:small">top</div>
50
- <div space="p:small" visual="bg:primary text:white rounded:small">middle</div>
51
- <div space="p:small" visual="bg:primary text:white rounded:small">bottom</div>
49
+ <div space="p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
50
+ <span space="p:small" visual="bg:primary text:white rounded:small align:top">top</span>
51
+ <span space="p:small" visual="bg:success text:white rounded:small align:middle">middle</span>
52
+ <span space="p:small" visual="bg:warning text:black rounded:small align:bottom">bottom</span>
53
+ <span visual="text-size:huge text:neutral-500">Big</span>
52
54
  </div>
53
55
  ```
54
56
 
@@ -32,10 +32,10 @@ visual="whitespace:[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="whitespace:pre"</code> - Control whitespace handling</p>
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">normal</div>
37
- <div space="p:small" visual="bg:primary text:white rounded:small">nowrap</div>
38
- <div space="p:small" visual="bg:primary text:white rounded:small">pre</div>
35
+ <div layout="flex:col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
36
+ <div space="p:small" visual="bg:primary text:white rounded:small whitespace:normal">Normal spaces collapse</div>
37
+ <div space="p:small" visual="bg:success text:white rounded:small whitespace:nowrap">This text won't wrap to next line</div>
38
+ <div space="p:small" visual="bg:warning text:black rounded:small whitespace:pre">Preserved spaces here</div>
39
39
  </div>
40
40
  </div>
41
41
 
@@ -43,10 +43,10 @@ visual="whitespace:[value]"
43
43
  <summary>View Code</summary>
44
44
 
45
45
  ```html
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">normal</div>
48
- <div space="p:small" visual="bg:primary text:white rounded:small">nowrap</div>
49
- <div space="p:small" visual="bg:primary text:white rounded:small">pre</div>
46
+ <div layout="flex:col" space="g:small p:medium" visual="bg:neutral-100 dark:bg:neutral-900 rounded:medium">
47
+ <div space="p:small" visual="bg:primary text:white rounded:small whitespace:normal">Normal spaces collapse</div>
48
+ <div space="p:small" visual="bg:success text:white rounded:small whitespace:nowrap">This text won't wrap to next line</div>
49
+ <div space="p:small" visual="bg:warning text:black rounded:small whitespace:pre">Preserved spaces here</div>
50
50
  </div>
51
51
  ```
52
52