@xenosystem/elements-react 0.0.1 → 0.0.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 (49) hide show
  1. package/LICENSE +18 -18
  2. package/README.md +41 -41
  3. package/package.json +58 -58
  4. package/src/chrome-separated.css +132 -132
  5. package/src/chrome-unified.css +72 -72
  6. package/src/containers/Badges.css +116 -116
  7. package/src/containers/avatar.css +70 -70
  8. package/src/containers/card.css +75 -75
  9. package/src/containers/chip.css +103 -103
  10. package/src/containers/list-row.css +132 -132
  11. package/src/containers/message-bubble.css +112 -112
  12. package/src/containers/panel.css +120 -120
  13. package/src/containers/table.css +102 -102
  14. package/src/containers/tile.css +17 -17
  15. package/src/content/callout.css +77 -77
  16. package/src/content/caret.css +30 -30
  17. package/src/content/code-block.css +159 -159
  18. package/src/content/collapsible.css +80 -80
  19. package/src/content/inline-code.css +14 -14
  20. package/src/content/model-picker.css +219 -219
  21. package/src/content/source-card.css +99 -99
  22. package/src/content/sources-disclosure.css +118 -118
  23. package/src/controls.css +453 -453
  24. package/src/fonts.css +34 -34
  25. package/src/forms/Checkbox.css +114 -114
  26. package/src/forms/RadioGroup.css +115 -115
  27. package/src/goo.css +97 -97
  28. package/src/icon-motion.css +1909 -1909
  29. package/src/layout/ResizablePanel.css +79 -79
  30. package/src/nav/sidebar.css +296 -296
  31. package/src/overlays/date-time-picker.css +238 -238
  32. package/src/overlays/menu.css +195 -195
  33. package/src/overlays/modal.css +167 -167
  34. package/src/overlays/picker-field.css +81 -81
  35. package/src/overlays/pill-filter.css +129 -129
  36. package/src/overlays/reveal.css +56 -56
  37. package/src/overlays/segmented-control.css +185 -185
  38. package/src/overlays/tabs.css +143 -143
  39. package/src/overlays/tooltip.css +126 -126
  40. package/src/scrollbar.css +184 -184
  41. package/src/size.css +179 -179
  42. package/src/status/progress-bar.css +88 -88
  43. package/src/status/spinner.css +33 -33
  44. package/src/status/statusindicator.css +65 -65
  45. package/src/status/steptimeline.css +137 -137
  46. package/src/status/thinkingcube.css +75 -75
  47. package/src/xeno-element.css +60 -60
  48. package/src/xeno-elements.css +71 -71
  49. package/src/xeno-theme.css +99 -99
@@ -1,80 +1,80 @@
1
- /*
2
- * <Collapsible> — a "Thoughts"-style disclosure. Borderless summary (lightbulb glyph + label + chevron)
3
- * over a Callout-like body (2px `--xeno-border` left rule, 12px inset). CSS-first: `data-open` on the root
4
- * rotates the chevron and lifts the label ink. Tokens only; motion is transform/opacity behind the guard.
5
- */
6
- .xeno-collapsible {
7
- display: flex;
8
- flex-direction: column;
9
- }
10
-
11
- /* Summary — a borderless text button, left-aligned to its content. */
12
- .xeno-collapsible-summary {
13
- display: inline-flex;
14
- align-items: center;
15
- align-self: flex-start;
16
- gap: 6px;
17
- padding: 2px 4px 2px 0;
18
- background: transparent;
19
- border: none;
20
- border-radius: var(--xeno-radius-sm);
21
- color: var(--xeno-muted);
22
- font: inherit;
23
- font-size: 13px;
24
- text-align: left;
25
- cursor: pointer;
26
- transition: color var(--xeno-dur) var(--xeno-ease);
27
- }
28
- .xeno-collapsible-summary:hover {
29
- color: var(--xeno-text);
30
- }
31
- .xeno-collapsible-summary:focus-visible {
32
- outline: none;
33
- color: var(--xeno-text);
34
- box-shadow:
35
- 0 0 0 2px var(--xeno-canvas),
36
- 0 0 0 4px var(--xeno-border);
37
- }
38
- .xeno-collapsible[data-open] .xeno-collapsible-summary {
39
- color: var(--xeno-text);
40
- }
41
-
42
- .xeno-collapsible-icon {
43
- display: inline-flex;
44
- flex: none;
45
- color: var(--xeno-muted);
46
- }
47
-
48
- .xeno-collapsible-label {
49
- flex: none;
50
- }
51
-
52
- /* Chevron — points right when closed, down when open (root carries the seam). */
53
- .xeno-collapsible-chevron {
54
- display: inline-flex;
55
- flex: none;
56
- color: var(--xeno-muted);
57
- transform: rotate(-90deg);
58
- transition: transform var(--xeno-dur) var(--xeno-ease);
59
- }
60
- .xeno-collapsible[data-open] .xeno-collapsible-chevron {
61
- transform: rotate(0deg);
62
- }
63
-
64
- /* Body — set apart like a Callout; hidden until open. */
65
- .xeno-collapsible-body {
66
- margin-top: 6px;
67
- padding-left: 12px;
68
- border-left: 2px solid var(--xeno-border);
69
- color: var(--xeno-muted);
70
- }
71
- .xeno-collapsible-body[hidden] {
72
- display: none;
73
- }
74
-
75
- @media (prefers-reduced-motion: reduce) {
76
- .xeno-collapsible-summary,
77
- .xeno-collapsible-chevron {
78
- transition: none;
79
- }
80
- }
1
+ /*
2
+ * <Collapsible> — a "Thoughts"-style disclosure. Borderless summary (lightbulb glyph + label + chevron)
3
+ * over a Callout-like body (2px `--xeno-border` left rule, 12px inset). CSS-first: `data-open` on the root
4
+ * rotates the chevron and lifts the label ink. Tokens only; motion is transform/opacity behind the guard.
5
+ */
6
+ .xeno-collapsible {
7
+ display: flex;
8
+ flex-direction: column;
9
+ }
10
+
11
+ /* Summary — a borderless text button, left-aligned to its content. */
12
+ .xeno-collapsible-summary {
13
+ display: inline-flex;
14
+ align-items: center;
15
+ align-self: flex-start;
16
+ gap: 6px;
17
+ padding: 2px 4px 2px 0;
18
+ background: transparent;
19
+ border: none;
20
+ border-radius: var(--xeno-radius-sm);
21
+ color: var(--xeno-muted);
22
+ font: inherit;
23
+ font-size: 13px;
24
+ text-align: left;
25
+ cursor: pointer;
26
+ transition: color var(--xeno-dur) var(--xeno-ease);
27
+ }
28
+ .xeno-collapsible-summary:hover {
29
+ color: var(--xeno-text);
30
+ }
31
+ .xeno-collapsible-summary:focus-visible {
32
+ outline: none;
33
+ color: var(--xeno-text);
34
+ box-shadow:
35
+ 0 0 0 2px var(--xeno-canvas),
36
+ 0 0 0 4px var(--xeno-border);
37
+ }
38
+ .xeno-collapsible[data-open] .xeno-collapsible-summary {
39
+ color: var(--xeno-text);
40
+ }
41
+
42
+ .xeno-collapsible-icon {
43
+ display: inline-flex;
44
+ flex: none;
45
+ color: var(--xeno-muted);
46
+ }
47
+
48
+ .xeno-collapsible-label {
49
+ flex: none;
50
+ }
51
+
52
+ /* Chevron — points right when closed, down when open (root carries the seam). */
53
+ .xeno-collapsible-chevron {
54
+ display: inline-flex;
55
+ flex: none;
56
+ color: var(--xeno-muted);
57
+ transform: rotate(-90deg);
58
+ transition: transform var(--xeno-dur) var(--xeno-ease);
59
+ }
60
+ .xeno-collapsible[data-open] .xeno-collapsible-chevron {
61
+ transform: rotate(0deg);
62
+ }
63
+
64
+ /* Body — set apart like a Callout; hidden until open. */
65
+ .xeno-collapsible-body {
66
+ margin-top: 6px;
67
+ padding-left: 12px;
68
+ border-left: 2px solid var(--xeno-border);
69
+ color: var(--xeno-muted);
70
+ }
71
+ .xeno-collapsible-body[hidden] {
72
+ display: none;
73
+ }
74
+
75
+ @media (prefers-reduced-motion: reduce) {
76
+ .xeno-collapsible-summary,
77
+ .xeno-collapsible-chevron {
78
+ transition: none;
79
+ }
80
+ }
@@ -1,14 +1,14 @@
1
- /*
2
- * <InlineCode> — an inline monospace chip for prose. Monochrome shell: a `--xeno-surface` fill and
3
- * `--xeno-text` ink (never the legacy peach), `radius-sm` corners, tight padding. Tokens only, no hue.
4
- */
5
- .xeno-inline-code {
6
- font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
7
- font-size: 0.875em;
8
- padding: 2px 6px;
9
- background: var(--xeno-surface);
10
- border-radius: var(--xeno-radius-sm);
11
- color: var(--xeno-text);
12
- white-space: break-spaces;
13
- overflow-wrap: anywhere;
14
- }
1
+ /*
2
+ * <InlineCode> — an inline monospace chip for prose. Monochrome shell: a `--xeno-surface` fill and
3
+ * `--xeno-text` ink (never the legacy peach), `radius-sm` corners, tight padding. Tokens only, no hue.
4
+ */
5
+ .xeno-inline-code {
6
+ font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
7
+ font-size: 0.875em;
8
+ padding: 2px 6px;
9
+ background: var(--xeno-surface);
10
+ border-radius: var(--xeno-radius-sm);
11
+ color: var(--xeno-text);
12
+ white-space: break-spaces;
13
+ overflow-wrap: anywhere;
14
+ }
@@ -1,219 +1,219 @@
1
- /*
2
- * <ModelPicker> — a trigger + an absolute panel (tray rows / rail chips). Monochrome shell: hairline
3
- * borders + one soft (uncoloured) shadow for the panel depth. Only the theme custom properties from
4
- * xeno-theme.css are used; no literal colours, no hues. Motion is transform/opacity only, gated behind
5
- * prefers-reduced-motion.
6
- */
7
-
8
- .xeno-model-picker {
9
- position: relative;
10
- display: inline-flex;
11
- }
12
-
13
- /* ── Trigger ─────────────────────────────────────────────────────────────────────── */
14
- /* Extends .xeno-btn (controls.css) — here we just lay out glyph · label · chevron. */
15
- .xeno-mp-trigger {
16
- justify-content: flex-start;
17
- min-width: 180px;
18
- max-width: 320px;
19
- }
20
- .xeno-mp-label {
21
- flex: 1;
22
- min-width: 0;
23
- overflow: hidden;
24
- text-align: left;
25
- text-overflow: ellipsis;
26
- white-space: nowrap;
27
- }
28
- .xeno-mp-placeholder {
29
- color: var(--xeno-muted);
30
- font-weight: 400;
31
- }
32
- .xeno-mp-chevron {
33
- display: inline-flex;
34
- color: var(--xeno-muted);
35
- transition: transform var(--xeno-dur) var(--xeno-ease);
36
- }
37
- .xeno-model-picker[data-open='true'] .xeno-mp-chevron {
38
- transform: rotate(180deg);
39
- }
40
-
41
- /* ── Panel (shared) ──────────────────────────────────────────────────────────────── */
42
- .xeno-mp-panel {
43
- position: absolute;
44
- top: calc(100% + 6px);
45
- left: 0;
46
- z-index: 40;
47
- background: var(--xeno-elevated);
48
- border: 1px solid var(--xeno-border);
49
- border-radius: var(--xeno-radius-md);
50
- box-shadow: 0 8px 24px -6px rgba(0, 0, 0, 0.35);
51
- outline: none;
52
- animation: xeno-mp-in var(--xeno-dur) var(--xeno-ease);
53
- }
54
- .xeno-mp-panel:focus-visible {
55
- border-color: var(--xeno-muted);
56
- }
57
-
58
- @keyframes xeno-mp-in {
59
- from {
60
- opacity: 0;
61
- transform: translateY(-4px);
62
- }
63
- to {
64
- opacity: 1;
65
- transform: translateY(0);
66
- }
67
- }
68
-
69
- /* ── Tray layout ─────────────────────────────────────────────────────────────────── */
70
- .xeno-mp-panel--tray {
71
- min-width: max(100%, 220px);
72
- max-height: 320px;
73
- padding: 4px;
74
- overflow-y: auto;
75
- }
76
- .xeno-mp-group + .xeno-mp-group {
77
- margin-top: 4px;
78
- padding-top: 4px;
79
- border-top: 1px solid var(--xeno-border);
80
- }
81
- .xeno-mp-group-label {
82
- padding: 6px 8px 4px;
83
- color: var(--xeno-muted);
84
- font-size: 11px;
85
- font-weight: 600;
86
- letter-spacing: 0.06em;
87
- text-transform: uppercase;
88
- }
89
- .xeno-mp-option {
90
- display: flex;
91
- align-items: center;
92
- gap: 8px;
93
- padding: 7px 8px;
94
- border-radius: var(--xeno-radius-sm);
95
- color: var(--xeno-text);
96
- font-size: 14px;
97
- cursor: pointer;
98
- transition: background var(--xeno-dur) ease;
99
- }
100
- .xeno-mp-option[data-active='true'] {
101
- background: var(--xeno-hover);
102
- }
103
- .xeno-mp-option[data-selection='on'] {
104
- background: var(--xeno-control);
105
- }
106
- .xeno-mp-check {
107
- display: inline-flex;
108
- flex: none;
109
- width: 16px;
110
- color: var(--xeno-text);
111
- }
112
- .xeno-mp-option-name {
113
- flex: 1;
114
- min-width: 0;
115
- overflow: hidden;
116
- text-overflow: ellipsis;
117
- white-space: nowrap;
118
- }
119
-
120
- /* ── Rail layout ─────────────────────────────────────────────────────────────────── */
121
- .xeno-mp-panel--rail {
122
- min-width: max(100%, 240px);
123
- max-width: 420px;
124
- padding: 8px;
125
- }
126
- /* Viewport clips the scroller and carries the left/right fade edges. */
127
- .xeno-mp-rail-viewport {
128
- position: relative;
129
- }
130
- .xeno-mp-rail-viewport::before,
131
- .xeno-mp-rail-viewport::after {
132
- content: '';
133
- position: absolute;
134
- top: 0;
135
- bottom: 0;
136
- width: 20px;
137
- pointer-events: none;
138
- z-index: 1;
139
- }
140
- .xeno-mp-rail-viewport::before {
141
- left: 0;
142
- background: linear-gradient(to right, var(--xeno-elevated), transparent);
143
- }
144
- .xeno-mp-rail-viewport::after {
145
- right: 0;
146
- background: linear-gradient(to left, var(--xeno-elevated), transparent);
147
- }
148
- .xeno-mp-rail {
149
- display: flex;
150
- gap: 6px;
151
- overflow-x: auto;
152
- padding: 2px 4px;
153
- scrollbar-width: none;
154
- }
155
- .xeno-mp-rail::-webkit-scrollbar {
156
- display: none;
157
- }
158
- .xeno-mp-chip {
159
- display: inline-flex;
160
- flex-direction: column;
161
- align-items: flex-start;
162
- gap: 1px;
163
- flex: none;
164
- position: relative;
165
- padding: 6px 12px;
166
- border: 1px solid var(--xeno-border);
167
- border-radius: var(--xeno-radius-control);
168
- color: var(--xeno-text);
169
- cursor: pointer;
170
- white-space: nowrap;
171
- transition:
172
- background var(--xeno-dur) ease,
173
- border-color var(--xeno-dur) ease;
174
- }
175
- .xeno-mp-chip[data-active='true'] {
176
- background: var(--xeno-hover);
177
- border-color: var(--xeno-muted);
178
- }
179
- .xeno-mp-chip[data-selection='on'] {
180
- background: var(--xeno-control);
181
- border-color: var(--xeno-muted);
182
- padding-right: 26px;
183
- }
184
- .xeno-mp-chip-provider {
185
- color: var(--xeno-muted);
186
- font-size: 10px;
187
- font-weight: 600;
188
- letter-spacing: 0.04em;
189
- text-transform: uppercase;
190
- }
191
- .xeno-mp-chip-label {
192
- font-size: 13px;
193
- font-weight: 500;
194
- line-height: 1.2;
195
- }
196
- .xeno-mp-chip-check {
197
- display: inline-flex;
198
- position: absolute;
199
- top: 6px;
200
- right: 8px;
201
- color: var(--xeno-text);
202
- }
203
-
204
- /* ── Disabled ────────────────────────────────────────────────────────────────────── */
205
- .xeno-model-picker[data-availability='disabled'] {
206
- opacity: 0.4;
207
- pointer-events: none;
208
- }
209
-
210
- @media (prefers-reduced-motion: reduce) {
211
- .xeno-mp-chevron,
212
- .xeno-mp-option,
213
- .xeno-mp-chip {
214
- transition: none;
215
- }
216
- .xeno-mp-panel {
217
- animation: none;
218
- }
219
- }
1
+ /*
2
+ * <ModelPicker> — a trigger + an absolute panel (tray rows / rail chips). Monochrome shell: hairline
3
+ * borders + one soft (uncoloured) shadow for the panel depth. Only the theme custom properties from
4
+ * xeno-theme.css are used; no literal colours, no hues. Motion is transform/opacity only, gated behind
5
+ * prefers-reduced-motion.
6
+ */
7
+
8
+ .xeno-model-picker {
9
+ position: relative;
10
+ display: inline-flex;
11
+ }
12
+
13
+ /* ── Trigger ─────────────────────────────────────────────────────────────────────── */
14
+ /* Extends .xeno-btn (controls.css) — here we just lay out glyph · label · chevron. */
15
+ .xeno-mp-trigger {
16
+ justify-content: flex-start;
17
+ min-width: 180px;
18
+ max-width: 320px;
19
+ }
20
+ .xeno-mp-label {
21
+ flex: 1;
22
+ min-width: 0;
23
+ overflow: hidden;
24
+ text-align: left;
25
+ text-overflow: ellipsis;
26
+ white-space: nowrap;
27
+ }
28
+ .xeno-mp-placeholder {
29
+ color: var(--xeno-muted);
30
+ font-weight: 400;
31
+ }
32
+ .xeno-mp-chevron {
33
+ display: inline-flex;
34
+ color: var(--xeno-muted);
35
+ transition: transform var(--xeno-dur) var(--xeno-ease);
36
+ }
37
+ .xeno-model-picker[data-open='true'] .xeno-mp-chevron {
38
+ transform: rotate(180deg);
39
+ }
40
+
41
+ /* ── Panel (shared) ──────────────────────────────────────────────────────────────── */
42
+ .xeno-mp-panel {
43
+ position: absolute;
44
+ top: calc(100% + 6px);
45
+ left: 0;
46
+ z-index: 40;
47
+ background: var(--xeno-elevated);
48
+ border: 1px solid var(--xeno-border);
49
+ border-radius: var(--xeno-radius-md);
50
+ box-shadow: 0 8px 24px -6px rgba(0, 0, 0, 0.35);
51
+ outline: none;
52
+ animation: xeno-mp-in var(--xeno-dur) var(--xeno-ease);
53
+ }
54
+ .xeno-mp-panel:focus-visible {
55
+ border-color: var(--xeno-muted);
56
+ }
57
+
58
+ @keyframes xeno-mp-in {
59
+ from {
60
+ opacity: 0;
61
+ transform: translateY(-4px);
62
+ }
63
+ to {
64
+ opacity: 1;
65
+ transform: translateY(0);
66
+ }
67
+ }
68
+
69
+ /* ── Tray layout ─────────────────────────────────────────────────────────────────── */
70
+ .xeno-mp-panel--tray {
71
+ min-width: max(100%, 220px);
72
+ max-height: 320px;
73
+ padding: 4px;
74
+ overflow-y: auto;
75
+ }
76
+ .xeno-mp-group + .xeno-mp-group {
77
+ margin-top: 4px;
78
+ padding-top: 4px;
79
+ border-top: 1px solid var(--xeno-border);
80
+ }
81
+ .xeno-mp-group-label {
82
+ padding: 6px 8px 4px;
83
+ color: var(--xeno-muted);
84
+ font-size: 11px;
85
+ font-weight: 600;
86
+ letter-spacing: 0.06em;
87
+ text-transform: uppercase;
88
+ }
89
+ .xeno-mp-option {
90
+ display: flex;
91
+ align-items: center;
92
+ gap: 8px;
93
+ padding: 7px 8px;
94
+ border-radius: var(--xeno-radius-sm);
95
+ color: var(--xeno-text);
96
+ font-size: 14px;
97
+ cursor: pointer;
98
+ transition: background var(--xeno-dur) ease;
99
+ }
100
+ .xeno-mp-option[data-active='true'] {
101
+ background: var(--xeno-hover);
102
+ }
103
+ .xeno-mp-option[data-selection='on'] {
104
+ background: var(--xeno-control);
105
+ }
106
+ .xeno-mp-check {
107
+ display: inline-flex;
108
+ flex: none;
109
+ width: 16px;
110
+ color: var(--xeno-text);
111
+ }
112
+ .xeno-mp-option-name {
113
+ flex: 1;
114
+ min-width: 0;
115
+ overflow: hidden;
116
+ text-overflow: ellipsis;
117
+ white-space: nowrap;
118
+ }
119
+
120
+ /* ── Rail layout ─────────────────────────────────────────────────────────────────── */
121
+ .xeno-mp-panel--rail {
122
+ min-width: max(100%, 240px);
123
+ max-width: 420px;
124
+ padding: 8px;
125
+ }
126
+ /* Viewport clips the scroller and carries the left/right fade edges. */
127
+ .xeno-mp-rail-viewport {
128
+ position: relative;
129
+ }
130
+ .xeno-mp-rail-viewport::before,
131
+ .xeno-mp-rail-viewport::after {
132
+ content: '';
133
+ position: absolute;
134
+ top: 0;
135
+ bottom: 0;
136
+ width: 20px;
137
+ pointer-events: none;
138
+ z-index: 1;
139
+ }
140
+ .xeno-mp-rail-viewport::before {
141
+ left: 0;
142
+ background: linear-gradient(to right, var(--xeno-elevated), transparent);
143
+ }
144
+ .xeno-mp-rail-viewport::after {
145
+ right: 0;
146
+ background: linear-gradient(to left, var(--xeno-elevated), transparent);
147
+ }
148
+ .xeno-mp-rail {
149
+ display: flex;
150
+ gap: 6px;
151
+ overflow-x: auto;
152
+ padding: 2px 4px;
153
+ scrollbar-width: none;
154
+ }
155
+ .xeno-mp-rail::-webkit-scrollbar {
156
+ display: none;
157
+ }
158
+ .xeno-mp-chip {
159
+ display: inline-flex;
160
+ flex-direction: column;
161
+ align-items: flex-start;
162
+ gap: 1px;
163
+ flex: none;
164
+ position: relative;
165
+ padding: 6px 12px;
166
+ border: 1px solid var(--xeno-border);
167
+ border-radius: var(--xeno-radius-control);
168
+ color: var(--xeno-text);
169
+ cursor: pointer;
170
+ white-space: nowrap;
171
+ transition:
172
+ background var(--xeno-dur) ease,
173
+ border-color var(--xeno-dur) ease;
174
+ }
175
+ .xeno-mp-chip[data-active='true'] {
176
+ background: var(--xeno-hover);
177
+ border-color: var(--xeno-muted);
178
+ }
179
+ .xeno-mp-chip[data-selection='on'] {
180
+ background: var(--xeno-control);
181
+ border-color: var(--xeno-muted);
182
+ padding-right: 26px;
183
+ }
184
+ .xeno-mp-chip-provider {
185
+ color: var(--xeno-muted);
186
+ font-size: 10px;
187
+ font-weight: 600;
188
+ letter-spacing: 0.04em;
189
+ text-transform: uppercase;
190
+ }
191
+ .xeno-mp-chip-label {
192
+ font-size: 13px;
193
+ font-weight: 500;
194
+ line-height: 1.2;
195
+ }
196
+ .xeno-mp-chip-check {
197
+ display: inline-flex;
198
+ position: absolute;
199
+ top: 6px;
200
+ right: 8px;
201
+ color: var(--xeno-text);
202
+ }
203
+
204
+ /* ── Disabled ────────────────────────────────────────────────────────────────────── */
205
+ .xeno-model-picker[data-availability='disabled'] {
206
+ opacity: 0.4;
207
+ pointer-events: none;
208
+ }
209
+
210
+ @media (prefers-reduced-motion: reduce) {
211
+ .xeno-mp-chevron,
212
+ .xeno-mp-option,
213
+ .xeno-mp-chip {
214
+ transition: none;
215
+ }
216
+ .xeno-mp-panel {
217
+ animation: none;
218
+ }
219
+ }