@cck-ui/core 0.27.0 → 0.29.0

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 (61) hide show
  1. package/cjs/components/affix/affix.cjs +461 -0
  2. package/cjs/components/affix/affix.cjs.map +1 -0
  3. package/cjs/components/affix/affix.module.cjs +7 -0
  4. package/cjs/components/affix/affix.module.cjs.map +1 -0
  5. package/cjs/components/affix/affix.utils.cjs +14 -0
  6. package/cjs/components/affix/affix.utils.cjs.map +1 -0
  7. package/cjs/components/affix/index.cjs +14 -0
  8. package/cjs/components/affix/index.cjs.map +1 -0
  9. package/cjs/components/burger/burger.cjs +435 -0
  10. package/cjs/components/burger/burger.cjs.map +1 -0
  11. package/cjs/components/burger/burger.module.cjs +10 -0
  12. package/cjs/components/burger/burger.module.cjs.map +1 -0
  13. package/cjs/components/burger/burger.utils.cjs +16 -0
  14. package/cjs/components/burger/burger.utils.cjs.map +1 -0
  15. package/cjs/components/burger/index.cjs +14 -0
  16. package/cjs/components/burger/index.cjs.map +1 -0
  17. package/cjs/components/portal/portal.cjs +10 -3
  18. package/cjs/components/portal/portal.cjs.map +1 -1
  19. package/cjs/core/utils/get-default-z-index/get-default-z-index.cjs +16 -0
  20. package/cjs/core/utils/get-default-z-index/get-default-z-index.cjs.map +1 -0
  21. package/cjs/index.cjs +108 -100
  22. package/cjs/index.cjs.map +1 -1
  23. package/esm/components/affix/affix.mjs +459 -0
  24. package/esm/components/affix/affix.mjs.map +1 -0
  25. package/esm/components/affix/affix.module.mjs +7 -0
  26. package/esm/components/affix/affix.module.mjs.map +1 -0
  27. package/esm/components/affix/affix.utils.mjs +15 -0
  28. package/esm/components/affix/affix.utils.mjs.map +1 -0
  29. package/esm/components/affix/index.mjs +11 -0
  30. package/esm/components/affix/index.mjs.map +1 -0
  31. package/esm/components/burger/burger.mjs +435 -0
  32. package/esm/components/burger/burger.mjs.map +1 -0
  33. package/esm/components/burger/burger.module.mjs +10 -0
  34. package/esm/components/burger/burger.module.mjs.map +1 -0
  35. package/esm/components/burger/burger.utils.mjs +17 -0
  36. package/esm/components/burger/burger.utils.mjs.map +1 -0
  37. package/esm/components/burger/index.mjs +11 -0
  38. package/esm/components/burger/index.mjs.map +1 -0
  39. package/esm/components/portal/portal.mjs +11 -4
  40. package/esm/components/portal/portal.mjs.map +1 -1
  41. package/esm/core/utils/get-default-z-index/get-default-z-index.mjs +16 -0
  42. package/esm/core/utils/get-default-z-index/get-default-z-index.mjs.map +1 -0
  43. package/esm/index.mjs +7 -2
  44. package/esm/index.mjs.map +1 -1
  45. package/lib/components/affix/affix.types.d.ts +40 -0
  46. package/lib/components/affix/affix.utils.d.ts +6 -0
  47. package/lib/components/affix/index.d.ts +6 -0
  48. package/lib/components/burger/burger.types.d.ts +40 -0
  49. package/lib/components/burger/burger.utils.d.ts +6 -0
  50. package/lib/components/burger/index.d.ts +6 -0
  51. package/lib/components/index.d.ts +2 -0
  52. package/lib/components/portal/portal.types.d.ts +9 -0
  53. package/lib/core/utils/get-default-z-index/get-default-z-index.d.ts +9 -0
  54. package/lib/core/utils/index.d.ts +1 -0
  55. package/package.json +1 -1
  56. package/styles/affix.css +8 -0
  57. package/styles/affix.layer.css +9 -0
  58. package/styles/burger.css +68 -0
  59. package/styles/burger.layer.css +69 -0
  60. package/styles.css +78 -0
  61. package/styles.layer.css +78 -0
@@ -0,0 +1,40 @@
1
+ import { Properties } from 'csstype';
2
+ import { BoxComponentProps, CSize, ElementProps, Factory, StylesApiProps } from '../../core';
3
+ import { PortalProps } from '../portal';
4
+ export type AffixStylesNames = 'root';
5
+ export type AffixCssVariables = {
6
+ root: '--affix-z-index' | '--affix-top' | '--affix-left' | '--affix-bottom' | '--affix-right';
7
+ };
8
+ export interface AffixPosition {
9
+ top?: CSize | (string & {}) | number;
10
+ left?: CSize | (string & {}) | number;
11
+ bottom?: CSize | (string & {}) | number;
12
+ right?: CSize | (string & {}) | number;
13
+ }
14
+ export interface AffixBaseProps {
15
+ /**
16
+ * Root element `z-index` property
17
+ * @default 200
18
+ */
19
+ zIndex?: Properties['zIndex'];
20
+ /**
21
+ * Determines whether the component is rendered within `Portal`
22
+ * @default true
23
+ */
24
+ withinPortal?: boolean;
25
+ /** Props passed down to the `Portal` component. Ignored when `withinPortal` is `false` */
26
+ portalProps?: PortalProps;
27
+ /**
28
+ * Affix position on screen
29
+ * @default { bottom: 0, right: 0 }
30
+ */
31
+ position?: AffixPosition;
32
+ }
33
+ export interface AffixProps extends BoxComponentProps, AffixBaseProps, StylesApiProps<AffixFactory>, ElementProps<'div'> {
34
+ }
35
+ export type AffixFactory = Factory<{
36
+ props: AffixProps;
37
+ ref: HTMLDivElement;
38
+ stylesNames: AffixStylesNames;
39
+ vars: AffixCssVariables;
40
+ }>;
@@ -0,0 +1,6 @@
1
+ export declare const varsResolver: import("../..").VarsResolver<{
2
+ props: import("./affix.types").AffixProps;
3
+ ref: HTMLDivElement;
4
+ stylesNames: import("./affix.types").AffixStylesNames;
5
+ vars: import("./affix.types").AffixCssVariables;
6
+ }>;
@@ -0,0 +1,6 @@
1
+ import { SFCWithInstallAndClasses } from '../../core';
2
+ import Affix from './affix.vue';
3
+ import classes from './affix.module.css';
4
+ export declare const CAffix: SFCWithInstallAndClasses<typeof Affix, typeof classes>;
5
+ export default CAffix;
6
+ export * from './affix.types';
@@ -0,0 +1,40 @@
1
+ import { BoxProps, CColor, CSize, ElementProps, Factory, StylesApiProps } from '../../core';
2
+ export type BurgerStylesNames = 'root' | 'burger';
3
+ export type BurgerCssVariables = {
4
+ root: '--burger-color' | '--burger-size' | '--burger-line-size' | '--burger-transition-duration' | '--burger-transition-timing-function';
5
+ };
6
+ export interface BurgerProps extends BoxProps, StylesApiProps<BurgerFactory>, /* @vue-ignore */ ElementProps<'button'> {
7
+ /**
8
+ * Controls burger `width` and `height`, numbers are converted to rem
9
+ * @default 'md'
10
+ */
11
+ size?: CSize | (string & {}) | number;
12
+ /**
13
+ * Controls height of lines, by default calculated based on `size` prop
14
+ */
15
+ lineSize?: string | number;
16
+ /**
17
+ * Key of `theme.colors` of any valid CSS value, by default `theme.white` in dark color scheme and `theme.black` in light
18
+ */
19
+ color?: CColor;
20
+ /**
21
+ * State of the burger, when `true` burger is transformed into x
22
+ * @default false
23
+ */
24
+ opened?: boolean;
25
+ /**
26
+ * `transition-duration` property value in ms
27
+ * @default 300
28
+ */
29
+ transitionDuration?: number;
30
+ /** `transition-timing-function` property value
31
+ * @default 'ease'
32
+ */
33
+ transitionTimingFunction?: string;
34
+ }
35
+ export type BurgerFactory = Factory<{
36
+ props: BurgerProps;
37
+ ref: HTMLButtonElement;
38
+ stylesNames: BurgerStylesNames;
39
+ vars: BurgerCssVariables;
40
+ }>;
@@ -0,0 +1,6 @@
1
+ export declare const varsResolver: import("../..").VarsResolver<{
2
+ props: import("./burger.types").BurgerProps;
3
+ ref: HTMLButtonElement;
4
+ stylesNames: import("./burger.types").BurgerStylesNames;
5
+ vars: import("./burger.types").BurgerCssVariables;
6
+ }>;
@@ -0,0 +1,6 @@
1
+ import { SFCWithInstallAndClasses } from '../../core';
2
+ import classes from './burger.module.css';
3
+ import Burger from './burger.vue';
4
+ export declare const CBurger: SFCWithInstallAndClasses<typeof Burger, typeof classes>;
5
+ export default CBurger;
6
+ export * from './burger.types';
@@ -1,8 +1,10 @@
1
1
  export * from './action-icon';
2
+ export * from './affix';
2
3
  export * from './alert';
3
4
  export * from './anchor';
4
5
  export * from './aspect-ratio';
5
6
  export * from './breadcrumbs';
7
+ export * from './burger';
6
8
  export * from './button';
7
9
  export * from './center';
8
10
  export * from './close-button';
@@ -8,6 +8,15 @@ export interface PortalProps {
8
8
  * Note: If selector doesn't match any element, portal will not render
9
9
  */
10
10
  target?: HTMLElement | string;
11
+ /**
12
+ * Determines whether children should be rendered inside Portal.
13
+ * When false, children are rendered as regular Vue children.
14
+ *
15
+ * Note: In test environment, Portal is always disabled regardless of this value.
16
+ *
17
+ * @default true
18
+ */
19
+ disabled?: boolean;
11
20
  /**
12
21
  * When true and target is not specified, all Portal instances share a single
13
22
  * container node appended to document.body. When false, each Portal creates
@@ -0,0 +1,9 @@
1
+ declare const elevations: {
2
+ readonly app: 100;
3
+ readonly modal: 200;
4
+ readonly popover: 300;
5
+ readonly overlay: 400;
6
+ readonly max: 9999;
7
+ };
8
+ export declare function getDefaultZIndex(level: keyof typeof elevations): 100 | 200 | 300 | 400 | 9999;
9
+ export {};
@@ -3,6 +3,7 @@ export { camelToKebabCase } from './camel-to-kebab-case/camel-to-kebab-case';
3
3
  export { filterProps } from './filter-props/filter-props';
4
4
  export { getBaseValue } from './get-base-value/get-base-value';
5
5
  export { getBreakpointValue } from './get-breakpoint-value/get-breakpoint-value';
6
+ export { getDefaultZIndex } from './get-default-z-index/get-default-z-index';
6
7
  export { getSize, getSpacing, getShadow, getRadius, getFontSize, getLineHeight, } from './get-size/get-size';
7
8
  export { getSortedBreakpoints } from './get-sorted-breakpoints/get-sorted-breakpoints';
8
9
  export { isNumberLike } from './is-number-like/is-number-like';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cck-ui/core",
3
- "version": "0.27.0",
3
+ "version": "0.29.0",
4
4
  "description": "Vue component library focused on usability, accessibility and developer experience",
5
5
  "homepage": "https://cck-ui.jackatlas.xyz",
6
6
  "license": "ISC",
@@ -0,0 +1,8 @@
1
+ .m_8b372bf {
2
+ position: fixed;
3
+ z-index: var(--affix-z-index);
4
+ inset-inline-start: var(--affix-left);
5
+ inset-inline-end: var(--affix-right);
6
+ top: var(--affix-top);
7
+ bottom: var(--affix-bottom);
8
+ }
@@ -0,0 +1,9 @@
1
+ @layer cck {.m_8b372bf {
2
+ position: fixed;
3
+ z-index: var(--affix-z-index);
4
+ inset-inline-start: var(--affix-left);
5
+ inset-inline-end: var(--affix-right);
6
+ top: var(--affix-top);
7
+ bottom: var(--affix-bottom);
8
+ }
9
+ }
@@ -0,0 +1,68 @@
1
+ .m_9b3d173a {
2
+ --burger-size-xs: calc(0.75rem * var(--c-scale));
3
+ --burger-size-sm: calc(1.125rem * var(--c-scale));
4
+ --burger-size-md: calc(1.5rem * var(--c-scale));
5
+ --burger-size-lg: calc(2.125rem * var(--c-scale));
6
+ --burger-size-xl: calc(2.625rem * var(--c-scale));
7
+
8
+ --burger-size: var(--burger-size-md);
9
+ --burger-line-size: calc(var(--burger-size) / 12);
10
+
11
+ width: calc(var(--burger-size) + var(--c-spacing-xs));
12
+ height: calc(var(--burger-size) + var(--c-spacing-xs));
13
+ padding: calc(var(--c-spacing-xs) / 2);
14
+ cursor: pointer;
15
+ }
16
+
17
+ :where([data-c-color-scheme='light']) .m_9b3d173a {
18
+ --burger-color: var(--c-color-black);
19
+ }
20
+
21
+ :where([data-c-color-scheme='dark']) .m_9b3d173a {
22
+ --burger-color: var(--c-color-white);
23
+ }
24
+
25
+ .m_a55c6ccd {
26
+ position: relative;
27
+ user-select: none;
28
+ }
29
+
30
+ .m_a55c6ccd,
31
+ .m_a55c6ccd::before,
32
+ .m_a55c6ccd::after {
33
+ display: block;
34
+ width: var(--burger-size);
35
+ height: var(--burger-line-size);
36
+ background-color: var(--burger-color);
37
+ outline: calc(0.0625rem * var(--c-scale)) solid transparent;
38
+ transition-property: background-color, transform;
39
+ transition-duration: var(--burger-transition-duration, 300ms);
40
+ transition-timing-function: var(--burger-transition-timing-function, ease);
41
+ }
42
+
43
+ .m_a55c6ccd::before,
44
+ .m_a55c6ccd::after {
45
+ position: absolute;
46
+ content: '';
47
+ inset-inline-start: 0;
48
+ }
49
+
50
+ .m_a55c6ccd::before {
51
+ top: calc(var(--burger-size) / -3);
52
+ }
53
+
54
+ .m_a55c6ccd::after {
55
+ top: calc(var(--burger-size) / 3);
56
+ }
57
+
58
+ .m_a55c6ccd[data-opened] {
59
+ background-color: transparent;
60
+ }
61
+
62
+ .m_a55c6ccd[data-opened]::before {
63
+ transform: translateY(calc(var(--burger-size) / 3)) rotate(45deg);
64
+ }
65
+
66
+ .m_a55c6ccd[data-opened]::after {
67
+ transform: translateY(calc(var(--burger-size) / -3)) rotate(-45deg);
68
+ }
@@ -0,0 +1,69 @@
1
+ @layer cck {.m_9b3d173a {
2
+ --burger-size-xs: calc(0.75rem * var(--c-scale));
3
+ --burger-size-sm: calc(1.125rem * var(--c-scale));
4
+ --burger-size-md: calc(1.5rem * var(--c-scale));
5
+ --burger-size-lg: calc(2.125rem * var(--c-scale));
6
+ --burger-size-xl: calc(2.625rem * var(--c-scale));
7
+
8
+ --burger-size: var(--burger-size-md);
9
+ --burger-line-size: calc(var(--burger-size) / 12);
10
+
11
+ width: calc(var(--burger-size) + var(--c-spacing-xs));
12
+ height: calc(var(--burger-size) + var(--c-spacing-xs));
13
+ padding: calc(var(--c-spacing-xs) / 2);
14
+ cursor: pointer;
15
+ }
16
+
17
+ :where([data-c-color-scheme='light']) .m_9b3d173a {
18
+ --burger-color: var(--c-color-black);
19
+ }
20
+
21
+ :where([data-c-color-scheme='dark']) .m_9b3d173a {
22
+ --burger-color: var(--c-color-white);
23
+ }
24
+
25
+ .m_a55c6ccd {
26
+ position: relative;
27
+ user-select: none;
28
+ }
29
+
30
+ .m_a55c6ccd,
31
+ .m_a55c6ccd::before,
32
+ .m_a55c6ccd::after {
33
+ display: block;
34
+ width: var(--burger-size);
35
+ height: var(--burger-line-size);
36
+ background-color: var(--burger-color);
37
+ outline: calc(0.0625rem * var(--c-scale)) solid transparent;
38
+ transition-property: background-color, transform;
39
+ transition-duration: var(--burger-transition-duration, 300ms);
40
+ transition-timing-function: var(--burger-transition-timing-function, ease);
41
+ }
42
+
43
+ .m_a55c6ccd::before,
44
+ .m_a55c6ccd::after {
45
+ position: absolute;
46
+ content: '';
47
+ inset-inline-start: 0;
48
+ }
49
+
50
+ .m_a55c6ccd::before {
51
+ top: calc(var(--burger-size) / -3);
52
+ }
53
+
54
+ .m_a55c6ccd::after {
55
+ top: calc(var(--burger-size) / 3);
56
+ }
57
+
58
+ .m_a55c6ccd[data-opened] {
59
+ background-color: transparent;
60
+ }
61
+
62
+ .m_a55c6ccd[data-opened]::before {
63
+ transform: translateY(calc(var(--burger-size) / 3)) rotate(45deg);
64
+ }
65
+
66
+ .m_a55c6ccd[data-opened]::after {
67
+ transform: translateY(calc(var(--burger-size) / -3)) rotate(-45deg);
68
+ }
69
+ }
package/styles.css CHANGED
@@ -1181,6 +1181,15 @@ fieldset:disabled .c-active:active {
1181
1181
  justify-content: center;
1182
1182
  }
1183
1183
 
1184
+ .m_8b372bf {
1185
+ position: fixed;
1186
+ z-index: var(--affix-z-index);
1187
+ inset-inline-start: var(--affix-left);
1188
+ inset-inline-end: var(--affix-right);
1189
+ top: var(--affix-top);
1190
+ bottom: var(--affix-bottom);
1191
+ }
1192
+
1184
1193
  .m_efb192b3 {
1185
1194
  --alert-radius: var(--c-radius-default);
1186
1195
  --alert-bg: var(--c-primary-color-light);
@@ -1306,6 +1315,75 @@ fieldset:disabled .c-active:active {
1306
1315
  color: var(--c-color-dark-2);
1307
1316
  }
1308
1317
 
1318
+ .m_9b3d173a {
1319
+ --burger-size-xs: calc(0.75rem * var(--c-scale));
1320
+ --burger-size-sm: calc(1.125rem * var(--c-scale));
1321
+ --burger-size-md: calc(1.5rem * var(--c-scale));
1322
+ --burger-size-lg: calc(2.125rem * var(--c-scale));
1323
+ --burger-size-xl: calc(2.625rem * var(--c-scale));
1324
+
1325
+ --burger-size: var(--burger-size-md);
1326
+ --burger-line-size: calc(var(--burger-size) / 12);
1327
+
1328
+ width: calc(var(--burger-size) + var(--c-spacing-xs));
1329
+ height: calc(var(--burger-size) + var(--c-spacing-xs));
1330
+ padding: calc(var(--c-spacing-xs) / 2);
1331
+ cursor: pointer;
1332
+ }
1333
+
1334
+ :where([data-c-color-scheme='light']) .m_9b3d173a {
1335
+ --burger-color: var(--c-color-black);
1336
+ }
1337
+
1338
+ :where([data-c-color-scheme='dark']) .m_9b3d173a {
1339
+ --burger-color: var(--c-color-white);
1340
+ }
1341
+
1342
+ .m_a55c6ccd {
1343
+ position: relative;
1344
+ user-select: none;
1345
+ }
1346
+
1347
+ .m_a55c6ccd,
1348
+ .m_a55c6ccd::before,
1349
+ .m_a55c6ccd::after {
1350
+ display: block;
1351
+ width: var(--burger-size);
1352
+ height: var(--burger-line-size);
1353
+ background-color: var(--burger-color);
1354
+ outline: calc(0.0625rem * var(--c-scale)) solid transparent;
1355
+ transition-property: background-color, transform;
1356
+ transition-duration: var(--burger-transition-duration, 300ms);
1357
+ transition-timing-function: var(--burger-transition-timing-function, ease);
1358
+ }
1359
+
1360
+ .m_a55c6ccd::before,
1361
+ .m_a55c6ccd::after {
1362
+ position: absolute;
1363
+ content: '';
1364
+ inset-inline-start: 0;
1365
+ }
1366
+
1367
+ .m_a55c6ccd::before {
1368
+ top: calc(var(--burger-size) / -3);
1369
+ }
1370
+
1371
+ .m_a55c6ccd::after {
1372
+ top: calc(var(--burger-size) / 3);
1373
+ }
1374
+
1375
+ .m_a55c6ccd[data-opened] {
1376
+ background-color: transparent;
1377
+ }
1378
+
1379
+ .m_a55c6ccd[data-opened]::before {
1380
+ transform: translateY(calc(var(--burger-size) / 3)) rotate(45deg);
1381
+ }
1382
+
1383
+ .m_a55c6ccd[data-opened]::after {
1384
+ transform: translateY(calc(var(--burger-size) / -3)) rotate(-45deg);
1385
+ }
1386
+
1309
1387
  .m_e0e8435a {
1310
1388
  display: flex;
1311
1389
  align-items: center;
package/styles.layer.css CHANGED
@@ -1181,6 +1181,15 @@ fieldset:disabled .c-active:active {
1181
1181
  justify-content: center;
1182
1182
  }
1183
1183
 
1184
+ .m_8b372bf {
1185
+ position: fixed;
1186
+ z-index: var(--affix-z-index);
1187
+ inset-inline-start: var(--affix-left);
1188
+ inset-inline-end: var(--affix-right);
1189
+ top: var(--affix-top);
1190
+ bottom: var(--affix-bottom);
1191
+ }
1192
+
1184
1193
  .m_efb192b3 {
1185
1194
  --alert-radius: var(--c-radius-default);
1186
1195
  --alert-bg: var(--c-primary-color-light);
@@ -1306,6 +1315,75 @@ fieldset:disabled .c-active:active {
1306
1315
  color: var(--c-color-dark-2);
1307
1316
  }
1308
1317
 
1318
+ .m_9b3d173a {
1319
+ --burger-size-xs: calc(0.75rem * var(--c-scale));
1320
+ --burger-size-sm: calc(1.125rem * var(--c-scale));
1321
+ --burger-size-md: calc(1.5rem * var(--c-scale));
1322
+ --burger-size-lg: calc(2.125rem * var(--c-scale));
1323
+ --burger-size-xl: calc(2.625rem * var(--c-scale));
1324
+
1325
+ --burger-size: var(--burger-size-md);
1326
+ --burger-line-size: calc(var(--burger-size) / 12);
1327
+
1328
+ width: calc(var(--burger-size) + var(--c-spacing-xs));
1329
+ height: calc(var(--burger-size) + var(--c-spacing-xs));
1330
+ padding: calc(var(--c-spacing-xs) / 2);
1331
+ cursor: pointer;
1332
+ }
1333
+
1334
+ :where([data-c-color-scheme='light']) .m_9b3d173a {
1335
+ --burger-color: var(--c-color-black);
1336
+ }
1337
+
1338
+ :where([data-c-color-scheme='dark']) .m_9b3d173a {
1339
+ --burger-color: var(--c-color-white);
1340
+ }
1341
+
1342
+ .m_a55c6ccd {
1343
+ position: relative;
1344
+ user-select: none;
1345
+ }
1346
+
1347
+ .m_a55c6ccd,
1348
+ .m_a55c6ccd::before,
1349
+ .m_a55c6ccd::after {
1350
+ display: block;
1351
+ width: var(--burger-size);
1352
+ height: var(--burger-line-size);
1353
+ background-color: var(--burger-color);
1354
+ outline: calc(0.0625rem * var(--c-scale)) solid transparent;
1355
+ transition-property: background-color, transform;
1356
+ transition-duration: var(--burger-transition-duration, 300ms);
1357
+ transition-timing-function: var(--burger-transition-timing-function, ease);
1358
+ }
1359
+
1360
+ .m_a55c6ccd::before,
1361
+ .m_a55c6ccd::after {
1362
+ position: absolute;
1363
+ content: '';
1364
+ inset-inline-start: 0;
1365
+ }
1366
+
1367
+ .m_a55c6ccd::before {
1368
+ top: calc(var(--burger-size) / -3);
1369
+ }
1370
+
1371
+ .m_a55c6ccd::after {
1372
+ top: calc(var(--burger-size) / 3);
1373
+ }
1374
+
1375
+ .m_a55c6ccd[data-opened] {
1376
+ background-color: transparent;
1377
+ }
1378
+
1379
+ .m_a55c6ccd[data-opened]::before {
1380
+ transform: translateY(calc(var(--burger-size) / 3)) rotate(45deg);
1381
+ }
1382
+
1383
+ .m_a55c6ccd[data-opened]::after {
1384
+ transform: translateY(calc(var(--burger-size) / -3)) rotate(-45deg);
1385
+ }
1386
+
1309
1387
  .m_e0e8435a {
1310
1388
  display: flex;
1311
1389
  align-items: center;