@skygraph/styles 0.2.4 → 0.6.6

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 (68) hide show
  1. package/README.md +98 -98
  2. package/components/autocomplete.css +35 -35
  3. package/components/autofield.css +67 -67
  4. package/components/avatar.css +37 -37
  5. package/components/badge.css +102 -102
  6. package/components/breadcrumb.css +29 -29
  7. package/components/button.css +181 -181
  8. package/components/calendar.css +408 -408
  9. package/components/carousel.css +102 -102
  10. package/components/cascader.css +380 -380
  11. package/components/charts.css +408 -408
  12. package/components/checkbox.css +114 -114
  13. package/components/collapse.css +166 -166
  14. package/components/colorpicker.css +252 -252
  15. package/components/context-menu.css +95 -95
  16. package/components/descriptions.css +82 -82
  17. package/components/diagram.css +435 -435
  18. package/components/drawer.css +124 -124
  19. package/components/dropdown.css +110 -110
  20. package/components/empty.css +25 -25
  21. package/components/event-timeline.css +134 -134
  22. package/components/field.css +35 -35
  23. package/components/form.css +115 -115
  24. package/components/gantt.css +166 -166
  25. package/components/input-number.css +76 -76
  26. package/components/input-password.css +104 -104
  27. package/components/input.css +211 -211
  28. package/components/list.css +366 -366
  29. package/components/mentions.css +54 -54
  30. package/components/menu.css +326 -326
  31. package/components/modal.css +1 -0
  32. package/components/notification.css +128 -128
  33. package/components/pagination.css +162 -162
  34. package/components/popconfirm.css +95 -95
  35. package/components/progress.css +116 -116
  36. package/components/radio.css +95 -95
  37. package/components/rate.css +48 -48
  38. package/components/resource-calendar.css +224 -224
  39. package/components/result.css +45 -45
  40. package/components/schema-form-editor.css +433 -433
  41. package/components/search-input.css +112 -112
  42. package/components/segmented.css +76 -76
  43. package/components/select.css +181 -181
  44. package/components/skeleton.css +72 -72
  45. package/components/slider.css +51 -51
  46. package/components/spin.css +102 -102
  47. package/components/steps.css +194 -194
  48. package/components/switch.css +75 -75
  49. package/components/table.css +9 -1
  50. package/components/tabs.css +137 -137
  51. package/components/tag.css +61 -61
  52. package/components/textarea.css +22 -22
  53. package/components/timeline.css +169 -169
  54. package/components/timepicker.css +224 -224
  55. package/components/tooltip.css +91 -91
  56. package/components/transfer.css +140 -140
  57. package/components/tree.css +601 -601
  58. package/components/treeselect.css +221 -221
  59. package/components/upload.css +124 -124
  60. package/index.css +70 -70
  61. package/index.d.ts +9 -9
  62. package/package.json +1 -1
  63. package/print.css +88 -88
  64. package/reset.css +17 -17
  65. package/themes/dark.css +17 -17
  66. package/themes/default.css +14 -14
  67. package/tokens.css +310 -310
  68. package/transitions.css +158 -158
@@ -1,104 +1,104 @@
1
- /* InputPassword */
2
- .sg-input-password-wrapper {
3
- position: relative;
4
- display: inline-flex;
5
- align-items: center;
6
- width: 100%;
7
- }
8
-
9
- /*
10
- * `.sg-input-password` навешивается на тот же элемент, что и `.sg-input`
11
- * (см. InputPassword.tsx). В `.sg-input` задан `padding` shorthand — чтобы
12
- * надёжно перебить его `padding-right` без `!important`, явно выписываем
13
- * longhand для обоих сторон: left как у базового input, right — с местом
14
- * под кнопку переключения.
15
- */
16
- .sg-input-password {
17
- padding-left: var(--sg-padding-md);
18
- padding-right: calc(var(--sg-padding-md) + 24px);
19
- }
20
-
21
- .sg-input-password-toggle {
22
- position: absolute;
23
- right: var(--sg-padding-sm);
24
- top: 0;
25
- bottom: 0;
26
- display: flex;
27
- align-items: center;
28
- padding: 0 2px;
29
- background: none;
30
- border: none;
31
- cursor: pointer;
32
- color: var(--sg-color-text-tertiary);
33
- font-size: var(--sg-font-size);
34
- line-height: 1;
35
- transition: color var(--sg-transition-duration) var(--sg-transition-timing);
36
- }
37
-
38
- .sg-input-password-toggle:hover {
39
- color: var(--sg-color-text);
40
- }
41
-
42
- /* Strength indicator */
43
- .sg-input-password-strength {
44
- display: flex;
45
- align-items: center;
46
- gap: var(--sg-padding-sm);
47
- margin-top: var(--sg-margin-xs);
48
- }
49
-
50
- .sg-input-password-strength-bar {
51
- flex: 1;
52
- height: 4px;
53
- background: var(--sg-color-border-secondary);
54
- border-radius: 2px;
55
- overflow: hidden;
56
- }
57
-
58
- .sg-input-password-strength-fill {
59
- display: block;
60
- height: 100%;
61
- border-radius: 2px;
62
- transition: width 0.3s ease, background 0.3s ease;
63
- }
64
-
65
- .sg-input-password-strength-weak {
66
- width: 25%;
67
- background: var(--sg-color-error);
68
- }
69
-
70
- .sg-input-password-strength-medium {
71
- width: 50%;
72
- background: var(--sg-color-warning);
73
- }
74
-
75
- .sg-input-password-strength-strong {
76
- width: 75%;
77
- background: var(--sg-color-primary);
78
- }
79
-
80
- .sg-input-password-strength-very-strong {
81
- width: 100%;
82
- background: var(--sg-color-success);
83
- }
84
-
85
- .sg-input-password-strength-label {
86
- font-size: var(--sg-font-size-sm);
87
- white-space: nowrap;
88
- }
89
-
90
- .sg-input-password-strength-label.sg-input-password-strength-weak {
91
- color: var(--sg-color-error);
92
- }
93
-
94
- .sg-input-password-strength-label.sg-input-password-strength-medium {
95
- color: var(--sg-color-warning);
96
- }
97
-
98
- .sg-input-password-strength-label.sg-input-password-strength-strong {
99
- color: var(--sg-color-primary);
100
- }
101
-
102
- .sg-input-password-strength-label.sg-input-password-strength-very-strong {
103
- color: var(--sg-color-success);
104
- }
1
+ /* InputPassword */
2
+ .sg-input-password-wrapper {
3
+ position: relative;
4
+ display: inline-flex;
5
+ align-items: center;
6
+ width: 100%;
7
+ }
8
+
9
+ /*
10
+ * `.sg-input-password` навешивается на тот же элемент, что и `.sg-input`
11
+ * (см. InputPassword.tsx). В `.sg-input` задан `padding` shorthand — чтобы
12
+ * надёжно перебить его `padding-right` без `!important`, явно выписываем
13
+ * longhand для обоих сторон: left как у базового input, right — с местом
14
+ * под кнопку переключения.
15
+ */
16
+ .sg-input-password {
17
+ padding-left: var(--sg-padding-md);
18
+ padding-right: calc(var(--sg-padding-md) + 24px);
19
+ }
20
+
21
+ .sg-input-password-toggle {
22
+ position: absolute;
23
+ right: var(--sg-padding-sm);
24
+ top: 0;
25
+ bottom: 0;
26
+ display: flex;
27
+ align-items: center;
28
+ padding: 0 2px;
29
+ background: none;
30
+ border: none;
31
+ cursor: pointer;
32
+ color: var(--sg-color-text-tertiary);
33
+ font-size: var(--sg-font-size);
34
+ line-height: 1;
35
+ transition: color var(--sg-transition-duration) var(--sg-transition-timing);
36
+ }
37
+
38
+ .sg-input-password-toggle:hover {
39
+ color: var(--sg-color-text);
40
+ }
41
+
42
+ /* Strength indicator */
43
+ .sg-input-password-strength {
44
+ display: flex;
45
+ align-items: center;
46
+ gap: var(--sg-padding-sm);
47
+ margin-top: var(--sg-margin-xs);
48
+ }
49
+
50
+ .sg-input-password-strength-bar {
51
+ flex: 1;
52
+ height: 4px;
53
+ background: var(--sg-color-border-secondary);
54
+ border-radius: 2px;
55
+ overflow: hidden;
56
+ }
57
+
58
+ .sg-input-password-strength-fill {
59
+ display: block;
60
+ height: 100%;
61
+ border-radius: 2px;
62
+ transition: width 0.3s ease, background 0.3s ease;
63
+ }
64
+
65
+ .sg-input-password-strength-weak {
66
+ width: 25%;
67
+ background: var(--sg-color-error);
68
+ }
69
+
70
+ .sg-input-password-strength-medium {
71
+ width: 50%;
72
+ background: var(--sg-color-warning);
73
+ }
74
+
75
+ .sg-input-password-strength-strong {
76
+ width: 75%;
77
+ background: var(--sg-color-primary);
78
+ }
79
+
80
+ .sg-input-password-strength-very-strong {
81
+ width: 100%;
82
+ background: var(--sg-color-success);
83
+ }
84
+
85
+ .sg-input-password-strength-label {
86
+ font-size: var(--sg-font-size-sm);
87
+ white-space: nowrap;
88
+ }
89
+
90
+ .sg-input-password-strength-label.sg-input-password-strength-weak {
91
+ color: var(--sg-color-error);
92
+ }
93
+
94
+ .sg-input-password-strength-label.sg-input-password-strength-medium {
95
+ color: var(--sg-color-warning);
96
+ }
97
+
98
+ .sg-input-password-strength-label.sg-input-password-strength-strong {
99
+ color: var(--sg-color-primary);
100
+ }
101
+
102
+ .sg-input-password-strength-label.sg-input-password-strength-very-strong {
103
+ color: var(--sg-color-success);
104
+ }
@@ -1,211 +1,211 @@
1
- .sg-input-wrapper {
2
- position: relative;
3
- display: inline-flex;
4
- align-items: center;
5
- width: 100%;
6
- }
7
-
8
- .sg-input {
9
- --sg-input-height: var(--sg-height-md);
10
- --sg-input-padding: var(--sg-padding-xs) var(--sg-padding-md);
11
- --sg-input-font-size: var(--sg-font-size);
12
- --sg-input-color: var(--sg-color-text);
13
- --sg-input-bg: var(--sg-color-bg-container);
14
- --sg-input-border: var(--sg-color-border);
15
- --sg-input-radius: var(--sg-border-radius);
16
- display: block;
17
- width: 100%;
18
- height: var(--sg-input-height);
19
- padding: var(--sg-input-padding);
20
- font-size: var(--sg-input-font-size);
21
- line-height: var(--sg-line-height);
22
- color: var(--sg-input-color);
23
- background: var(--sg-input-bg);
24
- border: 1px solid var(--sg-input-border);
25
- border-radius: var(--sg-input-radius);
26
- transition:
27
- color var(--sg-transition-duration) var(--sg-transition-timing),
28
- background var(--sg-transition-duration) var(--sg-transition-timing),
29
- border-color var(--sg-transition-duration) var(--sg-transition-timing),
30
- box-shadow var(--sg-transition-duration) var(--sg-transition-timing);
31
- font-family: inherit;
32
- }
33
-
34
- .sg-input::placeholder {
35
- color: var(--sg-color-text-placeholder);
36
- }
37
-
38
- .sg-input:hover {
39
- --sg-input-border: var(--sg-color-primary-hover);
40
- }
41
-
42
- .sg-input:focus {
43
- --sg-input-border: var(--sg-color-primary);
44
- outline: none;
45
- box-shadow: 0 0 0 2px var(--sg-color-primary-bg);
46
- }
47
-
48
- .sg-input:focus-visible {
49
- --sg-input-border: var(--sg-color-primary);
50
- outline: none;
51
- box-shadow: 0 0 0 2px var(--sg-color-primary-bg);
52
- }
53
-
54
- .sg-input-status-error,
55
- .sg-input-wrapper-status-error .sg-input {
56
- --sg-input-border: var(--sg-color-error);
57
- }
58
-
59
- .sg-input-status-error:focus,
60
- .sg-input-status-error:focus-visible,
61
- .sg-input-wrapper-status-error .sg-input:focus,
62
- .sg-input-wrapper-status-error .sg-input:focus-visible {
63
- --sg-input-border: var(--sg-color-error);
64
- box-shadow: 0 0 0 2px var(--sg-color-error-bg);
65
- }
66
-
67
- .sg-input-status-warning,
68
- .sg-input-wrapper-status-warning .sg-input {
69
- --sg-input-border: var(--sg-color-warning);
70
- }
71
-
72
- .sg-input-status-warning:focus,
73
- .sg-input-status-warning:focus-visible,
74
- .sg-input-wrapper-status-warning .sg-input:focus,
75
- .sg-input-wrapper-status-warning .sg-input:focus-visible {
76
- --sg-input-border: var(--sg-color-warning);
77
- box-shadow: 0 0 0 2px var(--sg-color-warning-bg);
78
- }
79
-
80
- .sg-input:disabled {
81
- --sg-input-bg: var(--sg-color-bg-disabled);
82
- --sg-input-color: var(--sg-color-text-disabled);
83
- cursor: not-allowed;
84
- }
85
-
86
- .sg-input-readonly,
87
- .sg-input[readonly] {
88
- --sg-input-bg: var(--sg-color-bg-secondary);
89
- --sg-input-color: var(--sg-color-text-secondary);
90
- cursor: default;
91
- }
92
-
93
- .sg-input-readonly:hover,
94
- .sg-input[readonly]:hover {
95
- --sg-input-border: var(--sg-color-border);
96
- }
97
-
98
- .sg-input-readonly:focus,
99
- .sg-input[readonly]:focus {
100
- --sg-input-border: var(--sg-color-border);
101
- box-shadow: none;
102
- }
103
-
104
- .sg-input-small {
105
- --sg-input-height: var(--sg-height-sm);
106
- --sg-input-font-size: var(--sg-font-size-sm);
107
- --sg-input-padding: var(--sg-padding-xs) var(--sg-padding-sm);
108
- }
109
-
110
- .sg-input-large {
111
- --sg-input-height: var(--sg-height-lg);
112
- --sg-input-font-size: var(--sg-font-size-lg);
113
- --sg-input-padding: var(--sg-padding-sm) var(--sg-padding-md);
114
- }
115
-
116
- .sg-textarea {
117
- height: auto;
118
- min-height: calc(var(--sg-height-md) * 2);
119
- resize: vertical;
120
- }
121
-
122
- /* Loading state — spin sits inside wrapper, right side */
123
- .sg-input-wrapper-loading {
124
- --sg-spin-color: var(--sg-color-text-tertiary);
125
- }
126
-
127
- .sg-input-wrapper-loading .sg-input {
128
- padding-right: calc(var(--sg-padding-md) + 20px);
129
- }
130
-
131
- .sg-input-wrapper .sg-spin {
132
- position: absolute;
133
- right: var(--sg-padding-sm);
134
- top: 0;
135
- bottom: 0;
136
- margin: auto 0;
137
- }
138
-
139
- /* ---- Prefix / Suffix ---- */
140
- .sg-input-prefix,
141
- .sg-input-suffix {
142
- display: inline-flex;
143
- align-items: center;
144
- justify-content: center;
145
- color: var(--sg-color-text-secondary);
146
- pointer-events: none;
147
- }
148
-
149
- .sg-input-prefix {
150
- position: absolute;
151
- left: var(--sg-padding-sm);
152
- top: 0;
153
- bottom: 0;
154
- }
155
-
156
- .sg-input-suffix {
157
- position: absolute;
158
- right: var(--sg-padding-sm);
159
- top: 0;
160
- bottom: 0;
161
- }
162
-
163
- .sg-input-wrapper:has(.sg-input-prefix) .sg-input {
164
- padding-left: calc(var(--sg-padding-md) + 16px);
165
- }
166
-
167
- .sg-input-wrapper:has(.sg-input-suffix) .sg-input {
168
- padding-right: calc(var(--sg-padding-md) + 16px);
169
- }
170
-
171
- /* ---- Clear button ---- */
172
- .sg-input-wrapper:has(.sg-input-clear) .sg-input {
173
- padding-right: calc(var(--sg-padding-md) + 18px);
174
- }
175
-
176
- .sg-input-clear {
177
- position: absolute;
178
- right: var(--sg-padding-xs);
179
- top: 50%;
180
- transform: translateY(-50%);
181
- display: inline-flex;
182
- align-items: center;
183
- justify-content: center;
184
- width: 18px;
185
- height: 18px;
186
- padding: 0;
187
- margin: 0;
188
- border: none;
189
- border-radius: 50%;
190
- background: var(--sg-color-fill-tertiary);
191
- color: var(--sg-color-text-secondary);
192
- font-size: 14px;
193
- line-height: 1;
194
- cursor: pointer;
195
- opacity: 0.7;
196
- transition:
197
- background var(--sg-transition-duration) var(--sg-transition-timing),
198
- color var(--sg-transition-duration) var(--sg-transition-timing),
199
- opacity var(--sg-transition-duration) var(--sg-transition-timing);
200
- }
201
-
202
- .sg-input-clear:hover {
203
- background: var(--sg-color-fill);
204
- color: var(--sg-color-text);
205
- opacity: 1;
206
- }
207
-
208
- .sg-input-clear:focus-visible {
209
- outline: 2px solid var(--sg-color-primary);
210
- outline-offset: 2px;
211
- }
1
+ .sg-input-wrapper {
2
+ position: relative;
3
+ display: inline-flex;
4
+ align-items: center;
5
+ width: 100%;
6
+ }
7
+
8
+ .sg-input {
9
+ --sg-input-height: var(--sg-height-md);
10
+ --sg-input-padding: var(--sg-padding-xs) var(--sg-padding-md);
11
+ --sg-input-font-size: var(--sg-font-size);
12
+ --sg-input-color: var(--sg-color-text);
13
+ --sg-input-bg: var(--sg-color-bg-container);
14
+ --sg-input-border: var(--sg-color-border);
15
+ --sg-input-radius: var(--sg-border-radius);
16
+ display: block;
17
+ width: 100%;
18
+ height: var(--sg-input-height);
19
+ padding: var(--sg-input-padding);
20
+ font-size: var(--sg-input-font-size);
21
+ line-height: var(--sg-line-height);
22
+ color: var(--sg-input-color);
23
+ background: var(--sg-input-bg);
24
+ border: 1px solid var(--sg-input-border);
25
+ border-radius: var(--sg-input-radius);
26
+ transition:
27
+ color var(--sg-transition-duration) var(--sg-transition-timing),
28
+ background var(--sg-transition-duration) var(--sg-transition-timing),
29
+ border-color var(--sg-transition-duration) var(--sg-transition-timing),
30
+ box-shadow var(--sg-transition-duration) var(--sg-transition-timing);
31
+ font-family: inherit;
32
+ }
33
+
34
+ .sg-input::placeholder {
35
+ color: var(--sg-color-text-placeholder);
36
+ }
37
+
38
+ .sg-input:hover {
39
+ --sg-input-border: var(--sg-color-primary-hover);
40
+ }
41
+
42
+ .sg-input:focus {
43
+ --sg-input-border: var(--sg-color-primary);
44
+ outline: none;
45
+ box-shadow: 0 0 0 2px var(--sg-color-primary-bg);
46
+ }
47
+
48
+ .sg-input:focus-visible {
49
+ --sg-input-border: var(--sg-color-primary);
50
+ outline: none;
51
+ box-shadow: 0 0 0 2px var(--sg-color-primary-bg);
52
+ }
53
+
54
+ .sg-input-status-error,
55
+ .sg-input-wrapper-status-error .sg-input {
56
+ --sg-input-border: var(--sg-color-error);
57
+ }
58
+
59
+ .sg-input-status-error:focus,
60
+ .sg-input-status-error:focus-visible,
61
+ .sg-input-wrapper-status-error .sg-input:focus,
62
+ .sg-input-wrapper-status-error .sg-input:focus-visible {
63
+ --sg-input-border: var(--sg-color-error);
64
+ box-shadow: 0 0 0 2px var(--sg-color-error-bg);
65
+ }
66
+
67
+ .sg-input-status-warning,
68
+ .sg-input-wrapper-status-warning .sg-input {
69
+ --sg-input-border: var(--sg-color-warning);
70
+ }
71
+
72
+ .sg-input-status-warning:focus,
73
+ .sg-input-status-warning:focus-visible,
74
+ .sg-input-wrapper-status-warning .sg-input:focus,
75
+ .sg-input-wrapper-status-warning .sg-input:focus-visible {
76
+ --sg-input-border: var(--sg-color-warning);
77
+ box-shadow: 0 0 0 2px var(--sg-color-warning-bg);
78
+ }
79
+
80
+ .sg-input:disabled {
81
+ --sg-input-bg: var(--sg-color-bg-disabled);
82
+ --sg-input-color: var(--sg-color-text-disabled);
83
+ cursor: not-allowed;
84
+ }
85
+
86
+ .sg-input-readonly,
87
+ .sg-input[readonly] {
88
+ --sg-input-bg: var(--sg-color-bg-secondary);
89
+ --sg-input-color: var(--sg-color-text-secondary);
90
+ cursor: default;
91
+ }
92
+
93
+ .sg-input-readonly:hover,
94
+ .sg-input[readonly]:hover {
95
+ --sg-input-border: var(--sg-color-border);
96
+ }
97
+
98
+ .sg-input-readonly:focus,
99
+ .sg-input[readonly]:focus {
100
+ --sg-input-border: var(--sg-color-border);
101
+ box-shadow: none;
102
+ }
103
+
104
+ .sg-input-small {
105
+ --sg-input-height: var(--sg-height-sm);
106
+ --sg-input-font-size: var(--sg-font-size-sm);
107
+ --sg-input-padding: var(--sg-padding-xs) var(--sg-padding-sm);
108
+ }
109
+
110
+ .sg-input-large {
111
+ --sg-input-height: var(--sg-height-lg);
112
+ --sg-input-font-size: var(--sg-font-size-lg);
113
+ --sg-input-padding: var(--sg-padding-sm) var(--sg-padding-md);
114
+ }
115
+
116
+ .sg-textarea {
117
+ height: auto;
118
+ min-height: calc(var(--sg-height-md) * 2);
119
+ resize: vertical;
120
+ }
121
+
122
+ /* Loading state — spin sits inside wrapper, right side */
123
+ .sg-input-wrapper-loading {
124
+ --sg-spin-color: var(--sg-color-text-tertiary);
125
+ }
126
+
127
+ .sg-input-wrapper-loading .sg-input {
128
+ padding-right: calc(var(--sg-padding-md) + 20px);
129
+ }
130
+
131
+ .sg-input-wrapper .sg-spin {
132
+ position: absolute;
133
+ right: var(--sg-padding-sm);
134
+ top: 0;
135
+ bottom: 0;
136
+ margin: auto 0;
137
+ }
138
+
139
+ /* ---- Prefix / Suffix ---- */
140
+ .sg-input-prefix,
141
+ .sg-input-suffix {
142
+ display: inline-flex;
143
+ align-items: center;
144
+ justify-content: center;
145
+ color: var(--sg-color-text-secondary);
146
+ pointer-events: none;
147
+ }
148
+
149
+ .sg-input-prefix {
150
+ position: absolute;
151
+ left: var(--sg-padding-sm);
152
+ top: 0;
153
+ bottom: 0;
154
+ }
155
+
156
+ .sg-input-suffix {
157
+ position: absolute;
158
+ right: var(--sg-padding-sm);
159
+ top: 0;
160
+ bottom: 0;
161
+ }
162
+
163
+ .sg-input-wrapper:has(.sg-input-prefix) .sg-input {
164
+ padding-left: calc(var(--sg-padding-md) + 16px);
165
+ }
166
+
167
+ .sg-input-wrapper:has(.sg-input-suffix) .sg-input {
168
+ padding-right: calc(var(--sg-padding-md) + 16px);
169
+ }
170
+
171
+ /* ---- Clear button ---- */
172
+ .sg-input-wrapper:has(.sg-input-clear) .sg-input {
173
+ padding-right: calc(var(--sg-padding-md) + 18px);
174
+ }
175
+
176
+ .sg-input-clear {
177
+ position: absolute;
178
+ right: var(--sg-padding-xs);
179
+ top: 50%;
180
+ transform: translateY(-50%);
181
+ display: inline-flex;
182
+ align-items: center;
183
+ justify-content: center;
184
+ width: 18px;
185
+ height: 18px;
186
+ padding: 0;
187
+ margin: 0;
188
+ border: none;
189
+ border-radius: 50%;
190
+ background: var(--sg-color-fill-tertiary);
191
+ color: var(--sg-color-text-secondary);
192
+ font-size: 14px;
193
+ line-height: 1;
194
+ cursor: pointer;
195
+ opacity: 0.7;
196
+ transition:
197
+ background var(--sg-transition-duration) var(--sg-transition-timing),
198
+ color var(--sg-transition-duration) var(--sg-transition-timing),
199
+ opacity var(--sg-transition-duration) var(--sg-transition-timing);
200
+ }
201
+
202
+ .sg-input-clear:hover {
203
+ background: var(--sg-color-fill);
204
+ color: var(--sg-color-text);
205
+ opacity: 1;
206
+ }
207
+
208
+ .sg-input-clear:focus-visible {
209
+ outline: 2px solid var(--sg-color-primary);
210
+ outline-offset: 2px;
211
+ }