ant-design/docs/react/use-with-umi/index.html
2025-05-31 08:49:44 +00:00

386 lines
510 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/umi.b03bacf9.js"/><script async="" src="//www.googletagmanager.com/gtag/js?id=UA-72788897-1"></script><link rel="shortcut icon" href="https://gw.alipayobjects.com/zos/rmsportal/rlpTLlbMzTNYuZGGCVYM.png"/><meta name="theme-color" content="#1677ff"/><meta name="build-time" content="1748681050778"/><meta name="build-hash" content="d11f02db925b1c73cade4280e320884b47cd85e3"/><link rel="prefetch" as="font" href="//at.alicdn.com/t/webfont_6e11e43nfj.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="//at.alicdn.com/t/webfont_6e11e43nfj.woff" type="font/woff" crossorigin="anonymous"/><link rel="prefetch" as="font" href="//at.alicdn.com/t/webfont_6e11e43nfj.ttf" type="font/ttf" crossorigin="anonymous"/><link rel="prefetch" as="font" href="//at.alicdn.com/t/webfont_exesdog9toj.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="prefetch" as="font" href="//at.alicdn.com/t/webfont_exesdog9toj.woff" type="font/woff" crossorigin="anonymous"/><link rel="prefetch" as="font" href="//at.alicdn.com/t/webfont_exesdog9toj.ttf" type="font/ttf" crossorigin="anonymous"/><link rel="preload" as="font" href="//at.alicdn.com/wf/webfont/exMpJIukiCms/Gsw2PSKrftc1yNWMNlXgw.woff2" type="font/woff2" crossorigin="anonymous"/><link rel="preload" as="font" href="//at.alicdn.com/wf/webfont/exMpJIukiCms/vtu73by4O2gEBcvBuLgeu.woff" type="font/woff2" crossorigin="anonymous"/><link rel="stylesheet" href="/umi.fa429c5c.css"/><script>
(function () {
function isLocalStorageNameSupported() {
const testKey = 'test';
const storage = window.localStorage;
try {
storage.setItem(testKey, '1');
storage.removeItem(testKey);
return true;
} catch (error) {
return false;
}
}
// 优先级提高到所有静态资源的前面,语言不对,加载其他静态资源没意义
const pathname = location.pathname;
function isZhCN(pathname) {
return /-cn\/?$/.test(pathname);
}
function getLocalizedPathname(path, zhCN) {
const pathname = path.indexOf('/') === 0 ? path : '/' + path;
if (!zhCN) {
// to enUS
return /\/?index(-cn)?/.test(pathname) ? '/' : pathname.replace('-cn', '');
} else if (pathname === '/') {
return '/index-cn';
} else if (pathname.indexOf('/') === pathname.length - 1) {
return pathname.replace(/\/$/, '-cn/');
}
return pathname + '-cn';
}
// 兼容旧的 URL `?locale=...`
const queryString = location.search;
if (queryString) {
const isZhCNConfig = queryString.indexOf('zh-CN') > -1;
if (isZhCNConfig && !isZhCN(pathname)) {
location.pathname = getLocalizedPathname(pathname, isZhCNConfig);
}
}
// 首页无视链接里面的语言设置 https://github.com/ant-design/ant-design/issues/4552
if (isLocalStorageNameSupported() && (pathname === '/' || pathname === '/index-cn')) {
const lang =
(window.localStorage && localStorage.getItem('locale')) ||
((navigator.language || navigator.browserLanguage).toLowerCase() === 'zh-cn'
? 'zh-CN'
: 'en-US');
// safari is 'zh-cn', while other browser is 'zh-CN';
if ((lang === 'zh-CN') !== isZhCN(pathname)) {
location.pathname = getLocalizedPathname(pathname, lang === 'zh-CN');
}
}
document.documentElement.className += isZhCN(pathname) ? 'zh-cn' : 'en-us';
})();
</script><script>window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-72788897-1');</script><style data-type="antd-cssinjs">a{color:var(--ant-color-link);text-decoration:var(--ant-link-decoration);background-color:transparent;outline:none;cursor:pointer;transition:color var(--ant-motion-duration-slow);-webkit-text-decoration-skip:objects;}a:hover{color:var(--ant-color-link-hover);}a:active{color:var(--ant-color-link-active);}a:active,a:hover{text-decoration:var(--ant-link-hover-decoration);outline:0;}a:focus{text-decoration:var(--ant-link-focus-decoration);outline:0;}a[disabled]{color:var(--ant-color-text-disabled);cursor:not-allowed;}a{color:var(--ant-color-link);text-decoration:var(--ant-link-decoration);background-color:transparent;outline:none;cursor:pointer;transition:color var(--ant-motion-duration-slow);-webkit-text-decoration-skip:objects;}a:hover{color:var(--ant-color-link-hover);}a:active{color:var(--ant-color-link-active);}a:active,a:hover{text-decoration:var(--ant-link-hover-decoration);outline:0;}a:focus{text-decoration:var(--ant-link-focus-decoration);outline:0;}a[disabled]{color:var(--ant-color-text-disabled);cursor:not-allowed;}.anticon{display:inline-flex;align-items:center;color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-0.125em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}.anticon >*{line-height:1;}.anticon svg{display:inline-block;}.anticon .anticon .anticon-icon{display:block;}.ant-app{font-family:var(--ant-font-family);font-size:var(--ant-font-size);box-sizing:border-box;}.ant-app::before,.ant-app::after{box-sizing:border-box;}.ant-app [class^="ant-app"],.ant-app [class*=" ant-app"]{box-sizing:border-box;}.ant-app [class^="ant-app"]::before,.ant-app [class*=" ant-app"]::before,.ant-app [class^="ant-app"]::after,.ant-app [class*=" ant-app"]::after{box-sizing:border-box;}.ant-app{color:var(--ant-color-text);font-size:var(--ant-font-size);line-height:var(--ant-line-height);font-family:var(--ant-font-family);}.ant-app.ant-app-rtl{direction:rtl;}.ant-row{font-family:var(--ant-font-family);font-size:var(--ant-font-size);box-sizing:border-box;}.ant-row::before,.ant-row::after{box-sizing:border-box;}.ant-row [class^="ant-row"],.ant-row [class*=" ant-row"]{box-sizing:border-box;}.ant-row [class^="ant-row"]::before,.ant-row [class*=" ant-row"]::before,.ant-row [class^="ant-row"]::after,.ant-row [class*=" ant-row"]::after{box-sizing:border-box;}.ant-row{display:flex;flex-flow:row wrap;min-width:0;}.ant-row::before,.ant-row::after{display:flex;}.ant-row-no-wrap{flex-wrap:nowrap;}.ant-row-start{justify-content:flex-start;}.ant-row-center{justify-content:center;}.ant-row-end{justify-content:flex-end;}.ant-row-space-between{justify-content:space-between;}.ant-row-space-around{justify-content:space-around;}.ant-row-space-evenly{justify-content:space-evenly;}.ant-row-top{align-items:flex-start;}.ant-row-middle{align-items:center;}.ant-row-bottom{align-items:flex-end;}.ant-col{font-family:var(--ant-font-family);font-size:var(--ant-font-size);box-sizing:border-box;}.ant-col::before,.ant-col::after{box-sizing:border-box;}.ant-col [class^="ant-col"],.ant-col [class*=" ant-col"]{box-sizing:border-box;}.ant-col [class^="ant-col"]::before,.ant-col [class*=" ant-col"]::before,.ant-col [class^="ant-col"]::after,.ant-col [class*=" ant-col"]::after{box-sizing:border-box;}.ant-col{position:relative;max-width:100%;min-height:1px;}.ant-col-24{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 100%;max-width:100%;}.ant-col-push-24{inset-inline-start:100%;}.ant-col-pull-24{inset-inline-end:100%;}.ant-col-offset-24{margin-inline-start:100%;}.ant-col-order-24{order:24;}.ant-col-23{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 95.83333333333334%;max-width:95.83333333333334%;}.ant-col-push-23{inset-inline-start:95.83333333333334%;}.ant-col-pull-23{inset-inline-end:95.83333333333334%;}.ant-col-offset-23{margin-inline-start:95.83333333333334%;}.ant-col-order-23{order:23;}.ant-col-22{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 91.66666666666666%;max-width:91.66666666666666%;}.ant-col-push-22{inset-inline-start:91.66666666666666%;}.ant-col-pull-22{inset-inline-end:91.66666666666666%;}.ant-col-offset-22{margin-inline-start:91.66666666666666%;}.ant-col-order-22{order:22;}.ant-col-21{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 87.5%;max-width:87.5%;}.ant-col-push-21{inset-inline-start:87.5%;}.ant-col-pull-21{inset-inline-end:87.5%;}.ant-col-offset-21{margin-inline-start:87.5%;}.ant-col-order-21{order:21;}.ant-col-20{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 83.33333333333334%;max-width:83.33333333333334%;}.ant-col-push-20{inset-inline-start:83.33333333333334%;}.ant-col-pull-20{inset-inline-end:83.33333333333334%;}.ant-col-offset-20{margin-inline-start:83.33333333333334%;}.ant-col-order-20{order:20;}.ant-col-19{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 79.16666666666666%;max-width:79.16666666666666%;}.ant-col-push-19{inset-inline-start:79.16666666666666%;}.ant-col-pull-19{inset-inline-end:79.16666666666666%;}.ant-col-offset-19{margin-inline-start:79.16666666666666%;}.ant-col-order-19{order:19;}.ant-col-18{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 75%;max-width:75%;}.ant-col-push-18{inset-inline-start:75%;}.ant-col-pull-18{inset-inline-end:75%;}.ant-col-offset-18{margin-inline-start:75%;}.ant-col-order-18{order:18;}.ant-col-17{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 70.83333333333334%;max-width:70.83333333333334%;}.ant-col-push-17{inset-inline-start:70.83333333333334%;}.ant-col-pull-17{inset-inline-end:70.83333333333334%;}.ant-col-offset-17{margin-inline-start:70.83333333333334%;}.ant-col-order-17{order:17;}.ant-col-16{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 66.66666666666666%;max-width:66.66666666666666%;}.ant-col-push-16{inset-inline-start:66.66666666666666%;}.ant-col-pull-16{inset-inline-end:66.66666666666666%;}.ant-col-offset-16{margin-inline-start:66.66666666666666%;}.ant-col-order-16{order:16;}.ant-col-15{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 62.5%;max-width:62.5%;}.ant-col-push-15{inset-inline-start:62.5%;}.ant-col-pull-15{inset-inline-end:62.5%;}.ant-col-offset-15{margin-inline-start:62.5%;}.ant-col-order-15{order:15;}.ant-col-14{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 58.333333333333336%;max-width:58.333333333333336%;}.ant-col-push-14{inset-inline-start:58.333333333333336%;}.ant-col-pull-14{inset-inline-end:58.333333333333336%;}.ant-col-offset-14{margin-inline-start:58.333333333333336%;}.ant-col-order-14{order:14;}.ant-col-13{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 54.166666666666664%;max-width:54.166666666666664%;}.ant-col-push-13{inset-inline-start:54.166666666666664%;}.ant-col-pull-13{inset-inline-end:54.166666666666664%;}.ant-col-offset-13{margin-inline-start:54.166666666666664%;}.ant-col-order-13{order:13;}.ant-col-12{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 50%;max-width:50%;}.ant-col-push-12{inset-inline-start:50%;}.ant-col-pull-12{inset-inline-end:50%;}.ant-col-offset-12{margin-inline-start:50%;}.ant-col-order-12{order:12;}.ant-col-11{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 45.83333333333333%;max-width:45.83333333333333%;}.ant-col-push-11{inset-inline-start:45.83333333333333%;}.ant-col-pull-11{inset-inline-end:45.83333333333333%;}.ant-col-offset-11{margin-inline-start:45.83333333333333%;}.ant-col-order-11{order:11;}.ant-col-10{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 41.66666666666667%;max-width:41.66666666666667%;}.ant-col-push-10{inset-inline-start:41.66666666666667%;}.ant-col-pull-10{inset-inline-end:41.66666666666667%;}.ant-col-offset-10{margin-inline-start:41.66666666666667%;}.ant-col-order-10{order:10;}.ant-col-9{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 37.5%;max-width:37.5%;}.ant-col-push-9{inset-inline-start:37.5%;}.ant-col-pull-9{inset-inline-end:37.5%;}.ant-col-offset-9{margin-inline-start:37.5%;}.ant-col-order-9{order:9;}.ant-col-8{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 33.33333333333333%;max-width:33.33333333333333%;}.ant-col-push-8{inset-inline-start:33.33333333333333%;}.ant-col-pull-8{inset-inline-end:33.33333333333333%;}.ant-col-offset-8{margin-inline-start:33.33333333333333%;}.ant-col-order-8{order:8;}.ant-col-7{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 29.166666666666668%;max-width:29.166666666666668%;}.ant-col-push-7{inset-inline-start:29.166666666666668%;}.ant-col-pull-7{inset-inline-end:29.166666666666668%;}.ant-col-offset-7{margin-inline-start:29.166666666666668%;}.ant-col-order-7{order:7;}.ant-col-6{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 25%;max-width:25%;}.ant-col-push-6{inset-inline-start:25%;}.ant-col-pull-6{inset-inline-end:25%;}.ant-col-offset-6{margin-inline-start:25%;}.ant-col-order-6{order:6;}.ant-col-5{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 20.833333333333336%;max-width:20.833333333333336%;}.ant-col-push-5{inset-inline-start:20.833333333333336%;}.ant-col-pull-5{inset-inline-end:20.833333333333336%;}.ant-col-offset-5{margin-inline-start:20.833333333333336%;}.ant-col-order-5{order:5;}.ant-col-4{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 16.666666666666664%;max-width:16.666666666666664%;}.ant-col-push-4{inset-inline-start:16.666666666666664%;}.ant-col-pull-4{inset-inline-end:16.666666666666664%;}.ant-col-offset-4{margin-inline-start:16.666666666666664%;}.ant-col-order-4{order:4;}.ant-col-3{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 12.5%;max-width:12.5%;}.ant-col-push-3{inset-inline-start:12.5%;}.ant-col-pull-3{inset-inline-end:12.5%;}.ant-col-offset-3{margin-inline-start:12.5%;}.ant-col-order-3{order:3;}.ant-col-2{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 8.333333333333332%;max-width:8.333333333333332%;}.ant-col-push-2{inset-inline-start:8.333333333333332%;}.ant-col-pull-2{inset-inline-end:8.333333333333332%;}.ant-col-offset-2{margin-inline-start:8.333333333333332%;}.ant-col-order-2{order:2;}.ant-col-1{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 4.166666666666666%;max-width:4.166666666666666%;}.ant-col-push-1{inset-inline-start:4.166666666666666%;}.ant-col-pull-1{inset-inline-end:4.166666666666666%;}.ant-col-offset-1{margin-inline-start:4.166666666666666%;}.ant-col-order-1{order:1;}.ant-col-0{display:none;}.ant-col-push-0{inset-inline-start:auto;}.ant-col-pull-0{inset-inline-end:auto;}.ant-col-offset-0{margin-inline-start:0;}.ant-col-order-0{order:0;}.ant-col-flex{flex:var(--ant-col-flex);}.ant-col-xs-24{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 100%;max-width:100%;}.ant-col-xs-push-24{inset-inline-start:100%;}.ant-col-xs-pull-24{inset-inline-end:100%;}.ant-col-xs-offset-24{margin-inline-start:100%;}.ant-col-xs-order-24{order:24;}.ant-col-xs-23{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 95.83333333333334%;max-width:95.83333333333334%;}.ant-col-xs-push-23{inset-inline-start:95.83333333333334%;}.ant-col-xs-pull-23{inset-inline-end:95.83333333333334%;}.ant-col-xs-offset-23{margin-inline-start:95.83333333333334%;}.ant-col-xs-order-23{order:23;}.ant-col-xs-22{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 91.66666666666666%;max-width:91.66666666666666%;}.ant-col-xs-push-22{inset-inline-start:91.66666666666666%;}.ant-col-xs-pull-22{inset-inline-end:91.66666666666666%;}.ant-col-xs-offset-22{margin-inline-start:91.66666666666666%;}.ant-col-xs-order-22{order:22;}.ant-col-xs-21{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 87.5%;max-width:87.5%;}.ant-col-xs-push-21{inset-inline-start:87.5%;}.ant-col-xs-pull-21{inset-inline-end:87.5%;}.ant-col-xs-offset-21{margin-inline-start:87.5%;}.ant-col-xs-order-21{order:21;}.ant-col-xs-20{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 83.33333333333334%;max-width:83.33333333333334%;}.ant-col-xs-push-20{inset-inline-start:83.33333333333334%;}.ant-col-xs-pull-20{inset-inline-end:83.33333333333334%;}.ant-col-xs-offset-20{margin-inline-start:83.33333333333334%;}.ant-col-xs-order-20{order:20;}.ant-col-xs-19{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 79.16666666666666%;max-width:79.16666666666666%;}.ant-col-xs-push-19{inset-inline-start:79.16666666666666%;}.ant-col-xs-pull-19{inset-inline-end:79.16666666666666%;}.ant-col-xs-offset-19{margin-inline-start:79.16666666666666%;}.ant-col-xs-order-19{order:19;}.ant-col-xs-18{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 75%;max-width:75%;}.ant-col-xs-push-18{inset-inline-start:75%;}.ant-col-xs-pull-18{inset-inline-end:75%;}.ant-col-xs-offset-18{margin-inline-start:75%;}.ant-col-xs-order-18{order:18;}.ant-col-xs-17{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 70.83333333333334%;max-width:70.83333333333334%;}.ant-col-xs-push-17{inset-inline-start:70.83333333333334%;}.ant-col-xs-pull-17{inset-inline-end:70.83333333333334%;}.ant-col-xs-offset-17{margin-inline-start:70.83333333333334%;}.ant-col-xs-order-17{order:17;}.ant-col-xs-16{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 66.66666666666666%;max-width:66.66666666666666%;}.ant-col-xs-push-16{inset-inline-start:66.66666666666666%;}.ant-col-xs-pull-16{inset-inline-end:66.66666666666666%;}.ant-col-xs-offset-16{margin-inline-start:66.66666666666666%;}.ant-col-xs-order-16{order:16;}.ant-col-xs-15{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 62.5%;max-width:62.5%;}.ant-col-xs-push-15{inset-inline-start:62.5%;}.ant-col-xs-pull-15{inset-inline-end:62.5%;}.ant-col-xs-offset-15{margin-inline-start:62.5%;}.ant-col-xs-order-15{order:15;}.ant-col-xs-14{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 58.333333333333336%;max-width:58.333333333333336%;}.ant-col-xs-push-14{inset-inline-start:58.333333333333336%;}.ant-col-xs-pull-14{inset-inline-end:58.333333333333336%;}.ant-col-xs-offset-14{margin-inline-start:58.333333333333336%;}.ant-col-xs-order-14{order:14;}.ant-col-xs-13{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 54.166666666666664%;max-width:54.166666666666664%;}.ant-col-xs-push-13{inset-inline-start:54.166666666666664%;}.ant-col-xs-pull-13{inset-inline-end:54.166666666666664%;}.ant-col-xs-offset-13{margin-inline-start:54.166666666666664%;}.ant-col-xs-order-13{order:13;}.ant-col-xs-12{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 50%;max-width:50%;}.ant-col-xs-push-12{inset-inline-start:50%;}.ant-col-xs-pull-12{inset-inline-end:50%;}.ant-col-xs-offset-12{margin-inline-start:50%;}.ant-col-xs-order-12{order:12;}.ant-col-xs-11{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 45.83333333333333%;max-width:45.83333333333333%;}.ant-col-xs-push-11{inset-inline-start:45.83333333333333%;}.ant-col-xs-pull-11{inset-inline-end:45.83333333333333%;}.ant-col-xs-offset-11{margin-inline-start:45.83333333333333%;}.ant-col-xs-order-11{order:11;}.ant-col-xs-10{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 41.66666666666667%;max-width:41.66666666666667%;}.ant-col-xs-push-10{inset-inline-start:41.66666666666667%;}.ant-col-xs-pull-10{inset-inline-end:41.66666666666667%;}.ant-col-xs-offset-10{margin-inline-start:41.66666666666667%;}.ant-col-xs-order-10{order:10;}.ant-col-xs-9{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 37.5%;max-width:37.5%;}.ant-col-xs-push-9{inset-inline-start:37.5%;}.ant-col-xs-pull-9{inset-inline-end:37.5%;}.ant-col-xs-offset-9{margin-inline-start:37.5%;}.ant-col-xs-order-9{order:9;}.ant-col-xs-8{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 33.33333333333333%;max-width:33.33333333333333%;}.ant-col-xs-push-8{inset-inline-start:33.33333333333333%;}.ant-col-xs-pull-8{inset-inline-end:33.33333333333333%;}.ant-col-xs-offset-8{margin-inline-start:33.33333333333333%;}.ant-col-xs-order-8{order:8;}.ant-col-xs-7{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 29.166666666666668%;max-width:29.166666666666668%;}.ant-col-xs-push-7{inset-inline-start:29.166666666666668%;}.ant-col-xs-pull-7{inset-inline-end:29.166666666666668%;}.ant-col-xs-offset-7{margin-inline-start:29.166666666666668%;}.ant-col-xs-order-7{order:7;}.ant-col-xs-6{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 25%;max-width:25%;}.ant-col-xs-push-6{inset-inline-start:25%;}.ant-col-xs-pull-6{inset-inline-end:25%;}.ant-col-xs-offset-6{margin-inline-start:25%;}.ant-col-xs-order-6{order:6;}.ant-col-xs-5{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 20.833333333333336%;max-width:20.833333333333336%;}.ant-col-xs-push-5{inset-inline-start:20.833333333333336%;}.ant-col-xs-pull-5{inset-inline-end:20.833333333333336%;}.ant-col-xs-offset-5{margin-inline-start:20.833333333333336%;}.ant-col-xs-order-5{order:5;}.ant-col-xs-4{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 16.666666666666664%;max-width:16.666666666666664%;}.ant-col-xs-push-4{inset-inline-start:16.666666666666664%;}.ant-col-xs-pull-4{inset-inline-end:16.666666666666664%;}.ant-col-xs-offset-4{margin-inline-start:16.666666666666664%;}.ant-col-xs-order-4{order:4;}.ant-col-xs-3{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 12.5%;max-width:12.5%;}.ant-col-xs-push-3{inset-inline-start:12.5%;}.ant-col-xs-pull-3{inset-inline-end:12.5%;}.ant-col-xs-offset-3{margin-inline-start:12.5%;}.ant-col-xs-order-3{order:3;}.ant-col-xs-2{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 8.333333333333332%;max-width:8.333333333333332%;}.ant-col-xs-push-2{inset-inline-start:8.333333333333332%;}.ant-col-xs-pull-2{inset-inline-end:8.333333333333332%;}.ant-col-xs-offset-2{margin-inline-start:8.333333333333332%;}.ant-col-xs-order-2{order:2;}.ant-col-xs-1{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 4.166666666666666%;max-width:4.166666666666666%;}.ant-col-xs-push-1{inset-inline-start:4.166666666666666%;}.ant-col-xs-pull-1{inset-inline-end:4.166666666666666%;}.ant-col-xs-offset-1{margin-inline-start:4.166666666666666%;}.ant-col-xs-order-1{order:1;}.ant-col-xs-0{display:none;}.ant-col-push-0{inset-inline-start:auto;}.ant-col-pull-0{inset-inline-end:auto;}.ant-col-xs-push-0{inset-inline-start:auto;}.ant-col-xs-pull-0{inset-inline-end:auto;}.ant-col-xs-offset-0{margin-inline-start:0;}.ant-col-xs-order-0{order:0;}.ant-col-xs-flex{flex:var(--ant-col-xs-flex);}@media (min-width: 576px){.ant-col-sm-24{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 100%;max-width:100%;}.ant-col-sm-push-24{inset-inline-start:100%;}.ant-col-sm-pull-24{inset-inline-end:100%;}.ant-col-sm-offset-24{margin-inline-start:100%;}.ant-col-sm-order-24{order:24;}.ant-col-sm-23{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 95.83333333333334%;max-width:95.83333333333334%;}.ant-col-sm-push-23{inset-inline-start:95.83333333333334%;}.ant-col-sm-pull-23{inset-inline-end:95.83333333333334%;}.ant-col-sm-offset-23{margin-inline-start:95.83333333333334%;}.ant-col-sm-order-23{order:23;}.ant-col-sm-22{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 91.66666666666666%;max-width:91.66666666666666%;}.ant-col-sm-push-22{inset-inline-start:91.66666666666666%;}.ant-col-sm-pull-22{inset-inline-end:91.66666666666666%;}.ant-col-sm-offset-22{margin-inline-start:91.66666666666666%;}.ant-col-sm-order-22{order:22;}.ant-col-sm-21{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 87.5%;max-width:87.5%;}.ant-col-sm-push-21{inset-inline-start:87.5%;}.ant-col-sm-pull-21{inset-inline-end:87.5%;}.ant-col-sm-offset-21{margin-inline-start:87.5%;}.ant-col-sm-order-21{order:21;}.ant-col-sm-20{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 83.33333333333334%;max-width:83.33333333333334%;}.ant-col-sm-push-20{inset-inline-start:83.33333333333334%;}.ant-col-sm-pull-20{inset-inline-end:83.33333333333334%;}.ant-col-sm-offset-20{margin-inline-start:83.33333333333334%;}.ant-col-sm-order-20{order:20;}.ant-col-sm-19{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 79.16666666666666%;max-width:79.16666666666666%;}.ant-col-sm-push-19{inset-inline-start:79.16666666666666%;}.ant-col-sm-pull-19{inset-inline-end:79.16666666666666%;}.ant-col-sm-offset-19{margin-inline-start:79.16666666666666%;}.ant-col-sm-order-19{order:19;}.ant-col-sm-18{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 75%;max-width:75%;}.ant-col-sm-push-18{inset-inline-start:75%;}.ant-col-sm-pull-18{inset-inline-end:75%;}.ant-col-sm-offset-18{margin-inline-start:75%;}.ant-col-sm-order-18{order:18;}.ant-col-sm-17{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 70.83333333333334%;max-width:70.83333333333334%;}.ant-col-sm-push-17{inset-inline-start:70.83333333333334%;}.ant-col-sm-pull-17{inset-inline-end:70.83333333333334%;}.ant-col-sm-offset-17{margin-inline-start:70.83333333333334%;}.ant-col-sm-order-17{order:17;}.ant-col-sm-16{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 66.66666666666666%;max-width:66.66666666666666%;}.ant-col-sm-push-16{inset-inline-start:66.66666666666666%;}.ant-col-sm-pull-16{inset-inline-end:66.66666666666666%;}.ant-col-sm-offset-16{margin-inline-start:66.66666666666666%;}.ant-col-sm-order-16{order:16;}.ant-col-sm-15{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 62.5%;max-width:62.5%;}.ant-col-sm-push-15{inset-inline-start:62.5%;}.ant-col-sm-pull-15{inset-inline-end:62.5%;}.ant-col-sm-offset-15{margin-inline-start:62.5%;}.ant-col-sm-order-15{order:15;}.ant-col-sm-14{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 58.333333333333336%;max-width:58.333333333333336%;}.ant-col-sm-push-14{inset-inline-start:58.333333333333336%;}.ant-col-sm-pull-14{inset-inline-end:58.333333333333336%;}.ant-col-sm-offset-14{margin-inline-start:58.333333333333336%;}.ant-col-sm-order-14{order:14;}.ant-col-sm-13{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 54.166666666666664%;max-width:54.166666666666664%;}.ant-col-sm-push-13{inset-inline-start:54.166666666666664%;}.ant-col-sm-pull-13{inset-inline-end:54.166666666666664%;}.ant-col-sm-offset-13{margin-inline-start:54.166666666666664%;}.ant-col-sm-order-13{order:13;}.ant-col-sm-12{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 50%;max-width:50%;}.ant-col-sm-push-12{inset-inline-start:50%;}.ant-col-sm-pull-12{inset-inline-end:50%;}.ant-col-sm-offset-12{margin-inline-start:50%;}.ant-col-sm-order-12{order:12;}.ant-col-sm-11{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 45.83333333333333%;max-width:45.83333333333333%;}.ant-col-sm-push-11{inset-inline-start:45.83333333333333%;}.ant-col-sm-pull-11{inset-inline-end:45.83333333333333%;}.ant-col-sm-offset-11{margin-inline-start:45.83333333333333%;}.ant-col-sm-order-11{order:11;}.ant-col-sm-10{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 41.66666666666667%;max-width:41.66666666666667%;}.ant-col-sm-push-10{inset-inline-start:41.66666666666667%;}.ant-col-sm-pull-10{inset-inline-end:41.66666666666667%;}.ant-col-sm-offset-10{margin-inline-start:41.66666666666667%;}.ant-col-sm-order-10{order:10;}.ant-col-sm-9{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 37.5%;max-width:37.5%;}.ant-col-sm-push-9{inset-inline-start:37.5%;}.ant-col-sm-pull-9{inset-inline-end:37.5%;}.ant-col-sm-offset-9{margin-inline-start:37.5%;}.ant-col-sm-order-9{order:9;}.ant-col-sm-8{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 33.33333333333333%;max-width:33.33333333333333%;}.ant-col-sm-push-8{inset-inline-start:33.33333333333333%;}.ant-col-sm-pull-8{inset-inline-end:33.33333333333333%;}.ant-col-sm-offset-8{margin-inline-start:33.33333333333333%;}.ant-col-sm-order-8{order:8;}.ant-col-sm-7{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 29.166666666666668%;max-width:29.166666666666668%;}.ant-col-sm-push-7{inset-inline-start:29.166666666666668%;}.ant-col-sm-pull-7{inset-inline-end:29.166666666666668%;}.ant-col-sm-offset-7{margin-inline-start:29.166666666666668%;}.ant-col-sm-order-7{order:7;}.ant-col-sm-6{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 25%;max-width:25%;}.ant-col-sm-push-6{inset-inline-start:25%;}.ant-col-sm-pull-6{inset-inline-end:25%;}.ant-col-sm-offset-6{margin-inline-start:25%;}.ant-col-sm-order-6{order:6;}.ant-col-sm-5{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 20.833333333333336%;max-width:20.833333333333336%;}.ant-col-sm-push-5{inset-inline-start:20.833333333333336%;}.ant-col-sm-pull-5{inset-inline-end:20.833333333333336%;}.ant-col-sm-offset-5{margin-inline-start:20.833333333333336%;}.ant-col-sm-order-5{order:5;}.ant-col-sm-4{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 16.666666666666664%;max-width:16.666666666666664%;}.ant-col-sm-push-4{inset-inline-start:16.666666666666664%;}.ant-col-sm-pull-4{inset-inline-end:16.666666666666664%;}.ant-col-sm-offset-4{margin-inline-start:16.666666666666664%;}.ant-col-sm-order-4{order:4;}.ant-col-sm-3{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 12.5%;max-width:12.5%;}.ant-col-sm-push-3{inset-inline-start:12.5%;}.ant-col-sm-pull-3{inset-inline-end:12.5%;}.ant-col-sm-offset-3{margin-inline-start:12.5%;}.ant-col-sm-order-3{order:3;}.ant-col-sm-2{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 8.333333333333332%;max-width:8.333333333333332%;}.ant-col-sm-push-2{inset-inline-start:8.333333333333332%;}.ant-col-sm-pull-2{inset-inline-end:8.333333333333332%;}.ant-col-sm-offset-2{margin-inline-start:8.333333333333332%;}.ant-col-sm-order-2{order:2;}.ant-col-sm-1{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 4.166666666666666%;max-width:4.166666666666666%;}.ant-col-sm-push-1{inset-inline-start:4.166666666666666%;}.ant-col-sm-pull-1{inset-inline-end:4.166666666666666%;}.ant-col-sm-offset-1{margin-inline-start:4.166666666666666%;}.ant-col-sm-order-1{order:1;}.ant-col-sm-0{display:none;}.ant-col-push-0{inset-inline-start:auto;}.ant-col-pull-0{inset-inline-end:auto;}.ant-col-sm-push-0{inset-inline-start:auto;}.ant-col-sm-pull-0{inset-inline-end:auto;}.ant-col-sm-offset-0{margin-inline-start:0;}.ant-col-sm-order-0{order:0;}.ant-col-sm-flex{flex:var(--ant-col-sm-flex);}}@media (min-width: 768px){.ant-col-md-24{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 100%;max-width:100%;}.ant-col-md-push-24{inset-inline-start:100%;}.ant-col-md-pull-24{inset-inline-end:100%;}.ant-col-md-offset-24{margin-inline-start:100%;}.ant-col-md-order-24{order:24;}.ant-col-md-23{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 95.83333333333334%;max-width:95.83333333333334%;}.ant-col-md-push-23{inset-inline-start:95.83333333333334%;}.ant-col-md-pull-23{inset-inline-end:95.83333333333334%;}.ant-col-md-offset-23{margin-inline-start:95.83333333333334%;}.ant-col-md-order-23{order:23;}.ant-col-md-22{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 91.66666666666666%;max-width:91.66666666666666%;}.ant-col-md-push-22{inset-inline-start:91.66666666666666%;}.ant-col-md-pull-22{inset-inline-end:91.66666666666666%;}.ant-col-md-offset-22{margin-inline-start:91.66666666666666%;}.ant-col-md-order-22{order:22;}.ant-col-md-21{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 87.5%;max-width:87.5%;}.ant-col-md-push-21{inset-inline-start:87.5%;}.ant-col-md-pull-21{inset-inline-end:87.5%;}.ant-col-md-offset-21{margin-inline-start:87.5%;}.ant-col-md-order-21{order:21;}.ant-col-md-20{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 83.33333333333334%;max-width:83.33333333333334%;}.ant-col-md-push-20{inset-inline-start:83.33333333333334%;}.ant-col-md-pull-20{inset-inline-end:83.33333333333334%;}.ant-col-md-offset-20{margin-inline-start:83.33333333333334%;}.ant-col-md-order-20{order:20;}.ant-col-md-19{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 79.16666666666666%;max-width:79.16666666666666%;}.ant-col-md-push-19{inset-inline-start:79.16666666666666%;}.ant-col-md-pull-19{inset-inline-end:79.16666666666666%;}.ant-col-md-offset-19{margin-inline-start:79.16666666666666%;}.ant-col-md-order-19{order:19;}.ant-col-md-18{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 75%;max-width:75%;}.ant-col-md-push-18{inset-inline-start:75%;}.ant-col-md-pull-18{inset-inline-end:75%;}.ant-col-md-offset-18{margin-inline-start:75%;}.ant-col-md-order-18{order:18;}.ant-col-md-17{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 70.83333333333334%;max-width:70.83333333333334%;}.ant-col-md-push-17{inset-inline-start:70.83333333333334%;}.ant-col-md-pull-17{inset-inline-end:70.83333333333334%;}.ant-col-md-offset-17{margin-inline-start:70.83333333333334%;}.ant-col-md-order-17{order:17;}.ant-col-md-16{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 66.66666666666666%;max-width:66.66666666666666%;}.ant-col-md-push-16{inset-inline-start:66.66666666666666%;}.ant-col-md-pull-16{inset-inline-end:66.66666666666666%;}.ant-col-md-offset-16{margin-inline-start:66.66666666666666%;}.ant-col-md-order-16{order:16;}.ant-col-md-15{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 62.5%;max-width:62.5%;}.ant-col-md-push-15{inset-inline-start:62.5%;}.ant-col-md-pull-15{inset-inline-end:62.5%;}.ant-col-md-offset-15{margin-inline-start:62.5%;}.ant-col-md-order-15{order:15;}.ant-col-md-14{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 58.333333333333336%;max-width:58.333333333333336%;}.ant-col-md-push-14{inset-inline-start:58.333333333333336%;}.ant-col-md-pull-14{inset-inline-end:58.333333333333336%;}.ant-col-md-offset-14{margin-inline-start:58.333333333333336%;}.ant-col-md-order-14{order:14;}.ant-col-md-13{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 54.166666666666664%;max-width:54.166666666666664%;}.ant-col-md-push-13{inset-inline-start:54.166666666666664%;}.ant-col-md-pull-13{inset-inline-end:54.166666666666664%;}.ant-col-md-offset-13{margin-inline-start:54.166666666666664%;}.ant-col-md-order-13{order:13;}.ant-col-md-12{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 50%;max-width:50%;}.ant-col-md-push-12{inset-inline-start:50%;}.ant-col-md-pull-12{inset-inline-end:50%;}.ant-col-md-offset-12{margin-inline-start:50%;}.ant-col-md-order-12{order:12;}.ant-col-md-11{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 45.83333333333333%;max-width:45.83333333333333%;}.ant-col-md-push-11{inset-inline-start:45.83333333333333%;}.ant-col-md-pull-11{inset-inline-end:45.83333333333333%;}.ant-col-md-offset-11{margin-inline-start:45.83333333333333%;}.ant-col-md-order-11{order:11;}.ant-col-md-10{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 41.66666666666667%;max-width:41.66666666666667%;}.ant-col-md-push-10{inset-inline-start:41.66666666666667%;}.ant-col-md-pull-10{inset-inline-end:41.66666666666667%;}.ant-col-md-offset-10{margin-inline-start:41.66666666666667%;}.ant-col-md-order-10{order:10;}.ant-col-md-9{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 37.5%;max-width:37.5%;}.ant-col-md-push-9{inset-inline-start:37.5%;}.ant-col-md-pull-9{inset-inline-end:37.5%;}.ant-col-md-offset-9{margin-inline-start:37.5%;}.ant-col-md-order-9{order:9;}.ant-col-md-8{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 33.33333333333333%;max-width:33.33333333333333%;}.ant-col-md-push-8{inset-inline-start:33.33333333333333%;}.ant-col-md-pull-8{inset-inline-end:33.33333333333333%;}.ant-col-md-offset-8{margin-inline-start:33.33333333333333%;}.ant-col-md-order-8{order:8;}.ant-col-md-7{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 29.166666666666668%;max-width:29.166666666666668%;}.ant-col-md-push-7{inset-inline-start:29.166666666666668%;}.ant-col-md-pull-7{inset-inline-end:29.166666666666668%;}.ant-col-md-offset-7{margin-inline-start:29.166666666666668%;}.ant-col-md-order-7{order:7;}.ant-col-md-6{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 25%;max-width:25%;}.ant-col-md-push-6{inset-inline-start:25%;}.ant-col-md-pull-6{inset-inline-end:25%;}.ant-col-md-offset-6{margin-inline-start:25%;}.ant-col-md-order-6{order:6;}.ant-col-md-5{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 20.833333333333336%;max-width:20.833333333333336%;}.ant-col-md-push-5{inset-inline-start:20.833333333333336%;}.ant-col-md-pull-5{inset-inline-end:20.833333333333336%;}.ant-col-md-offset-5{margin-inline-start:20.833333333333336%;}.ant-col-md-order-5{order:5;}.ant-col-md-4{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 16.666666666666664%;max-width:16.666666666666664%;}.ant-col-md-push-4{inset-inline-start:16.666666666666664%;}.ant-col-md-pull-4{inset-inline-end:16.666666666666664%;}.ant-col-md-offset-4{margin-inline-start:16.666666666666664%;}.ant-col-md-order-4{order:4;}.ant-col-md-3{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 12.5%;max-width:12.5%;}.ant-col-md-push-3{inset-inline-start:12.5%;}.ant-col-md-pull-3{inset-inline-end:12.5%;}.ant-col-md-offset-3{margin-inline-start:12.5%;}.ant-col-md-order-3{order:3;}.ant-col-md-2{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 8.333333333333332%;max-width:8.333333333333332%;}.ant-col-md-push-2{inset-inline-start:8.333333333333332%;}.ant-col-md-pull-2{inset-inline-end:8.333333333333332%;}.ant-col-md-offset-2{margin-inline-start:8.333333333333332%;}.ant-col-md-order-2{order:2;}.ant-col-md-1{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 4.166666666666666%;max-width:4.166666666666666%;}.ant-col-md-push-1{inset-inline-start:4.166666666666666%;}.ant-col-md-pull-1{inset-inline-end:4.166666666666666%;}.ant-col-md-offset-1{margin-inline-start:4.166666666666666%;}.ant-col-md-order-1{order:1;}.ant-col-md-0{display:none;}.ant-col-push-0{inset-inline-start:auto;}.ant-col-pull-0{inset-inline-end:auto;}.ant-col-md-push-0{inset-inline-start:auto;}.ant-col-md-pull-0{inset-inline-end:auto;}.ant-col-md-offset-0{margin-inline-start:0;}.ant-col-md-order-0{order:0;}.ant-col-md-flex{flex:var(--ant-col-md-flex);}}@media (min-width: 992px){.ant-col-lg-24{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 100%;max-width:100%;}.ant-col-lg-push-24{inset-inline-start:100%;}.ant-col-lg-pull-24{inset-inline-end:100%;}.ant-col-lg-offset-24{margin-inline-start:100%;}.ant-col-lg-order-24{order:24;}.ant-col-lg-23{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 95.83333333333334%;max-width:95.83333333333334%;}.ant-col-lg-push-23{inset-inline-start:95.83333333333334%;}.ant-col-lg-pull-23{inset-inline-end:95.83333333333334%;}.ant-col-lg-offset-23{margin-inline-start:95.83333333333334%;}.ant-col-lg-order-23{order:23;}.ant-col-lg-22{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 91.66666666666666%;max-width:91.66666666666666%;}.ant-col-lg-push-22{inset-inline-start:91.66666666666666%;}.ant-col-lg-pull-22{inset-inline-end:91.66666666666666%;}.ant-col-lg-offset-22{margin-inline-start:91.66666666666666%;}.ant-col-lg-order-22{order:22;}.ant-col-lg-21{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 87.5%;max-width:87.5%;}.ant-col-lg-push-21{inset-inline-start:87.5%;}.ant-col-lg-pull-21{inset-inline-end:87.5%;}.ant-col-lg-offset-21{margin-inline-start:87.5%;}.ant-col-lg-order-21{order:21;}.ant-col-lg-20{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 83.33333333333334%;max-width:83.33333333333334%;}.ant-col-lg-push-20{inset-inline-start:83.33333333333334%;}.ant-col-lg-pull-20{inset-inline-end:83.33333333333334%;}.ant-col-lg-offset-20{margin-inline-start:83.33333333333334%;}.ant-col-lg-order-20{order:20;}.ant-col-lg-19{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 79.16666666666666%;max-width:79.16666666666666%;}.ant-col-lg-push-19{inset-inline-start:79.16666666666666%;}.ant-col-lg-pull-19{inset-inline-end:79.16666666666666%;}.ant-col-lg-offset-19{margin-inline-start:79.16666666666666%;}.ant-col-lg-order-19{order:19;}.ant-col-lg-18{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 75%;max-width:75%;}.ant-col-lg-push-18{inset-inline-start:75%;}.ant-col-lg-pull-18{inset-inline-end:75%;}.ant-col-lg-offset-18{margin-inline-start:75%;}.ant-col-lg-order-18{order:18;}.ant-col-lg-17{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 70.83333333333334%;max-width:70.83333333333334%;}.ant-col-lg-push-17{inset-inline-start:70.83333333333334%;}.ant-col-lg-pull-17{inset-inline-end:70.83333333333334%;}.ant-col-lg-offset-17{margin-inline-start:70.83333333333334%;}.ant-col-lg-order-17{order:17;}.ant-col-lg-16{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 66.66666666666666%;max-width:66.66666666666666%;}.ant-col-lg-push-16{inset-inline-start:66.66666666666666%;}.ant-col-lg-pull-16{inset-inline-end:66.66666666666666%;}.ant-col-lg-offset-16{margin-inline-start:66.66666666666666%;}.ant-col-lg-order-16{order:16;}.ant-col-lg-15{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 62.5%;max-width:62.5%;}.ant-col-lg-push-15{inset-inline-start:62.5%;}.ant-col-lg-pull-15{inset-inline-end:62.5%;}.ant-col-lg-offset-15{margin-inline-start:62.5%;}.ant-col-lg-order-15{order:15;}.ant-col-lg-14{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 58.333333333333336%;max-width:58.333333333333336%;}.ant-col-lg-push-14{inset-inline-start:58.333333333333336%;}.ant-col-lg-pull-14{inset-inline-end:58.333333333333336%;}.ant-col-lg-offset-14{margin-inline-start:58.333333333333336%;}.ant-col-lg-order-14{order:14;}.ant-col-lg-13{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 54.166666666666664%;max-width:54.166666666666664%;}.ant-col-lg-push-13{inset-inline-start:54.166666666666664%;}.ant-col-lg-pull-13{inset-inline-end:54.166666666666664%;}.ant-col-lg-offset-13{margin-inline-start:54.166666666666664%;}.ant-col-lg-order-13{order:13;}.ant-col-lg-12{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 50%;max-width:50%;}.ant-col-lg-push-12{inset-inline-start:50%;}.ant-col-lg-pull-12{inset-inline-end:50%;}.ant-col-lg-offset-12{margin-inline-start:50%;}.ant-col-lg-order-12{order:12;}.ant-col-lg-11{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 45.83333333333333%;max-width:45.83333333333333%;}.ant-col-lg-push-11{inset-inline-start:45.83333333333333%;}.ant-col-lg-pull-11{inset-inline-end:45.83333333333333%;}.ant-col-lg-offset-11{margin-inline-start:45.83333333333333%;}.ant-col-lg-order-11{order:11;}.ant-col-lg-10{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 41.66666666666667%;max-width:41.66666666666667%;}.ant-col-lg-push-10{inset-inline-start:41.66666666666667%;}.ant-col-lg-pull-10{inset-inline-end:41.66666666666667%;}.ant-col-lg-offset-10{margin-inline-start:41.66666666666667%;}.ant-col-lg-order-10{order:10;}.ant-col-lg-9{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 37.5%;max-width:37.5%;}.ant-col-lg-push-9{inset-inline-start:37.5%;}.ant-col-lg-pull-9{inset-inline-end:37.5%;}.ant-col-lg-offset-9{margin-inline-start:37.5%;}.ant-col-lg-order-9{order:9;}.ant-col-lg-8{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 33.33333333333333%;max-width:33.33333333333333%;}.ant-col-lg-push-8{inset-inline-start:33.33333333333333%;}.ant-col-lg-pull-8{inset-inline-end:33.33333333333333%;}.ant-col-lg-offset-8{margin-inline-start:33.33333333333333%;}.ant-col-lg-order-8{order:8;}.ant-col-lg-7{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 29.166666666666668%;max-width:29.166666666666668%;}.ant-col-lg-push-7{inset-inline-start:29.166666666666668%;}.ant-col-lg-pull-7{inset-inline-end:29.166666666666668%;}.ant-col-lg-offset-7{margin-inline-start:29.166666666666668%;}.ant-col-lg-order-7{order:7;}.ant-col-lg-6{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 25%;max-width:25%;}.ant-col-lg-push-6{inset-inline-start:25%;}.ant-col-lg-pull-6{inset-inline-end:25%;}.ant-col-lg-offset-6{margin-inline-start:25%;}.ant-col-lg-order-6{order:6;}.ant-col-lg-5{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 20.833333333333336%;max-width:20.833333333333336%;}.ant-col-lg-push-5{inset-inline-start:20.833333333333336%;}.ant-col-lg-pull-5{inset-inline-end:20.833333333333336%;}.ant-col-lg-offset-5{margin-inline-start:20.833333333333336%;}.ant-col-lg-order-5{order:5;}.ant-col-lg-4{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 16.666666666666664%;max-width:16.666666666666664%;}.ant-col-lg-push-4{inset-inline-start:16.666666666666664%;}.ant-col-lg-pull-4{inset-inline-end:16.666666666666664%;}.ant-col-lg-offset-4{margin-inline-start:16.666666666666664%;}.ant-col-lg-order-4{order:4;}.ant-col-lg-3{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 12.5%;max-width:12.5%;}.ant-col-lg-push-3{inset-inline-start:12.5%;}.ant-col-lg-pull-3{inset-inline-end:12.5%;}.ant-col-lg-offset-3{margin-inline-start:12.5%;}.ant-col-lg-order-3{order:3;}.ant-col-lg-2{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 8.333333333333332%;max-width:8.333333333333332%;}.ant-col-lg-push-2{inset-inline-start:8.333333333333332%;}.ant-col-lg-pull-2{inset-inline-end:8.333333333333332%;}.ant-col-lg-offset-2{margin-inline-start:8.333333333333332%;}.ant-col-lg-order-2{order:2;}.ant-col-lg-1{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 4.166666666666666%;max-width:4.166666666666666%;}.ant-col-lg-push-1{inset-inline-start:4.166666666666666%;}.ant-col-lg-pull-1{inset-inline-end:4.166666666666666%;}.ant-col-lg-offset-1{margin-inline-start:4.166666666666666%;}.ant-col-lg-order-1{order:1;}.ant-col-lg-0{display:none;}.ant-col-push-0{inset-inline-start:auto;}.ant-col-pull-0{inset-inline-end:auto;}.ant-col-lg-push-0{inset-inline-start:auto;}.ant-col-lg-pull-0{inset-inline-end:auto;}.ant-col-lg-offset-0{margin-inline-start:0;}.ant-col-lg-order-0{order:0;}.ant-col-lg-flex{flex:var(--ant-col-lg-flex);}}@media (min-width: 1200px){.ant-col-xl-24{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 100%;max-width:100%;}.ant-col-xl-push-24{inset-inline-start:100%;}.ant-col-xl-pull-24{inset-inline-end:100%;}.ant-col-xl-offset-24{margin-inline-start:100%;}.ant-col-xl-order-24{order:24;}.ant-col-xl-23{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 95.83333333333334%;max-width:95.83333333333334%;}.ant-col-xl-push-23{inset-inline-start:95.83333333333334%;}.ant-col-xl-pull-23{inset-inline-end:95.83333333333334%;}.ant-col-xl-offset-23{margin-inline-start:95.83333333333334%;}.ant-col-xl-order-23{order:23;}.ant-col-xl-22{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 91.66666666666666%;max-width:91.66666666666666%;}.ant-col-xl-push-22{inset-inline-start:91.66666666666666%;}.ant-col-xl-pull-22{inset-inline-end:91.66666666666666%;}.ant-col-xl-offset-22{margin-inline-start:91.66666666666666%;}.ant-col-xl-order-22{order:22;}.ant-col-xl-21{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 87.5%;max-width:87.5%;}.ant-col-xl-push-21{inset-inline-start:87.5%;}.ant-col-xl-pull-21{inset-inline-end:87.5%;}.ant-col-xl-offset-21{margin-inline-start:87.5%;}.ant-col-xl-order-21{order:21;}.ant-col-xl-20{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 83.33333333333334%;max-width:83.33333333333334%;}.ant-col-xl-push-20{inset-inline-start:83.33333333333334%;}.ant-col-xl-pull-20{inset-inline-end:83.33333333333334%;}.ant-col-xl-offset-20{margin-inline-start:83.33333333333334%;}.ant-col-xl-order-20{order:20;}.ant-col-xl-19{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 79.16666666666666%;max-width:79.16666666666666%;}.ant-col-xl-push-19{inset-inline-start:79.16666666666666%;}.ant-col-xl-pull-19{inset-inline-end:79.16666666666666%;}.ant-col-xl-offset-19{margin-inline-start:79.16666666666666%;}.ant-col-xl-order-19{order:19;}.ant-col-xl-18{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 75%;max-width:75%;}.ant-col-xl-push-18{inset-inline-start:75%;}.ant-col-xl-pull-18{inset-inline-end:75%;}.ant-col-xl-offset-18{margin-inline-start:75%;}.ant-col-xl-order-18{order:18;}.ant-col-xl-17{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 70.83333333333334%;max-width:70.83333333333334%;}.ant-col-xl-push-17{inset-inline-start:70.83333333333334%;}.ant-col-xl-pull-17{inset-inline-end:70.83333333333334%;}.ant-col-xl-offset-17{margin-inline-start:70.83333333333334%;}.ant-col-xl-order-17{order:17;}.ant-col-xl-16{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 66.66666666666666%;max-width:66.66666666666666%;}.ant-col-xl-push-16{inset-inline-start:66.66666666666666%;}.ant-col-xl-pull-16{inset-inline-end:66.66666666666666%;}.ant-col-xl-offset-16{margin-inline-start:66.66666666666666%;}.ant-col-xl-order-16{order:16;}.ant-col-xl-15{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 62.5%;max-width:62.5%;}.ant-col-xl-push-15{inset-inline-start:62.5%;}.ant-col-xl-pull-15{inset-inline-end:62.5%;}.ant-col-xl-offset-15{margin-inline-start:62.5%;}.ant-col-xl-order-15{order:15;}.ant-col-xl-14{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 58.333333333333336%;max-width:58.333333333333336%;}.ant-col-xl-push-14{inset-inline-start:58.333333333333336%;}.ant-col-xl-pull-14{inset-inline-end:58.333333333333336%;}.ant-col-xl-offset-14{margin-inline-start:58.333333333333336%;}.ant-col-xl-order-14{order:14;}.ant-col-xl-13{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 54.166666666666664%;max-width:54.166666666666664%;}.ant-col-xl-push-13{inset-inline-start:54.166666666666664%;}.ant-col-xl-pull-13{inset-inline-end:54.166666666666664%;}.ant-col-xl-offset-13{margin-inline-start:54.166666666666664%;}.ant-col-xl-order-13{order:13;}.ant-col-xl-12{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 50%;max-width:50%;}.ant-col-xl-push-12{inset-inline-start:50%;}.ant-col-xl-pull-12{inset-inline-end:50%;}.ant-col-xl-offset-12{margin-inline-start:50%;}.ant-col-xl-order-12{order:12;}.ant-col-xl-11{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 45.83333333333333%;max-width:45.83333333333333%;}.ant-col-xl-push-11{inset-inline-start:45.83333333333333%;}.ant-col-xl-pull-11{inset-inline-end:45.83333333333333%;}.ant-col-xl-offset-11{margin-inline-start:45.83333333333333%;}.ant-col-xl-order-11{order:11;}.ant-col-xl-10{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 41.66666666666667%;max-width:41.66666666666667%;}.ant-col-xl-push-10{inset-inline-start:41.66666666666667%;}.ant-col-xl-pull-10{inset-inline-end:41.66666666666667%;}.ant-col-xl-offset-10{margin-inline-start:41.66666666666667%;}.ant-col-xl-order-10{order:10;}.ant-col-xl-9{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 37.5%;max-width:37.5%;}.ant-col-xl-push-9{inset-inline-start:37.5%;}.ant-col-xl-pull-9{inset-inline-end:37.5%;}.ant-col-xl-offset-9{margin-inline-start:37.5%;}.ant-col-xl-order-9{order:9;}.ant-col-xl-8{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 33.33333333333333%;max-width:33.33333333333333%;}.ant-col-xl-push-8{inset-inline-start:33.33333333333333%;}.ant-col-xl-pull-8{inset-inline-end:33.33333333333333%;}.ant-col-xl-offset-8{margin-inline-start:33.33333333333333%;}.ant-col-xl-order-8{order:8;}.ant-col-xl-7{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 29.166666666666668%;max-width:29.166666666666668%;}.ant-col-xl-push-7{inset-inline-start:29.166666666666668%;}.ant-col-xl-pull-7{inset-inline-end:29.166666666666668%;}.ant-col-xl-offset-7{margin-inline-start:29.166666666666668%;}.ant-col-xl-order-7{order:7;}.ant-col-xl-6{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 25%;max-width:25%;}.ant-col-xl-push-6{inset-inline-start:25%;}.ant-col-xl-pull-6{inset-inline-end:25%;}.ant-col-xl-offset-6{margin-inline-start:25%;}.ant-col-xl-order-6{order:6;}.ant-col-xl-5{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 20.833333333333336%;max-width:20.833333333333336%;}.ant-col-xl-push-5{inset-inline-start:20.833333333333336%;}.ant-col-xl-pull-5{inset-inline-end:20.833333333333336%;}.ant-col-xl-offset-5{margin-inline-start:20.833333333333336%;}.ant-col-xl-order-5{order:5;}.ant-col-xl-4{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 16.666666666666664%;max-width:16.666666666666664%;}.ant-col-xl-push-4{inset-inline-start:16.666666666666664%;}.ant-col-xl-pull-4{inset-inline-end:16.666666666666664%;}.ant-col-xl-offset-4{margin-inline-start:16.666666666666664%;}.ant-col-xl-order-4{order:4;}.ant-col-xl-3{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 12.5%;max-width:12.5%;}.ant-col-xl-push-3{inset-inline-start:12.5%;}.ant-col-xl-pull-3{inset-inline-end:12.5%;}.ant-col-xl-offset-3{margin-inline-start:12.5%;}.ant-col-xl-order-3{order:3;}.ant-col-xl-2{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 8.333333333333332%;max-width:8.333333333333332%;}.ant-col-xl-push-2{inset-inline-start:8.333333333333332%;}.ant-col-xl-pull-2{inset-inline-end:8.333333333333332%;}.ant-col-xl-offset-2{margin-inline-start:8.333333333333332%;}.ant-col-xl-order-2{order:2;}.ant-col-xl-1{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 4.166666666666666%;max-width:4.166666666666666%;}.ant-col-xl-push-1{inset-inline-start:4.166666666666666%;}.ant-col-xl-pull-1{inset-inline-end:4.166666666666666%;}.ant-col-xl-offset-1{margin-inline-start:4.166666666666666%;}.ant-col-xl-order-1{order:1;}.ant-col-xl-0{display:none;}.ant-col-push-0{inset-inline-start:auto;}.ant-col-pull-0{inset-inline-end:auto;}.ant-col-xl-push-0{inset-inline-start:auto;}.ant-col-xl-pull-0{inset-inline-end:auto;}.ant-col-xl-offset-0{margin-inline-start:0;}.ant-col-xl-order-0{order:0;}.ant-col-xl-flex{flex:var(--ant-col-xl-flex);}}@media (min-width: 1600px){.ant-col-xxl-24{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 100%;max-width:100%;}.ant-col-xxl-push-24{inset-inline-start:100%;}.ant-col-xxl-pull-24{inset-inline-end:100%;}.ant-col-xxl-offset-24{margin-inline-start:100%;}.ant-col-xxl-order-24{order:24;}.ant-col-xxl-23{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 95.83333333333334%;max-width:95.83333333333334%;}.ant-col-xxl-push-23{inset-inline-start:95.83333333333334%;}.ant-col-xxl-pull-23{inset-inline-end:95.83333333333334%;}.ant-col-xxl-offset-23{margin-inline-start:95.83333333333334%;}.ant-col-xxl-order-23{order:23;}.ant-col-xxl-22{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 91.66666666666666%;max-width:91.66666666666666%;}.ant-col-xxl-push-22{inset-inline-start:91.66666666666666%;}.ant-col-xxl-pull-22{inset-inline-end:91.66666666666666%;}.ant-col-xxl-offset-22{margin-inline-start:91.66666666666666%;}.ant-col-xxl-order-22{order:22;}.ant-col-xxl-21{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 87.5%;max-width:87.5%;}.ant-col-xxl-push-21{inset-inline-start:87.5%;}.ant-col-xxl-pull-21{inset-inline-end:87.5%;}.ant-col-xxl-offset-21{margin-inline-start:87.5%;}.ant-col-xxl-order-21{order:21;}.ant-col-xxl-20{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 83.33333333333334%;max-width:83.33333333333334%;}.ant-col-xxl-push-20{inset-inline-start:83.33333333333334%;}.ant-col-xxl-pull-20{inset-inline-end:83.33333333333334%;}.ant-col-xxl-offset-20{margin-inline-start:83.33333333333334%;}.ant-col-xxl-order-20{order:20;}.ant-col-xxl-19{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 79.16666666666666%;max-width:79.16666666666666%;}.ant-col-xxl-push-19{inset-inline-start:79.16666666666666%;}.ant-col-xxl-pull-19{inset-inline-end:79.16666666666666%;}.ant-col-xxl-offset-19{margin-inline-start:79.16666666666666%;}.ant-col-xxl-order-19{order:19;}.ant-col-xxl-18{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 75%;max-width:75%;}.ant-col-xxl-push-18{inset-inline-start:75%;}.ant-col-xxl-pull-18{inset-inline-end:75%;}.ant-col-xxl-offset-18{margin-inline-start:75%;}.ant-col-xxl-order-18{order:18;}.ant-col-xxl-17{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 70.83333333333334%;max-width:70.83333333333334%;}.ant-col-xxl-push-17{inset-inline-start:70.83333333333334%;}.ant-col-xxl-pull-17{inset-inline-end:70.83333333333334%;}.ant-col-xxl-offset-17{margin-inline-start:70.83333333333334%;}.ant-col-xxl-order-17{order:17;}.ant-col-xxl-16{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 66.66666666666666%;max-width:66.66666666666666%;}.ant-col-xxl-push-16{inset-inline-start:66.66666666666666%;}.ant-col-xxl-pull-16{inset-inline-end:66.66666666666666%;}.ant-col-xxl-offset-16{margin-inline-start:66.66666666666666%;}.ant-col-xxl-order-16{order:16;}.ant-col-xxl-15{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 62.5%;max-width:62.5%;}.ant-col-xxl-push-15{inset-inline-start:62.5%;}.ant-col-xxl-pull-15{inset-inline-end:62.5%;}.ant-col-xxl-offset-15{margin-inline-start:62.5%;}.ant-col-xxl-order-15{order:15;}.ant-col-xxl-14{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 58.333333333333336%;max-width:58.333333333333336%;}.ant-col-xxl-push-14{inset-inline-start:58.333333333333336%;}.ant-col-xxl-pull-14{inset-inline-end:58.333333333333336%;}.ant-col-xxl-offset-14{margin-inline-start:58.333333333333336%;}.ant-col-xxl-order-14{order:14;}.ant-col-xxl-13{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 54.166666666666664%;max-width:54.166666666666664%;}.ant-col-xxl-push-13{inset-inline-start:54.166666666666664%;}.ant-col-xxl-pull-13{inset-inline-end:54.166666666666664%;}.ant-col-xxl-offset-13{margin-inline-start:54.166666666666664%;}.ant-col-xxl-order-13{order:13;}.ant-col-xxl-12{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 50%;max-width:50%;}.ant-col-xxl-push-12{inset-inline-start:50%;}.ant-col-xxl-pull-12{inset-inline-end:50%;}.ant-col-xxl-offset-12{margin-inline-start:50%;}.ant-col-xxl-order-12{order:12;}.ant-col-xxl-11{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 45.83333333333333%;max-width:45.83333333333333%;}.ant-col-xxl-push-11{inset-inline-start:45.83333333333333%;}.ant-col-xxl-pull-11{inset-inline-end:45.83333333333333%;}.ant-col-xxl-offset-11{margin-inline-start:45.83333333333333%;}.ant-col-xxl-order-11{order:11;}.ant-col-xxl-10{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 41.66666666666667%;max-width:41.66666666666667%;}.ant-col-xxl-push-10{inset-inline-start:41.66666666666667%;}.ant-col-xxl-pull-10{inset-inline-end:41.66666666666667%;}.ant-col-xxl-offset-10{margin-inline-start:41.66666666666667%;}.ant-col-xxl-order-10{order:10;}.ant-col-xxl-9{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 37.5%;max-width:37.5%;}.ant-col-xxl-push-9{inset-inline-start:37.5%;}.ant-col-xxl-pull-9{inset-inline-end:37.5%;}.ant-col-xxl-offset-9{margin-inline-start:37.5%;}.ant-col-xxl-order-9{order:9;}.ant-col-xxl-8{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 33.33333333333333%;max-width:33.33333333333333%;}.ant-col-xxl-push-8{inset-inline-start:33.33333333333333%;}.ant-col-xxl-pull-8{inset-inline-end:33.33333333333333%;}.ant-col-xxl-offset-8{margin-inline-start:33.33333333333333%;}.ant-col-xxl-order-8{order:8;}.ant-col-xxl-7{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 29.166666666666668%;max-width:29.166666666666668%;}.ant-col-xxl-push-7{inset-inline-start:29.166666666666668%;}.ant-col-xxl-pull-7{inset-inline-end:29.166666666666668%;}.ant-col-xxl-offset-7{margin-inline-start:29.166666666666668%;}.ant-col-xxl-order-7{order:7;}.ant-col-xxl-6{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 25%;max-width:25%;}.ant-col-xxl-push-6{inset-inline-start:25%;}.ant-col-xxl-pull-6{inset-inline-end:25%;}.ant-col-xxl-offset-6{margin-inline-start:25%;}.ant-col-xxl-order-6{order:6;}.ant-col-xxl-5{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 20.833333333333336%;max-width:20.833333333333336%;}.ant-col-xxl-push-5{inset-inline-start:20.833333333333336%;}.ant-col-xxl-pull-5{inset-inline-end:20.833333333333336%;}.ant-col-xxl-offset-5{margin-inline-start:20.833333333333336%;}.ant-col-xxl-order-5{order:5;}.ant-col-xxl-4{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 16.666666666666664%;max-width:16.666666666666664%;}.ant-col-xxl-push-4{inset-inline-start:16.666666666666664%;}.ant-col-xxl-pull-4{inset-inline-end:16.666666666666664%;}.ant-col-xxl-offset-4{margin-inline-start:16.666666666666664%;}.ant-col-xxl-order-4{order:4;}.ant-col-xxl-3{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 12.5%;max-width:12.5%;}.ant-col-xxl-push-3{inset-inline-start:12.5%;}.ant-col-xxl-pull-3{inset-inline-end:12.5%;}.ant-col-xxl-offset-3{margin-inline-start:12.5%;}.ant-col-xxl-order-3{order:3;}.ant-col-xxl-2{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 8.333333333333332%;max-width:8.333333333333332%;}.ant-col-xxl-push-2{inset-inline-start:8.333333333333332%;}.ant-col-xxl-pull-2{inset-inline-end:8.333333333333332%;}.ant-col-xxl-offset-2{margin-inline-start:8.333333333333332%;}.ant-col-xxl-order-2{order:2;}.ant-col-xxl-1{--ant-display:block;display:block;display:var(--ant-display);flex:0 0 4.166666666666666%;max-width:4.166666666666666%;}.ant-col-xxl-push-1{inset-inline-start:4.166666666666666%;}.ant-col-xxl-pull-1{inset-inline-end:4.166666666666666%;}.ant-col-xxl-offset-1{margin-inline-start:4.166666666666666%;}.ant-col-xxl-order-1{order:1;}.ant-col-xxl-0{display:none;}.ant-col-push-0{inset-inline-start:auto;}.ant-col-pull-0{inset-inline-end:auto;}.ant-col-xxl-push-0{inset-inline-start:auto;}.ant-col-xxl-pull-0{inset-inline-end:auto;}.ant-col-xxl-offset-0{margin-inline-start:0;}.ant-col-xxl-order-0{order:0;}.ant-col-xxl-flex{flex:var(--ant-col-xxl-flex);}}.ant-menu-css-var{font-family:var(--ant-font-family);font-size:var(--ant-font-size);box-sizing:border-box;}.ant-menu-css-var::before,.ant-menu-css-var::after{box-sizing:border-box;}.ant-menu-css-var [class^="ant-menu"],.ant-menu-css-var [class*=" ant-menu"]{box-sizing:border-box;}.ant-menu-css-var [class^="ant-menu"]::before,.ant-menu-css-var [class*=" ant-menu"]::before,.ant-menu-css-var [class^="ant-menu"]::after,.ant-menu-css-var [class*=" ant-menu"]::after{box-sizing:border-box;}.ant-menu::before{display:table;content:"";}.ant-menu::after{display:table;clear:both;content:"";}.ant-menu-hidden{display:none;}.ant-menu-submenu-hidden{display:none;}.ant-menu{box-sizing:border-box;margin:0;padding:0;color:var(--ant-color-text);font-size:var(--ant-font-size);line-height:0;list-style:none;font-family:var(--ant-font-family);margin-bottom:0;padding-inline-start:0;outline:none;transition:width var(--ant-motion-duration-slow) cubic-bezier(0.2, 0, 0, 1) 0s;}.ant-menu::before{display:table;content:"";}.ant-menu::after{display:table;clear:both;content:"";}.ant-menu ul,.ant-menu ol{margin:0;padding:0;list-style:none;}.ant-menu-overflow{display:flex;}.ant-menu-overflow .ant-menu-item{flex:none;}.ant-menu .ant-menu-item,.ant-menu .ant-menu-submenu,.ant-menu .ant-menu-submenu-title{border-radius:var(--ant-menu-item-border-radius);}.ant-menu .ant-menu-item-group-title{padding:var(--ant-padding-xs) var(--ant-padding);font-size:var(--ant-menu-group-title-font-size);line-height:var(--ant-menu-group-title-line-height);transition:all var(--ant-motion-duration-slow);}.ant-menu-horizontal .ant-menu-submenu{transition:border-color var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out),background var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out);}.ant-menu .ant-menu-submenu,.ant-menu .ant-menu-submenu-inline{transition:border-color var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out),background var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out),padding var(--ant-motion-duration-mid) var(--ant-motion-ease-in-out);}.ant-menu .ant-menu-submenu .ant-menu-sub{cursor:initial;transition:background var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out),padding var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out);}.ant-menu .ant-menu-title-content{transition:color var(--ant-motion-duration-slow);}.ant-menu .ant-menu-title-content-with-extra{display:inline-flex;align-items:center;width:100%;}.ant-menu .ant-menu-title-content >.ant-typography-ellipsis-single-line{display:inline;vertical-align:unset;}.ant-menu .ant-menu-title-content .ant-menu-item-extra{margin-inline-start:auto;padding-inline-start:var(--ant-padding);}.ant-menu .ant-menu-item a::before{position:absolute;inset:0;background-color:transparent;content:"";}.ant-menu .ant-menu-item-divider{overflow:hidden;line-height:0;border-color:var(--ant-color-split);border-style:var(--ant-line-type);border-width:0;border-top-width:var(--ant-line-width);margin-block:var(--ant-line-width);padding:0;}.ant-menu .ant-menu-item-divider-dashed{border-style:dashed;}.ant-menu .ant-menu-item,.ant-menu .ant-menu-submenu-title{position:relative;display:block;margin:0;white-space:nowrap;cursor:pointer;transition:border-color var(--ant-motion-duration-slow),background var(--ant-motion-duration-slow),padding calc(var(--ant-motion-duration-slow) + 0.1s) var(--ant-motion-ease-in-out);}.ant-menu .ant-menu-item .ant-menu-item-icon,.ant-menu .ant-menu-submenu-title .ant-menu-item-icon,.ant-menu .ant-menu-item .anticon,.ant-menu .ant-menu-submenu-title .anticon{min-width:var(--ant-menu-icon-size);font-size:var(--ant-menu-icon-size);transition:font-size var(--ant-motion-duration-mid) var(--ant-motion-ease-out),margin var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out),color var(--ant-motion-duration-slow);}.ant-menu .ant-menu-item .ant-menu-item-icon +span,.ant-menu .ant-menu-submenu-title .ant-menu-item-icon +span,.ant-menu .ant-menu-item .anticon +span,.ant-menu .ant-menu-submenu-title .anticon +span{margin-inline-start:var(--ant-menu-icon-margin-inline-end);opacity:1;transition:opacity var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out),margin var(--ant-motion-duration-slow),color var(--ant-motion-duration-slow);}.ant-menu .ant-menu-item .ant-menu-item-icon,.ant-menu .ant-menu-submenu-title .ant-menu-item-icon{display:inline-flex;align-items:center;color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-0.125em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}.ant-menu .ant-menu-item .ant-menu-item-icon >*,.ant-menu .ant-menu-submenu-title .ant-menu-item-icon >*{line-height:1;}.ant-menu .ant-menu-item .ant-menu-item-icon svg,.ant-menu .ant-menu-submenu-title .ant-menu-item-icon svg{display:inline-block;}.ant-menu .ant-menu-item.ant-menu-item-only-child >.anticon,.ant-menu .ant-menu-submenu-title.ant-menu-item-only-child >.anticon,.ant-menu .ant-menu-item.ant-menu-item-only-child >.ant-menu-item-icon,.ant-menu .ant-menu-submenu-title.ant-menu-item-only-child >.ant-menu-item-icon{margin-inline-end:0;}.ant-menu .ant-menu-item-disabled,.ant-menu .ant-menu-submenu-disabled{background:none!important;cursor:not-allowed;}.ant-menu .ant-menu-item-disabled::after,.ant-menu .ant-menu-submenu-disabled::after{border-color:transparent!important;}.ant-menu .ant-menu-item-disabled a,.ant-menu .ant-menu-submenu-disabled a{color:inherit!important;cursor:not-allowed;pointer-events:none;}.ant-menu .ant-menu-item-disabled >.ant-menu-submenu-title,.ant-menu .ant-menu-submenu-disabled >.ant-menu-submenu-title{color:inherit!important;cursor:not-allowed;}.ant-menu .ant-menu-item-group .ant-menu-item-group-list{margin:0;padding:0;}.ant-menu .ant-menu-item-group .ant-menu-item-group-list .ant-menu-item,.ant-menu .ant-menu-item-group .ant-menu-item-group-list .ant-menu-submenu-title{padding-inline:calc(var(--ant-font-size) * 2) var(--ant-padding);}.ant-menu-submenu-popup{position:absolute;z-index:var(--ant-menu-z-index-popup);border-radius:var(--ant-border-radius-lg);box-shadow:none;transform-origin:0 0;}.ant-menu-submenu-popup.ant-menu-submenu{background:transparent;}.ant-menu-submenu-popup::before{position:absolute;inset:0;z-index:-1;width:100%;height:100%;opacity:0;content:"";}.ant-menu-submenu-popup >.ant-menu{border-radius:var(--ant-border-radius-lg);}.ant-menu-submenu-popup >.ant-menu .ant-menu-item,.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu-title{position:relative;display:block;margin:0;white-space:nowrap;cursor:pointer;transition:border-color var(--ant-motion-duration-slow),background var(--ant-motion-duration-slow),padding calc(var(--ant-motion-duration-slow) + 0.1s) var(--ant-motion-ease-in-out);}.ant-menu-submenu-popup >.ant-menu .ant-menu-item .ant-menu-item-icon,.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu-title .ant-menu-item-icon,.ant-menu-submenu-popup >.ant-menu .ant-menu-item .anticon,.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu-title .anticon{min-width:var(--ant-menu-icon-size);font-size:var(--ant-menu-icon-size);transition:font-size var(--ant-motion-duration-mid) var(--ant-motion-ease-out),margin var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out),color var(--ant-motion-duration-slow);}.ant-menu-submenu-popup >.ant-menu .ant-menu-item .ant-menu-item-icon +span,.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu-title .ant-menu-item-icon +span,.ant-menu-submenu-popup >.ant-menu .ant-menu-item .anticon +span,.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu-title .anticon +span{margin-inline-start:var(--ant-menu-icon-margin-inline-end);opacity:1;transition:opacity var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out),margin var(--ant-motion-duration-slow),color var(--ant-motion-duration-slow);}.ant-menu-submenu-popup >.ant-menu .ant-menu-item .ant-menu-item-icon,.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu-title .ant-menu-item-icon{display:inline-flex;align-items:center;color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-0.125em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}.ant-menu-submenu-popup >.ant-menu .ant-menu-item .ant-menu-item-icon >*,.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu-title .ant-menu-item-icon >*{line-height:1;}.ant-menu-submenu-popup >.ant-menu .ant-menu-item .ant-menu-item-icon svg,.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu-title .ant-menu-item-icon svg{display:inline-block;}.ant-menu-submenu-popup >.ant-menu .ant-menu-item.ant-menu-item-only-child >.anticon,.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu-title.ant-menu-item-only-child >.anticon,.ant-menu-submenu-popup >.ant-menu .ant-menu-item.ant-menu-item-only-child >.ant-menu-item-icon,.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu-title.ant-menu-item-only-child >.ant-menu-item-icon{margin-inline-end:0;}.ant-menu-submenu-popup >.ant-menu .ant-menu-item-disabled,.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu-disabled{background:none!important;cursor:not-allowed;}.ant-menu-submenu-popup >.ant-menu .ant-menu-item-disabled::after,.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu-disabled::after{border-color:transparent!important;}.ant-menu-submenu-popup >.ant-menu .ant-menu-item-disabled a,.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu-disabled a{color:inherit!important;cursor:not-allowed;pointer-events:none;}.ant-menu-submenu-popup >.ant-menu .ant-menu-item-disabled >.ant-menu-submenu-title,.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu-disabled >.ant-menu-submenu-title{color:inherit!important;cursor:not-allowed;}.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu-expand-icon,.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu-arrow{position:absolute;top:50%;inset-inline-end:var(--ant-margin);width:calc(var(--ant-font-size) / 7 * 5);color:currentcolor;transform:translateY(-50%);transition:transform var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out),opacity var(--ant-motion-duration-slow);}.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu-arrow::before,.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu-arrow::after{position:absolute;width:calc(calc(var(--ant-font-size) / 7 * 5) * 0.6);height:calc(calc(var(--ant-font-size) / 7 * 5) * 0.15);background-color:currentcolor;border-radius:var(--ant-border-radius);transition:background var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out),transform var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out),top var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out),color var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out);content:"";}.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu-arrow::before{transform:rotate(45deg) translateY(calc(calc(calc(var(--ant-font-size) / 7 * 5) * 0.25) * -1));}.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu-arrow::after{transform:rotate(-45deg) translateY(calc(calc(var(--ant-font-size) / 7 * 5) * 0.25));}.ant-menu-submenu-popup >.ant-menu .ant-menu-item,.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu>.ant-menu-submenu-title{border-radius:var(--ant-menu-sub-menu-item-border-radius);}.ant-menu-submenu-popup >.ant-menu .ant-menu-submenu-title::after{transition:transform var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out);}.ant-menu-submenu-placement-leftTop,.ant-menu-submenu-placement-bottomRight,.ant-menu-submenu{transform-origin:100% 0;}.ant-menu-submenu-placement-leftBottom,.ant-menu-submenu-placement-topRight,.ant-menu-submenu{transform-origin:100% 100%;}.ant-menu-submenu-placement-rightBottom,.ant-menu-submenu-placement-topLeft,.ant-menu-submenu{transform-origin:0 100%;}.ant-menu-submenu-placement-bottomLeft,.ant-menu-submenu-placement-rightTop,.ant-menu-submenu{transform-origin:0 0;}.ant-menu-submenu-placement-leftTop,.ant-menu-submenu-placement-leftBottom{padding-inline-end:var(--ant-padding-xs);}.ant-menu-submenu-placement-rightTop,.ant-menu-submenu-placement-rightBottom{padding-inline-start:var(--ant-padding-xs);}.ant-menu-submenu-placement-topRight,.ant-menu-submenu-placement-topLeft{padding-bottom:var(--ant-padding-xs);}.ant-menu-submenu-placement-bottomRight,.ant-menu-submenu-placement-bottomLeft{padding-top:var(--ant-padding-xs);}.ant-menu .ant-menu-submenu-expand-icon,.ant-menu .ant-menu-submenu-arrow{position:absolute;top:50%;inset-inline-end:var(--ant-margin);width:calc(var(--ant-font-size) / 7 * 5);color:currentcolor;transform:translateY(-50%);transition:transform var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out),opacity var(--ant-motion-duration-slow);}.ant-menu .ant-menu-submenu-arrow::before,.ant-menu .ant-menu-submenu-arrow::after{position:absolute;width:calc(calc(var(--ant-font-size) / 7 * 5) * 0.6);height:calc(calc(var(--ant-font-size) / 7 * 5) * 0.15);background-color:currentcolor;border-radius:var(--ant-border-radius);transition:background var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out),transform var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out),top var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out),color var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out);content:"";}.ant-menu .ant-menu-submenu-arrow::before{transform:rotate(45deg) translateY(calc(calc(calc(var(--ant-font-size) / 7 * 5) * 0.25) * -1));}.ant-menu .ant-menu-submenu-arrow::after{transform:rotate(-45deg) translateY(calc(calc(var(--ant-font-size) / 7 * 5) * 0.25));}.ant-menu-inline-collapsed .ant-menu-submenu-arrow::before,.ant-menu-inline .ant-menu-submenu-arrow::before{transform:rotate(-45deg) translateX(calc(calc(var(--ant-font-size) / 7 * 5) * 0.25));}.ant-menu-inline-collapsed .ant-menu-submenu-arrow::after,.ant-menu-inline .ant-menu-submenu-arrow::after{transform:rotate(45deg) translateX(calc(calc(calc(var(--ant-font-size) / 7 * 5) * 0.25) * -1));}.ant-menu .ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow{transform:translateY(calc(calc(var(--ant-font-size) / 7 * 5) * 0.2 * -1));}.ant-menu .ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after{transform:rotate(-45deg) translateX(calc(calc(calc(var(--ant-font-size) / 7 * 5) * 0.25) * -1));}.ant-menu .ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before{transform:rotate(45deg) translateX(calc(calc(var(--ant-font-size) / 7 * 5) * 0.25));}.ant-layout-header .ant-menu{line-height:inherit;}.ant-menu-horizontal{line-height:var(--ant-menu-horizontal-line-height);border:0;border-bottom:var(--ant-line-width) var(--ant-line-type) var(--ant-color-split);box-shadow:none;}.ant-menu-horizontal::after{display:block;clear:both;height:0;content:"\20";}.ant-menu-horizontal .ant-menu-item,.ant-menu-horizontal .ant-menu-submenu{position:relative;display:inline-block;vertical-align:bottom;padding-inline:var(--ant-menu-item-padding-inline);}.ant-menu-horizontal >.ant-menu-item:hover,.ant-menu-horizontal >.ant-menu-item-active,.ant-menu-horizontal >.ant-menu-submenu .ant-menu-submenu-title:hover{background-color:transparent;}.ant-menu-horizontal .ant-menu-item,.ant-menu-horizontal .ant-menu-submenu-title{transition:border-color var(--ant-motion-duration-slow),background var(--ant-motion-duration-slow);}.ant-menu-horizontal .ant-menu-submenu-arrow{display:none;}.ant-menu-inline.ant-menu-root,.ant-menu-vertical.ant-menu-root{box-shadow:none;}.ant-menu-inline .ant-menu-item,.ant-menu-vertical .ant-menu-item{position:relative;overflow:hidden;}.ant-menu-inline .ant-menu-item,.ant-menu-vertical .ant-menu-item,.ant-menu-inline .ant-menu-submenu-title,.ant-menu-vertical .ant-menu-submenu-title{height:var(--ant-menu-item-height);line-height:var(--ant-menu-item-height);padding-inline:var(--ant-menu-item-padding-inline);overflow:hidden;text-overflow:ellipsis;margin-inline:var(--ant-menu-item-margin-inline);margin-block:var(--ant-menu-item-margin-block);width:var(--ant-menu-item-width);}.ant-menu-inline >.ant-menu-item,.ant-menu-vertical >.ant-menu-item,.ant-menu-inline >.ant-menu-submenu>.ant-menu-submenu-title,.ant-menu-vertical >.ant-menu-submenu>.ant-menu-submenu-title{height:var(--ant-menu-item-height);line-height:var(--ant-menu-item-height);}.ant-menu-inline .ant-menu-item-group-list .ant-menu-submenu-title,.ant-menu-vertical .ant-menu-item-group-list .ant-menu-submenu-title,.ant-menu-inline .ant-menu-submenu-title,.ant-menu-vertical .ant-menu-submenu-title{padding-inline-end:calc(calc(var(--ant-font-size) / 7 * 5) + var(--ant-padding) + var(--ant-margin-xs));}.ant-menu-submenu-popup .ant-menu-vertical{box-shadow:var(--ant-box-shadow-secondary);}.ant-menu-submenu-popup .ant-menu-vertical .ant-menu-item{position:relative;overflow:hidden;}.ant-menu-submenu-popup .ant-menu-vertical .ant-menu-item,.ant-menu-submenu-popup .ant-menu-vertical .ant-menu-submenu-title{height:var(--ant-menu-item-height);line-height:var(--ant-menu-item-height);padding-inline:var(--ant-menu-item-padding-inline);overflow:hidden;text-overflow:ellipsis;margin-inline:var(--ant-menu-item-margin-inline);margin-block:var(--ant-menu-item-margin-block);width:var(--ant-menu-item-width);}.ant-menu-submenu-popup .ant-menu-vertical >.ant-menu-item,.ant-menu-submenu-popup .ant-menu-vertical >.ant-menu-submenu>.ant-menu-submenu-title{height:var(--ant-menu-item-height);line-height:var(--ant-menu-item-height);}.ant-menu-submenu-popup .ant-menu-vertical .ant-menu-item-group-list .ant-menu-submenu-title,.ant-menu-submenu-popup .ant-menu-vertical .ant-menu-submenu-title{padding-inline-end:calc(calc(var(--ant-font-size) / 7 * 5) + var(--ant-padding) + var(--ant-margin-xs));}.ant-menu-submenu-popup .ant-menu-vertical.ant-menu-sub{min-width:var(--ant-menu-dropdown-width);max-height:calc(100vh - calc(var(--ant-control-height-lg) * 2.5));padding:0;overflow:hidden;border-inline-end:0;}.ant-menu-submenu-popup .ant-menu-vertical.ant-menu-sub:not([class*='-active']){overflow-x:hidden;overflow-y:auto;}.ant-menu-inline{width:100%;}.ant-menu-inline.ant-menu-root .ant-menu-item,.ant-menu-inline.ant-menu-root .ant-menu-submenu-title{display:flex;align-items:center;transition:border-color var(--ant-motion-duration-slow),background var(--ant-motion-duration-slow),padding var(--ant-motion-duration-fast) var(--ant-motion-ease-out);}.ant-menu-inline.ant-menu-root .ant-menu-item >.ant-menu-title-content,.ant-menu-inline.ant-menu-root .ant-menu-submenu-title >.ant-menu-title-content{flex:auto;min-width:0;overflow:hidden;text-overflow:ellipsis;}.ant-menu-inline.ant-menu-root .ant-menu-item >*,.ant-menu-inline.ant-menu-root .ant-menu-submenu-title >*{flex:none;}.ant-menu-inline .ant-menu-sub.ant-menu-inline{padding:0;border:0;border-radius:0;box-shadow:none;}.ant-menu-inline .ant-menu-sub.ant-menu-inline>.ant-menu-submenu>.ant-menu-submenu-title{height:var(--ant-menu-item-height);line-height:var(--ant-menu-item-height);list-style-position:inside;list-style-type:disc;}.ant-menu-inline .ant-menu-sub.ant-menu-inline .ant-menu-item-group-title{padding-inline-start:var(--ant-padding-xl);}.ant-menu-inline .ant-menu-item{height:var(--ant-menu-item-height);line-height:var(--ant-menu-item-height);list-style-position:inside;list-style-type:disc;}.ant-menu-inline-collapsed{width:var(--ant-menu-collapsed-width);}.ant-menu-inline-collapsed.ant-menu-root .ant-menu-item >.ant-menu-inline-collapsed-noicon,.ant-menu-inline-collapsed.ant-menu-root .ant-menu-submenu .ant-menu-submenu-title >.ant-menu-inline-collapsed-noicon{font-size:var(--ant-font-size-lg);text-align:center;}.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{inset-inline-start:0;padding-inline:calc(50% - calc(var(--ant-menu-collapsed-icon-size) / 2) - var(--ant-menu-item-margin-inline));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,.ant-menu-inline-collapsed >.ant-menu-item .ant-menu-submenu-expand-icon,.ant-menu-inline-collapsed >.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-submenu-expand-icon,.ant-menu-inline-collapsed >.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-submenu-expand-icon,.ant-menu-inline-collapsed >.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-submenu-expand-icon{opacity:0;}.ant-menu-inline-collapsed >.ant-menu-item .ant-menu-item-icon,.ant-menu-inline-collapsed >.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-item-icon,.ant-menu-inline-collapsed >.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon,.ant-menu-inline-collapsed >.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon,.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:var(--ant-menu-collapsed-icon-size);line-height:var(--ant-menu-item-height);}.ant-menu-inline-collapsed >.ant-menu-item .ant-menu-item-icon +span,.ant-menu-inline-collapsed >.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-item .ant-menu-item-icon +span,.ant-menu-inline-collapsed >.ant-menu-item-group>.ant-menu-item-group-list>.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon +span,.ant-menu-inline-collapsed >.ant-menu-submenu>.ant-menu-submenu-title .ant-menu-item-icon +span,.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;opacity:0;}.ant-menu-inline-collapsed .ant-menu-item-icon,.ant-menu-inline-collapsed .anticon{display:inline-block;}.ant-menu-inline-collapsed-tooltip{pointer-events:none;}.ant-menu-inline-collapsed-tooltip .ant-menu-item-icon,.ant-menu-inline-collapsed-tooltip .anticon{display:none;}.ant-menu-inline-collapsed-tooltip a,.ant-menu-inline-collapsed-tooltip a:hover{color:var(--ant-color-text-light-solid);}.ant-menu-inline-collapsed .ant-menu-item-group-title{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding-inline:var(--ant-padding-xs);}.ant-menu-light,.ant-menu-light>.ant-menu{color:var(--ant-menu-item-color);background:var(--ant-menu-item-bg);}.ant-menu-light.ant-menu-root:focus-visible,.ant-menu-light>.ant-menu.ant-menu-root:focus-visible{outline:var(--ant-line-width-focus) solid var(--ant-color-primary-border);outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-menu-light .ant-menu-item-group-title,.ant-menu-light>.ant-menu .ant-menu-item-group-title,.ant-menu-light .ant-menu-item-extra,.ant-menu-light>.ant-menu .ant-menu-item-extra{color:var(--ant-menu-group-title-color);}.ant-menu-light .ant-menu-submenu-selected>.ant-menu-submenu-title,.ant-menu-light>.ant-menu .ant-menu-submenu-selected>.ant-menu-submenu-title{color:var(--ant-menu-sub-menu-item-selected-color);}.ant-menu-light .ant-menu-item,.ant-menu-light>.ant-menu .ant-menu-item,.ant-menu-light .ant-menu-submenu-title,.ant-menu-light>.ant-menu .ant-menu-submenu-title{color:var(--ant-menu-item-color);}.ant-menu-light .ant-menu-item:not(.ant-menu-item-disabled):focus-visible,.ant-menu-light>.ant-menu .ant-menu-item:not(.ant-menu-item-disabled):focus-visible,.ant-menu-light .ant-menu-submenu-title:not(.ant-menu-item-disabled):focus-visible,.ant-menu-light>.ant-menu .ant-menu-submenu-title:not(.ant-menu-item-disabled):focus-visible{outline:var(--ant-line-width-focus) solid var(--ant-color-primary-border);outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-menu-light .ant-menu-item-disabled,.ant-menu-light>.ant-menu .ant-menu-item-disabled,.ant-menu-light .ant-menu-submenu-disabled,.ant-menu-light>.ant-menu .ant-menu-submenu-disabled{color:var(--ant-menu-item-disabled-color)!important;}.ant-menu-light .ant-menu-item:not(.ant-menu-item-selected):not(.ant-menu-submenu-selected):hover,.ant-menu-light>.ant-menu .ant-menu-item:not(.ant-menu-item-selected):not(.ant-menu-submenu-selected):hover,.ant-menu-light .ant-menu-item:not(.ant-menu-item-selected):not(.ant-menu-submenu-selected) >.ant-menu-submenu-title:hover,.ant-menu-light>.ant-menu .ant-menu-item:not(.ant-menu-item-selected):not(.ant-menu-submenu-selected) >.ant-menu-submenu-title:hover{color:var(--ant-menu-item-hover-color);}.ant-menu-light:not(.ant-menu-horizontal) .ant-menu-item:not(.ant-menu-item-selected):hover,.ant-menu-light>.ant-menu:not(.ant-menu-horizontal) .ant-menu-item:not(.ant-menu-item-selected):hover{background-color:var(--ant-menu-item-hover-bg);}.ant-menu-light:not(.ant-menu-horizontal) .ant-menu-item:not(.ant-menu-item-selected):active,.ant-menu-light>.ant-menu:not(.ant-menu-horizontal) .ant-menu-item:not(.ant-menu-item-selected):active{background-color:var(--ant-menu-item-active-bg);}.ant-menu-light:not(.ant-menu-horizontal) .ant-menu-submenu-title:hover,.ant-menu-light>.ant-menu:not(.ant-menu-horizontal) .ant-menu-submenu-title:hover{background-color:var(--ant-menu-item-hover-bg);}.ant-menu-light:not(.ant-menu-horizontal) .ant-menu-submenu-title:active,.ant-menu-light>.ant-menu:not(.ant-menu-horizontal) .ant-menu-submenu-title:active{background-color:var(--ant-menu-item-active-bg);}.ant-menu-light .ant-menu-item-danger,.ant-menu-light>.ant-menu .ant-menu-item-danger{color:var(--ant-menu-danger-item-color);}.ant-menu-light .ant-menu-item-danger.ant-menu-item:hover:not(.ant-menu-item-selected):not(.ant-menu-submenu-selected),.ant-menu-light>.ant-menu .ant-menu-item-danger.ant-menu-item:hover:not(.ant-menu-item-selected):not(.ant-menu-submenu-selected){color:var(--ant-menu-danger-item-hover-color);}.ant-menu-light .ant-menu-item-danger.ant-menu-item:active,.ant-menu-light>.ant-menu .ant-menu-item-danger.ant-menu-item:active{background:var(--ant-menu-danger-item-active-bg);}.ant-menu-light .ant-menu-item a,.ant-menu-light>.ant-menu .ant-menu-item a,.ant-menu-light .ant-menu-item a:hover,.ant-menu-light>.ant-menu .ant-menu-item a:hover{color:inherit;}.ant-menu-light .ant-menu-item-selected,.ant-menu-light>.ant-menu .ant-menu-item-selected{color:var(--ant-menu-item-selected-color);}.ant-menu-light .ant-menu-item-selected.ant-menu-item-danger,.ant-menu-light>.ant-menu .ant-menu-item-selected.ant-menu-item-danger{color:var(--ant-menu-danger-item-selected-color);}.ant-menu-light .ant-menu-item-selected a,.ant-menu-light>.ant-menu .ant-menu-item-selected a,.ant-menu-light .ant-menu-item-selected a:hover,.ant-menu-light>.ant-menu .ant-menu-item-selected a:hover{color:inherit;}.ant-menu-light .ant-menu-item-selected,.ant-menu-light>.ant-menu .ant-menu-item-selected{background-color:var(--ant-menu-item-selected-bg);}.ant-menu-light .ant-menu-item-selected.ant-menu-item-danger,.ant-menu-light>.ant-menu .ant-menu-item-selected.ant-menu-item-danger{background-color:var(--ant-menu-danger-item-selected-bg);}.ant-menu-light.ant-menu-submenu>.ant-menu,.ant-menu-light>.ant-menu.ant-menu-submenu>.ant-menu{background-color:var(--ant-color-bg-elevated);}.ant-menu-light.ant-menu-popup>.ant-menu,.ant-menu-light>.ant-menu.ant-menu-popup>.ant-menu{background-color:var(--ant-menu-popup-bg);}.ant-menu-light.ant-menu-submenu-popup>.ant-menu,.ant-menu-light>.ant-menu.ant-menu-submenu-popup>.ant-menu{background-color:var(--ant-menu-popup-bg);}.ant-menu-light.ant-menu-horizontal >.ant-menu-item,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-item,.ant-menu-light.ant-menu-horizontal >.ant-menu-submenu,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-submenu{top:var(--ant-menu-active-bar-border-width);margin-top:calc(var(--ant-menu-active-bar-border-width) * -1);margin-bottom:0;border-radius:var(--ant-menu-horizontal-item-border-radius);}.ant-menu-light.ant-menu-horizontal >.ant-menu-item::after,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-item::after,.ant-menu-light.ant-menu-horizontal >.ant-menu-submenu::after,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-submenu::after{position:absolute;inset-inline:var(--ant-menu-item-padding-inline);bottom:0;border-bottom:var(--ant-menu-active-bar-height) solid transparent;transition:border-color var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out);content:"";}.ant-menu-light.ant-menu-horizontal >.ant-menu-item:hover,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-item:hover,.ant-menu-light.ant-menu-horizontal >.ant-menu-submenu:hover,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-submenu:hover,.ant-menu-light.ant-menu-horizontal >.ant-menu-item-active,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-item-active,.ant-menu-light.ant-menu-horizontal >.ant-menu-submenu-active,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-submenu-active,.ant-menu-light.ant-menu-horizontal >.ant-menu-item-open,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-item-open,.ant-menu-light.ant-menu-horizontal >.ant-menu-submenu-open,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-submenu-open{background:var(--ant-menu-horizontal-item-hover-bg);}.ant-menu-light.ant-menu-horizontal >.ant-menu-item:hover::after,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-item:hover::after,.ant-menu-light.ant-menu-horizontal >.ant-menu-submenu:hover::after,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-submenu:hover::after,.ant-menu-light.ant-menu-horizontal >.ant-menu-item-active::after,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-item-active::after,.ant-menu-light.ant-menu-horizontal >.ant-menu-submenu-active::after,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-submenu-active::after,.ant-menu-light.ant-menu-horizontal >.ant-menu-item-open::after,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-item-open::after,.ant-menu-light.ant-menu-horizontal >.ant-menu-submenu-open::after,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-submenu-open::after{border-bottom-width:var(--ant-menu-active-bar-height);border-bottom-color:var(--ant-menu-horizontal-item-selected-color);}.ant-menu-light.ant-menu-horizontal >.ant-menu-item-selected,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-item-selected,.ant-menu-light.ant-menu-horizontal >.ant-menu-submenu-selected,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-submenu-selected{color:var(--ant-menu-horizontal-item-selected-color);background-color:var(--ant-menu-horizontal-item-selected-bg);}.ant-menu-light.ant-menu-horizontal >.ant-menu-item-selected:hover,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-item-selected:hover,.ant-menu-light.ant-menu-horizontal >.ant-menu-submenu-selected:hover,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-submenu-selected:hover{background-color:var(--ant-menu-horizontal-item-selected-bg);}.ant-menu-light.ant-menu-horizontal >.ant-menu-item-selected::after,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-item-selected::after,.ant-menu-light.ant-menu-horizontal >.ant-menu-submenu-selected::after,.ant-menu-light>.ant-menu.ant-menu-horizontal >.ant-menu-submenu-selected::after{border-bottom-width:var(--ant-menu-active-bar-height);border-bottom-color:var(--ant-menu-horizontal-item-selected-color);}.ant-menu-light.ant-menu-root.ant-menu-inline,.ant-menu-light>.ant-menu.ant-menu-root.ant-menu-inline,.ant-menu-light.ant-menu-root.ant-menu-vertical,.ant-menu-light>.ant-menu.ant-menu-root.ant-menu-vertical{border-inline-end:var(--ant-menu-active-bar-border-width) var(--ant-line-type) var(--ant-color-split);}.ant-menu-light.ant-menu-inline .ant-menu-sub.ant-menu-inline,.ant-menu-light>.ant-menu.ant-menu-inline .ant-menu-sub.ant-menu-inline{background:var(--ant-menu-sub-menu-item-bg);}.ant-menu-light.ant-menu-inline .ant-menu-item,.ant-menu-light>.ant-menu.ant-menu-inline .ant-menu-item{position:relative;}.ant-menu-light.ant-menu-inline .ant-menu-item::after,.ant-menu-light>.ant-menu.ant-menu-inline .ant-menu-item::after{position:absolute;inset-block:0;inset-inline-end:0;border-inline-end:var(--ant-menu-active-bar-width) solid var(--ant-menu-item-selected-color);transform:scaleY(0.0001);opacity:0;transition:transform var(--ant-motion-duration-mid) var(--ant-motion-ease-out),opacity var(--ant-motion-duration-mid) var(--ant-motion-ease-out);content:"";}.ant-menu-light.ant-menu-inline .ant-menu-item.ant-menu-item-danger::after,.ant-menu-light>.ant-menu.ant-menu-inline .ant-menu-item.ant-menu-item-danger::after{border-inline-end-color:var(--ant-menu-danger-item-selected-color);}.ant-menu-light.ant-menu-inline .ant-menu-selected::after,.ant-menu-light>.ant-menu.ant-menu-inline .ant-menu-selected::after,.ant-menu-light.ant-menu-inline .ant-menu-item-selected::after,.ant-menu-light>.ant-menu.ant-menu-inline .ant-menu-item-selected::after{transform:scaleY(1);opacity:1;transition:transform var(--ant-motion-duration-mid) var(--ant-motion-ease-in-out),opacity var(--ant-motion-duration-mid) var(--ant-motion-ease-in-out);}.ant-menu-dark,.ant-menu-dark>.ant-menu{color:var(--ant-menu-dark-item-color);background:var(--ant-menu-dark-item-bg);}.ant-menu-dark.ant-menu-root:focus-visible,.ant-menu-dark>.ant-menu.ant-menu-root:focus-visible{outline:var(--ant-line-width-focus) solid var(--ant-color-primary-border);outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-menu-dark .ant-menu-item-group-title,.ant-menu-dark>.ant-menu .ant-menu-item-group-title,.ant-menu-dark .ant-menu-item-extra,.ant-menu-dark>.ant-menu .ant-menu-item-extra{color:var(--ant-menu-dark-group-title-color);}.ant-menu-dark .ant-menu-submenu-selected>.ant-menu-submenu-title,.ant-menu-dark>.ant-menu .ant-menu-submenu-selected>.ant-menu-submenu-title{color:var(--ant-menu-dark-item-selected-color);}.ant-menu-dark .ant-menu-item,.ant-menu-dark>.ant-menu .ant-menu-item,.ant-menu-dark .ant-menu-submenu-title,.ant-menu-dark>.ant-menu .ant-menu-submenu-title{color:var(--ant-menu-dark-item-color);}.ant-menu-dark .ant-menu-item:not(.ant-menu-item-disabled):focus-visible,.ant-menu-dark>.ant-menu .ant-menu-item:not(.ant-menu-item-disabled):focus-visible,.ant-menu-dark .ant-menu-submenu-title:not(.ant-menu-item-disabled):focus-visible,.ant-menu-dark>.ant-menu .ant-menu-submenu-title:not(.ant-menu-item-disabled):focus-visible{outline:var(--ant-line-width-focus) solid var(--ant-color-primary-border);outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-menu-dark .ant-menu-item-disabled,.ant-menu-dark>.ant-menu .ant-menu-item-disabled,.ant-menu-dark .ant-menu-submenu-disabled,.ant-menu-dark>.ant-menu .ant-menu-submenu-disabled{color:var(--ant-menu-dark-item-disabled-color)!important;}.ant-menu-dark .ant-menu-item:not(.ant-menu-item-selected):not(.ant-menu-submenu-selected):hover,.ant-menu-dark>.ant-menu .ant-menu-item:not(.ant-menu-item-selected):not(.ant-menu-submenu-selected):hover,.ant-menu-dark .ant-menu-item:not(.ant-menu-item-selected):not(.ant-menu-submenu-selected) >.ant-menu-submenu-title:hover,.ant-menu-dark>.ant-menu .ant-menu-item:not(.ant-menu-item-selected):not(.ant-menu-submenu-selected) >.ant-menu-submenu-title:hover{color:var(--ant-menu-dark-item-hover-color);}.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item:not(.ant-menu-item-selected):hover,.ant-menu-dark>.ant-menu:not(.ant-menu-horizontal) .ant-menu-item:not(.ant-menu-item-selected):hover{background-color:var(--ant-menu-dark-item-hover-bg);}.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item:not(.ant-menu-item-selected):active,.ant-menu-dark>.ant-menu:not(.ant-menu-horizontal) .ant-menu-item:not(.ant-menu-item-selected):active{background-color:transparent;}.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-submenu-title:hover,.ant-menu-dark>.ant-menu:not(.ant-menu-horizontal) .ant-menu-submenu-title:hover{background-color:var(--ant-menu-dark-item-hover-bg);}.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-submenu-title:active,.ant-menu-dark>.ant-menu:not(.ant-menu-horizontal) .ant-menu-submenu-title:active{background-color:transparent;}.ant-menu-dark .ant-menu-item-danger,.ant-menu-dark>.ant-menu .ant-menu-item-danger{color:var(--ant-menu-dark-danger-item-color);}.ant-menu-dark .ant-menu-item-danger.ant-menu-item:hover:not(.ant-menu-item-selected):not(.ant-menu-submenu-selected),.ant-menu-dark>.ant-menu .ant-menu-item-danger.ant-menu-item:hover:not(.ant-menu-item-selected):not(.ant-menu-submenu-selected){color:var(--ant-menu-dark-danger-item-hover-color);}.ant-menu-dark .ant-menu-item-danger.ant-menu-item:active,.ant-menu-dark>.ant-menu .ant-menu-item-danger.ant-menu-item:active{background:var(--ant-menu-dark-danger-item-active-bg);}.ant-menu-dark .ant-menu-item a,.ant-menu-dark>.ant-menu .ant-menu-item a,.ant-menu-dark .ant-menu-item a:hover,.ant-menu-dark>.ant-menu .ant-menu-item a:hover{color:inherit;}.ant-menu-dark .ant-menu-item-selected,.ant-menu-dark>.ant-menu .ant-menu-item-selected{color:var(--ant-menu-dark-item-selected-color);}.ant-menu-dark .ant-menu-item-selected.ant-menu-item-danger,.ant-menu-dark>.ant-menu .ant-menu-item-selected.ant-menu-item-danger{color:var(--ant-menu-dark-danger-item-selected-color);}.ant-menu-dark .ant-menu-item-selected a,.ant-menu-dark>.ant-menu .ant-menu-item-selected a,.ant-menu-dark .ant-menu-item-selected a:hover,.ant-menu-dark>.ant-menu .ant-menu-item-selected a:hover{color:inherit;}.ant-menu-dark .ant-menu-item-selected,.ant-menu-dark>.ant-menu .ant-menu-item-selected{background-color:var(--ant-menu-dark-item-selected-bg);}.ant-menu-dark .ant-menu-item-selected.ant-menu-item-danger,.ant-menu-dark>.ant-menu .ant-menu-item-selected.ant-menu-item-danger{background-color:var(--ant-menu-dark-danger-item-selected-bg);}.ant-menu-dark.ant-menu-submenu>.ant-menu,.ant-menu-dark>.ant-menu.ant-menu-submenu>.ant-menu{background-color:var(--ant-menu-dark-sub-menu-item-bg);}.ant-menu-dark.ant-menu-popup>.ant-menu,.ant-menu-dark>.ant-menu.ant-menu-popup>.ant-menu{background-color:var(--ant-menu-dark-popup-bg);}.ant-menu-dark.ant-menu-submenu-popup>.ant-menu,.ant-menu-dark>.ant-menu.ant-menu-submenu-popup>.ant-menu{background-color:var(--ant-menu-dark-popup-bg);}.ant-menu-dark.ant-menu-horizontal,.ant-menu-dark>.ant-menu.ant-menu-horizontal{border-bottom:0;}.ant-menu-dark.ant-menu-horizontal >.ant-menu-item,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-item,.ant-menu-dark.ant-menu-horizontal >.ant-menu-submenu,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-submenu{top:0;margin-top:calc(0px * -1);margin-bottom:0;border-radius:var(--ant-menu-horizontal-item-border-radius);}.ant-menu-dark.ant-menu-horizontal >.ant-menu-item::after,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-item::after,.ant-menu-dark.ant-menu-horizontal >.ant-menu-submenu::after,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-submenu::after{position:absolute;inset-inline:var(--ant-menu-item-padding-inline);bottom:0;border-bottom:0px solid transparent;transition:border-color var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out);content:"";}.ant-menu-dark.ant-menu-horizontal >.ant-menu-item:hover,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-item:hover,.ant-menu-dark.ant-menu-horizontal >.ant-menu-submenu:hover,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-submenu:hover,.ant-menu-dark.ant-menu-horizontal >.ant-menu-item-active,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-item-active,.ant-menu-dark.ant-menu-horizontal >.ant-menu-submenu-active,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-submenu-active,.ant-menu-dark.ant-menu-horizontal >.ant-menu-item-open,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-item-open,.ant-menu-dark.ant-menu-horizontal >.ant-menu-submenu-open,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-submenu-open{background:var(--ant-menu-horizontal-item-hover-bg);}.ant-menu-dark.ant-menu-horizontal >.ant-menu-item:hover::after,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-item:hover::after,.ant-menu-dark.ant-menu-horizontal >.ant-menu-submenu:hover::after,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-submenu:hover::after,.ant-menu-dark.ant-menu-horizontal >.ant-menu-item-active::after,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-item-active::after,.ant-menu-dark.ant-menu-horizontal >.ant-menu-submenu-active::after,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-submenu-active::after,.ant-menu-dark.ant-menu-horizontal >.ant-menu-item-open::after,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-item-open::after,.ant-menu-dark.ant-menu-horizontal >.ant-menu-submenu-open::after,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-submenu-open::after{border-bottom-width:0;border-bottom-color:var(--ant-menu-dark-item-selected-color);}.ant-menu-dark.ant-menu-horizontal >.ant-menu-item-selected,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-item-selected,.ant-menu-dark.ant-menu-horizontal >.ant-menu-submenu-selected,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-submenu-selected{color:var(--ant-menu-dark-item-selected-color);background-color:var(--ant-menu-dark-item-selected-bg);}.ant-menu-dark.ant-menu-horizontal >.ant-menu-item-selected:hover,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-item-selected:hover,.ant-menu-dark.ant-menu-horizontal >.ant-menu-submenu-selected:hover,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-submenu-selected:hover{background-color:var(--ant-menu-dark-item-selected-bg);}.ant-menu-dark.ant-menu-horizontal >.ant-menu-item-selected::after,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-item-selected::after,.ant-menu-dark.ant-menu-horizontal >.ant-menu-submenu-selected::after,.ant-menu-dark>.ant-menu.ant-menu-horizontal >.ant-menu-submenu-selected::after{border-bottom-width:0;border-bottom-color:var(--ant-menu-dark-item-selected-color);}.ant-menu-dark.ant-menu-root.ant-menu-inline,.ant-menu-dark>.ant-menu.ant-menu-root.ant-menu-inline,.ant-menu-dark.ant-menu-root.ant-menu-vertical,.ant-menu-dark>.ant-menu.ant-menu-root.ant-menu-vertical{border-inline-end:0px var(--ant-line-type) var(--ant-color-split);}.ant-menu-dark.ant-menu-inline .ant-menu-sub.ant-menu-inline,.ant-menu-dark>.ant-menu.ant-menu-inline .ant-menu-sub.ant-menu-inline{background:var(--ant-menu-dark-sub-menu-item-bg);}.ant-menu-dark.ant-menu-inline .ant-menu-item,.ant-menu-dark>.ant-menu.ant-menu-inline .ant-menu-item{position:relative;}.ant-menu-dark.ant-menu-inline .ant-menu-item::after,.ant-menu-dark>.ant-menu.ant-menu-inline .ant-menu-item::after{position:absolute;inset-block:0;inset-inline-end:0;border-inline-end:var(--ant-menu-active-bar-width) solid var(--ant-menu-dark-item-selected-color);transform:scaleY(0.0001);opacity:0;transition:transform var(--ant-motion-duration-mid) var(--ant-motion-ease-out),opacity var(--ant-motion-duration-mid) var(--ant-motion-ease-out);content:"";}.ant-menu-dark.ant-menu-inline .ant-menu-item.ant-menu-item-danger::after,.ant-menu-dark>.ant-menu.ant-menu-inline .ant-menu-item.ant-menu-item-danger::after{border-inline-end-color:var(--ant-menu-dark-danger-item-selected-color);}.ant-menu-dark.ant-menu-inline .ant-menu-selected::after,.ant-menu-dark>.ant-menu.ant-menu-inline .ant-menu-selected::after,.ant-menu-dark.ant-menu-inline .ant-menu-item-selected::after,.ant-menu-dark>.ant-menu.ant-menu-inline .ant-menu-item-selected::after{transform:scaleY(1);opacity:1;transition:transform var(--ant-motion-duration-mid) var(--ant-motion-ease-in-out),opacity var(--ant-motion-duration-mid) var(--ant-motion-ease-in-out);}.ant-menu-rtl{direction:rtl;}.ant-menu-submenu-rtl{transform-origin:100% 0;}.ant-menu-rtl.ant-menu-vertical .ant-menu-submenu-arrow::before,.ant-menu-submenu-rtl .ant-menu-vertical .ant-menu-submenu-arrow::before{transform:rotate(-45deg) translateY(calc(calc(calc(var(--ant-font-size) / 7 * 5) * 0.25) * -1));}.ant-menu-rtl.ant-menu-vertical .ant-menu-submenu-arrow::after,.ant-menu-submenu-rtl .ant-menu-vertical .ant-menu-submenu-arrow::after{transform:rotate(45deg) translateY(calc(calc(var(--ant-font-size) / 7 * 5) * 0.25));}.ant-menu .ant-motion-collapse-legacy{overflow:hidden;}.ant-menu .ant-motion-collapse-legacy-active{transition:height var(--ant-motion-duration-mid) var(--ant-motion-ease-in-out),opacity var(--ant-motion-duration-mid) var(--ant-motion-ease-in-out)!important;}.ant-menu .ant-motion-collapse{overflow:hidden;transition:height var(--ant-motion-duration-mid) var(--ant-motion-ease-in-out),opacity var(--ant-motion-duration-mid) var(--ant-motion-ease-in-out)!important;}.ant-slide-up-enter,.ant-slide-up-appear{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-slide-up-leave{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-slide-up-enter.ant-slide-up-enter-active,.ant-slide-up-appear.ant-slide-up-appear-active{animation-name:antSlideUpIn;animation-play-state:running;}.ant-slide-up-leave.ant-slide-up-leave-active{animation-name:antSlideUpOut;animation-play-state:running;pointer-events:none;}.ant-slide-up-enter,.ant-slide-up-appear{transform:scale(0);transform-origin:0% 0%;opacity:0;animation-timing-function:var(--ant-motion-ease-out-quint);}.ant-slide-up-enter-prepare,.ant-slide-up-appear-prepare{transform:scale(1);}.ant-slide-up-leave{animation-timing-function:var(--ant-motion-ease-in-quint);}.ant-slide-down-enter,.ant-slide-down-appear{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-slide-down-leave{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-slide-down-enter.ant-slide-down-enter-active,.ant-slide-down-appear.ant-slide-down-appear-active{animation-name:antSlideDownIn;animation-play-state:running;}.ant-slide-down-leave.ant-slide-down-leave-active{animation-name:antSlideDownOut;animation-play-state:running;pointer-events:none;}.ant-slide-down-enter,.ant-slide-down-appear{transform:scale(0);transform-origin:0% 0%;opacity:0;animation-timing-function:var(--ant-motion-ease-out-quint);}.ant-slide-down-enter-prepare,.ant-slide-down-appear-prepare{transform:scale(1);}.ant-slide-down-leave{animation-timing-function:var(--ant-motion-ease-in-quint);}.ant-zoom-big-enter,.ant-zoom-big-appear{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-zoom-big-leave{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-zoom-big-enter.ant-zoom-big-enter-active,.ant-zoom-big-appear.ant-zoom-big-appear-active{animation-name:antZoomBigIn;animation-play-state:running;}.ant-zoom-big-leave.ant-zoom-big-leave-active{animation-name:antZoomBigOut;animation-play-state:running;pointer-events:none;}.ant-zoom-big-enter,.ant-zoom-big-appear{transform:scale(0);opacity:0;animation-timing-function:var(--ant-motion-ease-out-circ);}.ant-zoom-big-enter-prepare,.ant-zoom-big-appear-prepare{transform:none;}.ant-zoom-big-leave{animation-timing-function:var(--ant-motion-ease-in-out-circ);}@keyframes antSlideUpIn{0%{transform:scaleY(0.8);transform-origin:0% 0%;opacity:0;}100%{transform:scaleY(1);transform-origin:0% 0%;opacity:1;}}@keyframes antSlideUpOut{0%{transform:scaleY(1);transform-origin:0% 0%;opacity:1;}100%{transform:scaleY(0.8);transform-origin:0% 0%;opacity:0;}}@keyframes antSlideDownIn{0%{transform:scaleY(0.8);transform-origin:100% 100%;opacity:0;}100%{transform:scaleY(1);transform-origin:100% 100%;opacity:1;}}@keyframes antSlideDownOut{0%{transform:scaleY(1);transform-origin:100% 100%;opacity:1;}100%{transform:scaleY(0.8);transform-origin:100% 100%;opacity:0;}}@keyframes antZoomBigIn{0%{transform:scale(0.8);opacity:0;}100%{transform:scale(1);opacity:1;}}@keyframes antZoomBigOut{0%{transform:scale(1);}100%{transform:scale(0.8);opacity:0;}}.ant-tooltip{box-sizing:border-box;margin:0;padding:0;color:var(--ant-color-text);font-size:var(--ant-font-size);line-height:var(--ant-line-height);list-style:none;font-family:var(--ant-font-family);position:absolute;z-index:var(--ant-tooltip-z-index-popup);display:block;width:max-content;max-width:250px;visibility:visible;--valid-offset-x:var(--arrow-offset-horizontal, var(--arrow-x));transform-origin:var(--valid-offset-x, 50%) var(--arrow-y, 50%);--antd-arrow-background-color:var(--ant-color-bg-spotlight);}.ant-tooltip-hidden{display:none;}.ant-tooltip .ant-tooltip-inner{min-width:calc(var(--ant-border-radius) * 2 + var(--ant-size-popup-arrow));min-height:var(--ant-control-height);padding:calc(var(--ant-padding-sm) / 2) var(--ant-padding-xs);color:var(--ant-color-text-light-solid);text-align:start;text-decoration:none;word-wrap:break-word;background-color:var(--ant-color-bg-spotlight);border-radius:var(--ant-border-radius);box-shadow:var(--ant-box-shadow-secondary);box-sizing:border-box;}.ant-tooltip-placement-topLeft,.ant-tooltip-placement-topRight,.ant-tooltip-placement-bottomLeft,.ant-tooltip-placement-bottomRight{min-width:calc(var(--ant-border-radius) + var(--ant-size-popup-arrow) + var(--ant-tooltip-arrow-offset-horizontal));}.ant-tooltip-placement-left .ant-tooltip-inner,.ant-tooltip-placement-leftTop .ant-tooltip-inner,.ant-tooltip-placement-leftBottom .ant-tooltip-inner,.ant-tooltip-placement-right .ant-tooltip-inner,.ant-tooltip-placement-rightTop .ant-tooltip-inner,.ant-tooltip-placement-rightBottom .ant-tooltip-inner{border-radius:min(var(--ant-border-radius),8px);}.ant-tooltip .ant-tooltip-content{position:relative;}.ant-tooltip.ant-tooltip-blue .ant-tooltip-inner{background-color:var(--ant-blue-6);}.ant-tooltip.ant-tooltip-blue .ant-tooltip-arrow{--antd-arrow-background-color:var(--ant-blue-6);}.ant-tooltip.ant-tooltip-purple .ant-tooltip-inner{background-color:var(--ant-purple-6);}.ant-tooltip.ant-tooltip-purple .ant-tooltip-arrow{--antd-arrow-background-color:var(--ant-purple-6);}.ant-tooltip.ant-tooltip-cyan .ant-tooltip-inner{background-color:var(--ant-cyan-6);}.ant-tooltip.ant-tooltip-cyan .ant-tooltip-arrow{--antd-arrow-background-color:var(--ant-cyan-6);}.ant-tooltip.ant-tooltip-green .ant-tooltip-inner{background-color:var(--ant-green-6);}.ant-tooltip.ant-tooltip-green .ant-tooltip-arrow{--antd-arrow-background-color:var(--ant-green-6);}.ant-tooltip.ant-tooltip-magenta .ant-tooltip-inner{background-color:var(--ant-magenta-6);}.ant-tooltip.ant-tooltip-magenta .ant-tooltip-arrow{--antd-arrow-background-color:var(--ant-magenta-6);}.ant-tooltip.ant-tooltip-pink .ant-tooltip-inner{background-color:var(--ant-pink-6);}.ant-tooltip.ant-tooltip-pink .ant-tooltip-arrow{--antd-arrow-background-color:var(--ant-pink-6);}.ant-tooltip.ant-tooltip-red .ant-tooltip-inner{background-color:var(--ant-red-6);}.ant-tooltip.ant-tooltip-red .ant-tooltip-arrow{--antd-arrow-background-color:var(--ant-red-6);}.ant-tooltip.ant-tooltip-orange .ant-tooltip-inner{background-color:var(--ant-orange-6);}.ant-tooltip.ant-tooltip-orange .ant-tooltip-arrow{--antd-arrow-background-color:var(--ant-orange-6);}.ant-tooltip.ant-tooltip-yellow .ant-tooltip-inner{background-color:var(--ant-yellow-6);}.ant-tooltip.ant-tooltip-yellow .ant-tooltip-arrow{--antd-arrow-background-color:var(--ant-yellow-6);}.ant-tooltip.ant-tooltip-volcano .ant-tooltip-inner{background-color:var(--ant-volcano-6);}.ant-tooltip.ant-tooltip-volcano .ant-tooltip-arrow{--antd-arrow-background-color:var(--ant-volcano-6);}.ant-tooltip.ant-tooltip-geekblue .ant-tooltip-inner{background-color:var(--ant-geekblue-6);}.ant-tooltip.ant-tooltip-geekblue .ant-tooltip-arrow{--antd-arrow-background-color:var(--ant-geekblue-6);}.ant-tooltip.ant-tooltip-lime .ant-tooltip-inner{background-color:var(--ant-lime-6);}.ant-tooltip.ant-tooltip-lime .ant-tooltip-arrow{--antd-arrow-background-color:var(--ant-lime-6);}.ant-tooltip.ant-tooltip-gold .ant-tooltip-inner{background-color:var(--ant-gold-6);}.ant-tooltip.ant-tooltip-gold .ant-tooltip-arrow{--antd-arrow-background-color:var(--ant-gold-6);}.ant-tooltip-rtl{direction:rtl;}.ant-tooltip .ant-tooltip-arrow{position:absolute;z-index:1;display:block;pointer-events:none;width:var(--ant-size-popup-arrow);height:var(--ant-size-popup-arrow);overflow:hidden;}.ant-tooltip .ant-tooltip-arrow::before{position:absolute;bottom:0;inset-inline-start:0;width:var(--ant-size-popup-arrow);height:calc(var(--ant-size-popup-arrow) / 2);background:var(--antd-arrow-background-color);clip-path:var(--ant-tooltip-arrow-polygon);clip-path:var(--ant-tooltip-arrow-path);content:"";}.ant-tooltip .ant-tooltip-arrow::after{content:"";position:absolute;width:var(--ant-tooltip-arrow-shadow-width);height:var(--ant-tooltip-arrow-shadow-width);bottom:0;inset-inline:0;margin:auto;border-radius:0 0 var(--ant-border-radius-xs) 0;transform:translateY(50%) rotate(-135deg);box-shadow:var(--ant-box-shadow-popover-arrow);z-index:0;background:transparent;}.ant-tooltip .ant-tooltip-arrow:before{background:var(--antd-arrow-background-color);}.ant-tooltip-placement-top>.ant-tooltip-arrow,.ant-tooltip-placement-topLeft>.ant-tooltip-arrow,.ant-tooltip-placement-topRight>.ant-tooltip-arrow{bottom:0;transform:translateY(100%) rotate(180deg);}.ant-tooltip-placement-top>.ant-tooltip-arrow{left:50%;transform:translateX(-50%) translateY(100%) rotate(180deg);}.ant-tooltip-placement-topLeft{--arrow-offset-horizontal:var(--ant-tooltip-arrow-offset-horizontal);}.ant-tooltip-placement-topLeft >.ant-tooltip-arrow{left:var(--ant-tooltip-arrow-offset-horizontal);}.ant-tooltip-placement-topRight{--arrow-offset-horizontal:calc(100% - var(--ant-tooltip-arrow-offset-horizontal));}.ant-tooltip-placement-topRight >.ant-tooltip-arrow{right:var(--ant-tooltip-arrow-offset-horizontal);}.ant-tooltip-placement-bottom>.ant-tooltip-arrow,.ant-tooltip-placement-bottomLeft>.ant-tooltip-arrow,.ant-tooltip-placement-bottomRight>.ant-tooltip-arrow{top:0;transform:translateY(-100%);}.ant-tooltip-placement-bottom>.ant-tooltip-arrow{left:50%;transform:translateX(-50%) translateY(-100%);}.ant-tooltip-placement-bottomLeft{--arrow-offset-horizontal:var(--ant-tooltip-arrow-offset-horizontal);}.ant-tooltip-placement-bottomLeft >.ant-tooltip-arrow{left:var(--ant-tooltip-arrow-offset-horizontal);}.ant-tooltip-placement-bottomRight{--arrow-offset-horizontal:calc(100% - var(--ant-tooltip-arrow-offset-horizontal));}.ant-tooltip-placement-bottomRight >.ant-tooltip-arrow{right:var(--ant-tooltip-arrow-offset-horizontal);}.ant-tooltip-placement-left>.ant-tooltip-arrow,.ant-tooltip-placement-leftTop>.ant-tooltip-arrow,.ant-tooltip-placement-leftBottom>.ant-tooltip-arrow{right:0;transform:translateX(100%) rotate(90deg);}.ant-tooltip-placement-left>.ant-tooltip-arrow{top:50%;transform:translateY(-50%) translateX(100%) rotate(90deg);}.ant-tooltip-placement-leftTop>.ant-tooltip-arrow{top:var(--ant-tooltip-arrow-offset-vertical);}.ant-tooltip-placement-leftBottom>.ant-tooltip-arrow{bottom:var(--ant-tooltip-arrow-offset-vertical);}.ant-tooltip-placement-right>.ant-tooltip-arrow,.ant-tooltip-placement-rightTop>.ant-tooltip-arrow,.ant-tooltip-placement-rightBottom>.ant-tooltip-arrow{left:0;transform:translateX(-100%) rotate(-90deg);}.ant-tooltip-placement-right>.ant-tooltip-arrow{top:50%;transform:translateY(-50%) translateX(-100%) rotate(-90deg);}.ant-tooltip-placement-rightTop>.ant-tooltip-arrow{top:var(--ant-tooltip-arrow-offset-vertical);}.ant-tooltip-placement-rightBottom>.ant-tooltip-arrow{bottom:var(--ant-tooltip-arrow-offset-vertical);}.ant-tooltip-pure{position:relative;max-width:none;margin:var(--ant-size-popup-arrow);}.ant-zoom-big-fast-enter,.ant-zoom-big-fast-appear{animation-duration:var(--ant-motion-duration-fast);animation-fill-mode:both;animation-play-state:paused;}.ant-zoom-big-fast-leave{animation-duration:var(--ant-motion-duration-fast);animation-fill-mode:both;animation-play-state:paused;}.ant-zoom-big-fast-enter.ant-zoom-big-fast-enter-active,.ant-zoom-big-fast-appear.ant-zoom-big-fast-appear-active{animation-name:antZoomBigIn;animation-play-state:running;}.ant-zoom-big-fast-leave.ant-zoom-big-fast-leave-active{animation-name:antZoomBigOut;animation-play-state:running;pointer-events:none;}.ant-zoom-big-fast-enter,.ant-zoom-big-fast-appear{transform:scale(0);opacity:0;animation-timing-function:var(--ant-motion-ease-out-circ);}.ant-zoom-big-fast-enter-prepare,.ant-zoom-big-fast-appear-prepare{transform:none;}.ant-zoom-big-fast-leave{animation-timing-function:var(--ant-motion-ease-in-out-circ);}.ant-select-css-var{font-family:var(--ant-font-family);font-size:var(--ant-font-size);box-sizing:border-box;}.ant-select-css-var::before,.ant-select-css-var::after{box-sizing:border-box;}.ant-select-css-var [class^="ant-select"],.ant-select-css-var [class*=" ant-select"]{box-sizing:border-box;}.ant-select-css-var [class^="ant-select"]::before,.ant-select-css-var [class*=" ant-select"]::before,.ant-select-css-var [class^="ant-select"]::after,.ant-select-css-var [class*=" ant-select"]::after{box-sizing:border-box;}.ant-select.ant-select-in-form-item{width:100%;}.ant-select{box-sizing:border-box;margin:0;padding:0;color:var(--ant-color-text);font-size:var(--ant-font-size);line-height:var(--ant-line-height);list-style:none;font-family:var(--ant-font-family);position:relative;display:inline-flex;cursor:pointer;}.ant-select:not(.ant-select-customize-input) .ant-select-selector{position:relative;transition:all var(--ant-motion-duration-mid) var(--ant-motion-ease-in-out);}.ant-select:not(.ant-select-customize-input) .ant-select-selector input{cursor:pointer;}.ant-select-show-search.ant-select:not(.ant-select-customize-input) .ant-select-selector{cursor:text;}.ant-select-show-search.ant-select:not(.ant-select-customize-input) .ant-select-selector input{cursor:auto;color:inherit;height:100%;}.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector{cursor:not-allowed;}.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector input{cursor:not-allowed;}.ant-select:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input{margin:0;padding:0;background:transparent;border:none;outline:none;appearance:none;font-family:inherit;}.ant-select:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input::-webkit-search-cancel-button{display:none;appearance:none;}.ant-select .ant-select-selection-item{flex:1;font-weight:normal;position:relative;user-select:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}.ant-select .ant-select-selection-item >.ant-typography{display:inline;}.ant-select .ant-select-selection-placeholder{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;flex:1;color:var(--ant-color-text-placeholder);pointer-events:none;}.ant-select .ant-select-arrow{display:flex;align-items:center;color:var(--ant-color-text-quaternary);font-style:normal;line-height:1;text-align:center;text-transform:none;vertical-align:-0.125em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:absolute;top:50%;inset-inline-start:auto;inset-inline-end:calc(var(--ant-padding-sm) - 1px);height:var(--ant-font-size-icon);margin-top:calc(var(--ant-font-size-icon) * -1 / 2);font-size:var(--ant-font-size-icon);pointer-events:none;transition:opacity var(--ant-motion-duration-slow) ease;}.ant-select .ant-select-arrow >*{line-height:1;}.ant-select .ant-select-arrow svg{display:inline-block;}.ant-select .ant-select-arrow .anticon{vertical-align:top;transition:transform var(--ant-motion-duration-slow);}.ant-select .ant-select-arrow .anticon >svg{vertical-align:top;}.ant-select .ant-select-arrow .anticon:not(.ant-select-suffix){pointer-events:auto;}.ant-select-disabled .ant-select .ant-select-arrow{cursor:not-allowed;}.ant-select .ant-select-arrow >*:not(:last-child){margin-inline-end:8px;}.ant-select .ant-select-selection-wrap{display:flex;width:100%;position:relative;min-width:0;}.ant-select .ant-select-selection-wrap:after{content:"\a0";width:0;overflow:hidden;}.ant-select .ant-select-prefix{flex:none;margin-inline-end:var(--ant-select-select-affix-padding);}.ant-select .ant-select-clear{position:absolute;top:50%;inset-inline-start:auto;inset-inline-end:calc(var(--ant-padding-sm) - 1px);z-index:1;display:inline-block;width:var(--ant-font-size-icon);height:var(--ant-font-size-icon);margin-top:calc(var(--ant-font-size-icon) * -1 / 2);color:var(--ant-color-text-quaternary);font-size:var(--ant-font-size-icon);font-style:normal;line-height:1;text-align:center;text-transform:none;cursor:pointer;opacity:0;transition:color var(--ant-motion-duration-mid) ease,opacity var(--ant-motion-duration-slow) ease;text-rendering:auto;}.ant-select .ant-select-clear:before{display:block;}.ant-select .ant-select-clear:hover{color:var(--ant-color-icon);}@media(hover:none){.ant-select .ant-select-clear{opacity:1;background:var(--ant-color-bg-base);border-radius:50%;}}.ant-select:hover .ant-select-clear{opacity:1;background:var(--ant-color-bg-base);border-radius:50%;}.ant-select-status-error.ant-select-has-feedback .ant-select-clear,.ant-select-status-warning.ant-select-has-feedback .ant-select-clear,.ant-select-status-success.ant-select-has-feedback .ant-select-clear,.ant-select-status-validating.ant-select-has-feedback .ant-select-clear{inset-inline-end:calc(calc(var(--ant-padding-sm) - 1px) + var(--ant-font-size) + var(--ant-padding-xs));}.ant-select-single{font-size:var(--ant-font-size);height:var(--ant-control-height);}.ant-select-single .ant-select-selector{box-sizing:border-box;margin:0;padding:0;color:var(--ant-color-text);font-size:var(--ant-font-size);line-height:var(--ant-line-height);list-style:none;font-family:inherit;display:flex;border-radius:var(--ant-border-radius);flex:1 1 auto;}.ant-select-single .ant-select-selector .ant-select-selection-wrap:after{line-height:calc(var(--ant-control-height) - var(--ant-line-width) * 2);}.ant-select-single .ant-select-selector .ant-select-selection-search{position:absolute;inset:0;width:100%;}.ant-select-single .ant-select-selector .ant-select-selection-search-input{width:100%;-webkit-appearance:textfield;}.ant-select-single .ant-select-selector .ant-select-selection-item,.ant-select-single .ant-select-selector .ant-select-selection-placeholder{display:block;padding:0;line-height:calc(var(--ant-control-height) - var(--ant-line-width) * 2);transition:all var(--ant-motion-duration-slow),visibility 0s;align-self:center;}.ant-select-single .ant-select-selector .ant-select-selection-placeholder{transition:none;pointer-events:none;}.ant-select-single .ant-select-selector:after,.ant-select-single .ant-select-selector .ant-select-selection-item:empty:after,.ant-select-single .ant-select-selector .ant-select-selection-placeholder:empty:after{display:inline-block;width:0;visibility:hidden;content:"\a0";}.ant-select-single.ant-select-show-arrow .ant-select-selection-item,.ant-select-single.ant-select-show-arrow .ant-select-selection-search,.ant-select-single.ant-select-show-arrow .ant-select-selection-placeholder{padding-inline-end:var(--ant-select-show-arrow-padding-inline-end);}.ant-select-single.ant-select-open .ant-select-selection-item{color:var(--ant-color-text-placeholder);}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{width:100%;height:100%;align-items:center;padding:0 calc(var(--ant-padding-sm) - 1px);}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input{height:calc(var(--ant-control-height) - var(--ant-line-width) * 2);font-size:var(--ant-font-size);}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector:after{line-height:calc(var(--ant-control-height) - var(--ant-line-width) * 2);}.ant-select-single.ant-select-customize-input .ant-select-selector:after{display:none;}.ant-select-single.ant-select-customize-input .ant-select-selector .ant-select-selection-search{position:static;width:100%;}.ant-select-single.ant-select-customize-input .ant-select-selector .ant-select-selection-placeholder{position:absolute;inset-inline-start:0;inset-inline-end:0;padding:0 calc(var(--ant-padding-sm) - 1px);}.ant-select-single.ant-select-customize-input .ant-select-selector .ant-select-selection-placeholder:after{display:none;}.ant-select-single.ant-select-sm{font-size:var(--ant-font-size);height:var(--ant-control-height-sm);}.ant-select-single.ant-select-sm .ant-select-selector{box-sizing:border-box;margin:0;padding:0;color:var(--ant-color-text);font-size:var(--ant-font-size);line-height:var(--ant-line-height);list-style:none;font-family:inherit;display:flex;border-radius:var(--ant-border-radius-sm);flex:1 1 auto;}.ant-select-single.ant-select-sm .ant-select-selector .ant-select-selection-wrap:after{line-height:calc(var(--ant-control-height-sm) - var(--ant-line-width) * 2);}.ant-select-single.ant-select-sm .ant-select-selector .ant-select-selection-search{position:absolute;inset:0;width:100%;}.ant-select-single.ant-select-sm .ant-select-selector .ant-select-selection-search-input{width:100%;-webkit-appearance:textfield;}.ant-select-single.ant-select-sm .ant-select-selector .ant-select-selection-item,.ant-select-single.ant-select-sm .ant-select-selector .ant-select-selection-placeholder{display:block;padding:0;line-height:calc(var(--ant-control-height-sm) - var(--ant-line-width) * 2);transition:all var(--ant-motion-duration-slow),visibility 0s;align-self:center;}.ant-select-single.ant-select-sm .ant-select-selector .ant-select-selection-placeholder{transition:none;pointer-events:none;}.ant-select-single.ant-select-sm .ant-select-selector:after,.ant-select-single.ant-select-sm .ant-select-selector .ant-select-selection-item:empty:after,.ant-select-single.ant-select-sm .ant-select-selector .ant-select-selection-placeholder:empty:after{display:inline-block;width:0;visibility:hidden;content:"\a0";}.ant-select-single.ant-select-sm.ant-select-show-arrow .ant-select-selection-item,.ant-select-single.ant-select-sm.ant-select-show-arrow .ant-select-selection-search,.ant-select-single.ant-select-sm.ant-select-show-arrow .ant-select-selection-placeholder{padding-inline-end:var(--ant-select-show-arrow-padding-inline-end);}.ant-select-single.ant-select-sm.ant-select-open .ant-select-selection-item{color:var(--ant-color-text-placeholder);}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector{width:100%;height:100%;align-items:center;padding:0 calc(var(--ant-padding-sm) - 1px);}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input{height:calc(var(--ant-control-height-sm) - var(--ant-line-width) * 2);font-size:var(--ant-font-size);}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector:after{line-height:calc(var(--ant-control-height-sm) - var(--ant-line-width) * 2);}.ant-select-single.ant-select-sm.ant-select-customize-input .ant-select-selector:after{display:none;}.ant-select-single.ant-select-sm.ant-select-customize-input .ant-select-selector .ant-select-selection-search{position:static;width:100%;}.ant-select-single.ant-select-sm.ant-select-customize-input .ant-select-selector .ant-select-selection-placeholder{position:absolute;inset-inline-start:0;inset-inline-end:0;padding:0 calc(var(--ant-padding-sm) - 1px);}.ant-select-single.ant-select-sm.ant-select-customize-input .ant-select-selector .ant-select-selection-placeholder:after{display:none;}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector{padding:0 calc(var(--ant-control-padding-horizontal-sm) - var(--ant-line-width));}.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-search{inset-inline-end:calc(calc(var(--ant-control-padding-horizontal-sm) - var(--ant-line-width)) + var(--ant-font-size) * 1.5);}.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-item,.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-placeholder{padding-inline-end:calc(var(--ant-font-size) * 1.5);}.ant-select-single.ant-select-lg{font-size:var(--ant-font-size-lg);height:var(--ant-select-single-item-height-lg);}.ant-select-single.ant-select-lg .ant-select-selector{box-sizing:border-box;margin:0;padding:0;color:var(--ant-color-text);font-size:var(--ant-font-size-lg);line-height:var(--ant-line-height);list-style:none;font-family:inherit;display:flex;border-radius:var(--ant-border-radius-lg);flex:1 1 auto;}.ant-select-single.ant-select-lg .ant-select-selector .ant-select-selection-wrap:after{line-height:calc(var(--ant-select-single-item-height-lg) - var(--ant-line-width) * 2);}.ant-select-single.ant-select-lg .ant-select-selector .ant-select-selection-search{position:absolute;inset:0;width:100%;}.ant-select-single.ant-select-lg .ant-select-selector .ant-select-selection-search-input{width:100%;-webkit-appearance:textfield;}.ant-select-single.ant-select-lg .ant-select-selector .ant-select-selection-item,.ant-select-single.ant-select-lg .ant-select-selector .ant-select-selection-placeholder{display:block;padding:0;line-height:calc(var(--ant-select-single-item-height-lg) - var(--ant-line-width) * 2);transition:all var(--ant-motion-duration-slow),visibility 0s;align-self:center;}.ant-select-single.ant-select-lg .ant-select-selector .ant-select-selection-placeholder{transition:none;pointer-events:none;}.ant-select-single.ant-select-lg .ant-select-selector:after,.ant-select-single.ant-select-lg .ant-select-selector .ant-select-selection-item:empty:after,.ant-select-single.ant-select-lg .ant-select-selector .ant-select-selection-placeholder:empty:after{display:inline-block;width:0;visibility:hidden;content:"\a0";}.ant-select-single.ant-select-lg.ant-select-show-arrow .ant-select-selection-item,.ant-select-single.ant-select-lg.ant-select-show-arrow .ant-select-selection-search,.ant-select-single.ant-select-lg.ant-select-show-arrow .ant-select-selection-placeholder{padding-inline-end:var(--ant-select-show-arrow-padding-inline-end);}.ant-select-single.ant-select-lg.ant-select-open .ant-select-selection-item{color:var(--ant-color-text-placeholder);}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector{width:100%;height:100%;align-items:center;padding:0 calc(var(--ant-padding-sm) - 1px);}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input{height:calc(var(--ant-select-single-item-height-lg) - var(--ant-line-width) * 2);font-size:var(--ant-font-size-lg);}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector:after{line-height:calc(var(--ant-select-single-item-height-lg) - var(--ant-line-width) * 2);}.ant-select-single.ant-select-lg.ant-select-customize-input .ant-select-selector:after{display:none;}.ant-select-single.ant-select-lg.ant-select-customize-input .ant-select-selector .ant-select-selection-search{position:static;width:100%;}.ant-select-single.ant-select-lg.ant-select-customize-input .ant-select-selector .ant-select-selection-placeholder{position:absolute;inset-inline-start:0;inset-inline-end:0;padding:0 calc(var(--ant-padding-sm) - 1px);}.ant-select-single.ant-select-lg.ant-select-customize-input .ant-select-selector .ant-select-selection-placeholder:after{display:none;}.ant-select-multiple .ant-select-selection-overflow{position:relative;display:flex;flex:auto;flex-wrap:wrap;max-width:100%;}.ant-select-multiple .ant-select-selection-overflow-item{flex:none;align-self:center;max-width:100%;display:inline-flex;}.ant-select-multiple .ant-select-selection-overflow .ant-select-selection-item{display:flex;align-self:center;flex:none;box-sizing:border-box;max-width:100%;margin-block:var(--ant-select-internal_fixed_item_margin);border-radius:var(--ant-border-radius-sm);cursor:default;transition:font-size var(--ant-motion-duration-slow),line-height var(--ant-motion-duration-slow),height var(--ant-motion-duration-slow);margin-inline-end:calc(var(--ant-select-internal_fixed_item_margin) * 2);padding-inline-start:var(--ant-padding-xs);padding-inline-end:calc(var(--ant-padding-xs) / 2);}.ant-select-disabled.ant-select-multiple .ant-select-selection-overflow .ant-select-selection-item{color:var(--ant-select-multiple-item-color-disabled);border-color:var(--ant-select-multiple-item-border-color-disabled);cursor:not-allowed;}.ant-select-multiple .ant-select-selection-overflow .ant-select-selection-item-content{display:inline-block;margin-inline-end:calc(var(--ant-padding-xs) / 2);overflow:hidden;white-space:pre;text-overflow:ellipsis;}.ant-select-multiple .ant-select-selection-overflow .ant-select-selection-item-remove{display:inline-flex;align-items:center;color:var(--ant-color-icon);font-style:normal;line-height:inherit;text-align:center;text-transform:none;vertical-align:-0.125em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:bold;font-size:10px;cursor:pointer;}.ant-select-multiple .ant-select-selection-overflow .ant-select-selection-item-remove >*{line-height:1;}.ant-select-multiple .ant-select-selection-overflow .ant-select-selection-item-remove svg{display:inline-block;}.ant-select-multiple .ant-select-selection-overflow .ant-select-selection-item-remove >.anticon{vertical-align:-0.2em;}.ant-select-multiple .ant-select-selection-overflow .ant-select-selection-item-remove:hover{color:var(--ant-color-icon-hover);}.ant-select-multiple .ant-select-selector{display:flex;align-items:center;width:100%;height:100%;padding-inline:max(calc(var(--ant-padding-xxs) - var(--ant-line-width)),0px);padding-block:max(calc(max(calc(var(--ant-padding-xxs) - var(--ant-line-width)),0px) - var(--ant-select-internal_fixed_item_margin)),0px);border-radius:var(--ant-border-radius);}.ant-select-disabled.ant-select-multiple .ant-select-selector{background:var(--ant-select-multiple-selector-bg-disabled);cursor:not-allowed;}.ant-select-multiple .ant-select-selector:after{display:inline-block;width:0;margin:var(--ant-select-internal_fixed_item_margin) 0;line-height:var(--ant-select-multiple-item-height);visibility:hidden;content:"\a0";}.ant-select-multiple .ant-select-selection-item{height:var(--ant-select-multiple-item-height);line-height:calc(var(--ant-select-multiple-item-height) - var(--ant-line-width) * 2);}.ant-select-multiple .ant-select-selection-wrap{align-self:flex-start;}.ant-select-multiple .ant-select-selection-wrap:after{line-height:var(--ant-select-multiple-item-height);margin-block:var(--ant-select-internal_fixed_item_margin);}.ant-select-multiple .ant-select-prefix{margin-inline-start:calc(calc(var(--ant-padding-sm) - 1px) - max(calc(var(--ant-padding-xxs) - var(--ant-line-width)),0px));}.ant-select-multiple .ant-select-selection-overflow-item+.ant-select-selection-overflow-item .ant-select-selection-search,.ant-select-multiple .ant-select-prefix+.ant-select-selection-wrap .ant-select-selection-search{margin-inline-start:0;}.ant-select-multiple .ant-select-selection-overflow-item+.ant-select-selection-overflow-item .ant-select-selection-placeholder,.ant-select-multiple .ant-select-prefix+.ant-select-selection-wrap .ant-select-selection-placeholder{inset-inline-start:0;}.ant-select-multiple .ant-select-selection-overflow-item-suffix{min-height:var(--ant-select-multiple-item-height);margin-block:var(--ant-select-internal_fixed_item_margin);}.ant-select-multiple .ant-select-selection-search{display:inline-flex;position:relative;max-width:100%;margin-inline-start:calc(calc(var(--ant-padding-sm) - 1px) - calc((var(--ant-control-height) - var(--ant-select-multiple-item-height)) / 2 - var(--ant-line-width)));}.ant-select-multiple .ant-select-selection-search-input,.ant-select-multiple .ant-select-selection-search-mirror{height:var(--ant-select-multiple-item-height);font-family:var(--ant-font-family);line-height:var(--ant-select-multiple-item-height);transition:all var(--ant-motion-duration-slow);}.ant-select-multiple .ant-select-selection-search-input{width:100%;min-width:4.1px;}.ant-select-multiple .ant-select-selection-search-mirror{position:absolute;top:0;inset-inline-start:0;inset-inline-end:auto;z-index:999;white-space:pre;visibility:hidden;}.ant-select-multiple .ant-select-selection-placeholder{position:absolute;top:50%;inset-inline-start:calc(calc(var(--ant-padding-sm) - 1px) - max(calc(var(--ant-padding-xxs) - var(--ant-line-width)),0px));inset-inline-end:calc(var(--ant-padding-sm) - 1px);transform:translateY(-50%);transition:all var(--ant-motion-duration-slow);}.ant-select-multiple{font-size:var(--ant-font-size);}.ant-select-show-search.ant-select-multiple .ant-select-selector{cursor:text;}.ant-select-multiple.ant-select-show-arrow .ant-select-selector,.ant-select-multiple.ant-select-allow-clear .ant-select-selector{padding-inline-end:calc(var(--ant-font-size-icon) + var(--ant-control-padding-horizontal));}.ant-select-multiple.ant-select-sm .ant-select-selection-overflow{position:relative;display:flex;flex:auto;flex-wrap:wrap;max-width:100%;}.ant-select-multiple.ant-select-sm .ant-select-selection-overflow-item{flex:none;align-self:center;max-width:100%;display:inline-flex;}.ant-select-multiple.ant-select-sm .ant-select-selection-overflow .ant-select-selection-item{display:flex;align-self:center;flex:none;box-sizing:border-box;max-width:100%;margin-block:var(--ant-select-internal_fixed_item_margin);border-radius:var(--ant-border-radius-xs);cursor:default;transition:font-size var(--ant-motion-duration-slow),line-height var(--ant-motion-duration-slow),height var(--ant-motion-duration-slow);margin-inline-end:calc(var(--ant-select-internal_fixed_item_margin) * 2);padding-inline-start:var(--ant-padding-xs);padding-inline-end:calc(var(--ant-padding-xs) / 2);}.ant-select-disabled.ant-select-multiple.ant-select-sm .ant-select-selection-overflow .ant-select-selection-item{color:var(--ant-select-multiple-item-color-disabled);border-color:var(--ant-select-multiple-item-border-color-disabled);cursor:not-allowed;}.ant-select-multiple.ant-select-sm .ant-select-selection-overflow .ant-select-selection-item-content{display:inline-block;margin-inline-end:calc(var(--ant-padding-xs) / 2);overflow:hidden;white-space:pre;text-overflow:ellipsis;}.ant-select-multiple.ant-select-sm .ant-select-selection-overflow .ant-select-selection-item-remove{display:inline-flex;align-items:center;color:var(--ant-color-icon);font-style:normal;line-height:inherit;text-align:center;text-transform:none;vertical-align:-0.125em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:bold;font-size:10px;cursor:pointer;}.ant-select-multiple.ant-select-sm .ant-select-selection-overflow .ant-select-selection-item-remove >*{line-height:1;}.ant-select-multiple.ant-select-sm .ant-select-selection-overflow .ant-select-selection-item-remove svg{display:inline-block;}.ant-select-multiple.ant-select-sm .ant-select-selection-overflow .ant-select-selection-item-remove >.anticon{vertical-align:-0.2em;}.ant-select-multiple.ant-select-sm .ant-select-selection-overflow .ant-select-selection-item-remove:hover{color:var(--ant-color-icon-hover);}.ant-select-multiple.ant-select-sm .ant-select-selector{display:flex;align-items:center;width:100%;height:100%;padding-inline:max(calc(var(--ant-padding-xxs) - var(--ant-line-width)),0px);padding-block:max(calc(max(calc(var(--ant-padding-xxs) - var(--ant-line-width)),0px) - var(--ant-select-internal_fixed_item_margin)),0px);border-radius:var(--ant-border-radius-sm);}.ant-select-disabled.ant-select-multiple.ant-select-sm .ant-select-selector{background:var(--ant-select-multiple-selector-bg-disabled);cursor:not-allowed;}.ant-select-multiple.ant-select-sm .ant-select-selector:after{display:inline-block;width:0;margin:var(--ant-select-internal_fixed_item_margin) 0;line-height:var(--ant-select-multiple-item-height-sm);visibility:hidden;content:"\a0";}.ant-select-multiple.ant-select-sm .ant-select-selection-item{height:var(--ant-select-multiple-item-height-sm);line-height:calc(var(--ant-select-multiple-item-height-sm) - var(--ant-line-width) * 2);}.ant-select-multiple.ant-select-sm .ant-select-selection-wrap{align-self:flex-start;}.ant-select-multiple.ant-select-sm .ant-select-selection-wrap:after{line-height:var(--ant-select-multiple-item-height-sm);margin-block:var(--ant-select-internal_fixed_item_margin);}.ant-select-multiple.ant-select-sm .ant-select-prefix{margin-inline-start:calc(calc(var(--ant-padding-sm) - 1px) - max(calc(var(--ant-padding-xxs) - var(--ant-line-width)),0px));}.ant-select-multiple.ant-select-sm .ant-select-selection-overflow-item+.ant-select-selection-overflow-item .ant-select-selection-search,.ant-select-multiple.ant-select-sm .ant-select-prefix+.ant-select-selection-wrap .ant-select-selection-search{margin-inline-start:0;}.ant-select-multiple.ant-select-sm .ant-select-selection-overflow-item+.ant-select-selection-overflow-item .ant-select-selection-placeholder,.ant-select-multiple.ant-select-sm .ant-select-prefix+.ant-select-selection-wrap .ant-select-selection-placeholder{inset-inline-start:0;}.ant-select-multiple.ant-select-sm .ant-select-selection-overflow-item-suffix{min-height:var(--ant-select-multiple-item-height-sm);margin-block:var(--ant-select-internal_fixed_item_margin);}.ant-select-multiple.ant-select-sm .ant-select-selection-search{display:inline-flex;position:relative;max-width:100%;margin-inline-start:calc(calc(var(--ant-padding-sm) - 1px) - calc((var(--ant-control-height-sm) - var(--ant-select-multiple-item-height-sm)) / 2 - var(--ant-line-width)));}.ant-select-multiple.ant-select-sm .ant-select-selection-search-input,.ant-select-multiple.ant-select-sm .ant-select-selection-search-mirror{height:var(--ant-select-multiple-item-height-sm);font-family:var(--ant-font-family);line-height:var(--ant-select-multiple-item-height-sm);transition:all var(--ant-motion-duration-slow);}.ant-select-multiple.ant-select-sm .ant-select-selection-search-input{width:100%;min-width:4.1px;}.ant-select-multiple.ant-select-sm .ant-select-selection-search-mirror{position:absolute;top:0;inset-inline-start:0;inset-inline-end:auto;z-index:999;white-space:pre;visibility:hidden;}.ant-select-multiple.ant-select-sm .ant-select-selection-placeholder{position:absolute;top:50%;inset-inline-start:calc(calc(var(--ant-padding-sm) - 1px) - max(calc(var(--ant-padding-xxs) - var(--ant-line-width)),0px));inset-inline-end:calc(var(--ant-padding-sm) - 1px);transform:translateY(-50%);transition:all var(--ant-motion-duration-slow);}.ant-select-multiple.ant-select-sm{font-size:var(--ant-font-size);}.ant-select-show-search.ant-select-multiple.ant-select-sm .ant-select-selector{cursor:text;}.ant-select-multiple.ant-select-sm.ant-select-show-arrow .ant-select-selector,.ant-select-multiple.ant-select-sm.ant-select-allow-clear .ant-select-selector{padding-inline-end:calc(var(--ant-font-size-icon) + var(--ant-control-padding-horizontal));}.ant-select-multiple.ant-select-sm .ant-select-selection-placeholder{inset-inline:calc(var(--ant-control-padding-horizontal-sm) - var(--ant-line-width));}.ant-select-multiple.ant-select-sm .ant-select-selection-search{margin-inline-start:2px;}.ant-select-multiple.ant-select-lg .ant-select-selection-overflow{position:relative;display:flex;flex:auto;flex-wrap:wrap;max-width:100%;}.ant-select-multiple.ant-select-lg .ant-select-selection-overflow-item{flex:none;align-self:center;max-width:100%;display:inline-flex;}.ant-select-multiple.ant-select-lg .ant-select-selection-overflow .ant-select-selection-item{display:flex;align-self:center;flex:none;box-sizing:border-box;max-width:100%;margin-block:var(--ant-select-internal_fixed_item_margin);border-radius:var(--ant-border-radius);cursor:default;transition:font-size var(--ant-motion-duration-slow),line-height var(--ant-motion-duration-slow),height var(--ant-motion-duration-slow);margin-inline-end:calc(var(--ant-select-internal_fixed_item_margin) * 2);padding-inline-start:var(--ant-padding-xs);padding-inline-end:calc(var(--ant-padding-xs) / 2);}.ant-select-disabled.ant-select-multiple.ant-select-lg .ant-select-selection-overflow .ant-select-selection-item{color:var(--ant-select-multiple-item-color-disabled);border-color:var(--ant-select-multiple-item-border-color-disabled);cursor:not-allowed;}.ant-select-multiple.ant-select-lg .ant-select-selection-overflow .ant-select-selection-item-content{display:inline-block;margin-inline-end:calc(var(--ant-padding-xs) / 2);overflow:hidden;white-space:pre;text-overflow:ellipsis;}.ant-select-multiple.ant-select-lg .ant-select-selection-overflow .ant-select-selection-item-remove{display:inline-flex;align-items:center;color:var(--ant-color-icon);font-style:normal;line-height:inherit;text-align:center;text-transform:none;vertical-align:-0.125em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:bold;font-size:10px;cursor:pointer;}.ant-select-multiple.ant-select-lg .ant-select-selection-overflow .ant-select-selection-item-remove >*{line-height:1;}.ant-select-multiple.ant-select-lg .ant-select-selection-overflow .ant-select-selection-item-remove svg{display:inline-block;}.ant-select-multiple.ant-select-lg .ant-select-selection-overflow .ant-select-selection-item-remove >.anticon{vertical-align:-0.2em;}.ant-select-multiple.ant-select-lg .ant-select-selection-overflow .ant-select-selection-item-remove:hover{color:var(--ant-color-icon-hover);}.ant-select-multiple.ant-select-lg .ant-select-selector{display:flex;align-items:center;width:100%;height:100%;padding-inline:max(calc(var(--ant-padding-xxs) - var(--ant-line-width)),0px);padding-block:max(calc(max(calc(var(--ant-padding-xxs) - var(--ant-line-width)),0px) - var(--ant-select-internal_fixed_item_margin)),0px);border-radius:var(--ant-border-radius-lg);}.ant-select-disabled.ant-select-multiple.ant-select-lg .ant-select-selector{background:var(--ant-select-multiple-selector-bg-disabled);cursor:not-allowed;}.ant-select-multiple.ant-select-lg .ant-select-selector:after{display:inline-block;width:0;margin:var(--ant-select-internal_fixed_item_margin) 0;line-height:var(--ant-select-multiple-item-height-lg);visibility:hidden;content:"\a0";}.ant-select-multiple.ant-select-lg .ant-select-selection-item{height:var(--ant-select-multiple-item-height-lg);line-height:calc(var(--ant-select-multiple-item-height-lg) - var(--ant-line-width) * 2);}.ant-select-multiple.ant-select-lg .ant-select-selection-wrap{align-self:flex-start;}.ant-select-multiple.ant-select-lg .ant-select-selection-wrap:after{line-height:var(--ant-select-multiple-item-height-lg);margin-block:var(--ant-select-internal_fixed_item_margin);}.ant-select-multiple.ant-select-lg .ant-select-prefix{margin-inline-start:calc(calc(var(--ant-padding-sm) - 1px) - max(calc(var(--ant-padding-xxs) - var(--ant-line-width)),0px));}.ant-select-multiple.ant-select-lg .ant-select-selection-overflow-item+.ant-select-selection-overflow-item .ant-select-selection-search,.ant-select-multiple.ant-select-lg .ant-select-prefix+.ant-select-selection-wrap .ant-select-selection-search{margin-inline-start:0;}.ant-select-multiple.ant-select-lg .ant-select-selection-overflow-item+.ant-select-selection-overflow-item .ant-select-selection-placeholder,.ant-select-multiple.ant-select-lg .ant-select-prefix+.ant-select-selection-wrap .ant-select-selection-placeholder{inset-inline-start:0;}.ant-select-multiple.ant-select-lg .ant-select-selection-overflow-item-suffix{min-height:var(--ant-select-multiple-item-height-lg);margin-block:var(--ant-select-internal_fixed_item_margin);}.ant-select-multiple.ant-select-lg .ant-select-selection-search{display:inline-flex;position:relative;max-width:100%;margin-inline-start:calc(calc(var(--ant-padding-sm) - 1px) - calc((var(--ant-control-height-lg) - var(--ant-select-multiple-item-height-lg)) / 2 - var(--ant-line-width)));}.ant-select-multiple.ant-select-lg .ant-select-selection-search-input,.ant-select-multiple.ant-select-lg .ant-select-selection-search-mirror{height:var(--ant-select-multiple-item-height-lg);font-family:var(--ant-font-family);line-height:var(--ant-select-multiple-item-height-lg);transition:all var(--ant-motion-duration-slow);}.ant-select-multiple.ant-select-lg .ant-select-selection-search-input{width:100%;min-width:4.1px;}.ant-select-multiple.ant-select-lg .ant-select-selection-search-mirror{position:absolute;top:0;inset-inline-start:0;inset-inline-end:auto;z-index:999;white-space:pre;visibility:hidden;}.ant-select-multiple.ant-select-lg .ant-select-selection-placeholder{position:absolute;top:50%;inset-inline-start:calc(calc(var(--ant-padding-sm) - 1px) - max(calc(var(--ant-padding-xxs) - var(--ant-line-width)),0px));inset-inline-end:calc(var(--ant-padding-sm) - 1px);transform:translateY(-50%);transition:all var(--ant-motion-duration-slow);}.ant-select-multiple.ant-select-lg{font-size:var(--ant-font-size-lg);}.ant-select-show-search.ant-select-multiple.ant-select-lg .ant-select-selector{cursor:text;}.ant-select-multiple.ant-select-lg.ant-select-show-arrow .ant-select-selector,.ant-select-multiple.ant-select-lg.ant-select-allow-clear .ant-select-selector{padding-inline-end:calc(var(--ant-font-size-icon) + var(--ant-control-padding-horizontal));}.ant-select-dropdown{box-sizing:border-box;margin:0;padding:var(--ant-padding-xxs);color:var(--ant-color-text);font-size:var(--ant-font-size);line-height:var(--ant-line-height);list-style:none;font-family:var(--ant-font-family);position:absolute;top:-9999px;z-index:var(--ant-select-z-index-popup);overflow:hidden;font-variant:initial;background-color:var(--ant-color-bg-elevated);border-radius:var(--ant-border-radius-lg);outline:none;box-shadow:var(--ant-box-shadow-secondary);}.ant-select-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-select-dropdown-placement-bottomLeft,.ant-select-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-select-dropdown-placement-bottomLeft{animation-name:antSlideUpIn;}.ant-select-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-select-dropdown-placement-topLeft,.ant-select-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-select-dropdown-placement-topLeft,.ant-select-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-select-dropdown-placement-topRight,.ant-select-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-select-dropdown-placement-topRight{animation-name:antSlideDownIn;}.ant-select-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-select-dropdown-placement-bottomLeft{animation-name:antSlideUpOut;}.ant-select-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-select-dropdown-placement-topLeft,.ant-select-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-select-dropdown-placement-topRight{animation-name:antSlideDownOut;}.ant-select-dropdown-hidden{display:none;}.ant-select-dropdown .ant-select-item{position:relative;display:block;min-height:var(--ant-select-option-height);padding:var(--ant-select-option-padding);color:var(--ant-color-text);font-weight:normal;font-size:var(--ant-select-option-font-size);line-height:var(--ant-select-option-line-height);box-sizing:border-box;cursor:pointer;transition:background var(--ant-motion-duration-slow) ease;border-radius:var(--ant-border-radius-sm);}.ant-select-dropdown .ant-select-item-group{color:var(--ant-color-text-description);font-size:var(--ant-font-size-sm);cursor:default;}.ant-select-dropdown .ant-select-item-option{display:flex;}.ant-select-dropdown .ant-select-item-option-content{flex:auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}.ant-select-dropdown .ant-select-item-option-state{flex:none;display:flex;align-items:center;}.ant-select-dropdown .ant-select-item-option-active:not(.ant-select-item-option-disabled){background-color:var(--ant-select-option-active-bg);}.ant-select-dropdown .ant-select-item-option-selected:not(.ant-select-item-option-disabled){color:var(--ant-select-option-selected-color);font-weight:var(--ant-select-option-selected-font-weight);background-color:var(--ant-select-option-selected-bg);}.ant-select-dropdown .ant-select-item-option-selected:not(.ant-select-item-option-disabled) .ant-select-item-option-state{color:var(--ant-color-primary);}.ant-select-dropdown .ant-select-item-option-disabled{color:var(--ant-color-text-disabled);cursor:not-allowed;}.ant-select-dropdown .ant-select-item-option-disabled.ant-select-item-option-selected{background-color:var(--ant-color-bg-container-disabled);}.ant-select-dropdown .ant-select-item-option-grouped{padding-inline-start:calc(var(--ant-control-padding-horizontal) * 2);}.ant-select-dropdown .ant-select-item-empty{position:relative;display:block;min-height:var(--ant-select-option-height);padding:var(--ant-select-option-padding);color:var(--ant-color-text-disabled);font-weight:normal;font-size:var(--ant-select-option-font-size);line-height:var(--ant-select-option-line-height);box-sizing:border-box;}.ant-select-dropdown .ant-select-item-option-selected:has(+ .ant-select-item-option-selected){border-end-start-radius:0;border-end-end-radius:0;}.ant-select-dropdown .ant-select-item-option-selected:has(+ .ant-select-item-option-selected)+.ant-select-item-option-selected{border-start-start-radius:0;border-start-end-radius:0;}.ant-select-dropdown-rtl{direction:rtl;}.ant-slide-up-enter,.ant-slide-up-appear{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-slide-up-leave{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-slide-up-enter.ant-slide-up-enter-active,.ant-slide-up-appear.ant-slide-up-appear-active{animation-name:antSlideUpIn;animation-play-state:running;}.ant-slide-up-leave.ant-slide-up-leave-active{animation-name:antSlideUpOut;animation-play-state:running;pointer-events:none;}.ant-slide-up-enter,.ant-slide-up-appear{transform:scale(0);transform-origin:0% 0%;opacity:0;animation-timing-function:var(--ant-motion-ease-out-quint);}.ant-slide-up-enter-prepare,.ant-slide-up-appear-prepare{transform:scale(1);}.ant-slide-up-leave{animation-timing-function:var(--ant-motion-ease-in-quint);}.ant-slide-down-enter,.ant-slide-down-appear{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-slide-down-leave{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-slide-down-enter.ant-slide-down-enter-active,.ant-slide-down-appear.ant-slide-down-appear-active{animation-name:antSlideDownIn;animation-play-state:running;}.ant-slide-down-leave.ant-slide-down-leave-active{animation-name:antSlideDownOut;animation-play-state:running;pointer-events:none;}.ant-slide-down-enter,.ant-slide-down-appear{transform:scale(0);transform-origin:0% 0%;opacity:0;animation-timing-function:var(--ant-motion-ease-out-quint);}.ant-slide-down-enter-prepare,.ant-slide-down-appear-prepare{transform:scale(1);}.ant-slide-down-leave{animation-timing-function:var(--ant-motion-ease-in-quint);}.ant-move-up-enter,.ant-move-up-appear{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-move-up-leave{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-move-up-enter.ant-move-up-enter-active,.ant-move-up-appear.ant-move-up-appear-active{animation-name:antMoveUpIn;animation-play-state:running;}.ant-move-up-leave.ant-move-up-leave-active{animation-name:antMoveUpOut;animation-play-state:running;pointer-events:none;}.ant-move-up-enter,.ant-move-up-appear{opacity:0;animation-timing-function:var(--ant-motion-ease-out-circ);}.ant-move-up-leave{animation-timing-function:var(--ant-motion-ease-in-out-circ);}.ant-move-down-enter,.ant-move-down-appear{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-move-down-leave{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-move-down-enter.ant-move-down-enter-active,.ant-move-down-appear.ant-move-down-appear-active{animation-name:antMoveDownIn;animation-play-state:running;}.ant-move-down-leave.ant-move-down-leave-active{animation-name:antMoveDownOut;animation-play-state:running;pointer-events:none;}.ant-move-down-enter,.ant-move-down-appear{opacity:0;animation-timing-function:var(--ant-motion-ease-out-circ);}.ant-move-down-leave{animation-timing-function:var(--ant-motion-ease-in-out-circ);}.ant-select-rtl{direction:rtl;}.ant-select-compact-item:not(.ant-select-compact-last-item){margin-inline-end:calc(var(--ant-line-width) * -1);}.ant-select-compact-item:hover>*,.ant-select-compact-item:active>*{z-index:2;}.ant-select-compact-item.ant-select-focused{z-index:2;}.ant-select-compact-item[disabled]>*{z-index:0;}.ant-select-compact-item:not(.ant-select-compact-first-item):not(.ant-select-compact-last-item)>.ant-select-selector{border-radius:0;}.ant-select-compact-item:not(.ant-select-compact-last-item).ant-select-compact-first-item>.ant-select-selector,.ant-select-compact-item:not(.ant-select-compact-last-item).ant-select-compact-first-item.ant-select-sm>.ant-select-selector,.ant-select-compact-item:not(.ant-select-compact-last-item).ant-select-compact-first-item.ant-select-lg>.ant-select-selector{border-start-end-radius:0;border-end-end-radius:0;}.ant-select-compact-item:not(.ant-select-compact-first-item).ant-select-compact-last-item>.ant-select-selector,.ant-select-compact-item:not(.ant-select-compact-first-item).ant-select-compact-last-item.ant-select-sm>.ant-select-selector,.ant-select-compact-item:not(.ant-select-compact-first-item).ant-select-compact-last-item.ant-select-lg>.ant-select-selector{border-start-start-radius:0;border-end-start-radius:0;}.ant-select-outlined:not(.ant-select-customize-input) .ant-select-selector{border:var(--ant-line-width) var(--ant-line-type) var(--ant-color-border);background:var(--ant-select-selector-bg);}.ant-select-outlined:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer):hover .ant-select-selector{border-color:var(--ant-select-hover-border-color);}.ant-select-focused.ant-select-outlined:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer) .ant-select-selector{border-color:var(--ant-select-active-border-color);box-shadow:0 0 0 var(--ant-control-outline-width) var(--ant-select-active-outline-color);outline:0;}.ant-select-outlined:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer) .ant-select-prefix{color:var(--ant-color-text);}.ant-select-outlined.ant-select-status-error:not(.ant-select-customize-input) .ant-select-selector{border:var(--ant-line-width) var(--ant-line-type) var(--ant-color-error);background:var(--ant-select-selector-bg);}.ant-select-outlined.ant-select-status-error:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer):hover .ant-select-selector{border-color:var(--ant-color-error-hover);}.ant-select-focused.ant-select-outlined.ant-select-status-error:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer) .ant-select-selector{border-color:var(--ant-color-error);box-shadow:0 0 0 var(--ant-control-outline-width) var(--ant-color-error-outline);outline:0;}.ant-select-outlined.ant-select-status-error:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer) .ant-select-prefix{color:var(--ant-color-error);}.ant-select-outlined.ant-select-status-warning:not(.ant-select-customize-input) .ant-select-selector{border:var(--ant-line-width) var(--ant-line-type) var(--ant-color-warning);background:var(--ant-select-selector-bg);}.ant-select-outlined.ant-select-status-warning:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer):hover .ant-select-selector{border-color:var(--ant-color-warning-hover);}.ant-select-focused.ant-select-outlined.ant-select-status-warning:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer) .ant-select-selector{border-color:var(--ant-color-warning);box-shadow:0 0 0 var(--ant-control-outline-width) var(--ant-color-warning-outline);outline:0;}.ant-select-outlined.ant-select-status-warning:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer) .ant-select-prefix{color:var(--ant-color-warning);}.ant-select-outlined.ant-select-disabled:not(.ant-select-customize-input) .ant-select-selector{background:var(--ant-color-bg-container-disabled);color:var(--ant-color-text-disabled);}.ant-select-outlined.ant-select-multiple .ant-select-selection-item{background:var(--ant-select-multiple-item-bg);border:var(--ant-line-width) var(--ant-line-type) var(--ant-select-multiple-item-border-color);}.ant-select-filled:not(.ant-select-customize-input) .ant-select-selector{background:var(--ant-color-fill-tertiary);border:var(--ant-line-width) var(--ant-line-type) transparent;color:var(--ant-color-text);}.ant-select-filled:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer):hover .ant-select-selector{background:var(--ant-color-fill-secondary);}.ant-select-focused.ant-select-filled:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer) .ant-select-selector{background:var(--ant-select-selector-bg);border-color:var(--ant-select-active-border-color);outline:0;}.ant-select-filled.ant-select-status-error:not(.ant-select-customize-input) .ant-select-selector{background:var(--ant-color-error-bg);border:var(--ant-line-width) var(--ant-line-type) transparent;color:var(--ant-color-error);}.ant-select-filled.ant-select-status-error:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer):hover .ant-select-selector{background:var(--ant-color-error-bg-hover);}.ant-select-focused.ant-select-filled.ant-select-status-error:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer) .ant-select-selector{background:var(--ant-select-selector-bg);border-color:var(--ant-color-error);outline:0;}.ant-select-filled.ant-select-status-warning:not(.ant-select-customize-input) .ant-select-selector{background:var(--ant-color-warning-bg);border:var(--ant-line-width) var(--ant-line-type) transparent;color:var(--ant-color-warning);}.ant-select-filled.ant-select-status-warning:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer):hover .ant-select-selector{background:var(--ant-color-warning-bg-hover);}.ant-select-focused.ant-select-filled.ant-select-status-warning:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer) .ant-select-selector{background:var(--ant-select-selector-bg);border-color:var(--ant-color-warning);outline:0;}.ant-select-filled.ant-select-disabled:not(.ant-select-customize-input) .ant-select-selector{border-color:var(--ant-color-border);background:var(--ant-color-bg-container-disabled);color:var(--ant-color-text-disabled);}.ant-select-filled.ant-select-multiple .ant-select-selection-item{background:var(--ant-color-bg-container);border:var(--ant-line-width) var(--ant-line-type) var(--ant-color-split);}.ant-select-borderless .ant-select-selector{background:transparent;border:var(--ant-line-width) var(--ant-line-type) transparent;}.ant-select-borderless.ant-select-disabled:not(.ant-select-customize-input) .ant-select-selector{color:var(--ant-color-text-disabled);}.ant-select-borderless.ant-select-multiple .ant-select-selection-item{background:var(--ant-select-multiple-item-bg);border:var(--ant-line-width) var(--ant-line-type) var(--ant-select-multiple-item-border-color);}.ant-select-borderless.ant-select-status-error .ant-select-prefix,.ant-select-borderless.ant-select-status-error .ant-select-selection-item{color:var(--ant-color-error);}.ant-select-borderless.ant-select-status-warning .ant-select-prefix,.ant-select-borderless.ant-select-status-warning .ant-select-selection-item{color:var(--ant-color-warning);}.ant-select-underlined:not(.ant-select-customize-input) .ant-select-selector{border-width:0 0 var(--ant-line-width) 0;border-style:none none var(--ant-line-type) none;border-color:var(--ant-color-border);background:var(--ant-select-selector-bg);border-radius:0;}.ant-select-underlined:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer):hover .ant-select-selector{border-color:var(--ant-select-hover-border-color);}.ant-select-focused.ant-select-underlined:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer) .ant-select-selector{border-color:var(--ant-select-active-border-color);outline:0;}.ant-select-underlined:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer) .ant-select-prefix{color:var(--ant-color-text);}.ant-select-underlined.ant-select-status-error:not(.ant-select-customize-input) .ant-select-selector{border-width:0 0 var(--ant-line-width) 0;border-style:none none var(--ant-line-type) none;border-color:var(--ant-color-error);background:var(--ant-select-selector-bg);border-radius:0;}.ant-select-underlined.ant-select-status-error:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer):hover .ant-select-selector{border-color:var(--ant-color-error-hover);}.ant-select-focused.ant-select-underlined.ant-select-status-error:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer) .ant-select-selector{border-color:var(--ant-color-error);outline:0;}.ant-select-underlined.ant-select-status-error:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer) .ant-select-prefix{color:var(--ant-color-error);}.ant-select-underlined.ant-select-status-warning:not(.ant-select-customize-input) .ant-select-selector{border-width:0 0 var(--ant-line-width) 0;border-style:none none var(--ant-line-type) none;border-color:var(--ant-color-warning);background:var(--ant-select-selector-bg);border-radius:0;}.ant-select-underlined.ant-select-status-warning:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer):hover .ant-select-selector{border-color:var(--ant-color-warning-hover);}.ant-select-focused.ant-select-underlined.ant-select-status-warning:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer) .ant-select-selector{border-color:var(--ant-color-warning);outline:0;}.ant-select-underlined.ant-select-status-warning:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer) .ant-select-prefix{color:var(--ant-color-warning);}.ant-select-underlined.ant-select-disabled:not(.ant-select-customize-input) .ant-select-selector{color:var(--ant-color-text-disabled);}.ant-select-underlined.ant-select-multiple .ant-select-selection-item{background:var(--ant-select-multiple-item-bg);border:var(--ant-line-width) var(--ant-line-type) var(--ant-select-multiple-item-border-color);}@keyframes antMoveUpIn{0%{transform:translate3d(0, -100%, 0);transform-origin:0 0;opacity:0;}100%{transform:translate3d(0, 0, 0);transform-origin:0 0;opacity:1;}}@keyframes antMoveUpOut{0%{transform:translate3d(0, 0, 0);transform-origin:0 0;opacity:1;}100%{transform:translate3d(0, -100%, 0);transform-origin:0 0;opacity:0;}}@keyframes antMoveDownIn{0%{transform:translate3d(0, 100%, 0);transform-origin:0 0;opacity:0;}100%{transform:translate3d(0, 0, 0);transform-origin:0 0;opacity:1;}}@keyframes antMoveDownOut{0%{transform:translate3d(0, 0, 0);transform-origin:0 0;opacity:1;}100%{transform:translate3d(0, 100%, 0);transform-origin:0 0;opacity:0;}}.ant-btn{font-family:var(--ant-font-family);font-size:var(--ant-font-size);box-sizing:border-box;}.ant-btn::before,.ant-btn::after{box-sizing:border-box;}.ant-btn [class^="ant-btn"],.ant-btn [class*=" ant-btn"]{box-sizing:border-box;}.ant-btn [class^="ant-btn"]::before,.ant-btn [class*=" ant-btn"]::before,.ant-btn [class^="ant-btn"]::after,.ant-btn [class*=" ant-btn"]::after{box-sizing:border-box;}.ant-btn{outline:none;position:relative;display:inline-flex;gap:var(--ant-margin-xs);align-items:center;justify-content:center;font-weight:var(--ant-button-font-weight);white-space:nowrap;text-align:center;background-image:none;background:transparent;border:var(--ant-line-width) var(--ant-line-type) transparent;cursor:pointer;transition:all var(--ant-motion-duration-mid) var(--ant-motion-ease-in-out);user-select:none;touch-action:manipulation;color:var(--ant-color-text);}.ant-btn:disabled>*{pointer-events:none;}.ant-btn .ant-btn-icon>svg{display:inline-flex;align-items:center;color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-0.125em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}.ant-btn .ant-btn-icon>svg >*{line-height:1;}.ant-btn .ant-btn-icon>svg svg{display:inline-block;}.ant-btn >a{color:currentColor;}.ant-btn:not(:disabled):focus-visible{outline:var(--ant-line-width-focus) solid var(--ant-color-primary-border);outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-btn.ant-btn-two-chinese-chars::first-letter{letter-spacing:0.34em;}.ant-btn.ant-btn-two-chinese-chars>*:not(.anticon){margin-inline-end:-0.34em;letter-spacing:0.34em;}.ant-btn.ant-btn-icon-only{padding-inline:0;}.ant-btn.ant-btn-icon-only.ant-btn-compact-item{flex:none;}.ant-btn.ant-btn-icon-only.ant-btn-round{width:auto;}.ant-btn.ant-btn-loading{opacity:var(--ant-opacity-loading);cursor:default;}.ant-btn .ant-btn-loading-icon{transition:width var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out),opacity var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out),margin var(--ant-motion-duration-slow) var(--ant-motion-ease-in-out);}.ant-btn:not(.ant-btn-icon-end) .ant-btn-loading-icon-motion-appear-start,.ant-btn:not(.ant-btn-icon-end) .ant-btn-loading-icon-motion-enter-start{margin-inline-end:calc(var(--ant-margin-xs) * -1);}.ant-btn:not(.ant-btn-icon-end) .ant-btn-loading-icon-motion-appear-active,.ant-btn:not(.ant-btn-icon-end) .ant-btn-loading-icon-motion-enter-active{margin-inline-end:0;}.ant-btn:not(.ant-btn-icon-end) .ant-btn-loading-icon-motion-leave-start{margin-inline-end:0;}.ant-btn:not(.ant-btn-icon-end) .ant-btn-loading-icon-motion-leave-active{margin-inline-end:calc(var(--ant-margin-xs) * -1);}.ant-btn-icon-end{flex-direction:row-reverse;}.ant-btn-icon-end .ant-btn-loading-icon-motion-appear-start,.ant-btn-icon-end .ant-btn-loading-icon-motion-enter-start{margin-inline-start:calc(var(--ant-margin-xs) * -1);}.ant-btn-icon-end .ant-btn-loading-icon-motion-appear-active,.ant-btn-icon-end .ant-btn-loading-icon-motion-enter-active{margin-inline-start:0;}.ant-btn-icon-end .ant-btn-loading-icon-motion-leave-start{margin-inline-start:0;}.ant-btn-icon-end .ant-btn-loading-icon-motion-leave-active{margin-inline-start:calc(var(--ant-margin-xs) * -1);}.ant-btn{font-size:var(--ant-button-content-font-size);height:var(--ant-control-height);padding:0px var(--ant-button-padding-inline);border-radius:var(--ant-border-radius);}.ant-btn.ant-btn-icon-only{width:var(--ant-control-height);}.ant-btn.ant-btn-icon-only .anticon{font-size:var(--ant-button-only-icon-size);}.ant-btn.ant-btn-circle.ant-btn{min-width:var(--ant-control-height);padding-inline-start:0;padding-inline-end:0;border-radius:50%;}.ant-btn.ant-btn-round.ant-btn{border-radius:var(--ant-control-height);padding-inline-start:calc(var(--ant-control-height) / 2);padding-inline-end:calc(var(--ant-control-height) / 2);}.ant-btn-sm{font-size:var(--ant-button-content-font-size-sm);height:var(--ant-control-height-sm);padding:0px var(--ant-button-padding-inline-sm);border-radius:var(--ant-border-radius-sm);}.ant-btn-sm.ant-btn-icon-only{width:var(--ant-control-height-sm);}.ant-btn-sm.ant-btn-icon-only .anticon{font-size:var(--ant-button-only-icon-size-sm);}.ant-btn.ant-btn-circle.ant-btn-sm{min-width:var(--ant-control-height-sm);padding-inline-start:0;padding-inline-end:0;border-radius:50%;}.ant-btn.ant-btn-round.ant-btn-sm{border-radius:var(--ant-control-height-sm);padding-inline-start:calc(var(--ant-control-height-sm) / 2);padding-inline-end:calc(var(--ant-control-height-sm) / 2);}.ant-btn-lg{font-size:var(--ant-button-content-font-size-lg);height:var(--ant-control-height-lg);padding:0px var(--ant-button-padding-inline-lg);border-radius:var(--ant-border-radius-lg);}.ant-btn-lg.ant-btn-icon-only{width:var(--ant-control-height-lg);}.ant-btn-lg.ant-btn-icon-only .anticon{font-size:var(--ant-button-only-icon-size-lg);}.ant-btn.ant-btn-circle.ant-btn-lg{min-width:var(--ant-control-height-lg);padding-inline-start:0;padding-inline-end:0;border-radius:50%;}.ant-btn.ant-btn-round.ant-btn-lg{border-radius:var(--ant-control-height-lg);padding-inline-start:calc(var(--ant-control-height-lg) / 2);padding-inline-end:calc(var(--ant-control-height-lg) / 2);}.ant-btn.ant-btn-block{width:100%;}.ant-btn-color-default{color:var(--ant-button-default-color);box-shadow:var(--ant-button-default-shadow);}.ant-btn-color-default.ant-btn-variant-solid{color:var(--ant-button-solid-text-color);background:var(--ant-color-bg-solid);}.ant-btn-color-default.ant-btn-variant-solid:disabled,.ant-btn-color-default.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-default.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-button-solid-text-color);background:var(--ant-color-bg-solid-hover);}.ant-btn-color-default.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-button-solid-text-color);background:var(--ant-color-bg-solid-active);}.ant-btn-color-default.ant-btn-variant-dashed{border-style:dashed;}.ant-btn-color-default.ant-btn-variant-filled{box-shadow:none;background:var(--ant-color-fill-tertiary);}.ant-btn-color-default.ant-btn-variant-filled:disabled,.ant-btn-color-default.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-default.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-color-fill-secondary);}.ant-btn-color-default.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-color-fill);}.ant-btn-color-default.ant-btn-background-ghost{color:var(--ant-button-default-ghost-color);background:var(--ant-button-ghost-bg);border-color:var(--ant-button-default-ghost-border-color);box-shadow:none;}.ant-btn-color-default.ant-btn-background-ghost:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-button-ghost-bg);}.ant-btn-color-default.ant-btn-background-ghost:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-button-ghost-bg);}.ant-btn-color-default.ant-btn-background-ghost:disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);border-color:var(--ant-color-border);}.ant-btn-color-default.ant-btn-variant-link{color:var(--ant-button-text-text-color);box-shadow:none;}.ant-btn-color-default.ant-btn-variant-link:disabled,.ant-btn-color-default.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-default.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-color-link-hover);background:var(--ant-button-link-hover-bg);}.ant-btn-color-default.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-color-link-active);}.ant-btn-color-primary{color:var(--ant-color-primary);box-shadow:var(--ant-button-primary-shadow);}.ant-btn-color-primary.ant-btn-variant-outlined,.ant-btn-color-primary.ant-btn-variant-dashed{border-color:var(--ant-color-primary);background:var(--ant-color-bg-container);}.ant-btn-color-primary.ant-btn-variant-outlined:disabled,.ant-btn-color-primary.ant-btn-variant-dashed:disabled,.ant-btn-color-primary.ant-btn-variant-outlined.ant-btn-disabled,.ant-btn-color-primary.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-primary.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,.ant-btn-color-primary.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-color-primary-text-hover);border-color:var(--ant-color-primary-hover);background:var(--ant-color-bg-container);}.ant-btn-color-primary.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,.ant-btn-color-primary.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-color-primary-text-active);border-color:var(--ant-color-primary-active);background:var(--ant-color-bg-container);}.ant-btn-color-primary.ant-btn-variant-dashed{border-style:dashed;}.ant-btn-color-primary.ant-btn-variant-filled{box-shadow:none;background:var(--ant-color-primary-bg);}.ant-btn-color-primary.ant-btn-variant-filled:disabled,.ant-btn-color-primary.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-primary.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-color-primary-bg-hover);}.ant-btn-color-primary.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-color-primary-border);}.ant-btn-color-primary.ant-btn-variant-text{color:var(--ant-color-primary-text);box-shadow:none;}.ant-btn-color-primary.ant-btn-variant-text:disabled,.ant-btn-color-primary.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-primary.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-color-primary-text-hover);background:var(--ant-color-primary-bg);}.ant-btn-color-primary.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-color-primary-text-active);background:var(--ant-color-primary-border);}.ant-btn-color-primary.ant-btn-variant-link{color:var(--ant-color-primary-text);box-shadow:none;}.ant-btn-color-primary.ant-btn-variant-link:disabled,.ant-btn-color-primary.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-primary.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-color-primary-text-hover);background:var(--ant-button-link-hover-bg);}.ant-btn-color-primary.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-color-primary-text-active);}.ant-btn-color-primary.ant-btn-background-ghost{color:var(--ant-color-primary);background:var(--ant-button-ghost-bg);border-color:var(--ant-color-primary);box-shadow:none;}.ant-btn-color-primary.ant-btn-background-ghost:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-button-ghost-bg);color:var(--ant-color-primary-hover);border-color:var(--ant-color-primary-hover);}.ant-btn-color-primary.ant-btn-background-ghost:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-button-ghost-bg);color:var(--ant-color-primary-active);border-color:var(--ant-color-primary-active);}.ant-btn-color-primary.ant-btn-background-ghost:disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);border-color:var(--ant-color-border);}.ant-btn-color-dangerous{color:var(--ant-color-error);box-shadow:var(--ant-button-danger-shadow);}.ant-btn-color-dangerous.ant-btn-variant-solid{color:var(--ant-button-danger-color);background:var(--ant-color-error);}.ant-btn-color-dangerous.ant-btn-variant-solid:disabled,.ant-btn-color-dangerous.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-dangerous.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-color-error-hover);}.ant-btn-color-dangerous.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-color-error-active);}.ant-btn-color-dangerous.ant-btn-variant-outlined,.ant-btn-color-dangerous.ant-btn-variant-dashed{border-color:var(--ant-color-error);background:var(--ant-color-bg-container);}.ant-btn-color-dangerous.ant-btn-variant-outlined:disabled,.ant-btn-color-dangerous.ant-btn-variant-dashed:disabled,.ant-btn-color-dangerous.ant-btn-variant-outlined.ant-btn-disabled,.ant-btn-color-dangerous.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-dangerous.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,.ant-btn-color-dangerous.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-color-error-hover);border-color:var(--ant-color-error-border-hover);}.ant-btn-color-dangerous.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,.ant-btn-color-dangerous.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-color-error-active);border-color:var(--ant-color-error-active);}.ant-btn-color-dangerous.ant-btn-variant-dashed{border-style:dashed;}.ant-btn-color-dangerous.ant-btn-variant-filled{box-shadow:none;background:var(--ant-color-error-bg);}.ant-btn-color-dangerous.ant-btn-variant-filled:disabled,.ant-btn-color-dangerous.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-dangerous.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-color-error-bg-filled-hover);}.ant-btn-color-dangerous.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-color-error-bg-active);}.ant-btn-color-dangerous.ant-btn-variant-text{color:var(--ant-color-error);box-shadow:none;}.ant-btn-color-dangerous.ant-btn-variant-text:disabled,.ant-btn-color-dangerous.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-dangerous.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-color-error-hover);background:var(--ant-color-error-bg);}.ant-btn-color-dangerous.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-color-error-hover);background:var(--ant-color-error-bg-active);}.ant-btn-color-dangerous.ant-btn-variant-link{color:var(--ant-color-error);box-shadow:none;}.ant-btn-color-dangerous.ant-btn-variant-link:disabled,.ant-btn-color-dangerous.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-dangerous.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-color-error-hover);}.ant-btn-color-dangerous.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-color-error-active);}.ant-btn-color-dangerous.ant-btn-background-ghost{color:var(--ant-color-error);background:var(--ant-button-ghost-bg);border-color:var(--ant-color-error);box-shadow:none;}.ant-btn-color-dangerous.ant-btn-background-ghost:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-button-ghost-bg);color:var(--ant-color-error-hover);border-color:var(--ant-color-error-hover);}.ant-btn-color-dangerous.ant-btn-background-ghost:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-button-ghost-bg);color:var(--ant-color-error-active);border-color:var(--ant-color-error-active);}.ant-btn-color-dangerous.ant-btn-background-ghost:disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);border-color:var(--ant-color-border);}.ant-btn-color-link.ant-btn-variant-link{color:var(--ant-color-link);box-shadow:none;}.ant-btn-color-link.ant-btn-variant-link:disabled,.ant-btn-color-link.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-link.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-color-link-hover);}.ant-btn-color-link.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-color-link-active);}.ant-btn-color-link.ant-btn-background-ghost{color:var(--ant-color-info);background:var(--ant-button-ghost-bg);border-color:var(--ant-color-info);box-shadow:none;}.ant-btn-color-link.ant-btn-background-ghost:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-button-ghost-bg);color:var(--ant-color-info-hover);border-color:var(--ant-color-info-hover);}.ant-btn-color-link.ant-btn-background-ghost:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-button-ghost-bg);color:var(--ant-color-info-active);border-color:var(--ant-color-info-active);}.ant-btn-color-link.ant-btn-background-ghost:disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);border-color:var(--ant-color-border);}.ant-btn-color-blue{color:var(--ant-blue-6);box-shadow:var(--ant-button-blue-shadow-color);}.ant-btn-color-blue.ant-btn-variant-solid{color:var(--ant-color-text-light-solid);background:var(--ant-blue-6);}.ant-btn-color-blue.ant-btn-variant-solid:disabled,.ant-btn-color-blue.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-blue.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-blue-5);}.ant-btn-color-blue.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-blue-7);}.ant-btn-color-blue.ant-btn-variant-outlined,.ant-btn-color-blue.ant-btn-variant-dashed{border-color:var(--ant-blue-6);background:var(--ant-color-bg-container);}.ant-btn-color-blue.ant-btn-variant-outlined:disabled,.ant-btn-color-blue.ant-btn-variant-dashed:disabled,.ant-btn-color-blue.ant-btn-variant-outlined.ant-btn-disabled,.ant-btn-color-blue.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-blue.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,.ant-btn-color-blue.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-blue-5);border-color:var(--ant-blue-5);background:var(--ant-color-bg-container);}.ant-btn-color-blue.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,.ant-btn-color-blue.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-blue-7);border-color:var(--ant-blue-7);background:var(--ant-color-bg-container);}.ant-btn-color-blue.ant-btn-variant-dashed{border-style:dashed;}.ant-btn-color-blue.ant-btn-variant-filled{box-shadow:none;background:var(--ant-blue-1);}.ant-btn-color-blue.ant-btn-variant-filled:disabled,.ant-btn-color-blue.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-blue.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-blue-2);}.ant-btn-color-blue.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-blue-3);}.ant-btn-color-blue.ant-btn-variant-link{color:var(--ant-blue-6);box-shadow:none;}.ant-btn-color-blue.ant-btn-variant-link:disabled,.ant-btn-color-blue.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-blue.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-blue-5);}.ant-btn-color-blue.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-blue-7);}.ant-btn-color-blue.ant-btn-variant-text{color:var(--ant-blue-6);box-shadow:none;}.ant-btn-color-blue.ant-btn-variant-text:disabled,.ant-btn-color-blue.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-blue.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-blue-5);background:var(--ant-blue-1);}.ant-btn-color-blue.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-blue-7);background:var(--ant-blue-3);}.ant-btn-color-purple{color:var(--ant-purple-6);box-shadow:var(--ant-button-purple-shadow-color);}.ant-btn-color-purple.ant-btn-variant-solid{color:var(--ant-color-text-light-solid);background:var(--ant-purple-6);}.ant-btn-color-purple.ant-btn-variant-solid:disabled,.ant-btn-color-purple.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-purple.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-purple-5);}.ant-btn-color-purple.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-purple-7);}.ant-btn-color-purple.ant-btn-variant-outlined,.ant-btn-color-purple.ant-btn-variant-dashed{border-color:var(--ant-purple-6);background:var(--ant-color-bg-container);}.ant-btn-color-purple.ant-btn-variant-outlined:disabled,.ant-btn-color-purple.ant-btn-variant-dashed:disabled,.ant-btn-color-purple.ant-btn-variant-outlined.ant-btn-disabled,.ant-btn-color-purple.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-purple.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,.ant-btn-color-purple.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-purple-5);border-color:var(--ant-purple-5);background:var(--ant-color-bg-container);}.ant-btn-color-purple.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,.ant-btn-color-purple.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-purple-7);border-color:var(--ant-purple-7);background:var(--ant-color-bg-container);}.ant-btn-color-purple.ant-btn-variant-dashed{border-style:dashed;}.ant-btn-color-purple.ant-btn-variant-filled{box-shadow:none;background:var(--ant-purple-1);}.ant-btn-color-purple.ant-btn-variant-filled:disabled,.ant-btn-color-purple.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-purple.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-purple-2);}.ant-btn-color-purple.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-purple-3);}.ant-btn-color-purple.ant-btn-variant-link{color:var(--ant-purple-6);box-shadow:none;}.ant-btn-color-purple.ant-btn-variant-link:disabled,.ant-btn-color-purple.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-purple.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-purple-5);}.ant-btn-color-purple.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-purple-7);}.ant-btn-color-purple.ant-btn-variant-text{color:var(--ant-purple-6);box-shadow:none;}.ant-btn-color-purple.ant-btn-variant-text:disabled,.ant-btn-color-purple.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-purple.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-purple-5);background:var(--ant-purple-1);}.ant-btn-color-purple.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-purple-7);background:var(--ant-purple-3);}.ant-btn-color-cyan{color:var(--ant-cyan-6);box-shadow:var(--ant-button-cyan-shadow-color);}.ant-btn-color-cyan.ant-btn-variant-solid{color:var(--ant-color-text-light-solid);background:var(--ant-cyan-6);}.ant-btn-color-cyan.ant-btn-variant-solid:disabled,.ant-btn-color-cyan.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-cyan.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-cyan-5);}.ant-btn-color-cyan.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-cyan-7);}.ant-btn-color-cyan.ant-btn-variant-outlined,.ant-btn-color-cyan.ant-btn-variant-dashed{border-color:var(--ant-cyan-6);background:var(--ant-color-bg-container);}.ant-btn-color-cyan.ant-btn-variant-outlined:disabled,.ant-btn-color-cyan.ant-btn-variant-dashed:disabled,.ant-btn-color-cyan.ant-btn-variant-outlined.ant-btn-disabled,.ant-btn-color-cyan.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-cyan.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,.ant-btn-color-cyan.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-cyan-5);border-color:var(--ant-cyan-5);background:var(--ant-color-bg-container);}.ant-btn-color-cyan.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,.ant-btn-color-cyan.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-cyan-7);border-color:var(--ant-cyan-7);background:var(--ant-color-bg-container);}.ant-btn-color-cyan.ant-btn-variant-dashed{border-style:dashed;}.ant-btn-color-cyan.ant-btn-variant-filled{box-shadow:none;background:var(--ant-cyan-1);}.ant-btn-color-cyan.ant-btn-variant-filled:disabled,.ant-btn-color-cyan.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-cyan.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-cyan-2);}.ant-btn-color-cyan.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-cyan-3);}.ant-btn-color-cyan.ant-btn-variant-link{color:var(--ant-cyan-6);box-shadow:none;}.ant-btn-color-cyan.ant-btn-variant-link:disabled,.ant-btn-color-cyan.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-cyan.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-cyan-5);}.ant-btn-color-cyan.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-cyan-7);}.ant-btn-color-cyan.ant-btn-variant-text{color:var(--ant-cyan-6);box-shadow:none;}.ant-btn-color-cyan.ant-btn-variant-text:disabled,.ant-btn-color-cyan.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-cyan.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-cyan-5);background:var(--ant-cyan-1);}.ant-btn-color-cyan.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-cyan-7);background:var(--ant-cyan-3);}.ant-btn-color-green{color:var(--ant-green-6);box-shadow:var(--ant-button-green-shadow-color);}.ant-btn-color-green.ant-btn-variant-solid{color:var(--ant-color-text-light-solid);background:var(--ant-green-6);}.ant-btn-color-green.ant-btn-variant-solid:disabled,.ant-btn-color-green.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-green.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-green-5);}.ant-btn-color-green.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-green-7);}.ant-btn-color-green.ant-btn-variant-outlined,.ant-btn-color-green.ant-btn-variant-dashed{border-color:var(--ant-green-6);background:var(--ant-color-bg-container);}.ant-btn-color-green.ant-btn-variant-outlined:disabled,.ant-btn-color-green.ant-btn-variant-dashed:disabled,.ant-btn-color-green.ant-btn-variant-outlined.ant-btn-disabled,.ant-btn-color-green.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-green.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,.ant-btn-color-green.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-green-5);border-color:var(--ant-green-5);background:var(--ant-color-bg-container);}.ant-btn-color-green.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,.ant-btn-color-green.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-green-7);border-color:var(--ant-green-7);background:var(--ant-color-bg-container);}.ant-btn-color-green.ant-btn-variant-dashed{border-style:dashed;}.ant-btn-color-green.ant-btn-variant-filled{box-shadow:none;background:var(--ant-green-1);}.ant-btn-color-green.ant-btn-variant-filled:disabled,.ant-btn-color-green.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-green.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-green-2);}.ant-btn-color-green.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-green-3);}.ant-btn-color-green.ant-btn-variant-link{color:var(--ant-green-6);box-shadow:none;}.ant-btn-color-green.ant-btn-variant-link:disabled,.ant-btn-color-green.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-green.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-green-5);}.ant-btn-color-green.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-green-7);}.ant-btn-color-green.ant-btn-variant-text{color:var(--ant-green-6);box-shadow:none;}.ant-btn-color-green.ant-btn-variant-text:disabled,.ant-btn-color-green.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-green.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-green-5);background:var(--ant-green-1);}.ant-btn-color-green.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-green-7);background:var(--ant-green-3);}.ant-btn-color-magenta{color:var(--ant-magenta-6);box-shadow:var(--ant-button-magenta-shadow-color);}.ant-btn-color-magenta.ant-btn-variant-solid{color:var(--ant-color-text-light-solid);background:var(--ant-magenta-6);}.ant-btn-color-magenta.ant-btn-variant-solid:disabled,.ant-btn-color-magenta.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-magenta.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-magenta-5);}.ant-btn-color-magenta.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-magenta-7);}.ant-btn-color-magenta.ant-btn-variant-outlined,.ant-btn-color-magenta.ant-btn-variant-dashed{border-color:var(--ant-magenta-6);background:var(--ant-color-bg-container);}.ant-btn-color-magenta.ant-btn-variant-outlined:disabled,.ant-btn-color-magenta.ant-btn-variant-dashed:disabled,.ant-btn-color-magenta.ant-btn-variant-outlined.ant-btn-disabled,.ant-btn-color-magenta.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-magenta.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,.ant-btn-color-magenta.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-magenta-5);border-color:var(--ant-magenta-5);background:var(--ant-color-bg-container);}.ant-btn-color-magenta.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,.ant-btn-color-magenta.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-magenta-7);border-color:var(--ant-magenta-7);background:var(--ant-color-bg-container);}.ant-btn-color-magenta.ant-btn-variant-dashed{border-style:dashed;}.ant-btn-color-magenta.ant-btn-variant-filled{box-shadow:none;background:var(--ant-magenta-1);}.ant-btn-color-magenta.ant-btn-variant-filled:disabled,.ant-btn-color-magenta.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-magenta.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-magenta-2);}.ant-btn-color-magenta.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-magenta-3);}.ant-btn-color-magenta.ant-btn-variant-link{color:var(--ant-magenta-6);box-shadow:none;}.ant-btn-color-magenta.ant-btn-variant-link:disabled,.ant-btn-color-magenta.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-magenta.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-magenta-5);}.ant-btn-color-magenta.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-magenta-7);}.ant-btn-color-magenta.ant-btn-variant-text{color:var(--ant-magenta-6);box-shadow:none;}.ant-btn-color-magenta.ant-btn-variant-text:disabled,.ant-btn-color-magenta.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-magenta.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-magenta-5);background:var(--ant-magenta-1);}.ant-btn-color-magenta.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-magenta-7);background:var(--ant-magenta-3);}.ant-btn-color-pink{color:var(--ant-pink-6);box-shadow:var(--ant-button-pink-shadow-color);}.ant-btn-color-pink.ant-btn-variant-solid{color:var(--ant-color-text-light-solid);background:var(--ant-pink-6);}.ant-btn-color-pink.ant-btn-variant-solid:disabled,.ant-btn-color-pink.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-pink.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-pink-5);}.ant-btn-color-pink.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-pink-7);}.ant-btn-color-pink.ant-btn-variant-outlined,.ant-btn-color-pink.ant-btn-variant-dashed{border-color:var(--ant-pink-6);background:var(--ant-color-bg-container);}.ant-btn-color-pink.ant-btn-variant-outlined:disabled,.ant-btn-color-pink.ant-btn-variant-dashed:disabled,.ant-btn-color-pink.ant-btn-variant-outlined.ant-btn-disabled,.ant-btn-color-pink.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-pink.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,.ant-btn-color-pink.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-pink-5);border-color:var(--ant-pink-5);background:var(--ant-color-bg-container);}.ant-btn-color-pink.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,.ant-btn-color-pink.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-pink-7);border-color:var(--ant-pink-7);background:var(--ant-color-bg-container);}.ant-btn-color-pink.ant-btn-variant-dashed{border-style:dashed;}.ant-btn-color-pink.ant-btn-variant-filled{box-shadow:none;background:var(--ant-pink-1);}.ant-btn-color-pink.ant-btn-variant-filled:disabled,.ant-btn-color-pink.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-pink.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-pink-2);}.ant-btn-color-pink.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-pink-3);}.ant-btn-color-pink.ant-btn-variant-link{color:var(--ant-pink-6);box-shadow:none;}.ant-btn-color-pink.ant-btn-variant-link:disabled,.ant-btn-color-pink.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-pink.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-pink-5);}.ant-btn-color-pink.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-pink-7);}.ant-btn-color-pink.ant-btn-variant-text{color:var(--ant-pink-6);box-shadow:none;}.ant-btn-color-pink.ant-btn-variant-text:disabled,.ant-btn-color-pink.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-pink.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-pink-5);background:var(--ant-pink-1);}.ant-btn-color-pink.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-pink-7);background:var(--ant-pink-3);}.ant-btn-color-red{color:var(--ant-red-6);box-shadow:var(--ant-button-red-shadow-color);}.ant-btn-color-red.ant-btn-variant-solid{color:var(--ant-color-text-light-solid);background:var(--ant-red-6);}.ant-btn-color-red.ant-btn-variant-solid:disabled,.ant-btn-color-red.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-red.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-red-5);}.ant-btn-color-red.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-red-7);}.ant-btn-color-red.ant-btn-variant-outlined,.ant-btn-color-red.ant-btn-variant-dashed{border-color:var(--ant-red-6);background:var(--ant-color-bg-container);}.ant-btn-color-red.ant-btn-variant-outlined:disabled,.ant-btn-color-red.ant-btn-variant-dashed:disabled,.ant-btn-color-red.ant-btn-variant-outlined.ant-btn-disabled,.ant-btn-color-red.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-red.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,.ant-btn-color-red.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-red-5);border-color:var(--ant-red-5);background:var(--ant-color-bg-container);}.ant-btn-color-red.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,.ant-btn-color-red.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-red-7);border-color:var(--ant-red-7);background:var(--ant-color-bg-container);}.ant-btn-color-red.ant-btn-variant-dashed{border-style:dashed;}.ant-btn-color-red.ant-btn-variant-filled{box-shadow:none;background:var(--ant-red-1);}.ant-btn-color-red.ant-btn-variant-filled:disabled,.ant-btn-color-red.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-red.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-red-2);}.ant-btn-color-red.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-red-3);}.ant-btn-color-red.ant-btn-variant-link{color:var(--ant-red-6);box-shadow:none;}.ant-btn-color-red.ant-btn-variant-link:disabled,.ant-btn-color-red.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-red.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-red-5);}.ant-btn-color-red.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-red-7);}.ant-btn-color-red.ant-btn-variant-text{color:var(--ant-red-6);box-shadow:none;}.ant-btn-color-red.ant-btn-variant-text:disabled,.ant-btn-color-red.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-red.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-red-5);background:var(--ant-red-1);}.ant-btn-color-red.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-red-7);background:var(--ant-red-3);}.ant-btn-color-orange{color:var(--ant-orange-6);box-shadow:var(--ant-button-orange-shadow-color);}.ant-btn-color-orange.ant-btn-variant-solid{color:var(--ant-color-text-light-solid);background:var(--ant-orange-6);}.ant-btn-color-orange.ant-btn-variant-solid:disabled,.ant-btn-color-orange.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-orange.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-orange-5);}.ant-btn-color-orange.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-orange-7);}.ant-btn-color-orange.ant-btn-variant-outlined,.ant-btn-color-orange.ant-btn-variant-dashed{border-color:var(--ant-orange-6);background:var(--ant-color-bg-container);}.ant-btn-color-orange.ant-btn-variant-outlined:disabled,.ant-btn-color-orange.ant-btn-variant-dashed:disabled,.ant-btn-color-orange.ant-btn-variant-outlined.ant-btn-disabled,.ant-btn-color-orange.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-orange.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,.ant-btn-color-orange.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-orange-5);border-color:var(--ant-orange-5);background:var(--ant-color-bg-container);}.ant-btn-color-orange.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,.ant-btn-color-orange.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-orange-7);border-color:var(--ant-orange-7);background:var(--ant-color-bg-container);}.ant-btn-color-orange.ant-btn-variant-dashed{border-style:dashed;}.ant-btn-color-orange.ant-btn-variant-filled{box-shadow:none;background:var(--ant-orange-1);}.ant-btn-color-orange.ant-btn-variant-filled:disabled,.ant-btn-color-orange.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-orange.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-orange-2);}.ant-btn-color-orange.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-orange-3);}.ant-btn-color-orange.ant-btn-variant-link{color:var(--ant-orange-6);box-shadow:none;}.ant-btn-color-orange.ant-btn-variant-link:disabled,.ant-btn-color-orange.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-orange.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-orange-5);}.ant-btn-color-orange.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-orange-7);}.ant-btn-color-orange.ant-btn-variant-text{color:var(--ant-orange-6);box-shadow:none;}.ant-btn-color-orange.ant-btn-variant-text:disabled,.ant-btn-color-orange.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-orange.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-orange-5);background:var(--ant-orange-1);}.ant-btn-color-orange.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-orange-7);background:var(--ant-orange-3);}.ant-btn-color-yellow{color:var(--ant-yellow-6);box-shadow:var(--ant-button-yellow-shadow-color);}.ant-btn-color-yellow.ant-btn-variant-solid{color:var(--ant-color-text-light-solid);background:var(--ant-yellow-6);}.ant-btn-color-yellow.ant-btn-variant-solid:disabled,.ant-btn-color-yellow.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-yellow.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-yellow-5);}.ant-btn-color-yellow.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-yellow-7);}.ant-btn-color-yellow.ant-btn-variant-outlined,.ant-btn-color-yellow.ant-btn-variant-dashed{border-color:var(--ant-yellow-6);background:var(--ant-color-bg-container);}.ant-btn-color-yellow.ant-btn-variant-outlined:disabled,.ant-btn-color-yellow.ant-btn-variant-dashed:disabled,.ant-btn-color-yellow.ant-btn-variant-outlined.ant-btn-disabled,.ant-btn-color-yellow.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-yellow.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,.ant-btn-color-yellow.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-yellow-5);border-color:var(--ant-yellow-5);background:var(--ant-color-bg-container);}.ant-btn-color-yellow.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,.ant-btn-color-yellow.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-yellow-7);border-color:var(--ant-yellow-7);background:var(--ant-color-bg-container);}.ant-btn-color-yellow.ant-btn-variant-dashed{border-style:dashed;}.ant-btn-color-yellow.ant-btn-variant-filled{box-shadow:none;background:var(--ant-yellow-1);}.ant-btn-color-yellow.ant-btn-variant-filled:disabled,.ant-btn-color-yellow.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-yellow.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-yellow-2);}.ant-btn-color-yellow.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-yellow-3);}.ant-btn-color-yellow.ant-btn-variant-link{color:var(--ant-yellow-6);box-shadow:none;}.ant-btn-color-yellow.ant-btn-variant-link:disabled,.ant-btn-color-yellow.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-yellow.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-yellow-5);}.ant-btn-color-yellow.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-yellow-7);}.ant-btn-color-yellow.ant-btn-variant-text{color:var(--ant-yellow-6);box-shadow:none;}.ant-btn-color-yellow.ant-btn-variant-text:disabled,.ant-btn-color-yellow.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-yellow.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-yellow-5);background:var(--ant-yellow-1);}.ant-btn-color-yellow.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-yellow-7);background:var(--ant-yellow-3);}.ant-btn-color-volcano{color:var(--ant-volcano-6);box-shadow:var(--ant-button-volcano-shadow-color);}.ant-btn-color-volcano.ant-btn-variant-solid{color:var(--ant-color-text-light-solid);background:var(--ant-volcano-6);}.ant-btn-color-volcano.ant-btn-variant-solid:disabled,.ant-btn-color-volcano.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-volcano.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-volcano-5);}.ant-btn-color-volcano.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-volcano-7);}.ant-btn-color-volcano.ant-btn-variant-outlined,.ant-btn-color-volcano.ant-btn-variant-dashed{border-color:var(--ant-volcano-6);background:var(--ant-color-bg-container);}.ant-btn-color-volcano.ant-btn-variant-outlined:disabled,.ant-btn-color-volcano.ant-btn-variant-dashed:disabled,.ant-btn-color-volcano.ant-btn-variant-outlined.ant-btn-disabled,.ant-btn-color-volcano.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-volcano.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,.ant-btn-color-volcano.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-volcano-5);border-color:var(--ant-volcano-5);background:var(--ant-color-bg-container);}.ant-btn-color-volcano.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,.ant-btn-color-volcano.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-volcano-7);border-color:var(--ant-volcano-7);background:var(--ant-color-bg-container);}.ant-btn-color-volcano.ant-btn-variant-dashed{border-style:dashed;}.ant-btn-color-volcano.ant-btn-variant-filled{box-shadow:none;background:var(--ant-volcano-1);}.ant-btn-color-volcano.ant-btn-variant-filled:disabled,.ant-btn-color-volcano.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-volcano.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-volcano-2);}.ant-btn-color-volcano.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-volcano-3);}.ant-btn-color-volcano.ant-btn-variant-link{color:var(--ant-volcano-6);box-shadow:none;}.ant-btn-color-volcano.ant-btn-variant-link:disabled,.ant-btn-color-volcano.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-volcano.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-volcano-5);}.ant-btn-color-volcano.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-volcano-7);}.ant-btn-color-volcano.ant-btn-variant-text{color:var(--ant-volcano-6);box-shadow:none;}.ant-btn-color-volcano.ant-btn-variant-text:disabled,.ant-btn-color-volcano.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-volcano.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-volcano-5);background:var(--ant-volcano-1);}.ant-btn-color-volcano.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-volcano-7);background:var(--ant-volcano-3);}.ant-btn-color-geekblue{color:var(--ant-geekblue-6);box-shadow:var(--ant-button-geekblue-shadow-color);}.ant-btn-color-geekblue.ant-btn-variant-solid{color:var(--ant-color-text-light-solid);background:var(--ant-geekblue-6);}.ant-btn-color-geekblue.ant-btn-variant-solid:disabled,.ant-btn-color-geekblue.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-geekblue.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-geekblue-5);}.ant-btn-color-geekblue.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-geekblue-7);}.ant-btn-color-geekblue.ant-btn-variant-outlined,.ant-btn-color-geekblue.ant-btn-variant-dashed{border-color:var(--ant-geekblue-6);background:var(--ant-color-bg-container);}.ant-btn-color-geekblue.ant-btn-variant-outlined:disabled,.ant-btn-color-geekblue.ant-btn-variant-dashed:disabled,.ant-btn-color-geekblue.ant-btn-variant-outlined.ant-btn-disabled,.ant-btn-color-geekblue.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-geekblue.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,.ant-btn-color-geekblue.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-geekblue-5);border-color:var(--ant-geekblue-5);background:var(--ant-color-bg-container);}.ant-btn-color-geekblue.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,.ant-btn-color-geekblue.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-geekblue-7);border-color:var(--ant-geekblue-7);background:var(--ant-color-bg-container);}.ant-btn-color-geekblue.ant-btn-variant-dashed{border-style:dashed;}.ant-btn-color-geekblue.ant-btn-variant-filled{box-shadow:none;background:var(--ant-geekblue-1);}.ant-btn-color-geekblue.ant-btn-variant-filled:disabled,.ant-btn-color-geekblue.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-geekblue.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-geekblue-2);}.ant-btn-color-geekblue.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-geekblue-3);}.ant-btn-color-geekblue.ant-btn-variant-link{color:var(--ant-geekblue-6);box-shadow:none;}.ant-btn-color-geekblue.ant-btn-variant-link:disabled,.ant-btn-color-geekblue.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-geekblue.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-geekblue-5);}.ant-btn-color-geekblue.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-geekblue-7);}.ant-btn-color-geekblue.ant-btn-variant-text{color:var(--ant-geekblue-6);box-shadow:none;}.ant-btn-color-geekblue.ant-btn-variant-text:disabled,.ant-btn-color-geekblue.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-geekblue.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-geekblue-5);background:var(--ant-geekblue-1);}.ant-btn-color-geekblue.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-geekblue-7);background:var(--ant-geekblue-3);}.ant-btn-color-lime{color:var(--ant-lime-6);box-shadow:var(--ant-button-lime-shadow-color);}.ant-btn-color-lime.ant-btn-variant-solid{color:var(--ant-color-text-light-solid);background:var(--ant-lime-6);}.ant-btn-color-lime.ant-btn-variant-solid:disabled,.ant-btn-color-lime.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-lime.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-lime-5);}.ant-btn-color-lime.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-lime-7);}.ant-btn-color-lime.ant-btn-variant-outlined,.ant-btn-color-lime.ant-btn-variant-dashed{border-color:var(--ant-lime-6);background:var(--ant-color-bg-container);}.ant-btn-color-lime.ant-btn-variant-outlined:disabled,.ant-btn-color-lime.ant-btn-variant-dashed:disabled,.ant-btn-color-lime.ant-btn-variant-outlined.ant-btn-disabled,.ant-btn-color-lime.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-lime.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,.ant-btn-color-lime.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-lime-5);border-color:var(--ant-lime-5);background:var(--ant-color-bg-container);}.ant-btn-color-lime.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,.ant-btn-color-lime.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-lime-7);border-color:var(--ant-lime-7);background:var(--ant-color-bg-container);}.ant-btn-color-lime.ant-btn-variant-dashed{border-style:dashed;}.ant-btn-color-lime.ant-btn-variant-filled{box-shadow:none;background:var(--ant-lime-1);}.ant-btn-color-lime.ant-btn-variant-filled:disabled,.ant-btn-color-lime.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-lime.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-lime-2);}.ant-btn-color-lime.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-lime-3);}.ant-btn-color-lime.ant-btn-variant-link{color:var(--ant-lime-6);box-shadow:none;}.ant-btn-color-lime.ant-btn-variant-link:disabled,.ant-btn-color-lime.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-lime.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-lime-5);}.ant-btn-color-lime.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-lime-7);}.ant-btn-color-lime.ant-btn-variant-text{color:var(--ant-lime-6);box-shadow:none;}.ant-btn-color-lime.ant-btn-variant-text:disabled,.ant-btn-color-lime.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-lime.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-lime-5);background:var(--ant-lime-1);}.ant-btn-color-lime.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-lime-7);background:var(--ant-lime-3);}.ant-btn-color-gold{color:var(--ant-gold-6);box-shadow:var(--ant-button-gold-shadow-color);}.ant-btn-color-gold.ant-btn-variant-solid{color:var(--ant-color-text-light-solid);background:var(--ant-gold-6);}.ant-btn-color-gold.ant-btn-variant-solid:disabled,.ant-btn-color-gold.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-gold.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-gold-5);}.ant-btn-color-gold.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-gold-7);}.ant-btn-color-gold.ant-btn-variant-outlined,.ant-btn-color-gold.ant-btn-variant-dashed{border-color:var(--ant-gold-6);background:var(--ant-color-bg-container);}.ant-btn-color-gold.ant-btn-variant-outlined:disabled,.ant-btn-color-gold.ant-btn-variant-dashed:disabled,.ant-btn-color-gold.ant-btn-variant-outlined.ant-btn-disabled,.ant-btn-color-gold.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-gold.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,.ant-btn-color-gold.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-gold-5);border-color:var(--ant-gold-5);background:var(--ant-color-bg-container);}.ant-btn-color-gold.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,.ant-btn-color-gold.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-gold-7);border-color:var(--ant-gold-7);background:var(--ant-color-bg-container);}.ant-btn-color-gold.ant-btn-variant-dashed{border-style:dashed;}.ant-btn-color-gold.ant-btn-variant-filled{box-shadow:none;background:var(--ant-gold-1);}.ant-btn-color-gold.ant-btn-variant-filled:disabled,.ant-btn-color-gold.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-color-gold.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-gold-2);}.ant-btn-color-gold.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-gold-3);}.ant-btn-color-gold.ant-btn-variant-link{color:var(--ant-gold-6);box-shadow:none;}.ant-btn-color-gold.ant-btn-variant-link:disabled,.ant-btn-color-gold.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-gold.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-gold-5);}.ant-btn-color-gold.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-gold-7);}.ant-btn-color-gold.ant-btn-variant-text{color:var(--ant-gold-6);box-shadow:none;}.ant-btn-color-gold.ant-btn-variant-text:disabled,.ant-btn-color-gold.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-color-gold.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-gold-5);background:var(--ant-gold-1);}.ant-btn-color-gold.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-gold-7);background:var(--ant-gold-3);}.ant-btn-variant-outlined,.ant-btn-variant-dashed{border-color:var(--ant-button-default-border-color);background:var(--ant-button-default-bg);}.ant-btn-variant-outlined:disabled,.ant-btn-variant-dashed:disabled,.ant-btn-variant-outlined.ant-btn-disabled,.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-button-default-hover-color);border-color:var(--ant-button-default-hover-border-color);background:var(--ant-button-default-hover-bg);}.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-button-default-active-color);border-color:var(--ant-button-default-active-border-color);background:var(--ant-button-default-active-bg);}.ant-btn-variant-text{color:var(--ant-button-text-text-color);box-shadow:none;}.ant-btn-variant-text:disabled,.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-button-text-text-hover-color);background:var(--ant-button-text-hover-bg);}.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-button-text-text-active-color);background:var(--ant-color-bg-text-active);}.ant-btn-variant-solid{color:var(--ant-button-primary-color);background:var(--ant-color-primary);}.ant-btn-variant-solid:disabled,.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:var(--ant-button-border-color-disabled);color:var(--ant-color-text-disabled);background:var(--ant-color-bg-container-disabled);box-shadow:none;}.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:var(--ant-color-primary-hover);color:var(--ant-button-primary-color);}.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:var(--ant-color-primary-active);color:var(--ant-button-primary-color);}.ant-btn-variant-link{color:var(--ant-color-link);box-shadow:none;}.ant-btn-variant-link:disabled,.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:var(--ant-color-text-disabled);}.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:var(--ant-color-link-hover);background:var(--ant-button-link-hover-bg);}.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:var(--ant-color-link-active);}.ant-btn-group{position:relative;display:inline-flex;}.ant-btn-group >span:not(:last-child),.ant-btn-group >.ant-btn:not(:last-child),.ant-btn-group >span:not(:last-child)>.ant-btn,.ant-btn-group >.ant-btn:not(:last-child)>.ant-btn{border-start-end-radius:0;border-end-end-radius:0;}.ant-btn-group >span:not(:first-child),.ant-btn-group >.ant-btn:not(:first-child){margin-inline-start:calc(var(--ant-line-width) * -1);}.ant-btn-group >span:not(:first-child),.ant-btn-group >.ant-btn:not(:first-child),.ant-btn-group >span:not(:first-child)>.ant-btn,.ant-btn-group >.ant-btn:not(:first-child)>.ant-btn{border-start-start-radius:0;border-end-start-radius:0;}.ant-btn-group .ant-btn{position:relative;z-index:1;}.ant-btn-group .ant-btn:hover,.ant-btn-group .ant-btn:focus,.ant-btn-group .ant-btn:active{z-index:2;}.ant-btn-group .ant-btn[disabled]{z-index:0;}.ant-btn-group .ant-btn-icon-only{font-size:var(--ant-font-size);}.ant-btn-group >span:not(:last-child):not(:disabled),.ant-btn-group >.ant-btn-primary:not(:last-child):not(:disabled),.ant-btn-group >span:not(:last-child)>.ant-btn-primary:not(:disabled),.ant-btn-group >.ant-btn-primary:not(:last-child)>.ant-btn-primary:not(:disabled){border-inline-end-color:var(--ant-button-group-border-color);}.ant-btn-group >span:not(:first-child):not(:disabled),.ant-btn-group >.ant-btn-primary:not(:first-child):not(:disabled),.ant-btn-group >span:not(:first-child)>.ant-btn-primary:not(:disabled),.ant-btn-group >.ant-btn-primary:not(:first-child)>.ant-btn-primary:not(:disabled){border-inline-start-color:var(--ant-button-group-border-color);}.ant-btn-group >span:not(:last-child):not(:disabled),.ant-btn-group >.ant-btn-danger:not(:last-child):not(:disabled),.ant-btn-group >span:not(:last-child)>.ant-btn-danger:not(:disabled),.ant-btn-group >.ant-btn-danger:not(:last-child)>.ant-btn-danger:not(:disabled){border-inline-end-color:var(--ant-color-error-hover);}.ant-btn-group >span:not(:first-child):not(:disabled),.ant-btn-group >.ant-btn-danger:not(:first-child):not(:disabled),.ant-btn-group >span:not(:first-child)>.ant-btn-danger:not(:disabled),.ant-btn-group >.ant-btn-danger:not(:first-child)>.ant-btn-danger:not(:disabled){border-inline-start-color:var(--ant-color-error-hover);}.ant-dropdown{position:absolute;top:-9999px;left:-9999px;z-index:var(--ant-dropdown-z-index-popup);display:block;}.ant-dropdown::before{position:absolute;inset-block:calc(var(--ant-size-popup-arrow) / 2 - calc(var(--ant-size-popup-arrow) / 2 + var(--ant-margin-xxs)));z-index:-9999;opacity:0.0001;content:"";}.ant-dropdown-menu-vertical{max-height:100vh;overflow-y:auto;}.ant-dropdown-trigger.ant-btn>.anticon-down,.ant-dropdown-trigger.ant-btn>.ant-btn-icon>.anticon-down{font-size:var(--ant-font-size-icon);}.ant-dropdown .ant-dropdown-wrap{position:relative;}.ant-dropdown .ant-dropdown-wrap .ant-btn>.anticon-down{font-size:var(--ant-font-size-icon);}.ant-dropdown .ant-dropdown-wrap .anticon-down::before{transition:transform var(--ant-motion-duration-mid);}.ant-dropdown .ant-dropdown-wrap-open .anticon-down::before{transform:rotate(180deg);}.ant-dropdown-hidden,.ant-dropdown-menu-hidden,.ant-dropdown-menu-submenu-hidden{display:none;}.ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottomLeft,.ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottomLeft,.ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottom,.ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottom,.ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottomRight,.ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottomRight{animation-name:antSlideUpIn;}.ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-topLeft,.ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-topLeft,.ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-top,.ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-top,.ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-topRight,.ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-topRight{animation-name:antSlideDownIn;}.ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottomLeft,.ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottom,.ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottomRight{animation-name:antSlideUpOut;}.ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-topLeft,.ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-top,.ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-topRight{animation-name:antSlideDownOut;}.ant-dropdown .ant-dropdown-arrow{position:absolute;z-index:1;display:block;pointer-events:none;width:var(--ant-size-popup-arrow);height:var(--ant-size-popup-arrow);overflow:hidden;}.ant-dropdown .ant-dropdown-arrow::before{position:absolute;bottom:0;inset-inline-start:0;width:var(--ant-size-popup-arrow);height:calc(var(--ant-size-popup-arrow) / 2);background:var(--ant-color-bg-elevated);clip-path:var(--ant-dropdown-arrow-polygon);clip-path:var(--ant-dropdown-arrow-path);content:"";}.ant-dropdown .ant-dropdown-arrow::after{content:"";position:absolute;width:var(--ant-dropdown-arrow-shadow-width);height:var(--ant-dropdown-arrow-shadow-width);bottom:0;inset-inline:0;margin:auto;border-radius:0 0 var(--ant-border-radius-xs) 0;transform:translateY(50%) rotate(-135deg);box-shadow:var(--ant-box-shadow-popover-arrow);z-index:0;background:transparent;}.ant-dropdown .ant-dropdown-arrow:before{background:var(--ant-color-bg-elevated);}.ant-dropdown-placement-top>.ant-dropdown-arrow,.ant-dropdown-placement-topLeft>.ant-dropdown-arrow,.ant-dropdown-placement-topRight>.ant-dropdown-arrow{bottom:0;transform:translateY(100%) rotate(180deg);}.ant-dropdown-placement-top>.ant-dropdown-arrow{left:50%;transform:translateX(-50%) translateY(100%) rotate(180deg);}.ant-dropdown-placement-topLeft{--arrow-offset-horizontal:var(--ant-dropdown-arrow-offset-horizontal);}.ant-dropdown-placement-topLeft >.ant-dropdown-arrow{left:var(--ant-dropdown-arrow-offset-horizontal);}.ant-dropdown-placement-topRight{--arrow-offset-horizontal:calc(100% - var(--ant-dropdown-arrow-offset-horizontal));}.ant-dropdown-placement-topRight >.ant-dropdown-arrow{right:var(--ant-dropdown-arrow-offset-horizontal);}.ant-dropdown-placement-bottom>.ant-dropdown-arrow,.ant-dropdown-placement-bottomLeft>.ant-dropdown-arrow,.ant-dropdown-placement-bottomRight>.ant-dropdown-arrow{top:0;transform:translateY(-100%);}.ant-dropdown-placement-bottom>.ant-dropdown-arrow{left:50%;transform:translateX(-50%) translateY(-100%);}.ant-dropdown-placement-bottomLeft{--arrow-offset-horizontal:var(--ant-dropdown-arrow-offset-horizontal);}.ant-dropdown-placement-bottomLeft >.ant-dropdown-arrow{left:var(--ant-dropdown-arrow-offset-horizontal);}.ant-dropdown-placement-bottomRight{--arrow-offset-horizontal:calc(100% - var(--ant-dropdown-arrow-offset-horizontal));}.ant-dropdown-placement-bottomRight >.ant-dropdown-arrow{right:var(--ant-dropdown-arrow-offset-horizontal);}.ant-dropdown .ant-dropdown-menu{position:relative;margin:0;}.ant-dropdown-menu-submenu-popup{position:absolute;z-index:var(--ant-dropdown-z-index-popup);background:transparent;box-shadow:none;transform-origin:0 0;}.ant-dropdown-menu-submenu-popup ul,.ant-dropdown-menu-submenu-popup li{list-style:none;margin:0;}.ant-dropdown,.ant-dropdown-menu-submenu{box-sizing:border-box;margin:0;padding:0;color:var(--ant-color-text);font-size:var(--ant-font-size);line-height:var(--ant-line-height);list-style:none;font-family:var(--ant-font-family);}.ant-dropdown .ant-dropdown-menu,.ant-dropdown-menu-submenu .ant-dropdown-menu{padding:var(--ant-padding-xxs);list-style-type:none;background-color:var(--ant-color-bg-elevated);background-clip:padding-box;border-radius:var(--ant-border-radius-lg);outline:none;box-shadow:var(--ant-box-shadow-secondary);}.ant-dropdown .ant-dropdown-menu:focus-visible,.ant-dropdown-menu-submenu .ant-dropdown-menu:focus-visible{outline:var(--ant-line-width-focus) solid var(--ant-color-primary-border);outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-dropdown .ant-dropdown-menu:empty,.ant-dropdown-menu-submenu .ant-dropdown-menu:empty{padding:0;box-shadow:none;}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-group-title,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-group-title{padding:var(--ant-dropdown-padding-block) var(--ant-control-padding-horizontal);color:var(--ant-color-text-description);transition:all var(--ant-motion-duration-mid);}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item{position:relative;display:flex;align-items:center;}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-icon,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-icon{min-width:var(--ant-font-size);margin-inline-end:var(--ant-margin-xs);font-size:var(--ant-font-size-sm);}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-title-content,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-title-content{flex:auto;}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-title-content-with-extra,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-title-content-with-extra{display:inline-flex;align-items:center;width:100%;}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-title-content >a,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-title-content >a{color:inherit;transition:all var(--ant-motion-duration-mid);}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-title-content >a:hover,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-title-content >a:hover{color:inherit;}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-title-content >a::after,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-title-content >a::after{position:absolute;inset:0;content:"";}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-title-content .ant-dropdown-menu-item-extra,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-title-content .ant-dropdown-menu-item-extra{padding-inline-start:var(--ant-padding);margin-inline-start:auto;font-size:var(--ant-font-size-sm);color:var(--ant-color-text-description);}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item,.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title{display:flex;margin:0;padding:var(--ant-dropdown-padding-block) var(--ant-control-padding-horizontal);color:var(--ant-color-text);font-weight:normal;font-size:var(--ant-font-size);line-height:var(--ant-line-height);cursor:pointer;transition:all var(--ant-motion-duration-mid);border-radius:var(--ant-border-radius-sm);}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item:hover,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item:hover,.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title:hover,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title:hover,.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-active,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-active,.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title-active,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title-active{background-color:var(--ant-control-item-bg-hover);}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item:focus-visible,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item:focus-visible,.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title:focus-visible,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title:focus-visible{outline:var(--ant-line-width-focus) solid var(--ant-color-primary-border);outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-selected,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-selected,.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title-selected,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title-selected{color:var(--ant-color-primary);background-color:var(--ant-control-item-bg-active);}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-selected:hover,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-selected:hover,.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title-selected:hover,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title-selected:hover,.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-selected-active,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-selected-active,.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title-selected-active,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title-selected-active{background-color:var(--ant-control-item-bg-active-hover);}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-disabled,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-disabled,.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title-disabled,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title-disabled{color:var(--ant-color-text-disabled);cursor:not-allowed;}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-disabled:hover,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-disabled:hover,.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title-disabled:hover,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title-disabled:hover{color:var(--ant-color-text-disabled);background-color:var(--ant-color-bg-elevated);cursor:not-allowed;}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-disabled a,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-disabled a,.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title-disabled a,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title-disabled a{pointer-events:none;}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-divider,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-divider,.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title-divider,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title-divider{height:1px;margin:var(--ant-margin-xxs) 0;overflow:hidden;line-height:0;background-color:var(--ant-color-split);}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon,.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon{position:absolute;inset-inline-end:var(--ant-padding-xs);}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon,.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon{margin-inline-end:0!important;color:var(--ant-color-icon);font-size:var(--ant-font-size-icon);font-style:normal;}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-group-list,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-group-list{margin:0 var(--ant-margin-xs);padding:0;list-style:none;}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title{padding-inline-end:calc(var(--ant-control-padding-horizontal) + var(--ant-font-size-sm));}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-vertical,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-vertical{position:relative;}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu.ant-dropdown-menu-submenu-disabled .ant-dropdown-menu-submenu-title,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu.ant-dropdown-menu-submenu-disabled .ant-dropdown-menu-submenu-title,.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu.ant-dropdown-menu-submenu-disabled .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow-icon,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu.ant-dropdown-menu-submenu-disabled .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow-icon{color:var(--ant-color-text-disabled);background-color:var(--ant-color-bg-elevated);cursor:not-allowed;}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-selected .ant-dropdown-menu-submenu-title,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-selected .ant-dropdown-menu-submenu-title{color:var(--ant-color-primary);}.ant-slide-up-enter,.ant-slide-up-appear{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-slide-up-leave{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-slide-up-enter.ant-slide-up-enter-active,.ant-slide-up-appear.ant-slide-up-appear-active{animation-name:antSlideUpIn;animation-play-state:running;}.ant-slide-up-leave.ant-slide-up-leave-active{animation-name:antSlideUpOut;animation-play-state:running;pointer-events:none;}.ant-slide-up-enter,.ant-slide-up-appear{transform:scale(0);transform-origin:0% 0%;opacity:0;animation-timing-function:var(--ant-motion-ease-out-quint);}.ant-slide-up-enter-prepare,.ant-slide-up-appear-prepare{transform:scale(1);}.ant-slide-up-leave{animation-timing-function:var(--ant-motion-ease-in-quint);}.ant-slide-down-enter,.ant-slide-down-appear{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-slide-down-leave{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-slide-down-enter.ant-slide-down-enter-active,.ant-slide-down-appear.ant-slide-down-appear-active{animation-name:antSlideDownIn;animation-play-state:running;}.ant-slide-down-leave.ant-slide-down-leave-active{animation-name:antSlideDownOut;animation-play-state:running;pointer-events:none;}.ant-slide-down-enter,.ant-slide-down-appear{transform:scale(0);transform-origin:0% 0%;opacity:0;animation-timing-function:var(--ant-motion-ease-out-quint);}.ant-slide-down-enter-prepare,.ant-slide-down-appear-prepare{transform:scale(1);}.ant-slide-down-leave{animation-timing-function:var(--ant-motion-ease-in-quint);}.ant-move-up-enter,.ant-move-up-appear{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-move-up-leave{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-move-up-enter.ant-move-up-enter-active,.ant-move-up-appear.ant-move-up-appear-active{animation-name:antMoveUpIn;animation-play-state:running;}.ant-move-up-leave.ant-move-up-leave-active{animation-name:antMoveUpOut;animation-play-state:running;pointer-events:none;}.ant-move-up-enter,.ant-move-up-appear{opacity:0;animation-timing-function:var(--ant-motion-ease-out-circ);}.ant-move-up-leave{animation-timing-function:var(--ant-motion-ease-in-out-circ);}.ant-move-down-enter,.ant-move-down-appear{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-move-down-leave{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-move-down-enter.ant-move-down-enter-active,.ant-move-down-appear.ant-move-down-appear-active{animation-name:antMoveDownIn;animation-play-state:running;}.ant-move-down-leave.ant-move-down-leave-active{animation-name:antMoveDownOut;animation-play-state:running;pointer-events:none;}.ant-move-down-enter,.ant-move-down-appear{opacity:0;animation-timing-function:var(--ant-motion-ease-out-circ);}.ant-move-down-leave{animation-timing-function:var(--ant-motion-ease-in-out-circ);}.ant-zoom-big-enter,.ant-zoom-big-appear{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-zoom-big-leave{animation-duration:var(--ant-motion-duration-mid);animation-fill-mode:both;animation-play-state:paused;}.ant-zoom-big-enter.ant-zoom-big-enter-active,.ant-zoom-big-appear.ant-zoom-big-appear-active{animation-name:antZoomBigIn;animation-play-state:running;}.ant-zoom-big-leave.ant-zoom-big-leave-active{animation-name:antZoomBigOut;animation-play-state:running;pointer-events:none;}.ant-zoom-big-enter,.ant-zoom-big-appear{transform:scale(0);opacity:0;animation-timing-function:var(--ant-motion-ease-out-circ);}.ant-zoom-big-enter-prepare,.ant-zoom-big-appear-prepare{transform:none;}.ant-zoom-big-leave{animation-timing-function:var(--ant-motion-ease-in-out-circ);}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item.ant-dropdown-menu-item-danger:not(.ant-dropdown-menu-item-disabled),.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item.ant-dropdown-menu-item-danger:not(.ant-dropdown-menu-item-disabled){color:var(--ant-color-error);}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item.ant-dropdown-menu-item-danger:not(.ant-dropdown-menu-item-disabled):hover,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item.ant-dropdown-menu-item-danger:not(.ant-dropdown-menu-item-disabled):hover{color:var(--ant-color-text-light-solid);background-color:var(--ant-color-error);}.ant-flex{display:flex;margin:0;padding:0;}.ant-flex-vertical{flex-direction:column;}.ant-flex-rtl{direction:rtl;}.ant-flex:empty{display:none;}.ant-flex-gap-small{gap:var(--ant-padding-xs);}.ant-flex-gap-middle{gap:var(--ant-padding);}.ant-flex-gap-large{gap:var(--ant-padding-lg);}.ant-flex-wrap-wrap{flex-wrap:wrap;}.ant-flex-wrap-nowrap{flex-wrap:nowrap;}.ant-flex-wrap-wrap-reverse{flex-wrap:wrap-reverse;}.ant-flex-align-center{align-items:center;}.ant-flex-align-start{align-items:start;}.ant-flex-align-end{align-items:end;}.ant-flex-align-flex-start{align-items:flex-start;}.ant-flex-align-flex-end{align-items:flex-end;}.ant-flex-align-self-start{align-items:self-start;}.ant-flex-align-self-end{align-items:self-end;}.ant-flex-align-baseline{align-items:baseline;}.ant-flex-align-normal{align-items:normal;}.ant-flex-align-stretch{align-items:stretch;}.ant-flex-justify-flex-start{justify-content:flex-start;}.ant-flex-justify-flex-end{justify-content:flex-end;}.ant-flex-justify-start{justify-content:start;}.ant-flex-justify-end{justify-content:end;}.ant-flex-justify-center{justify-content:center;}.ant-flex-justify-space-between{justify-content:space-between;}.ant-flex-justify-space-around{justify-content:space-around;}.ant-flex-justify-space-evenly{justify-content:space-evenly;}.ant-flex-justify-stretch{justify-content:stretch;}.ant-flex-justify-normal{justify-content:normal;}.ant-flex-justify-left{justify-content:left;}.ant-flex-justify-right{justify-content:right;}.ant-tag{font-family:var(--ant-font-family);font-size:var(--ant-font-size);box-sizing:border-box;}.ant-tag::before,.ant-tag::after{box-sizing:border-box;}.ant-tag [class^="ant-tag"],.ant-tag [class*=" ant-tag"]{box-sizing:border-box;}.ant-tag [class^="ant-tag"]::before,.ant-tag [class*=" ant-tag"]::before,.ant-tag [class^="ant-tag"]::after,.ant-tag [class*=" ant-tag"]::after{box-sizing:border-box;}.ant-tag{box-sizing:border-box;margin:0;padding:0;color:var(--ant-color-text);font-size:var(--ant-font-size-sm);line-height:calc(var(--ant-line-height-sm) * var(--ant-font-size-sm));list-style:none;font-family:var(--ant-font-family);display:inline-block;height:auto;margin-inline-end:var(--ant-margin-xs);padding-inline:calc(8px - var(--ant-line-width));white-space:nowrap;background:var(--ant-tag-default-bg);border:var(--ant-line-width) var(--ant-line-type) var(--ant-color-border);border-radius:var(--ant-border-radius-sm);opacity:1;transition:all var(--ant-motion-duration-mid);text-align:start;position:relative;}.ant-tag.ant-tag-rtl{direction:rtl;}.ant-tag,.ant-tag a,.ant-tag a:hover{color:var(--ant-tag-default-color);}.ant-tag .ant-tag-close-icon{margin-inline-start:calc(var(--ant-padding-xxs) - var(--ant-line-width));font-size:calc(var(--ant-font-size-icon) - var(--ant-line-width) * 2);color:var(--ant-color-icon);cursor:pointer;transition:all var(--ant-motion-duration-mid);}.ant-tag .ant-tag-close-icon:hover{color:var(--ant-color-text-heading);}.ant-tag.ant-tag-has-color{border-color:transparent;}.ant-tag.ant-tag-has-color,.ant-tag.ant-tag-has-color a,.ant-tag.ant-tag-has-color a:hover,.ant-tag.ant-tag-has-color .anticon-close,.ant-tag.ant-tag-has-color .anticon-close:hover{color:var(--ant-color-text-light-solid);}.ant-tag-checkable{background-color:transparent;border-color:transparent;cursor:pointer;}.ant-tag-checkable:not(.ant-tag-checkable-checked):hover{color:var(--ant-color-primary);background-color:var(--ant-color-fill-secondary);}.ant-tag-checkable:active,.ant-tag-checkable-checked{color:var(--ant-color-text-light-solid);}.ant-tag-checkable-checked{background-color:var(--ant-color-primary);}.ant-tag-checkable-checked:hover{background-color:var(--ant-color-primary-hover);}.ant-tag-checkable:active{background-color:var(--ant-color-primary-active);}.ant-tag-hidden{display:none;}.ant-tag >.anticon+span,.ant-tag >span+.anticon{margin-inline-start:calc(8px - var(--ant-line-width));}.ant-tag-borderless{border-color:transparent;background:var(--ant-tag-default-bg);}.ant-anchor-css-var{font-family:var(--ant-font-family);font-size:var(--ant-font-size);box-sizing:border-box;}.ant-anchor-css-var::before,.ant-anchor-css-var::after{box-sizing:border-box;}.ant-anchor-css-var [class^="ant-anchor"],.ant-anchor-css-var [class*=" ant-anchor"]{box-sizing:border-box;}.ant-anchor-css-var [class^="ant-anchor"]::before,.ant-anchor-css-var [class*=" ant-anchor"]::before,.ant-anchor-css-var [class^="ant-anchor"]::after,.ant-anchor-css-var [class*=" ant-anchor"]::after{box-sizing:border-box;}.ant-anchor-wrapper{margin-block-start:calc(var(--ant-padding-xxs) * -1);padding-block-start:var(--ant-padding-xxs);}.ant-anchor-wrapper .ant-anchor{box-sizing:border-box;margin:0;padding:0;color:var(--ant-color-text);font-size:var(--ant-font-size);line-height:var(--ant-line-height);list-style:none;font-family:var(--ant-font-family);position:relative;padding-inline-start:var(--ant-line-width-bold);}.ant-anchor-wrapper .ant-anchor .ant-anchor-link{padding-block:var(--ant-anchor-link-padding-block);padding-inline:var(--ant-anchor-link-padding-inline-start) 0;}.ant-anchor-wrapper .ant-anchor .ant-anchor-link-title{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;position:relative;display:block;margin-block-end:calc(var(--ant-font-size) / 14 * 3);color:var(--ant-color-text);transition:all var(--ant-motion-duration-slow);}.ant-anchor-wrapper .ant-anchor .ant-anchor-link-title:only-child{margin-block-end:0;}.ant-anchor-wrapper .ant-anchor .ant-anchor-link-active>.ant-anchor-link-title{color:var(--ant-color-primary);}.ant-anchor-wrapper .ant-anchor .ant-anchor-link .ant-anchor-link{padding-block:calc(var(--ant-padding-xxs) / 2);}.ant-anchor-wrapper:not(.ant-anchor-wrapper-horizontal) .ant-anchor::before{position:absolute;inset-inline-start:0;top:0;height:100%;border-inline-start:var(--ant-line-width-bold) var(--ant-line-type) var(--ant-color-split);content:" ";}.ant-anchor-wrapper:not(.ant-anchor-wrapper-horizontal) .ant-anchor .ant-anchor-ink{position:absolute;inset-inline-start:0;display:none;transform:translateY(-50%);transition:top var(--ant-motion-duration-slow) ease-in-out;width:var(--ant-line-width-bold);background-color:var(--ant-color-primary);}.ant-anchor-wrapper:not(.ant-anchor-wrapper-horizontal) .ant-anchor .ant-anchor-ink.ant-anchor-ink-visible{display:inline-block;}.ant-anchor-wrapper .ant-anchor-fixed .ant-anchor-ink .ant-anchor-ink{display:none;}.ant-anchor-wrapper-horizontal{position:relative;}.ant-anchor-wrapper-horizontal::before{position:absolute;left:0;right:0;bottom:0;border-bottom:var(--ant-line-width) var(--ant-line-type) var(--ant-color-split);content:" ";}.ant-anchor-wrapper-horizontal .ant-anchor{overflow-x:scroll;position:relative;display:flex;scrollbar-width:none;}.ant-anchor-wrapper-horizontal .ant-anchor::-webkit-scrollbar{display:none;}.ant-anchor-wrapper-horizontal .ant-anchor .ant-anchor-link:first-of-type{padding-inline:0;}.ant-anchor-wrapper-horizontal .ant-anchor .ant-anchor-ink{position:absolute;bottom:0;transition:left var(--ant-motion-duration-slow) ease-in-out,width var(--ant-motion-duration-slow) ease-in-out;height:var(--ant-line-width-bold);background-color:var(--ant-color-primary);}.ant-typography{font-family:var(--ant-font-family);font-size:var(--ant-font-size);box-sizing:border-box;}.ant-typography::before,.ant-typography::after{box-sizing:border-box;}.ant-typography [class^="ant-typography"],.ant-typography [class*=" ant-typography"]{box-sizing:border-box;}.ant-typography [class^="ant-typography"]::before,.ant-typography [class*=" ant-typography"]::before,.ant-typography [class^="ant-typography"]::after,.ant-typography [class*=" ant-typography"]::after{box-sizing:border-box;}.ant-typography{color:var(--ant-color-text);word-break:break-word;line-height:var(--ant-line-height);}.ant-typography.ant-typography-secondary{color:var(--ant-color-text-description);}.ant-typography.ant-typography-success{color:var(--ant-color-success-text);}.ant-typography.ant-typography-warning{color:var(--ant-color-warning-text);}.ant-typography.ant-typography-danger{color:var(--ant-color-error-text);}a.ant-typography.ant-typography-danger:active,a.ant-typography.ant-typography-danger:focus{color:var(--ant-color-error-text-active);}a.ant-typography.ant-typography-danger:hover{color:var(--ant-color-error-text-hover);}.ant-typography.ant-typography-disabled{color:var(--ant-color-text-disabled);cursor:not-allowed;user-select:none;}div.ant-typography,.ant-typography p{margin-bottom:1em;}h1.ant-typography,div.ant-typography-h1,div.ant-typography-h1>textarea,.ant-typography h1{margin-bottom:var(--ant-typography-title-margin-bottom);color:var(--ant-color-text-heading);font-weight:var(--ant-font-weight-strong);font-size:var(--ant-font-size-heading-1);line-height:var(--ant-line-height-heading-1);}h2.ant-typography,div.ant-typography-h2,div.ant-typography-h2>textarea,.ant-typography h2{margin-bottom:var(--ant-typography-title-margin-bottom);color:var(--ant-color-text-heading);font-weight:var(--ant-font-weight-strong);font-size:var(--ant-font-size-heading-2);line-height:var(--ant-line-height-heading-2);}h3.ant-typography,div.ant-typography-h3,div.ant-typography-h3>textarea,.ant-typography h3{margin-bottom:var(--ant-typography-title-margin-bottom);color:var(--ant-color-text-heading);font-weight:var(--ant-font-weight-strong);font-size:var(--ant-font-size-heading-3);line-height:var(--ant-line-height-heading-3);}h4.ant-typography,div.ant-typography-h4,div.ant-typography-h4>textarea,.ant-typography h4{margin-bottom:var(--ant-typography-title-margin-bottom);color:var(--ant-color-text-heading);font-weight:var(--ant-font-weight-strong);font-size:var(--ant-font-size-heading-4);line-height:var(--ant-line-height-heading-4);}h5.ant-typography,div.ant-typography-h5,div.ant-typography-h5>textarea,.ant-typography h5{margin-bottom:var(--ant-typography-title-margin-bottom);color:var(--ant-color-text-heading);font-weight:var(--ant-font-weight-strong);font-size:var(--ant-font-size-heading-5);line-height:var(--ant-line-height-heading-5);}.ant-typography+h1.ant-typography,.ant-typography+h2.ant-typography,.ant-typography+h3.ant-typography,.ant-typography+h4.ant-typography,.ant-typography+h5.ant-typography{margin-top:var(--ant-typography-title-margin-top);}.ant-typography div +h1,.ant-typography ul +h1,.ant-typography li +h1,.ant-typography p +h1,.ant-typography h1 +h1,.ant-typography h2 +h1,.ant-typography h3 +h1,.ant-typography h4 +h1,.ant-typography h5 +h1,.ant-typography div +h2,.ant-typography ul +h2,.ant-typography li +h2,.ant-typography p +h2,.ant-typography h1 +h2,.ant-typography h2 +h2,.ant-typography h3 +h2,.ant-typography h4 +h2,.ant-typography h5 +h2,.ant-typography div +h3,.ant-typography ul +h3,.ant-typography li +h3,.ant-typography p +h3,.ant-typography h1 +h3,.ant-typography h2 +h3,.ant-typography h3 +h3,.ant-typography h4 +h3,.ant-typography h5 +h3,.ant-typography div +h4,.ant-typography ul +h4,.ant-typography li +h4,.ant-typography p +h4,.ant-typography h1 +h4,.ant-typography h2 +h4,.ant-typography h3 +h4,.ant-typography h4 +h4,.ant-typography h5 +h4,.ant-typography div +h5,.ant-typography ul +h5,.ant-typography li +h5,.ant-typography p +h5,.ant-typography h1 +h5,.ant-typography h2 +h5,.ant-typography h3 +h5,.ant-typography h4 +h5,.ant-typography h5 +h5{margin-top:var(--ant-typography-title-margin-top);}.ant-typography code{margin:0 0.2em;padding-inline:0.4em;padding-block:0.2em 0.1em;font-size:85%;font-family:var(--ant-font-family-code);background:rgba(150, 150, 150, 0.1);border:1px solid rgba(100, 100, 100, 0.2);border-radius:3px;}.ant-typography kbd{margin:0 0.2em;padding-inline:0.4em;padding-block:0.15em 0.1em;font-size:90%;font-family:var(--ant-font-family-code);background:rgba(150, 150, 150, 0.06);border:1px solid rgba(100, 100, 100, 0.2);border-bottom-width:2px;border-radius:3px;}.ant-typography mark{padding:0;background-color:#ffe58f;}.ant-typography u,.ant-typography ins{text-decoration:underline;text-decoration-skip-ink:auto;}.ant-typography s,.ant-typography del{text-decoration:line-through;}.ant-typography strong{font-weight:600;}.ant-typography ul,.ant-typography ol{margin-inline:0;margin-block:0 1em;padding:0;}.ant-typography ul li,.ant-typography ol li{margin-inline:20px 0;margin-block:0;padding-inline:4px 0;padding-block:0;}.ant-typography ul{list-style-type:circle;}.ant-typography ul ul{list-style-type:disc;}.ant-typography ol{list-style-type:decimal;}.ant-typography pre,.ant-typography blockquote{margin:1em 0;}.ant-typography pre{padding:0.4em 0.6em;white-space:pre-wrap;word-wrap:break-word;background:rgba(150, 150, 150, 0.1);border:1px solid rgba(100, 100, 100, 0.2);border-radius:3px;font-family:var(--ant-font-family-code);}.ant-typography pre code{display:inline;margin:0;padding:0;font-size:inherit;font-family:inherit;background:transparent;border:0;}.ant-typography blockquote{padding-inline:0.6em 0;padding-block:0;border-inline-start:4px solid rgba(100, 100, 100, 0.2);opacity:0.85;}a.ant-typography,.ant-typography a{color:var(--ant-color-link);text-decoration:var(--ant-link-decoration);outline:none;cursor:pointer;transition:all var(--ant-motion-duration-slow);border:0;padding:0;background:none;user-select:text;}a.ant-typography:focus-visible,.ant-typography a:focus-visible{outline:var(--ant-line-width-focus) solid var(--ant-color-primary-border);outline-offset:1px;transition:outline-offset 0s,outline 0s;}a.ant-typography:focus,.ant-typography a:focus,a.ant-typography:hover,.ant-typography a:hover{color:var(--ant-color-link-hover);}a.ant-typography:active,.ant-typography a:active{color:var(--ant-color-link-active);}a.ant-typography[disabled],.ant-typography a[disabled],a.ant-typography.ant-typography-disabled,.ant-typography a.ant-typography-disabled{color:var(--ant-color-text-disabled);cursor:not-allowed;}a.ant-typography[disabled]:active,.ant-typography a[disabled]:active,a.ant-typography.ant-typography-disabled:active,.ant-typography a.ant-typography-disabled:active,a.ant-typography[disabled]:hover,.ant-typography a[disabled]:hover,a.ant-typography.ant-typography-disabled:hover,.ant-typography a.ant-typography-disabled:hover{color:var(--ant-color-text-disabled);}a.ant-typography[disabled]:active,.ant-typography a[disabled]:active,a.ant-typography.ant-typography-disabled:active,.ant-typography a.ant-typography-disabled:active{pointer-events:none;}.ant-typography .ant-typography-expand,.ant-typography .ant-typography-collapse,.ant-typography .ant-typography-edit,.ant-typography .ant-typography-copy{color:var(--ant-color-link);text-decoration:var(--ant-link-decoration);outline:none;cursor:pointer;transition:all var(--ant-motion-duration-slow);border:0;padding:0;background:none;user-select:none;margin-inline-start:var(--ant-margin-xxs);}.ant-typography .ant-typography-expand:focus-visible,.ant-typography .ant-typography-collapse:focus-visible,.ant-typography .ant-typography-edit:focus-visible,.ant-typography .ant-typography-copy:focus-visible{outline:var(--ant-line-width-focus) solid var(--ant-color-primary-border);outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-typography .ant-typography-expand:focus,.ant-typography .ant-typography-collapse:focus,.ant-typography .ant-typography-edit:focus,.ant-typography .ant-typography-copy:focus,.ant-typography .ant-typography-expand:hover,.ant-typography .ant-typography-collapse:hover,.ant-typography .ant-typography-edit:hover,.ant-typography .ant-typography-copy:hover{color:var(--ant-color-link-hover);}.ant-typography .ant-typography-expand:active,.ant-typography .ant-typography-collapse:active,.ant-typography .ant-typography-edit:active,.ant-typography .ant-typography-copy:active{color:var(--ant-color-link-active);}.ant-typography-edit-content{position:relative;}div.ant-typography-edit-content{inset-inline-start:calc(var(--ant-padding-sm) * -1);margin-top:calc(var(--ant-padding-sm) * -1);margin-bottom:calc(1em - var(--ant-padding-sm));}.ant-typography-edit-content .ant-typography-edit-content-confirm{position:absolute;inset-inline-end:calc(var(--ant-margin-xs) + 2px);inset-block-end:var(--ant-margin-xs);color:var(--ant-color-icon);font-weight:normal;font-size:var(--ant-font-size);font-style:normal;pointer-events:none;}.ant-typography-edit-content textarea{margin:0!important;-moz-transition:none;height:1em;}.ant-typography .ant-typography-copy-success,.ant-typography .ant-typography-copy-success:hover,.ant-typography .ant-typography-copy-success:focus{color:var(--ant-color-success);}.ant-typography .ant-typography-copy-icon-only{margin-inline-start:0;}a.ant-typography-ellipsis,span.ant-typography-ellipsis{display:inline-block;max-width:100%;}.ant-typography-ellipsis-single-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}a.ant-typography-ellipsis-single-line,span.ant-typography-ellipsis-single-line{vertical-align:bottom;}.ant-typography-ellipsis-single-line >code{padding-block:0;max-width:calc(100% - 1.2em);display:inline-block;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom;box-sizing:content-box;}.ant-typography-ellipsis-multiple-line{display:-webkit-box;overflow:hidden;-webkit-line-clamp:3;-webkit-box-orient:vertical;}.ant-typography-rtl{direction:rtl;}.ant-space{display:inline-flex;}.ant-space-rtl{direction:rtl;}.ant-space-vertical{flex-direction:column;}.ant-space-align{flex-direction:column;}.ant-space-align-center{align-items:center;}.ant-space-align-start{align-items:flex-start;}.ant-space-align-end{align-items:flex-end;}.ant-space-align-baseline{align-items:baseline;}.ant-space .ant-space-item:empty{display:none;}.ant-space .ant-space-item>.ant-badge-not-a-wrapper:only-child{display:block;}.ant-space-gap-row-small{row-gap:var(--ant-padding-xs);}.ant-space-gap-row-middle{row-gap:var(--ant-padding);}.ant-space-gap-row-large{row-gap:var(--ant-padding-lg);}.ant-space-gap-col-small{column-gap:var(--ant-padding-xs);}.ant-space-gap-col-middle{column-gap:var(--ant-padding);}.ant-space-gap-col-large{column-gap:var(--ant-padding-lg);}.ant-space-block{display:flex;width:100%;}.ant-space-vertical{flex-direction:column;}.ant-avatar-css-var{font-family:var(--ant-font-family);font-size:var(--ant-font-size);box-sizing:border-box;}.ant-avatar-css-var::before,.ant-avatar-css-var::after{box-sizing:border-box;}.ant-avatar-css-var [class^="ant-avatar"],.ant-avatar-css-var [class*=" ant-avatar"]{box-sizing:border-box;}.ant-avatar-css-var [class^="ant-avatar"]::before,.ant-avatar-css-var [class*=" ant-avatar"]::before,.ant-avatar-css-var [class^="ant-avatar"]::after,.ant-avatar-css-var [class*=" ant-avatar"]::after{box-sizing:border-box;}.ant-avatar{box-sizing:border-box;margin:0;padding:0;color:var(--ant-color-text-light-solid);font-size:var(--ant-font-size);line-height:var(--ant-line-height);list-style:none;font-family:var(--ant-font-family);position:relative;display:inline-flex;justify-content:center;align-items:center;overflow:hidden;white-space:nowrap;text-align:center;vertical-align:middle;background:var(--ant-color-text-placeholder);border:var(--ant-line-width) var(--ant-line-type) transparent;width:var(--ant-avatar-container-size);height:var(--ant-avatar-container-size);border-radius:50%;}.ant-avatar-image{background:transparent;}.ant-avatar .ant-image-img{display:block;}.ant-avatar.ant-avatar-square{border-radius:var(--ant-border-radius);}.ant-avatar.ant-avatar-icon{font-size:var(--ant-avatar-text-font-size);}.ant-avatar.ant-avatar-icon >.anticon{margin:0;}.ant-avatar-lg{width:var(--ant-avatar-container-size-lg);height:var(--ant-avatar-container-size-lg);border-radius:50%;}.ant-avatar-lg.ant-avatar-square{border-radius:var(--ant-border-radius-lg);}.ant-avatar-lg.ant-avatar-icon{font-size:var(--ant-avatar-text-font-size-lg);}.ant-avatar-lg.ant-avatar-icon >.anticon{margin:0;}.ant-avatar-sm{width:var(--ant-avatar-container-size-sm);height:var(--ant-avatar-container-size-sm);border-radius:50%;}.ant-avatar-sm.ant-avatar-square{border-radius:var(--ant-border-radius-sm);}.ant-avatar-sm.ant-avatar-icon{font-size:var(--ant-avatar-text-font-size-sm);}.ant-avatar-sm.ant-avatar-icon >.anticon{margin:0;}.ant-avatar >img{display:block;width:100%;height:100%;object-fit:cover;}.ant-avatar-group{display:inline-flex;}.ant-avatar-group .ant-avatar{border-color:var(--ant-avatar-group-border-color);}.ant-avatar-group >*:not(:first-child){margin-inline-start:var(--ant-avatar-group-overlapping);}.ant-avatar-group-popover .ant-avatar+.ant-avatar{margin-inline-start:var(--ant-avatar-group-space);}.ant-tag.ant-tag-success{color:var(--ant-color-success);background:var(--ant-color-success-bg);border-color:var(--ant-color-success-border);}.ant-tag.ant-tag-success.ant-tag-borderless{border-color:transparent;}.ant-tag.ant-tag-processing{color:var(--ant-color-info);background:var(--ant-color-info-bg);border-color:var(--ant-color-info-border);}.ant-tag.ant-tag-processing.ant-tag-borderless{border-color:transparent;}.ant-tag.ant-tag-error{color:var(--ant-color-error);background:var(--ant-color-error-bg);border-color:var(--ant-color-error-border);}.ant-tag.ant-tag-error.ant-tag-borderless{border-color:transparent;}.ant-tag.ant-tag-warning{color:var(--ant-color-warning);background:var(--ant-color-warning-bg);border-color:var(--ant-color-warning-border);}.ant-tag.ant-tag-warning.ant-tag-borderless{border-color:transparent;}.anticon{display:inline-flex;align-items:center;color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-0.125em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}.anticon >*{line-height:1;}.anticon svg{display:inline-block;}.anticon .anticon .anticon-icon{display:block;}.anticon{display:inline-flex;align-items:center;color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-0.125em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}.anticon >*{line-height:1;}.anticon svg{display:inline-block;}.anticon .anticon .anticon-icon{display:block;}.data-ant-cssinjs-cache-path{content:"1gwk7ce|ant-design-icons|anticon:18n8gvw;ju2tp6|ant-design-icons|anticon:lxo389;1xhad65|Shared|ant:pxmd91;1xhad65|App-App|ant-app|anticon:1w2n57e;1xhad65|Grid-Grid|ant-row|anticon:wydrei;1xhad65|Grid-Grid|ant-col|anticon:fnx8bh;1xhad65|Menu-Menu|ant-menu|anticon:7qw44s;1xhad65|Tooltip-Tooltip|ant-tooltip|anticon:18lo6hv;1xhad65|Select-Select|ant-select|anticon:2zwan9;1xhad65|Button-Button|ant-btn|anticon:18mdzh4;1xhad65|Dropdown-Dropdown|ant-dropdown|anticon:13erwgd;1xhad65|Flex-Flex|ant-flex|anticon:1ce4r0t;1xhad65|Tag-Tag|ant-tag|anticon:10dd6un;1xhad65|Tag-status|ant-tag|anticon:1u2h0xb;1xhad65|Anchor-Anchor|ant-anchor|anticon:nxsva;1xhad65|Typography-Typography|ant-typography|anticon:1rnluw5;1xhad65|Space-Space|ant-space|anticon:hncdzz;1xhad65|Avatar-Avatar|ant-avatar|anticon:oicgek";}</style><style data-type="antd-css-var" data-rc-order="prepend" data-rc-priority="-9999">.css-var-«R2a»{--ant-blue:#1677FF;--ant-purple:#722ED1;--ant-cyan:#13C2C2;--ant-green:#52C41A;--ant-magenta:#EB2F96;--ant-pink:#EB2F96;--ant-red:#F5222D;--ant-orange:#FA8C16;--ant-yellow:#FADB14;--ant-volcano:#FA541C;--ant-geekblue:#2F54EB;--ant-gold:#FAAD14;--ant-lime:#A0D911;--ant-color-primary:#1677ff;--ant-color-success:#52c41a;--ant-color-warning:#faad14;--ant-color-error:#ff4d4f;--ant-color-info:#1677ff;--ant-color-link:#1677ff;--ant-color-text-base:#000;--ant-color-bg-base:#fff;--ant-font-family:-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial,
'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',
'Noto Color Emoji';--ant-font-family-code:'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace;--ant-font-size:14px;--ant-line-width:1px;--ant-line-type:solid;--ant-motion-ease-out-circ:cubic-bezier(0.08, 0.82, 0.17, 1);--ant-motion-ease-in-out-circ:cubic-bezier(0.78, 0.14, 0.15, 0.86);--ant-motion-ease-out:cubic-bezier(0.215, 0.61, 0.355, 1);--ant-motion-ease-in-out:cubic-bezier(0.645, 0.045, 0.355, 1);--ant-motion-ease-out-back:cubic-bezier(0.12, 0.4, 0.29, 1.46);--ant-motion-ease-in-back:cubic-bezier(0.71, -0.46, 0.88, 0.6);--ant-motion-ease-in-quint:cubic-bezier(0.755, 0.05, 0.855, 0.06);--ant-motion-ease-out-quint:cubic-bezier(0.23, 1, 0.32, 1);--ant-border-radius:6px;--ant-size-popup-arrow:16px;--ant-control-height:32px;--ant-z-index-base:0;--ant-z-index-popup-base:1000;--ant-opacity-image:1;--ant-blue-1:#e6f4ff;--ant-blue-2:#bae0ff;--ant-blue-3:#91caff;--ant-blue-4:#69b1ff;--ant-blue-5:#4096ff;--ant-blue-6:#1677ff;--ant-blue-7:#0958d9;--ant-blue-8:#003eb3;--ant-blue-9:#002c8c;--ant-blue-10:#001d66;--ant-purple-1:#f9f0ff;--ant-purple-2:#efdbff;--ant-purple-3:#d3adf7;--ant-purple-4:#b37feb;--ant-purple-5:#9254de;--ant-purple-6:#722ed1;--ant-purple-7:#531dab;--ant-purple-8:#391085;--ant-purple-9:#22075e;--ant-purple-10:#120338;--ant-cyan-1:#e6fffb;--ant-cyan-2:#b5f5ec;--ant-cyan-3:#87e8de;--ant-cyan-4:#5cdbd3;--ant-cyan-5:#36cfc9;--ant-cyan-6:#13c2c2;--ant-cyan-7:#08979c;--ant-cyan-8:#006d75;--ant-cyan-9:#00474f;--ant-cyan-10:#002329;--ant-green-1:#f6ffed;--ant-green-2:#d9f7be;--ant-green-3:#b7eb8f;--ant-green-4:#95de64;--ant-green-5:#73d13d;--ant-green-6:#52c41a;--ant-green-7:#389e0d;--ant-green-8:#237804;--ant-green-9:#135200;--ant-green-10:#092b00;--ant-magenta-1:#fff0f6;--ant-magenta-2:#ffd6e7;--ant-magenta-3:#ffadd2;--ant-magenta-4:#ff85c0;--ant-magenta-5:#f759ab;--ant-magenta-6:#eb2f96;--ant-magenta-7:#c41d7f;--ant-magenta-8:#9e1068;--ant-magenta-9:#780650;--ant-magenta-10:#520339;--ant-pink-1:#fff0f6;--ant-pink-2:#ffd6e7;--ant-pink-3:#ffadd2;--ant-pink-4:#ff85c0;--ant-pink-5:#f759ab;--ant-pink-6:#eb2f96;--ant-pink-7:#c41d7f;--ant-pink-8:#9e1068;--ant-pink-9:#780650;--ant-pink-10:#520339;--ant-red-1:#fff1f0;--ant-red-2:#ffccc7;--ant-red-3:#ffa39e;--ant-red-4:#ff7875;--ant-red-5:#ff4d4f;--ant-red-6:#f5222d;--ant-red-7:#cf1322;--ant-red-8:#a8071a;--ant-red-9:#820014;--ant-red-10:#5c0011;--ant-orange-1:#fff7e6;--ant-orange-2:#ffe7ba;--ant-orange-3:#ffd591;--ant-orange-4:#ffc069;--ant-orange-5:#ffa940;--ant-orange-6:#fa8c16;--ant-orange-7:#d46b08;--ant-orange-8:#ad4e00;--ant-orange-9:#873800;--ant-orange-10:#612500;--ant-yellow-1:#feffe6;--ant-yellow-2:#ffffb8;--ant-yellow-3:#fffb8f;--ant-yellow-4:#fff566;--ant-yellow-5:#ffec3d;--ant-yellow-6:#fadb14;--ant-yellow-7:#d4b106;--ant-yellow-8:#ad8b00;--ant-yellow-9:#876800;--ant-yellow-10:#614700;--ant-volcano-1:#fff2e8;--ant-volcano-2:#ffd8bf;--ant-volcano-3:#ffbb96;--ant-volcano-4:#ff9c6e;--ant-volcano-5:#ff7a45;--ant-volcano-6:#fa541c;--ant-volcano-7:#d4380d;--ant-volcano-8:#ad2102;--ant-volcano-9:#871400;--ant-volcano-10:#610b00;--ant-geekblue-1:#f0f5ff;--ant-geekblue-2:#d6e4ff;--ant-geekblue-3:#adc6ff;--ant-geekblue-4:#85a5ff;--ant-geekblue-5:#597ef7;--ant-geekblue-6:#2f54eb;--ant-geekblue-7:#1d39c4;--ant-geekblue-8:#10239e;--ant-geekblue-9:#061178;--ant-geekblue-10:#030852;--ant-gold-1:#fffbe6;--ant-gold-2:#fff1b8;--ant-gold-3:#ffe58f;--ant-gold-4:#ffd666;--ant-gold-5:#ffc53d;--ant-gold-6:#faad14;--ant-gold-7:#d48806;--ant-gold-8:#ad6800;--ant-gold-9:#874d00;--ant-gold-10:#613400;--ant-lime-1:#fcffe6;--ant-lime-2:#f4ffb8;--ant-lime-3:#eaff8f;--ant-lime-4:#d3f261;--ant-lime-5:#bae637;--ant-lime-6:#a0d911;--ant-lime-7:#7cb305;--ant-lime-8:#5b8c00;--ant-lime-9:#3f6600;--ant-lime-10:#254000;--ant-color-text:rgba(0,0,0,0.88);--ant-color-text-secondary:rgba(0,0,0,0.65);--ant-color-text-tertiary:rgba(0,0,0,0.45);--ant-color-text-quaternary:rgba(0,0,0,0.25);--ant-color-fill:rgba(0,0,0,0.15);--ant-color-fill-secondary:rgba(0,0,0,0.06);--ant-color-fill-tertiary:rgba(0,0,0,0.04);--ant-color-fill-quaternary:rgba(0,0,0,0.02);--ant-color-bg-solid:rgb(0,0,0);--ant-color-bg-solid-hover:rgba(0,0,0,0.75);--ant-color-bg-solid-active:rgba(0,0,0,0.95);--ant-color-bg-layout:#f5f5f5;--ant-color-bg-container:#ffffff;--ant-color-bg-elevated:#ffffff;--ant-color-bg-spotlight:rgba(0,0,0,0.85);--ant-color-bg-blur:transparent;--ant-color-border:#d9d9d9;--ant-color-border-secondary:#f0f0f0;--ant-color-primary-bg:#e6f4ff;--ant-color-primary-bg-hover:#bae0ff;--ant-color-primary-border:#91caff;--ant-color-primary-border-hover:#69b1ff;--ant-color-primary-hover:#4096ff;--ant-color-primary-active:#0958d9;--ant-color-primary-text-hover:#4096ff;--ant-color-primary-text:#1677ff;--ant-color-primary-text-active:#0958d9;--ant-color-success-bg:#f6ffed;--ant-color-success-bg-hover:#d9f7be;--ant-color-success-border:#b7eb8f;--ant-color-success-border-hover:#95de64;--ant-color-success-hover:#95de64;--ant-color-success-active:#389e0d;--ant-color-success-text-hover:#73d13d;--ant-color-success-text:#52c41a;--ant-color-success-text-active:#389e0d;--ant-color-error-bg:#fff2f0;--ant-color-error-bg-hover:#fff1f0;--ant-color-error-bg-filled-hover:#ffdfdc;--ant-color-error-bg-active:#ffccc7;--ant-color-error-border:#ffccc7;--ant-color-error-border-hover:#ffa39e;--ant-color-error-hover:#ff7875;--ant-color-error-active:#d9363e;--ant-color-error-text-hover:#ff7875;--ant-color-error-text:#ff4d4f;--ant-color-error-text-active:#d9363e;--ant-color-warning-bg:#fffbe6;--ant-color-warning-bg-hover:#fff1b8;--ant-color-warning-border:#ffe58f;--ant-color-warning-border-hover:#ffd666;--ant-color-warning-hover:#ffd666;--ant-color-warning-active:#d48806;--ant-color-warning-text-hover:#ffc53d;--ant-color-warning-text:#faad14;--ant-color-warning-text-active:#d48806;--ant-color-info-bg:#e6f4ff;--ant-color-info-bg-hover:#bae0ff;--ant-color-info-border:#91caff;--ant-color-info-border-hover:#69b1ff;--ant-color-info-hover:#69b1ff;--ant-color-info-active:#0958d9;--ant-color-info-text-hover:#4096ff;--ant-color-info-text:#1677ff;--ant-color-info-text-active:#0958d9;--ant-color-link-hover:#69b1ff;--ant-color-link-active:#0958d9;--ant-color-bg-mask:rgba(0,0,0,0.45);--ant-color-white:#fff;--ant-font-size-sm:12px;--ant-font-size-lg:16px;--ant-font-size-xl:20px;--ant-font-size-heading-1:38px;--ant-font-size-heading-2:30px;--ant-font-size-heading-3:24px;--ant-font-size-heading-4:20px;--ant-font-size-heading-5:16px;--ant-line-height:1.5714285714285714;--ant-line-height-lg:1.5;--ant-line-height-sm:1.6666666666666667;--ant-font-height:22px;--ant-font-height-lg:24px;--ant-font-height-sm:20px;--ant-line-height-heading-1:1.2105263157894737;--ant-line-height-heading-2:1.2666666666666666;--ant-line-height-heading-3:1.3333333333333333;--ant-line-height-heading-4:1.4;--ant-line-height-heading-5:1.5;--ant-control-height-sm:24px;--ant-control-height-xs:16px;--ant-control-height-lg:40px;--ant-motion-duration-fast:0.1s;--ant-motion-duration-mid:0.2s;--ant-motion-duration-slow:0.3s;--ant-line-width-bold:2px;--ant-border-radius-xs:2px;--ant-border-radius-sm:4px;--ant-border-radius-lg:8px;--ant-border-radius-outer:4px;--ant-color-fill-content:rgba(0,0,0,0.06);--ant-color-fill-content-hover:rgba(0,0,0,0.15);--ant-color-fill-alter:rgba(0,0,0,0.02);--ant-color-bg-container-disabled:rgba(0,0,0,0.04);--ant-color-border-bg:#ffffff;--ant-color-split:rgba(5,5,5,0.06);--ant-color-text-placeholder:rgba(0,0,0,0.25);--ant-color-text-disabled:rgba(0,0,0,0.25);--ant-color-text-heading:rgba(0,0,0,0.88);--ant-color-text-label:rgba(0,0,0,0.65);--ant-color-text-description:rgba(0,0,0,0.45);--ant-color-text-light-solid:#fff;--ant-color-highlight:#ff4d4f;--ant-color-bg-text-hover:rgba(0,0,0,0.06);--ant-color-bg-text-active:rgba(0,0,0,0.15);--ant-color-icon:rgba(0,0,0,0.45);--ant-color-icon-hover:rgba(0,0,0,0.88);--ant-color-error-outline:rgba(255,38,5,0.06);--ant-color-warning-outline:rgba(255,215,5,0.1);--ant-font-size-icon:12px;--ant-line-width-focus:3px;--ant-control-outline-width:2px;--ant-control-interactive-size:16px;--ant-control-item-bg-hover:rgba(0,0,0,0.04);--ant-control-item-bg-active:#e6f4ff;--ant-control-item-bg-active-hover:#bae0ff;--ant-control-item-bg-active-disabled:rgba(0,0,0,0.15);--ant-control-tmp-outline:rgba(0,0,0,0.02);--ant-control-outline:rgba(5,145,255,0.1);--ant-font-weight-strong:600;--ant-opacity-loading:0.65;--ant-link-decoration:none;--ant-link-hover-decoration:none;--ant-link-focus-decoration:none;--ant-control-padding-horizontal:12px;--ant-control-padding-horizontal-sm:8px;--ant-padding-xxs:4px;--ant-padding-xs:8px;--ant-padding-sm:12px;--ant-padding:16px;--ant-padding-md:20px;--ant-padding-lg:24px;--ant-padding-xl:32px;--ant-padding-content-horizontal-lg:24px;--ant-padding-content-vertical-lg:16px;--ant-padding-content-horizontal:16px;--ant-padding-content-vertical:12px;--ant-padding-content-horizontal-sm:16px;--ant-padding-content-vertical-sm:8px;--ant-margin-xxs:4px;--ant-margin-xs:8px;--ant-margin-sm:12px;--ant-margin:16px;--ant-margin-md:20px;--ant-margin-lg:24px;--ant-margin-xl:32px;--ant-margin-xxl:48px;--ant-box-shadow:
0 6px 16px 0 rgba(0, 0, 0, 0.08),
0 3px 6px -4px rgba(0, 0, 0, 0.12),
0 9px 28px 8px rgba(0, 0, 0, 0.05)
;--ant-box-shadow-secondary:
0 6px 16px 0 rgba(0, 0, 0, 0.08),
0 3px 6px -4px rgba(0, 0, 0, 0.12),
0 9px 28px 8px rgba(0, 0, 0, 0.05)
;--ant-box-shadow-tertiary:
0 1px 2px 0 rgba(0, 0, 0, 0.03),
0 1px 6px -1px rgba(0, 0, 0, 0.02),
0 2px 4px 0 rgba(0, 0, 0, 0.02)
;--ant-box-shadow-popover-arrow:2px 2px 5px rgba(0, 0, 0, 0.05);--ant-box-shadow-card:
0 1px 2px -2px rgba(0,0,0,0.16),
0 3px 6px 0 rgba(0,0,0,0.12),
0 5px 12px 4px rgba(0,0,0,0.09)
;--ant-box-shadow-drawer-right:
-6px 0 16px 0 rgba(0, 0, 0, 0.08),
-3px 0 6px -4px rgba(0, 0, 0, 0.12),
-9px 0 28px 8px rgba(0, 0, 0, 0.05)
;--ant-box-shadow-drawer-left:
6px 0 16px 0 rgba(0, 0, 0, 0.08),
3px 0 6px -4px rgba(0, 0, 0, 0.12),
9px 0 28px 8px rgba(0, 0, 0, 0.05)
;--ant-box-shadow-drawer-up:
0 6px 16px 0 rgba(0, 0, 0, 0.08),
0 3px 6px -4px rgba(0, 0, 0, 0.12),
0 9px 28px 8px rgba(0, 0, 0, 0.05)
;--ant-box-shadow-drawer-down:
0 -6px 16px 0 rgba(0, 0, 0, 0.08),
0 -3px 6px -4px rgba(0, 0, 0, 0.12),
0 -9px 28px 8px rgba(0, 0, 0, 0.05)
;--ant-box-shadow-tabs-overflow-left:inset 10px 0 8px -8px rgba(0, 0, 0, 0.08);--ant-box-shadow-tabs-overflow-right:inset -10px 0 8px -8px rgba(0, 0, 0, 0.08);--ant-box-shadow-tabs-overflow-top:inset 0 10px 8px -8px rgba(0, 0, 0, 0.08);--ant-box-shadow-tabs-overflow-bottom:inset 0 -10px 8px -8px rgba(0, 0, 0, 0.08);}.css-var-«R2a».ant-menu-css-var{--ant-menu-dropdown-width:160px;--ant-menu-z-index-popup:1050;--ant-menu-radius-item:8px;--ant-menu-item-border-radius:8px;--ant-menu-radius-sub-menu-item:4px;--ant-menu-sub-menu-item-border-radius:4px;--ant-menu-color-item-text:rgba(0,0,0,0.88);--ant-menu-item-color:rgba(0,0,0,0.88);--ant-menu-color-item-text-hover:rgba(0,0,0,0.88);--ant-menu-item-hover-color:rgba(0,0,0,0.88);--ant-menu-color-item-text-hover-horizontal:#1677ff;--ant-menu-horizontal-item-hover-color:#1677ff;--ant-menu-color-group-title:rgba(0,0,0,0.45);--ant-menu-group-title-color:rgba(0,0,0,0.45);--ant-menu-color-item-text-selected:#1677ff;--ant-menu-item-selected-color:#1677ff;--ant-menu-sub-menu-item-selected-color:#1677ff;--ant-menu-color-item-text-selected-horizontal:#1677ff;--ant-menu-horizontal-item-selected-color:#1677ff;--ant-menu-color-item-bg:#ffffff;--ant-menu-item-bg:#ffffff;--ant-menu-color-item-bg-hover:rgba(0,0,0,0.06);--ant-menu-item-hover-bg:rgba(0,0,0,0.06);--ant-menu-color-item-bg-active:rgba(0,0,0,0.06);--ant-menu-item-active-bg:#e6f4ff;--ant-menu-color-sub-item-bg:rgba(0,0,0,0.02);--ant-menu-sub-menu-item-bg:rgba(0,0,0,0.02);--ant-menu-color-item-bg-selected:#e6f4ff;--ant-menu-item-selected-bg:#e6f4ff;--ant-menu-color-item-bg-selected-horizontal:transparent;--ant-menu-horizontal-item-selected-bg:transparent;--ant-menu-color-active-bar-width:0px;--ant-menu-active-bar-width:0px;--ant-menu-color-active-bar-height:2px;--ant-menu-active-bar-height:2px;--ant-menu-color-active-bar-border-size:1px;--ant-menu-active-bar-border-width:1px;--ant-menu-color-item-text-disabled:rgba(0,0,0,0.25);--ant-menu-item-disabled-color:rgba(0,0,0,0.25);--ant-menu-color-danger-item-text:#ff4d4f;--ant-menu-danger-item-color:#ff4d4f;--ant-menu-color-danger-item-text-hover:#ff4d4f;--ant-menu-danger-item-hover-color:#ff4d4f;--ant-menu-color-danger-item-text-selected:#ff4d4f;--ant-menu-danger-item-selected-color:#ff4d4f;--ant-menu-color-danger-item-bg-active:#fff2f0;--ant-menu-danger-item-active-bg:#fff2f0;--ant-menu-color-danger-item-bg-selected:#fff2f0;--ant-menu-danger-item-selected-bg:#fff2f0;--ant-menu-item-margin-inline:4px;--ant-menu-horizontal-item-border-radius:0px;--ant-menu-horizontal-item-hover-bg:transparent;--ant-menu-item-height:40px;--ant-menu-group-title-line-height:1.5714285714285714;--ant-menu-collapsed-width:80px;--ant-menu-popup-bg:#ffffff;--ant-menu-item-margin-block:4px;--ant-menu-item-padding-inline:16px;--ant-menu-horizontal-line-height:46px;--ant-menu-icon-size:14px;--ant-menu-icon-margin-inline-end:10px;--ant-menu-collapsed-icon-size:16px;--ant-menu-group-title-font-size:14px;--ant-menu-dark-item-disabled-color:rgba(255,255,255,0.25);--ant-menu-dark-item-color:rgba(255,255,255,0.65);--ant-menu-dark-danger-item-color:#ff4d4f;--ant-menu-dark-item-bg:#001529;--ant-menu-dark-popup-bg:#001529;--ant-menu-dark-sub-menu-item-bg:#000c17;--ant-menu-dark-item-selected-color:#fff;--ant-menu-dark-item-selected-bg:#1677ff;--ant-menu-dark-danger-item-selected-bg:#ff4d4f;--ant-menu-dark-item-hover-bg:transparent;--ant-menu-dark-group-title-color:rgba(255,255,255,0.65);--ant-menu-dark-item-hover-color:#fff;--ant-menu-dark-danger-item-hover-color:#ff7875;--ant-menu-dark-danger-item-selected-color:#fff;--ant-menu-dark-danger-item-active-bg:#ff4d4f;--ant-menu-item-width:calc(100% - 8px);}.css-var-«R2a».ant-tooltip{--ant-tooltip-z-index-popup:1070;--ant-tooltip-arrow-offset-horizontal:12px;--ant-tooltip-arrow-offset-vertical:8px;--ant-tooltip-arrow-shadow-width:8.970562748477143px;--ant-tooltip-arrow-path:path('M 0 8 A 4 4 0 0 0 2.82842712474619 6.82842712474619 L 6.585786437626905 3.0710678118654755 A 2 2 0 0 1 9.414213562373096 3.0710678118654755 L 13.17157287525381 6.82842712474619 A 4 4 0 0 0 16 8 Z');--ant-tooltip-arrow-polygon:polygon(1.6568542494923806px 100%, 50% 1.6568542494923806px, 14.34314575050762px 100%, 1.6568542494923806px 100%);}.css-var-«R2a».ant-select-css-var{--ant-select-internal_fixed_item_margin:2px;--ant-select-z-index-popup:1050;--ant-select-option-selected-color:rgba(0,0,0,0.88);--ant-select-option-selected-font-weight:600;--ant-select-option-selected-bg:#e6f4ff;--ant-select-option-active-bg:rgba(0,0,0,0.04);--ant-select-option-padding:5px 12px;--ant-select-option-font-size:14px;--ant-select-option-line-height:1.5714285714285714;--ant-select-option-height:32px;--ant-select-selector-bg:#ffffff;--ant-select-clear-bg:#ffffff;--ant-select-single-item-height-lg:40px;--ant-select-multiple-item-bg:rgba(0,0,0,0.06);--ant-select-multiple-item-border-color:transparent;--ant-select-multiple-item-height:24px;--ant-select-multiple-item-height-sm:16px;--ant-select-multiple-item-height-lg:32px;--ant-select-multiple-selector-bg-disabled:rgba(0,0,0,0.04);--ant-select-multiple-item-color-disabled:rgba(0,0,0,0.25);--ant-select-multiple-item-border-color-disabled:transparent;--ant-select-show-arrow-padding-inline-end:18px;--ant-select-hover-border-color:#4096ff;--ant-select-active-border-color:#1677ff;--ant-select-active-outline-color:rgba(5,145,255,0.1);--ant-select-select-affix-padding:4px;}.css-var-«R2a».ant-btn{--ant-button-blue-shadow-color:0 2px 0 rgba(5,145,255,0.1);--ant-button-purple-shadow-color:0 2px 0 rgba(155,5,255,0.06);--ant-button-cyan-shadow-color:0 2px 0 rgba(5,255,215,0.1);--ant-button-green-shadow-color:0 2px 0 rgba(142,255,30,0.08);--ant-button-magenta-shadow-color:0 2px 0 rgba(255,5,105,0.06);--ant-button-pink-shadow-color:0 2px 0 rgba(255,5,105,0.06);--ant-button-red-shadow-color:0 2px 0 rgba(255,22,5,0.06);--ant-button-orange-shadow-color:0 2px 0 rgba(255,175,5,0.1);--ant-button-yellow-shadow-color:0 2px 0 rgba(245,255,5,0.1);--ant-button-volcano-shadow-color:0 2px 0 rgba(255,125,25,0.1);--ant-button-geekblue-shadow-color:0 2px 0 rgba(5,88,255,0.06);--ant-button-lime-shadow-color:0 2px 0 rgba(225,255,5,0.1);--ant-button-gold-shadow-color:0 2px 0 rgba(255,215,5,0.1);--ant-button-font-weight:400;--ant-button-default-shadow:0 2px 0 rgba(0,0,0,0.02);--ant-button-primary-shadow:0 2px 0 rgba(5,145,255,0.1);--ant-button-danger-shadow:0 2px 0 rgba(255,38,5,0.06);--ant-button-primary-color:#fff;--ant-button-danger-color:#fff;--ant-button-border-color-disabled:#d9d9d9;--ant-button-default-ghost-color:#ffffff;--ant-button-ghost-bg:transparent;--ant-button-default-ghost-border-color:#ffffff;--ant-button-padding-inline:15px;--ant-button-padding-inline-lg:15px;--ant-button-padding-inline-sm:7px;--ant-button-only-icon-size:inherit;--ant-button-only-icon-size-sm:inherit;--ant-button-only-icon-size-lg:inherit;--ant-button-group-border-color:#4096ff;--ant-button-link-hover-bg:transparent;--ant-button-text-text-color:rgba(0,0,0,0.88);--ant-button-text-text-hover-color:rgba(0,0,0,0.88);--ant-button-text-text-active-color:rgba(0,0,0,0.88);--ant-button-text-hover-bg:rgba(0,0,0,0.04);--ant-button-default-color:rgba(0,0,0,0.88);--ant-button-default-bg:#ffffff;--ant-button-default-border-color:#d9d9d9;--ant-button-default-border-color-disabled:#d9d9d9;--ant-button-default-hover-bg:#ffffff;--ant-button-default-hover-color:#4096ff;--ant-button-default-hover-border-color:#4096ff;--ant-button-default-active-bg:#ffffff;--ant-button-default-active-color:#0958d9;--ant-button-default-active-border-color:#0958d9;--ant-button-solid-text-color:#fff;--ant-button-content-font-size:14px;--ant-button-content-font-size-sm:14px;--ant-button-content-font-size-lg:16px;--ant-button-content-line-height:1.5714285714285714;--ant-button-content-line-height-sm:1.5714285714285714;--ant-button-content-line-height-lg:1.5;--ant-button-padding-block:4px;--ant-button-padding-block-sm:0px;--ant-button-padding-block-lg:7px;}.css-var-«R2a».ant-dropdown-css-var{--ant-dropdown-z-index-popup:1050;--ant-dropdown-padding-block:5px;--ant-dropdown-arrow-offset-horizontal:12px;--ant-dropdown-arrow-offset-vertical:8px;--ant-dropdown-arrow-shadow-width:8.970562748477143px;--ant-dropdown-arrow-path:path('M 0 8 A 4 4 0 0 0 2.82842712474619 6.82842712474619 L 6.585786437626905 3.0710678118654755 A 2 2 0 0 1 9.414213562373096 3.0710678118654755 L 13.17157287525381 6.82842712474619 A 4 4 0 0 0 16 8 Z');--ant-dropdown-arrow-polygon:polygon(1.6568542494923806px 100%, 50% 1.6568542494923806px, 14.34314575050762px 100%, 1.6568542494923806px 100%);}.css-var-«R2nd5cma»{--ant-blue:#1677FF;--ant-purple:#722ED1;--ant-cyan:#13C2C2;--ant-green:#52C41A;--ant-magenta:#EB2F96;--ant-pink:#EB2F96;--ant-red:#F5222D;--ant-orange:#FA8C16;--ant-yellow:#FADB14;--ant-volcano:#FA541C;--ant-geekblue:#2F54EB;--ant-gold:#FAAD14;--ant-lime:#A0D911;--ant-color-primary:#1677ff;--ant-color-success:#52c41a;--ant-color-warning:#faad14;--ant-color-error:#ff4d4f;--ant-color-info:#1677ff;--ant-color-link:#1677ff;--ant-color-text-base:#000;--ant-color-bg-base:#fff;--ant-font-family:-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial,
'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',
'Noto Color Emoji';--ant-font-family-code:'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace;--ant-font-size:14px;--ant-line-width:1px;--ant-line-type:solid;--ant-motion-ease-out-circ:cubic-bezier(0.08, 0.82, 0.17, 1);--ant-motion-ease-in-out-circ:cubic-bezier(0.78, 0.14, 0.15, 0.86);--ant-motion-ease-out:cubic-bezier(0.215, 0.61, 0.355, 1);--ant-motion-ease-in-out:cubic-bezier(0.645, 0.045, 0.355, 1);--ant-motion-ease-out-back:cubic-bezier(0.12, 0.4, 0.29, 1.46);--ant-motion-ease-in-back:cubic-bezier(0.71, -0.46, 0.88, 0.6);--ant-motion-ease-in-quint:cubic-bezier(0.755, 0.05, 0.855, 0.06);--ant-motion-ease-out-quint:cubic-bezier(0.23, 1, 0.32, 1);--ant-border-radius:6px;--ant-size-popup-arrow:16px;--ant-control-height:32px;--ant-z-index-base:0;--ant-z-index-popup-base:1000;--ant-opacity-image:1;--ant-blue-1:#e6f4ff;--ant-blue-2:#bae0ff;--ant-blue-3:#91caff;--ant-blue-4:#69b1ff;--ant-blue-5:#4096ff;--ant-blue-6:#1677ff;--ant-blue-7:#0958d9;--ant-blue-8:#003eb3;--ant-blue-9:#002c8c;--ant-blue-10:#001d66;--ant-purple-1:#f9f0ff;--ant-purple-2:#efdbff;--ant-purple-3:#d3adf7;--ant-purple-4:#b37feb;--ant-purple-5:#9254de;--ant-purple-6:#722ed1;--ant-purple-7:#531dab;--ant-purple-8:#391085;--ant-purple-9:#22075e;--ant-purple-10:#120338;--ant-cyan-1:#e6fffb;--ant-cyan-2:#b5f5ec;--ant-cyan-3:#87e8de;--ant-cyan-4:#5cdbd3;--ant-cyan-5:#36cfc9;--ant-cyan-6:#13c2c2;--ant-cyan-7:#08979c;--ant-cyan-8:#006d75;--ant-cyan-9:#00474f;--ant-cyan-10:#002329;--ant-green-1:#f6ffed;--ant-green-2:#d9f7be;--ant-green-3:#b7eb8f;--ant-green-4:#95de64;--ant-green-5:#73d13d;--ant-green-6:#52c41a;--ant-green-7:#389e0d;--ant-green-8:#237804;--ant-green-9:#135200;--ant-green-10:#092b00;--ant-magenta-1:#fff0f6;--ant-magenta-2:#ffd6e7;--ant-magenta-3:#ffadd2;--ant-magenta-4:#ff85c0;--ant-magenta-5:#f759ab;--ant-magenta-6:#eb2f96;--ant-magenta-7:#c41d7f;--ant-magenta-8:#9e1068;--ant-magenta-9:#780650;--ant-magenta-10:#520339;--ant-pink-1:#fff0f6;--ant-pink-2:#ffd6e7;--ant-pink-3:#ffadd2;--ant-pink-4:#ff85c0;--ant-pink-5:#f759ab;--ant-pink-6:#eb2f96;--ant-pink-7:#c41d7f;--ant-pink-8:#9e1068;--ant-pink-9:#780650;--ant-pink-10:#520339;--ant-red-1:#fff1f0;--ant-red-2:#ffccc7;--ant-red-3:#ffa39e;--ant-red-4:#ff7875;--ant-red-5:#ff4d4f;--ant-red-6:#f5222d;--ant-red-7:#cf1322;--ant-red-8:#a8071a;--ant-red-9:#820014;--ant-red-10:#5c0011;--ant-orange-1:#fff7e6;--ant-orange-2:#ffe7ba;--ant-orange-3:#ffd591;--ant-orange-4:#ffc069;--ant-orange-5:#ffa940;--ant-orange-6:#fa8c16;--ant-orange-7:#d46b08;--ant-orange-8:#ad4e00;--ant-orange-9:#873800;--ant-orange-10:#612500;--ant-yellow-1:#feffe6;--ant-yellow-2:#ffffb8;--ant-yellow-3:#fffb8f;--ant-yellow-4:#fff566;--ant-yellow-5:#ffec3d;--ant-yellow-6:#fadb14;--ant-yellow-7:#d4b106;--ant-yellow-8:#ad8b00;--ant-yellow-9:#876800;--ant-yellow-10:#614700;--ant-volcano-1:#fff2e8;--ant-volcano-2:#ffd8bf;--ant-volcano-3:#ffbb96;--ant-volcano-4:#ff9c6e;--ant-volcano-5:#ff7a45;--ant-volcano-6:#fa541c;--ant-volcano-7:#d4380d;--ant-volcano-8:#ad2102;--ant-volcano-9:#871400;--ant-volcano-10:#610b00;--ant-geekblue-1:#f0f5ff;--ant-geekblue-2:#d6e4ff;--ant-geekblue-3:#adc6ff;--ant-geekblue-4:#85a5ff;--ant-geekblue-5:#597ef7;--ant-geekblue-6:#2f54eb;--ant-geekblue-7:#1d39c4;--ant-geekblue-8:#10239e;--ant-geekblue-9:#061178;--ant-geekblue-10:#030852;--ant-gold-1:#fffbe6;--ant-gold-2:#fff1b8;--ant-gold-3:#ffe58f;--ant-gold-4:#ffd666;--ant-gold-5:#ffc53d;--ant-gold-6:#faad14;--ant-gold-7:#d48806;--ant-gold-8:#ad6800;--ant-gold-9:#874d00;--ant-gold-10:#613400;--ant-lime-1:#fcffe6;--ant-lime-2:#f4ffb8;--ant-lime-3:#eaff8f;--ant-lime-4:#d3f261;--ant-lime-5:#bae637;--ant-lime-6:#a0d911;--ant-lime-7:#7cb305;--ant-lime-8:#5b8c00;--ant-lime-9:#3f6600;--ant-lime-10:#254000;--ant-color-text:rgba(0,0,0,0.88);--ant-color-text-secondary:rgba(0,0,0,0.65);--ant-color-text-tertiary:rgba(0,0,0,0.45);--ant-color-text-quaternary:rgba(0,0,0,0.25);--ant-color-fill:rgba(0,0,0,0.15);--ant-color-fill-secondary:rgba(0,0,0,0.06);--ant-color-fill-tertiary:rgba(0,0,0,0.04);--ant-color-fill-quaternary:rgba(0,0,0,0.02);--ant-color-bg-solid:rgb(0,0,0);--ant-color-bg-solid-hover:rgba(0,0,0,0.75);--ant-color-bg-solid-active:rgba(0,0,0,0.95);--ant-color-bg-layout:#f5f5f5;--ant-color-bg-container:#ffffff;--ant-color-bg-elevated:#ffffff;--ant-color-bg-spotlight:rgba(0,0,0,0.85);--ant-color-bg-blur:transparent;--ant-color-border:#d9d9d9;--ant-color-border-secondary:#f0f0f0;--ant-color-primary-bg:#e6f4ff;--ant-color-primary-bg-hover:#bae0ff;--ant-color-primary-border:#91caff;--ant-color-primary-border-hover:#69b1ff;--ant-color-primary-hover:#4096ff;--ant-color-primary-active:#0958d9;--ant-color-primary-text-hover:#4096ff;--ant-color-primary-text:#1677ff;--ant-color-primary-text-active:#0958d9;--ant-color-success-bg:#f6ffed;--ant-color-success-bg-hover:#d9f7be;--ant-color-success-border:#b7eb8f;--ant-color-success-border-hover:#95de64;--ant-color-success-hover:#95de64;--ant-color-success-active:#389e0d;--ant-color-success-text-hover:#73d13d;--ant-color-success-text:#52c41a;--ant-color-success-text-active:#389e0d;--ant-color-error-bg:#fff2f0;--ant-color-error-bg-hover:#fff1f0;--ant-color-error-bg-filled-hover:#ffdfdc;--ant-color-error-bg-active:#ffccc7;--ant-color-error-border:#ffccc7;--ant-color-error-border-hover:#ffa39e;--ant-color-error-hover:#ff7875;--ant-color-error-active:#d9363e;--ant-color-error-text-hover:#ff7875;--ant-color-error-text:#ff4d4f;--ant-color-error-text-active:#d9363e;--ant-color-warning-bg:#fffbe6;--ant-color-warning-bg-hover:#fff1b8;--ant-color-warning-border:#ffe58f;--ant-color-warning-border-hover:#ffd666;--ant-color-warning-hover:#ffd666;--ant-color-warning-active:#d48806;--ant-color-warning-text-hover:#ffc53d;--ant-color-warning-text:#faad14;--ant-color-warning-text-active:#d48806;--ant-color-info-bg:#e6f4ff;--ant-color-info-bg-hover:#bae0ff;--ant-color-info-border:#91caff;--ant-color-info-border-hover:#69b1ff;--ant-color-info-hover:#69b1ff;--ant-color-info-active:#0958d9;--ant-color-info-text-hover:#4096ff;--ant-color-info-text:#1677ff;--ant-color-info-text-active:#0958d9;--ant-color-link-hover:#69b1ff;--ant-color-link-active:#0958d9;--ant-color-bg-mask:rgba(0,0,0,0.45);--ant-color-white:#fff;--ant-font-size-sm:12px;--ant-font-size-lg:16px;--ant-font-size-xl:20px;--ant-font-size-heading-1:38px;--ant-font-size-heading-2:30px;--ant-font-size-heading-3:24px;--ant-font-size-heading-4:20px;--ant-font-size-heading-5:16px;--ant-line-height:1.5714285714285714;--ant-line-height-lg:1.5;--ant-line-height-sm:1.6666666666666667;--ant-font-height:22px;--ant-font-height-lg:24px;--ant-font-height-sm:20px;--ant-line-height-heading-1:1.2105263157894737;--ant-line-height-heading-2:1.2666666666666666;--ant-line-height-heading-3:1.3333333333333333;--ant-line-height-heading-4:1.4;--ant-line-height-heading-5:1.5;--ant-control-height-sm:24px;--ant-control-height-xs:16px;--ant-control-height-lg:40px;--ant-motion-duration-fast:0.1s;--ant-motion-duration-mid:0.2s;--ant-motion-duration-slow:0.3s;--ant-line-width-bold:2px;--ant-border-radius-xs:2px;--ant-border-radius-sm:4px;--ant-border-radius-lg:8px;--ant-border-radius-outer:4px;--ant-color-fill-content:rgba(0,0,0,0.06);--ant-color-fill-content-hover:rgba(0,0,0,0.15);--ant-color-fill-alter:rgba(0,0,0,0.02);--ant-color-bg-container-disabled:rgba(0,0,0,0.04);--ant-color-border-bg:#ffffff;--ant-color-split:rgba(5,5,5,0.06);--ant-color-text-placeholder:rgba(0,0,0,0.25);--ant-color-text-disabled:rgba(0,0,0,0.25);--ant-color-text-heading:rgba(0,0,0,0.88);--ant-color-text-label:rgba(0,0,0,0.65);--ant-color-text-description:rgba(0,0,0,0.45);--ant-color-text-light-solid:#fff;--ant-color-highlight:#ff4d4f;--ant-color-bg-text-hover:rgba(0,0,0,0.06);--ant-color-bg-text-active:rgba(0,0,0,0.15);--ant-color-icon:rgba(0,0,0,0.45);--ant-color-icon-hover:rgba(0,0,0,0.88);--ant-color-error-outline:rgba(255,38,5,0.06);--ant-color-warning-outline:rgba(255,215,5,0.1);--ant-font-size-icon:12px;--ant-line-width-focus:3px;--ant-control-outline-width:2px;--ant-control-interactive-size:16px;--ant-control-item-bg-hover:rgba(0,0,0,0.04);--ant-control-item-bg-active:#e6f4ff;--ant-control-item-bg-active-hover:#bae0ff;--ant-control-item-bg-active-disabled:rgba(0,0,0,0.15);--ant-control-tmp-outline:rgba(0,0,0,0.02);--ant-control-outline:rgba(5,145,255,0.1);--ant-font-weight-strong:600;--ant-opacity-loading:0.65;--ant-link-decoration:none;--ant-link-hover-decoration:none;--ant-link-focus-decoration:none;--ant-control-padding-horizontal:12px;--ant-control-padding-horizontal-sm:8px;--ant-padding-xxs:4px;--ant-padding-xs:8px;--ant-padding-sm:12px;--ant-padding:16px;--ant-padding-md:20px;--ant-padding-lg:24px;--ant-padding-xl:32px;--ant-padding-content-horizontal-lg:24px;--ant-padding-content-vertical-lg:16px;--ant-padding-content-horizontal:16px;--ant-padding-content-vertical:12px;--ant-padding-content-horizontal-sm:16px;--ant-padding-content-vertical-sm:8px;--ant-margin-xxs:4px;--ant-margin-xs:8px;--ant-margin-sm:12px;--ant-margin:16px;--ant-margin-md:20px;--ant-margin-lg:24px;--ant-margin-xl:32px;--ant-margin-xxl:48px;--ant-box-shadow:
0 6px 16px 0 rgba(0, 0, 0, 0.08),
0 3px 6px -4px rgba(0, 0, 0, 0.12),
0 9px 28px 8px rgba(0, 0, 0, 0.05)
;--ant-box-shadow-secondary:
0 6px 16px 0 rgba(0, 0, 0, 0.08),
0 3px 6px -4px rgba(0, 0, 0, 0.12),
0 9px 28px 8px rgba(0, 0, 0, 0.05)
;--ant-box-shadow-tertiary:
0 1px 2px 0 rgba(0, 0, 0, 0.03),
0 1px 6px -1px rgba(0, 0, 0, 0.02),
0 2px 4px 0 rgba(0, 0, 0, 0.02)
;--ant-box-shadow-popover-arrow:2px 2px 5px rgba(0, 0, 0, 0.05);--ant-box-shadow-card:
0 1px 2px -2px rgba(0,0,0,0.16),
0 3px 6px 0 rgba(0,0,0,0.12),
0 5px 12px 4px rgba(0,0,0,0.09)
;--ant-box-shadow-drawer-right:
-6px 0 16px 0 rgba(0, 0, 0, 0.08),
-3px 0 6px -4px rgba(0, 0, 0, 0.12),
-9px 0 28px 8px rgba(0, 0, 0, 0.05)
;--ant-box-shadow-drawer-left:
6px 0 16px 0 rgba(0, 0, 0, 0.08),
3px 0 6px -4px rgba(0, 0, 0, 0.12),
9px 0 28px 8px rgba(0, 0, 0, 0.05)
;--ant-box-shadow-drawer-up:
0 6px 16px 0 rgba(0, 0, 0, 0.08),
0 3px 6px -4px rgba(0, 0, 0, 0.12),
0 9px 28px 8px rgba(0, 0, 0, 0.05)
;--ant-box-shadow-drawer-down:
0 -6px 16px 0 rgba(0, 0, 0, 0.08),
0 -3px 6px -4px rgba(0, 0, 0, 0.12),
0 -9px 28px 8px rgba(0, 0, 0, 0.05)
;--ant-box-shadow-tabs-overflow-left:inset 10px 0 8px -8px rgba(0, 0, 0, 0.08);--ant-box-shadow-tabs-overflow-right:inset -10px 0 8px -8px rgba(0, 0, 0, 0.08);--ant-box-shadow-tabs-overflow-top:inset 0 10px 8px -8px rgba(0, 0, 0, 0.08);--ant-box-shadow-tabs-overflow-bottom:inset 0 -10px 8px -8px rgba(0, 0, 0, 0.08);}.css-var-«R2nd5cma».ant-menu-css-var{--ant-menu-dropdown-width:160px;--ant-menu-z-index-popup:1050;--ant-menu-radius-item:8px;--ant-menu-item-border-radius:8px;--ant-menu-radius-sub-menu-item:4px;--ant-menu-sub-menu-item-border-radius:4px;--ant-menu-color-item-text:rgba(0,0,0,0.88);--ant-menu-item-color:rgba(0,0,0,0.88);--ant-menu-color-item-text-hover:rgba(0,0,0,0.88);--ant-menu-item-hover-color:rgba(0,0,0,0.88);--ant-menu-color-item-text-hover-horizontal:#1677ff;--ant-menu-horizontal-item-hover-color:#1677ff;--ant-menu-color-group-title:rgba(0,0,0,0.45);--ant-menu-group-title-color:rgba(0,0,0,0.45);--ant-menu-color-item-text-selected:#1677ff;--ant-menu-item-selected-color:#1677ff;--ant-menu-sub-menu-item-selected-color:#1677ff;--ant-menu-color-item-text-selected-horizontal:#1677ff;--ant-menu-horizontal-item-selected-color:#1677ff;--ant-menu-color-item-bg:#ffffff;--ant-menu-item-bg:#ffffff;--ant-menu-color-item-bg-hover:rgba(0,0,0,0.06);--ant-menu-item-hover-bg:rgba(0,0,0,0.06);--ant-menu-color-item-bg-active:rgba(0,0,0,0.06);--ant-menu-item-active-bg:#e6f4ff;--ant-menu-color-sub-item-bg:rgba(0,0,0,0.02);--ant-menu-sub-menu-item-bg:rgba(0,0,0,0.02);--ant-menu-color-item-bg-selected:#e6f4ff;--ant-menu-item-selected-bg:#e6f4ff;--ant-menu-color-item-bg-selected-horizontal:transparent;--ant-menu-horizontal-item-selected-bg:transparent;--ant-menu-color-active-bar-width:0px;--ant-menu-active-bar-width:0px;--ant-menu-color-active-bar-height:2px;--ant-menu-active-bar-height:2px;--ant-menu-color-active-bar-border-size:1px;--ant-menu-active-bar-border-width:1px;--ant-menu-color-item-text-disabled:rgba(0,0,0,0.25);--ant-menu-item-disabled-color:rgba(0,0,0,0.25);--ant-menu-color-danger-item-text:#ff4d4f;--ant-menu-danger-item-color:#ff4d4f;--ant-menu-color-danger-item-text-hover:#ff4d4f;--ant-menu-danger-item-hover-color:#ff4d4f;--ant-menu-color-danger-item-text-selected:#ff4d4f;--ant-menu-danger-item-selected-color:#ff4d4f;--ant-menu-color-danger-item-bg-active:#fff2f0;--ant-menu-danger-item-active-bg:#fff2f0;--ant-menu-color-danger-item-bg-selected:#fff2f0;--ant-menu-danger-item-selected-bg:#fff2f0;--ant-menu-item-margin-inline:4px;--ant-menu-horizontal-item-border-radius:0px;--ant-menu-horizontal-item-hover-bg:transparent;--ant-menu-item-height:40px;--ant-menu-group-title-line-height:1.5714285714285714;--ant-menu-collapsed-width:80px;--ant-menu-popup-bg:#ffffff;--ant-menu-item-margin-block:4px;--ant-menu-item-padding-inline:16px;--ant-menu-horizontal-line-height:46px;--ant-menu-icon-size:14px;--ant-menu-icon-margin-inline-end:10px;--ant-menu-collapsed-icon-size:16px;--ant-menu-group-title-font-size:14px;--ant-menu-dark-item-disabled-color:rgba(255,255,255,0.25);--ant-menu-dark-item-color:rgba(255,255,255,0.65);--ant-menu-dark-danger-item-color:#ff4d4f;--ant-menu-dark-item-bg:#ffffff;--ant-menu-dark-popup-bg:#001529;--ant-menu-dark-sub-menu-item-bg:#000c17;--ant-menu-dark-item-selected-color:#fff;--ant-menu-dark-item-selected-bg:#1677ff;--ant-menu-dark-danger-item-selected-bg:#ff4d4f;--ant-menu-dark-item-hover-bg:transparent;--ant-menu-dark-group-title-color:rgba(255,255,255,0.65);--ant-menu-dark-item-hover-color:#fff;--ant-menu-dark-danger-item-hover-color:#ff7875;--ant-menu-dark-danger-item-selected-color:#fff;--ant-menu-dark-danger-item-active-bg:#ff4d4f;--ant-menu-item-width:calc(100% - 8px);}.css-var-«R2nd5cma».ant-tooltip{--ant-tooltip-z-index-popup:1070;--ant-tooltip-arrow-offset-horizontal:12px;--ant-tooltip-arrow-offset-vertical:8px;--ant-tooltip-arrow-shadow-width:8.970562748477143px;--ant-tooltip-arrow-path:path('M 0 8 A 4 4 0 0 0 2.82842712474619 6.82842712474619 L 6.585786437626905 3.0710678118654755 A 2 2 0 0 1 9.414213562373096 3.0710678118654755 L 13.17157287525381 6.82842712474619 A 4 4 0 0 0 16 8 Z');--ant-tooltip-arrow-polygon:polygon(1.6568542494923806px 100%, 50% 1.6568542494923806px, 14.34314575050762px 100%, 1.6568542494923806px 100%);}.css-var-«R2nd5cma».ant-tag{--ant-tag-default-bg:#fafafa;--ant-tag-default-color:rgba(0,0,0,0.88);}.css-var-«R2a».ant-anchor-css-var{--ant-anchor-link-padding-block:4px;--ant-anchor-link-padding-inline-start:16px;}.css-var-«R2a».ant-typography{--ant-typography-title-margin-top:1.2em;--ant-typography-title-margin-bottom:0.5em;}.css-var-«R2a».ant-avatar-css-var{--ant-avatar-container-size:32px;--ant-avatar-container-size-lg:40px;--ant-avatar-container-size-sm:24px;--ant-avatar-text-font-size:18px;--ant-avatar-text-font-size-lg:24px;--ant-avatar-text-font-size-sm:14px;--ant-avatar-group-space:4px;--ant-avatar-group-overlapping:-8px;--ant-avatar-group-border-color:#ffffff;}.data-ant-cssinjs-cache-path{content:"";}</style><style data-sandpack="true" id="sandpack">--sxs{--sxs:0 light}@media{.light{--sp-space-1:4px;--sp-space-2:8px;--sp-space-3:12px;--sp-space-4:16px;--sp-space-5:20px;--sp-space-6:24px;--sp-space-7:28px;--sp-space-8:32px;--sp-space-9:36px;--sp-space-10:40px;--sp-space-11:44px;--sp-border-radius:4px;--sp-layout-height:300px;--sp-layout-headerHeight:40px;--sp-transitions-default:150ms ease;--sp-zIndices-base:1;--sp-zIndices-overlay:2;--sp-zIndices-top:3;--sp-colors-surface1:#ffffff;--sp-colors-surface2:#EFEFEF;--sp-colors-surface3:#F3F3F3;--sp-colors-disabled:#C5C5C5;--sp-colors-base:#323232;--sp-colors-clickable:#808080;--sp-colors-hover:#4D4D4D;--sp-colors-accent:#3973E0;--sp-colors-error:#EA3323;--sp-colors-errorSurface:#FCF1F0;--sp-colors-warning:#6A4516;--sp-colors-warningSurface:#FEF2C0;--sp-font-body:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";--sp-font-mono:"Fira Mono", "DejaVu Sans Mono", Menlo, Consolas, "Liberation Mono", Monaco, "Lucida Console", monospace;--sp-font-size:13px;--sp-font-lineHeight:20px;--sp-syntax-color-plain:#151515;--sp-syntax-color-comment:#999;--sp-syntax-fontStyle-comment:italic;--sp-syntax-color-keyword:#7C5AE3;--sp-syntax-color-tag:#0971F1;--sp-syntax-color-punctuation:#3B3B3B;--sp-syntax-color-definition:#85A600;--sp-syntax-color-property:#3B3B3B;--sp-syntax-color-static:#3B3B3B;--sp-syntax-color-string:#2E6BD0}}--sxs{--sxs:1 sp-k-eyOShd sp-k-iOHdLQ}@media{@keyframes sp-k-eyOShd{0%{opacity:0}100%{opacity:1}}@keyframes sp-k-iOHdLQ{0%{transform:rotateX(-25.5deg) rotateY(45deg)}100%{transform:rotateX(-25.5deg) rotateY(405deg)}}}--sxs{--sxs:2 sp-c-gMfcns sp-c-bxeRRt sp-c-jKPvnt sp-c-fWymNx sp-c-euXojQ sp-c-bpmgvy sp-c-PJLV sp-c-gvjhpQ sp-c-fVPbOs sp-c-ikJbEZ sp-c-gtcpyq sp-c-dyHYiL sp-c-gGbYbQ sp-c-hluGOI sp-c-pacmO sp-c-jOWzsE sp-c-jkvvao sp-c-juMdfR sp-c-fgviib sp-c-kwibBT sp-c-dEbKhQ sp-c-bcibQq}@media{.sp-c-gMfcns svg{margin:auto}.sp-c-bxeRRt{-webkit-appearance:none;appearance:none;outline:none;display:flex;align-items:center;font-size:inherit;font-family:inherit;background-color:transparent;transition:color var(--sp-transitions-default), background var(--sp-transitions-default);cursor:pointer;color:var(--sp-colors-clickable);border:0;text-decoration:none}.sp-c-bxeRRt:disabled{color:var(--sp-colors-disabled)}.sp-c-bxeRRt:hover:not(:disabled,[data-active='true']){color:var(--sp-colors-hover)}.sp-c-bxeRRt[data-active="true"]{color:var(--sp-colors-accent)}.sp-c-bxeRRt svg{min-width:var(--sp-space-4);width:var(--sp-space-4);height:var(--sp-space-4)}.sp-c-bxeRRt.sp-c-gMfcns{padding:var(--sp-space-1);height:var(--sp-space-7);display:flex}.sp-c-bxeRRt.sp-c-gMfcns.sp-c-bxeRRt:not(:has(span)){width:var(--sp-space-7)}.sp-c-bxeRRt.sp-c-gMfcns.sp-c-bxeRRt:has(svg + span){padding-right:var(--sp-space-3);padding-left:var(--sp-space-2);gap:var(--sp-space-1)}.sp-c-jKPvnt{padding:0 var(--sp-space-1) 0 var(--sp-space-1);border-radius:var(--sp-border-radius);margin-left:var(--sp-space-1);width:var(--sp-space-5);visibility:hidden;cursor:pointer;position:absolute;right:0px}.sp-c-jKPvnt svg{width:var(--sp-space-3);height:var(--sp-space-3);display:block;position:relative;top:1px}.sp-c-fWymNx{margin:0;display:block;font-family:var(--sp-font-mono);font-size:var(--sp-font-size);color:var(--sp-syntax-color-plain);line-height:var(--sp-font-lineHeight)}.sp-c-euXojQ{display:flex;flex-direction:column;width:100%;position:relative;background-color:var(--sp-colors-surface1);gap:1px}.sp-c-euXojQ:has(.sp-stack){background-color:var(--sp-colors-surface2)}.sp-c-bpmgvy{transform:translate(-4px, 9px) scale(0.13, 0.13)}.sp-c-bpmgvy *{position:absolute;width:96px;height:96px}.sp-c-gvjhpQ{position:absolute;z-index:var(--sp-zIndices-top)}@media screen and (max-width: 768px){.sp-c-gvjhpQ{display:none}}.sp-c-fVPbOs{all:initial;font-size:var(--sp-font-size);font-family:var(--sp-font-body);display:block;box-sizing:border-box;text-rendering:optimizeLegibility;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:subpixel-antialiased}@media screen and (min-resolution: 2dppx){.sp-c-fVPbOs{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}.sp-c-fVPbOs *{box-sizing:border-box}.sp-c-fVPbOs .sp-wrapper:focus{outline:0}.sp-c-ikJbEZ{border:1px solid var(--sp-colors-surface2);display:flex;flex-wrap:wrap;align-items:stretch;border-radius:var(--sp-border-radius);overflow:hidden;position:relative;background-color:var(--sp-colors-surface2);gap:1px}.sp-c-ikJbEZ > .sp-c-euXojQ{flex-grow:1;flex-shrink:1;flex-basis:0;height:var(--sp-layout-height);overflow:hidden}@media print{.sp-c-ikJbEZ > .sp-c-euXojQ{height:auto;display:block}}@media screen and (max-width: 768px){.sp-c-ikJbEZ > .sp-c-euXojQ:not(.sp-preview, .sp-editor, .sp-preset-column){height:calc(var(--sp-layout-height) / 2)}}@media screen and (max-width: 768px){.sp-c-ikJbEZ > .sp-c-euXojQ{min-width:100%;}}.sp-c-ikJbEZ > .sp-file-explorer{flex:0.2;min-width:200px}@media screen and (max-width: 768px){.sp-c-ikJbEZ > .sp-file-explorer{flex:1}}.sp-c-gtcpyq{flex:1;position:relative;overflow:auto;background:var(--sp-colors-surface1)}.sp-c-gtcpyq .cm-scroller{padding:var(--sp-space-4) 0}.sp-c-gtcpyq .sp-c-fWymNx{padding:var(--sp-space-4) 0}@media screen and (max-width: 768px){@supports (-webkit-overflow-scrolling: touch){.sp-c-gtcpyq .cm-content{font-size:16px}}}.sp-c-dyHYiL{border-bottom:1px solid var(--sp-colors-surface2);background:var(--sp-colors-surface1)}.sp-c-gGbYbQ{padding:0 var(--sp-space-2);overflow:auto;display:flex;flex-wrap:nowrap;align-items:stretch;min-height:40px;margin-bottom:-1px}.sp-c-hluGOI{display:flex;align-items:center;outline:none;position:relative;padding-right:20px;margin:1px 0}.sp-c-hluGOI:has(button:focus){outline:var(--sp-colors-accent) auto 1px}.sp-c-pacmO{padding:0 var(--sp-space-2);height:var(--sp-layout-headerHeight);white-space:nowrap}.sp-c-pacmO:focus{outline:none}.sp-c-pacmO:hover ~ .sp-c-jKPvnt{visibility:visible}.sp-c-jOWzsE{margin:0;outline:none;height:100%}.sp-c-jkvvao .sp-syntax-string{color:var(--sp-syntax-color-string);font-style:var(--sp-syntax-fontStyle-string)}.sp-c-jkvvao .sp-syntax-plain{color:var(--sp-syntax-color-plain);font-style:var(--sp-syntax-fontStyle-plain)}.sp-c-jkvvao .sp-syntax-comment{color:var(--sp-syntax-color-comment);font-style:var(--sp-syntax-fontStyle-comment)}.sp-c-jkvvao .sp-syntax-keyword{color:var(--sp-syntax-color-keyword);font-style:var(--sp-syntax-fontStyle-keyword)}.sp-c-jkvvao .sp-syntax-definition{color:var(--sp-syntax-color-definition);font-style:var(--sp-syntax-fontStyle-definition)}.sp-c-jkvvao .sp-syntax-punctuation{color:var(--sp-syntax-color-punctuation);font-style:var(--sp-syntax-fontStyle-punctuation)}.sp-c-jkvvao .sp-syntax-property{color:var(--sp-syntax-color-property);font-style:var(--sp-syntax-fontStyle-property)}.sp-c-jkvvao .sp-syntax-tag{color:var(--sp-syntax-color-tag);font-style:var(--sp-syntax-fontStyle-tag)}.sp-c-jkvvao .sp-syntax-static{color:var(--sp-syntax-color-static);font-style:var(--sp-syntax-fontStyle-static)}.sp-c-juMdfR{flex:1;display:flex;flex-direction:column;background:white;overflow:auto;position:relative}.sp-c-juMdfR .sp-bridge-frame{border:0;position:absolute;left:var(--sp-space-2);bottom:var(--sp-space-2);z-index:var(--sp-zIndices-top);height:12px;width:30%;mix-blend-mode:multiply;pointer-events:none}.sp-c-fgviib{border:0;outline:0;width:100%;height:100%;min-height:160px;max-height:2000px;flex:1}.sp-c-kwibBT{display:flex;position:absolute;bottom:var(--sp-space-2);right:var(--sp-space-2);z-index:var(--sp-zIndices-overlay);gap:var(--sp-space-2)}.sp-c-dEbKhQ{background-color:var(--sp-colors-surface2);border-radius:99999px;border:1px solid var(--sp-colors-surface3)}.sp-c-dEbKhQ[data-active="true"]{color:var(--sp-colors-surface1);background:var(--sp-colors-accent)}.sp-c-dEbKhQ:hover:not(:disabled,[data-active='true']){background-color:var(--sp-colors-surface3)}.sp-c-bcibQq{position:absolute;bottom:var(--sp-space-2);right:var(--sp-space-2);padding-right:var(--sp-space-3)}}--sxs{--sxs:3 sp-c-PJLV-kCOVwI-status-pass sp-c-PJLV-kEzYsr-status-fail sp-c-PJLV-gHAhSA-status-skip sp-c-PJLV-jgnHyR-status-title sp-c-PJLV-iCgxLS-status-run sp-c-PJLV-bnDZSy-status-pass sp-c-PJLV-eYuGwt-status-fail sp-c-gvjhpQ-xpXQZ-direction-horizontal sp-c-fVPbOs-gMQIch-variant-light}@media{.sp-c-PJLV-kCOVwI-status-pass{color:var(--test-pass)}.sp-c-PJLV-kEzYsr-status-fail{color:var(--test-fail)}.sp-c-PJLV-gHAhSA-status-skip{color:var(--test-skip)}.sp-c-PJLV-jgnHyR-status-title{color:var(--test-title)}.sp-c-PJLV-iCgxLS-status-run{background:var(--test-run);color:var(--sp-colors-surface1)}.sp-c-PJLV-bnDZSy-status-pass{background:var(--test-pass);color:var(--sp-colors-surface1)}.sp-c-PJLV-eYuGwt-status-fail{background:var(--test-fail);color:var(--sp-colors-surface1)}.sp-c-gvjhpQ-xpXQZ-direction-horizontal{top:0;bottom:0;width:10px;cursor:ew-resize}.sp-c-fVPbOs-gMQIch-variant-light{color-scheme:light}}</style><title data-rh="true"> Usage with Umi - Ant Design</title>
<meta data-rh="true" property="og:description" content="An enterprise-class UI design language and React UI library with a set of high-quality React components, one of best React UI library for enterprises"/><meta data-rh="true" property="og:type" content="website"/><meta data-rh="true" property="og:image" content="https://gw.alipayobjects.com/zos/rmsportal/rlpTLlbMzTNYuZGGCVYM.png"/><meta data-rh="true" property="og:title" content=" Usage with Umi - Ant Design"/><meta data-rh="true" name="description" content="In real project development, besides UI libraries like Ant Design, you may also need build tools, routing solutions, CSS solutions, data flow solutions, request libraries and request solutions, i18n solutions, permission solutions, Icons solutions, etc. We have launched Umi, an enterprise application framework based on React, based on the scenarios of business scenarios, which we recommend you to use in your projects."/>
<link data-rh="true" sizes="144x144" href="https://gw.alipayobjects.com/zos/antfincdn/UmVnt3t4T0/antd.png"/>
<link rel="stylesheet" href="/style-acss.d1b5f0bb.css"></head><body><noscript><b>Enable JavaScript to run this app.</b></noscript><div id="root"><!--$?--><template id="B:0"></template><div></div><!--/$--></div><script>window.__UMI_LOADER_DATA__ = {}; window.__UMI_METADATA_LOADER_DATA__ = {"headScripts":["\n (function () {\n function isLocalStorageNameSupported() {\n const testKey = 'test';\n const storage = window.localStorage;\n try {\n storage.setItem(testKey, '1');\n storage.removeItem(testKey);\n return true;\n } catch (error) {\n return false;\n }\n }\n // 优先级提高到所有静态资源的前面,语言不对,加载其他静态资源没意义\n const pathname = location.pathname;\n\n function isZhCN(pathname) {\n return /-cn\\/?$/.test(pathname);\n }\n function getLocalizedPathname(path, zhCN) {\n const pathname = path.indexOf('/') === 0 ? path : '/' + path;\n if (!zhCN) {\n // to enUS\n return /\\/?index(-cn)?/.test(pathname) ? '/' : pathname.replace('-cn', '');\n } else if (pathname === '/') {\n return '/index-cn';\n } else if (pathname.indexOf('/') === pathname.length - 1) {\n return pathname.replace(/\\/$/, '-cn/');\n }\n return pathname + '-cn';\n }\n\n // 兼容旧的 URL `?locale=...`\n const queryString = location.search;\n if (queryString) {\n const isZhCNConfig = queryString.indexOf('zh-CN') > -1;\n if (isZhCNConfig && !isZhCN(pathname)) {\n location.pathname = getLocalizedPathname(pathname, isZhCNConfig);\n }\n }\n\n // 首页无视链接里面的语言设置 https://github.com/ant-design/ant-design/issues/4552\n if (isLocalStorageNameSupported() && (pathname === '/' || pathname === '/index-cn')) {\n const lang =\n (window.localStorage && localStorage.getItem('locale')) ||\n ((navigator.language || navigator.browserLanguage).toLowerCase() === 'zh-cn'\n ? 'zh-CN'\n : 'en-US');\n // safari is 'zh-cn', while other browser is 'zh-CN';\n if ((lang === 'zh-CN') !== isZhCN(pathname)) {\n location.pathname = getLocalizedPathname(pathname, lang === 'zh-CN');\n }\n }\n document.documentElement.className += isZhCN(pathname) ? 'zh-cn' : 'en-us';\n })();\n ",{"async":true,"src":"//www.googletagmanager.com/gtag/js?id=UA-72788897-1"},{"content":"window.dataLayer = window.dataLayer || [];\n function gtag(){dataLayer.push(arguments);}\n gtag('js', new Date());\n gtag('config', 'UA-72788897-1');"}],"styles":[],"favicons":["https://gw.alipayobjects.com/zos/rmsportal/rlpTLlbMzTNYuZGGCVYM.png"],"links":[{"rel":"prefetch","as":"font","href":"//at.alicdn.com/t/webfont_6e11e43nfj.woff2","type":"font/woff2","crossorigin":"anonymous"},{"rel":"prefetch","as":"font","href":"//at.alicdn.com/t/webfont_6e11e43nfj.woff","type":"font/woff","crossorigin":"anonymous"},{"rel":"prefetch","as":"font","href":"//at.alicdn.com/t/webfont_6e11e43nfj.ttf","type":"font/ttf","crossorigin":"anonymous"},{"rel":"prefetch","as":"font","href":"//at.alicdn.com/t/webfont_exesdog9toj.woff2","type":"font/woff2","crossorigin":"anonymous"},{"rel":"prefetch","as":"font","href":"//at.alicdn.com/t/webfont_exesdog9toj.woff","type":"font/woff","crossorigin":"anonymous"},{"rel":"prefetch","as":"font","href":"//at.alicdn.com/t/webfont_exesdog9toj.ttf","type":"font/ttf","crossorigin":"anonymous"},{"rel":"preload","as":"font","href":"//at.alicdn.com/wf/webfont/exMpJIukiCms/Gsw2PSKrftc1yNWMNlXgw.woff2","type":"font/woff2","crossorigin":"anonymous"},{"rel":"preload","as":"font","href":"//at.alicdn.com/wf/webfont/exMpJIukiCms/vtu73by4O2gEBcvBuLgeu.woff","type":"font/woff2","crossorigin":"anonymous"}],"metas":[{"name":"theme-color","content":"#1677ff"},{"name":"build-time","content":"1748681050778"},{"name":"build-hash","content":"d11f02db925b1c73cade4280e320884b47cd85e3"}],"scripts":[{"async":true,"content":"(function createMirrorModal() {\n const SIGN = Symbol.for('antd.mirror-notify');\n const always = window.localStorage.getItem('DEBUG') === 'antd';\n const officialChinaMirror = 'https://ant-design.antgroup.com';\n\n const enabledCondition = [\n // Check if the browser language is Chinese\n navigator.languages.includes('zh') || navigator.languages.includes('zh-CN'),\n // Check if the URL path ends with -cn\n /-cn\\/?$/.test(window.location.pathname),\n // chinese mirror URL\n !['ant-design.gitee.io', new URL(officialChinaMirror).hostname].includes(\n window.location.hostname,\n ),\n // PR review URL\n !window.location.host.includes('surge'),\n // development mode\n !['127.0.0.1', 'localhost'].includes(window.location.hostname),\n ];\n\n const isEnabled = always || enabledCondition.every(Boolean);\n\n if (!isEnabled) return;\n\n const prefixCls = 'antd-mirror-notify';\n const primaryColor = '#1677ff';\n\n function insertCss() {\n const style = document.createElement('style');\n style.innerHTML = `\n @keyframes slideInRight {\n from {\n transform: translate3d(100%, 0, 0);\n visibility: visible;\n }\n\n to {\n transform: translate3d(0, 0, 0);\n }\n }\n\n .${prefixCls} {\n position: fixed;\n inset-inline-end: 12px;\n inset-block-start: 12px;\n z-index: 9999;\n width: 360px;\n background-color: #fff;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);\n border-radius: 4px;\n overflow: hidden;\n animation: slideInRight 0.3s ease-in-out;\n }\n .${prefixCls}-content {\n padding: 16px;\n }\n .${prefixCls}-content a {\n color: ${primaryColor};\n text-decoration: none;\n &:hover {\n text-decoration: underline;\n }\n }\n .${prefixCls}-title {\n font-size: 16px;\n font-weight: bold;\n margin-block-end: 8px;\n }\n .${prefixCls}-message {\n font-size: 14px;\n color: #555;\n line-height: 1.57;\n }\n .${prefixCls}-footer {\n display: none;\n margin-block-start: 16px;\n justify-content: flex-end;\n }\n\n .${prefixCls}-progress {\n position: relative;\n inset-inline-end: 0;\n width: 100%;\n height: 4px;\n background-color: #f0f0f0;\n border-radius: 2px;\n overflow: hidden;\n }\n\n .${prefixCls}-progress::after {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n width: var(--progress, 0%);\n background-color: ${primaryColor};\n transition: width 0.05s linear; /* Adjusted for smoother animation matching refreshRate */\n }\n .${prefixCls}-close {\n all: unset;\n position: absolute;\n inset-inline-end: 2px;\n inset-block-start: 2px;\n width: 32px;\n height: 32px;\n font-size: 16px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: #999;\n cursor: pointer;\n }\n\n .${prefixCls}-close:hover {\n color: #333;\n }\n\n .${prefixCls}-action {\n all: unset;\n display: inline-block;\n padding: 4px 8px;\n background-color: ${primaryColor};\n color: #fff;\n border-radius: 4px;\n text-align: center;\n cursor: pointer;\n font-size: 14px;\n }\n `;\n\n document.head.append(style);\n }\n\n function createNotification() {\n insertCss();\n\n const notify = document.createElement('div');\n notify.className = `${prefixCls} slideInRight`;\n notify.innerHTML = `\n <div class=\"${prefixCls}-content\">\n <div class=\"${prefixCls}-title\">🇨🇳 访问不畅?试试国内镜像</div>\n <div class=\"${prefixCls}-message\">\n 国内镜像站点可以帮助您更快地访问文档和资源。<br>\n 请尝试访问 <a href=\"${officialChinaMirror}\">国内镜像站点</a>,以获得更好的体验。\n </div>\n <div class=\"${prefixCls}-footer\">\n <button class=\"${prefixCls}-action\">🚀 立即前往</button>\n </div>\n </div>\n <button class=\"${prefixCls}-close\">X</button>\n <div class=\"${prefixCls}-progress\" style=\"--progress: 100%;\"></div>\n `;\n document.body.appendChild(notify);\n\n notify.querySelector(`.${prefixCls}-close`).addEventListener('click', () => {\n removeNotify();\n });\n\n notify.querySelector(`.${prefixCls}-action`).addEventListener('click', () => {\n window.location.href = officialChinaMirror;\n removeNotify();\n });\n\n const refreshRate = 50; // ms\n const duration = 10; // s\n const step = 100 / ((duration * 1000) / refreshRate);\n let progressInterval = -1;\n\n function removeNotify() {\n clearInterval(progressInterval);\n notify.remove();\n }\n\n const progressEl = notify.querySelector(`.${prefixCls}-progress`);\n let currentProgressValue = 100;\n\n const progress = {\n get value() {\n return currentProgressValue;\n },\n set value(val) {\n currentProgressValue = Math.max(0, Math.min(100, val));\n progressEl.style.setProperty('--progress', `${currentProgressValue}%`);\n },\n };\n\n function startProgressTimer() {\n if (progressInterval !== -1) {\n clearInterval(progressInterval);\n }\n progressInterval = setInterval(() => {\n if (progress.value <= 0) {\n removeNotify();\n } else {\n progress.value -= step;\n }\n }, refreshRate);\n }\n\n startProgressTimer();\n\n notify.addEventListener('mouseenter', () => {\n clearInterval(progressInterval);\n });\n\n notify.addEventListener('mouseleave', () => {\n startProgressTimer();\n });\n }\n\n // 断定网络不畅阈值(秒)\n const delayDuration = 3;\n\n const reactTimeoutId = setTimeout(() => {\n if (typeof window[SIGN]?.YES === 'undefined') {\n console.error(\n `antd.mirror-notify: 页面加载超过 ${delayDuration} 秒,可能是网络不畅。\\n请尝试访问国内镜像站点。%c${officialChinaMirror}`,\n `color: ${primaryColor}; font-weight: bold;`,\n );\n createNotification();\n }\n }, delayDuration * 1000);\n\n // 交给 React effect 清理\n window[SIGN] = function stopMirrorNotify() {\n window[SIGN].YES = Date.now();\n clearTimeout(reactTimeoutId);\n };\n})();\n"},{"async":true,"content":"/* eslint-disable */\n// https://clarity.microsoft.com\n(function (c, l, a, r, i, t, y) {\n c[a] =\n c[a] ||\n function () {\n (c[a].q = c[a].q || []).push(arguments);\n };\n t = l.createElement(r);\n t.async = 1;\n t.src = 'https://www.clarity.ms/tag/' + i;\n y = l.getElementsByTagName(r)[0];\n y.parentNode.insertBefore(t, y);\n})(window, document, 'clarity', 'script', 'lyia7jfwui');\n"}]}; window.__UMI_BUILD_ClIENT_CSS__ = '/umi.fa429c5c.css'</script><script async="">(function createMirrorModal() {
const SIGN = Symbol.for('antd.mirror-notify');
const always = window.localStorage.getItem('DEBUG') === 'antd';
const officialChinaMirror = 'https://ant-design.antgroup.com';
const enabledCondition = [
// Check if the browser language is Chinese
navigator.languages.includes('zh') || navigator.languages.includes('zh-CN'),
// Check if the URL path ends with -cn
/-cn\/?$/.test(window.location.pathname),
// chinese mirror URL
!['ant-design.gitee.io', new URL(officialChinaMirror).hostname].includes(
window.location.hostname,
),
// PR review URL
!window.location.host.includes('surge'),
// development mode
!['127.0.0.1', 'localhost'].includes(window.location.hostname),
];
const isEnabled = always || enabledCondition.every(Boolean);
if (!isEnabled) return;
const prefixCls = 'antd-mirror-notify';
const primaryColor = '#1677ff';
function insertCss() {
const style = document.createElement('style');
style.innerHTML = `
@keyframes slideInRight {
from {
transform: translate3d(100%, 0, 0);
visibility: visible;
}
to {
transform: translate3d(0, 0, 0);
}
}
.${prefixCls} {
position: fixed;
inset-inline-end: 12px;
inset-block-start: 12px;
z-index: 9999;
width: 360px;
background-color: #fff;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
border-radius: 4px;
overflow: hidden;
animation: slideInRight 0.3s ease-in-out;
}
.${prefixCls}-content {
padding: 16px;
}
.${prefixCls}-content a {
color: ${primaryColor};
text-decoration: none;
&:hover {
text-decoration: underline;
}
}
.${prefixCls}-title {
font-size: 16px;
font-weight: bold;
margin-block-end: 8px;
}
.${prefixCls}-message {
font-size: 14px;
color: #555;
line-height: 1.57;
}
.${prefixCls}-footer {
display: none;
margin-block-start: 16px;
justify-content: flex-end;
}
.${prefixCls}-progress {
position: relative;
inset-inline-end: 0;
width: 100%;
height: 4px;
background-color: #f0f0f0;
border-radius: 2px;
overflow: hidden;
}
.${prefixCls}-progress::after {
content: '';
position: absolute;
top: 0;
left: 0;
height: 100%;
width: var(--progress, 0%);
background-color: ${primaryColor};
transition: width 0.05s linear; /* Adjusted for smoother animation matching refreshRate */
}
.${prefixCls}-close {
all: unset;
position: absolute;
inset-inline-end: 2px;
inset-block-start: 2px;
width: 32px;
height: 32px;
font-size: 16px;
display: flex;
align-items: center;
justify-content: center;
color: #999;
cursor: pointer;
}
.${prefixCls}-close:hover {
color: #333;
}
.${prefixCls}-action {
all: unset;
display: inline-block;
padding: 4px 8px;
background-color: ${primaryColor};
color: #fff;
border-radius: 4px;
text-align: center;
cursor: pointer;
font-size: 14px;
}
`;
document.head.append(style);
}
function createNotification() {
insertCss();
const notify = document.createElement('div');
notify.className = `${prefixCls} slideInRight`;
notify.innerHTML = `
<div class="${prefixCls}-content">
<div class="${prefixCls}-title">🇨🇳 访问不畅?试试国内镜像</div>
<div class="${prefixCls}-message">
国内镜像站点可以帮助您更快地访问文档和资源。<br>
请尝试访问 <a href="${officialChinaMirror}">国内镜像站点</a>,以获得更好的体验。
</div>
<div class="${prefixCls}-footer">
<button class="${prefixCls}-action">🚀 立即前往</button>
</div>
</div>
<button class="${prefixCls}-close">X</button>
<div class="${prefixCls}-progress" style="--progress: 100%;"></div>
`;
document.body.appendChild(notify);
notify.querySelector(`.${prefixCls}-close`).addEventListener('click', () => {
removeNotify();
});
notify.querySelector(`.${prefixCls}-action`).addEventListener('click', () => {
window.location.href = officialChinaMirror;
removeNotify();
});
const refreshRate = 50; // ms
const duration = 10; // s
const step = 100 / ((duration * 1000) / refreshRate);
let progressInterval = -1;
function removeNotify() {
clearInterval(progressInterval);
notify.remove();
}
const progressEl = notify.querySelector(`.${prefixCls}-progress`);
let currentProgressValue = 100;
const progress = {
get value() {
return currentProgressValue;
},
set value(val) {
currentProgressValue = Math.max(0, Math.min(100, val));
progressEl.style.setProperty('--progress', `${currentProgressValue}%`);
},
};
function startProgressTimer() {
if (progressInterval !== -1) {
clearInterval(progressInterval);
}
progressInterval = setInterval(() => {
if (progress.value <= 0) {
removeNotify();
} else {
progress.value -= step;
}
}, refreshRate);
}
startProgressTimer();
notify.addEventListener('mouseenter', () => {
clearInterval(progressInterval);
});
notify.addEventListener('mouseleave', () => {
startProgressTimer();
});
}
// 断定网络不畅阈值(秒)
const delayDuration = 3;
const reactTimeoutId = setTimeout(() => {
if (typeof window[SIGN]?.YES === 'undefined') {
console.error(
`antd.mirror-notify: 页面加载超过 ${delayDuration} 秒,可能是网络不畅。\n请尝试访问国内镜像站点。%c${officialChinaMirror}`,
`color: ${primaryColor}; font-weight: bold;`,
);
createNotification();
}
}, delayDuration * 1000);
// 交给 React effect 清理
window[SIGN] = function stopMirrorNotify() {
window[SIGN].YES = Date.now();
clearTimeout(reactTimeoutId);
};
})();
</script><script async="">/* eslint-disable */
// https://clarity.microsoft.com
(function (c, l, a, r, i, t, y) {
c[a] =
c[a] ||
function () {
(c[a].q = c[a].q || []).push(arguments);
};
t = l.createElement(r);
t.async = 1;
t.src = 'https://www.clarity.ms/tag/' + i;
y = l.getElementsByTagName(r)[0];
y.parentNode.insertBefore(t, y);
})(window, document, 'clarity', 'script', 'lyia7jfwui');
</script><script src="/umi.b03bacf9.js" async=""></script><div hidden id="S:0"><!--$?--><template id="B:1"></template><div></div><!--/$--></div><script>$RC=function(b,c,e){c=document.getElementById(c);c.parentNode.removeChild(c);var a=document.getElementById(b);if(a){b=a.previousSibling;if(e)b.data="$!",a.setAttribute("data-dgst",e);else{e=b.parentNode;a=b.nextSibling;var f=0;do{if(a&&8===a.nodeType){var d=a.data;if("/$"===d)if(0===f)break;else f--;else"$"!==d&&"$?"!==d&&"$!"!==d||f++}d=a.nextSibling;e.removeChild(a);a=d}while(a);for(;c.firstChild;)e.insertBefore(c.firstChild,a);b.data="$"}b._reactRetry&&b._reactRetry()}};$RC("B:0","S:0")</script><div hidden id="S:1"><div class="ant-app css-var-«R2a»"><!--$?--><template id="B:2"></template><div></div><!--/$--></div></div><script>$RC("B:1","S:1")</script><link rel="preload" as="image" href="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg"/><link rel="preload" as="image" href="https://gw.alipayobjects.com/zos/rmsportal/XuVpGqBFxXplzvLjJBZB.svg"/><link rel="preload" as="image" href="https://gw.alipayobjects.com/zos/rmsportal/mZBWtboYbnMkTBaRIuWQ.png"/><link rel="preload" as="image" href="https://gw.alipayobjects.com/zos/rmsportal/nBVXkrFdWHxbZlmMbsaH.svg"/><link rel="preload" as="image" href="https://gw.alipayobjects.com/zos/antfincdn/nc7Fc0XBg5/8a6844f5-a6ed-4630-9177-4fa5d0b7dd47.png"/><link rel="preload" as="image" href="https://www.eggjs.org/logo.svg"/><link rel="preload" as="image" href="https://gw.alipayobjects.com/zos/rmsportal/DMDOlAUhmktLyEODCMBR.ico"/><link rel="preload" as="image" href="https://mdn.alipayobjects.com/huamei_j9rjmc/afts/img/A*3ittT5OEo2gAAAAAAAAAAAAADvGmAQ/original"/><div hidden id="S:2"><style data-emotion="css-global 1cvz9qn">@font-face{font-weight:normal;font-family:AlibabaPuHuiTi;src:url('//at.alicdn.com/t/webfont_6e11e43nfj.woff2') format('woff2'),url('//at.alicdn.com/t/webfont_6e11e43nfj.woff') format('woff'),url('//at.alicdn.com/t/webfont_6e11e43nfj.ttf') format('truetype');font-display:swap;}@font-face{font-weight:bold;font-family:AlibabaPuHuiTi;src:url('//at.alicdn.com/t/webfont_exesdog9toj.woff2') format('woff2'),url('//at.alicdn.com/t/webfont_exesdog9toj.woff') format('woff'),url('//at.alicdn.com/t/webfont_exesdog9toj.ttf') format('truetype');font-display:swap;}@font-face{font-weight:900;font-family:'AliPuHui';src:url('//at.alicdn.com/wf/webfont/exMpJIukiCms/Gsw2PSKrftc1yNWMNlXgw.woff2') format('woff2'),url('//at.alicdn.com/wf/webfont/exMpJIukiCms/vtu73by4O2gEBcvBuLgeu.woff') format('woff');font-display:swap;}html{direction:initial;}@supports (overflow-x: clip){html{overflow-x:clip;}}html.rtl{direction:rtl;}body{color:rgba(0,0,0,0.88);font-size:14px;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji';line-height:1.5714285714285714;background:#ffffff;-webkit-transition:background-color 1s cubic-bezier(0.075, 0.82, 0.165, 1);transition:background-color 1s cubic-bezier(0.075, 0.82, 0.165, 1);}@supports (overflow-x: clip){body{overflow-x:clip;}}@supports not (overflow-x: clip){body{overflow-x:hidden;}}</style><style data-emotion="css-global yv18lh">@layer global{body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td,hr,button,article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{margin:0;padding:0;}ul,ol{list-style:none;}img{vertical-align:middle;border-style:none;}[id]{scroll-margin-top:80px;}[data-prefers-color='dark']{-webkit-print-color-scheme:dark;color-scheme:dark;}[data-prefers-color='light']{-webkit-print-color-scheme:light;color-scheme:light;}}</style><style data-emotion="css-global ys7f0o">.markdown{color:rgba(0,0,0,0.88);font-size:14px;line-height:2;}.highlight{line-height:1.5;}.markdown img{max-width:calc(100% - 32px);max-height:100%;}.markdown>a>img,.markdown>img{display:block;margin:0 auto;}.markdown p>img,.markdown li>img{margin:34px auto;box-shadow:0 8px 20px rgba(143, 168, 191, 0.35);display:block;}.markdown p>img.markdown-inline-image{margin:0;box-shadow:none;}.markdown h1{margin-top:8px;margin-bottom:20px;color:rgba(0,0,0,0.88);font-weight:500;font-size:30px;font-family:Avenir,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji',sans-serif;line-height:38px;}.markdown h1 .subtitle{-webkit-margin-start:12px;margin-inline-start:12px;}.markdown h2{font-size:24px;line-height:32px;}.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{clear:both;margin:1.6em 0 0.6em;color:rgba(0,0,0,0.88);font-weight:500;font-family:Avenir,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji',sans-serif;}.markdown h3{font-size:18px;}.markdown h4{font-size:16px;}.markdown h5{font-size:14px;}.markdown h6{font-size:12px;}.markdown hr{clear:both;height:1px;margin:24px 0;background:rgba(5,5,5,0.06);border:0;}.markdown p,.markdown pre{margin:1em 0;}.ant-row-rtl .markdown p,.ant-row-rtl .markdown pre{direction:rtl;text-align:right;}.markdown ul>li,.markdown ol>li{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-margin-start:20px;margin-inline-start:20px;}.markdown ul>li >p,.markdown ol>li >p{margin:0.2em 0;}.markdown ul>li:empty,.markdown ol>li:empty{display:none;}.markdown ul>li{list-style-type:circle;}.markdown ol>li{list-style-type:decimal;}.markdown code{margin:0 1px;padding:0.2em 0.4em;font-size:0.9em;background:rgba(0,0,0,0.04);border:1px solid rgba(5,5,5,0.06);border-radius:4px;}.markdown pre{font-family:'SFMono-Regular',Consolas,'Liberation Mono',Menlo,Courier,monospace;background:rgba(0,0,0,0.04);border-radius:6px;}.markdown pre code{margin:0;padding:0;overflow:auto;color:rgba(0,0,0,0.88);font-size:13px;direction:ltr;text-align:left;background-color:#f5f5f5;border:none;}.markdown strong,.markdown b{font-weight:500;}.markdown .dumi-default-source-code{margin:1em 0;background-color:rgba(0,0,0,0.04);border-radius:6px;}.markdown .dumi-default-source-code >pre.prism-code{scrollbar-width:thin;scrollbar-gutter:stable;padding:12px 20px;font-size:14px;line-height:2;}.pic-plus>*{display:inline-block!important;vertical-align:middle;}.pic-plus span{margin:0 20px;color:#aaa;font-size:30px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}.markdown table td>a:not(:last-child){-webkit-margin-end:0!important;margin-inline-end:0!important;}.markdown table td>a:not(:last-child)::after{position:relative!important;}.markdown blockquote{margin:1em 0;-webkit-padding-start:0.8em;padding-inline-start:0.8em;color:rgba(0,0,0,0.65);font-size:90%;border-left:4px solid rgba(5,5,5,0.06);}.rtl .markdown blockquote{-webkit-padding-end:0.8em;padding-inline-end:0.8em;-webkit-padding-start:0;padding-inline-start:0;border-right:4px solid rgba(5,5,5,0.06);border-left:none;}.markdown blockquote p{margin:0;}.markdown .anchor{-webkit-margin-start:8px;margin-inline-start:8px;opacity:0;-webkit-transition:opacity 0.3s;transition:opacity 0.3s;}.rtl .markdown .anchor{-webkit-margin-end:8px;margin-inline-end:8px;-webkit-margin-start:0;margin-inline-start:0;}.markdown .waiting{color:#ccc;cursor:not-allowed;}.markdown a.edit-button{display:inline-block;-webkit-margin-start:8px;margin-inline-start:8px;-webkit-text-decoration:none;text-decoration:none;}.rtl .markdown a.edit-button{-webkit-margin-end:8px;margin-inline-end:8px;-webkit-margin-start:0;margin-inline-start:0;-webkit-transform:rotateY(180deg);-moz-transform:rotateY(180deg);-ms-transform:rotateY(180deg);transform:rotateY(180deg);}.markdown a.edit-button .anticon{display:block;color:rgba(0,0,0,0.65);font-size:16px;-webkit-transition:all 0.3s;transition:all 0.3s;}.markdown a.edit-button .anticon:hover{color:rgba(0,0,0,0.88);}.markdown h1:hover .anchor,.markdown h2:hover .anchor,.markdown h3:hover .anchor,.markdown h4:hover .anchor,.markdown h5:hover .anchor,.markdown h6:hover .anchor{display:inline-block;opacity:1;}.markdown>br,.markdown>p>br{clear:both;}.markdown .dumi-default-table-content{scrollbar-width:thin;scrollbar-gutter:stable;}.markdown .dumi-default-table table{margin:0;overflow-x:auto;overflow-y:hidden;direction:ltr;empty-cells:show;border:1px solid rgba(5,5,5,0.06);border-collapse:collapse;border-spacing:0;}.markdown .dumi-default-table table th,.markdown .dumi-default-table table td{padding:12px 24px;text-align:left;border:1px solid rgba(5,5,5,0.06);}.markdown .dumi-default-table table th:first-child,.markdown .dumi-default-table table td:first-child{border-left:1px solid rgba(5,5,5,0.06);}.markdown .dumi-default-table table th:last-child,.markdown .dumi-default-table table td:last-child{border-right:1px solid rgba(5,5,5,0.06);}.markdown .dumi-default-table table th img,.markdown .dumi-default-table table td img{max-width:unset;}.markdown .dumi-default-table table th{color:#5c6b77;font-weight:500;white-space:nowrap;background:rgba(0, 0, 0, 0.02);border-width:1px 1px 2px;}.markdown .dumi-default-table table tbody tr{-webkit-transition:all 0.3s;transition:all 0.3s;}.markdown .dumi-default-table table tbody tr:hover{background:rgba(60, 90, 100, 0.04);}.markdown .dumi-default-table table.component-api-table{margin:0;overflow-x:auto;overflow-y:hidden;font-size:13px;font-family:'SFMono-Regular',Consolas,'Liberation Mono',Menlo,Courier,monospace;line-height:1.5714285714285714;border:1px solid rgba(5,5,5,0.06);border-width:0 1px;}.markdown .dumi-default-table table.component-api-table th{border-width:1px 0 2px;}.markdown .dumi-default-table table.component-api-table td{border-width:1px 0;}.markdown .dumi-default-table table.component-api-table td:first-child{width:18%;min-width:58px;color:rgba(0,0,0,0.88);font-weight:600;white-space:nowrap;}.markdown .dumi-default-table table.component-api-table td:nth-child(2){min-width:160px;}.markdown .dumi-default-table table.component-api-table td:nth-child(3){width:22%;color:#c41d7f;font-size:13px;}.markdown .dumi-default-table table.component-api-table td:nth-child(4){width:15%;font-size:13px;}.markdown .dumi-default-table table.component-api-table td:nth-child(5){width:8%;font-size:13px;}.markdown .dumi-default-table table.component-api-table td:nth-last-child(3):first-child{width:38%;}.markdown .dumi-default-table table.component-api-table td:nth-last-child(3):first-child~td:nth-last-child(2){width:70%;}.markdown .dumi-default-table tr:has(td:first-child > del){color:#faad14!important;background-color:#fffbe6!important;display:-webkit-box;display:-webkit-var(--antd-site-api-deprecated-display, none);display:-ms-var(--antd-site-api-deprecated-display, none)box;display:var(--antd-site-api-deprecated-display, none);}.markdown .dumi-default-table tr:has(td:first-child > del) del{color:#faad14;}.markdown .dumi-default-table tr:has(td:first-child > del):hover del{-webkit-text-decoration:none;text-decoration:none;}.grid-demo .ant-row>div,[id^='grid-demo-'] .ant-row>div,.grid-demo .code-box-demo .ant-row>div,[id^='grid-demo-'] .code-box-demo .ant-row>div{min-height:30px;margin-top:8px;margin-bottom:8px;color:#fff;text-align:center;border-radius:0;}.grid-demo .code-box-demo .ant-row>div:not(.gutter-row),[id^='grid-demo-'] .code-box-demo .ant-row>div:not(.gutter-row){padding:16px 0;background:#1677ff;}.grid-demo .code-box-demo .ant-row>div:not(.gutter-row):nth-child(2n + 1),[id^='grid-demo-'] .code-box-demo .ant-row>div:not(.gutter-row):nth-child(2n + 1){background:#1677ffbf;}.grid-demo .ant-row .demo-col,[id^='grid-demo-'] .ant-row .demo-col,.grid-demo .code-box-demo .ant-row .demo-col,[id^='grid-demo-'] .code-box-demo .ant-row .demo-col{margin-top:0;margin-bottom:0;padding:30px 0;color:#fff;font-size:18px;text-align:center;border:none;}.grid-demo .ant-row .demo-col-1,[id^='grid-demo-'] .ant-row .demo-col-1{background:#1677ffbf;}.grid-demo .ant-row .demo-col-2,[id^='grid-demo-'] .ant-row .demo-col-2,.grid-demo .code-box-demo .ant-row .demo-col-2,[id^='grid-demo-'] .code-box-demo .ant-row .demo-col-2{background:#1677ffbf;}.grid-demo .ant-row .demo-col-3,[id^='grid-demo-'] .ant-row .demo-col-3,.grid-demo .code-box-demo .ant-row .demo-col-3,[id^='grid-demo-'] .code-box-demo .ant-row .demo-col-3{color:#999;background:rgba(255, 255, 255, 0.2);}.grid-demo .ant-row .demo-col-4,[id^='grid-demo-'] .ant-row .demo-col-4,.grid-demo .code-box-demo .ant-row .demo-col-4,[id^='grid-demo-'] .code-box-demo .ant-row .demo-col-4{background:#1677ff99;}.grid-demo .ant-row .demo-col-5,[id^='grid-demo-'] .ant-row .demo-col-5,.grid-demo .code-box-demo .ant-row .demo-col-5,[id^='grid-demo-'] .code-box-demo .ant-row .demo-col-5{color:#999;background:rgba(255, 255, 255, 0.2);}.grid-demo .code-box-demo .height-100,[id^='grid-demo-'] .code-box-demo .height-100{height:100px;line-height:100px;}.grid-demo .code-box-demo .height-50,[id^='grid-demo-'] .code-box-demo .height-50{height:50px;line-height:50px;}.grid-demo .code-box-demo .height-120,[id^='grid-demo-'] .code-box-demo .height-120{height:120px;line-height:120px;}.grid-demo .code-box-demo .height-80,[id^='grid-demo-'] .code-box-demo .height-80{height:80px;line-height:80px;}[id='grid-demo-playground'] >.code-box-demo .ant-row>div,[id='grid-demo-gutter'] >.code-box-demo .ant-row>div{margin-top:0;margin-bottom:0;}</style><style data-emotion="css-global zy6f9q">pre code{display:block;padding:16px 32px;color:rgba(0,0,0,0.88);font-size:14px;font-family:'Lucida Console',Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;line-height:2;white-space:pre;background:white;border:1px solid #e9e9e9;border-radius:6px;}code[class*='language-'],pre[class*='language-']{color:rgba(0,0,0,0.88);font-family:'Lucida Console',Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;line-height:1.5;direction:ltr;white-space:pre;text-align:left;word-wrap:normal;word-break:normal;word-spacing:normal;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;background:none;}code[class*='css']{direction:ltr;}pre[class*='language-'] ::selection,code[class*='language-'] ::selection{text-shadow:none;background:#b3d4fc;}@media print{code[class*='language-'],pre[class*='language-']{text-shadow:none;}}pre[class*='language-']{margin:16px 0;padding:12px 20px;overflow:auto;}:not(pre)>code[class*='language-'],pre[class*='language-']{background:#f5f5f5;}:not(pre)>code[class*='language-']{padding:0.1em;white-space:normal;border-radius:0.3em;}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:slategray;}.token.punctuation{color:#999;}.namespace{opacity:0.7;}.markdown .token.property,.markdown .token.tag,.markdown .token.boolean,.markdown .token.number,.markdown .token.constant,.markdown .token.symbol,.markdown .token.deleted{color:#f81d22;}.markdown .token.selector,.markdown .token.attr-name,.markdown .token.string,.markdown .token.char,.markdown .token.builtin,.markdown .token.inserted{color:#0b8235;}.markdown .token.operator,.markdown .token.entity,.markdown .token.url,.markdown .language-css .token.string,.markdown .style .token.string{color:#0b8235;}.markdown .token.atrule,.markdown .token.attr-value,.markdown .token.keyword{color:#008dff;}.markdown .token.function{color:#f81d22;}.markdown .token.regex,.markdown .token.important,.markdown .token.variable{color:#e90;}.markdown .token.important,.markdown .token.bold{font-weight:bold;}.markdown .token.italic{font-style:italic;}.markdown .token.entity{cursor:help;}</style><style data-emotion="css-global hcuf5s">.code-boxes-col-1-1{width:100%;}.code-boxes-col-2-1{display:inline-block;vertical-align:top;}.code-box{position:relative;display:inline-block;width:calc(100% - 2px);margin:0 0 16px;background-color:#ffffff;border:1px solid rgba(5,5,5,0.06);border-radius:8px;-webkit-transition:all 0.2s;transition:all 0.2s;}.code-box.code-box-simplify{border-radius:0;margin-bottom:0;}.code-box.code-box-simplify .code-box-demo{padding:0;border-bottom:0;}.code-box .code-box-title,.code-box .code-box-title a{color:rgba(0,0,0,0.88)!important;background:#ffffff;}.code-box .code-box-demo{background-color:#ffffff;border-radius:8px 8px 0 0;}.code-box .code-box-demo >.demo{overflow:auto;}.code-box .markdown pre{margin:0.5em 0;padding:6px 12px;}.code-box .markdown pre code{margin:0;background:#f5f5f5;}.code-box:target{border:1px solid #1677ff;}.code-box-title{position:absolute;top:-14px;padding:1px 8px;color:#777;background:#ffffff;border-radius:6px 6px 0 0;-webkit-transition:background-color 0.4s;transition:background-color 0.4s;-webkit-margin-start:16px;margin-inline-start:16px;}.code-box-title a,.code-box-title a:hover{color:rgba(0,0,0,0.88);font-weight:500;font-size:14px;}.code-box-description{padding:18px 24px 12px;}.code-box a.edit-button{position:absolute;top:7px;inset-inline-end:-16px;font-size:12px;-webkit-text-decoration:none;text-decoration:none;background:inherit;-webkit-transform:scale(0.9);-moz-transform:scale(0.9);-ms-transform:scale(0.9);transform:scale(0.9);-webkit-padding-end:4px;padding-inline-end:4px;}.code-box a.edit-button .anticon{color:rgba(0,0,0,0.65);-webkit-transition:all 0.3s;transition:all 0.3s;}.code-box a.edit-button .anticon:hover{color:rgba(0,0,0,0.88);}.ant-row.ant-row-rtl .code-box a.edit-button{inset-inline-end:auto;inset-inline-start:-22px;}.code-box-demo{padding:42px 24px 50px;color:rgba(0,0,0,0.88);border-bottom:1px solid rgba(5,5,5,0.06);}.code-box iframe{width:100%;border:0;}.code-box-meta.markdown{position:relative;width:100%;font-size:14px;border-radius:0 0 6px 6px;-webkit-transition:background-color 0.4s;transition:background-color 0.4s;}.code-box-meta blockquote{line-height:1.5;}.code-box-meta h4,section.code-box-meta p{margin:0;}.code-box-meta >p{width:100%;margin:0.5em 0;font-size:12px;word-break:break-word;-webkit-padding-end:25px;padding-inline-end:25px;}.code-box.expand .code-box-meta{border-bottom:1px dashed rgba(5,5,5,0.06);border-radius:0;}.code-box .code-expand-icon{position:relative;width:16px;height:16px;cursor:pointer;}.code-box .code-expand-icon-show,.code-box .code-expand-icon-hide{position:absolute;top:0;inset-inline-start:0;width:100%;max-width:100%;margin:0;box-shadow:none;-webkit-transition:all 0.4s;transition:all 0.4s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}.ant-row-rtl .code-box .code-expand-icon-show,.ant-row-rtl .code-box .code-expand-icon-hide{inset-inline-end:0;inset-inline-start:auto;}.code-box .code-expand-icon-show{opacity:0.55;pointer-events:auto;}.code-box .code-expand-icon-show:hover{opacity:1;}.code-box .code-expand-icon.ant-tooltip-open .code-expand-icon-show{opacity:1;}.code-box .code-expand-icon-hide{opacity:0;pointer-events:none;}.code-box .highlight-wrapper{display:none;border-radius:0 0 6px 6px;}.code-box .highlight-wrapper-expand{display:block;}.code-box .highlight{position:relative;}.code-box .highlight pre{margin:0;padding:0;background:#ffffff;}.code-box .highlight:not(:first-child){border-top:1px dashed rgba(5,5,5,0.06);}.code-box-actions{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;padding:12px 0;border-top:1px dashed rgba(5,5,5,0.06);opacity:0.7;-webkit-transition:opacity 0.3s;transition:opacity 0.3s;}.code-box-actions:hover{opacity:1;}.code-box-actions .code-box-code-action{position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:16px;height:16px;color:rgba(0,0,0,0.65);cursor:pointer;-webkit-transition:all 0.24s;transition:all 0.24s;}.code-box-actions .code-box-code-action:hover{color:rgba(0,0,0,0.88);}.code-box-actions .code-box-code-action .anticon{display:block;}.code-box-code-copy{width:14px;height:14px;font-size:14px;text-align:center;background:#ffffff;cursor:pointer;-webkit-transition:-webkit-transform 0.24s;transition:transform 0.24s;}.code-box-code-copy.anticon-check{color:#52c41a!important;font-weight:bold;}.code-box-codepen{width:14px;height:14px;overflow:hidden;border:0;cursor:pointer;}.code-box-codeblock{width:16px;height:16px;overflow:hidden;border:0;cursor:pointer;max-width:100%!important;}.code-box-codesandbox{width:16px;height:16px;overflow:hidden;border:0;cursor:pointer;}.code-box-codesandbox:hover{opacity:1;}.highlight-wrapper:hover .code-box-code-copy,.highlight-wrapper:hover .code-box-codepen,.highlight-wrapper:hover .code-box-codesandbox,.highlight-wrapper:hover .code-box-riddle{opacity:1;}.code-box pre{width:auto;margin:0;}.code-box pre code{background:#ffffff;border:none;box-shadow:unset;padding:12px 16px;font-size:14px;}.code-box-debug{border-color:#d3adf7;}.code-box-debug .code-box-title a{color:#722ed1;}.demo-wrapper{position:relative;}.all-code-box-controls{position:absolute;top:-32px;inset-inline-end:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-column-gap:8px;column-gap:8px;}.ant-btn.icon-enabled{background-color:rgba(0,0,0,0.06);opacity:1;}.ant-btn.icon-enabled .anticon{color:#000;font-weight:bold;}.ant-row-rtl #tooltip-demo-placement .code-box-demo,.ant-row-rtl #popover-demo-placement .code-box-demo,.ant-row-rtl #popconfirm-demo-placement .code-box-demo{direction:ltr;}</style><style data-emotion="css-global 1virivh">.nav-phone-icon{position:absolute;bottom:17px;inset-inline-end:30px;z-index:1;display:none;width:16px;height:22px;cursor:pointer;}@media only screen and (max-width: 992px){.code-boxes-col-2-1,.code-boxes-col-1-1{float:none;width:100%;max-width:unset;}}@media only screen and (max-width: 767.99px){.preview-image-boxes{float:none;width:100%;margin:0!important;}.preview-image-box{width:100%;margin:10px 0;padding:0;}.image-wrapper{display:none;}div.version{display:block;margin:29px auto 16px;}.toc{display:none;}.nav-phone-icon{display:block;}.main{height:calc(100% - 86px);}.aside-container{float:none;width:auto;padding-bottom:30px;border-right:0;}.ant-row-rtl{-webkit-margin-end:0;margin-inline-end:0;-webkit-margin-start:0;margin-inline-start:0;-webkit-padding-end:16px;padding-inline-end:16px;-webkit-padding-start:16px;padding-inline-start:16px;}.ant-row-rtl >.markdown>*{width:100%!important;}.main-wrapper{width:100%;margin:0;border-radius:0;}.prev-next-nav{width:calc(100% - 32px);-webkit-margin-start:16px;margin-inline-start:16px;}.ant-row-rtl .prev-next-nav{-webkit-margin-end:16px;margin-inline-end:16px;-webkit-margin-start:64px;margin-inline-start:64px;}.drawer .ant-menu-inline .ant-menu-item::after,.drawer .ant-menu-vertical .ant-menu-item::after{inset-inline-end:auto;inset-inline-start:0;}.home-page-wrapper .page h2{margin:80px auto 64px;}.home-page-wrapper .parallax-bg{display:none;}.banner{display:block;height:632px;}.banner-bg-wrapper{display:none;}.banner .img-wrapper,.banner .text-wrapper{display:inline-block;width:100%;min-width:unset;max-width:unset;margin:auto;text-align:center;}.banner .img-wrapper{position:initial;margin-top:20px;text-align:center;}.banner .img-wrapper svg{width:100%;max-width:260px;height:auto;margin:0 auto;}.banner .text-wrapper{min-height:200px;margin-top:32px;padding:0;}.banner .text-wrapper h1{display:none;}.banner .text-wrapper p{color:#314659;font-size:14px;line-height:28px;}.banner .text-wrapper .banner-btns{display:block;min-width:100%;white-space:nowrap;text-align:center;}.banner .text-wrapper .banner-btns .banner-btn{padding:0 20px;font-size:14px;}.banner .text-wrapper .banner-promote{min-width:100%;margin-top:32px;}.banner .text-wrapper .banner-promote .ant-divider{display:none;}.banner .text-wrapper .banner-promote a{font-size:14px;white-space:nowrap;}.banner .text-wrapper .banner-promote a img{width:20px;}.page1{min-height:1300px;}.page1 .ant-row{margin:24px auto 64px;}.page1 .ant-row >div{margin-bottom:48px;}.page2{min-height:840px;background:#ffffff;}.page2-content{box-shadow:none;}.page2-components{display:none;}.page2-product{min-height:auto;padding:0 16px;}.page2-product .product-block{margin-bottom:34px;padding-bottom:35px;border-bottom:1px solid rgba(5,5,5,0.06);}.page2-product .product-block:last-child{margin-bottom:32px;border-bottom:none;}.page2-product .product-block:last-child .block-text-wrapper{height:auto;}.page2-product .product-block .block-image-wrapper{height:88px;}.page2-product .product-block .block-image-wrapper img{height:100%;}.page2-product .product-block .block-text-wrapper{padding-bottom:0;border-bottom:none;}.page2-product .product-block .block-text-wrapper h4{margin-bottom:4px;font-size:18px;line-height:24px;}.page2-product .product-block .block-text-wrapper p{margin-bottom:8px;font-size:12px;line-height:20px;}.page2-product .product-block .block-text-wrapper a{line-height:20px;}.page2-product .product-block .block-text-wrapper .components-button-wrapper{margin-top:16px;font-size:12px;}.page2-product .product-block .block-text-wrapper .components-button-wrapper a{display:block;}.page2-product .product-block .block-text-wrapper a.more-mobile-react,.page2-product .product-block .block-text-wrapper a.more-mobile-angular{margin-top:0;color:#1677ff;}.page2-product .product-block .block-text-wrapper a.more-mobile-react:hover,.page2-product .product-block .block-text-wrapper a.more-mobile-angular:hover{color:#40a9ff;}.page3{min-height:688px;background-image:url('https://gw.alipayobjects.com/zos/rmsportal/qICoJIqqQRMeRGhPHBBS.svg');background-repeat:no-repeat;-webkit-background-size:cover;background-size:cover;}.page3 .ant-row{margin:0 8px;}.page3 .page3-block{margin-bottom:32px;padding:24px;background:#ffffff;border-radius:4px;box-shadow:0 8px 16px rgba(174, 185, 193, 0.3);}.page3 .page3-block:nth-child(2) .page3-img-wrapper img{display:block;width:70%;margin:auto;}.page3 .page3-block p{font-size:12px;}.page3 .page3-block .page3-img-wrapper{width:20%;}.page3 .page3-block .page3-img-wrapper img{width:100%;}.page3 .page3-block .page3-text-wrapper{width:80%;max-width:initial;margin:0;-webkit-padding-start:16px;padding-inline-start:16px;}}</style><style data-emotion="css-global dc4hxp">#nprogress .bar{background:#1677ff;}#nprogress .peg{box-shadow:0 0 10px #1677ff,0 0 5px #1677ff;}#nprogress .spinner-icon{border-top-color:#1677ff;border-left-color:#1677ff;}</style><style data-emotion="css-global 1i32xuc">.preview-image-boxes{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;float:right;clear:both;width:496px;margin:0 0 70px 64px;}.preview-image-boxes-with-carousel{width:420px;}.preview-image-boxes-with-carousel .preview-image-box img{padding:0;}.ant-row-rtl .preview-image-boxes{float:left;margin:0 64px 70px 0;}.preview-image-boxes+.preview-image-boxes{margin-top:-35px;}.preview-image-box{float:left;width:100%;}.preview-image-box+.preview-image-box{-webkit-margin-start:24px;margin-inline-start:24px;}.ant-row-rtl .preview-image-box+.preview-image-box{-webkit-margin-end:24px;margin-inline-end:24px;-webkit-margin-start:0;margin-inline-start:0;}.preview-image-wrapper{position:relative;display:inline-block;width:100%;padding:16px;text-align:center;background:#f2f4f5;box-sizing:border-box;}.preview-image-wrapper.video{display:block;padding:0;background:0;}.preview-image-wrapper video{display:block;width:100%;}.preview-image-wrapper video +svg{position:absolute;top:0;inset-inline-start:0;}.preview-image-wrapper.good::after{position:absolute;bottom:0;inset-inline-start:0;display:block;width:100%;height:3px;background:#1677ff;content:'';}.preview-image-wrapper.bad::after{position:absolute;bottom:0;inset-inline-start:0;display:block;width:100%;height:3px;background:#ff4d4f;content:'';}.preview-image-title{margin-top:20px;color:rgba(0,0,0,0.88);font-size:12px;}.preview-image-description{margin-top:2px;color:rgba(0,0,0,0.65);font-size:12px;line-height:1.5;}.preview-image-description hr{margin:2px 0;background:none;border:0;}.preview-image-box img{box-sizing:border-box;max-width:100%;padding:12px;background:#ffffff;border-radius:6px;cursor:pointer;-webkit-transition:all 0.3s;transition:all 0.3s;}.preview-image-box img.no-padding{padding:0;background:none;}.preview-image-boxes.preview-image-boxes-with-carousel img{padding:0;box-shadow:0 1px 0 0 #ddd,0 3px 0 0 #ffffff,0 4px 0 0 #ddd,0 6px 0 0 #ffffff,0 7px 0 0 #ddd;}.preview-image-box img:hover{box-shadow:1px 1px 6px rgba(0, 0, 0, 0.3);}.transition-video-player,.motion-video-min{float:right;width:600px;padding:0 0 70px 20px;}.transition-video-player .preview-image-wrapper,.motion-video-min .preview-image-wrapper{padding:0;}.ant-row-rtl .transition-video-player,.ant-row-rtl .motion-video-min{float:left;}.motion-video-min{width:390px;}.motion-principle-wrapper{width:100%;max-width:900px;margin:48px 0 24px;}.principle-wrapper{width:100%;}.principle-wrapper .principle{display:inline-block;box-sizing:border-box;width:100%;min-height:180px;-webkit-margin-end:12.5%;margin-inline-end:12.5%;margin-bottom:24px;padding:24px;font-size:24px;text-align:center;border:1px solid #e8e8e8;border-radius:4px;}.principle-wrapper .principle:last-child{-webkit-margin-end:0;margin-inline-end:0;}.principle-wrapper .principle h4{margin:16px 0 8px;}.principle-wrapper .principle p{font-size:12px;line-height:24px;}</style><style data-emotion="css-global rfiowl">.design-inline-cards{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin:0 -20px;}.design-inline-cards>*{-webkit-flex:10%;-ms-flex:10%;flex:10%;margin:0 20px;}.design-inline-cards img{width:100%;max-width:100%;}.design-inline-cards h4{margin-bottom:0;}</style><style data-emotion="css-global 1aeki66">.color-palettes{margin:0 1%;}.color-palettes-dark{margin:0;padding:0 28px;background-color:#141414;}.color-palettes-dark .color-title{color:rgba(255, 255, 255, 0.85);}.color-palettes-dark .color-description{color:rgba(255, 255, 255, 0.45);}.color-palettes-dark .color-palette{margin:45px 3.5% 45px 0;}.color-palettes-dark .color-palette:nth-of-type(3n){-webkit-margin-end:0;margin-inline-end:0;}.color-palettes-dark .color-palette .main-color-item{-webkit-margin-end:0;margin-inline-end:0;}.color-palettes-dark .color-palette .main-color-item:hover{-webkit-margin-end:-8px;margin-inline-end:-8px;}.color-palette{display:inline-block;width:31%;margin:45px 1%;}.color-palette-pick{margin:0 0 20px;font-size:20px;text-align:center;}.color-palette-picker{margin:24px 0;}.color-palette-picker-value{position:relative;top:-3px;-webkit-margin-start:16px;margin-inline-start:16px;font-size:14px;font-family:Consolas,sans-serif;}.ant-row-rtl .color-palette-picker-value{-webkit-margin-end:16px;margin-inline-end:16px;-webkit-margin-start:0;margin-inline-start:0;}.color-palette-picker-validation{position:relative;top:-3px;-webkit-margin-start:16px;margin-inline-start:16px;color:#ff4d4f;font-size:14px;}.ant-row-rtl .color-palette-picker-validation{-webkit-margin-end:16px;margin-inline-end:16px;-webkit-margin-start:0;margin-inline-start:0;}.color-palette-picker-validation-dark{-webkit-margin-start:0;margin-inline-start:0;}.main-color{text-align:left;}.main-color .palette-blue-1{background:#e6f4ff;}.main-color .palette-blue-2{background:#bae0ff;}.main-color .palette-blue-3{background:#91caff;}.main-color .palette-blue-4{background:#69b1ff;}.main-color .palette-blue-5{background:#4096ff;}.main-color .palette-blue-6{background:#1677ff;}.main-color .palette-blue-7{background:#0958d9;}.main-color .palette-blue-8{background:#003eb3;}.main-color .palette-blue-9{background:#002c8c;}.main-color .palette-blue-10{background:#001d66;}.main-color .palette-purple-1{background:#f9f0ff;}.main-color .palette-purple-2{background:#efdbff;}.main-color .palette-purple-3{background:#d3adf7;}.main-color .palette-purple-4{background:#b37feb;}.main-color .palette-purple-5{background:#9254de;}.main-color .palette-purple-6{background:#722ed1;}.main-color .palette-purple-7{background:#531dab;}.main-color .palette-purple-8{background:#391085;}.main-color .palette-purple-9{background:#22075e;}.main-color .palette-purple-10{background:#120338;}.main-color .palette-cyan-1{background:#e6fffb;}.main-color .palette-cyan-2{background:#b5f5ec;}.main-color .palette-cyan-3{background:#87e8de;}.main-color .palette-cyan-4{background:#5cdbd3;}.main-color .palette-cyan-5{background:#36cfc9;}.main-color .palette-cyan-6{background:#13c2c2;}.main-color .palette-cyan-7{background:#08979c;}.main-color .palette-cyan-8{background:#006d75;}.main-color .palette-cyan-9{background:#00474f;}.main-color .palette-cyan-10{background:#002329;}.main-color .palette-green-1{background:#f6ffed;}.main-color .palette-green-2{background:#d9f7be;}.main-color .palette-green-3{background:#b7eb8f;}.main-color .palette-green-4{background:#95de64;}.main-color .palette-green-5{background:#73d13d;}.main-color .palette-green-6{background:#52c41a;}.main-color .palette-green-7{background:#389e0d;}.main-color .palette-green-8{background:#237804;}.main-color .palette-green-9{background:#135200;}.main-color .palette-green-10{background:#092b00;}.main-color .palette-magenta-1{background:#fff0f6;}.main-color .palette-magenta-2{background:#ffd6e7;}.main-color .palette-magenta-3{background:#ffadd2;}.main-color .palette-magenta-4{background:#ff85c0;}.main-color .palette-magenta-5{background:#f759ab;}.main-color .palette-magenta-6{background:#eb2f96;}.main-color .palette-magenta-7{background:#c41d7f;}.main-color .palette-magenta-8{background:#9e1068;}.main-color .palette-magenta-9{background:#780650;}.main-color .palette-magenta-10{background:#520339;}.main-color .palette-red-1{background:#fff1f0;}.main-color .palette-red-2{background:#ffccc7;}.main-color .palette-red-3{background:#ffa39e;}.main-color .palette-red-4{background:#ff7875;}.main-color .palette-red-5{background:#ff4d4f;}.main-color .palette-red-6{background:#f5222d;}.main-color .palette-red-7{background:#cf1322;}.main-color .palette-red-8{background:#a8071a;}.main-color .palette-red-9{background:#820014;}.main-color .palette-red-10{background:#5c0011;}.main-color .palette-volcano-1{background:#fff2e8;}.main-color .palette-volcano-2{background:#ffd8bf;}.main-color .palette-volcano-3{background:#ffbb96;}.main-color .palette-volcano-4{background:#ff9c6e;}.main-color .palette-volcano-5{background:#ff7a45;}.main-color .palette-volcano-6{background:#fa541c;}.main-color .palette-volcano-7{background:#d4380d;}.main-color .palette-volcano-8{background:#ad2102;}.main-color .palette-volcano-9{background:#871400;}.main-color .palette-volcano-10{background:#610b00;}.main-color .palette-orange-1{background:#fff7e6;}.main-color .palette-orange-2{background:#ffe7ba;}.main-color .palette-orange-3{background:#ffd591;}.main-color .palette-orange-4{background:#ffc069;}.main-color .palette-orange-5{background:#ffa940;}.main-color .palette-orange-6{background:#fa8c16;}.main-color .palette-orange-7{background:#d46b08;}.main-color .palette-orange-8{background:#ad4e00;}.main-color .palette-orange-9{background:#873800;}.main-color .palette-orange-10{background:#612500;}.main-color .palette-gold-1{background:#fffbe6;}.main-color .palette-gold-2{background:#fff1b8;}.main-color .palette-gold-3{background:#ffe58f;}.main-color .palette-gold-4{background:#ffd666;}.main-color .palette-gold-5{background:#ffc53d;}.main-color .palette-gold-6{background:#faad14;}.main-color .palette-gold-7{background:#d48806;}.main-color .palette-gold-8{background:#ad6800;}.main-color .palette-gold-9{background:#874d00;}.main-color .palette-gold-10{background:#613400;}.main-color .palette-yellow-1{background:#feffe6;}.main-color .palette-yellow-2{background:#ffffb8;}.main-color .palette-yellow-3{background:#fffb8f;}.main-color .palette-yellow-4{background:#fff566;}.main-color .palette-yellow-5{background:#ffec3d;}.main-color .palette-yellow-6{background:#fadb14;}.main-color .palette-yellow-7{background:#d4b106;}.main-color .palette-yellow-8{background:#ad8b00;}.main-color .palette-yellow-9{background:#876800;}.main-color .palette-yellow-10{background:#614700;}.main-color .palette-lime-1{background:#fcffe6;}.main-color .palette-lime-2{background:#f4ffb8;}.main-color .palette-lime-3{background:#eaff8f;}.main-color .palette-lime-4{background:#d3f261;}.main-color .palette-lime-5{background:#bae637;}.main-color .palette-lime-6{background:#a0d911;}.main-color .palette-lime-7{background:#7cb305;}.main-color .palette-lime-8{background:#5b8c00;}.main-color .palette-lime-9{background:#3f6600;}.main-color .palette-lime-10{background:#254000;}.main-color .palette-geekblue-1{background:#f0f5ff;}.main-color .palette-geekblue-2{background:#d6e4ff;}.main-color .palette-geekblue-3{background:#adc6ff;}.main-color .palette-geekblue-4{background:#85a5ff;}.main-color .palette-geekblue-5{background:#597ef7;}.main-color .palette-geekblue-6{background:#2f54eb;}.main-color .palette-geekblue-7{background:#1d39c4;}.main-color .palette-geekblue-8{background:#10239e;}.main-color .palette-geekblue-9{background:#061178;}.main-color .palette-geekblue-10{background:#030852;}.main-color .palette-gray-1{background:#fff;}.main-color .palette-gray-2{background:#fafafa;}.main-color .palette-gray-3{background:#f5f5f5;}.main-color .palette-gray-4{background:#f0f0f0;}.main-color .palette-gray-5{background:#d9d9d9;}.main-color .palette-gray-6{background:#bfbfbf;}.main-color .palette-gray-7{background:#8c8c8c;}.main-color .palette-gray-8{background:#595959;}.main-color .palette-gray-9{background:#434343;}.main-color .palette-gray-10{background:#262626;}.main-color .palette-gray-11{background:#1f1f1f;}.main-color .palette-gray-12{background:#141414;}.main-color .palette-gray-13{background:#000;}.main-color-item{position:relative;height:44px;-webkit-margin-end:4px;margin-inline-end:4px;padding:0 12px;font-size:14px;font-family:Consolas,sans-serif;line-height:44px;cursor:pointer;-webkit-transition:all 0.2s;transition:all 0.2s;}.main-color-item:first-child{border-radius:4px 4px 0 0;}.main-color-item:last-child{border-radius:0 0 4px 4px;}.main-color-item:hover{-webkit-margin-end:-8px;margin-inline-end:-8px;border-radius:0 4px 4px 0;}.main-color-item .main-color-text{float:left;-webkit-transition:all 0.3s;transition:all 0.3s;}.main-color-item .main-color-value{position:relative;inset-inline-start:4px;float:right;-webkit-transform:scale(0.85);-moz-transform:scale(0.85);-ms-transform:scale(0.85);transform:scale(0.85);transform-origin:100% 50%;opacity:0;-webkit-transition:all 0.3s;transition:all 0.3s;}.color-title{margin:0 0 24px;color:#5c6b77;font-weight:500;font-size:22px;text-align:center;text-transform:capitalize;}.color-description{display:block;color:#777;font-weight:lighter;font-size:14px;}.main-color:hover .main-color-value{inset-inline-start:0;opacity:0.7;}.color-palette-horizontal{box-sizing:border-box;width:100%;}.color-palette-horizontal-dark{height:303px;padding:32px 28px;background-color:#141414;}.color-palette-horizontal-dark .color-palette-picker{margin-bottom:0;}.color-palette-horizontal-dark .color-palette-pick{color:rgba(255, 255, 255, 0.65);text-align:left;}.color-palette-horizontal-dark .color-palette-pick-hex{color:rgba(255, 255, 255, 0.65);}.ant-row-rtl .color-palette-horizontal-dark .color-palette-pick{direction:rtl;text-align:right;}.color-palette-horizontal .main-color{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}.color-palette-horizontal .main-color-item{position:relative;-webkit-flex:1;-ms-flex:1;flex:1;box-sizing:border-box;height:86px;-webkit-margin-end:0;margin-inline-end:0;padding:37px 0 0;line-height:normal;text-align:center;border-radius:0;}.color-palette-horizontal .main-color-item .main-color-text{float:none;}.color-palette-horizontal .main-color-item:hover{height:96px;margin-top:-10px;border-radius:4px 4px 0 0;}.color-palette-horizontal .main-color-value{position:absolute;bottom:0;inset-inline-start:0;width:100%;text-align:center;transform-origin:unset;}.color-palette-horizontal .main-color:hover .main-color-item{padding-top:8px;}.color-palette-horizontal .main-color:hover .main-color-value{bottom:8px;opacity:0.7;}</style><style data-emotion="css-global 1069y3">h1 >a[aria-hidden]:first-child,h2 >a[aria-hidden]:first-child,h3 >a[aria-hidden]:first-child,h4 >a[aria-hidden]:first-child,h5 >a[aria-hidden]:first-child,h6 >a[aria-hidden]:first-child{float:left;width:20px;-webkit-padding-end:4px;padding-inline-end:4px;font-size:0;line-height:inherit;text-align:right;-webkit-padding-end:4px;padding-inline-end:4px;-webkit-margin-start:-24px;margin-inline-start:-24px;}[data-direction='rtl'] h1 >a[aria-hidden]:first-child,[data-direction='rtl'] h2 >a[aria-hidden]:first-child,[data-direction='rtl'] h3 >a[aria-hidden]:first-child,[data-direction='rtl'] h4 >a[aria-hidden]:first-child,[data-direction='rtl'] h5 >a[aria-hidden]:first-child,[data-direction='rtl'] h6 >a[aria-hidden]:first-child{float:right;}h1 >a[aria-hidden]:first-child:hover,h2 >a[aria-hidden]:first-child:hover,h3 >a[aria-hidden]:first-child:hover,h4 >a[aria-hidden]:first-child:hover,h5 >a[aria-hidden]:first-child:hover,h6 >a[aria-hidden]:first-child:hover{border:0;}h1 >a[aria-hidden]:first-child >.icon-link::before,h2 >a[aria-hidden]:first-child >.icon-link::before,h3 >a[aria-hidden]:first-child >.icon-link::before,h4 >a[aria-hidden]:first-child >.icon-link::before,h5 >a[aria-hidden]:first-child >.icon-link::before,h6 >a[aria-hidden]:first-child >.icon-link::before{font-size:20px;content:'#';color:rgba(0,0,0,0.65);font-family:'SFMono-Regular',Consolas,'Liberation Mono',Menlo,Courier,monospace;}h1:not(:hover)>a[aria-hidden]:first-child>.icon-link,h2:not(:hover)>a[aria-hidden]:first-child>.icon-link,h3:not(:hover)>a[aria-hidden]:first-child>.icon-link,h4:not(:hover)>a[aria-hidden]:first-child>.icon-link,h5:not(:hover)>a[aria-hidden]:first-child>.icon-link,h6:not(:hover)>a[aria-hidden]:first-child>.icon-link{visibility:hidden;}</style><style data-emotion="css-global 19oadjr">html .dumi-default-search-bar-input{color:rgba(0,0,0,0.88);background:#ffffff;}html .dumi-default-search-bar-input:focus{background:#ffffff;}html .dumi-default-search-bar-input::-webkit-input-placeholder{color:rgba(0,0,0,0.25)!important;}html .dumi-default-search-bar-input::-moz-placeholder{color:rgba(0,0,0,0.25)!important;}html .dumi-default-search-bar-input:-ms-input-placeholder{color:rgba(0,0,0,0.25)!important;}html .dumi-default-search-bar-input::placeholder{color:rgba(0,0,0,0.25)!important;}html .dumi-default-search-popover{background-color:#ffffff!important;}html .dumi-default-search-popover::before{border-bottom-color:#ffffff!important;}html .dumi-default-search-result dl dt{background-color:#e6f4ff!important;}html .dumi-default-search-result dl dd a:hover{background-color:rgba(0,0,0,0.04);}html .dumi-default-search-result dl dd a:hover h4,html .dumi-default-search-result dl dd a:hover p{color:rgba(0,0,0,0.88)!important;}html .dumi-default-search-result dl dd a:hover svg{fill:rgba(0,0,0,0.88)!important;}</style><header class="acss-ux81qf clearfix"><div class="ant-row css-var-«R2a»" style="flex-flow:nowrap;height:64px"><div class="ant-col ant-col-xs-24 ant-col-sm-24 ant-col-md-6 ant-col-lg-6 ant-col-xl-5 ant-col-xxl-4 css-var-«R2a»"><h1><a class="acss-1aptykm" href="/"><img src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg" draggable="false" alt="logo"/><span class="acss-wehhhl">Ant Design</span></a></h1></div><div class="ant-col ant-col-xs-0 ant-col-sm-0 ant-col-md-18 ant-col-lg-18 ant-col-xl-19 ant-col-xxl-20 css-var-«R2a»"><div class="acss-n9h96z"><div class="dumi-default-search-bar"><svg viewBox="64 64 896 896" focusable="false" class="dumi-default-search-bar-svg"><path d="M909.6 854.5L649.9 594.8C690.2 542.7 712 479 712 412c0-80.2-31.3-155.4-87.9-212.1-56.6-56.7-132-87.9-212.1-87.9s-155.5 31.3-212.1 87.9C143.2 256.5 112 331.8 112 412c0 80.1 31.3 155.5 87.9 212.1C256.5 680.8 331.8 712 412 712c67 0 130.6-21.8 182.7-62l259.7 259.6a8.2 8.2 0 0011.6 0l43.6-43.5a8.2 8.2 0 000-11.6zM570.4 570.4C528 612.7 471.8 636 412 636s-116-23.3-158.4-65.6C211.3 528 188 471.8 188 412s23.3-116.1 65.6-158.4C296 211.3 352.2 188 412 188s116.1 23.2 158.4 65.6S636 352.2 636 412s-23.3 116.1-65.6 158.4z"></path></svg><input class="dumi-default-search-bar-input" placeholder="Type keywords..."/><span class="dumi-default-search-shortcut"><!-- --> K</span></div><ul class="ant-menu ant-menu-root ant-menu-horizontal ant-menu-light acss-18966qj css-var-«R2a» ant-menu-css-var" dir="ltr" role="menu" tabindex="0" data-menu-list="true"><li class="ant-menu-item ant-menu-item-only-child" role="menuitem" tabindex="-1" aria-describedby="«R25cdatd5cma»"><span class="ant-menu-title-content"><a href="/docs/spec/introduce">Design</a></span></li><li class="ant-menu-item ant-menu-item-selected ant-menu-item-only-child" role="menuitem" tabindex="-1" aria-describedby="«R29cdatd5cma»"><span class="ant-menu-title-content"><a href="/docs/react/introduce">Development</a></span></li><li class="ant-menu-item ant-menu-item-only-child" role="menuitem" tabindex="-1" aria-describedby="«R2dcdatd5cma»"><span class="ant-menu-title-content"><a href="/components/overview/">Components</a></span></li><li class="ant-menu-item ant-menu-item-only-child" role="menuitem" tabindex="-1" aria-describedby="«R2hcdatd5cma»"><span class="ant-menu-title-content"><a href="/docs/blog/css-tricks">Blog</a></span></li><li class="ant-menu-item ant-menu-item-only-child" role="menuitem" tabindex="-1" aria-describedby="«R2lcdatd5cma»"><span class="ant-menu-title-content"><a href="/docs/resources">Resources</a></span></li></ul><div style="display:none" aria-hidden="true"></div><div class="ant-select ant-select-sm ant-select-filled acss-1hv6mo1 css-var-«R2a» ant-select-css-var ant-select-single ant-select-show-arrow"><div class="ant-select-selector"><span class="ant-select-selection-wrap"><span class="ant-select-selection-search"><input type="search" autoComplete="off" class="ant-select-selection-search-input" role="combobox" aria-expanded="false" aria-haspopup="listbox" aria-owns="undefined_list" aria-autocomplete="list" aria-controls="undefined_list" readOnly="" unselectable="on" style="opacity:0" value=""/></span><span class="ant-select-selection-item" title="5.25.4">5.25.4</span></span></div><span class="ant-select-arrow" style="user-select:none;-webkit-user-select:none" unselectable="on" aria-hidden="true"><span role="img" aria-label="down" class="anticon anticon-down ant-select-suffix"><svg viewBox="64 64 896 896" focusable="false" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></span></span></div><button aria-describedby="«R4tatd5cma»" type="button" class="ant-btn css-var-«R2a» ant-btn-text ant-btn-color-default ant-btn-variant-text acss-1kw62u4"><div class="btn-inner"><div class="acss-llcihc"><span class="acss-uw0c7n acss-2yv8wd"></span><span class="acss-uw0c7n acss-17qhpmq">En</span></div></div></button><button aria-label="RTL Switch Button" aria-describedby="«R55atd5cma»" type="button" class="ant-btn css-var-«R2a» ant-btn-text ant-btn-color-default ant-btn-variant-text acss-1kw62u4"><div class="btn-inner"><span role="img" direction="ltr" class="anticon acss-pw663m"><svg viewBox="0 0 20 20" width="20" height="20" fill="currentColor" style="transform:scaleX(1)"><title>Direction Icon</title><path d="m14.6961816 11.6470802.0841184.0726198 2 2c.2662727.2662727.2904793.682876.0726198.9764816l-.0726198.0841184-2 2c-.2929.2929-.7677.2929-1.0606 0-.2662727-.2662727-.2904793-.682876-.0726198-.9764816l.0726198-.0841184.7196-.7197h-10.6893c-.41421 0-.75-.3358-.75-.75 0-.3796833.28215688-.6934889.64823019-.7431531l.10176981-.0068469h10.6893l-.7196-.7197c-.2929-.2929-.2929-.7677 0-1.0606.2662727-.2662727.682876-.2904793.9764816-.0726198zm-8.1961616-8.6470802c.30667 0 .58246.18671.69635.47146l3.00003 7.50004c.1538.3845-.0333.821-.41784.9749-.38459.1538-.82107-.0333-.9749-.4179l-.81142-2.0285h-2.98445l-.81142 2.0285c-.15383.3846-.59031.5717-.9749.4179-.38458-.1539-.57165-.5904-.41781-.9749l3-7.50004c.1139-.28475.38968-.47146.69636-.47146zm8.1961616 1.14705264.0841184.07261736 2 2c.2662727.26626364.2904793.68293223.0726198.97654222l-.0726198.08411778-2 2c-.2929.29289-.7677.29289-1.0606 0-.2662727-.26626364-.2904793-.68293223-.0726198-.97654222l.0726198-.08411778.7196-.7196675h-3.6893c-.4142 0-.75-.3357925-.75-.7500025 0-.3796925.2821653-.69348832.6482323-.74315087l.1017677-.00684663h3.6893l-.7196-.7196725c-.2929-.29289-.2929-.76777 0-1.06066.2662727-.26626364.682876-.29046942.9764816-.07261736zm-8.1961616 1.62238736-.89223 2.23056h1.78445z"></path></svg></span></div></button><button type="button" class="ant-btn css-var-«R2a» ant-btn-text ant-btn-color-default ant-btn-variant-text ant-btn-icon-only ant-dropdown-trigger" style="font-size:16px"><span class="ant-btn-icon"><span role="img" class="anticon"><svg width="1em" height="1em" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" focusable="false" class=""><title>Theme icon</title><g fill-rule="evenodd"><g fill-rule="nonzero"><path d="M7.02 3.635l12.518 12.518a1.863 1.863 0 010 2.635l-1.317 1.318a1.863 1.863 0 01-2.635 0L3.068 7.588A2.795 2.795 0 117.02 3.635zm2.09 14.428a.932.932 0 110 1.864.932.932 0 010-1.864zm-.043-9.747L7.75 9.635l9.154 9.153 1.318-1.317-9.154-9.155zM3.52 12.473c.514 0 .931.417.931.931v.932h.932a.932.932 0 110 1.864h-.932v.931a.932.932 0 01-1.863 0l-.001-.931h-.93a.932.932 0 010-1.864h.93v-.932c0-.514.418-.931.933-.931zm15.374-3.727a1.398 1.398 0 110 2.795 1.398 1.398 0 010-2.795zM4.385 4.953a.932.932 0 000 1.317l2.046 2.047L7.75 7 5.703 4.953a.932.932 0 00-1.318 0zM14.701.36a.932.932 0 01.931.932v.931h.932a.932.932 0 010 1.864h-.933l.001.932a.932.932 0 11-1.863 0l-.001-.932h-.93a.932.932 0 110-1.864h.93v-.931a.932.932 0 01.933-.932z"></path></g></g></svg></span></span></button><a href="https://github.com/ant-design/ant-design" target="_blank" rel="noreferrer"><button aria-describedby="«R5latd5cma»" type="button" class="ant-btn css-var-«R2a» ant-btn-text ant-btn-color-default ant-btn-variant-text ant-btn-icon-only" style="font-size:16px"><span class="ant-btn-icon"><span role="img" aria-label="github" class="anticon anticon-github"><svg viewBox="64 64 896 896" focusable="false" data-icon="github" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M511.6 76.3C264.3 76.2 64 276.4 64 523.5 64 718.9 189.3 885 363.8 946c23.5 5.9 19.9-10.8 19.9-22.2v-77.5c-135.7 15.9-141.2-73.9-150.3-88.9C215 726 171.5 718 184.5 703c30.9-15.9 62.4 4 98.9 57.9 26.4 39.1 77.9 32.5 104 26 5.7-23.5 17.9-44.5 34.7-60.8-140.6-25.2-199.2-111-199.2-213 0-49.5 16.3-95 48.3-131.7-20.4-60.5 1.9-112.3 4.9-120 58.1-5.2 118.5 41.6 123.2 45.3 33-8.9 70.7-13.6 112.9-13.6 42.4 0 80.2 4.9 113.5 13.9 11.3-8.6 67.3-48.8 121.3-43.9 2.9 7.7 24.7 58.3 5.5 118 32.4 36.8 48.9 82.7 48.9 132.3 0 102.2-59 188.1-200 212.9a127.5 127.5 0 0138.1 91v112.5c.8 9 0 17.9 15 17.9 177.1-59.7 304.6-227 304.6-424.1 0-247.2-200.4-447.3-447.5-447.3z"></path></svg></span></span></button></a></div></div></div></header><main class="acss-1eucewp"><div class="ant-col acss-kiw8y ant-col-xs-24 ant-col-sm-24 ant-col-md-6 ant-col-lg-6 ant-col-xl-5 ant-col-xxl-4 css-var-«R2a»"><ul class="ant-menu ant-menu-root ant-menu-inline ant-menu-light acss-1cfnajh css-var-«R2nd5cma» ant-menu-css-var" dir="ltr" role="menu" tabindex="0" data-menu-list="true"><li class="ant-menu-item ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«R12mmnd5cma»"><span class="ant-menu-title-content"><a class="" href="/docs/react/introduce"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>Ant Design of React</span></div></a></span></li><li class="ant-menu-item ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«R14mmnd5cma»"><span class="ant-menu-title-content"><a class="acss-yqckmr" href="/changelog"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>Changelog</span></div><span class="ant-tag ant-tag-success ant-tag-borderless acss-64ji1u css-var-«R2nd5cma»">v5.25.4</span></a></span></li><li role="presentation" class="ant-menu-item-group"><div role="presentation" class="ant-menu-item-group-title" title="Basic Usage">Basic Usage</div><ul role="group" class="ant-menu-item-group-list"><li class="ant-menu-item ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«R136mmnd5cma»"><span class="ant-menu-title-content"><a class="" href="/docs/react/getting-started"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>Getting Started</span></div></a></span></li><li class="ant-menu-item ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«R156mmnd5cma»"><span class="ant-menu-title-content"><a class="" href="/docs/react/use-with-vite"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>Usage with Vite</span></div></a></span></li><li class="ant-menu-item ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«R176mmnd5cma»"><span class="ant-menu-title-content"><a class="acss-yqckmr" href="/docs/react/use-with-next"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>Usage with Next.js</span></div><span class="ant-tag ant-tag-processing ant-tag-borderless acss-64ji1u css-var-«R2nd5cma»">Updated</span></a></span></li><li class="ant-menu-item ant-menu-item-selected ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«R196mmnd5cma»"><span class="ant-menu-title-content"><a class="" href="/docs/react/use-with-umi"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>Usage with Umi</span></div></a></span></li><li class="ant-menu-item ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«R1b6mmnd5cma»"><span class="ant-menu-title-content"><a class="" href="/docs/react/use-with-rsbuild"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>Usage with Rsbuild</span></div></a></span></li><li class="ant-menu-item ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«R1d6mmnd5cma»"><span class="ant-menu-title-content"><a class="" href="/docs/react/use-with-farm"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>Usage with Farm</span></div></a></span></li><li class="ant-menu-item ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«R1f6mmnd5cma»"><span class="ant-menu-title-content"><a class="" href="/docs/react/use-with-refine"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>Usage with Refine</span></div></a></span></li></ul></li><li role="presentation" class="ant-menu-item-group"><div role="presentation" class="ant-menu-item-group-title" title="Advanced">Advanced</div><ul role="group" class="ant-menu-item-group-list"><li class="ant-menu-item ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«R238mmnd5cma»"><span class="ant-menu-title-content"><a class="" href="/docs/react/customize-theme"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>Customize Theme</span></div></a></span></li><li class="ant-menu-item ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«R258mmnd5cma»"><span class="ant-menu-title-content"><a class="" href="/docs/react/compatible-style"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>CSS Compatible</span></div></a></span></li><li class="ant-menu-item ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«R278mmnd5cma»"><span class="ant-menu-title-content"><a class="" href="/docs/react/server-side-rendering"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>Server Side Rendering</span></div></a></span></li><li class="ant-menu-item ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«R298mmnd5cma»"><span class="ant-menu-title-content"><a class="acss-yqckmr" href="/docs/react/css-variables"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>CSS Variables</span></div><span class="ant-tag ant-tag-success ant-tag-borderless acss-64ji1u css-var-«R2nd5cma»">New</span></a></span></li><li class="ant-menu-item ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«R2b8mmnd5cma»"><span class="ant-menu-title-content"><a class="" href="/docs/react/use-custom-date-library"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>Use custom date library</span></div></a></span></li><li class="ant-menu-item ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«R2d8mmnd5cma»"><span class="ant-menu-title-content"><a class="" href="/docs/react/i18n"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>Internationalization</span></div></a></span></li><li class="ant-menu-item ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«R2f8mmnd5cma»"><span class="ant-menu-title-content"><a class="" href="/docs/react/common-props"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>Common Props</span></div></a></span></li><li class="ant-menu-item ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«R2h8mmnd5cma»"><span class="ant-menu-title-content"><a class="acss-yqckmr" href="/docs/react/v5-for-19"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>React 19 Compatibility</span></div><span class="ant-tag ant-tag-success ant-tag-borderless acss-64ji1u css-var-«R2nd5cma»">New</span></a></span></li></ul></li><li role="presentation" class="ant-menu-item-group"><div role="presentation" class="ant-menu-item-group-title" title="Migration">Migration</div><ul role="group" class="ant-menu-item-group-list"><li class="ant-menu-item ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«Rjammnd5cma»"><span class="ant-menu-title-content"><a class="" href="/docs/react/migration-v5"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>V4 to V5</span></div></a></span></li><li class="ant-menu-item ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«Rlammnd5cma»"><span class="ant-menu-title-content"><a class="" href="/docs/react/migrate-less-variables"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>Less variables to Component Token</span></div></a></span></li></ul></li><li role="presentation" class="ant-menu-item-group"><div role="presentation" class="ant-menu-item-group-title" title="Other">Other</div><ul role="group" class="ant-menu-item-group-list"><li class="ant-menu-item ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«Rjcmmnd5cma»"><span class="ant-menu-title-content"><a class="" href="/docs/react/recommendation"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>Third-Party Libraries</span></div></a></span></li><li class="ant-menu-item ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«Rlcmmnd5cma»"><span class="ant-menu-title-content"><a class="" href="/docs/react/contributing"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>Contributing</span></div></a></span></li><li class="ant-menu-item ant-menu-item-only-child" style="padding-left:30px" role="menuitem" tabindex="-1" aria-describedby="«Rncmmnd5cma»"><span class="ant-menu-title-content"><a class="" href="/docs/react/faq"><div class="ant-flex css-var-«R2nd5cma» ant-flex-align-center ant-flex-justify-flex-start ant-flex-gap-small"><span>FAQ</span></div></a></span></li></ul></li></ul><div style="display:none" aria-hidden="true"></div></div><div class="ant-col ant-col-xs-24 ant-col-sm-24 ant-col-md-18 ant-col-lg-18 ant-col-xl-19 ant-col-xxl-20 css-var-«R2a»"><section class="acss-u1svdg"><div class="css-var-«R2a» ant-anchor-css-var ant-anchor-wrapper acss-wj9g90" style="max-height:100vh"><div class="ant-anchor"><span class="ant-anchor-ink"></span><div class="ant-anchor-link"><a class="ant-anchor-link-title" href="#initialization-project" title="Initialization Project">Initialization Project</a></div><div class="ant-anchor-link"><a class="ant-anchor-link-title" href="#create-new-routes" title="Create New Routes">Create New Routes</a></div><div class="ant-anchor-link"><a class="ant-anchor-link-title" href="#implementing-product-ui-components" title="Implementing Product UI components">Implementing Product UI components</a></div><div class="ant-anchor-link"><a class="ant-anchor-link-title" href="#preparing-mock-data" title="Preparing Mock Data">Preparing Mock Data</a></div><div class="ant-anchor-link"><a class="ant-anchor-link-title" href="#complete-products-page" title="Complete Products Page">Complete Products Page</a></div><div class="ant-anchor-link"><a class="ant-anchor-link-title" href="#prolayout" title="ProLayout">ProLayout</a></div><div class="ant-anchor-link"><a class="ant-anchor-link-title" href="#build-application" title="Build Application">Build Application</a></div><div class="ant-anchor-link"><a class="ant-anchor-link-title" href="#next-step" title="Next Step">Next Step</a></div></div></div></section><article class="acss-135ywqk"><div class="ant-flex css-var-«R2a» ant-flex-justify-space-between"><h1 class="ant-typography css-var-«R2a»" style="font-size:32px;position:relative"><div class="ant-space ant-space-horizontal ant-space-align-center ant-space-gap-row-small ant-space-gap-col-small css-var-«R2a»"><div class="ant-space-item"><span>Usage with Umi</span></div><div class="ant-space-item"><span></span></div><div class="ant-space-item"><a class="acss-lrkwi4" href="https://github.com/ant-design/ant-design/edit/master/docs/react/use-with-umi.en-US.md" target="_blank" rel="noopener noreferrer" aria-describedby="«R2fadhavd5cma»"><span role="img" aria-label="edit" class="anticon anticon-edit"><svg viewBox="64 64 896 896" focusable="false" data-icon="edit" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M257.7 752c2 0 4-.2 6-.5L431.9 722c2-.4 3.9-1.3 5.3-2.8l423.9-423.9a9.96 9.96 0 000-14.1L694.9 114.9c-1.9-1.9-4.4-2.9-7.1-2.9s-5.2 1-7.1 2.9L256.8 538.8c-1.5 1.5-2.4 3.3-2.8 5.3l-29.5 168.2a33.5 33.5 0 009.4 29.8c6.6 6.4 14.9 9.9 23.8 9.9zm67.4-174.4L687.8 215l73.3 73.3-362.7 362.6-88.9 15.7 15.6-89zM880 836H144c-17.7 0-32 14.3-32 32v36c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-36c0-17.7-14.3-32-32-32z"></path></svg></span></a></div></div></h1></div><div style="min-height:calc(100vh - 64px)"><!--$?--><template id="B:3"></template><div></div><!--/$--></div><div style="margin-top:120px"><!--$--><div class=""><div class="acss-1au9561">contributors</div><div class="acss-ujvc37" style="display:flex;list-style:none;margin:0;padding:0"><li aria-describedby="«R2navd5cma»"><a href="https://github.com/undefined" target="_blank" rel="noopener noreferrer"><span class="ant-avatar ant-avatar-sm ant-avatar-circle css-var-«R2a» ant-avatar-css-var"><span class="ant-avatar-string" style="opacity:0"></span></span></a></li></div></div><!--/$--></div></article><section class="acss-leg3en"><a class="acss-1ovmcpq acss-1hxtfro" href="/docs/react/use-with-next"><span role="img" aria-label="left" class="anticon anticon-left footer-nav-icon-before"><svg viewBox="64 64 896 896" focusable="false" data-icon="left" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M724 218.3V141c0-6.7-7.7-10.4-12.9-6.3L260.3 486.8a31.86 31.86 0 000 50.3l450.8 352.1c5.3 4.1 12.9.4 12.9-6.3v-77.3c0-4.9-2.3-9.6-6.1-12.6l-360-281 360-281.1c3.8-3 6.1-7.7 6.1-12.6z"></path></svg></span>Usage with Next.js<span role="img" aria-label="right" class="anticon anticon-right footer-nav-icon-after"><svg viewBox="64 64 896 896" focusable="false" data-icon="right" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M765.7 486.8L314.9 134.7A7.97 7.97 0 00302 141v77.3c0 4.9 2.3 9.6 6.1 12.6l360 281.1-360 281.1c-3.9 3-6.1 7.7-6.1 12.6V883c0 6.7 7.7 10.4 12.9 6.3l450.8-352.1a31.96 31.96 0 000-50.4z"></path></svg></span></a><a class="acss-1ovmcpq acss-kekkxh" href="/docs/react/use-with-rsbuild"><span role="img" aria-label="left" class="anticon anticon-left footer-nav-icon-before"><svg viewBox="64 64 896 896" focusable="false" data-icon="left" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M724 218.3V141c0-6.7-7.7-10.4-12.9-6.3L260.3 486.8a31.86 31.86 0 000 50.3l450.8 352.1c5.3 4.1 12.9.4 12.9-6.3v-77.3c0-4.9-2.3-9.6-6.1-12.6l-360-281 360-281.1c3.8-3 6.1-7.7 6.1-12.6z"></path></svg></span>Usage with Rsbuild<span role="img" aria-label="right" class="anticon anticon-right footer-nav-icon-after"><svg viewBox="64 64 896 896" focusable="false" data-icon="right" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M765.7 486.8L314.9 134.7A7.97 7.97 0 00302 141v77.3c0 4.9 2.3 9.6 6.1 12.6l360 281.1-360 281.1c-3.9 3-6.1 7.7-6.1 12.6V883c0 6.7 7.7 10.4 12.9 6.3l450.8-352.1a31.96 31.96 0 000-50.4z"></path></svg></span></a></section><footer class="rc-footer acss-1pvxwm0 rc-footer-dark"><section class="rc-footer-container"><section class="rc-footer-columns"><div class="rc-footer-column"><h2>Resources</h2><div class="rc-footer-item"><a href="https://x.ant.design" target="_blank" rel="noopener noreferrer">Ant Design X</a></div><div class="rc-footer-item"><a href="https://charts.ant.design" target="_blank" rel="noopener noreferrer">Ant Design Charts</a></div><div class="rc-footer-item"><a href="https://pro.ant.design" target="_blank" rel="noopener noreferrer">Ant Design Pro</a></div><div class="rc-footer-item"><a href="https://procomponents.ant.design" target="_blank" rel="noopener noreferrer">Pro Components</a></div><div class="rc-footer-item"><a href="https://mobile.ant.design" target="_blank" rel="noopener noreferrer">Ant Design Mobile</a></div><div class="rc-footer-item"><a href="https://mini.ant.design" target="_blank" rel="noopener noreferrer">Ant Design Mini</a></div><div class="rc-footer-item"><a href="https://web3.ant.design" target="_blank" rel="noopener noreferrer">Ant Design Web3</a></div><div class="rc-footer-item"><a href="https://landing.ant.design" target="_blank" rel="noopener noreferrer">Ant Design Landing</a><span class="rc-footer-item-separator">-</span><span class="rc-footer-item-description">Landing Templates</span></div><div class="rc-footer-item"><a href="https://scaffold.ant.design" target="_blank" rel="noopener noreferrer">Scaffolds</a><span class="rc-footer-item-separator">-</span><span class="rc-footer-item-description">Scaffold Market</span></div><div class="rc-footer-item"><a href="https://umijs.org" target="_blank" rel="noopener noreferrer">Umi</a><span class="rc-footer-item-separator">-</span><span class="rc-footer-item-description">React Application Framework</span></div><div class="rc-footer-item"><a href="https://d.umijs.org" target="_blank" rel="noopener noreferrer">dumi</a><span class="rc-footer-item-separator">-</span><span class="rc-footer-item-description">Component doc generator</span></div><div class="rc-footer-item"><a href="https://qiankun.umijs.org" target="_blank" rel="noopener noreferrer">qiankun</a><span class="rc-footer-item-separator">-</span><span class="rc-footer-item-description">Micro-Frontends Framework</span></div><div class="rc-footer-item"><a href="https://motion.ant.design" target="_blank" rel="noopener noreferrer">Ant Motion</a><span class="rc-footer-item-separator">-</span><span class="rc-footer-item-description">Motion Solution</span></div><div class="rc-footer-item"><a href="https://ant-design.antgroup.com">China Mirror 🇨🇳</a></div></div><div class="rc-footer-column"><h2>Community</h2><div class="rc-footer-item"><a href="https://github.com/websemantics/awesome-ant-design" target="_blank" rel="noopener noreferrer"><span class="rc-footer-item-icon"><span role="img" aria-label="ant-design" class="anticon anticon-ant-design"><svg viewBox="64 64 896 896" focusable="false" data-icon="ant-design" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M716.3 313.8c19-18.9 19-49.7 0-68.6l-69.9-69.9.1.1c-18.5-18.5-50.3-50.3-95.3-95.2-21.2-20.7-55.5-20.5-76.5.5L80.9 474.2a53.84 53.84 0 000 76.4L474.6 944a54.14 54.14 0 0076.5 0l165.1-165c19-18.9 19-49.7 0-68.6a48.7 48.7 0 00-68.7 0l-125 125.2c-5.2 5.2-13.3 5.2-18.5 0L189.5 521.4c-5.2-5.2-5.2-13.3 0-18.5l314.4-314.2c.4-.4.9-.7 1.3-1.1 5.2-4.1 12.4-3.7 17.2 1.1l125.2 125.1c19 19 49.8 19 68.7 0zM408.6 514.4a106.3 106.2 0 10212.6 0 106.3 106.2 0 10-212.6 0zm536.2-38.6L821.9 353.5c-19-18.9-49.8-18.9-68.7.1a48.4 48.4 0 000 68.6l83 82.9c5.2 5.2 5.2 13.3 0 18.5l-81.8 81.7a48.4 48.4 0 000 68.6 48.7 48.7 0 0068.7 0l121.8-121.7a53.93 53.93 0 00-.1-76.4z"></path></svg></span></span>Awesome Ant Design</a></div><div class="rc-footer-item"><a href="http://medium.com/ant-design/" target="_blank" rel="noopener noreferrer"><span class="rc-footer-item-icon"><span role="img" aria-label="medium" class="anticon anticon-medium"><svg viewBox="64 64 896 896" focusable="false" data-icon="medium" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M834.7 279.8l61.3-58.9V208H683.7L532.4 586.4 360.3 208H137.7v12.9l71.6 86.6c7 6.4 10.6 15.8 9.7 25.2V673c2.2 12.3-1.7 24.8-10.3 33.7L128 805v12.7h228.6v-12.9l-80.6-98a39.99 39.99 0 01-11.1-33.7V378.7l200.7 439.2h23.3l172.6-439.2v349.9c0 9.2 0 11.1-6 17.2l-62.1 60.3V819h301.2v-12.9l-59.9-58.9c-5.2-4-7.9-10.7-6.8-17.2V297a18.1 18.1 0 016.8-17.2z"></path></svg></span></span>Medium</a></div><div class="rc-footer-item"><a href="http://twitter.com/antdesignui" target="_blank" rel="noopener noreferrer"><span class="rc-footer-item-icon"><span role="img" aria-label="twitter" style="color:#1DA1F2" class="anticon anticon-twitter"><svg viewBox="64 64 896 896" focusable="false" data-icon="twitter" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M928 254.3c-30.6 13.2-63.9 22.7-98.2 26.4a170.1 170.1 0 0075-94 336.64 336.64 0 01-108.2 41.2A170.1 170.1 0 00672 174c-94.5 0-170.5 76.6-170.5 170.6 0 13.2 1.6 26.4 4.2 39.1-141.5-7.4-267.7-75-351.6-178.5a169.32 169.32 0 00-23.2 86.1c0 59.2 30.1 111.4 76 142.1a172 172 0 01-77.1-21.7v2.1c0 82.9 58.6 151.6 136.7 167.4a180.6 180.6 0 01-44.9 5.8c-11.1 0-21.6-1.1-32.2-2.6C211 652 273.9 701.1 348.8 702.7c-58.6 45.9-132 72.9-211.7 72.9-14.3 0-27.5-.5-41.2-2.1C171.5 822 261.2 850 357.8 850 671.4 850 843 590.2 843 364.7c0-7.4 0-14.8-.5-22.2 33.2-24.3 62.3-54.4 85.5-88.2z"></path></svg></span></span>Twitter</a></div><div class="rc-footer-item"><a href="https://yuque.com/ant-design/ant-design" target="_blank" rel="noopener noreferrer"><span class="rc-footer-item-icon"><img src="https://gw.alipayobjects.com/zos/rmsportal/XuVpGqBFxXplzvLjJBZB.svg" width="16" height="16" alt="yuque logo"/></span>Ant Design in YuQue</a></div><div class="rc-footer-item"><a href="https://www.zhihu.com/column/c_1564262000561106944" target="_blank" rel="noopener noreferrer"><span class="rc-footer-item-icon"><span role="img" aria-label="zhihu" style="color:#056de8" class="anticon anticon-zhihu"><svg viewBox="64 64 896 896" focusable="false" data-icon="zhihu" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M564.7 230.1V803h60l25.2 71.4L756.3 803h131.5V230.1H564.7zm247.7 497h-59.9l-75.1 50.4-17.8-50.4h-18V308.3h170.7v418.8zM526.1 486.9H393.3c2.1-44.9 4.3-104.3 6.6-172.9h130.9l-.1-8.1c0-.6-.2-14.7-2.3-29.1-2.1-15-6.6-34.9-21-34.9H287.8c4.4-20.6 15.7-69.7 29.4-93.8l6.4-11.2-12.9-.7c-.8 0-19.6-.9-41.4 10.6-35.7 19-51.7 56.4-58.7 84.4-18.4 73.1-44.6 123.9-55.7 145.6-3.3 6.4-5.3 10.2-6.2 12.8-1.8 4.9-.8 9.8 2.8 13 10.5 9.5 38.2-2.9 38.5-3 .6-.3 1.3-.6 2.2-1 13.9-6.3 55.1-25 69.8-84.5h56.7c.7 32.2 3.1 138.4 2.9 172.9h-141l-2.1 1.5c-23.1 16.9-30.5 63.2-30.8 65.2l-1.4 9.2h167c-12.3 78.3-26.5 113.4-34 127.4-3.7 7-7.3 14-10.7 20.8-21.3 42.2-43.4 85.8-126.3 153.6-3.6 2.8-7 8-4.8 13.7 2.4 6.3 9.3 9.1 24.6 9.1 5.4 0 11.8-.3 19.4-1 49.9-4.4 100.8-18 135.1-87.6 17-35.1 31.7-71.7 43.9-108.9L497 850l5-12c.8-1.9 19-46.3 5.1-95.9l-.5-1.8-108.1-123-22 16.6c6.4-26.1 10.6-49.9 12.5-71.1h158.7v-8c0-40.1-18.5-63.9-19.2-64.9l-2.4-3z"></path></svg></span></span>Ant Design in Zhihu</a></div><div class="rc-footer-item"><a href="https://www.zhihu.com/column/c_1543658574504751104" target="_blank" rel="noopener noreferrer"><span class="rc-footer-item-icon"><span role="img" aria-label="zhihu" style="color:#056de8" class="anticon anticon-zhihu"><svg viewBox="64 64 896 896" focusable="false" data-icon="zhihu" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M564.7 230.1V803h60l25.2 71.4L756.3 803h131.5V230.1H564.7zm247.7 497h-59.9l-75.1 50.4-17.8-50.4h-18V308.3h170.7v418.8zM526.1 486.9H393.3c2.1-44.9 4.3-104.3 6.6-172.9h130.9l-.1-8.1c0-.6-.2-14.7-2.3-29.1-2.1-15-6.6-34.9-21-34.9H287.8c4.4-20.6 15.7-69.7 29.4-93.8l6.4-11.2-12.9-.7c-.8 0-19.6-.9-41.4 10.6-35.7 19-51.7 56.4-58.7 84.4-18.4 73.1-44.6 123.9-55.7 145.6-3.3 6.4-5.3 10.2-6.2 12.8-1.8 4.9-.8 9.8 2.8 13 10.5 9.5 38.2-2.9 38.5-3 .6-.3 1.3-.6 2.2-1 13.9-6.3 55.1-25 69.8-84.5h56.7c.7 32.2 3.1 138.4 2.9 172.9h-141l-2.1 1.5c-23.1 16.9-30.5 63.2-30.8 65.2l-1.4 9.2h167c-12.3 78.3-26.5 113.4-34 127.4-3.7 7-7.3 14-10.7 20.8-21.3 42.2-43.4 85.8-126.3 153.6-3.6 2.8-7 8-4.8 13.7 2.4 6.3 9.3 9.1 24.6 9.1 5.4 0 11.8-.3 19.4-1 49.9-4.4 100.8-18 135.1-87.6 17-35.1 31.7-71.7 43.9-108.9L497 850l5-12c.8-1.9 19-46.3 5.1-95.9l-.5-1.8-108.1-123-22 16.6c6.4-26.1 10.6-49.9 12.5-71.1h158.7v-8c0-40.1-18.5-63.9-19.2-64.9l-2.4-3z"></path></svg></span></span>Experience Cloud Blog</a></div><div class="rc-footer-item"><a href="https://seeconf.antfin.com/" target="_blank" rel="noopener noreferrer"><span class="rc-footer-item-icon"><img src="https://gw.alipayobjects.com/zos/rmsportal/mZBWtboYbnMkTBaRIuWQ.png" width="16" height="16" alt="seeconf logo"/></span>SEE Conf</a><span class="rc-footer-item-separator">-</span><span class="rc-footer-item-description">Experience Tech Conference</span></div></div><div class="rc-footer-column"><h2>Help</h2><div class="rc-footer-item"><a href="https://github.com/ant-design/ant-design" target="_blank" rel="noopener noreferrer"><span class="rc-footer-item-icon"><span role="img" aria-label="github" class="anticon anticon-github"><svg viewBox="64 64 896 896" focusable="false" data-icon="github" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M511.6 76.3C264.3 76.2 64 276.4 64 523.5 64 718.9 189.3 885 363.8 946c23.5 5.9 19.9-10.8 19.9-22.2v-77.5c-135.7 15.9-141.2-73.9-150.3-88.9C215 726 171.5 718 184.5 703c30.9-15.9 62.4 4 98.9 57.9 26.4 39.1 77.9 32.5 104 26 5.7-23.5 17.9-44.5 34.7-60.8-140.6-25.2-199.2-111-199.2-213 0-49.5 16.3-95 48.3-131.7-20.4-60.5 1.9-112.3 4.9-120 58.1-5.2 118.5 41.6 123.2 45.3 33-8.9 70.7-13.6 112.9-13.6 42.4 0 80.2 4.9 113.5 13.9 11.3-8.6 67.3-48.8 121.3-43.9 2.9 7.7 24.7 58.3 5.5 118 32.4 36.8 48.9 82.7 48.9 132.3 0 102.2-59 188.1-200 212.9a127.5 127.5 0 0138.1 91v112.5c.8 9 0 17.9 15 17.9 177.1-59.7 304.6-227 304.6-424.1 0-247.2-200.4-447.3-447.5-447.3z"></path></svg></span></span>GitHub</a></div><div class="rc-footer-item"><a href="/changelog"><span class="rc-footer-item-icon"><span role="img" aria-label="history" class="anticon anticon-history"><svg viewBox="64 64 896 896" focusable="false" data-icon="history" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M536.1 273H488c-4.4 0-8 3.6-8 8v275.3c0 2.6 1.2 5 3.3 6.5l165.3 120.7c3.6 2.6 8.6 1.9 11.2-1.7l28.6-39c2.7-3.7 1.9-8.7-1.7-11.2L544.1 528.5V281c0-4.4-3.6-8-8-8zm219.8 75.2l156.8 38.3c5 1.2 9.9-2.6 9.9-7.7l.8-161.5c0-6.7-7.7-10.5-12.9-6.3L752.9 334.1a8 8 0 003 14.1zm167.7 301.1l-56.7-19.5a8 8 0 00-10.1 4.8c-1.9 5.1-3.9 10.1-6 15.1-17.8 42.1-43.3 80-75.9 112.5a353 353 0 01-112.5 75.9 352.18 352.18 0 01-137.7 27.8c-47.8 0-94.1-9.3-137.7-27.8a353 353 0 01-112.5-75.9c-32.5-32.5-58-70.4-75.9-112.5A353.44 353.44 0 01171 512c0-47.8 9.3-94.2 27.8-137.8 17.8-42.1 43.3-80 75.9-112.5a353 353 0 01112.5-75.9C430.6 167.3 477 158 524.8 158s94.1 9.3 137.7 27.8A353 353 0 01775 261.7c10.2 10.3 19.8 21 28.6 32.3l59.8-46.8C784.7 146.6 662.2 81.9 524.6 82 285 82.1 92.6 276.7 95 516.4 97.4 751.9 288.9 942 524.8 942c185.5 0 343.5-117.6 403.7-282.3 1.5-4.2-.7-8.9-4.9-10.4z"></path></svg></span></span>Change Log</a></div><div class="rc-footer-item"><a href="/docs/react/faq"><span class="rc-footer-item-icon"><span role="img" aria-label="question-circle" class="anticon anticon-question-circle"><svg viewBox="64 64 896 896" focusable="false" data-icon="question-circle" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"></path><path d="M623.6 316.7C593.6 290.4 554 276 512 276s-81.6 14.5-111.6 40.7C369.2 344 352 380.7 352 420v7.6c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V420c0-44.1 43.1-80 96-80s96 35.9 96 80c0 31.1-22 59.6-56.1 72.7-21.2 8.1-39.2 22.3-52.1 40.9-13.1 19-19.9 41.8-19.9 64.9V620c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-22.7a48.3 48.3 0 0130.9-44.8c59-22.7 97.1-74.7 97.1-132.5.1-39.3-17.1-76-48.3-103.3zM472 732a40 40 0 1080 0 40 40 0 10-80 0z"></path></svg></span></span>FAQ</a></div><div class="rc-footer-item"><a href="https://new-issue.ant.design/" target="_blank" rel="noopener noreferrer"><span class="rc-footer-item-icon"><span role="img" aria-label="bug" class="anticon anticon-bug"><svg viewBox="64 64 896 896" focusable="false" data-icon="bug" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M304 280h56c4.4 0 8-3.6 8-8 0-28.3 5.9-53.2 17.1-73.5 10.6-19.4 26-34.8 45.4-45.4C450.9 142 475.7 136 504 136h16c28.3 0 53.2 5.9 73.5 17.1 19.4 10.6 34.8 26 45.4 45.4C650 218.9 656 243.7 656 272c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8 0-40-8.8-76.7-25.9-108.1a184.31 184.31 0 00-74-74C596.7 72.8 560 64 520 64h-16c-40 0-76.7 8.8-108.1 25.9a184.31 184.31 0 00-74 74C304.8 195.3 296 232 296 272c0 4.4 3.6 8 8 8z"></path><path d="M940 512H792V412c76.8 0 139-62.2 139-139 0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8a63 63 0 01-63 63H232a63 63 0 01-63-63c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8 0 76.8 62.2 139 139 139v100H84c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h148v96c0 6.5.2 13 .7 19.3C164.1 728.6 116 796.7 116 876c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8 0-44.2 23.9-82.9 59.6-103.7a273 273 0 0022.7 49c24.3 41.5 59 76.2 100.5 100.5S460.5 960 512 960s99.8-13.9 141.3-38.2a281.38 281.38 0 00123.2-149.5A120 120 0 01836 876c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8 0-79.3-48.1-147.4-116.7-176.7.4-6.4.7-12.8.7-19.3v-96h148c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM716 680c0 36.8-9.7 72-27.8 102.9-17.7 30.3-43 55.6-73.3 73.3C584 874.3 548.8 884 512 884s-72-9.7-102.9-27.8c-30.3-17.7-55.6-43-73.3-73.3A202.75 202.75 0 01308 680V412h408v268z"></path></svg></span></span>Bug Report</a></div><div class="rc-footer-item"><a href="https://github.com/ant-design/ant-design/issues" target="_blank" rel="noopener noreferrer"><span class="rc-footer-item-icon"><span role="img" aria-label="issues-close" class="anticon anticon-issues-close"><svg viewBox="64 64 896 896" focusable="false" data-icon="issues-close" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M464 688a48 48 0 1096 0 48 48 0 10-96 0zm72-112c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8h48zm400-188h-59.3c-2.6 0-5 1.2-6.5 3.3L763.7 538.1l-49.9-68.8a7.92 7.92 0 00-6.5-3.3H648c-6.5 0-10.3 7.4-6.5 12.7l109.2 150.7a16.1 16.1 0 0026 0l165.8-228.7c3.8-5.3 0-12.7-6.5-12.7zm-44 306h-64.2c-5.5 0-10.6 2.9-13.6 7.5a352.2 352.2 0 01-49.8 62.2A355.92 355.92 0 01651.1 840a355 355 0 01-138.7 27.9c-48.1 0-94.8-9.4-138.7-27.9a355.92 355.92 0 01-113.3-76.3A353.06 353.06 0 01184 650.5c-18.6-43.8-28-90.5-28-138.5s9.4-94.7 28-138.5c17.9-42.4 43.6-80.5 76.4-113.2 32.8-32.7 70.9-58.4 113.3-76.3a355 355 0 01138.7-27.9c48.1 0 94.8 9.4 138.7 27.9 42.4 17.9 80.5 43.6 113.3 76.3 19 19 35.6 39.8 49.8 62.2 2.9 4.7 8.1 7.5 13.6 7.5H892c6 0 9.8-6.3 7.2-11.6C828.8 178.5 684.7 82 517.7 80 278.9 77.2 80.5 272.5 80 511.2 79.5 750.1 273.3 944 512.4 944c169.2 0 315.6-97 386.7-238.4A8 8 0 00892 694z"></path></svg></span></span>Issues</a></div><div class="rc-footer-item"><a href="https://github.com/ant-design/ant-design/discussions" target="_blank" rel="noopener noreferrer"><span class="rc-footer-item-icon"><span role="img" aria-label="message" class="anticon anticon-message"><svg viewBox="64 64 896 896" focusable="false" data-icon="message" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M464 512a48 48 0 1096 0 48 48 0 10-96 0zm200 0a48 48 0 1096 0 48 48 0 10-96 0zm-400 0a48 48 0 1096 0 48 48 0 10-96 0zm661.2-173.6c-22.6-53.7-55-101.9-96.3-143.3a444.35 444.35 0 00-143.3-96.3C630.6 75.7 572.2 64 512 64h-2c-60.6.3-119.3 12.3-174.5 35.9a445.35 445.35 0 00-142 96.5c-40.9 41.3-73 89.3-95.2 142.8-23 55.4-34.6 114.3-34.3 174.9A449.4 449.4 0 00112 714v152a46 46 0 0046 46h152.1A449.4 449.4 0 00510 960h2.1c59.9 0 118-11.6 172.7-34.3a444.48 444.48 0 00142.8-95.2c41.3-40.9 73.8-88.7 96.5-142 23.6-55.2 35.6-113.9 35.9-174.5.3-60.9-11.5-120-34.8-175.6zm-151.1 438C704 845.8 611 884 512 884h-1.7c-60.3-.3-120.2-15.3-173.1-43.5l-8.4-4.5H188V695.2l-4.5-8.4C155.3 633.9 140.3 574 140 513.7c-.4-99.7 37.7-193.3 107.6-263.8 69.8-70.5 163.1-109.5 262.8-109.9h1.7c50 0 98.5 9.7 144.2 28.9 44.6 18.7 84.6 45.6 119 80 34.3 34.3 61.3 74.4 80 119 19.4 46.2 29.1 95.2 28.9 145.8-.6 99.6-39.7 192.9-110.1 262.7z"></path></svg></span></span>Discussions</a></div><div class="rc-footer-item"><a href="http://stackoverflow.com/questions/tagged/antd" target="_blank" rel="noopener noreferrer"><span class="rc-footer-item-icon"><span role="img" aria-label="question-circle" class="anticon anticon-question-circle"><svg viewBox="64 64 896 896" focusable="false" data-icon="question-circle" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"></path><path d="M623.6 316.7C593.6 290.4 554 276 512 276s-81.6 14.5-111.6 40.7C369.2 344 352 380.7 352 420v7.6c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V420c0-44.1 43.1-80 96-80s96 35.9 96 80c0 31.1-22 59.6-56.1 72.7-21.2 8.1-39.2 22.3-52.1 40.9-13.1 19-19.9 41.8-19.9 64.9V620c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-22.7a48.3 48.3 0 0130.9-44.8c59-22.7 97.1-74.7 97.1-132.5.1-39.3-17.1-76-48.3-103.3zM472 732a40 40 0 1080 0 40 40 0 10-80 0z"></path></svg></span></span>StackOverflow</a></div><div class="rc-footer-item"><a href="https://segmentfault.com/t/antd" target="_blank" rel="noopener noreferrer"><span class="rc-footer-item-icon"><span role="img" aria-label="question-circle" class="anticon anticon-question-circle"><svg viewBox="64 64 896 896" focusable="false" data-icon="question-circle" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"></path><path d="M623.6 316.7C593.6 290.4 554 276 512 276s-81.6 14.5-111.6 40.7C369.2 344 352 380.7 352 420v7.6c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V420c0-44.1 43.1-80 96-80s96 35.9 96 80c0 31.1-22 59.6-56.1 72.7-21.2 8.1-39.2 22.3-52.1 40.9-13.1 19-19.9 41.8-19.9 64.9V620c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-22.7a48.3 48.3 0 0130.9-44.8c59-22.7 97.1-74.7 97.1-132.5.1-39.3-17.1-76-48.3-103.3zM472 732a40 40 0 1080 0 40 40 0 10-80 0z"></path></svg></span></span>SegmentFault</a></div></div><div class="rc-footer-column"><h2><span class="rc-footer-column-icon"><img src="https://gw.alipayobjects.com/zos/rmsportal/nBVXkrFdWHxbZlmMbsaH.svg" width="22" height="22" alt="Ant XTech logo"/></span>More Products</h2><div class="rc-footer-item"><a href="https://yuque.com" target="_blank" rel="noopener noreferrer"><span class="rc-footer-item-icon"><img src="https://gw.alipayobjects.com/zos/rmsportal/XuVpGqBFxXplzvLjJBZB.svg" width="16" height="16" alt="yuque logo"/></span>YuQue</a><span class="rc-footer-item-separator">-</span><span class="rc-footer-item-description">Document Collaboration Platform</span></div><div class="rc-footer-item"><a href="https://antv.antgroup.com" target="_blank" rel="noopener noreferrer"><span class="rc-footer-item-icon"><img src="https://gw.alipayobjects.com/zos/antfincdn/nc7Fc0XBg5/8a6844f5-a6ed-4630-9177-4fa5d0b7dd47.png" width="16" height="16" alt="AntV logo"/></span>AntV</a><span class="rc-footer-item-separator">-</span><span class="rc-footer-item-description">Data Visualization</span></div><div class="rc-footer-item"><a href="https://eggjs.org" target="_blank" rel="noopener noreferrer"><span class="rc-footer-item-icon"><img src="https://www.eggjs.org/logo.svg" alt="Egg logo" width="16" height="16"/></span>Egg</a><span class="rc-footer-item-separator">-</span><span class="rc-footer-item-description">Enterprise Node.js Framework</span></div><div class="rc-footer-item"><a href="https://kitchen.alipay.com" target="_blank" rel="noopener noreferrer"><span class="rc-footer-item-icon"><img src="https://gw.alipayobjects.com/zos/rmsportal/DMDOlAUhmktLyEODCMBR.ico" width="16" height="16" alt="Kitchen logo"/></span>Kitchen</a><span class="rc-footer-item-separator">-</span><span class="rc-footer-item-description">Sketch Toolkit</span></div><div class="rc-footer-item"><a href="https://galacean.antgroup.com/" target="_blank" rel="noopener noreferrer"><span class="rc-footer-item-icon"><img src="https://mdn.alipayobjects.com/huamei_j9rjmc/afts/img/A*3ittT5OEo2gAAAAAAAAAAAAADvGmAQ/original" width="16" height="16" alt="Galacean logo"/></span>Galacean</a><span class="rc-footer-item-separator">-</span><span class="rc-footer-item-description">Interactive Graphics Solution</span></div><div class="rc-footer-item"><a href="https://xtech.antfin.com/" target="_blank" rel="noopener noreferrer"><span class="rc-footer-item-icon"><img src="https://gw.alipayobjects.com/zos/rmsportal/nBVXkrFdWHxbZlmMbsaH.svg" width="16" height="16" alt="xtech logo"/></span>Ant Financial Experience Tech</a></div><div class="rc-footer-item"><a href="/theme-editor"><span class="rc-footer-item-icon"><span role="img" aria-label="bg-colors" class="anticon anticon-bg-colors"><svg viewBox="64 64 896 896" focusable="false" data-icon="bg-colors" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M766.4 744.3c43.7 0 79.4-36.2 79.4-80.5 0-53.5-79.4-140.8-79.4-140.8S687 610.3 687 663.8c0 44.3 35.7 80.5 79.4 80.5zm-377.1-44.1c7.1 7.1 18.6 7.1 25.6 0l256.1-256c7.1-7.1 7.1-18.6 0-25.6l-256-256c-.6-.6-1.3-1.2-2-1.7l-78.2-78.2a9.11 9.11 0 00-12.8 0l-48 48a9.11 9.11 0 000 12.8l67.2 67.2-207.8 207.9c-7.1 7.1-7.1 18.6 0 25.6l255.9 256zm12.9-448.6l178.9 178.9H223.4l178.8-178.9zM904 816H120c-4.4 0-8 3.6-8 8v80c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-80c0-4.4-3.6-8-8-8z"></path></svg></span></span>Theme Editor</a></div></div></section></section><section class="rc-footer-bottom"><div class="rc-footer-bottom-container"><div style="opacity:0.4">Made with <span style="color:#fff"></span> by</div><div>Ant Group and Ant Design Community</div></div></section></footer></div></main></div><script>$RC("B:2","S:2")</script><link rel="preload" as="image" href="https://img.alicdn.com/imgextra/i2/O1CN01hWo9eO1ji9BZ1YHju_!!6000000004581-2-tps-774-928.png"/><link rel="preload" as="image" href="https://img.alicdn.com/imgextra/i2/O1CN01aNdyVG1bEMV7WEmBv_!!6000000003433-2-tps-712-276.png"/><link rel="preload" as="image" href="https://img.alicdn.com/imgextra/i1/O1CN014Sq3Uq1IceoHSfGrR_!!6000000000914-1-tps-550-411.gif"/><link rel="preload" as="image" href="https://img.alicdn.com/imgextra/i2/O1CN01jLPfng1WljHFhj3mc_!!6000000002829-2-tps-1670-934.png"/><div hidden id="S:3"><!--$--><div class="markdown"><p>In real project development, besides UI libraries like Ant Design, you may also need build tools, routing solutions, CSS solutions, data flow solutions, request libraries and request solutions, i18n solutions, permission solutions, Icons solutions, etc. We have launched <a href="https://umijs.org/">Umi</a>, an enterprise application framework based on React, based on the scenarios of business scenarios, which we recommend you to use in your projects.</p><p>Umi is a scalable enterprise front-end application framework and the underlying front-end framework of Ant Group, which has served 10,000+ applications directly or indirectly.</p><p>This article will guide you through creating a simple application from scratch using Umi, Ant Design and <a href="https://pro.ant.design/">Ant Design Pro</a>.</p><h2 id="initialization-project"><a aria-hidden="true" tabindex="-1" href="#initialization-project"><span class="icon icon-link"></span></a>Initialization Project</h2><p>The recommended way to create a Umi scaffold is using <a href="https://pnpm.io/">pnpm</a> to execute the following command.</p><div class="dumi-default-source-code"><span class="dumi-default-source-code-language">bash</span><button type="button" class="dumi-default-source-code-copy"><svg viewBox="64 64 896 896" focusable="false"><path d="M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z"></path></svg></button><pre class="prism-code language-bash"><div class=""><div class=""><span class="token plain">$ </span><span class="token function">mkdir</span><span class="token plain"> myapp </span><span class="token operator">&amp;&amp;</span><span class="token plain"> </span><span class="token builtin class-name">cd</span><span class="token plain"> myapp</span></div></div><div class=""><div class=""><span class="token plain">$ </span><span class="token function">pnpm</span><span class="token plain"> create umi</span></div></div></pre></div><blockquote><p>If you use npm, you can run <code>npm create umi</code> for the same effect; if you use yarn, run <code>yarn create umi</code>; if you use bun, which means you are a very hipster, you can run <code>bunx create-umi</code> (note that there is a <code>-</code> between create and umi).</p></blockquote><p>Select &quot;Simple App&quot; here, because we want to start from &quot;scratch&quot;.</p><div class="dumi-default-source-code"><span class="dumi-default-source-code-language">bash</span><button type="button" class="dumi-default-source-code-copy"><svg viewBox="64 64 896 896" focusable="false"><path d="M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z"></path></svg></button><pre class="prism-code language-bash"><div class=""><div class=""><span class="token plain">? Pick Umi App Template - Use arrow-keys. Return to submit.</span></div></div><div class=""><div class=""><span class="token plain"> Simple App</span></div></div><div class=""><div class=""><span class="token plain"> Ant Design Pro</span></div></div><div class=""><div class=""><span class="token plain"> Vue Simple App</span></div></div></pre></div><p>Here we recommend &quot;pnpm&quot;. pnpm is better in speed and handling ghost dependencies.</p><div class="dumi-default-source-code"><span class="dumi-default-source-code-language">bash</span><button type="button" class="dumi-default-source-code-copy"><svg viewBox="64 64 896 896" focusable="false"><path d="M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z"></path></svg></button><pre class="prism-code language-bash"><div class=""><div class=""><span class="token plain">? Pick Npm Client - Use arrow-keys. Return to submit.</span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token function">npm</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> cnpm</span></div></div><div class=""><div class=""><span class="token plain"> tnpm</span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token function">yarn</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token function">pnpm</span></div></div></pre></div><p>For those in China, we recommend choosing &quot;taobao&quot;, otherwise choose &quot;npm&quot;.</p><div class="dumi-default-source-code"><span class="dumi-default-source-code-language">bash</span><button type="button" class="dumi-default-source-code-copy"><svg viewBox="64 64 896 896" focusable="false"><path d="M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z"></path></svg></button><pre class="prism-code language-bash"><div class=""><div class=""><span class="token plain">? Pick Npm Registry - Use arrow-keys. Return to submit.</span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token function">npm</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> taobao</span></div></div></pre></div><p>The tool then automatically installs the dependencies and executes the initialization script for the umi.</p><p>Before starting the project, let&#x27;s install some more dependencies that will be used in this tutorial.</p><div class="dumi-default-source-code"><span class="dumi-default-source-code-language">bash</span><button type="button" class="dumi-default-source-code-copy"><svg viewBox="64 64 896 896" focusable="false"><path d="M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z"></path></svg></button><pre class="prism-code language-bash"><div class=""><div class=""><span class="token plain">$ </span><span class="token function">pnpm</span><span class="token plain"> i @umijs/plugins -D</span></div></div><div class=""><div class=""><span class="token plain">$ </span><span class="token function">pnpm</span><span class="token plain"> i antd axios @ant-design/pro-components -S</span></div></div></pre></div><p><code>@umijs/plugins</code> is the official plugin set of Umi, containing a large number of plugins such as valtio, react-query, styled-components, locale, access, qiankun, etc. <code>antd</code> needs no introduction. <code>axios</code> is the request library; <code>@ant-design/pro-components</code> is the component used to generate the layouts.</p><p>When finished, execute the following command to start the project.</p><div class="dumi-default-source-code"><span class="dumi-default-source-code-language">bash</span><button type="button" class="dumi-default-source-code-copy"><svg viewBox="64 64 896 896" focusable="false"><path d="M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z"></path></svg></button><pre class="prism-code language-bash"><div class=""><div class=""><span class="token plain">$ </span><span class="token function">npm</span><span class="token plain"> run dev</span></div></div><div class=""><div class=""><span class="token plain">umi dev</span></div></div><div class=""><div class=""><span class="token plain">info - Umi v4.0.46</span></div></div><div class=""><div class=""><span class="token plain"> ╔════════════════════════════════════════════════════╗</span></div></div><div class=""><div class=""><span class="token plain"> ║ App listening at: ║</span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token operator">&gt;</span><span class="token plain"> Local: http://localhost:8000 ║</span></div></div><div class=""><div class=""><span class="token plain">ready - ║ </span><span class="token operator">&gt;</span><span class="token plain"> Network: http://*********:8000 ║</span></div></div><div class=""><div class=""><span class="token plain"> ║ ║</span></div></div><div class=""><div class=""><span class="token plain"> ║ Now you can </span><span class="token function">open</span><span class="token plain"> browser with the above addresses↑ ║</span></div></div><div class=""><div class=""><span class="token plain"> ╚════════════════════════════════════════════════════╝</span></div></div></pre></div><p>Follow the prompts and click the url in the command line, which will automatically open the browser. If it goes well, you will see the following screen.</p><p><img src="https://img.alicdn.com/imgextra/i2/O1CN01hWo9eO1ji9BZ1YHju_!!6000000004581-2-tps-774-928.png" alt=""/></p><h2 id="create-new-routes"><a aria-hidden="true" tabindex="-1" href="#create-new-routes"><span class="icon icon-link"></span></a>Create New Routes</h2><p>We&#x27;re going to write an application to display a list of products. The first step is to create the routes, which can be thought of as the different pages that make up the application. Umi users don&#x27;t usually need to care about the implementation behind Umi, but in case you&#x27;re wondering, Umi&#x27;s routes are based on react-router@6.3 (Note: not the latest 6.4, which contains loader and action functionality that is not required for Umi).</p><p>We can create routes with cli.</p><div class="dumi-default-source-code"><span class="dumi-default-source-code-language">bash</span><button type="button" class="dumi-default-source-code-copy"><svg viewBox="64 64 896 896" focusable="false"><path d="M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z"></path></svg></button><pre class="prism-code language-bash"><div class=""><div class=""><span class="token plain">$ npx umi g page products</span></div></div><div class=""><div class=""><span class="token plain">Write: src/pages/products.tsx</span></div></div><div class=""><div class=""><span class="token plain">Write: src/pages/products.less</span></div></div></pre></div><p>Then modify the configuration file <code>.umirc.ts</code> with the new route declaration.</p><div class="dumi-default-source-code"><span class="dumi-default-source-code-language">diff</span><button type="button" class="dumi-default-source-code-copy"><svg viewBox="64 64 896 896" focusable="false"><path d="M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z"></path></svg></button><pre class="prism-code language-diff"><div class=""><div class=""><span class="token plain">import { defineConfig } from &quot;umi&quot;;</span></div></div><div class=""><div class=""><span class="token plain">
</span></div></div><div class=""><div class=""><span class="token plain">export default defineConfig({</span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token unchanged prefix unchanged"> </span><span class="token unchanged line"> routes: [</span></div></div><div class=""><div class=""><span class="token unchanged line"></span><span class="token unchanged prefix unchanged"> </span><span class="token unchanged line"> { path: &quot;/&quot;, component: &quot;index&quot; },</span></div></div><div class=""><div class=""><span class="token unchanged line"></span><span class="token unchanged prefix unchanged"> </span><span class="token unchanged line"> { path: &quot;/docs&quot;, component: &quot;docs&quot; },</span></div></div><div class=""><div class=""><span class="token unchanged line"></span><span class="token inserted-sign inserted prefix inserted">+</span><span class="token inserted-sign inserted line"> { path: &quot;/products&quot;, component: &quot;products&quot; },</span></div></div><div class=""><div class=""><span class="token inserted-sign inserted line"></span><span class="token unchanged prefix unchanged"> </span><span class="token unchanged line"> ],</span></div></div><div class=""><div class=""><span class="token unchanged line"></span><span class="token unchanged prefix unchanged"> </span><span class="token unchanged line"> npmClient: &quot;pnpm&quot;,</span></div></div><div class=""><div class=""><span class="token unchanged line"></span><span class="token plain">});</span></div></div></pre></div><p>Since the boilerplate uses configured routing, as the name implies, the routes are configured line by line by people, which is tedious but more flexible, this way you need to add the routes field to the configuration, see <a href="https://umijs.org/docs/guides/routes">Umi Documentation on Routing</a>. In addition, Umi also supports protocol-based routing, meaning that the file system is the route, so there is no need to configure routes to take effect.</p><p>Then we edit the <code>src/layouts/index.tsx</code> file and add the navigation to the <code>/products</code> path in the global layout route.</p><div class="dumi-default-source-code"><span class="dumi-default-source-code-language">diff</span><button type="button" class="dumi-default-source-code-copy"><svg viewBox="64 64 896 896" focusable="false"><path d="M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z"></path></svg></button><pre class="prism-code language-diff"><div class=""><div class=""><span class="token deleted-arrow deleted prefix deleted">&lt;</span><span class="token deleted-arrow deleted line">li&gt;</span></div></div><div class=""><div class=""><span class="token deleted-arrow deleted line"></span><span class="token unchanged prefix unchanged"> </span><span class="token unchanged line"> &lt;Link to=&quot;/docs&quot;&gt;Docs&lt;/Link&gt;</span></div></div><div class=""><div class=""><span class="token unchanged line"></span><span class="token deleted-arrow deleted prefix deleted">&lt;</span><span class="token deleted-arrow deleted line">/li&gt;</span></div></div><div class=""><div class=""><span class="token deleted-arrow deleted line"></span><span class="token inserted-sign inserted prefix inserted">+</span><span class="token inserted-sign inserted line"> &lt;li&gt;</span></div></div><div class=""><div class=""><span class="token inserted-sign inserted line"></span><span class="token inserted-sign inserted prefix inserted">+</span><span class="token inserted-sign inserted line"> &lt;Link to=&quot;/products&quot;&gt;Products&lt;/Link&gt;</span></div></div><div class=""><div class=""><span class="token inserted-sign inserted line"></span><span class="token inserted-sign inserted prefix inserted">+</span><span class="token inserted-sign inserted line"> &lt;/li&gt;</span></div></div></pre></div><p>Open <a href="http://localhost:8000/products">http://localhost:8000/products</a> and if it goes well, you will see the following page.</p><p><img src="https://img.alicdn.com/imgextra/i2/O1CN01aNdyVG1bEMV7WEmBv_!!6000000003433-2-tps-712-276.png" alt=""/></p><h2 id="implementing-product-ui-components"><a aria-hidden="true" tabindex="-1" href="#implementing-product-ui-components"><span class="icon icon-link"></span></a>Implementing Product UI components</h2><p>As your application grows, you&#x27;ll need to share UI elements across multiple pages (or use them multiple times on a single page), and in Umi you can abstract this out into components. Let&#x27;s write a ProductList component so that we can display the product list in different places.</p><p>Create a new <code>src/components/ProductList.tsx</code> file with the following code.</p><div class="dumi-default-source-code"><span class="dumi-default-source-code-language">tsx</span><button type="button" class="dumi-default-source-code-copy"><svg viewBox="64 64 896 896" focusable="false"><path d="M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z"></path></svg></button><pre class="prism-code language-tsx"><div class=""><div class=""><span class="token keyword">import</span><span class="token plain"> </span><span class="token imports maybe-class-name">React</span><span class="token plain"> </span><span class="token keyword">from</span><span class="token plain"> </span><span class="token string">&#x27;react&#x27;</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token keyword">import</span><span class="token plain"> </span><span class="token imports punctuation">{</span><span class="token imports"> </span><span class="token imports maybe-class-name">Button</span><span class="token imports punctuation">,</span><span class="token imports"> </span><span class="token imports maybe-class-name">Popconfirm</span><span class="token imports punctuation">,</span><span class="token imports"> </span><span class="token imports maybe-class-name">Table</span><span class="token imports"> </span><span class="token imports punctuation">}</span><span class="token plain"> </span><span class="token keyword">from</span><span class="token plain"> </span><span class="token string">&#x27;antd&#x27;</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token keyword">import</span><span class="token plain"> </span><span class="token keyword">type</span><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"> </span><span class="token maybe-class-name">TableProps</span><span class="token plain"> </span><span class="token punctuation">}</span><span class="token plain"> </span><span class="token keyword">from</span><span class="token plain"> </span><span class="token string">&#x27;antd&#x27;</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain">
</span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token keyword">interface</span><span class="token plain"> </span><span class="token class-name">DataType</span><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> id</span><span class="token operator">:</span><span class="token plain"> </span><span class="token builtin">string</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> name</span><span class="token operator">:</span><span class="token plain"> </span><span class="token builtin">string</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token punctuation">}</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain">
</span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token keyword">const</span><span class="token plain"> </span><span class="token maybe-class-name">ProductList</span><span class="token operator">:</span><span class="token plain"> </span><span class="token maybe-class-name">React</span><span class="token punctuation">.</span><span class="token constant">FC</span><span class="token operator">&lt;</span><span class="token punctuation">{</span><span class="token plain"> products</span><span class="token operator">:</span><span class="token plain"> </span><span class="token maybe-class-name">DataType</span><span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token punctuation">;</span><span class="token plain"> </span><span class="token function-variable function">onDelete</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation">(</span><span class="token plain">id</span><span class="token operator">:</span><span class="token plain"> </span><span class="token builtin">string</span><span class="token punctuation">)</span><span class="token plain"> </span><span class="token arrow operator">=&gt;</span><span class="token plain"> </span><span class="token keyword">void</span><span class="token plain"> </span><span class="token punctuation">}</span><span class="token operator">&gt;</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token punctuation">(</span><span class="token punctuation">{</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> onDelete</span><span class="token punctuation">,</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> products</span><span class="token punctuation">,</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token plain"> </span><span class="token arrow operator">=&gt;</span><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token keyword">const</span><span class="token plain"> columns</span><span class="token operator">:</span><span class="token plain"> </span><span class="token maybe-class-name">TableProps</span><span class="token operator">&lt;</span><span class="token maybe-class-name">DataType</span><span class="token operator">&gt;</span><span class="token punctuation">[</span><span class="token string">&#x27;columns&#x27;</span><span class="token punctuation">]</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token punctuation">[</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> title</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string">&#x27;Name&#x27;</span><span class="token punctuation">,</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> dataIndex</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string">&#x27;name&#x27;</span><span class="token punctuation">,</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> title</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string">&#x27;Actions&#x27;</span><span class="token punctuation">,</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token function">render</span><span class="token punctuation">(</span><span class="token plain">text</span><span class="token punctuation">,</span><span class="token plain"> record</span><span class="token punctuation">)</span><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token keyword">return</span><span class="token plain"> </span><span class="token punctuation">(</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token tag punctuation">&lt;</span><span class="token tag class-name">Popconfirm</span><span class="token tag"> </span><span class="token tag attr-name">title</span><span class="token tag attr-value punctuation attr-equals">=</span><span class="token tag attr-value punctuation">&quot;</span><span class="token tag attr-value">Delete?</span><span class="token tag attr-value punctuation">&quot;</span><span class="token tag"> </span><span class="token tag attr-name">onConfirm</span><span class="token tag script language-javascript script-punctuation punctuation">=</span><span class="token tag script language-javascript punctuation">{</span><span class="token tag script language-javascript punctuation">(</span><span class="token tag script language-javascript punctuation">)</span><span class="token tag script language-javascript"> </span><span class="token tag script language-javascript arrow operator">=&gt;</span><span class="token tag script language-javascript"> </span><span class="token tag script language-javascript function">onDelete</span><span class="token tag script language-javascript punctuation">(</span><span class="token tag script language-javascript">record</span><span class="token tag script language-javascript punctuation">.</span><span class="token tag script language-javascript property-access">id</span><span class="token tag script language-javascript punctuation">)</span><span class="token tag script language-javascript punctuation">}</span><span class="token tag punctuation">&gt;</span><span class="token plain-text"></span></div></div><div class=""><div class=""><span class="token plain-text"> </span><span class="token tag punctuation">&lt;</span><span class="token tag class-name">Button</span><span class="token tag punctuation">&gt;</span><span class="token plain-text">Delete</span><span class="token tag punctuation">&lt;/</span><span class="token tag class-name">Button</span><span class="token tag punctuation">&gt;</span><span class="token plain-text"></span></div></div><div class=""><div class=""><span class="token plain-text"> </span><span class="token tag punctuation">&lt;/</span><span class="token tag class-name">Popconfirm</span><span class="token tag punctuation">&gt;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">)</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">]</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token keyword">return</span><span class="token plain"> </span><span class="token tag punctuation">&lt;</span><span class="token tag class-name">Table</span><span class="token tag"> </span><span class="token tag attr-name">rowKey</span><span class="token tag attr-value punctuation attr-equals">=</span><span class="token tag attr-value punctuation">&quot;</span><span class="token tag attr-value">id</span><span class="token tag attr-value punctuation">&quot;</span><span class="token tag"> </span><span class="token tag attr-name">dataSource</span><span class="token tag script language-javascript script-punctuation punctuation">=</span><span class="token tag script language-javascript punctuation">{</span><span class="token tag script language-javascript">products</span><span class="token tag script language-javascript punctuation">}</span><span class="token tag"> </span><span class="token tag attr-name">columns</span><span class="token tag script language-javascript script-punctuation punctuation">=</span><span class="token tag script language-javascript punctuation">{</span><span class="token tag script language-javascript">columns</span><span class="token tag script language-javascript punctuation">}</span><span class="token tag"> </span><span class="token tag punctuation">/&gt;</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token punctuation">}</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain">
</span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token keyword">export</span><span class="token plain"> </span><span class="token keyword">default</span><span class="token plain"> </span><span class="token maybe-class-name">ProductList</span><span class="token punctuation">;</span></div></div></pre></div><h2 id="preparing-mock-data"><a aria-hidden="true" tabindex="-1" href="#preparing-mock-data"><span class="icon icon-link"></span></a>Preparing Mock Data</h2><p>Assuming we have agreed on an API interface with the backend developers, we can now use Mock data to locally mock up the data that the API should return, so that front-end and back-end development can proceed simultaneously without the front-end work being blocked because the back-end API is still being developed. Umi provides an out-of-the-box <a href="https://umijs.org/docs/guides/mock">Mock function</a> that allows you to set up Mock data in a convenient and easy way.</p><p>Create a new <code>mock/products.ts</code> file in the root directory with the following code.</p><div class="dumi-default-source-code"><span class="dumi-default-source-code-language">ts</span><button type="button" class="dumi-default-source-code-copy"><svg viewBox="64 64 896 896" focusable="false"><path d="M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z"></path></svg></button><pre class="prism-code language-ts"><div class=""><div class=""><span class="token keyword">import</span><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"> defineMock </span><span class="token punctuation">}</span><span class="token plain"> </span><span class="token keyword">from</span><span class="token plain"> </span><span class="token string">&#x27;umi&#x27;</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain">
</span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token keyword">type</span><span class="token plain"> </span><span class="token class-name">Product</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> id</span><span class="token operator">:</span><span class="token plain"> </span><span class="token builtin">string</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> name</span><span class="token operator">:</span><span class="token plain"> </span><span class="token builtin">string</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token punctuation">}</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain">
</span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token keyword">let</span><span class="token plain"> products</span><span class="token operator">:</span><span class="token plain"> Product</span><span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token punctuation">[</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"> id</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string">&#x27;1&#x27;</span><span class="token punctuation">,</span><span class="token plain"> name</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string">&#x27;Umi&#x27;</span><span class="token plain"> </span><span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"> id</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string">&#x27;2&#x27;</span><span class="token punctuation">,</span><span class="token plain"> name</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string">&#x27;Ant Design&#x27;</span><span class="token plain"> </span><span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"> id</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string">&#x27;3&#x27;</span><span class="token punctuation">,</span><span class="token plain"> name</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string">&#x27;Ant Design Pro&#x27;</span><span class="token plain"> </span><span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"> id</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string">&#x27;4&#x27;</span><span class="token punctuation">,</span><span class="token plain"> name</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string">&#x27;Dva&#x27;</span><span class="token plain"> </span><span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token punctuation">]</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain">
</span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token keyword">export</span><span class="token plain"> </span><span class="token keyword">default</span><span class="token plain"> </span><span class="token function">defineMock</span><span class="token punctuation">(</span><span class="token punctuation">{</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token string-property property">&#x27;GET /api/products&#x27;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation">(</span><span class="token plain">_</span><span class="token punctuation">,</span><span class="token plain"> res</span><span class="token punctuation">)</span><span class="token plain"> </span><span class="token operator">=&gt;</span><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> res</span><span class="token punctuation">.</span><span class="token function">send</span><span class="token punctuation">(</span><span class="token punctuation">{</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> status</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string">&#x27;ok&#x27;</span><span class="token punctuation">,</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> data</span><span class="token operator">:</span><span class="token plain"> products</span><span class="token punctuation">,</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token string-property property">&#x27;DELETE /api/products/:id&#x27;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation">(</span><span class="token plain">req</span><span class="token punctuation">,</span><span class="token plain"> res</span><span class="token punctuation">)</span><span class="token plain"> </span><span class="token operator">=&gt;</span><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> products </span><span class="token operator">=</span><span class="token plain"> products</span><span class="token punctuation">.</span><span class="token function">filter</span><span class="token punctuation">(</span><span class="token punctuation">(</span><span class="token plain">item</span><span class="token punctuation">)</span><span class="token plain"> </span><span class="token operator">=&gt;</span><span class="token plain"> item</span><span class="token punctuation">.</span><span class="token plain">id </span><span class="token operator">!==</span><span class="token plain"> req</span><span class="token punctuation">.</span><span class="token plain">params</span><span class="token punctuation">.</span><span class="token plain">id</span><span class="token punctuation">)</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> res</span><span class="token punctuation">.</span><span class="token function">send</span><span class="token punctuation">(</span><span class="token punctuation">{</span><span class="token plain"> status</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string">&#x27;ok&#x27;</span><span class="token plain"> </span><span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span></div></div></pre></div><p>Then visit <a href="http://localhost:8000/api/products">http://localhost:8000/api/products</a> and you will see the api response.</p><h2 id="complete-products-page"><a aria-hidden="true" tabindex="-1" href="#complete-products-page"><span class="icon icon-link"></span></a>Complete Products Page</h2><p>With the UI components and Mock data done, it&#x27;s time to bring them together. The request solution is needed here, and our choice here is react-query (if you want to say @tanstack/react-query, yes, they are the same library, and @tanstack/react-query is a renamed package of react-query). So before you start, you need to change the configuration to enable the <a href="https://umijs.org/docs/max/react-query">react-query plugin for Umi</a> with one click.</p><p>First edit <code>.umirc.ts</code>.</p><div class="dumi-default-source-code"><span class="dumi-default-source-code-language">diff</span><button type="button" class="dumi-default-source-code-copy"><svg viewBox="64 64 896 896" focusable="false"><path d="M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z"></path></svg></button><pre class="prism-code language-diff"><div class=""><div class=""><span class="token plain">import { defineConfig } from &quot;umi&quot;;</span></div></div><div class=""><div class=""><span class="token plain">
</span></div></div><div class=""><div class=""><span class="token plain">export default defineConfig({</span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token inserted-sign inserted prefix inserted">+</span><span class="token inserted-sign inserted line"> plugins: [&#x27;@umijs/plugins/dist/react-query&#x27;],</span></div></div><div class=""><div class=""><span class="token inserted-sign inserted line"></span><span class="token inserted-sign inserted prefix inserted">+</span><span class="token inserted-sign inserted line"> reactQuery: {},</span></div></div><div class=""><div class=""><span class="token inserted-sign inserted line"></span><span class="token unchanged prefix unchanged"> </span><span class="token unchanged line"> routes: [</span></div></div><div class=""><div class=""><span class="token unchanged line"></span><span class="token unchanged prefix unchanged"> </span><span class="token unchanged line"> { path: &quot;/&quot;, component: &quot;index&quot; },</span></div></div><div class=""><div class=""><span class="token unchanged line"></span><span class="token unchanged prefix unchanged"> </span><span class="token unchanged line"> { path: &quot;/docs&quot;, component: &quot;docs&quot; },</span></div></div><div class=""><div class=""><span class="token unchanged line"></span><span class="token unchanged prefix unchanged"> </span><span class="token unchanged line"> { path: &quot;/products&quot;, component: &quot;products&quot; },</span></div></div><div class=""><div class=""><span class="token unchanged line"></span><span class="token unchanged prefix unchanged"> </span><span class="token unchanged line"> ],</span></div></div><div class=""><div class=""><span class="token unchanged line"></span><span class="token unchanged prefix unchanged"> </span><span class="token unchanged line"> npmClient: &#x27;pnpm&#x27;,</span></div></div><div class=""><div class=""><span class="token unchanged line"></span><span class="token plain">});</span></div></div></pre></div><p>Edit <code>src/pages/products.tsx</code> with the following code.</p><div class="dumi-default-source-code"><span class="dumi-default-source-code-language">tsx</span><button type="button" class="dumi-default-source-code-copy"><svg viewBox="64 64 896 896" focusable="false"><path d="M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z"></path></svg></button><pre class="prism-code language-tsx"><div class=""><div class=""><span class="token keyword">import</span><span class="token plain"> </span><span class="token imports maybe-class-name">React</span><span class="token plain"> </span><span class="token keyword">from</span><span class="token plain"> </span><span class="token string">&#x27;react&#x27;</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token keyword">import</span><span class="token plain"> </span><span class="token imports">axios</span><span class="token plain"> </span><span class="token keyword">from</span><span class="token plain"> </span><span class="token string">&#x27;axios&#x27;</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token keyword">import</span><span class="token plain"> </span><span class="token imports punctuation">{</span><span class="token imports"> useMutation</span><span class="token imports punctuation">,</span><span class="token imports"> useQuery</span><span class="token imports punctuation">,</span><span class="token imports"> useQueryClient </span><span class="token imports punctuation">}</span><span class="token plain"> </span><span class="token keyword">from</span><span class="token plain"> </span><span class="token string">&#x27;umi&#x27;</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain">
</span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token keyword">import</span><span class="token plain"> </span><span class="token imports">styles</span><span class="token plain"> </span><span class="token keyword">from</span><span class="token plain"> </span><span class="token string">&#x27;./products.less&#x27;</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token keyword">import</span><span class="token plain"> </span><span class="token imports maybe-class-name">ProductList</span><span class="token plain"> </span><span class="token keyword">from</span><span class="token plain"> </span><span class="token string">&#x27;@/components/ProductList&#x27;</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain">
</span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token keyword">export</span><span class="token plain"> </span><span class="token keyword">default</span><span class="token plain"> </span><span class="token keyword">function</span><span class="token plain"> </span><span class="token function">Page</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token keyword">const</span><span class="token plain"> queryClient </span><span class="token operator">=</span><span class="token plain"> </span><span class="token function">useQueryClient</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token keyword">const</span><span class="token plain"> productsQuery </span><span class="token operator">=</span><span class="token plain"> </span><span class="token function">useQuery</span><span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token string">&#x27;products&#x27;</span><span class="token punctuation">]</span><span class="token punctuation">,</span><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token function">queryFn</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token keyword">return</span><span class="token plain"> axios</span><span class="token punctuation">.</span><span class="token method function property-access">get</span><span class="token punctuation">(</span><span class="token string">&#x27;/api/products&#x27;</span><span class="token punctuation">)</span><span class="token punctuation">.</span><span class="token method function property-access">then</span><span class="token punctuation">(</span><span class="token punctuation">(</span><span class="token plain">res</span><span class="token punctuation">)</span><span class="token plain"> </span><span class="token arrow operator">=&gt;</span><span class="token plain"> res</span><span class="token punctuation">.</span><span class="token property-access">data</span><span class="token punctuation">)</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token keyword">const</span><span class="token plain"> productsDeleteMutation </span><span class="token operator">=</span><span class="token plain"> </span><span class="token function">useMutation</span><span class="token punctuation">(</span><span class="token punctuation">{</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token function">mutationFn</span><span class="token punctuation">(</span><span class="token plain">id</span><span class="token operator">:</span><span class="token plain"> </span><span class="token builtin">string</span><span class="token punctuation">)</span><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token keyword">return</span><span class="token plain"> axios</span><span class="token punctuation">.</span><span class="token method function property-access">delete</span><span class="token punctuation">(</span><span class="token template-string template-punctuation string">`</span><span class="token template-string string">/api/products/</span><span class="token template-string interpolation interpolation-punctuation punctuation">${</span><span class="token template-string interpolation">id</span><span class="token template-string interpolation interpolation-punctuation punctuation">}</span><span class="token template-string template-punctuation string">`</span><span class="token punctuation">)</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token function-variable function">onSettled</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token plain"> </span><span class="token arrow operator">=&gt;</span><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> queryClient</span><span class="token punctuation">.</span><span class="token method function property-access">invalidateQueries</span><span class="token punctuation">(</span><span class="token punctuation">{</span><span class="token plain"> queryKey</span><span class="token operator">:</span><span class="token plain"> </span><span class="token punctuation">[</span><span class="token string">&#x27;products&#x27;</span><span class="token punctuation">]</span><span class="token plain"> </span><span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token keyword">if</span><span class="token plain"> </span><span class="token punctuation">(</span><span class="token plain">productsQuery</span><span class="token punctuation">.</span><span class="token property-access">isLoading</span><span class="token punctuation">)</span><span class="token plain"> </span><span class="token keyword">return</span><span class="token plain"> </span><span class="token keyword">null</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token keyword">return</span><span class="token plain"> </span><span class="token punctuation">(</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token tag punctuation">&lt;</span><span class="token tag">div</span><span class="token tag punctuation">&gt;</span><span class="token plain-text"></span></div></div><div class=""><div class=""><span class="token plain-text"> </span><span class="token tag punctuation">&lt;</span><span class="token tag">h1</span><span class="token tag"> </span><span class="token tag attr-name">className</span><span class="token tag script language-javascript script-punctuation punctuation">=</span><span class="token tag script language-javascript punctuation">{</span><span class="token tag script language-javascript">styles</span><span class="token tag script language-javascript punctuation">.</span><span class="token tag script language-javascript property-access">title</span><span class="token tag script language-javascript punctuation">}</span><span class="token tag punctuation">&gt;</span><span class="token plain-text">Page products</span><span class="token tag punctuation">&lt;/</span><span class="token tag">h1</span><span class="token tag punctuation">&gt;</span><span class="token plain-text"></span></div></div><div class=""><div class=""><span class="token plain-text"> </span><span class="token tag punctuation">&lt;</span><span class="token tag class-name">ProductList</span><span class="token tag"></span></div></div><div class=""><div class=""><span class="token tag"> </span><span class="token tag attr-name">products</span><span class="token tag script language-javascript script-punctuation punctuation">=</span><span class="token tag script language-javascript punctuation">{</span><span class="token tag script language-javascript">productsQuery</span><span class="token tag script language-javascript punctuation">.</span><span class="token tag script language-javascript property-access">data</span><span class="token tag script language-javascript punctuation">.</span><span class="token tag script language-javascript property-access">data</span><span class="token tag script language-javascript punctuation">}</span><span class="token tag"></span></div></div><div class=""><div class=""><span class="token tag"> </span><span class="token tag attr-name">onDelete</span><span class="token tag script language-javascript script-punctuation punctuation">=</span><span class="token tag script language-javascript punctuation">{</span><span class="token tag script language-javascript punctuation">(</span><span class="token tag script language-javascript">id</span><span class="token tag script language-javascript punctuation">)</span><span class="token tag script language-javascript"> </span><span class="token tag script language-javascript arrow operator">=&gt;</span><span class="token tag script language-javascript"> </span><span class="token tag script language-javascript punctuation">{</span><span class="token tag script language-javascript"></span></div></div><div class=""><div class=""><span class="token tag script language-javascript"> productsDeleteMutation</span><span class="token tag script language-javascript punctuation">.</span><span class="token tag script language-javascript method function property-access">mutate</span><span class="token tag script language-javascript punctuation">(</span><span class="token tag script language-javascript">id</span><span class="token tag script language-javascript punctuation">)</span><span class="token tag script language-javascript punctuation">;</span><span class="token tag script language-javascript"></span></div></div><div class=""><div class=""><span class="token tag script language-javascript"> </span><span class="token tag script language-javascript punctuation">}</span><span class="token tag script language-javascript punctuation">}</span><span class="token tag"></span></div></div><div class=""><div class=""><span class="token tag"> </span><span class="token tag punctuation">/&gt;</span><span class="token plain-text"></span></div></div><div class=""><div class=""><span class="token plain-text"> </span><span class="token tag punctuation">&lt;/</span><span class="token tag">div</span><span class="token tag punctuation">&gt;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">)</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token punctuation">}</span></div></div></pre></div><p>Here, we pull the data from <code>/api/products</code> with <code>useQuery()</code> and submit a DELETE request to <code>/api/products/${id}</code> in the <code>onDelete</code> event with <code>useMutation()</code> to perform the delete operation. For more details on the use of react-query, please refer to <a href="https://umijs.org/docs/max/react-query">Umi Plugin for React Query</a> and <a href="https://tanstack.com/query/">React Query Official Website</a>.</p><p>After saving, you should see the following screen.</p><p><img src="https://img.alicdn.com/imgextra/i1/O1CN014Sq3Uq1IceoHSfGrR_!!6000000000914-1-tps-550-411.gif" alt=""/></p><h2 id="prolayout"><a aria-hidden="true" tabindex="-1" href="#prolayout"><span class="icon icon-link"></span></a>ProLayout</h2><p>A standard backend project generally need a layout, this layout is very often highly similar, <a href="https://procomponents.ant.design/components/layout/">ProLayout</a> encapsulates the common menu, breadcrumbs, page headers and other functions, provides a non-dependent framework and an out-of-the-box advanced layout component. And support <code>side</code>, <code>mix</code>, <code>top</code> three modes, but also built-in menu selection, menu generation breadcrumbs, automatically set the logic of the page title.</p><p>Modify the configuration for each route to add a name field for ProLayout to do menu rendering use.</p><div class="dumi-default-source-code"><span class="dumi-default-source-code-language">diff</span><button type="button" class="dumi-default-source-code-copy"><svg viewBox="64 64 896 896" focusable="false"><path d="M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z"></path></svg></button><pre class="prism-code language-diff"><div class=""><div class=""><span class="token plain">import { defineConfig } from &quot;umi&quot;;</span></div></div><div class=""><div class=""><span class="token plain">
</span></div></div><div class=""><div class=""><span class="token plain">export default defineConfig({</span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token unchanged prefix unchanged"> </span><span class="token unchanged line"> routes: [</span></div></div><div class=""><div class=""><span class="token unchanged line"></span><span class="token deleted-sign deleted prefix deleted">-</span><span class="token deleted-sign deleted line"> { path: &quot;/&quot;, component: &quot;index&quot; },</span></div></div><div class=""><div class=""><span class="token deleted-sign deleted line"></span><span class="token inserted-sign inserted prefix inserted">+</span><span class="token inserted-sign inserted line"> { path: &quot;/&quot;, component: &quot;index&quot;, name: &quot;home&quot; },</span></div></div><div class=""><div class=""><span class="token inserted-sign inserted line"></span><span class="token deleted-sign deleted prefix deleted">-</span><span class="token deleted-sign deleted line"> { path: &quot;/docs&quot;, component: &quot;docs&quot; },</span></div></div><div class=""><div class=""><span class="token deleted-sign deleted line"></span><span class="token inserted-sign inserted prefix inserted">+</span><span class="token inserted-sign inserted line"> { path: &quot;/docs&quot;, component: &quot;docs&quot;, name: &quot;docs&quot; },</span></div></div><div class=""><div class=""><span class="token inserted-sign inserted line"></span><span class="token deleted-sign deleted prefix deleted">-</span><span class="token deleted-sign deleted line"> { path: &quot;/products&quot;, component: &quot;products&quot; },</span></div></div><div class=""><div class=""><span class="token deleted-sign deleted line"></span><span class="token inserted-sign inserted prefix inserted">+</span><span class="token inserted-sign inserted line"> { path: &quot;/products&quot;, component: &quot;products&quot;, name: &quot;products&quot; },</span></div></div><div class=""><div class=""><span class="token inserted-sign inserted line"></span><span class="token unchanged prefix unchanged"> </span><span class="token unchanged line"> ],</span></div></div><div class=""><div class=""><span class="token unchanged line"></span><span class="token unchanged prefix unchanged"> </span><span class="token unchanged line"> plugins: [&quot;@umijs/plugins/dist/react-query&quot;],</span></div></div><div class=""><div class=""><span class="token unchanged line"></span><span class="token unchanged prefix unchanged"> </span><span class="token unchanged line"> reactQuery: {},</span></div></div><div class=""><div class=""><span class="token unchanged line"></span><span class="token unchanged prefix unchanged"> </span><span class="token unchanged line"> npmClient: &quot;pnpm&quot;,</span></div></div><div class=""><div class=""><span class="token unchanged line"></span><span class="token plain">});</span></div></div></pre></div><p>Edit <code>src/layouts/index.tsx</code> with the following code.</p><div class="dumi-default-source-code"><span class="dumi-default-source-code-language">tsx</span><button type="button" class="dumi-default-source-code-copy"><svg viewBox="64 64 896 896" focusable="false"><path d="M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z"></path></svg></button><pre class="prism-code language-tsx"><div class=""><div class=""><span class="token keyword">import</span><span class="token plain"> </span><span class="token imports punctuation">{</span><span class="token imports"> </span><span class="token imports maybe-class-name">ProLayout</span><span class="token imports"> </span><span class="token imports punctuation">}</span><span class="token plain"> </span><span class="token keyword">from</span><span class="token plain"> </span><span class="token string">&#x27;@ant-design/pro-components&#x27;</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token keyword">import</span><span class="token plain"> </span><span class="token imports punctuation">{</span><span class="token imports"> </span><span class="token imports maybe-class-name">Link</span><span class="token imports punctuation">,</span><span class="token imports"> </span><span class="token imports maybe-class-name">Outlet</span><span class="token imports punctuation">,</span><span class="token imports"> useAppData</span><span class="token imports punctuation">,</span><span class="token imports"> useLocation </span><span class="token imports punctuation">}</span><span class="token plain"> </span><span class="token keyword">from</span><span class="token plain"> </span><span class="token string">&#x27;umi&#x27;</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain">
</span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token keyword">export</span><span class="token plain"> </span><span class="token keyword">default</span><span class="token plain"> </span><span class="token keyword">function</span><span class="token plain"> </span><span class="token function">Layout</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token keyword">const</span><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"> clientRoutes </span><span class="token punctuation">}</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token function">useAppData</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token keyword">const</span><span class="token plain"> </span><span class="token dom variable">location</span><span class="token plain"> </span><span class="token operator">=</span><span class="token plain"> </span><span class="token function">useLocation</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token keyword">return</span><span class="token plain"> </span><span class="token punctuation">(</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token operator">&lt;</span><span class="token maybe-class-name">ProLayout</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> route</span><span class="token operator">=</span><span class="token punctuation">{</span><span class="token plain">clientRoutes</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">}</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token dom variable">location</span><span class="token operator">=</span><span class="token punctuation">{</span><span class="token dom variable">location</span><span class="token punctuation">}</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> title</span><span class="token operator">=</span><span class="token string">&quot;Umi x Ant Design&quot;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> menuItemRender</span><span class="token operator">=</span><span class="token punctuation">{</span><span class="token punctuation">(</span><span class="token plain">menuItemProps</span><span class="token punctuation">,</span><span class="token plain"> defaultDom</span><span class="token punctuation">)</span><span class="token plain"> </span><span class="token arrow operator">=&gt;</span><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token keyword">if</span><span class="token plain"> </span><span class="token punctuation">(</span><span class="token plain">menuItemProps</span><span class="token punctuation">.</span><span class="token property-access">isUrl</span><span class="token plain"> </span><span class="token operator">||</span><span class="token plain"> menuItemProps</span><span class="token punctuation">.</span><span class="token property-access">children</span><span class="token punctuation">)</span><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token keyword">return</span><span class="token plain"> defaultDom</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">}</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token keyword">if</span><span class="token plain"> </span><span class="token punctuation">(</span><span class="token plain">menuItemProps</span><span class="token punctuation">.</span><span class="token property-access">path</span><span class="token plain"> </span><span class="token operator">&amp;&amp;</span><span class="token plain"> </span><span class="token dom variable">location</span><span class="token punctuation">.</span><span class="token property-access">pathname</span><span class="token plain"> </span><span class="token operator">!==</span><span class="token plain"> menuItemProps</span><span class="token punctuation">.</span><span class="token property-access">path</span><span class="token punctuation">)</span><span class="token plain"> </span><span class="token punctuation">{</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token keyword">return</span><span class="token plain"> </span><span class="token punctuation">(</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token tag punctuation">&lt;</span><span class="token tag class-name">Link</span><span class="token tag"> </span><span class="token tag attr-name">to</span><span class="token tag script language-javascript script-punctuation punctuation">=</span><span class="token tag script language-javascript punctuation">{</span><span class="token tag script language-javascript">menuItemProps</span><span class="token tag script language-javascript punctuation">.</span><span class="token tag script language-javascript property-access">path</span><span class="token tag script language-javascript punctuation">}</span><span class="token tag"> </span><span class="token tag attr-name">target</span><span class="token tag script language-javascript script-punctuation punctuation">=</span><span class="token tag script language-javascript punctuation">{</span><span class="token tag script language-javascript">menuItemProps</span><span class="token tag script language-javascript punctuation">.</span><span class="token tag script language-javascript property-access">target</span><span class="token tag script language-javascript punctuation">}</span><span class="token tag punctuation">&gt;</span><span class="token plain-text"></span></div></div><div class=""><div class=""><span class="token plain-text"> </span><span class="token punctuation">{</span><span class="token plain">defaultDom</span><span class="token punctuation">}</span><span class="token plain-text"></span></div></div><div class=""><div class=""><span class="token plain-text"> </span><span class="token tag punctuation">&lt;/</span><span class="token tag class-name">Link</span><span class="token tag punctuation">&gt;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">)</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">}</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token keyword">return</span><span class="token plain"> defaultDom</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">}</span><span class="token punctuation">}</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token operator">&gt;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token tag punctuation">&lt;</span><span class="token tag class-name">Outlet</span><span class="token tag"> </span><span class="token tag punctuation">/&gt;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token tag punctuation">&lt;/</span><span class="token tag class-name">ProLayout</span><span class="token tag punctuation">&gt;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token punctuation">)</span><span class="token punctuation">;</span><span class="token plain"></span></div></div><div class=""><div class=""><span class="token plain"></span><span class="token punctuation">}</span></div></div></pre></div><p>Here we first use umi&#x27;s <code>useAppData</code> to get the global client route <code>clientRoutes</code>, which is a nested routing object, and we pass <code>clientRoutes[0]</code> to ProLayout; then we use <code>useLocation()</code> to get the location information, which is also passed to ProLayout to decide which menu should be highlighted; we also want to do a route jump when we click on the menu, so we need to customize ProLayout&#x27;s menuItemRender method.</p><p>You may have found <code>src/layouts/index.less</code> has no place to refer to him, in order to keep the project file tidy, you can choose to delete him.</p><p>The browser will automatically refresh at this point, and if it goes well, you&#x27;ll see the following screen.</p><p><img src="https://img.alicdn.com/imgextra/i2/O1CN01jLPfng1WljHFhj3mc_!!6000000002829-2-tps-1670-934.png" alt=""/></p><h2 id="build-application"><a aria-hidden="true" tabindex="-1" href="#build-application"><span class="icon icon-link"></span></a>Build Application</h2><p>After completing the development and verifying it in the development environment, it is time to deploy it to our users by executing the following command.</p><div class="dumi-default-source-code"><span class="dumi-default-source-code-language">bash</span><button type="button" class="dumi-default-source-code-copy"><svg viewBox="64 64 896 896" focusable="false"><path d="M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z"></path></svg></button><pre class="prism-code language-bash"><div class=""><div class=""><span class="token plain">$ </span><span class="token function">npm</span><span class="token plain"> run build</span></div></div><div class=""><div class=""><span class="token plain">info - Umi v4.0.46</span></div></div><div class=""><div class=""><span class="token plain">✔ Webpack</span></div></div><div class=""><div class=""><span class="token plain"> Compiled successfully </span><span class="token keyword">in</span><span class="token plain"> </span><span class="token number">5</span><span class="token plain">.31s</span></div></div><div class=""><div class=""><span class="token plain">info - File sizes after gzip:</span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token number">122.45</span><span class="token plain"> kB dist/umi.js</span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token number">575</span><span class="token plain"> B dist/src__pages__products.async.js</span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token number">312</span><span class="token plain"> B dist/src__pages__index.async.js</span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token number">291</span><span class="token plain"> B dist/layouts__index.async.js</span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token number">100</span><span class="token plain"> B dist/layouts__index.chunk.css</span></div></div><div class=""><div class=""><span class="token plain"> </span><span class="token number">55</span><span class="token plain"> B dist/src__pages__products.chunk.css</span></div></div><div class=""><div class=""><span class="token plain">event - Build index.html</span></div></div></pre></div><p>The build command will package all resources, including JavaScript, CSS, Web Fonts, images, Html, etc. You can find these files in the <code>dist/</code> directory.</p><h2 id="next-step"><a aria-hidden="true" tabindex="-1" href="#next-step"><span class="icon icon-link"></span></a>Next Step</h2><p>We have completed a simple application and you may still have many questions, such as</p><ul><li>How to handle errors uniformly?</li><li>How to handle more routing, such as dynamic routing, nested routing, permission routing, etc.?</li><li>How to use a data flow scheme?</li><li>How to modify webpack configuration or switch to vite build mode?</li><li>etc.</li></ul><p>You can.</p><ul><li>Visit <a href="https://umijs.org/">Umi official website</a></li><li>Learn about <a href="https://umijs.org/docs/guides/routes">Umi&#x27;s Routing</a></li><li>Learn about <a href="https://umijs.org/docs/max/introduce">Umi Max</a>, which is more integrated than Umi</li><li>Learn about the out-of-the-box middle and backend scaffolding <a href="https://pro.ant.design/">Ant Design Pro</a></li><li>Learn about advanced layouts <a href="https://procomponents.ant.design/components/layout">ProLayout</a></li><li>Learn about advanced tables <a href="https://procomponents.ant.design/components/table">ProTable</a></li></ul></div><!--/$--></div><script>$RC("B:3","S:3")</script></body></html>