@synerise/ds-menu 0.13.2 → 0.15.1

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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,45 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [0.15.1](https://github.com/Synerise/synerise-design/compare/@synerise/ds-menu@0.15.0...@synerise/ds-menu@0.15.1) (2022-07-28)
7
+
8
+ **Note:** Version bump only for package @synerise/ds-menu
9
+
10
+
11
+
12
+
13
+
14
+ # [0.15.0](https://github.com/Synerise/synerise-design/compare/@synerise/ds-menu@0.14.0...@synerise/ds-menu@0.15.0) (2022-06-29)
15
+
16
+
17
+ ### Features
18
+
19
+ * **menu:** adds data-name attribute for the UI tests ([7722c84](https://github.com/Synerise/synerise-design/commit/7722c8461f4852ad44602f92269f3c54704c59bf))
20
+ * **menu:** enables hover tooltip on disabled menu-item ([1d36a08](https://github.com/Synerise/synerise-design/commit/1d36a08950b5f08ad9cfd1ea54bb7823a2e47ad2))
21
+
22
+
23
+
24
+
25
+
26
+ # [0.14.0](https://github.com/Synerise/synerise-design/compare/@synerise/ds-menu@0.13.2...@synerise/ds-menu@0.14.0) (2022-06-15)
27
+
28
+
29
+ ### Bug Fixes
30
+
31
+ * **menu:** change proxy to ItemGroup, affects also ds-item-roll tests ([0d2f195](https://github.com/Synerise/synerise-design/commit/0d2f195cec34be25a4eeda1cb33eea247b9a7007))
32
+ * **menu:** hover-tooltip props type ([ed12ff6](https://github.com/Synerise/synerise-design/commit/ed12ff6b460f445b28a3801766bb2440121f6f6f))
33
+ * **menu:** VisiblityTrigger typing fix ([e16f279](https://github.com/Synerise/synerise-design/commit/e16f279d9440b1fddfa97f2c6ca04c8a3825a6e3))
34
+
35
+
36
+ ### Features
37
+
38
+ * **menu:** add hover tooltip to menu item + test + story ([b931e0b](https://github.com/Synerise/synerise-design/commit/b931e0b277a0a563f7c85310a51593bdd5b99e1e))
39
+ * **menu:** change prop names from popover to rc-trigger ([7ea0eed](https://github.com/Synerise/synerise-design/commit/7ea0eedddc8212c44c61c63e3f2ce4a188935d07))
40
+
41
+
42
+
43
+
44
+
6
45
  ## [0.13.2](https://github.com/Synerise/synerise-design/compare/@synerise/ds-menu@0.13.1...@synerise/ds-menu@0.13.2) (2022-03-30)
7
46
 
8
47
  **Note:** Version bump only for package @synerise/ds-menu
@@ -1,6 +1,8 @@
1
- import { MenuProps } from 'antd/lib/menu';
2
1
  import * as React from 'react';
3
- import { VisibilityTrigger } from 'Menu.types';
2
+ import { MenuProps } from 'antd/lib/menu';
3
+ import type { TriggerProps } from 'rc-trigger';
4
+ import { TooltipProps } from '@synerise/ds-tooltip/dist/Tooltip.types';
5
+ import { VisibilityTrigger } from '../../Menu.types';
4
6
  import { SubMenuProps } from '../SubMenu/SubMenu.types';
5
7
  export declare enum ItemType {
6
8
  DEFAULT = "default",
@@ -12,6 +14,9 @@ export declare enum ItemSize {
12
14
  DEFAULT = "default",
13
15
  LARGE = "large"
14
16
  }
17
+ export declare type TriggerHandle = React.Component<TriggerProps> & {
18
+ getPopupDomNode: () => HTMLElement;
19
+ };
15
20
  export interface MenuItemProps extends Omit<MenuProps, 'dataSource' | 'footer'> {
16
21
  key?: React.ReactText;
17
22
  text?: string | React.ReactNode;
@@ -28,8 +33,8 @@ export interface MenuItemProps extends Omit<MenuProps, 'dataSource' | 'footer'>
28
33
  copyTooltip?: string | React.ReactNode;
29
34
  timeToHideTooltip?: number;
30
35
  highlight?: string;
31
- suffixVisibilityTrigger?: VisibilityTrigger;
32
- prefixVisibilityTrigger?: VisibilityTrigger;
36
+ suffixVisibilityTrigger?: VisibilityTrigger | string;
37
+ prefixVisibilityTrigger?: VisibilityTrigger | string;
33
38
  onItemHover?: (e: MouseEvent) => void;
34
39
  children?: React.ReactNode;
35
40
  type?: ItemType | string;
@@ -37,4 +42,9 @@ export interface MenuItemProps extends Omit<MenuProps, 'dataSource' | 'footer'>
37
42
  menuItemKey?: React.ReactText;
38
43
  checked?: boolean;
39
44
  size?: 'default' | 'large';
45
+ tooltipProps?: TooltipProps;
46
+ hoverTooltipProps?: TriggerProps & {
47
+ ref?: React.LegacyRef<TriggerHandle>;
48
+ };
49
+ renderHoverTooltip?: () => JSX.Element;
40
50
  }
@@ -1,4 +1,10 @@
1
1
  import * as React from 'react';
2
+ import 'rc-trigger/assets/index.less';
2
3
  import { BasicItemProps } from './Text.types';
4
+ export declare type HoverTooltipProps = React.PropsWithChildren<{
5
+ hoverTooltipProps?: BasicItemProps['hoverTooltipProps'];
6
+ renderHoverTooltip?: () => JSX.Element;
7
+ style?: React.CSSProperties;
8
+ }>;
3
9
  declare const Text: React.FC<BasicItemProps>;
4
10
  export default Text;
@@ -1,16 +1,19 @@
1
- var _excluded = ["parent", "disabled", "prefixel", "suffixel", "danger", "children", "description", "copyable", "copyHint", "copyValue", "copyTooltip", "timeToHideTooltip", "highlight", "style", "prefixVisibilityTrigger", "suffixVisibilityTrigger", "indentLevel", "ordered", "checked", "size"];
2
-
3
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
1
+ var _excluded = ["parent", "disabled", "prefixel", "suffixel", "danger", "children", "description", "copyable", "copyHint", "copyValue", "copyTooltip", "timeToHideTooltip", "highlight", "style", "prefixVisibilityTrigger", "suffixVisibilityTrigger", "indentLevel", "ordered", "onClick", "checked", "tooltipProps", "hoverTooltipProps", "renderHoverTooltip", "size", "onItemHover"];
4
2
 
5
3
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
6
4
 
5
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
6
+
7
7
  import * as React from 'react';
8
8
  import classNames from 'classnames';
9
+ import { useTheme } from 'styled-components';
9
10
  import theme from '@synerise/ds-core/dist/js/DSProvider/ThemeProvider/theme';
10
11
  import * as copy from 'copy-to-clipboard';
11
- import { escapeRegEx } from '@synerise/ds-utils';
12
- import Icon, { CheckS, AngleRightS } from '@synerise/ds-icon';
12
+ import Trigger from 'rc-trigger';
13
13
  import Tooltip from '@synerise/ds-tooltip';
14
+ import Icon, { CheckS, AngleRightS } from '@synerise/ds-icon';
15
+ import { escapeRegEx } from '@synerise/ds-utils';
16
+ import "rc-trigger/assets/index.css";
14
17
  import * as S from './Text.styles';
15
18
  import { VisibilityTrigger } from '../../../Menu.types';
16
19
 
@@ -22,29 +25,79 @@ var renderAddon = function renderAddon(addon) {
22
25
  return addon instanceof Function ? addon.apply(void 0, params) : addon;
23
26
  };
24
27
 
25
- var Text = function Text(_ref) {
26
- var parent = _ref.parent,
27
- disabled = _ref.disabled,
28
- prefixel = _ref.prefixel,
29
- suffixel = _ref.suffixel,
30
- danger = _ref.danger,
28
+ var placement = {
29
+ right: ['cl', 'cr']
30
+ };
31
+
32
+ function WithHoverTooltip(_ref) {
33
+ var _hoverTooltipProps$de;
34
+
35
+ var hoverTooltipProps = _ref.hoverTooltipProps,
36
+ renderHoverTooltip = _ref.renderHoverTooltip,
31
37
  children = _ref.children,
32
- description = _ref.description,
33
- copyable = _ref.copyable,
34
- copyHint = _ref.copyHint,
35
- copyValue = _ref.copyValue,
36
- copyTooltip = _ref.copyTooltip,
37
- timeToHideTooltip = _ref.timeToHideTooltip,
38
- highlight = _ref.highlight,
39
- style = _ref.style,
40
- prefixVisibilityTrigger = _ref.prefixVisibilityTrigger,
41
- suffixVisibilityTrigger = _ref.suffixVisibilityTrigger,
42
- indentLevel = _ref.indentLevel,
43
- ordered = _ref.ordered,
44
- checked = _ref.checked,
45
- _ref$size = _ref.size,
46
- size = _ref$size === void 0 ? 'default' : _ref$size,
47
- rest = _objectWithoutPropertiesLoose(_ref, _excluded);
38
+ style = _ref.style;
39
+ var dsTheme = useTheme();
40
+ var zIndex = parseInt(dsTheme.variables['zindex-tooltip'], 10);
41
+ var cancelBubblingEvent = React.useCallback(function () {
42
+ return function (ev) {
43
+ ev.stopPropagation();
44
+ };
45
+ }, []); // onKeyDown is used to disallow propagating key events to tooltip's container element
46
+
47
+ return (
48
+ /*#__PURE__*/
49
+ // eslint-disable-next-line jsx-a11y/no-static-element-interactions
50
+ React.createElement("div", {
51
+ onKeyDown: cancelBubblingEvent,
52
+ onClick: cancelBubblingEvent
53
+ }, /*#__PURE__*/React.createElement(Trigger, _extends({
54
+ defaultPopupVisible: (_hoverTooltipProps$de = hoverTooltipProps == null ? void 0 : hoverTooltipProps.defaultPopupVisible) != null ? _hoverTooltipProps$de : false,
55
+ action: ['click', 'hover'],
56
+ popupAlign: {
57
+ points: placement.right,
58
+ offset: [4, 0]
59
+ },
60
+ popup: renderHoverTooltip && renderHoverTooltip(),
61
+ popupClassName: "ignore-click-outside ds-hide-arrow",
62
+ mouseEnterDelay: 0.2,
63
+ popupStyle: {
64
+ zIndex: zIndex
65
+ },
66
+ zIndex: zIndex
67
+ }, hoverTooltipProps), /*#__PURE__*/React.createElement("div", {
68
+ style: style
69
+ }, children)))
70
+ );
71
+ }
72
+
73
+ var Text = function Text(_ref2) {
74
+ var parent = _ref2.parent,
75
+ disabled = _ref2.disabled,
76
+ prefixel = _ref2.prefixel,
77
+ suffixel = _ref2.suffixel,
78
+ danger = _ref2.danger,
79
+ children = _ref2.children,
80
+ description = _ref2.description,
81
+ copyable = _ref2.copyable,
82
+ copyHint = _ref2.copyHint,
83
+ copyValue = _ref2.copyValue,
84
+ copyTooltip = _ref2.copyTooltip,
85
+ timeToHideTooltip = _ref2.timeToHideTooltip,
86
+ highlight = _ref2.highlight,
87
+ style = _ref2.style,
88
+ prefixVisibilityTrigger = _ref2.prefixVisibilityTrigger,
89
+ suffixVisibilityTrigger = _ref2.suffixVisibilityTrigger,
90
+ indentLevel = _ref2.indentLevel,
91
+ ordered = _ref2.ordered,
92
+ onClick = _ref2.onClick,
93
+ checked = _ref2.checked,
94
+ tooltipProps = _ref2.tooltipProps,
95
+ hoverTooltipProps = _ref2.hoverTooltipProps,
96
+ renderHoverTooltip = _ref2.renderHoverTooltip,
97
+ _ref2$size = _ref2.size,
98
+ size = _ref2$size === void 0 ? 'default' : _ref2$size,
99
+ onItemHover = _ref2.onItemHover,
100
+ rest = _objectWithoutPropertiesLoose(_ref2, _excluded);
48
101
 
49
102
  var _React$useState = React.useState(false),
50
103
  hovered = _React$useState[0],
@@ -107,58 +160,70 @@ var Text = function Text(_ref) {
107
160
  var className = React.useMemo(function () {
108
161
  return classNames('ds-menu-item', rest.className, size);
109
162
  }, [rest.className, size]);
110
- return (
111
- /*#__PURE__*/
112
- // eslint-disable-next-line @typescript-eslint/ban-ts-ignore
113
- // @ts-ignore
114
- // eslint-disable-next-line jsx-a11y/mouse-events-have-key-events
115
- React.createElement(S.Wrapper, _extends({
116
- onMouseOver: function onMouseOver() {
117
- setHovered(true);
118
- },
119
- onMouseLeave: function onMouseLeave() {
120
- setHovered(false);
121
- },
122
- onMouseDown: function onMouseDown() {
123
- setClicked(!clicked);
124
- canCopyToClipboard && copyValue && copy(copyValue);
125
- },
126
- disabled: disabled,
127
- tabIndex: disabled ? -1 : 0,
128
- description: description,
129
- style: style,
130
- indentLevel: Number(indentLevel),
131
- ordered: ordered,
132
- size: size
133
- }, rest, {
134
- className: className
135
- }), /*#__PURE__*/React.createElement(Tooltip, {
136
- type: "default",
137
- trigger: "click",
138
- title: copyTooltip,
139
- timeToHideAfterClick: timeToHideTooltip
140
- }, /*#__PURE__*/React.createElement(S.Inner, null, /*#__PURE__*/React.createElement(S.ContentWrapper, {
141
- className: "ds-menu-content-wrapper"
142
- }, shouldRenderPrefix && /*#__PURE__*/React.createElement(S.PrefixelWrapper, {
143
- className: "ds-menu-prefix",
144
- visible: shouldRenderPrefix,
145
- disabled: disabled
146
- }, renderPrefixElement(hovered)), /*#__PURE__*/React.createElement(S.Content, {
147
- className: "ds-menu-content",
148
- highlight: !!highlight
149
- }, canCopyToClipboard && hovered ? copyHint : renderChildren(), !!description && /*#__PURE__*/React.createElement(S.Description, null, description)), parent && /*#__PURE__*/React.createElement(S.ArrowRight, {
150
- disabled: disabled
151
- }, /*#__PURE__*/React.createElement(Icon, {
152
- component: /*#__PURE__*/React.createElement(AngleRightS, null),
153
- color: theme.palette['grey-600']
154
- })), /*#__PURE__*/React.createElement(S.ContentDivider, null), (!!suffixElement || !!checked) && /*#__PURE__*/React.createElement(S.SuffixWraper, {
155
- visible: shouldRenderSuffix,
156
- disabled: disabled
157
- }, !!checked && /*#__PURE__*/React.createElement(Icon, {
158
- component: /*#__PURE__*/React.createElement(CheckS, null),
159
- color: theme.palette["green-600"]
160
- }), suffixElement)))))
161
- );
163
+ var element =
164
+ /*#__PURE__*/
165
+ // eslint-disable-next-line @typescript-eslint/ban-ts-ignore
166
+ // @ts-ignore
167
+ // eslint-disable-next-line jsx-a11y/mouse-events-have-key-events
168
+ React.createElement(S.Wrapper, _extends({
169
+ onMouseOver: function onMouseOver() {
170
+ setHovered(true);
171
+ },
172
+ onMouseLeave: function onMouseLeave() {
173
+ setHovered(false);
174
+ },
175
+ onMouseDown: function onMouseDown() {
176
+ setClicked(!clicked);
177
+ canCopyToClipboard && copyValue && copy(copyValue);
178
+ },
179
+ disabled: disabled,
180
+ tabIndex: disabled ? -1 : 0,
181
+ description: description,
182
+ style: renderHoverTooltip ? undefined : style,
183
+ indentLevel: Number(indentLevel),
184
+ ordered: ordered,
185
+ size: size,
186
+ onClick: onClick,
187
+ onItemHover: onItemHover
188
+ }, rest, {
189
+ "data-name": typeof children === 'string' ? children : undefined,
190
+ className: className
191
+ }), /*#__PURE__*/React.createElement(Tooltip, _extends({
192
+ type: "default",
193
+ trigger: "click",
194
+ title: copyTooltip,
195
+ timeToHideAfterClick: timeToHideTooltip
196
+ }, tooltipProps), /*#__PURE__*/React.createElement(S.Inner, null, /*#__PURE__*/React.createElement(S.ContentWrapper, {
197
+ className: "ds-menu-content-wrapper"
198
+ }, shouldRenderPrefix && /*#__PURE__*/React.createElement(S.PrefixelWrapper, {
199
+ className: "ds-menu-prefix",
200
+ visible: shouldRenderPrefix,
201
+ disabled: disabled
202
+ }, renderPrefixElement(hovered)), /*#__PURE__*/React.createElement(S.Content, {
203
+ className: "ds-menu-content",
204
+ highlight: !!highlight
205
+ }, canCopyToClipboard && hovered ? copyHint : renderChildren(), !!description && /*#__PURE__*/React.createElement(S.Description, null, description)), parent && /*#__PURE__*/React.createElement(S.ArrowRight, {
206
+ disabled: disabled
207
+ }, /*#__PURE__*/React.createElement(Icon, {
208
+ component: /*#__PURE__*/React.createElement(AngleRightS, null),
209
+ color: theme.palette['grey-600']
210
+ })), /*#__PURE__*/React.createElement(S.ContentDivider, null), (!!suffixElement || !!checked) && /*#__PURE__*/React.createElement(S.SuffixWraper, {
211
+ visible: shouldRenderSuffix,
212
+ disabled: disabled
213
+ }, !!checked && /*#__PURE__*/React.createElement(Icon, {
214
+ component: /*#__PURE__*/React.createElement(CheckS, null),
215
+ color: theme.palette["green-600"]
216
+ }), suffixElement)))));
217
+
218
+ if (renderHoverTooltip) {
219
+ return /*#__PURE__*/React.createElement(WithHoverTooltip, {
220
+ hoverTooltipProps: hoverTooltipProps,
221
+ renderHoverTooltip: renderHoverTooltip,
222
+ style: style
223
+ }, element);
224
+ }
225
+
226
+ return element;
162
227
  };
163
228
 
164
229
  export default Text;
@@ -1,7 +1,7 @@
1
1
  import styled, { css } from 'styled-components';
2
2
  import MenuItem from 'antd/lib/menu/MenuItem';
3
3
  import { IconContainer } from '@synerise/ds-icon';
4
- import { ItemSize } from "../MenuItem.types";
4
+ import { ItemSize } from '../MenuItem.types';
5
5
  var INDENT_LEVEL_STEP = 16;
6
6
  var TRANSITION_FN = '0.2s ease-out';
7
7
 
@@ -1,5 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { MenuProps } from 'antd/lib/menu';
3
+ import { MenuItemProps } from '../MenuItem.types';
3
4
  export declare type AddonRenderer = (hovered: boolean) => React.ReactNode;
4
5
  export interface BasicItemProps {
5
6
  className?: string;
@@ -18,12 +19,15 @@ export interface BasicItemProps {
18
19
  highlight?: string;
19
20
  style?: React.CSSProperties;
20
21
  onItemHover?: (e: MouseEvent) => void;
21
- suffixVisibilityTrigger?: 'default' | 'hover';
22
- prefixVisibilityTrigger?: 'default' | 'hover';
22
+ suffixVisibilityTrigger?: MenuItemProps['suffixVisibilityTrigger'];
23
+ prefixVisibilityTrigger?: MenuItemProps['prefixVisibilityTrigger'];
23
24
  indentLevel?: number;
24
25
  ordered?: boolean;
25
26
  key?: React.ReactText;
26
27
  checked?: boolean;
27
28
  size?: 'default' | 'large';
28
29
  timeToHideTooltip?: number;
30
+ tooltipProps?: MenuItemProps['tooltipProps'];
31
+ hoverTooltipProps?: MenuItemProps['hoverTooltipProps'];
32
+ renderHoverTooltip?: MenuItemProps['renderHoverTooltip'];
29
33
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@synerise/ds-menu",
3
- "version": "0.13.2",
3
+ "version": "0.15.1",
4
4
  "description": "Menu UI Component for the Synerise Design System",
5
5
  "license": "ISC",
6
6
  "repository": "Synerise/synerise-design",
@@ -33,7 +33,7 @@
33
33
  "types": "dist/index.d.ts",
34
34
  "dependencies": {
35
35
  "@synerise/ds-icon": "^0.49.0",
36
- "@synerise/ds-tooltip": "^0.11.9",
36
+ "@synerise/ds-tooltip": "^0.11.10",
37
37
  "@synerise/ds-typography": "^0.12.2",
38
38
  "classnames": "^2.2.6"
39
39
  },
@@ -41,5 +41,5 @@
41
41
  "@synerise/ds-core": "*",
42
42
  "react": ">=16.9.0 < 17.0.0"
43
43
  },
44
- "gitHead": "93d7c60a7fe73188d715fd52b9701f81fcb4e60a"
44
+ "gitHead": "bf12565ec1e6a4124b0c54cdb61e22eae4401d93"
45
45
  }
@@ -1 +0,0 @@
1
- .ant-image-preview,.ant-modal{pointer-events:none}.ant-image-preview.zoom-appear,.ant-image-preview.zoom-enter,.ant-modal.zoom-appear,.ant-modal.zoom-enter{transform:none;opacity:0;animation-duration:.3s;user-select:none}.ant-image-preview-mask,.ant-modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:991000;height:100%;background-color:rgba(0,0,0,.2);filter:alpha(opacity=50)}.ant-image-preview-mask-hidden,.ant-modal-mask-hidden{display:none}.ant-image-preview-wrap,.ant-modal-wrap{position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto;outline:0;-webkit-overflow-scrolling:touch}.ant-menu-item-danger.ant-menu-item{color:#f52922}.ant-menu-item-danger.ant-menu-item-active,.ant-menu-item-danger.ant-menu-item:hover{color:#f52922}.ant-menu-item-danger.ant-menu-item:active{background:#fff1f0}.ant-menu-item-danger.ant-menu-item-selected{color:#f52922}.ant-menu-item-danger.ant-menu-item-selected>a,.ant-menu-item-danger.ant-menu-item-selected>a:hover{color:#f52922}.ant-menu:not(.ant-menu-horizontal) .ant-menu-item-danger.ant-menu-item-selected{background-color:#fff1f0}.ant-menu-inline .ant-menu-item-danger.ant-menu-item::after{border-right-color:#f52922}.ant-menu-dark .ant-menu-item-danger.ant-menu-item,.ant-menu-dark .ant-menu-item-danger.ant-menu-item:hover,.ant-menu-dark .ant-menu-item-danger.ant-menu-item>a{color:#f52922}.ant-menu-dark.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item-danger.ant-menu-item-selected{color:#fff;background-color:#f52922}.ant-menu{box-sizing:border-box;margin:0;padding:0;font-variant:tabular-nums;line-height:1.38;font-feature-settings:'tnum';margin-bottom:0;padding-left:0;color:#6a7580;font-size:13px;line-height:0;text-align:left;list-style:none;background:#fff;outline:0;box-shadow:0 2px 6px rgba(171,178,183,.12);transition:background .3s,width .3s cubic-bezier(.2,0,0,1) 0s}.ant-menu::before{display:table;content:''}.ant-menu::after{display:table;clear:both;content:''}.ant-menu ol,.ant-menu ul{margin:0;padding:0;list-style:none}.ant-menu-hidden{display:none}.ant-menu-item-group-title{height:1.38;padding:8px 16px;color:#232936;font-size:13px;line-height:1.38;transition:all .3s}.ant-menu-horizontal .ant-menu-submenu{transition:border-color .3s cubic-bezier(.645,.045,.355,1),background .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-submenu,.ant-menu-submenu-inline{transition:border-color .3s cubic-bezier(.645,.045,.355,1),background .3s cubic-bezier(.645,.045,.355,1),padding .15s cubic-bezier(.645,.045,.355,1)}.ant-menu-submenu-selected{color:#0b68ff}.ant-menu-item:active,.ant-menu-submenu-title:active{background:#e6f4ff}.ant-menu-submenu .ant-menu-sub{cursor:initial;transition:background .3s cubic-bezier(.645,.045,.355,1),padding .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-item a{color:#6a7580}.ant-menu-item a:hover{color:#0b68ff}.ant-menu-item a::before{position:absolute;top:0;right:0;bottom:0;left:0;background-color:transparent;content:''}.ant-menu-item>.ant-badge a{color:#6a7580}.ant-menu-item>.ant-badge a:hover{color:#0b68ff}.ant-menu-item-divider{height:1px;overflow:hidden;line-height:0;background-color:#e9edee}.ant-menu-item-active,.ant-menu-item:hover,.ant-menu-submenu-active,.ant-menu-submenu-title:hover,.ant-menu:not(.ant-menu-inline) .ant-menu-submenu-open{color:#0b68ff}.ant-menu-horizontal .ant-menu-item,.ant-menu-horizontal .ant-menu-submenu{margin-top:-1px}.ant-menu-horizontal>.ant-menu-item-active,.ant-menu-horizontal>.ant-menu-item:hover,.ant-menu-horizontal>.ant-menu-submenu .ant-menu-submenu-title:hover{background-color:transparent}.ant-menu-item-selected{color:#0b68ff}.ant-menu-item-selected a,.ant-menu-item-selected a:hover{color:#0b68ff}.ant-menu:not(.ant-menu-horizontal) .ant-menu-item-selected{background-color:#e6f4ff}.ant-menu-inline,.ant-menu-vertical,.ant-menu-vertical-left{border-right:1px solid #e9edee}.ant-menu-vertical-right{border-left:1px solid #e9edee}.ant-menu-vertical-left.ant-menu-sub,.ant-menu-vertical-right.ant-menu-sub,.ant-menu-vertical.ant-menu-sub{min-width:160px;max-height:calc(100vh - 100px);padding:0;overflow:hidden;border-right:0;transform-origin:0 0}.ant-menu-vertical-left.ant-menu-sub:not([class*='-active']),.ant-menu-vertical-right.ant-menu-sub:not([class*='-active']),.ant-menu-vertical.ant-menu-sub:not([class*='-active']){overflow-x:hidden;overflow-y:auto}.ant-menu-vertical-left.ant-menu-sub .ant-menu-item,.ant-menu-vertical-right.ant-menu-sub .ant-menu-item,.ant-menu-vertical.ant-menu-sub .ant-menu-item{left:0;margin-left:0;border-right:0}.ant-menu-vertical-left.ant-menu-sub .ant-menu-item::after,.ant-menu-vertical-right.ant-menu-sub .ant-menu-item::after,.ant-menu-vertical.ant-menu-sub .ant-menu-item::after{border-right:0}.ant-menu-vertical-left.ant-menu-sub>.ant-menu-item,.ant-menu-vertical-left.ant-menu-sub>.ant-menu-submenu,.ant-menu-vertical-right.ant-menu-sub>.ant-menu-item,.ant-menu-vertical-right.ant-menu-sub>.ant-menu-submenu,.ant-menu-vertical.ant-menu-sub>.ant-menu-item,.ant-menu-vertical.ant-menu-sub>.ant-menu-submenu{transform-origin:0 0}.ant-menu-horizontal.ant-menu-sub{min-width:114px}.ant-menu-horizontal .ant-menu-item,.ant-menu-horizontal .ant-menu-submenu-title{transition:color .3s cubic-bezier(.645,.045,.355,1),border-color .3s cubic-bezier(.645,.045,.355,1),background .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-item,.ant-menu-submenu-title{position:relative;display:block;margin:0;padding:0 20px;white-space:nowrap;cursor:pointer;transition:color .3s cubic-bezier(.645,.045,.355,1),border-color .3s cubic-bezier(.645,.045,.355,1),background .3s cubic-bezier(.645,.045,.355,1),padding .15s cubic-bezier(.645,.045,.355,1)}.ant-menu-item .anticon,.ant-menu-submenu-title .anticon{min-width:14px;margin-right:10px;font-size:13px;transition:font-size .15s cubic-bezier(.215,.61,.355,1),margin .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-item .anticon+span,.ant-menu-submenu-title .anticon+span{opacity:1;transition:opacity .3s cubic-bezier(.645,.045,.355,1),width .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-item.ant-menu-item-only-child>.anticon,.ant-menu-submenu-title.ant-menu-item-only-child>.anticon{margin-right:0}.ant-menu>.ant-menu-item-divider{height:1px;margin:1px 0;padding:0;overflow:hidden;line-height:0;background-color:#e9edee}.ant-menu-submenu-popup{position:absolute;z-index:991050;border-radius:3px;box-shadow:none}.ant-menu-submenu-popup::before{position:absolute;top:-7px;right:0;bottom:0;left:0;z-index:-1;width:100%;height:100%;opacity:.0001;content:' '}.ant-menu-submenu-placement-rightTop::before{top:0;left:-7px}.ant-menu-submenu>.ant-menu{background-color:#fff;border-radius:3px}.ant-menu-submenu>.ant-menu-submenu-title::after{transition:transform .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-submenu-popup>.ant-menu{background-color:#fff}.ant-menu-submenu-inline>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow{position:absolute;top:50%;right:16px;width:10px;transition:transform .3s cubic-bezier(.645,.045,.355,1)}.ant-menu-submenu-inline>.ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-submenu-inline>.ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow::before{position:absolute;width:6px;height:1.5px;background-image:linear-gradient(to right,#6a7580,#6a7580);border-radius:2px;transition:background .3s cubic-bezier(.645,.045,.355,1),transform .3s cubic-bezier(.645,.045,.355,1),top .3s cubic-bezier(.645,.045,.355,1);content:''}.ant-menu-submenu-inline>.ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow::before{transform:rotate(45deg) translateY(-2px)}.ant-menu-submenu-inline>.ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow::after{transform:rotate(-45deg) translateY(2px)}.ant-menu-submenu-inline>.ant-menu-submenu-title:hover .ant-menu-submenu-arrow::after,.ant-menu-submenu-inline>.ant-menu-submenu-title:hover .ant-menu-submenu-arrow::before,.ant-menu-submenu-vertical-left>.ant-menu-submenu-title:hover .ant-menu-submenu-arrow::after,.ant-menu-submenu-vertical-left>.ant-menu-submenu-title:hover .ant-menu-submenu-arrow::before,.ant-menu-submenu-vertical-right>.ant-menu-submenu-title:hover .ant-menu-submenu-arrow::after,.ant-menu-submenu-vertical-right>.ant-menu-submenu-title:hover .ant-menu-submenu-arrow::before,.ant-menu-submenu-vertical>.ant-menu-submenu-title:hover .ant-menu-submenu-arrow::after,.ant-menu-submenu-vertical>.ant-menu-submenu-title:hover .ant-menu-submenu-arrow::before{background:linear-gradient(to right,#0b68ff,#0b68ff)}.ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow::before{transform:rotate(45deg) translateY(-2px)}.ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow::after{transform:rotate(-45deg) translateY(2px)}.ant-menu-submenu-inline>.ant-menu-submenu-title .ant-menu-submenu-arrow::before{transform:rotate(-45deg) translateX(2px)}.ant-menu-submenu-inline>.ant-menu-submenu-title .ant-menu-submenu-arrow::after{transform:rotate(45deg) translateX(-2px)}.ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title .ant-menu-submenu-arrow{transform:translateY(-2px)}.ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title .ant-menu-submenu-arrow::after{transform:rotate(-45deg) translateX(-2px)}.ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title .ant-menu-submenu-arrow::before{transform:rotate(45deg) translateX(2px)}.ant-menu-vertical .ant-menu-submenu-selected,.ant-menu-vertical-left .ant-menu-submenu-selected,.ant-menu-vertical-right .ant-menu-submenu-selected{color:#0b68ff}.ant-menu-horizontal{line-height:46px;white-space:nowrap;border:0;border-bottom:1px solid #e9edee;box-shadow:none}.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu{margin:0 20px;margin-top:-1px;margin-bottom:0;padding:0 20px;padding-right:0;padding-left:0}.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-active,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-open,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item-selected,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-item:hover,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-active,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-open,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu-selected,.ant-menu-horizontal:not(.ant-menu-dark)>.ant-menu-submenu:hover{color:#0b68ff;border-bottom:2px solid #0b68ff}.ant-menu-horizontal>.ant-menu-item,.ant-menu-horizontal>.ant-menu-submenu{position:relative;top:1px;display:inline-block;vertical-align:bottom;border-bottom:2px solid transparent}.ant-menu-horizontal>.ant-menu-submenu>.ant-menu-submenu-title{padding:0}.ant-menu-horizontal>.ant-menu-item a{color:#6a7580}.ant-menu-horizontal>.ant-menu-item a:hover{color:#0b68ff}.ant-menu-horizontal>.ant-menu-item a::before{bottom:-2px}.ant-menu-horizontal>.ant-menu-item-selected a{color:#0b68ff}.ant-menu-horizontal::after{display:block;clear:both;height:0;content:'\20'}.ant-menu-inline .ant-menu-item,.ant-menu-vertical .ant-menu-item,.ant-menu-vertical-left .ant-menu-item,.ant-menu-vertical-right .ant-menu-item{position:relative}.ant-menu-inline .ant-menu-item::after,.ant-menu-vertical .ant-menu-item::after,.ant-menu-vertical-left .ant-menu-item::after,.ant-menu-vertical-right .ant-menu-item::after{position:absolute;top:0;right:0;bottom:0;border-right:3px solid #0b68ff;transform:scaleY(.0001);opacity:0;transition:transform .15s cubic-bezier(.215,.61,.355,1),opacity .15s cubic-bezier(.215,.61,.355,1);content:''}.ant-menu-inline .ant-menu-item,.ant-menu-inline .ant-menu-submenu-title,.ant-menu-vertical .ant-menu-item,.ant-menu-vertical .ant-menu-submenu-title,.ant-menu-vertical-left .ant-menu-item,.ant-menu-vertical-left .ant-menu-submenu-title,.ant-menu-vertical-right .ant-menu-item,.ant-menu-vertical-right .ant-menu-submenu-title{height:40px;margin-top:4px;margin-bottom:4px;padding:0 16px;overflow:hidden;line-height:40px;text-overflow:ellipsis}.ant-menu-inline .ant-menu-submenu,.ant-menu-vertical .ant-menu-submenu,.ant-menu-vertical-left .ant-menu-submenu,.ant-menu-vertical-right .ant-menu-submenu{padding-bottom:.02px}.ant-menu-inline .ant-menu-item:not(:last-child),.ant-menu-vertical .ant-menu-item:not(:last-child),.ant-menu-vertical-left .ant-menu-item:not(:last-child),.ant-menu-vertical-right .ant-menu-item:not(:last-child){margin-bottom:8px}.ant-menu-inline>.ant-menu-item,.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-vertical-left>.ant-menu-item,.ant-menu-vertical-left>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-vertical-right>.ant-menu-item,.ant-menu-vertical-right>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-vertical>.ant-menu-item,.ant-menu-vertical>.ant-menu-submenu>.ant-menu-submenu-title{height:40px;line-height:40px}.ant-menu-vertical .ant-menu-submenu-title{padding-right:34px}.ant-menu-inline{width:100%}.ant-menu-inline .ant-menu-item-selected::after,.ant-menu-inline .ant-menu-selected::after{transform:scaleY(1);opacity:1;transition:transform .15s cubic-bezier(.645,.045,.355,1),opacity .15s cubic-bezier(.645,.045,.355,1)}.ant-menu-inline .ant-menu-item,.ant-menu-inline .ant-menu-submenu-title{width:calc(100% + 1px)}.ant-menu-inline .ant-menu-submenu-title{padding-right:34px}.ant-menu-inline-collapsed{width:80px}.ant-menu-inline-collapsed>.ant-menu-item,.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item,.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title{left:0;padding:0 33.5px;text-overflow:clip}.ant-menu-inline-collapsed>.ant-menu-item .ant-menu-submenu-arrow,.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-submenu-arrow,.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-submenu-arrow{display:none}.ant-menu-inline-collapsed>.ant-menu-item .anticon,.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .anticon,.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .anticon,.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .anticon{margin:0;font-size:13px;line-height:40px}.ant-menu-inline-collapsed>.ant-menu-item .anticon+span,.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .anticon+span,.ant-menu-inline-collapsed>.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .anticon+span,.ant-menu-inline-collapsed>.ant-menu-submenu>.ant-menu-submenu-title .anticon+span{display:inline-block;max-width:0;opacity:0}.ant-menu-inline-collapsed .anticon{display:inline-block}.ant-menu-inline-collapsed-tooltip{pointer-events:none}.ant-menu-inline-collapsed-tooltip .anticon{display:none}.ant-menu-inline-collapsed-tooltip a{color:#f3f5f6}.ant-menu-inline-collapsed .ant-menu-item-group-title{padding-right:4px;padding-left:4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ant-menu-item-group-list{margin:0;padding:0}.ant-menu-item-group-list .ant-menu-item,.ant-menu-item-group-list .ant-menu-submenu-title{padding:0 16px 0 28px}.ant-menu-root.ant-menu-inline,.ant-menu-root.ant-menu-vertical,.ant-menu-root.ant-menu-vertical-left,.ant-menu-root.ant-menu-vertical-right{box-shadow:none}.ant-menu-root.ant-menu-inline-collapsed .ant-menu-item>.ant-menu-inline-collapsed-noicon,.ant-menu-root.ant-menu-inline-collapsed .ant-menu-submenu .ant-menu-submenu-title>.ant-menu-inline-collapsed-noicon{font-size:13px;text-align:center}.ant-menu-sub.ant-menu-inline{padding:0;border:0;border-radius:0;box-shadow:none}.ant-menu-sub.ant-menu-inline>.ant-menu-item,.ant-menu-sub.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title{height:40px;line-height:40px;list-style-position:inside;list-style-type:disc}.ant-menu-sub.ant-menu-inline .ant-menu-item-group-title{padding-left:32px}.ant-menu-item-disabled,.ant-menu-submenu-disabled{color:#b5bdc3!important;background:0 0;border-color:transparent!important;cursor:not-allowed}.ant-menu-item-disabled a,.ant-menu-submenu-disabled a{color:#b5bdc3!important;pointer-events:none}.ant-menu-item-disabled>.ant-menu-submenu-title,.ant-menu-submenu-disabled>.ant-menu-submenu-title{color:#b5bdc3!important;cursor:not-allowed}.ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before{background:#b5bdc3!important}.ant-layout-header .ant-menu{line-height:inherit}.ant-menu-dark .ant-menu-sub,.ant-menu.ant-menu-dark,.ant-menu.ant-menu-dark .ant-menu-sub{color:#f9fafb;background:#001529}.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow{opacity:.45;transition:all .3s}.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu.ant-menu-dark .ant-menu-sub .ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu.ant-menu-dark .ant-menu-submenu-title .ant-menu-submenu-arrow::before{background:#fff}.ant-menu-dark.ant-menu-submenu-popup{background:0 0}.ant-menu-dark .ant-menu-inline.ant-menu-sub{background:#000c17}.ant-menu-dark.ant-menu-horizontal{border-bottom:0}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item,.ant-menu-dark.ant-menu-horizontal>.ant-menu-submenu{top:0;margin-top:0;padding:0 20px;border-color:#001529;border-bottom:0}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item:hover{background-color:#0b68ff}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item>a::before{bottom:0}.ant-menu-dark .ant-menu-item,.ant-menu-dark .ant-menu-item-group-title,.ant-menu-dark .ant-menu-item>a,.ant-menu-dark .ant-menu-item>span>a{color:#f9fafb}.ant-menu-dark.ant-menu-inline,.ant-menu-dark.ant-menu-vertical,.ant-menu-dark.ant-menu-vertical-left,.ant-menu-dark.ant-menu-vertical-right{border-right:0}.ant-menu-dark.ant-menu-inline .ant-menu-item,.ant-menu-dark.ant-menu-vertical .ant-menu-item,.ant-menu-dark.ant-menu-vertical-left .ant-menu-item,.ant-menu-dark.ant-menu-vertical-right .ant-menu-item{left:0;margin-left:0;border-right:0}.ant-menu-dark.ant-menu-inline .ant-menu-item::after,.ant-menu-dark.ant-menu-vertical .ant-menu-item::after,.ant-menu-dark.ant-menu-vertical-left .ant-menu-item::after,.ant-menu-dark.ant-menu-vertical-right .ant-menu-item::after{border-right:0}.ant-menu-dark.ant-menu-inline .ant-menu-item,.ant-menu-dark.ant-menu-inline .ant-menu-submenu-title{width:100%}.ant-menu-dark .ant-menu-item-active,.ant-menu-dark .ant-menu-item:hover,.ant-menu-dark .ant-menu-submenu-active,.ant-menu-dark .ant-menu-submenu-open,.ant-menu-dark .ant-menu-submenu-selected,.ant-menu-dark .ant-menu-submenu-title:hover{color:#fff;background-color:transparent}.ant-menu-dark .ant-menu-item-active>a,.ant-menu-dark .ant-menu-item-active>span>a,.ant-menu-dark .ant-menu-item:hover>a,.ant-menu-dark .ant-menu-item:hover>span>a,.ant-menu-dark .ant-menu-submenu-active>a,.ant-menu-dark .ant-menu-submenu-active>span>a,.ant-menu-dark .ant-menu-submenu-open>a,.ant-menu-dark .ant-menu-submenu-open>span>a,.ant-menu-dark .ant-menu-submenu-selected>a,.ant-menu-dark .ant-menu-submenu-selected>span>a,.ant-menu-dark .ant-menu-submenu-title:hover>a,.ant-menu-dark .ant-menu-submenu-title:hover>span>a{color:#fff}.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title:hover>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title:hover>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title:hover>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title:hover>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title:hover>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title:hover>.ant-menu-submenu-arrow,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow{opacity:1}.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title:hover>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title:hover>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-item-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title:hover>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title:hover>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-item:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title:hover>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title:hover>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-active>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title:hover>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title:hover>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title:hover>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title:hover>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title:hover>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title:hover>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-title:hover>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before{background:#fff}.ant-menu-dark .ant-menu-item:hover{background-color:transparent}.ant-menu-dark.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item-selected{background-color:#0b68ff}.ant-menu-dark .ant-menu-item-selected{color:#fff;border-right:0}.ant-menu-dark .ant-menu-item-selected::after{border-right:0}.ant-menu-dark .ant-menu-item-selected>a,.ant-menu-dark .ant-menu-item-selected>a:hover,.ant-menu-dark .ant-menu-item-selected>span>a,.ant-menu-dark .ant-menu-item-selected>span>a:hover{color:#fff}.ant-menu-dark .ant-menu-item-selected .anticon{color:#fff}.ant-menu-dark .ant-menu-item-selected .anticon+span{color:#fff}.ant-menu-submenu-popup.ant-menu-dark .ant-menu-item-selected,.ant-menu.ant-menu-dark .ant-menu-item-selected{background-color:#0b68ff}.ant-menu-dark .ant-menu-item-disabled,.ant-menu-dark .ant-menu-item-disabled>a,.ant-menu-dark .ant-menu-item-disabled>span>a,.ant-menu-dark .ant-menu-submenu-disabled,.ant-menu-dark .ant-menu-submenu-disabled>a,.ant-menu-dark .ant-menu-submenu-disabled>span>a{color:#e9edee!important;opacity:.8}.ant-menu-dark .ant-menu-item-disabled>.ant-menu-submenu-title,.ant-menu-dark .ant-menu-submenu-disabled>.ant-menu-submenu-title{color:#e9edee!important}.ant-menu-dark .ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-item-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before,.ant-menu-dark .ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after,.ant-menu-dark .ant-menu-submenu-disabled>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before{background:#e9edee!important}.ant-menu.ant-menu-rtl{direction:rtl;text-align:right}.ant-menu-rtl .ant-menu-item-group-title{text-align:right}.ant-menu-rtl.ant-menu-inline,.ant-menu-rtl.ant-menu-vertical{border-right:none;border-left:1px solid #e9edee}.ant-menu-rtl.ant-menu-dark.ant-menu-inline,.ant-menu-rtl.ant-menu-dark.ant-menu-vertical{border-left:none}.ant-menu-rtl.ant-menu-vertical-left.ant-menu-sub,.ant-menu-rtl.ant-menu-vertical-right.ant-menu-sub,.ant-menu-rtl.ant-menu-vertical.ant-menu-sub{transform-origin:top right}.ant-menu-rtl.ant-menu-vertical-left.ant-menu-sub>.ant-menu-item,.ant-menu-rtl.ant-menu-vertical-left.ant-menu-sub>.ant-menu-submenu,.ant-menu-rtl.ant-menu-vertical-right.ant-menu-sub>.ant-menu-item,.ant-menu-rtl.ant-menu-vertical-right.ant-menu-sub>.ant-menu-submenu,.ant-menu-rtl.ant-menu-vertical.ant-menu-sub>.ant-menu-item,.ant-menu-rtl.ant-menu-vertical.ant-menu-sub>.ant-menu-submenu{transform-origin:top right}.ant-menu-rtl .ant-menu-item .anticon,.ant-menu-rtl .ant-menu-submenu-title .anticon{margin-right:auto;margin-left:10px}.ant-menu-rtl .ant-menu-item.ant-menu-item-only-child>.anticon,.ant-menu-rtl .ant-menu-submenu-title.ant-menu-item-only-child>.anticon{margin-left:0}.ant-menu-rtl .ant-menu-submenu-inline>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-rtl .ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-rtl .ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow,.ant-menu-rtl .ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow{right:auto;left:16px}.ant-menu-rtl .ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu-rtl .ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow::before,.ant-menu-rtl .ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow::before{transform:rotate(-45deg) translateY(-2px)}.ant-menu-rtl .ant-menu-submenu-vertical-left>.ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-rtl .ant-menu-submenu-vertical-right>.ant-menu-submenu-title .ant-menu-submenu-arrow::after,.ant-menu-rtl .ant-menu-submenu-vertical>.ant-menu-submenu-title .ant-menu-submenu-arrow::after{transform:rotate(45deg) translateY(2px)}.ant-menu-rtl.ant-menu-inline .ant-menu-item::after,.ant-menu-rtl.ant-menu-vertical .ant-menu-item::after,.ant-menu-rtl.ant-menu-vertical-left .ant-menu-item::after,.ant-menu-rtl.ant-menu-vertical-right .ant-menu-item::after{right:auto;left:0}.ant-menu-rtl.ant-menu-inline .ant-menu-item,.ant-menu-rtl.ant-menu-inline .ant-menu-submenu-title,.ant-menu-rtl.ant-menu-vertical .ant-menu-item,.ant-menu-rtl.ant-menu-vertical .ant-menu-submenu-title,.ant-menu-rtl.ant-menu-vertical-left .ant-menu-item,.ant-menu-rtl.ant-menu-vertical-left .ant-menu-submenu-title,.ant-menu-rtl.ant-menu-vertical-right .ant-menu-item,.ant-menu-rtl.ant-menu-vertical-right .ant-menu-submenu-title{text-align:right}.ant-menu-rtl.ant-menu-inline .ant-menu-submenu-title{padding-right:0;padding-left:34px}.ant-menu-rtl.ant-menu-vertical .ant-menu-submenu-title{padding-right:16px;padding-left:34px}.ant-menu-rtl.ant-menu-inline-collapsed.ant-menu-vertical .ant-menu-submenu-title{padding:0 33.5px}.ant-menu-rtl .ant-menu-item-group-list .ant-menu-item,.ant-menu-rtl .ant-menu-item-group-list .ant-menu-submenu-title{padding:0 28px 0 16px}.ant-menu-sub.ant-menu-inline{border:0}.ant-menu-rtl.ant-menu-sub.ant-menu-inline .ant-menu-item-group-title{padding-right:32px;padding-left:0}.ant-dropdown-menu-items{padding:8px;margin:0}.ant-list-header{text-transform:uppercase;font-size:13px;color:#57616d;padding:8px 12px}.ant-list-header.ant-list-header{border:0}.ant-menu-inline,.ant-menu-sub.ant-menu-inline{border:none}.ant-menu-inline>.ant-menu-item,.ant-menu-sub.ant-menu-inline>.ant-menu-item{line-height:1}.ant-menu-inline .ant-menu-item{width:100%}.ant-menu-item,.ant-menu-submenu-title{transition:color .3s ease-out}.ant-menu-inline .ant-menu-submenu{padding-bottom:0}.ant-menu-inline,.ant-menu-sub.ant-menu-inline,.ant-menu-vertical,.ant-menu-vertical-left{border:none!important}