vanilla-jui 1.5.35 → 1.5.36

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 (62) hide show
  1. package/dist/index.js +1 -1
  2. package/dist/index.umd.js +1 -1
  3. package/dist/style.css +1 -1
  4. package/package.json +7 -4
  5. package/src/css/accordion.css +3 -73
  6. package/src/css/animation.css +143 -0
  7. package/src/css/avatar.css +4 -13
  8. package/src/css/badge.css +4 -11
  9. package/src/css/breadcrumb.css +4 -11
  10. package/src/css/button.css +6 -64
  11. package/src/css/card.css +25 -23
  12. package/src/css/components.css +4 -3
  13. package/src/css/drop.css +0 -10
  14. package/src/css/editor.css +84 -67
  15. package/src/css/flow.css +2 -3
  16. package/src/css/form.css +45 -178
  17. package/src/css/index.css +2 -2
  18. package/src/css/layout.css +32 -0
  19. package/src/css/loading.css +230 -1
  20. package/src/css/menu.css +16 -5
  21. package/src/css/modal.css +0 -29
  22. package/src/css/offcanvas.css +0 -35
  23. package/src/css/pagination.css +0 -10
  24. package/src/css/popup.css +0 -3
  25. package/src/css/skeleton.css +14 -8
  26. package/src/css/status.css +6 -1
  27. package/src/css/swiper.css +7 -74
  28. package/src/css/table.css +4 -33
  29. package/src/css/tabs.css +0 -7
  30. package/src/css/theme-palette.css +6 -40
  31. package/src/css/themes/default/accordion.css +84 -7
  32. package/src/css/themes/default/avatar.css +15 -0
  33. package/src/css/themes/default/badge.css +24 -3
  34. package/src/css/themes/default/breadcrumb.css +18 -0
  35. package/src/css/themes/default/button.css +124 -26
  36. package/src/css/themes/default/drop.css +10 -8
  37. package/src/css/themes/default/editor.css +24 -8
  38. package/src/css/themes/default/form.css +170 -0
  39. package/src/css/themes/default/index.css +5 -2
  40. package/src/css/themes/default/loading.css +0 -1
  41. package/src/css/themes/default/menu.css +0 -3
  42. package/src/css/themes/default/modal.css +39 -17
  43. package/src/css/themes/default/offcanvas.css +40 -3
  44. package/src/css/themes/default/pagination.css +11 -4
  45. package/src/css/themes/default/popup.css +4 -3
  46. package/src/css/themes/default/swiper.css +83 -19
  47. package/src/css/themes/default/table.css +22 -14
  48. package/src/css/themes/default/tabs.css +16 -6
  49. package/src/css/themes/default/theme-palette.css +33 -8
  50. package/src/css/themes/default/tip.css +27 -17
  51. package/src/css/themes/default/toast.css +30 -18
  52. package/src/css/themes/default/toc.css +25 -0
  53. package/src/css/themes/default/toolbar.css +54 -9
  54. package/src/css/themes/default/tooltip.css +14 -7
  55. package/src/css/themes/default/tree.css +75 -0
  56. package/src/css/tip.css +2 -27
  57. package/src/css/toast.css +5 -21
  58. package/src/css/toc.css +0 -24
  59. package/src/css/tokens.css +52 -17
  60. package/src/css/toolbar.css +2 -48
  61. package/src/css/tooltip.css +2 -10
  62. package/src/css/tree.css +49 -0
@@ -0,0 +1,170 @@
1
+ @layer themes {
2
+ .j-form.is-lg {
3
+ --form-gap-vertical: var(--s3);
4
+ --form-gap-horizontal: var(--s3);
5
+ }
6
+
7
+ .j-input {
8
+ --input-font-size: var(--font-size-md);
9
+ --input-bg: inherit;
10
+ --input-fg: inherit;
11
+ }
12
+
13
+ .j-input:not([type='checkbox']) {
14
+ --input-padding: calc(var(--space) * 1.5) var(--s2);
15
+ --input-height: var(--el-height-md);
16
+ --input-line-height: var(--line-height);
17
+ }
18
+
19
+ .j-input.is-sm {
20
+ --input-height: var(--el-height-sm);
21
+ --input-line-height: var(--line-height-self);
22
+ --input-font-size: var(--font-size-sm);
23
+ }
24
+
25
+ .j-input.is-lg {
26
+ --input-height: var(--el-height-lg);
27
+ --input-line-height: var(--line-height);
28
+ --input-font-size: var(--font-size-lg);
29
+ }
30
+
31
+ .j-input[type='password'] {
32
+ letter-spacing: 2px;
33
+ }
34
+
35
+ .j-input[type='password'].is-sm {
36
+ letter-spacing: 1px;
37
+ }
38
+
39
+ .j-input[type='password'].is-lg {
40
+ letter-spacing: 3px;
41
+ }
42
+
43
+ .j-input[type='password']:placeholder-shown {
44
+ letter-spacing: 0.5px;
45
+ }
46
+
47
+ .j-input[type='date'],
48
+ .j-input[type='datetime'],
49
+ .j-input[type='datetime-local'],
50
+ .j-input[type='time'],
51
+ .j-input[type='week'],
52
+ .j-input[type='month'],
53
+ .j-input[type='file'],
54
+ .j-input[type='color'] {
55
+ /* --input-font-size: var(--font-size-sm); */
56
+ --input-fg: var(--ui-fg-muted);
57
+ }
58
+
59
+ .j-input[type='color'] {
60
+ --input-padding: var(--space);
61
+ min-width: 5rem;
62
+ }
63
+
64
+ .j-input[type='color']::-webkit-color-swatch {
65
+ border: 0;
66
+ }
67
+
68
+ select.j-select {
69
+ --input-padding: calc(var(--space) * 1.5);
70
+ --input-height: var(--el-height-md);
71
+ --input-font-size: var(--font-size-md);
72
+ }
73
+
74
+ select.j-select.is-sm {
75
+ --input-padding: var(--space);
76
+ --input-height: var(--el-height-sm);
77
+ --input-font-size: var(--font-size-sm);
78
+ }
79
+
80
+ select.j-select.is-lg {
81
+ --input-padding: var(--s2);
82
+ --input-height: var(--el-height-lg);
83
+ --input-font-size: var(--font-size-lg);
84
+ }
85
+
86
+ .input-group .el-addon .j-button {
87
+ --btn-border-color: var(--ui-border);
88
+ --btn-fg: var(--ui-fg-muted);
89
+ --btn-bg: var(--ui-bg-muted);
90
+ --btn-padding: 0 var(--s2);
91
+ --btn-box-shadow: none;
92
+ }
93
+
94
+ .input-group .el-addon .is-text {
95
+ font-size: var(--font-size-md);
96
+ line-height: var(--line-height);
97
+ color: var(--ui-fg-muted);
98
+ background-color: var(--ui-bg-muted);
99
+ padding: var(--s2);
100
+ height: var(--el-height-md);
101
+ border-color: var(--ui-border);
102
+ border-radius: var(--radius-md);
103
+ }
104
+
105
+ .input-group .el-addon .icon-close,
106
+ .input-inner-group .el-addon .icon-close {
107
+ width: var(--input-height);
108
+ }
109
+
110
+ .input-group > *:not(:first-child) {
111
+ margin-left: -1px;
112
+ }
113
+
114
+ .input-group > input.j-input:not(:first-child),
115
+ .input-group > select.j-select:not(:first-child),
116
+ .input-group
117
+ > :not(select.j-select)
118
+ + .el-addon:not(:first-child)
119
+ > .is-text {
120
+ border-left-color: transparent;
121
+ }
122
+
123
+ .input-group > input.j-input:not(:first-child),
124
+ .input-group > select.j-select:not(:first-child),
125
+ .input-group > *:not(:first-child) > *,
126
+ .input-group > *:not(:first-child) > .is-text {
127
+ border-top-left-radius: 0;
128
+ border-bottom-left-radius: 0;
129
+ }
130
+
131
+ .input-group > input.j-input:not(:last-child),
132
+ .input-group > select.j-select:not(:last-child),
133
+ .input-group > *:not(:last-child) > *,
134
+ .input-group > *:not(:last-child) > .is-text {
135
+ border-top-right-radius: 0;
136
+ border-bottom-right-radius: 0;
137
+ }
138
+
139
+ .input-inner-group .j-button {
140
+ --btn-box-shadow: none;
141
+ }
142
+
143
+ .input-inner-group input.j-input:not(:last-child) {
144
+ padding-right: var(--el-height-md);
145
+ }
146
+
147
+ .input-inner-group input.j-input:not(:first-child) {
148
+ padding-left: var(--el-height-md);
149
+ }
150
+
151
+ .input-inner-group .el-addon {
152
+ color: var(--ui-fg-muted);
153
+ }
154
+
155
+ .mobile .j-input[type='file']::file-selector-button {
156
+ padding: var(--s3);
157
+ margin: calc(var(--space) * -1.7);
158
+ -webkit-margin-end: calc(var(--space) * 2.75);
159
+ margin-inline-end: calc(var(--space) * 2.75);
160
+ }
161
+
162
+ .mobile.j-font-md .j-input.is-lg[type='file']::file-selector-button {
163
+ margin: calc(var(--space) * -1.4);
164
+ }
165
+
166
+ /* .mobile .j-input, */
167
+ .mobile .j-textarea {
168
+ width: 100%;
169
+ }
170
+ }
@@ -3,7 +3,7 @@
3
3
  @import url('./button.css');
4
4
  @import url('./avatar.css');
5
5
  @import url('./badge.css');
6
- @import url('./tag.css');
6
+ /* @import url('./tag.css'); */
7
7
  @import url('./tip.css');
8
8
  @import url('./tabs.css');
9
9
  @import url('./popup.css');
@@ -16,7 +16,10 @@
16
16
  @import url('./swiper.css');
17
17
  @import url('./breadcrumb.css');
18
18
  @import url('./loading.css');
19
- @import url('./theme-palette.css');
20
19
  @import url('./table.css');
21
20
  @import url('./pagination.css');
22
21
  @import url('./menu.css');
22
+ @import url('./toc.css');
23
+ @import url('./tree.css');
24
+ @import url('./theme-palette.css');
25
+ @import url('./form.css');
@@ -1,6 +1,5 @@
1
1
  @layer themes {
2
2
  .j-loader {
3
- --loader-position: absolute;
4
3
  --loader-size: var(--font-size-md);
5
4
  --loader-width: 1.5px;
6
5
  --loader-style: solid;
@@ -19,14 +19,11 @@
19
19
  --menu-item-error-tip-font-size: var(--font-size-sm);
20
20
  --menu-item-error-tip-padding: 0 var(--space);
21
21
 
22
- --menu-link-font-weight: var(--font-medium);
23
22
  --menu-link-gap: var(--space);
24
23
  --menu-link-current-fg: var(--tone-solid);
25
24
 
26
25
  --sub-menu-bg: var(--ui-surface-subtle);
27
26
  --sub-menu-border-width: 1px;
28
- --sub-menu-border-style: solid;
29
- --sub-menu-border-color: var(--ui-border);
30
27
  --sub-menu-border-radius: var(--radius-md);
31
28
  --sub-menu-min-width: 120px;
32
29
  --sub-menu-max-width: 240px;
@@ -1,25 +1,47 @@
1
1
  @layer themes {
2
2
  .j-modal {
3
- --modal-fg: var(--ui-fg);
4
- --modal-bg: var(--ui-bg);
5
- --modal-border-width: 1px;
6
- --modal-border-style: solid;
7
- --modal-border-color: var(--ui-border);
8
- --modal-border-radius: var(--radius-md);
9
- --modal-box-shadow: var(--shadow-md);
10
- --modal-min-width: 300px;
11
- --modal-max-width: 500px;
12
- --modal-max-height: 90vh;
13
- --modal-header-gap: var(--space);
14
3
  --modal-header-padding: var(--s3) var(--s4) 0;
15
- --modal-header-bottom-border: transparent;
16
- --modal-title-font-size: var(--font-size-md);
17
- --modal-title-font-weight: var(--font-medium);
18
4
  --modal-body-padding: var(--s4);
19
- --modal-body-line-height: var(--line-height-paragraph);
20
- --modal-footer-gap: var(--s2);
21
5
  --modal-footer-padding: 0 var(--s4) var(--s4);
22
- --modal-footer-top-border: 1px solid transparent;
6
+
7
+ color: var(--ui-fg);
8
+ background: var(--ui-bg);
9
+ border-width: 1px;
10
+ border-style: solid;
11
+ border-color: var(--ui-border);
12
+ border-radius: var(--radius-md);
13
+ box-shadow: var(--shadow-md);
14
+ min-width: 300px;
15
+ max-width: 500px;
16
+ max-height: 90vh;
17
+ }
18
+
19
+ .j-modal .modal-header {
20
+ gap: var(--space);
21
+ padding: var(--modal-header-padding);
22
+ border-bottom: transparent;
23
+ }
24
+
25
+ .j-modal .modal-header .modal-title {
26
+ margin: 0;
27
+ font-size: var(--font-size-md);
28
+ font-weight: var(--font-medium);
29
+ }
30
+
31
+ .j-modal .modal-body {
32
+ padding: var(--modal-body-padding);
33
+ min-height: 32px;
34
+ }
35
+
36
+ .j-modal .modal-body p {
37
+ margin: 0;
38
+ line-height: var(--line-height-paragraph);
39
+ }
40
+
41
+ .j-modal .modal-footer {
42
+ gap: var(--s2);
43
+ padding: var(--modal-footer-padding);
44
+ border-top: 1px solid transparent;
23
45
  }
24
46
 
25
47
  .j-modal.is-fullscreen .modal-header {
@@ -1,13 +1,50 @@
1
1
  @layer themes {
2
2
  .j-offcanvas-overlay {
3
- --offcanvas-overlay-bg: var(--ui-overlay-muted);
3
+ background: var(--ui-overlay-muted);
4
4
  }
5
5
 
6
6
  .j-offcanvas {
7
- --offcanvas-bg: var(--ui-bg);
8
- --offcanvas-box-shadow: var(--shadow-md);
9
7
  --offcanvas-border: 1px solid var(--ui-border-subtle);
10
8
  --offcanvas-block-width: 300px;
11
9
  --offcanvas-inline-height: 200px;
10
+
11
+ background: var(--ui-bg);
12
+ box-shadow: var(--shadow-md);
13
+ }
14
+
15
+ .j-offcanvas[data-direction='left'] {
16
+ top: 0;
17
+ left: 0;
18
+ width: var(--offcanvas-block-width);
19
+ height: 100vh;
20
+ border-right: var(--offcanvas-border);
21
+ }
22
+
23
+ .j-offcanvas[data-direction='right'] {
24
+ top: 0;
25
+ right: 0;
26
+ width: var(--offcanvas-block-width);
27
+ height: 100vh;
28
+ border-left: var(--offcanvas-border);
29
+ }
30
+
31
+ .j-offcanvas[data-direction='top'] {
32
+ top: 0;
33
+ left: 0;
34
+ width: 100%;
35
+ height: var(--offcanvas-inline-height);
36
+ border-bottom: var(--offcanvas-border);
37
+ }
38
+
39
+ .j-offcanvas[data-direction='bottom'] {
40
+ bottom: 0;
41
+ left: 0;
42
+ width: 100%;
43
+ height: var(--offcanvas-inline-height);
44
+ border-top: var(--offcanvas-border);
45
+ }
46
+
47
+ .j-font-md .j-offcanvas {
48
+ --offcanvas-block-width: 316px;
12
49
  }
13
50
  }
@@ -1,8 +1,15 @@
1
1
  @layer themes {
2
2
  .j-pagination {
3
- --pagination-font-size: var(--font-size-md);
4
- --pagination-link-fg: var(--ui-fg);
5
- --pagination-link-decoration: none;
6
- --pagination-gap: var(--space);
3
+ font-size: var(--font-size-md);
4
+ }
5
+
6
+ .j-pagination a {
7
+ -webkit-text-decoration: none;
8
+ text-decoration: none;
9
+ color: var(--ui-fg);
10
+ }
11
+
12
+ .j-pagination .pagination {
13
+ gap: var(--space);
7
14
  }
8
15
  }
@@ -1,7 +1,8 @@
1
1
  @layer themes {
2
2
  .j-popup-layout {
3
- --popup-layout-padding: var(--s4);
4
- --popup-bg: var(--ui-popup-bg);
5
- --popup-backdrop-filter: blur(4px);
3
+ background: var(--ui-popup-bg);
4
+ -webkit-backdrop-filter: blur(4px);
5
+ backdrop-filter: blur(4px);
6
+ padding: var(--s4);
6
7
  }
7
8
  }
@@ -2,27 +2,91 @@
2
2
  .j-swiper {
3
3
  --swiper-min-height: 120px;
4
4
  --swiper-title-inset: var(--s3);
5
- --swiper-title-padding: calc(var(--space) * 1.5) var(--s2);
6
- --swiper-title-color: #fff;
7
5
  --swiper-title-font-size: var(--font-size-lg);
8
- --swiper-title-font-weight: var(--font-bold);
9
- --swiper-title-bg: rgb(0 0 0 / 35%);
10
- --swiper-title-border-radius: var(--radius-sm);
11
- --swiper-title-line-height: var(--line-height-heading);
12
- --swiper-pagination-gap: 6px;
13
- --swiper-pagination-inline: var(--s3);
14
- --swiper-pagination-block: var(--s2);
15
- --swiper-indicator-size: 8px;
16
- --swiper-indicator-bg: rgb(255 255 255 / 62%);
17
- --swiper-indicator-hover-bg: rgb(255 255 255 / 86%);
18
- --swiper-indicator-active-width: 22px;
19
- --swiper-indicator-active-bg: #fff;
20
6
  --swiper-navigation-size: 36px;
21
- --swiper-navigation-fg: #fff;
22
- --swiper-navigation-bg: rgb(0 0 0 / 35%);
23
- --swiper-navigation-hover-bg: rgb(0 0 0 / 65%);
24
- --swiper-navigation-offset: var(--s2);
25
- --swiper-navigation-icon-size: 18px;
7
+ }
8
+
9
+ .j-swiper .swiper-slide::before {
10
+ color: var(--ui-fg-soft);
11
+ font-size: var(--font-size-md);
12
+ background-color: var(--tone-wash);
13
+ background-image: radial-gradient(
14
+ circle,
15
+ var(--ui-border) 1px,
16
+ transparent 1px
17
+ );
18
+ background-size: 20px 20px;
19
+ }
20
+
21
+ .j-swiper .swiper-slide-title {
22
+ right: var(--swiper-title-inset);
23
+ bottom: var(--swiper-title-inset);
24
+ left: var(--swiper-title-inset);
25
+ padding: calc(var(--space) * 1.5) var(--s2);
26
+ color: #fff;
27
+ font-size: var(--swiper-title-font-size);
28
+ font-weight: var(--font-bold);
29
+ background: rgb(0 0 0 / 35%);
30
+ border-radius: var(--radius-sm);
31
+ line-height: var(--line-height-heading);
32
+ }
33
+
34
+ .j-swiper .swiper-pagination {
35
+ gap: 6px;
36
+ }
37
+
38
+ .j-swiper .swiper-pagination.is-horizontal {
39
+ right: var(--s3);
40
+ bottom: var(--s2);
41
+ left: var(--s3);
42
+ }
43
+
44
+ .j-swiper .swiper-pagination-indicator {
45
+ width: 8px;
46
+ height: 8px;
47
+ padding: 0;
48
+ background: rgb(255 255 255 / 62%);
49
+ border: 0;
50
+ }
51
+
52
+ .j-swiper .swiper-pagination-indicator:hover,
53
+ .j-swiper .swiper-pagination-indicator:focus-visible {
54
+ background: rgb(255 255 255 / 86%);
55
+ }
56
+
57
+ .j-swiper .swiper-pagination-indicator.is-active,
58
+ .j-swiper .swiper-pagination-indicator.active {
59
+ width: 22px;
60
+ background: #fff;
61
+ }
62
+
63
+ .j-swiper .swiper-navigation {
64
+ width: var(--swiper-navigation-size);
65
+ height: var(--swiper-navigation-size);
66
+ padding: 0;
67
+ color: #fff;
68
+ background: rgb(0 0 0 / 35%);
69
+ border: 0;
70
+ transform: translateY(-50%);
71
+ }
72
+
73
+ .j-swiper .swiper-navigation:hover,
74
+ .j-swiper .swiper-navigation:focus-visible {
75
+ background: rgb(0 0 0 / 65%);
76
+ outline: none;
77
+ }
78
+
79
+ .j-swiper .swiper-navigation.is-prev {
80
+ left: var(--s2);
81
+ }
82
+
83
+ .j-swiper .swiper-navigation.is-next {
84
+ right: var(--s2);
85
+ }
86
+
87
+ .j-swiper .swiper-navigation svg {
88
+ width: 18px;
89
+ height: 18px;
26
90
  }
27
91
 
28
92
  @media (max-width: 640px) {
@@ -1,17 +1,25 @@
1
1
  @layer themes {
2
- table {
3
- /* --table-width: 100%; */
4
- --table-header-font-weight: 600;
5
- /* --table-border-width: 0 0 1px; */
6
- --table-border-width: 1px;
7
- --table-border-style: solid;
8
- --table-border-color: var(--ui-border-subtle);
9
- --table-cell-min-width: 100px;
10
- --table-cell-padding: 0.5rem 1rem;
11
- --table-cell-text-align: left;
12
- --table-cell-vertical-align: top;
13
- /* --table-link-fg: var(--tone-solid); */
14
- --table-striped-bg: var(--ui-bg-subtle);
15
- --table-hover-bg: var(--ui-bg-subtle);
2
+ table td,
3
+ table th {
4
+ border-width: 1px;
5
+ border-style: solid;
6
+ border-color: var(--ui-border-subtle);
7
+ padding: 0.5rem 1rem;
8
+ text-align: left;
9
+ vertical-align: top;
10
+ }
11
+
12
+ table thead th {
13
+ background: var(--ui-bg-subtle);
14
+ font-weight: 600;
15
+ white-space: nowrap;
16
+ }
17
+
18
+ table tbody td {
19
+ min-width: 100px;
20
+ }
21
+
22
+ table tbody tr:hover {
23
+ background: var(--ui-bg-subtle);
16
24
  }
17
25
  }
@@ -1,12 +1,6 @@
1
1
  @layer themes {
2
2
  .j-tabs {
3
- --tab-list-item-padding: var(--s2) var(--s3);
4
- --tab-list-item-margin: 0;
5
- --tab-list-font-weight: var(--font-medium);
6
3
  --tab-wrap-border: 1px solid var(--ui-border-subtle);
7
- --panel-list-padding: var(--s3);
8
- --panel-list-margin: 0;
9
- --panel-list-item-margin: 0;
10
4
  }
11
5
 
12
6
  .j-tabs[data-tabs-direction='top'] .tab-wrap {
@@ -25,6 +19,13 @@
25
19
  border-left: var(--tab-wrap-border);
26
20
  }
27
21
 
22
+ .j-tabs .tab-list .tab-item {
23
+ padding: var(--s2) var(--s3);
24
+ margin: 0;
25
+ color: var(--tab-fg);
26
+ font-weight: var(--font-medium);
27
+ }
28
+
28
29
  .j-tabs .tab-list .tab-item[aria-selected='true'] {
29
30
  --tab-fg: var(--tone-solid);
30
31
  }
@@ -32,4 +33,13 @@
32
33
  .j-tabs .tab-list .tab-item[aria-disabled='true'] {
33
34
  --tab-fg: var(--ui-border-strong);
34
35
  }
36
+
37
+ .j-tabs .panel-list {
38
+ padding: var(--s3);
39
+ margin: 0;
40
+ }
41
+
42
+ .j-tabs .panel-list .panel-item {
43
+ margin: 0;
44
+ }
35
45
  }
@@ -1,12 +1,37 @@
1
1
  @layer themes {
2
2
  .j-theme-palette {
3
- --palette-padding: 1rem 1rem 2rem;
4
- --palette-container-gap: var(--s4);
5
- --palette-item-gap: var(--s2);
6
- --palette-item-title-font-size: var(--font-size-md);
7
- --palette-item-title-font-weight: var(--font-bold);
8
- --palette-items-columns: repeat(3, 1fr);
9
- --palette-items-gap: var(--space);
10
- --palette-items-icon-size: var(--font-size-sm);
3
+ padding-inline: var(--s4);
4
+ padding-block: var(--s4) var(--s8);
5
+ }
6
+
7
+ .j-theme-palette .palette-container {
8
+ gap: var(--s4);
9
+ }
10
+
11
+ .j-theme-palette .palette-item {
12
+ gap: var(--s2);
13
+ }
14
+
15
+ .j-theme-palette .item-title {
16
+ font-size: var(--font-size-md);
17
+ font-weight: var(--font-bold);
18
+ }
19
+
20
+ .j-theme-palette .items {
21
+ gap: var(--space);
22
+ }
23
+
24
+ .j-theme-palette [data-theme-group='theme'] .j-button {
25
+ justify-content: flex-start;
26
+ padding-inline: var(--s2);
27
+ }
28
+
29
+ .j-theme-palette .j-button .item-hex {
30
+ width: var(--font-size-sm);
31
+ height: var(--font-size-sm);
32
+ }
33
+
34
+ .mobile .j-theme-palette {
35
+ padding-block: var(--s4) 4rem;
11
36
  }
12
37
  }
@@ -1,49 +1,59 @@
1
1
  @layer themes {
2
2
  .j-tip {
3
- --tip-gap: var(--s2);
4
- --tip-width: 100%;
5
- --tip-padding: var(--s3) var(--s4);
6
- --tip-border-width: 1px;
7
- --tip-border-style: solid;
8
3
  --tip-border-color: var(--ui-border);
9
- --tip-border-radius: var(--radius-md);
10
- --tip-font-size: var(--font-size-md);
11
4
  --tip-fg: var(--ui-fg);
12
5
  --tip-bg: var(--ui-bg);
13
- --tip-box-shadow: var(--shadow-sm);
14
- --tip-icon-fg: var(--tip-fg);
6
+
7
+ row-gap: var(--s2);
8
+ width: 100%;
9
+ border-width: 1px;
10
+ border-style: solid;
11
+ border-color: var(--tip-border-color);
12
+ border-radius: var(--radius-md);
13
+ padding: var(--s3) var(--s4);
14
+ font-size: var(--font-size-md);
15
+ color: var(--tip-fg);
16
+ background: var(--tip-bg);
17
+ box-shadow: var(--shadow-sm);
18
+ }
19
+
20
+ .j-tip .tip-icon {
21
+ color: var(--tip-fg);
22
+ transform: translateY(calc(var(--space, 0.25rem) * 0.5));
23
+ margin: 0;
15
24
  }
16
25
 
17
26
  .j-tip .tip-icon,
18
27
  .j-tip .tip-icon svg {
19
- --tip-icon-size: var(--font-size-xl);
28
+ width: var(--font-size-xl);
29
+ height: var(--font-size-xl);
20
30
  }
21
31
 
22
32
  .j-tip .tip-title {
23
- --tip-title-line-height: var(--line-height-paragraph);
24
- --tip-title-font-weight: var(--font-medium);
33
+ line-height: var(--line-height-paragraph);
34
+ font-weight: var(--font-medium);
25
35
  }
26
36
 
27
37
  .j-tip .tip-content {
28
- --tip-content-gap: var(--s2);
29
- --tip-content-line-height: var(--line-height-paragraph);
38
+ gap: var(--s2);
39
+ line-height: var(--line-height-paragraph);
30
40
  }
31
41
 
32
42
  .j-tip.is-success {
33
43
  --tip-border-color: var(--state-success);
34
44
  --tip-bg: var(--state-success-muted);
35
- --tip-icon-fg: var(--state-success);
45
+ --tip-fg: var(--state-success);
36
46
  }
37
47
 
38
48
  .j-tip.is-warning {
39
49
  --tip-border-color: var(--state-warning);
40
50
  --tip-bg: var(--state-warning-muted);
41
- --tip-icon-fg: var(--state-warning);
51
+ --tip-fg: var(--state-warning);
42
52
  }
43
53
 
44
54
  .j-tip.is-danger {
45
55
  --tip-border-color: var(--state-danger);
46
56
  --tip-bg: var(--state-danger-muted);
47
- --tip-icon-fg: var(--state-danger);
57
+ --tip-fg: var(--state-danger);
48
58
  }
49
59
  }