@prokodo/ui 0.1.4 → 0.1.5

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 (119) hide show
  1. package/dist/components/accordion/Accordion.css +288 -0
  2. package/dist/components/accordion/Accordion.module.css +288 -0
  3. package/dist/components/accordion/Accordion.view.js +110 -114
  4. package/dist/components/animated/Animated.css +158 -0
  5. package/dist/components/animated/Animated.module.css +158 -0
  6. package/dist/components/avatar/Avatar.css +190 -0
  7. package/dist/components/avatar/Avatar.module.css +190 -0
  8. package/dist/components/button/Button.css +318 -0
  9. package/dist/components/button/Button.module.css +318 -0
  10. package/dist/components/card/Card.css +267 -0
  11. package/dist/components/card/Card.module.css +267 -0
  12. package/dist/components/card/{Card.base.module.scss.js → Card.module.scss.js} +7 -0
  13. package/dist/components/card/Card.view.js +1 -11
  14. package/dist/components/carousel/Carousel.css +236 -0
  15. package/dist/components/carousel/Carousel.module.css +236 -0
  16. package/dist/components/chip/Chip.css +265 -0
  17. package/dist/components/chip/Chip.module.css +265 -0
  18. package/dist/components/dialog/Dialog.css +314 -0
  19. package/dist/components/dialog/Dialog.module.css +314 -0
  20. package/dist/components/drawer/Drawer.css +240 -0
  21. package/dist/components/drawer/Drawer.module.css +240 -0
  22. package/dist/components/drawer/Drawer.view.js +1 -1
  23. package/dist/components/dynamic-list/DynamicList.css +199 -0
  24. package/dist/components/dynamic-list/DynamicList.module.css +199 -0
  25. package/dist/components/form/Form.css +154 -0
  26. package/dist/components/form/Form.module.css +154 -0
  27. package/dist/components/form/Form.module.scss.js +2 -1
  28. package/dist/components/form/FormField.client.js +1 -1
  29. package/dist/components/form/FormField.server.js +1 -1
  30. package/dist/components/form/FormResponse.css +168 -0
  31. package/dist/components/form/FormResponse.module.css +168 -0
  32. package/dist/components/grid/Grid.css +333 -0
  33. package/dist/components/grid/Grid.module.css +333 -0
  34. package/dist/components/grid/Grid.module.scss.js +65 -1
  35. package/dist/components/grid/GridRow.js +1 -1
  36. package/dist/components/headline/Headline.css +322 -0
  37. package/dist/components/headline/Headline.js +19 -26
  38. package/dist/components/headline/Headline.module.css +322 -0
  39. package/dist/components/headline/{Headline.base.module.scss.js → Headline.module.scss.js} +7 -0
  40. package/dist/components/icon/Icon.css +181 -0
  41. package/dist/components/icon/Icon.module.css +181 -0
  42. package/dist/components/image/Image.css +167 -0
  43. package/dist/components/image/Image.module.css +167 -0
  44. package/dist/components/image-text/ImageText.css +196 -0
  45. package/dist/components/image-text/ImageText.module.css +196 -0
  46. package/dist/components/input/Input.css +353 -0
  47. package/dist/components/input/Input.module.css +353 -0
  48. package/dist/components/inputOTP/InputOTP.css +155 -0
  49. package/dist/components/inputOTP/InputOTP.module.css +155 -0
  50. package/dist/components/label/Label.css +174 -0
  51. package/dist/components/label/Label.module.css +174 -0
  52. package/dist/components/link/Link.css +192 -0
  53. package/dist/components/link/Link.module.css +192 -0
  54. package/dist/components/list/List.css +365 -0
  55. package/dist/components/list/List.module.css +365 -0
  56. package/dist/components/lottie/Lottie.css +129 -0
  57. package/dist/components/lottie/Lottie.module.css +129 -0
  58. package/dist/components/post-item/PostItem.css +295 -0
  59. package/dist/components/post-item/PostItem.module.css +295 -0
  60. package/dist/components/post-item/PostItemAuthor.css +156 -0
  61. package/dist/components/post-item/PostItemAuthor.module.css +156 -0
  62. package/dist/components/post-teaser/PostTeaser.css +259 -0
  63. package/dist/components/post-teaser/PostTeaser.module.css +259 -0
  64. package/dist/components/post-widget/PostWidget.css +214 -0
  65. package/dist/components/post-widget/PostWidget.module.css +214 -0
  66. package/dist/components/post-widget-carousel/PostWidgetCarousel.css +181 -0
  67. package/dist/components/post-widget-carousel/PostWidgetCarousel.module.css +181 -0
  68. package/dist/components/progressBar/ProgressBar.css +205 -0
  69. package/dist/components/progressBar/ProgressBar.module.css +205 -0
  70. package/dist/components/quote/Quote.css +204 -0
  71. package/dist/components/quote/Quote.module.css +204 -0
  72. package/dist/components/rating/Rating.css +247 -0
  73. package/dist/components/rating/Rating.module.css +247 -0
  74. package/dist/components/rich-text/RichText.css +290 -0
  75. package/dist/components/rich-text/RichText.module.css +290 -0
  76. package/dist/components/select/Select.css +448 -0
  77. package/dist/components/select/Select.module.css +448 -0
  78. package/dist/components/sidenav/SideNav.css +292 -0
  79. package/dist/components/sidenav/SideNav.module.css +292 -0
  80. package/dist/components/skeleton/Skeleton.css +192 -0
  81. package/dist/components/skeleton/Skeleton.js +17 -21
  82. package/dist/components/skeleton/Skeleton.module.css +192 -0
  83. package/dist/components/slider/Slider.css +307 -0
  84. package/dist/components/slider/Slider.module.css +307 -0
  85. package/dist/components/snackbar/Snackbar.css +214 -0
  86. package/dist/components/snackbar/Snackbar.module.css +214 -0
  87. package/dist/components/stepper/Stepper.css +347 -0
  88. package/dist/components/stepper/Stepper.module.css +347 -0
  89. package/dist/components/switch/Switch.css +256 -0
  90. package/dist/components/switch/Switch.module.css +256 -0
  91. package/dist/components/table/Table.css +252 -0
  92. package/dist/components/table/Table.module.css +252 -0
  93. package/dist/components/table/Table.module.scss.js +4 -1
  94. package/dist/components/table/TableCell.js +1 -1
  95. package/dist/components/teaser/Teaser.css +203 -0
  96. package/dist/components/teaser/Teaser.module.css +203 -0
  97. package/dist/constants/project.js +1 -1
  98. package/dist/theme.css +5058 -0
  99. package/dist/tsconfig.build.tsbuildinfo +1 -1
  100. package/package.json +48 -5
  101. package/dist/components/accordion/Accordion.effects.client.js +0 -16
  102. package/dist/components/accordion/Accordion.effects.module.scss.js +0 -8
  103. package/dist/components/card/Card.effects.client.js +0 -20
  104. package/dist/components/card/Card.effects.module.scss.js +0 -14
  105. package/dist/components/form/FormField.module.scss.js +0 -6
  106. package/dist/components/grid/GridRow.module.scss.js +0 -69
  107. package/dist/components/headline/Headline.effects.client.js +0 -14
  108. package/dist/components/headline/Headline.effects.module.scss.js +0 -13
  109. package/dist/components/skeleton/Skeleton.effects.client.js +0 -18
  110. package/dist/components/skeleton/Skeleton.effects.module.scss.js +0 -7
  111. package/dist/components/table/TableCell.module.scss.js +0 -8
  112. package/dist/types/components/accordion/Accordion.effects.client.d.ts +0 -5
  113. package/dist/types/components/card/Card.effects.client.d.ts +0 -7
  114. package/dist/types/components/headline/Headline.effects.client.d.ts +0 -1
  115. package/dist/types/components/skeleton/Skeleton.effects.client.d.ts +0 -5
  116. package/dist/ui.css +0 -10776
  117. /package/dist/components/accordion/{Accordion.base.module.scss.js → Accordion.module.scss.js} +0 -0
  118. /package/dist/components/drawer/{Drawer.base.module.scss.js → Drawer.module.scss.js} +0 -0
  119. /package/dist/components/skeleton/{Skeleton.base.module.scss.js → Skeleton.module.scss.js} +0 -0
@@ -0,0 +1,288 @@
1
+ @charset "UTF-8";
2
+ /* stylelint-disable */
3
+ /**
4
+ * Calculates a rem-based value by a given pixel size.
5
+ */
6
+ /* stylelint-disable */
7
+ /**
8
+ * Applies flex-column and gap.
9
+ */
10
+ /*
11
+ As example (light, primary)
12
+ See defined modes in designsystem/config/gradients
13
+ */
14
+ /**
15
+ * Mixin that renders a media query that target screens that are larger than the
16
+ * given size.
17
+ */
18
+ /**
19
+ * Mixin that renders a media query that target screens that are smaller than the
20
+ * given size.
21
+ */
22
+ /**
23
+ * Mixin that renders a media query that target screens in between the given range.
24
+ */
25
+ /**
26
+ * Mixin that renders a media query that target screens that have height larger than the
27
+ * given size.
28
+ */
29
+ /**
30
+ * Mixin that renders a media query that target screens that have height smaller than the
31
+ * given size.
32
+ */
33
+ /* stylelint-disable */
34
+ /* M3/Elevation Light/1 */
35
+ /* M3/Elevation Light/2 */
36
+ /* M3/Elevation/5 */
37
+ /* M3/Elevation/1 Text */
38
+ /* Inner elevations */
39
+ /* stylelint-disable */
40
+ /**
41
+ * Visually hides an element but not removes them for screen readers.
42
+ */
43
+ /**
44
+ * The inverse of the `hidden` helper to reset a previously hidden element to be
45
+ * visible for users.
46
+ */
47
+ /**
48
+ * Creates a selector for :hover effects depending on the current user input
49
+ * device. If the input device is a mouse, this hover effect will appear.
50
+ * Keyboard and touch inputs are ignored.
51
+ *
52
+ * Example usage:
53
+ * .link {
54
+ * color: blue;
55
+ *
56
+ * @include when-hovered() {
57
+ * color: green;
58
+ * }
59
+ * }
60
+ */
61
+ /**
62
+ * Creates a selector for :active effects depending on the current user input
63
+ * device. The state applies when the input device is a mouse or keyboard. Touch
64
+ * devices will not show a pressed state.
65
+ *
66
+ * Example usage:
67
+ * .link {
68
+ * box-shadow: none;
69
+ *
70
+ * @include when-pressed() {
71
+ * box-shadow: inset 0 2px 4px grey;
72
+ * }
73
+ * }
74
+ */
75
+ /**
76
+ * Creates a selector for :focus effects depending on the current user input
77
+ * device. When the user navigates using a keyboard, the focus effect defined in
78
+ * here is applied. For other input devices they don't show up.
79
+ *
80
+ * Example usage:
81
+ * .link {
82
+ * text-decoration: none;
83
+ *
84
+ * @include when-focused() {
85
+ * text-decoration: underline;
86
+ * }
87
+ * }
88
+ */
89
+ /**
90
+ * Creates a selector for :focus-within effects depending on the current user
91
+ * input device. When the user navigates using a keyboard, the focus effect
92
+ * defined in here is applied. For other input devices they don't show up.
93
+ *
94
+ * Example usage:
95
+ * .link {
96
+ * img {
97
+ * opacity: 0.75;
98
+ *
99
+ * @include when-focused-within() {
100
+ * opacity: 1;
101
+ * }
102
+ * }
103
+ * }
104
+ */
105
+ /**
106
+ * Wrapper for media query "prefers-reduced-motion".
107
+ */
108
+ /**
109
+ * This helper hides the outline but still makes it visible for
110
+ * Windows high-contrast users. Use this instead of `outline: 0;`.
111
+ */
112
+ /**
113
+ * This helper hides the outline but still makes it visible for
114
+ * Windows high-contrast users. Use this instead of `outline: 0;`.
115
+ */
116
+ /**
117
+ * Renders an alternative, but application consistent focus-ring.
118
+ */
119
+ /**
120
+ * Specifies the outer layout for all contents across breakpoints. Apply this
121
+ * mixin to the container element, to center the contents on the screen within
122
+ * the layout offsets.
123
+ */
124
+ /**
125
+ * This mixin specifies basic text-styles for components that render a richtext
126
+ * content.
127
+ */
128
+ /* Keep this out of the critical/render-blocking bundle. */
129
+ @keyframes accordionBorderShift {
130
+ from {
131
+ background-position: 0 0, 0% 0;
132
+ }
133
+ to {
134
+ background-position: 0 0, 200% 0;
135
+ }
136
+ }
137
+ .prokodo-Accordion {
138
+ display: flex;
139
+ flex-direction: column;
140
+ }
141
+ .prokodo-Accordion__item {
142
+ border: 1px solid var(--color-grey-200);
143
+ border-radius: 0.75rem;
144
+ margin-bottom: 8px;
145
+ overflow: hidden;
146
+ transition: border 0.3s ease;
147
+ box-shadow: var(--elevation-3);
148
+ }
149
+ .prokodo-Accordion__item--is-expanded {
150
+ border-color: var(--color-primary-500);
151
+ }
152
+ .prokodo-Accordion__header {
153
+ display: flex;
154
+ align-items: center;
155
+ justify-content: space-between;
156
+ padding: 1rem;
157
+ cursor: pointer;
158
+ }
159
+ .prokodo-Accordion__header__toggle {
160
+ flex: 1 1;
161
+ display: flex;
162
+ align-items: center;
163
+ justify-content: space-between;
164
+ padding: 1rem;
165
+ cursor: pointer;
166
+ gap: 0.75rem;
167
+ }
168
+ .prokodo-Accordion__header__actions {
169
+ display: flex;
170
+ gap: 0.5rem;
171
+ }
172
+ .prokodo-Accordion__header__actions__wrapper {
173
+ display: flex;
174
+ }
175
+ .prokodo-Accordion__header__icons {
176
+ display: flex;
177
+ align-items: center;
178
+ padding-left: 1rem;
179
+ }
180
+ .prokodo-Accordion__header__wrapper {
181
+ display: flex;
182
+ align-items: center;
183
+ justify-content: space-between;
184
+ /* reserve space for a “border” without layout jump */
185
+ border: 2px solid transparent;
186
+ border-radius: 12px;
187
+ /* two-background trick: inner fill + border gradient */
188
+ background: linear-gradient(var(--header-bg, var(--color-white)), var(--header-bg, var(--color-white))) padding-box, linear-gradient(90deg, var(--color-primary-500), var(--color-secondary-500), var(--color-primary-500)) border-box;
189
+ /* hide the border layer initially */
190
+ background-size: 100% 100%, 0% 100%;
191
+ background-position: 0 0, 0 0;
192
+ background-repeat: no-repeat;
193
+ transition: color 0.3s ease, background-size 0.35s ease;
194
+ }
195
+ .prokodo-Accordion__header__wrapper:hover, .prokodo-Accordion__header__wrapper:focus-visible {
196
+ /* reveal the border layer */
197
+ background-size: 100% 100%, 200% 100%;
198
+ /* animation name is defined in the EFFECTS sheet */
199
+ animation: accordionBorderShift 2s linear;
200
+ outline: none;
201
+ }
202
+ .prokodo-Accordion__header__wrapper--is-expanded {
203
+ position: relative;
204
+ z-index: 2;
205
+ /* keep border visible and settled */
206
+ background-size: 100% 100%, 100% 100%;
207
+ background-position: 0 0, 100% 0;
208
+ border-radius: 12px 12px 0 0;
209
+ animation: none !important;
210
+ box-shadow: var(--elevation-1);
211
+ }
212
+ .prokodo-Accordion__title {
213
+ width: calc(100% - 20px);
214
+ margin: 0;
215
+ font-weight: 500 !important;
216
+ font-size: 1.125rem !important;
217
+ font-family: var(--font-secondary), -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
218
+ font-style: normal !important;
219
+ line-height: 1.55 !important;
220
+ letter-spacing: 0.03em !important;
221
+ text-transform: none !important;
222
+ text-align: left !important;
223
+ text-decoration: none !important;
224
+ }
225
+ @media screen and (min-width: 480px) {
226
+ .prokodo-Accordion__title {
227
+ font-size: 1.125rem !important;
228
+ line-height: 1.5 !important;
229
+ }
230
+ }
231
+ @media screen and (min-width: 960px) {
232
+ .prokodo-Accordion__title {
233
+ font-size: 1.125rem !important;
234
+ line-height: 1.5 !important;
235
+ }
236
+ }
237
+ .prokodo-Accordion__title {
238
+ font-weight: 500;
239
+ }
240
+ .prokodo-Accordion__icon {
241
+ padding-left: 1rem;
242
+ transition: transform 0.3s ease;
243
+ }
244
+ .prokodo-Accordion__icon--is-hidden {
245
+ display: none !important;
246
+ }
247
+ .prokodo-Accordion__content {
248
+ padding: 16px;
249
+ background-color: var(--color-white);
250
+ transition: max-height 0.3s ease, opacity 0.3s ease;
251
+ font-weight: 400;
252
+ font-size: 1.125rem;
253
+ font-family: var(--font-secondary), -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
254
+ font-style: normal;
255
+ line-height: 1.5;
256
+ letter-spacing: 0.03em;
257
+ text-transform: none;
258
+ text-align: left;
259
+ text-decoration: none;
260
+ }
261
+ @media screen and (min-width: 480px) {
262
+ .prokodo-Accordion__content {
263
+ font-size: 1rem;
264
+ line-height: 1.45;
265
+ }
266
+ }
267
+ @media screen and (min-width: 960px) {
268
+ .prokodo-Accordion__content {
269
+ font-size: 1rem;
270
+ line-height: 1.45;
271
+ }
272
+ }
273
+ .prokodo-Accordion__content[hidden] {
274
+ max-height: 0;
275
+ opacity: 0;
276
+ pointer-events: none;
277
+ }
278
+ .prokodo-Accordion__content--is-expanded {
279
+ opacity: 1;
280
+ pointer-events: auto;
281
+ }
282
+ .prokodo-Accordion__actions {
283
+ display: flex;
284
+ gap: 8px;
285
+ padding: 8px 16px;
286
+ background-color: var(--color-grey-100);
287
+ border-top: 1px solid var(--color-grey-200);
288
+ }
@@ -0,0 +1,288 @@
1
+ @charset "UTF-8";
2
+ /* stylelint-disable */
3
+ /**
4
+ * Calculates a rem-based value by a given pixel size.
5
+ */
6
+ /* stylelint-disable */
7
+ /**
8
+ * Applies flex-column and gap.
9
+ */
10
+ /*
11
+ As example (light, primary)
12
+ See defined modes in designsystem/config/gradients
13
+ */
14
+ /**
15
+ * Mixin that renders a media query that target screens that are larger than the
16
+ * given size.
17
+ */
18
+ /**
19
+ * Mixin that renders a media query that target screens that are smaller than the
20
+ * given size.
21
+ */
22
+ /**
23
+ * Mixin that renders a media query that target screens in between the given range.
24
+ */
25
+ /**
26
+ * Mixin that renders a media query that target screens that have height larger than the
27
+ * given size.
28
+ */
29
+ /**
30
+ * Mixin that renders a media query that target screens that have height smaller than the
31
+ * given size.
32
+ */
33
+ /* stylelint-disable */
34
+ /* M3/Elevation Light/1 */
35
+ /* M3/Elevation Light/2 */
36
+ /* M3/Elevation/5 */
37
+ /* M3/Elevation/1 Text */
38
+ /* Inner elevations */
39
+ /* stylelint-disable */
40
+ /**
41
+ * Visually hides an element but not removes them for screen readers.
42
+ */
43
+ /**
44
+ * The inverse of the `hidden` helper to reset a previously hidden element to be
45
+ * visible for users.
46
+ */
47
+ /**
48
+ * Creates a selector for :hover effects depending on the current user input
49
+ * device. If the input device is a mouse, this hover effect will appear.
50
+ * Keyboard and touch inputs are ignored.
51
+ *
52
+ * Example usage:
53
+ * .link {
54
+ * color: blue;
55
+ *
56
+ * @include when-hovered() {
57
+ * color: green;
58
+ * }
59
+ * }
60
+ */
61
+ /**
62
+ * Creates a selector for :active effects depending on the current user input
63
+ * device. The state applies when the input device is a mouse or keyboard. Touch
64
+ * devices will not show a pressed state.
65
+ *
66
+ * Example usage:
67
+ * .link {
68
+ * box-shadow: none;
69
+ *
70
+ * @include when-pressed() {
71
+ * box-shadow: inset 0 2px 4px grey;
72
+ * }
73
+ * }
74
+ */
75
+ /**
76
+ * Creates a selector for :focus effects depending on the current user input
77
+ * device. When the user navigates using a keyboard, the focus effect defined in
78
+ * here is applied. For other input devices they don't show up.
79
+ *
80
+ * Example usage:
81
+ * .link {
82
+ * text-decoration: none;
83
+ *
84
+ * @include when-focused() {
85
+ * text-decoration: underline;
86
+ * }
87
+ * }
88
+ */
89
+ /**
90
+ * Creates a selector for :focus-within effects depending on the current user
91
+ * input device. When the user navigates using a keyboard, the focus effect
92
+ * defined in here is applied. For other input devices they don't show up.
93
+ *
94
+ * Example usage:
95
+ * .link {
96
+ * img {
97
+ * opacity: 0.75;
98
+ *
99
+ * @include when-focused-within() {
100
+ * opacity: 1;
101
+ * }
102
+ * }
103
+ * }
104
+ */
105
+ /**
106
+ * Wrapper for media query "prefers-reduced-motion".
107
+ */
108
+ /**
109
+ * This helper hides the outline but still makes it visible for
110
+ * Windows high-contrast users. Use this instead of `outline: 0;`.
111
+ */
112
+ /**
113
+ * This helper hides the outline but still makes it visible for
114
+ * Windows high-contrast users. Use this instead of `outline: 0;`.
115
+ */
116
+ /**
117
+ * Renders an alternative, but application consistent focus-ring.
118
+ */
119
+ /**
120
+ * Specifies the outer layout for all contents across breakpoints. Apply this
121
+ * mixin to the container element, to center the contents on the screen within
122
+ * the layout offsets.
123
+ */
124
+ /**
125
+ * This mixin specifies basic text-styles for components that render a richtext
126
+ * content.
127
+ */
128
+ /* Keep this out of the critical/render-blocking bundle. */
129
+ @keyframes accordionBorderShift {
130
+ from {
131
+ background-position: 0 0, 0% 0;
132
+ }
133
+ to {
134
+ background-position: 0 0, 200% 0;
135
+ }
136
+ }
137
+ .prokodo-Accordion {
138
+ display: flex;
139
+ flex-direction: column;
140
+ }
141
+ .prokodo-Accordion__item {
142
+ border: 1px solid var(--color-grey-200);
143
+ border-radius: 0.75rem;
144
+ margin-bottom: 8px;
145
+ overflow: hidden;
146
+ transition: border 0.3s ease;
147
+ box-shadow: var(--elevation-3);
148
+ }
149
+ .prokodo-Accordion__item--is-expanded {
150
+ border-color: var(--color-primary-500);
151
+ }
152
+ .prokodo-Accordion__header {
153
+ display: flex;
154
+ align-items: center;
155
+ justify-content: space-between;
156
+ padding: 1rem;
157
+ cursor: pointer;
158
+ }
159
+ .prokodo-Accordion__header__toggle {
160
+ flex: 1 1;
161
+ display: flex;
162
+ align-items: center;
163
+ justify-content: space-between;
164
+ padding: 1rem;
165
+ cursor: pointer;
166
+ gap: 0.75rem;
167
+ }
168
+ .prokodo-Accordion__header__actions {
169
+ display: flex;
170
+ gap: 0.5rem;
171
+ }
172
+ .prokodo-Accordion__header__actions__wrapper {
173
+ display: flex;
174
+ }
175
+ .prokodo-Accordion__header__icons {
176
+ display: flex;
177
+ align-items: center;
178
+ padding-left: 1rem;
179
+ }
180
+ .prokodo-Accordion__header__wrapper {
181
+ display: flex;
182
+ align-items: center;
183
+ justify-content: space-between;
184
+ /* reserve space for a “border” without layout jump */
185
+ border: 2px solid transparent;
186
+ border-radius: 12px;
187
+ /* two-background trick: inner fill + border gradient */
188
+ background: linear-gradient(var(--header-bg, var(--color-white)), var(--header-bg, var(--color-white))) padding-box, linear-gradient(90deg, var(--color-primary-500), var(--color-secondary-500), var(--color-primary-500)) border-box;
189
+ /* hide the border layer initially */
190
+ background-size: 100% 100%, 0% 100%;
191
+ background-position: 0 0, 0 0;
192
+ background-repeat: no-repeat;
193
+ transition: color 0.3s ease, background-size 0.35s ease;
194
+ }
195
+ .prokodo-Accordion__header__wrapper:hover, .prokodo-Accordion__header__wrapper:focus-visible {
196
+ /* reveal the border layer */
197
+ background-size: 100% 100%, 200% 100%;
198
+ /* animation name is defined in the EFFECTS sheet */
199
+ animation: accordionBorderShift 2s linear;
200
+ outline: none;
201
+ }
202
+ .prokodo-Accordion__header__wrapper--is-expanded {
203
+ position: relative;
204
+ z-index: 2;
205
+ /* keep border visible and settled */
206
+ background-size: 100% 100%, 100% 100%;
207
+ background-position: 0 0, 100% 0;
208
+ border-radius: 12px 12px 0 0;
209
+ animation: none !important;
210
+ box-shadow: var(--elevation-1);
211
+ }
212
+ .prokodo-Accordion__title {
213
+ width: calc(100% - 20px);
214
+ margin: 0;
215
+ font-weight: 500 !important;
216
+ font-size: 1.125rem !important;
217
+ font-family: var(--font-secondary), -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
218
+ font-style: normal !important;
219
+ line-height: 1.55 !important;
220
+ letter-spacing: 0.03em !important;
221
+ text-transform: none !important;
222
+ text-align: left !important;
223
+ text-decoration: none !important;
224
+ }
225
+ @media screen and (min-width: 480px) {
226
+ .prokodo-Accordion__title {
227
+ font-size: 1.125rem !important;
228
+ line-height: 1.5 !important;
229
+ }
230
+ }
231
+ @media screen and (min-width: 960px) {
232
+ .prokodo-Accordion__title {
233
+ font-size: 1.125rem !important;
234
+ line-height: 1.5 !important;
235
+ }
236
+ }
237
+ .prokodo-Accordion__title {
238
+ font-weight: 500;
239
+ }
240
+ .prokodo-Accordion__icon {
241
+ padding-left: 1rem;
242
+ transition: transform 0.3s ease;
243
+ }
244
+ .prokodo-Accordion__icon--is-hidden {
245
+ display: none !important;
246
+ }
247
+ .prokodo-Accordion__content {
248
+ padding: 16px;
249
+ background-color: var(--color-white);
250
+ transition: max-height 0.3s ease, opacity 0.3s ease;
251
+ font-weight: 400;
252
+ font-size: 1.125rem;
253
+ font-family: var(--font-secondary), -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
254
+ font-style: normal;
255
+ line-height: 1.5;
256
+ letter-spacing: 0.03em;
257
+ text-transform: none;
258
+ text-align: left;
259
+ text-decoration: none;
260
+ }
261
+ @media screen and (min-width: 480px) {
262
+ .prokodo-Accordion__content {
263
+ font-size: 1rem;
264
+ line-height: 1.45;
265
+ }
266
+ }
267
+ @media screen and (min-width: 960px) {
268
+ .prokodo-Accordion__content {
269
+ font-size: 1rem;
270
+ line-height: 1.45;
271
+ }
272
+ }
273
+ .prokodo-Accordion__content[hidden] {
274
+ max-height: 0;
275
+ opacity: 0;
276
+ pointer-events: none;
277
+ }
278
+ .prokodo-Accordion__content--is-expanded {
279
+ opacity: 1;
280
+ pointer-events: auto;
281
+ }
282
+ .prokodo-Accordion__actions {
283
+ display: flex;
284
+ gap: 8px;
285
+ padding: 8px 16px;
286
+ background-color: var(--color-grey-100);
287
+ border-top: 1px solid var(--color-grey-200);
288
+ }